From ac83df5a1751f84da07c61da9d8d1f4d383064fc Mon Sep 17 00:00:00 2001 From: Vicente Date: Sun, 9 Jun 2013 22:39:46 +0200 Subject: [PATCH] K2.6 patches and update. fx/ext3 balloc.c solves IO error. --- release/src-rt/bcm57xx/linux/b57um.c | 64 +- release/src-rt/bcm57xx/linux/bcm5700.4 | 1 + release/src-rt/bcm57xx/linux/mm.h | 2 +- release/src-rt/bcm57xx/sys/tigon3.c | 10 +- release/src-rt/bcmcrypto/Makefile | 69 + release/src-rt/bcmcrypto/aes.c | 1198 + release/src-rt/bcmcrypto/aes_vectors.h | 1066 + release/src-rt/bcmcrypto/aeskeywrap.c | 291 + release/src-rt/bcmcrypto/aeskeywrap_vectors.h | 256 + .../src-rt/bcmcrypto/{prebuilt/.dummy => bcmccx.c} | 0 release/src-rt/bcmcrypto/bn.c | 5661 +++++ release/src-rt/bcmcrypto/bn_lcl.h | 451 + .../src-rt/{et/linux/.dummy => bcmcrypto/ccx.c} | 0 release/src-rt/bcmcrypto/ccx.ref | 171 + release/src-rt/bcmcrypto/des.c | 655 + release/src-rt/bcmcrypto/dh.c | 617 + .../_MTN/log => src-rt/bcmcrypto/examccx.h} | 0 .../bcmcrypto/{prebuilt/.dummy => examppkt.h} | 0 release/src-rt/bcmcrypto/hmac.c | 136 + release/src-rt/bcmcrypto/hmac_sha256.c | 236 + release/src-rt/bcmcrypto/md32_common.h | 602 + release/src-rt/bcmcrypto/md4.c | 287 + release/src-rt/bcmcrypto/md5.c | 323 + release/src-rt/bcmcrypto/passhash.c | 274 + release/src-rt/bcmcrypto/passhash_vectors.h | 268 + release/src-rt/bcmcrypto/prebuilt/aes.o | Bin 7392 -> 0 bytes release/src-rt/bcmcrypto/prebuilt/aeskeywrap.o | Bin 2768 -> 0 bytes release/src-rt/bcmcrypto/prebuilt/bn.o | Bin 55964 -> 0 bytes release/src-rt/bcmcrypto/prebuilt/dh.o | Bin 4216 -> 0 bytes release/src-rt/bcmcrypto/prebuilt/hmac.o | Bin 1744 -> 0 bytes release/src-rt/bcmcrypto/prebuilt/hmac_sha256.o | Bin 2824 -> 0 bytes release/src-rt/bcmcrypto/prebuilt/md5.o | Bin 5564 -> 0 bytes release/src-rt/bcmcrypto/prebuilt/passhash.o | Bin 3124 -> 0 bytes release/src-rt/bcmcrypto/prebuilt/prf.o | Bin 3380 -> 0 bytes release/src-rt/bcmcrypto/prebuilt/random.o | Bin 2444 -> 0 bytes release/src-rt/bcmcrypto/prebuilt/rc4.o | Bin 1224 -> 0 bytes .../src-rt/bcmcrypto/prebuilt/rijndael-alg-fst.o | Bin 17664 -> 0 bytes release/src-rt/bcmcrypto/prebuilt/sha1.o | Bin 3028 -> 0 bytes release/src-rt/bcmcrypto/prebuilt/sha256.o | Bin 14920 -> 0 bytes release/src-rt/bcmcrypto/prf.c | 353 + release/src-rt/bcmcrypto/prf_vectors.h | 143 + release/src-rt/bcmcrypto/random.c | 180 + release/src-rt/bcmcrypto/rc4.c | 114 + release/src-rt/bcmcrypto/rc4_vectors.h | 294 + release/src-rt/bcmcrypto/rijndael-alg-fst.c | 1539 ++ release/src-rt/bcmcrypto/sha1.c | 522 + release/src-rt/bcmcrypto/sha256.c | 445 + release/src-rt/bcmcrypto/sms4.c | 1375 ++ release/src-rt/bcmcrypto/tkhash.c | 301 + release/src-rt/bcmcrypto/tkhash_vectors.h | 171 + release/src-rt/bcmcrypto/tkmic.c | 88 + release/src-rt/bcmcrypto/wep.c | 86 + release/src-rt/emf/emf/emfc.c | 38 +- release/src-rt/emf/emfconf/Makefile | 2 +- release/src-rt/emf/emfconf/emf | Bin 0 -> 13324 bytes release/src-rt/emf/emfconf/emfu.c | 4 +- release/src-rt/emf/emfconf/emfu.h | 4 +- release/src-rt/emf/emfconf/emfu.o | Bin 0 -> 13216 bytes release/src-rt/emf/emfconf/emfu_linux.c | 4 +- release/src-rt/emf/emfconf/emfu_linux.h | 4 +- release/src-rt/emf/emfconf/emfu_linux.o | Bin 0 -> 2620 bytes release/src-rt/emf/igs/igsc.c | 8 +- release/src-rt/emf/igsconf/Makefile | 2 +- release/src-rt/emf/igsconf/igs | Bin 0 -> 8496 bytes release/src-rt/emf/igsconf/igsu.c | 4 +- release/src-rt/emf/igsconf/igsu.h | 4 +- release/src-rt/emf/igsconf/igsu.o | Bin 0 -> 6188 bytes release/src-rt/emf/igsconf/igsu_linux.c | 4 +- release/src-rt/emf/igsconf/igsu_linux.h | 4 +- release/src-rt/emf/igsconf/igsu_linux.o | Bin 0 -> 2620 bytes release/src-rt/et/linux/et.c | 354 + release/src-rt/et/sys/et_dbg.h | 7 +- release/src-rt/et/sys/et_linux.c | 65 +- release/src-rt/et/sys/etc.c | 10 + release/src-rt/et/sys/etc.h | 3 +- release/src-rt/et/sys/etc47xx.c | 40 +- release/src-rt/et/sys/etcgmac.c | 7 +- release/src-rt/include/amemc_core.h | 152 + release/src-rt/include/bcm20xx.h | 1460 -- release/src-rt/include/bcmdefs.h | 10 +- release/src-rt/include/bcmdevs.h | 27 +- release/src-rt/include/bcmenetphy.h | 2 - release/src-rt/include/bcmnvram.h | 8 +- release/src-rt/include/bcmparams.h | 2 +- release/src-rt/include/bcmsrom_fmt.h | 1 + release/src-rt/include/bcmsrom_tbl.h | 51 +- release/src-rt/include/bcmutils.h | 3 + release/src-rt/include/code_pattern.h | 1 - release/src-rt/include/cyutils.h | 7 - release/src-rt/include/epivers.h | 10 +- release/src-rt/include/etioctl.h | 28 + release/src-rt/include/hndpci.h | 2 + release/src-rt/include/libsmbclient.h | 3170 +++ release/src-rt/include/linux_osl.h | 51 +- release/src-rt/include/proto/802.11.h | 41 +- release/src-rt/include/proto/bcmip.h | 1 + release/src-rt/include/sbchipc.h | 8 +- release/src-rt/include/siutils.h | 1 + release/src-rt/include/typedefs.h | 10 +- release/src-rt/include/wlioctl.h | 36 +- release/src-rt/linux/linux-2.6/.config | 1783 ++ release/src-rt/linux/linux-2.6/Makefile | 13 +- release/src-rt/linux/linux-2.6/arch/mips/Kconfig | 4 + .../arch/mips/brcm-boards/bcm947xx/Makefile | 4 + .../arch/mips/brcm-boards/bcm947xx/nvram_linux.c | 1153 +- .../arch/mips/brcm-boards/bcm947xx/setup.c | 264 +- .../arch/mips/brcm-boards/bcm947xx/time.c | 2 + .../src-rt/linux/linux-2.6/arch/mips/kernel/proc.c | 3 + .../linux/linux-2.6/arch/mips/kernel/syscall.c | 2 + .../src-rt/linux/linux-2.6/arch/mips/mm/c-r4k.c | 31 +- .../src-rt/linux/linux-2.6/arch/mips/mm/cache.c | 9 + .../src-rt/linux/linux-2.6/arch/mips/mm/highmem.c | 48 +- release/src-rt/linux/linux-2.6/arch/mips/mm/init.c | 5 +- .../linux/linux-2.6/arch/mips/mm/pgtable-32.c | 2 +- release/src-rt/linux/linux-2.6/config_base | 36 +- release/src-rt/linux/linux-2.6/config_current | 1 + release/src-rt/linux/linux-2.6/config_nc | 1847 ++ release/src-rt/linux/linux-2.6/drivers/base/core.c | 4 +- .../linux/linux-2.6/drivers/mtd/devices/Kconfig | 3 + .../linux/linux-2.6/drivers/mtd/devices/Makefile | 1 + .../linux-2.6/drivers/mtd/devices/bcm_nflash.c | 445 + .../src-rt/linux/linux-2.6/drivers/net/hnd/Kconfig | 6 +- .../src-rt/linux/linux-2.6/drivers/net/pppol2tp.c | 719 +- .../src-rt/linux/linux-2.6/drivers/net/wl/Makefile | 35 +- .../linux-2.6/drivers/net/wl/wl_apsta/Makefile | 20 +- .../linux/linux-2.6/drivers/net/wl/wl_generic.mk | 108 +- .../linux-2.6/drivers/net/wl/wl_high/Makefile | 20 +- .../src-rt/linux/linux-2.6/drivers/net/wl/wlconf.h | 32 - .../linux/linux-2.6/drivers/usb/core/driver.c | 4 +- .../src-rt/linux/linux-2.6/drivers/usb/core/hub.c | 2 +- .../src-rt/linux/linux-2.6/drivers/usb/core/urb.c | 8 +- .../linux/linux-2.6/drivers/usb/serial/sierra.c | 453 +- release/src-rt/linux/linux-2.6/fs/ext3/balloc.c | 11 +- release/src-rt/linux/linux-2.6/fs/partitions/efi.c | 18 +- release/src-rt/linux/linux-2.6/fs/partitions/efi.h | 2 - .../linux/linux-2.6/include/asm-mips/fixmap.h | 11 +- .../src-rt/linux/linux-2.6/include/asm-mips/page.h | 8 + .../include/linux/netfilter_ipv4/ipt_account.h | 24 + .../include/linux/netfilter_ipv4/ipt_ipp2p.h | 9 +- .../linux/linux-2.6/include/linux/pkt_sched.h | 13 +- .../src-rt/linux/linux-2.6/include/linux/version.h | 2 - .../linux-2.6/include/net/netfilter/nf_conntrack.h | 1 + .../linux/linux-2.6/include/net/sch_generic.h | 13 + release/src-rt/linux/linux-2.6/include/net/tcp.h | 24 +- .../linux/linux-2.6/net/ipv4/netfilter/Kconfig | 24 + .../linux/linux-2.6/net/ipv4/netfilter/Makefile | 3 + .../linux/linux-2.6/net/ipv4/netfilter/dnsmq.c | 264 + .../linux-2.6/net/ipv4/netfilter/ipt_account.c | 1128 + .../linux/linux-2.6/net/ipv4/netfilter/ipt_ipp2p.c | 694 +- .../src-rt/linux/linux-2.6/net/ipv4/tcp_input.c | 12 +- release/src-rt/linux/linux-2.6/net/ipv4/tcp_ipv4.c | 9 + .../linux/linux-2.6/net/ipv4/tcp_minisocks.c | 4 +- .../src-rt/linux/linux-2.6/net/netfilter/Kconfig | 19 + .../linux-2.6/net/netfilter/nf_conntrack_rtsp.c | 1 + .../src-rt/linux/linux-2.6/net/sched/act_police.c | 4 +- release/src-rt/linux/linux-2.6/net/sched/sch_cbq.c | 3 +- release/src-rt/linux/linux-2.6/net/sched/sch_htb.c | 10 +- release/src-rt/linux/linux-2.6/net/sched/sch_tbf.c | 4 +- release/src-rt/linux/linux-2.6/save-config | 1783 ++ .../src-rt/linux/linux-2.6/scripts/squashfs/linux | 1 + release/src-rt/shared/.aiutils.o.cmd | 536 + release/src-rt/shared/.bcmotp.o.cmd | 536 + release/src-rt/shared/.bcmrobo.o.cmd | 537 + release/src-rt/shared/.bcmsrom.o.cmd | 556 + release/src-rt/shared/.bcmutils.o.cmd | 536 + release/src-rt/shared/.hndchipc.o.cmd | 536 + release/src-rt/shared/.hnddma.o.cmd | 531 + release/src-rt/shared/.hndmips.o.cmd | 544 + release/src-rt/shared/.hndpci.o.cmd | 550 + release/src-rt/shared/.hndpmu.o.cmd | 531 + release/src-rt/shared/.linux_gpio.o.cmd | 527 + release/src-rt/shared/.linux_osl.o.cmd | 531 + release/src-rt/shared/.nicpci.o.cmd | 540 + release/src-rt/shared/.sbutils.o.cmd | 538 + release/src-rt/shared/.sflash.o.cmd | 534 + release/src-rt/shared/.siutils.o.cmd | 554 + release/src-rt/shared/aisdram.S | 456 +- release/src-rt/shared/aiutils.c | 93 +- release/src-rt/shared/aiutils.o | Bin 0 -> 122444 bytes release/src-rt/shared/bcm_rpc.c | 9 +- release/src-rt/shared/bcmotp.c | 5 +- release/src-rt/shared/bcmotp.o | Bin 0 -> 119728 bytes release/src-rt/shared/bcmrobo.c | 68 +- release/src-rt/shared/bcmrobo.o | Bin 0 -> 120040 bytes release/src-rt/shared/bcmsrom.o | Bin 0 -> 152356 bytes release/src-rt/shared/bcmutils.o | Bin 0 -> 159984 bytes release/src-rt/shared/flashutl.c | 2 +- release/src-rt/shared/hndchipc.o | Bin 0 -> 102040 bytes release/src-rt/shared/hnddma.c | 8 + release/src-rt/shared/hnddma.o | Bin 0 -> 179384 bytes release/src-rt/shared/hndmips.c | 122 +- release/src-rt/shared/hndmips.o | Bin 0 -> 167084 bytes release/src-rt/shared/hndpci.c | 44 +- release/src-rt/shared/hndpci.o | Bin 0 -> 130496 bytes release/src-rt/shared/hndpmu.c | 78 +- release/src-rt/shared/hndpmu.o | Bin 0 -> 256736 bytes release/src-rt/shared/linux_gpio.o | Bin 0 -> 80116 bytes release/src-rt/shared/linux_osl.c | 26 +- release/src-rt/shared/linux_osl.o | Bin 0 -> 112728 bytes release/src-rt/shared/nicpci.o | Bin 0 -> 128608 bytes release/src-rt/shared/nvram/.nvram.o.cmd | 530 + release/src-rt/shared/nvram/nvram.c | 181 +- release/src-rt/shared/nvram/nvram.o | Bin 0 -> 87744 bytes release/src-rt/shared/nvram/nvram_ro.c | 229 - release/src-rt/shared/nvram/nvram_rw.c | 0 release/src-rt/shared/nvram/nvram_vx.c | 308 - release/src-rt/shared/sbutils.o | Bin 0 -> 124376 bytes release/src-rt/shared/sflash.o | Bin 0 -> 113836 bytes release/src-rt/shared/siutils.c | 53 +- release/src-rt/shared/siutils.o | Bin 0 -> 253792 bytes release/src-rt/shared/siutils_priv.h | 1 + release/src-rt/target.mak | 2 +- .../prebuilt/.dummy => tomato_profile.mak} | 0 release/src-rt/wl/config/wl.mk | 29 +- release/src-rt/wl/config/wlconfig_lx_router_high | 67 + release/src-rt/wl/config/wlconfig_lx_wl_stadef | 38 + .../src-rt/wl/config/wltunable_rte_43236b1_usbap.h | 35 + release/src-rt/wl/eapd/dcs_eap.c | 264 + release/src-rt/wl/eapd/eapd.c | 1775 ++ release/src-rt/wl/eapd/eapd.h | 242 + release/src-rt/wl/eapd/eapd_ecos.c | 263 + release/src-rt/wl/eapd/eapd_linux.c | 321 + release/src-rt/wl/eapd/eapd_vx.c | 803 + release/src-rt/wl/eapd/linux/.gitignore | 2 + release/src-rt/wl/eapd/linux/Makefile | 50 + release/src-rt/wl/eapd/nas_eap.c | 685 + release/src-rt/wl/eapd/ses_eap.c | 279 + release/src-rt/wl/eapd/wai_eap.c | 296 + release/src-rt/wl/eapd/wps_eap.c | 309 + release/src-rt/wl/exe/shellproc_linux.c | 714 + release/src-rt/wl/exe/wlu.c | 21578 +++++++++++++++++++ release/src-rt/wl/exe/wlu.h | 105 + release/src-rt/wl/exe/wlu_client_shared.c | 1196 + release/src-rt/wl/exe/wlu_client_shared.h | 37 + release/src-rt/wl/exe/wlu_cmd.c | 29 + release/src-rt/wl/exe/wlu_cmd.h | 139 + release/src-rt/wl/exe/wlu_iov.c | 30 + release/src-rt/wl/exe/wlu_linux.c | 900 + release/src-rt/wl/exe/wlu_pipe.c | 1076 + release/src-rt/wl/exe/wlu_pipe.h | 46 + release/src-rt/wl/exe/wlu_pipe_linux.c | 578 + release/src-rt/wl/exe/wlu_remote.h | 225 + release/src-rt/wl/exe/wlu_server_linux.c | 390 + release/src-rt/wl/exe/wlu_server_shared.c | 962 + release/src-rt/wl/exe/wlu_server_shared.h | 67 + release/src-rt/wl/mipsel-uclibc/eapd | Bin 37619 -> 0 bytes release/src-rt/wl/mipsel-uclibc/nas | Bin 77820 -> 0 bytes release/src-rt/wl/mipsel-uclibc/wl | Bin 360057 -> 0 bytes release/src-rt/wl/nas/Makefile | 36 + release/src-rt/wl/nas/README | 391 + release/src-rt/wl/nas/global.h | 48 + release/src-rt/wl/nas/mppe.c | 60 + release/src-rt/wl/nas/mppe.h | 22 + release/src-rt/wl/nas/nas.c | 1108 + release/src-rt/wl/nas/nas.h | 286 + release/src-rt/wl/nas/nas.h.orig | 280 + release/src-rt/wl/nas/nas/.gitignore | 2 + release/src-rt/wl/nas/nas/Makefile | 53 + release/src-rt/wl/nas/nas_bsd.c | 154 + release/src-rt/wl/nas/nas_ecos.c | 197 + release/src-rt/wl/nas/nas_linux.c | 158 + release/src-rt/wl/nas/nas_radius.c | 489 + release/src-rt/wl/nas/nas_radius.h | 28 + release/src-rt/wl/nas/nas_rte.c | 294 + release/src-rt/wl/nas/nas_vx.c | 200 + release/src-rt/wl/nas/nas_wksp.c | 1367 ++ release/src-rt/wl/nas/nas_wksp.h | 170 + release/src-rt/wl/nas/nas_wksp_radius.c | 155 + release/src-rt/wl/nas/nas_wksp_radius.h | 43 + release/src-rt/wl/nas/nas_wl.c | 208 + release/src-rt/wl/nas/radius.h | 182 + release/src-rt/wl/nas/unix.c | 89 + release/src-rt/wl/nas/wpa.c | 3554 +++ release/src-rt/wl/nas/wpa.h | 263 + release/src-rt/wl/sys/wlc_channel.c | 10784 +++++++++ release/src-rt/wlconf/wlconf.c | 38 +- release/src-rt/wnrtool/ambitCfg.h | 129 + release/src-rt/wnrtool/compatible_WNR3500Lv2.txt | 1 + release/src-rt/wnrtool/gzip | Bin 0 -> 64524 bytes release/src-rt/wnrtool/loader.lzma | Bin 0 -> 2192 bytes release/src-rt/wnrtool/lzma | Bin 0 -> 53969 bytes release/src-rt/wnrtool/mkchkimg | Bin 0 -> 9887 bytes release/src-rt/wnrtool/packet | Bin 0 -> 14105 bytes release/src-rt/wnrtool/trx | Bin 0 -> 33391 bytes release/src-rt/wnrtool/trx.c | 355 + release/src/linux/linux/include/asm | 1 - release/src/lzma/C/Compress/Lzma/.LzmaDecode.o.cmd | 2 +- release/src/lzma/C/Compress/Lzma/LzmaDecode.o | Bin 0 -> 16400 bytes .../src/lzma/CPP/7zip/Compress/LZMA_Alone/7zCrc.o | Bin 0 -> 1712 bytes .../src/lzma/CPP/7zip/Compress/LZMA_Alone/Alloc.o | Bin 0 -> 1504 bytes .../lzma/CPP/7zip/Compress/LZMA_Alone/BranchX86.o | Bin 0 -> 2088 bytes .../src/lzma/CPP/7zip/Compress/LZMA_Alone/CRC.o | Bin 0 -> 1712 bytes .../lzma/CPP/7zip/Compress/LZMA_Alone/C_FileIO.o | Bin 0 -> 3288 bytes .../7zip/Compress/LZMA_Alone/CommandLineParser.o | Bin 0 -> 22496 bytes .../CPP/7zip/Compress/LZMA_Alone/FileStreams.o | Bin 0 -> 34472 bytes .../lzma/CPP/7zip/Compress/LZMA_Alone/InBuffer.o | Bin 0 -> 4344 bytes .../CPP/7zip/Compress/LZMA_Alone/IntToString.o | Bin 0 -> 2056 bytes .../CPP/7zip/Compress/LZMA_Alone/LZMADecoder.o | Bin 0 -> 48448 bytes .../CPP/7zip/Compress/LZMA_Alone/LZMAEncoder.o | Bin 0 -> 57960 bytes .../CPP/7zip/Compress/LZMA_Alone/LZOutWindow.o | Bin 0 -> 1408 bytes .../lzma/CPP/7zip/Compress/LZMA_Alone/LzmaAlone.o | Bin 0 -> 53576 bytes .../lzma/CPP/7zip/Compress/LZMA_Alone/LzmaBench.o | Bin 0 -> 55056 bytes .../CPP/7zip/Compress/LZMA_Alone/LzmaBenchCon.o | Bin 0 -> 9952 bytes .../lzma/CPP/7zip/Compress/LZMA_Alone/LzmaDecode.o | Bin 0 -> 4264 bytes .../lzma/CPP/7zip/Compress/LZMA_Alone/LzmaRam.o | Bin 0 -> 17944 bytes .../CPP/7zip/Compress/LZMA_Alone/LzmaRamDecode.o | Bin 0 -> 2016 bytes .../CPP/7zip/Compress/LZMA_Alone/MatchFinder.o | Bin 0 -> 13448 bytes .../lzma/CPP/7zip/Compress/LZMA_Alone/MyString.o | Bin 0 -> 2128 bytes .../lzma/CPP/7zip/Compress/LZMA_Alone/MyVector.o | Bin 0 -> 5120 bytes .../lzma/CPP/7zip/Compress/LZMA_Alone/OutBuffer.o | Bin 0 -> 4576 bytes .../CPP/7zip/Compress/LZMA_Alone/RangeCoderBit.o | Bin 0 -> 2352 bytes .../CPP/7zip/Compress/LZMA_Alone/StreamUtils.o | Bin 0 -> 1704 bytes .../CPP/7zip/Compress/LZMA_Alone/StringConvert.o | Bin 0 -> 3144 bytes .../CPP/7zip/Compress/LZMA_Alone/StringToInt.o | Bin 0 -> 1888 bytes .../src/lzma/CPP/7zip/Compress/LZMA_Lib/7zCrc.o | Bin 0 -> 2400 bytes .../src/lzma/CPP/7zip/Compress/LZMA_Lib/Alloc.o | Bin 0 -> 1504 bytes release/src/lzma/CPP/7zip/Compress/LZMA_Lib/CRC.o | Bin 0 -> 1712 bytes .../src/lzma/CPP/7zip/Compress/LZMA_Lib/C_FileIO.o | Bin 0 -> 3720 bytes .../CPP/7zip/Compress/LZMA_Lib/CommandLineParser.o | Bin 0 -> 25368 bytes .../lzma/CPP/7zip/Compress/LZMA_Lib/FileStreams.o | Bin 0 -> 38200 bytes .../src/lzma/CPP/7zip/Compress/LZMA_Lib/InBuffer.o | Bin 0 -> 4336 bytes .../lzma/CPP/7zip/Compress/LZMA_Lib/LZMADecoder.o | Bin 0 -> 58624 bytes .../lzma/CPP/7zip/Compress/LZMA_Lib/LZMAEncoder.o | Bin 0 -> 64032 bytes .../lzma/CPP/7zip/Compress/LZMA_Lib/LZOutWindow.o | Bin 0 -> 1408 bytes .../lzma/CPP/7zip/Compress/LZMA_Lib/MatchFinder.o | Bin 0 -> 14672 bytes .../src/lzma/CPP/7zip/Compress/LZMA_Lib/MyString.o | Bin 0 -> 2168 bytes .../src/lzma/CPP/7zip/Compress/LZMA_Lib/MyVector.o | Bin 0 -> 5312 bytes .../lzma/CPP/7zip/Compress/LZMA_Lib/NewHandler.o | Bin 0 -> 936 bytes .../lzma/CPP/7zip/Compress/LZMA_Lib/OutBuffer.o | Bin 0 -> 4616 bytes .../CPP/7zip/Compress/LZMA_Lib/RangeCoderBit.o | Bin 0 -> 2472 bytes .../lzma/CPP/7zip/Compress/LZMA_Lib/StreamUtils.o | Bin 0 -> 1792 bytes .../CPP/7zip/Compress/LZMA_Lib/StringConvert.o | Bin 0 -> 3440 bytes .../lzma/CPP/7zip/Compress/LZMA_Lib/StringToInt.o | Bin 0 -> 1888 bytes .../lzma/CPP/7zip/Compress/LZMA_Lib/UTFConvert.o | Bin 0 -> 5232 bytes release/src/lzma/CPP/7zip/Compress/LZMA_Lib/ZLib.o | Bin 0 -> 45592 bytes .../src/lzma/CPP/7zip/Compress/LZMA_Lib/liblzma.a | Bin 0 -> 311436 bytes release/src/router/accel-pptp/src/Makefile | 14 +- release/src/router/bridge/brctl/Makefile | 2 +- release/src/router/bridge/config.log | 680 - release/src/router/bridge/config.status | 1195 - release/src/router/bridge/doc/Makefile | 2 +- release/src/router/bridge/libbridge/Makefile | 2 +- release/src/router/config_nc | 41 + release/src/router/cyassl/Makefile | 22 +- release/src/router/cyassl/config.log | 1241 -- release/src/router/cyassl/config.status | 1950 -- release/src/router/cyassl/ctaocrypt/Makefile | 22 +- .../src/router/cyassl/ctaocrypt/benchmark/Makefile | 22 +- release/src/router/cyassl/ctaocrypt/src/Makefile | 22 +- release/src/router/cyassl/ctaocrypt/test/Makefile | 22 +- release/src/router/cyassl/examples/Makefile | 22 +- release/src/router/cyassl/examples/client/Makefile | 22 +- .../src/router/cyassl/examples/echoclient/Makefile | 22 +- .../src/router/cyassl/examples/echoserver/Makefile | 22 +- release/src/router/cyassl/examples/server/Makefile | 22 +- release/src/router/cyassl/src/Makefile | 22 +- release/src/router/cyassl/sslSniffer/Makefile | 22 +- .../cyassl/sslSniffer/sslSnifferTest/Makefile | 22 +- release/src/router/cyassl/testsuite/Makefile | 22 +- release/src/router/dnscrypt/config.status | 2078 -- release/src/router/dnscrypt/man/Makefile | 20 +- release/src/router/dnscrypt/src/Makefile | 20 +- release/src/router/dnscrypt/src/ext/Makefile | 20 +- release/src/router/dnscrypt/src/hostip/Makefile | 20 +- release/src/router/dnscrypt/src/libevent/Makefile | 20 +- .../src/router/dnscrypt/src/libevent/config.status | 2174 -- .../router/dnscrypt/src/libevent/include/Makefile | 20 +- .../router/dnscrypt/src/libevent/sample/Makefile | 20 +- .../src/router/dnscrypt/src/libevent/test/Makefile | 20 +- release/src/router/dnscrypt/src/proxy/Makefile | 20 +- release/src/router/dropbear/_MTN/format | 1 - release/src/router/dropbear/_MTN/inodeprints | 1 - release/src/router/dropbear/_MTN/options | 3 - release/src/router/dropbear/_MTN/revision | 5 - release/src/router/ffmpeg/config.err | 3310 +++ .../ffmpeg/libavcodec/libavcodec-uninstalled.pc | 4 +- release/src/router/ffmpeg/libavcodec/libavcodec.pc | 2 +- .../ffmpeg/libavdevice/libavdevice-uninstalled.pc | 4 +- .../src/router/ffmpeg/libavdevice/libavdevice.pc | 2 +- .../ffmpeg/libavformat/libavformat-uninstalled.pc | 4 +- .../src/router/ffmpeg/libavformat/libavformat.pc | 2 +- .../ffmpeg/libavutil/libavutil-uninstalled.pc | 2 +- .../ffmpeg/libswscale/libswscale-uninstalled.pc | 2 +- release/src/router/flac/Makefile | 18 +- release/src/router/flac/build/Makefile | 18 +- release/src/router/flac/config.log | 1780 -- release/src/router/flac/config.status | 1365 -- release/src/router/flac/doc/Makefile | 18 +- release/src/router/flac/doc/html/Makefile | 18 +- release/src/router/flac/doc/html/images/Makefile | 18 +- .../src/router/flac/doc/html/images/hw/Makefile | 18 +- release/src/router/flac/doc/html/ru/Makefile | 18 +- release/src/router/flac/examples/Makefile | 18 +- release/src/router/flac/examples/c/Makefile | 18 +- release/src/router/flac/examples/c/decode/Makefile | 18 +- .../router/flac/examples/c/decode/file/Makefile | 18 +- release/src/router/flac/examples/c/encode/Makefile | 18 +- .../router/flac/examples/c/encode/file/Makefile | 18 +- release/src/router/flac/examples/cpp/Makefile | 18 +- .../src/router/flac/examples/cpp/decode/Makefile | 18 +- .../router/flac/examples/cpp/decode/file/Makefile | 18 +- .../src/router/flac/examples/cpp/encode/Makefile | 18 +- .../router/flac/examples/cpp/encode/file/Makefile | 18 +- release/src/router/flac/include/FLAC++/Makefile | 18 +- release/src/router/flac/include/FLAC/Makefile | 18 +- release/src/router/flac/include/Makefile | 18 +- release/src/router/flac/include/share/Makefile | 18 +- .../src/router/flac/include/share/grabbag/Makefile | 18 +- .../router/flac/include/test_libs_common/Makefile | 18 +- release/src/router/flac/m4/Makefile | 18 +- release/src/router/flac/man/Makefile | 18 +- release/src/router/flac/obj/Makefile | 18 +- release/src/router/flac/obj/debug/Makefile | 18 +- release/src/router/flac/obj/debug/bin/Makefile | 18 +- release/src/router/flac/obj/debug/lib/Makefile | 18 +- release/src/router/flac/obj/release/Makefile | 18 +- release/src/router/flac/obj/release/bin/Makefile | 18 +- release/src/router/flac/obj/release/lib/Makefile | 18 +- release/src/router/flac/src/Makefile | 18 +- release/src/router/flac/src/flac/Makefile | 18 +- release/src/router/flac/src/libFLAC++/Makefile | 18 +- .../router/flac/src/libFLAC/.deps/bitreader.Plo | 8 +- .../router/flac/src/libFLAC/.deps/bitwriter.Plo | 8 +- release/src/router/flac/src/libFLAC/.deps/md5.Plo | 4 +- .../src/router/flac/src/libFLAC/.deps/memory.Plo | 4 +- .../flac/src/libFLAC/.deps/metadata_iterators.Plo | 12 +- .../flac/src/libFLAC/.deps/metadata_object.Plo | 4 +- .../flac/src/libFLAC/.deps/ogg_decoder_aspect.Plo | 12 +- .../flac/src/libFLAC/.deps/ogg_encoder_aspect.Plo | 12 +- .../router/flac/src/libFLAC/.deps/ogg_helper.Plo | 16 +- .../flac/src/libFLAC/.deps/stream_decoder.Plo | 16 +- .../flac/src/libFLAC/.deps/stream_encoder.Plo | 16 +- release/src/router/flac/src/libFLAC/Makefile | 18 +- release/src/router/flac/src/libFLAC/ia32/Makefile | 18 +- .../src/router/flac/src/libFLAC/include/Makefile | 18 +- .../flac/src/libFLAC/include/private/Makefile | 18 +- .../flac/src/libFLAC/include/protected/Makefile | 18 +- release/src/router/flac/src/libFLAC/ppc/Makefile | 18 +- .../src/router/flac/src/libFLAC/ppc/as/Makefile | 18 +- .../src/router/flac/src/libFLAC/ppc/gas/Makefile | 18 +- release/src/router/flac/src/metaflac/Makefile | 18 +- .../flac/src/monkeys_audio_utilities/Makefile | 18 +- .../src/monkeys_audio_utilities/flac_mac/Makefile | 18 +- .../src/monkeys_audio_utilities/flac_ren/Makefile | 18 +- release/src/router/flac/src/plugin_common/Makefile | 18 +- .../src/router/flac/src/plugin_winamp2/Makefile | 18 +- .../flac/src/plugin_winamp2/include/Makefile | 18 +- .../src/plugin_winamp2/include/winamp2/Makefile | 18 +- release/src/router/flac/src/plugin_xmms/Makefile | 18 +- release/src/router/flac/src/share/Makefile | 18 +- release/src/router/flac/src/share/getopt/Makefile | 18 +- release/src/router/flac/src/share/grabbag/Makefile | 18 +- .../flac/src/share/replaygain_analysis/Makefile | 18 +- .../flac/src/share/replaygain_synthesis/Makefile | 18 +- .../share/replaygain_synthesis/include/Makefile | 18 +- .../replaygain_synthesis/include/private/Makefile | 18 +- release/src/router/flac/src/share/utf8/Makefile | 18 +- release/src/router/flac/src/test_grabbag/Makefile | 18 +- .../router/flac/src/test_grabbag/cuesheet/Makefile | 18 +- .../router/flac/src/test_grabbag/picture/Makefile | 18 +- .../src/router/flac/src/test_libFLAC++/Makefile | 18 +- release/src/router/flac/src/test_libFLAC/Makefile | 18 +- .../src/router/flac/src/test_libs_common/Makefile | 18 +- release/src/router/flac/src/test_seeking/Makefile | 18 +- release/src/router/flac/src/test_streams/Makefile | 18 +- release/src/router/flac/test/Makefile | 18 +- release/src/router/flac/test/cuesheets/Makefile | 18 +- .../test/flac-to-flac-metadata-test-files/Makefile | 18 +- .../router/flac/test/metaflac-test-files/Makefile | 18 +- release/src/router/flac/test/pictures/Makefile | 18 +- release/src/router/igmpproxy/Makefile | 22 +- release/src/router/igmpproxy/doc/Makefile | 22 +- .../.dummy => src/router/iptables/.makefirst} | 0 .../router/iptables/extensions/libip6t_CONNMARK.d | 26 +- .../src/router/iptables/extensions/libip6t_HL.d | 24 +- .../src/router/iptables/extensions/libip6t_IMQ.d | 26 +- .../src/router/iptables/extensions/libip6t_LOG.d | 24 +- .../src/router/iptables/extensions/libip6t_MARK.d | 22 +- .../router/iptables/extensions/libip6t_NFQUEUE.d | 26 +- .../router/iptables/extensions/libip6t_REJECT.d | 24 +- .../src/router/iptables/extensions/libip6t_ROUTE.d | 24 +- .../router/iptables/extensions/libip6t_TCPMSS.d | 22 +- .../router/iptables/extensions/libip6t_connbytes.d | 28 +- .../router/iptables/extensions/libip6t_connlimit.d | 24 +- .../router/iptables/extensions/libip6t_connmark.d | 22 +- .../src/router/iptables/extensions/libip6t_dscp.d | 24 +- .../router/iptables/extensions/libip6t_hashlimit.d | 24 +- .../src/router/iptables/extensions/libip6t_hl.d | 24 +- .../src/router/iptables/extensions/libip6t_icmp6.d | 22 +- .../router/iptables/extensions/libip6t_iprange.d | 24 +- .../router/iptables/extensions/libip6t_length.d | 26 +- .../src/router/iptables/extensions/libip6t_limit.d | 22 +- .../src/router/iptables/extensions/libip6t_mac.d | 28 +- .../src/router/iptables/extensions/libip6t_mark.d | 22 +- .../router/iptables/extensions/libip6t_multiport.d | 22 +- .../router/iptables/extensions/libip6t_recent.d | 24 +- .../src/router/iptables/extensions/libip6t_rt.d | 28 +- .../router/iptables/extensions/libip6t_standard.d | 22 +- .../src/router/iptables/extensions/libip6t_state.d | 28 +- .../src/router/iptables/extensions/libip6t_tcp.d | 22 +- .../src/router/iptables/extensions/libip6t_udp.d | 22 +- .../src/router/iptables/extensions/libip6t_web.d | 26 +- .../router/iptables/extensions/libip6t_webmon.d | 26 +- .../router/iptables/extensions/libipt_CLASSIFY.d | 82 + .../router/iptables/extensions/libipt_CONNMARK.d | 81 + .../src/router/iptables/extensions/libipt_DNAT.d | 85 + .../src/router/iptables/extensions/libipt_DSCP.d | 84 + .../src/router/iptables/extensions/libipt_IMQ.d | 81 + .../src/router/iptables/extensions/libipt_LOG.d | 85 + .../src/router/iptables/extensions/libipt_MARK.d | 80 + .../router/iptables/extensions/libipt_MASQUERADE.d | 85 + .../src/router/iptables/extensions/libipt_NETMAP.d | 85 + .../router/iptables/extensions/libipt_NFQUEUE.d | 81 + .../router/iptables/extensions/libipt_NOTRACK.d | 79 + .../router/iptables/extensions/libipt_REDIRECT.d | 85 + .../src/router/iptables/extensions/libipt_REJECT.d | 80 + .../src/router/iptables/extensions/libipt_ROUTE.d | 81 + .../src/router/iptables/extensions/libipt_SNAT.d | 85 + .../src/router/iptables/extensions/libipt_TCPMSS.d | 81 + .../src/router/iptables/extensions/libipt_TOS.d | 80 + .../router/iptables/extensions/libipt_TRIGGER.d | 89 + .../src/router/iptables/extensions/libipt_TTL.d | 80 + .../router/iptables/extensions/libipt_account.d | 80 + .../router/iptables/extensions/libipt_condition.d | 80 + .../router/iptables/extensions/libipt_connbytes.d | 85 + .../router/iptables/extensions/libipt_connlimit.d | 87 + .../router/iptables/extensions/libipt_connmark.d | 83 + .../src/router/iptables/extensions/libipt_dscp.d | 82 + .../src/router/iptables/extensions/libipt_geoip.d | 94 + .../router/iptables/extensions/libipt_hashlimit.d | 81 + .../src/router/iptables/extensions/libipt_icmp.d | 82 + .../src/router/iptables/extensions/libipt_ipp2p.d | 85 + .../router/iptables/extensions/libipt_iprange.d | 84 + .../src/router/iptables/extensions/libipt_layer7.d | 99 + .../src/router/iptables/extensions/libipt_length.d | 84 + .../src/router/iptables/extensions/libipt_limit.d | 80 + .../src/router/iptables/extensions/libipt_mac.d | 86 + .../src/router/iptables/extensions/libipt_mark.d | 83 + .../router/iptables/extensions/libipt_multiport.d | 83 + .../src/router/iptables/extensions/libipt_quota.d | 80 + .../src/router/iptables/extensions/libipt_recent.d | 84 + .../router/iptables/extensions/libipt_standard.d | 82 + .../src/router/iptables/extensions/libipt_state.d | 85 + .../src/router/iptables/extensions/libipt_string.d | 86 + .../src/router/iptables/extensions/libipt_tcp.d | 82 + .../src/router/iptables/extensions/libipt_tcpmss.d | 84 + .../src/router/iptables/extensions/libipt_time.d | 83 + .../src/router/iptables/extensions/libipt_tos.d | 83 + .../src/router/iptables/extensions/libipt_u32.d | 90 + .../src/router/iptables/extensions/libipt_udp.d | 82 + .../src/router/iptables/extensions/libipt_web.d | 81 + .../src/router/iptables/extensions/libipt_webmon.d | 85 + release/src/router/iptables/iptables-standalone.d | 82 + release/src/router/iptables/iptables.d | 109 + release/src/router/iptables/libiptc/libip4tc.d | 87 + release/src/router/iptables/libiptc/libip6tc.d | 26 +- release/src/router/libexif/Makefile | 22 +- release/src/router/libexif/binary/Makefile | 22 +- release/src/router/libexif/config.log | 762 - release/src/router/libexif/config.status | 2193 -- release/src/router/libexif/contrib/Makefile | 22 +- .../src/router/libexif/contrib/examples/Makefile | 22 +- release/src/router/libexif/doc/Makefile | 22 +- release/src/router/libexif/libexif/Makefile | 22 +- release/src/router/libexif/m4m/Makefile | 22 +- release/src/router/libexif/test/Makefile | 22 +- release/src/router/libexif/test/nls/Makefile | 22 +- .../src/router/libid3tag/autom4te.cache/output.0 | 20385 ++++++++++++++++++ .../src/router/libid3tag/autom4te.cache/requests | 76 + .../src/router/libid3tag/autom4te.cache/traces.0 | 740 + release/src/router/libid3tag/config.h.in | 3 + .../router/libid3tag/{config.h.in => config.h.in~} | 0 release/src/router/libid3tag/configure | 10987 +++++----- release/src/router/libnfnetlink/Makefile | 20 +- release/src/router/libnfnetlink/config.log | 615 - release/src/router/libnfnetlink/config.status | 1917 -- release/src/router/libnfnetlink/include/Makefile | 20 +- .../libnfnetlink/include/libnfnetlink/Makefile | 20 +- release/src/router/libnfnetlink/src/Makefile | 20 +- release/src/router/libnfnetlink/utils/Makefile | 20 +- release/src/router/libogg/Makefile | 22 +- release/src/router/libogg/config.log | 1766 -- release/src/router/libogg/config.status | 1103 - release/src/router/libogg/doc/Makefile | 22 +- release/src/router/libogg/doc/libogg/Makefile | 22 +- release/src/router/libogg/include/Makefile | 22 +- release/src/router/libogg/include/ogg/Makefile | 22 +- release/src/router/libogg/src/Makefile | 22 +- release/src/router/libusb10/config.log | 605 - release/src/router/libusb10/config.status | 2050 -- release/src/router/libusb10/doc/Makefile | 22 +- release/src/router/libusb10/examples/Makefile | 22 +- release/src/router/libusb10/libusb/Makefile | 22 +- release/src/router/libvorbis/Makefile | 30 +- release/src/router/libvorbis/config.log | 924 - release/src/router/libvorbis/config.status | 1128 - release/src/router/libvorbis/doc/Makefile | 30 +- .../src/router/libvorbis/doc/vorbisenc/Makefile | 30 +- .../src/router/libvorbis/doc/vorbisfile/Makefile | 30 +- release/src/router/libvorbis/examples/Makefile | 32 +- release/src/router/libvorbis/include/Makefile | 30 +- .../src/router/libvorbis/include/vorbis/Makefile | 30 +- .../src/router/libvorbis/lib/.deps/analysis.Plo | 12 +- release/src/router/libvorbis/lib/.deps/bitrate.Plo | 12 +- release/src/router/libvorbis/lib/.deps/block.Plo | 12 +- .../src/router/libvorbis/lib/.deps/codebook.Plo | 12 +- .../src/router/libvorbis/lib/.deps/envelope.Plo | 12 +- release/src/router/libvorbis/lib/.deps/floor0.Plo | 12 +- release/src/router/libvorbis/lib/.deps/floor1.Plo | 12 +- release/src/router/libvorbis/lib/.deps/info.Plo | 12 +- release/src/router/libvorbis/lib/.deps/lookup.Plo | 12 +- release/src/router/libvorbis/lib/.deps/lpc.Plo | 12 +- release/src/router/libvorbis/lib/.deps/lsp.Plo | 12 +- .../src/router/libvorbis/lib/.deps/mapping0.Plo | 12 +- release/src/router/libvorbis/lib/.deps/mdct.Plo | 12 +- release/src/router/libvorbis/lib/.deps/psy.Plo | 12 +- .../src/router/libvorbis/lib/.deps/registry.Plo | 12 +- release/src/router/libvorbis/lib/.deps/res0.Plo | 12 +- .../src/router/libvorbis/lib/.deps/sharedbook.Plo | 12 +- release/src/router/libvorbis/lib/.deps/smallft.Plo | 12 +- .../src/router/libvorbis/lib/.deps/synthesis.Plo | 12 +- .../lib/.deps/test_sharedbook-sharedbook.Po | 12 +- .../src/router/libvorbis/lib/.deps/vorbisenc.Plo | 12 +- .../src/router/libvorbis/lib/.deps/vorbisfile.Plo | 12 +- release/src/router/libvorbis/lib/.deps/window.Plo | 12 +- release/src/router/libvorbis/lib/Makefile | 38 +- release/src/router/libvorbis/lib/books/Makefile | 30 +- .../router/libvorbis/lib/books/coupled/Makefile | 30 +- .../src/router/libvorbis/lib/books/floor/Makefile | 30 +- .../router/libvorbis/lib/books/uncoupled/Makefile | 30 +- release/src/router/libvorbis/lib/modes/Makefile | 30 +- release/src/router/libvorbis/m4/Makefile | 30 +- release/src/router/libvorbis/test/Makefile | 34 +- release/src/router/libvorbis/vq/Makefile | 32 +- release/src/router/lzo/Makefile | 22 +- release/src/router/lzo/config.status | 2167 -- release/src/router/nocat/Makefile | 20 +- release/src/router/nocat/config.status | 1270 -- release/src/router/nocat/src/.deps/conf.Po | 8 +- release/src/router/nocat/src/.deps/defaults.Po | 8 +- release/src/router/nocat/src/.deps/firewall.Po | 8 +- release/src/router/nocat/src/.deps/gateway.Po | 8 +- release/src/router/nocat/src/.deps/http.Po | 8 +- release/src/router/nocat/src/.deps/linux.Po | 8 +- release/src/router/nocat/src/.deps/splashd.Po | 8 +- release/src/router/nocat/src/.deps/splashtest.Po | 8 +- release/src/router/nocat/src/.deps/util.Po | 8 +- release/src/router/nocat/src/Makefile | 24 +- release/src/router/ntfs-3g/config.status | 1257 -- release/src/router/ntfs-3g/include/Makefile | 22 +- .../src/router/ntfs-3g/include/fuse-lite/Makefile | 22 +- .../src/router/ntfs-3g/include/ntfs-3g/Makefile | 22 +- release/src/router/ntfs-3g/libfuse-lite/Makefile | 22 +- release/src/router/ntfs-3g/libntfs-3g/Makefile | 22 +- release/src/router/ntfs-3g/ntfsprogs/Makefile | 22 +- release/src/router/ntfs-3g/src/Makefile | 22 +- release/src/router/openssl/apps/app_rand.o | Bin 3692 -> 0 bytes release/src/router/openssl/apps/apps.o | Bin 54060 -> 0 bytes release/src/router/openssl/apps/enc.o | Bin 17148 -> 0 bytes release/src/router/openssl/apps/openssl.o | Bin 14648 -> 0 bytes release/src/router/openssl/apps/req.o | Bin 40796 -> 0 bytes release/src/router/openssl/apps/rsa.o | Bin 10284 -> 0 bytes release/src/router/openssl/apps/speed.o | Bin 49860 -> 0 bytes release/src/router/openssl/apps/version.o | Bin 3564 -> 0 bytes release/src/router/openssl/apps/x509.o | Bin 33988 -> 0 bytes release/src/router/openssl/crypto/aes/aes-mips.o | Bin 7452 -> 0 bytes release/src/router/openssl/crypto/aes/aes_cbc.o | Bin 1284 -> 0 bytes release/src/router/openssl/crypto/aes/aes_cfb.o | Bin 1928 -> 0 bytes release/src/router/openssl/crypto/aes/aes_ctr.o | Bin 1232 -> 0 bytes release/src/router/openssl/crypto/aes/aes_ecb.o | Bin 1172 -> 0 bytes release/src/router/openssl/crypto/aes/aes_ige.o | Bin 5068 -> 0 bytes release/src/router/openssl/crypto/aes/aes_misc.o | Bin 1936 -> 0 bytes release/src/router/openssl/crypto/aes/aes_ofb.o | Bin 1224 -> 0 bytes release/src/router/openssl/crypto/aes/aes_wrap.o | Bin 2536 -> 0 bytes release/src/router/openssl/crypto/asn1/a_bitstr.o | Bin 4048 -> 0 bytes release/src/router/openssl/crypto/asn1/a_bool.o | Bin 1812 -> 0 bytes release/src/router/openssl/crypto/asn1/a_bytes.o | Bin 4264 -> 0 bytes release/src/router/openssl/crypto/asn1/a_d2i_fp.o | Bin 4180 -> 0 bytes release/src/router/openssl/crypto/asn1/a_digest.o | Bin 2036 -> 0 bytes release/src/router/openssl/crypto/asn1/a_dup.o | Bin 2028 -> 0 bytes release/src/router/openssl/crypto/asn1/a_enum.o | Bin 3236 -> 0 bytes release/src/router/openssl/crypto/asn1/a_gentm.o | Bin 3892 -> 0 bytes release/src/router/openssl/crypto/asn1/a_i2d_fp.o | Bin 3184 -> 0 bytes release/src/router/openssl/crypto/asn1/a_int.o | Bin 6248 -> 0 bytes release/src/router/openssl/crypto/asn1/a_mbstr.o | Bin 5928 -> 0 bytes release/src/router/openssl/crypto/asn1/a_object.o | Bin 6820 -> 0 bytes release/src/router/openssl/crypto/asn1/a_octet.o | Bin 1712 -> 0 bytes release/src/router/openssl/crypto/asn1/a_print.o | Bin 1756 -> 0 bytes release/src/router/openssl/crypto/asn1/a_set.o | Bin 4036 -> 0 bytes release/src/router/openssl/crypto/asn1/a_sign.o | Bin 4856 -> 0 bytes release/src/router/openssl/crypto/asn1/a_strex.o | Bin 10428 -> 0 bytes release/src/router/openssl/crypto/asn1/a_strnid.o | Bin 6032 -> 0 bytes release/src/router/openssl/crypto/asn1/a_time.o | Bin 4812 -> 0 bytes release/src/router/openssl/crypto/asn1/a_type.o | Bin 2320 -> 0 bytes release/src/router/openssl/crypto/asn1/a_utctm.o | Bin 4588 -> 0 bytes release/src/router/openssl/crypto/asn1/a_utf8.o | Bin 2500 -> 0 bytes release/src/router/openssl/crypto/asn1/a_verify.o | Bin 3484 -> 0 bytes release/src/router/openssl/crypto/asn1/ameth_lib.o | Bin 7900 -> 0 bytes release/src/router/openssl/crypto/asn1/asn1_err.o | Bin 1000 -> 0 bytes release/src/router/openssl/crypto/asn1/asn1_gen.o | Bin 11264 -> 0 bytes release/src/router/openssl/crypto/asn1/asn1_lib.o | Bin 9252 -> 0 bytes release/src/router/openssl/crypto/asn1/asn1_par.o | Bin 8024 -> 0 bytes release/src/router/openssl/crypto/asn1/asn_mime.o | Bin 19152 -> 0 bytes release/src/router/openssl/crypto/asn1/asn_moid.o | Bin 2832 -> 0 bytes release/src/router/openssl/crypto/asn1/asn_pack.o | Bin 3984 -> 0 bytes release/src/router/openssl/crypto/asn1/bio_asn1.o | Bin 8332 -> 0 bytes release/src/router/openssl/crypto/asn1/bio_ndef.o | Bin 3784 -> 0 bytes release/src/router/openssl/crypto/asn1/d2i_pr.o | Bin 2740 -> 0 bytes release/src/router/openssl/crypto/asn1/d2i_pu.o | Bin 1812 -> 0 bytes release/src/router/openssl/crypto/asn1/evp_asn1.o | Bin 3856 -> 0 bytes release/src/router/openssl/crypto/asn1/f_enum.o | Bin 3280 -> 0 bytes release/src/router/openssl/crypto/asn1/f_int.o | Bin 3376 -> 0 bytes release/src/router/openssl/crypto/asn1/f_string.o | Bin 3224 -> 0 bytes release/src/router/openssl/crypto/asn1/i2d_pr.o | Bin 1436 -> 0 bytes release/src/router/openssl/crypto/asn1/i2d_pu.o | Bin 1308 -> 0 bytes release/src/router/openssl/crypto/asn1/n_pkey.o | Bin 9376 -> 0 bytes release/src/router/openssl/crypto/asn1/nsseq.o | Bin 3264 -> 0 bytes release/src/router/openssl/crypto/asn1/p5_pbe.o | Bin 4224 -> 0 bytes release/src/router/openssl/crypto/asn1/p5_pbev2.o | Bin 7596 -> 0 bytes release/src/router/openssl/crypto/asn1/p8_pkey.o | Bin 4296 -> 0 bytes release/src/router/openssl/crypto/asn1/t_bitst.o | Bin 2528 -> 0 bytes release/src/router/openssl/crypto/asn1/t_crl.o | Bin 3940 -> 0 bytes release/src/router/openssl/crypto/asn1/t_pkey.o | Bin 2488 -> 0 bytes release/src/router/openssl/crypto/asn1/t_req.o | Bin 6168 -> 0 bytes release/src/router/openssl/crypto/asn1/t_spki.o | Bin 2708 -> 0 bytes release/src/router/openssl/crypto/asn1/t_x509.o | Bin 12632 -> 0 bytes release/src/router/openssl/crypto/asn1/t_x509a.o | Bin 2952 -> 0 bytes release/src/router/openssl/crypto/asn1/tasn_dec.o | Bin 13256 -> 0 bytes release/src/router/openssl/crypto/asn1/tasn_enc.o | Bin 8352 -> 0 bytes release/src/router/openssl/crypto/asn1/tasn_fre.o | Bin 4180 -> 0 bytes release/src/router/openssl/crypto/asn1/tasn_new.o | Bin 5288 -> 0 bytes release/src/router/openssl/crypto/asn1/tasn_prn.o | Bin 10544 -> 0 bytes release/src/router/openssl/crypto/asn1/tasn_typ.o | Bin 28220 -> 0 bytes release/src/router/openssl/crypto/asn1/tasn_utl.o | Bin 4344 -> 0 bytes release/src/router/openssl/crypto/asn1/x_algor.o | Bin 5076 -> 0 bytes release/src/router/openssl/crypto/asn1/x_attrib.o | Bin 4132 -> 0 bytes release/src/router/openssl/crypto/asn1/x_bignum.o | Bin 3088 -> 0 bytes release/src/router/openssl/crypto/asn1/x_crl.o | Bin 14340 -> 0 bytes release/src/router/openssl/crypto/asn1/x_exten.o | Bin 3976 -> 0 bytes release/src/router/openssl/crypto/asn1/x_info.o | Bin 2036 -> 0 bytes release/src/router/openssl/crypto/asn1/x_long.o | Bin 3092 -> 0 bytes release/src/router/openssl/crypto/asn1/x_name.o | Bin 12148 -> 0 bytes release/src/router/openssl/crypto/asn1/x_nx509.o | Bin 2616 -> 0 bytes release/src/router/openssl/crypto/asn1/x_pkey.o | Bin 3676 -> 0 bytes release/src/router/openssl/crypto/asn1/x_pubkey.o | Bin 8188 -> 0 bytes release/src/router/openssl/crypto/asn1/x_req.o | Bin 5264 -> 0 bytes release/src/router/openssl/crypto/asn1/x_sig.o | Bin 2552 -> 0 bytes release/src/router/openssl/crypto/asn1/x_spki.o | Bin 4256 -> 0 bytes release/src/router/openssl/crypto/asn1/x_val.o | Bin 2524 -> 0 bytes release/src/router/openssl/crypto/asn1/x_x509.o | Bin 7888 -> 0 bytes release/src/router/openssl/crypto/asn1/x_x509a.o | Bin 7924 -> 0 bytes release/src/router/openssl/crypto/bf/bf_cfb64.o | Bin 1756 -> 0 bytes release/src/router/openssl/crypto/bf/bf_ecb.o | Bin 1860 -> 0 bytes release/src/router/openssl/crypto/bf/bf_enc.o | Bin 6028 -> 0 bytes release/src/router/openssl/crypto/bf/bf_ofb64.o | Bin 1792 -> 0 bytes release/src/router/openssl/crypto/bf/bf_skey.o | Bin 5824 -> 0 bytes release/src/router/openssl/crypto/bio/b_dump.o | Bin 4616 -> 0 bytes release/src/router/openssl/crypto/bio/b_print.o | Bin 9352 -> 0 bytes release/src/router/openssl/crypto/bio/b_sock.o | Bin 10032 -> 0 bytes release/src/router/openssl/crypto/bio/bf_buff.o | Bin 6848 -> 0 bytes release/src/router/openssl/crypto/bio/bf_nbio.o | Bin 4700 -> 0 bytes release/src/router/openssl/crypto/bio/bf_null.o | Bin 3920 -> 0 bytes release/src/router/openssl/crypto/bio/bio_cb.o | Bin 2996 -> 0 bytes release/src/router/openssl/crypto/bio/bio_err.o | Bin 996 -> 0 bytes release/src/router/openssl/crypto/bio/bio_lib.o | Bin 12852 -> 0 bytes release/src/router/openssl/crypto/bio/bss_acpt.o | Bin 6964 -> 0 bytes release/src/router/openssl/crypto/bio/bss_bio.o | Bin 9388 -> 0 bytes release/src/router/openssl/crypto/bio/bss_conn.o | Bin 9880 -> 0 bytes release/src/router/openssl/crypto/bio/bss_dgram.o | Bin 8040 -> 0 bytes release/src/router/openssl/crypto/bio/bss_fd.o | Bin 5256 -> 0 bytes release/src/router/openssl/crypto/bio/bss_file.o | Bin 6396 -> 0 bytes release/src/router/openssl/crypto/bio/bss_log.o | Bin 4532 -> 0 bytes release/src/router/openssl/crypto/bio/bss_mem.o | Bin 5184 -> 0 bytes release/src/router/openssl/crypto/bio/bss_null.o | Bin 2632 -> 0 bytes release/src/router/openssl/crypto/bio/bss_sock.o | Bin 4768 -> 0 bytes release/src/router/openssl/crypto/bn/bn-mips.o | Bin 10032 -> 0 bytes release/src/router/openssl/crypto/bn/bn_add.o | Bin 3312 -> 0 bytes release/src/router/openssl/crypto/bn/bn_blind.o | Bin 6216 -> 0 bytes release/src/router/openssl/crypto/bn/bn_const.o | Bin 7536 -> 0 bytes release/src/router/openssl/crypto/bn/bn_ctx.o | Bin 3960 -> 0 bytes release/src/router/openssl/crypto/bn/bn_depr.o | Bin 2092 -> 0 bytes release/src/router/openssl/crypto/bn/bn_div.o | Bin 3512 -> 0 bytes release/src/router/openssl/crypto/bn/bn_err.o | Bin 996 -> 0 bytes release/src/router/openssl/crypto/bn/bn_exp.o | Bin 12432 -> 0 bytes release/src/router/openssl/crypto/bn/bn_exp2.o | Bin 3856 -> 0 bytes release/src/router/openssl/crypto/bn/bn_gcd.o | Bin 6244 -> 0 bytes release/src/router/openssl/crypto/bn/bn_gf2m.o | Bin 15524 -> 0 bytes release/src/router/openssl/crypto/bn/bn_kron.o | Bin 2396 -> 0 bytes release/src/router/openssl/crypto/bn/bn_lib.o | Bin 13108 -> 0 bytes release/src/router/openssl/crypto/bn/bn_mod.o | Bin 5824 -> 0 bytes release/src/router/openssl/crypto/bn/bn_mont.o | Bin 6720 -> 0 bytes release/src/router/openssl/crypto/bn/bn_mpi.o | Bin 2044 -> 0 bytes release/src/router/openssl/crypto/bn/bn_mul.o | Bin 4412 -> 0 bytes release/src/router/openssl/crypto/bn/bn_nist.o | Bin 15368 -> 0 bytes release/src/router/openssl/crypto/bn/bn_prime.o | Bin 10824 -> 0 bytes release/src/router/openssl/crypto/bn/bn_print.o | Bin 6948 -> 0 bytes release/src/router/openssl/crypto/bn/bn_rand.o | Bin 4740 -> 0 bytes release/src/router/openssl/crypto/bn/bn_recp.o | Bin 5064 -> 0 bytes release/src/router/openssl/crypto/bn/bn_shift.o | Bin 3396 -> 0 bytes release/src/router/openssl/crypto/bn/bn_sqr.o | Bin 2460 -> 0 bytes release/src/router/openssl/crypto/bn/bn_sqrt.o | Bin 4724 -> 0 bytes release/src/router/openssl/crypto/bn/bn_word.o | Bin 3564 -> 0 bytes release/src/router/openssl/crypto/bn/bn_x931p.o | Bin 4468 -> 0 bytes release/src/router/openssl/crypto/buffer/buf_err.o | Bin 996 -> 0 bytes release/src/router/openssl/crypto/buffer/buf_str.o | Bin 2892 -> 0 bytes release/src/router/openssl/crypto/buffer/buffer.o | Bin 3444 -> 0 bytes release/src/router/openssl/crypto/cast/c_cfb64.o | Bin 1756 -> 0 bytes release/src/router/openssl/crypto/cast/c_ecb.o | Bin 1520 -> 0 bytes release/src/router/openssl/crypto/cast/c_enc.o | Bin 7112 -> 0 bytes release/src/router/openssl/crypto/cast/c_ofb64.o | Bin 1792 -> 0 bytes release/src/router/openssl/crypto/cast/c_skey.o | Bin 13828 -> 0 bytes release/src/router/openssl/crypto/cmac/cm_ameth.o | Bin 1688 -> 0 bytes release/src/router/openssl/crypto/cmac/cm_pmeth.o | Bin 5028 -> 0 bytes release/src/router/openssl/crypto/cmac/cmac.o | Bin 5844 -> 0 bytes release/src/router/openssl/crypto/comp/c_rle.o | Bin 2076 -> 0 bytes release/src/router/openssl/crypto/comp/c_zlib.o | Bin 1544 -> 0 bytes release/src/router/openssl/crypto/comp/comp_err.o | Bin 1000 -> 0 bytes release/src/router/openssl/crypto/comp/comp_lib.o | Bin 2324 -> 0 bytes release/src/router/openssl/crypto/conf/conf_api.o | Bin 6216 -> 0 bytes release/src/router/openssl/crypto/conf/conf_def.o | Bin 12456 -> 0 bytes release/src/router/openssl/crypto/conf/conf_err.o | Bin 1000 -> 0 bytes release/src/router/openssl/crypto/conf/conf_lib.o | Bin 9268 -> 0 bytes release/src/router/openssl/crypto/conf/conf_mall.o | Bin 1240 -> 0 bytes release/src/router/openssl/crypto/conf/conf_mod.o | Bin 10532 -> 0 bytes release/src/router/openssl/crypto/conf/conf_sap.o | Bin 2284 -> 0 bytes release/src/router/openssl/crypto/cpt_err.o | Bin 1004 -> 0 bytes release/src/router/openssl/crypto/cryptlib.o | Bin 15388 -> 0 bytes release/src/router/openssl/crypto/cversion.o | Bin 2772 -> 0 bytes release/src/router/openssl/crypto/des/cbc_cksm.o | Bin 2020 -> 0 bytes release/src/router/openssl/crypto/des/cbc_enc.o | Bin 2796 -> 0 bytes release/src/router/openssl/crypto/des/cfb64ede.o | Bin 4832 -> 0 bytes release/src/router/openssl/crypto/des/cfb64enc.o | Bin 1764 -> 0 bytes release/src/router/openssl/crypto/des/cfb_enc.o | Bin 3528 -> 0 bytes release/src/router/openssl/crypto/des/des_enc.o | Bin 11216 -> 0 bytes release/src/router/openssl/crypto/des/des_old.o | Bin 11084 -> 0 bytes release/src/router/openssl/crypto/des/des_old2.o | Bin 1144 -> 0 bytes release/src/router/openssl/crypto/des/ecb3_enc.o | Bin 1388 -> 0 bytes release/src/router/openssl/crypto/des/ecb_enc.o | Bin 2592 -> 0 bytes .../src/router/openssl/crypto/des/ede_cbcm_enc.o | Bin 3472 -> 0 bytes release/src/router/openssl/crypto/des/enc_read.o | Bin 3668 -> 0 bytes release/src/router/openssl/crypto/des/enc_writ.o | Bin 2384 -> 0 bytes release/src/router/openssl/crypto/des/fcrypt.o | Bin 2372 -> 0 bytes release/src/router/openssl/crypto/des/fcrypt_b.o | Bin 1836 -> 0 bytes release/src/router/openssl/crypto/des/ofb64ede.o | Bin 1804 -> 0 bytes release/src/router/openssl/crypto/des/ofb64enc.o | Bin 1700 -> 0 bytes release/src/router/openssl/crypto/des/ofb_enc.o | Bin 2548 -> 0 bytes release/src/router/openssl/crypto/des/pcbc_enc.o | Bin 2584 -> 0 bytes release/src/router/openssl/crypto/des/qud_cksm.o | Bin 1324 -> 0 bytes release/src/router/openssl/crypto/des/rand_key.o | Bin 1308 -> 0 bytes release/src/router/openssl/crypto/des/read2pwd.o | Bin 1872 -> 0 bytes release/src/router/openssl/crypto/des/rpc_enc.o | Bin 1356 -> 0 bytes release/src/router/openssl/crypto/des/set_key.o | Bin 6820 -> 0 bytes release/src/router/openssl/crypto/des/str2key.o | Bin 2808 -> 0 bytes release/src/router/openssl/crypto/des/xcbc_enc.o | Bin 3296 -> 0 bytes release/src/router/openssl/crypto/dh/dh_ameth.o | Bin 10900 -> 0 bytes release/src/router/openssl/crypto/dh/dh_asn1.o | Bin 2876 -> 0 bytes release/src/router/openssl/crypto/dh/dh_check.o | Bin 2436 -> 0 bytes release/src/router/openssl/crypto/dh/dh_depr.o | Bin 1372 -> 0 bytes release/src/router/openssl/crypto/dh/dh_err.o | Bin 996 -> 0 bytes release/src/router/openssl/crypto/dh/dh_gen.o | Bin 2212 -> 0 bytes release/src/router/openssl/crypto/dh/dh_key.o | Bin 4932 -> 0 bytes release/src/router/openssl/crypto/dh/dh_lib.o | Bin 5904 -> 0 bytes release/src/router/openssl/crypto/dh/dh_pmeth.o | Bin 4848 -> 0 bytes release/src/router/openssl/crypto/dh/dh_prn.o | Bin 1488 -> 0 bytes release/src/router/openssl/crypto/dsa/dsa_ameth.o | Bin 14600 -> 0 bytes release/src/router/openssl/crypto/dsa/dsa_asn1.o | Bin 8516 -> 0 bytes release/src/router/openssl/crypto/dsa/dsa_depr.o | Bin 1412 -> 0 bytes release/src/router/openssl/crypto/dsa/dsa_err.o | Bin 996 -> 0 bytes release/src/router/openssl/crypto/dsa/dsa_gen.o | Bin 5316 -> 0 bytes release/src/router/openssl/crypto/dsa/dsa_key.o | Bin 1840 -> 0 bytes release/src/router/openssl/crypto/dsa/dsa_lib.o | Bin 6664 -> 0 bytes release/src/router/openssl/crypto/dsa/dsa_ossl.o | Bin 6512 -> 0 bytes release/src/router/openssl/crypto/dsa/dsa_pmeth.o | Bin 6192 -> 0 bytes release/src/router/openssl/crypto/dsa/dsa_prn.o | Bin 2940 -> 0 bytes release/src/router/openssl/crypto/dsa/dsa_sign.o | Bin 2016 -> 0 bytes release/src/router/openssl/crypto/dsa/dsa_vrf.o | Bin 992 -> 0 bytes release/src/router/openssl/crypto/dso/dso_beos.o | Bin 988 -> 0 bytes release/src/router/openssl/crypto/dso/dso_dl.o | Bin 980 -> 0 bytes release/src/router/openssl/crypto/dso/dso_dlfcn.o | Bin 7096 -> 0 bytes release/src/router/openssl/crypto/dso/dso_err.o | Bin 996 -> 0 bytes release/src/router/openssl/crypto/dso/dso_lib.o | Bin 9584 -> 0 bytes release/src/router/openssl/crypto/dso/dso_null.o | Bin 1420 -> 0 bytes .../src/router/openssl/crypto/dso/dso_openssl.o | Bin 1136 -> 0 bytes release/src/router/openssl/crypto/dso/dso_vms.o | Bin 984 -> 0 bytes release/src/router/openssl/crypto/dso/dso_win32.o | Bin 992 -> 0 bytes release/src/router/openssl/crypto/ebcdic.o | Bin 782 -> 0 bytes release/src/router/openssl/crypto/engine/eng_all.o | Bin 1420 -> 0 bytes release/src/router/openssl/crypto/engine/eng_cnf.o | Bin 5580 -> 0 bytes .../router/openssl/crypto/engine/eng_cryptodev.o | Bin 1004 -> 0 bytes .../src/router/openssl/crypto/engine/eng_ctrl.o | Bin 5124 -> 0 bytes release/src/router/openssl/crypto/engine/eng_dyn.o | Bin 8828 -> 0 bytes release/src/router/openssl/crypto/engine/eng_err.o | Bin 1004 -> 0 bytes release/src/router/openssl/crypto/engine/eng_fat.o | Bin 5164 -> 0 bytes .../src/router/openssl/crypto/engine/eng_init.o | Bin 2808 -> 0 bytes release/src/router/openssl/crypto/engine/eng_lib.o | Bin 9436 -> 0 bytes .../src/router/openssl/crypto/engine/eng_list.o | Bin 7208 -> 0 bytes .../src/router/openssl/crypto/engine/eng_openssl.o | Bin 5304 -> 0 bytes .../src/router/openssl/crypto/engine/eng_pkey.o | Bin 4228 -> 0 bytes .../src/router/openssl/crypto/engine/eng_rdrand.o | Bin 996 -> 0 bytes .../src/router/openssl/crypto/engine/eng_rsax.o | Bin 992 -> 0 bytes .../src/router/openssl/crypto/engine/eng_table.o | Bin 6960 -> 0 bytes .../src/router/openssl/crypto/engine/tb_asnmth.o | Bin 6440 -> 0 bytes .../src/router/openssl/crypto/engine/tb_cipher.o | Bin 3952 -> 0 bytes release/src/router/openssl/crypto/engine/tb_dh.o | Bin 3528 -> 0 bytes .../src/router/openssl/crypto/engine/tb_digest.o | Bin 3952 -> 0 bytes release/src/router/openssl/crypto/engine/tb_dsa.o | Bin 3544 -> 0 bytes release/src/router/openssl/crypto/engine/tb_ecdh.o | Bin 3568 -> 0 bytes .../src/router/openssl/crypto/engine/tb_ecdsa.o | Bin 3584 -> 0 bytes .../src/router/openssl/crypto/engine/tb_pkmeth.o | Bin 4468 -> 0 bytes release/src/router/openssl/crypto/engine/tb_rand.o | Bin 3568 -> 0 bytes release/src/router/openssl/crypto/engine/tb_rsa.o | Bin 3544 -> 0 bytes .../src/router/openssl/crypto/engine/tb_store.o | Bin 2876 -> 0 bytes release/src/router/openssl/crypto/err/err.o | Bin 24348 -> 0 bytes release/src/router/openssl/crypto/err/err_all.o | Bin 1004 -> 0 bytes release/src/router/openssl/crypto/err/err_prn.o | Bin 3204 -> 0 bytes release/src/router/openssl/crypto/evp/bio_b64.o | Bin 8836 -> 0 bytes release/src/router/openssl/crypto/evp/bio_enc.o | Bin 5976 -> 0 bytes release/src/router/openssl/crypto/evp/bio_md.o | Bin 4604 -> 0 bytes release/src/router/openssl/crypto/evp/bio_ok.o | Bin 7352 -> 0 bytes release/src/router/openssl/crypto/evp/c_all.o | Bin 1308 -> 0 bytes release/src/router/openssl/crypto/evp/c_allc.o | Bin 9624 -> 0 bytes release/src/router/openssl/crypto/evp/c_alld.o | Bin 2736 -> 0 bytes release/src/router/openssl/crypto/evp/digest.o | Bin 6912 -> 0 bytes release/src/router/openssl/crypto/evp/e_aes.o | Bin 26156 -> 0 bytes .../openssl/crypto/evp/e_aes_cbc_hmac_sha1.o | Bin 1196 -> 0 bytes release/src/router/openssl/crypto/evp/e_bf.o | Bin 5024 -> 0 bytes release/src/router/openssl/crypto/evp/e_camellia.o | Bin 786 -> 0 bytes release/src/router/openssl/crypto/evp/e_cast.o | Bin 5112 -> 0 bytes release/src/router/openssl/crypto/evp/e_des.o | Bin 7488 -> 0 bytes release/src/router/openssl/crypto/evp/e_des3.o | Bin 10768 -> 0 bytes release/src/router/openssl/crypto/evp/e_idea.o | Bin 5312 -> 0 bytes release/src/router/openssl/crypto/evp/e_null.o | Bin 1776 -> 0 bytes release/src/router/openssl/crypto/evp/e_old.o | Bin 3856 -> 0 bytes release/src/router/openssl/crypto/evp/e_rc2.o | Bin 8060 -> 0 bytes release/src/router/openssl/crypto/evp/e_rc4.o | Bin 2464 -> 0 bytes .../src/router/openssl/crypto/evp/e_rc4_hmac_md5.o | Bin 3968 -> 0 bytes release/src/router/openssl/crypto/evp/e_rc5.o | Bin 5692 -> 0 bytes release/src/router/openssl/crypto/evp/e_seed.o | Bin 782 -> 0 bytes release/src/router/openssl/crypto/evp/e_xcbc_d.o | Bin 2344 -> 0 bytes release/src/router/openssl/crypto/evp/encode.o | Bin 5536 -> 0 bytes release/src/router/openssl/crypto/evp/evp_acnf.o | Bin 1256 -> 0 bytes release/src/router/openssl/crypto/evp/evp_enc.o | Bin 12804 -> 0 bytes release/src/router/openssl/crypto/evp/evp_err.o | Bin 996 -> 0 bytes release/src/router/openssl/crypto/evp/evp_fips.o | Bin 784 -> 0 bytes release/src/router/openssl/crypto/evp/evp_key.o | Bin 4180 -> 0 bytes release/src/router/openssl/crypto/evp/evp_lib.o | Bin 7972 -> 0 bytes release/src/router/openssl/crypto/evp/evp_pbe.o | Bin 5888 -> 0 bytes release/src/router/openssl/crypto/evp/evp_pkey.o | Bin 5996 -> 0 bytes release/src/router/openssl/crypto/evp/m_dss.o | Bin 2152 -> 0 bytes release/src/router/openssl/crypto/evp/m_dss1.o | Bin 2156 -> 0 bytes release/src/router/openssl/crypto/evp/m_ecdsa.o | Bin 2100 -> 0 bytes release/src/router/openssl/crypto/evp/m_md2.o | Bin 781 -> 0 bytes release/src/router/openssl/crypto/evp/m_md4.o | Bin 2152 -> 0 bytes release/src/router/openssl/crypto/evp/m_md5.o | Bin 2152 -> 0 bytes release/src/router/openssl/crypto/evp/m_mdc2.o | Bin 782 -> 0 bytes release/src/router/openssl/crypto/evp/m_null.o | Bin 1760 -> 0 bytes release/src/router/openssl/crypto/evp/m_ripemd.o | Bin 784 -> 0 bytes release/src/router/openssl/crypto/evp/m_sha.o | Bin 781 -> 0 bytes release/src/router/openssl/crypto/evp/m_sha1.o | Bin 6244 -> 0 bytes release/src/router/openssl/crypto/evp/m_sigver.o | Bin 3956 -> 0 bytes release/src/router/openssl/crypto/evp/m_wp.o | Bin 2128 -> 0 bytes release/src/router/openssl/crypto/evp/names.o | Bin 4880 -> 0 bytes release/src/router/openssl/crypto/evp/p5_crpt.o | Bin 3348 -> 0 bytes release/src/router/openssl/crypto/evp/p5_crpt2.o | Bin 5256 -> 0 bytes release/src/router/openssl/crypto/evp/p_dec.o | Bin 1280 -> 0 bytes release/src/router/openssl/crypto/evp/p_enc.o | Bin 1276 -> 0 bytes release/src/router/openssl/crypto/evp/p_lib.o | Bin 10492 -> 0 bytes release/src/router/openssl/crypto/evp/p_open.o | Bin 2396 -> 0 bytes release/src/router/openssl/crypto/evp/p_seal.o | Bin 2204 -> 0 bytes release/src/router/openssl/crypto/evp/p_sign.o | Bin 2092 -> 0 bytes release/src/router/openssl/crypto/evp/p_verify.o | Bin 2048 -> 0 bytes release/src/router/openssl/crypto/evp/pmeth_fn.o | Bin 7908 -> 0 bytes release/src/router/openssl/crypto/evp/pmeth_gn.o | Bin 4380 -> 0 bytes release/src/router/openssl/crypto/evp/pmeth_lib.o | Bin 12132 -> 0 bytes release/src/router/openssl/crypto/ex_data.o | Bin 12688 -> 0 bytes release/src/router/openssl/crypto/fips_ers.o | Bin 784 -> 0 bytes release/src/router/openssl/crypto/hmac/hm_ameth.o | Bin 3008 -> 0 bytes release/src/router/openssl/crypto/hmac/hm_pmeth.o | Bin 5512 -> 0 bytes release/src/router/openssl/crypto/hmac/hmac.o | Bin 5624 -> 0 bytes release/src/router/openssl/crypto/idea/i_cbc.o | Bin 5352 -> 0 bytes release/src/router/openssl/crypto/idea/i_cfb64.o | Bin 1756 -> 0 bytes release/src/router/openssl/crypto/idea/i_ecb.o | Bin 1816 -> 0 bytes release/src/router/openssl/crypto/idea/i_ofb64.o | Bin 1792 -> 0 bytes release/src/router/openssl/crypto/idea/i_skey.o | Bin 2176 -> 0 bytes release/src/router/openssl/crypto/lhash/lh_stats.o | Bin 5516 -> 0 bytes release/src/router/openssl/crypto/lhash/lhash.o | Bin 5836 -> 0 bytes release/src/router/openssl/crypto/md4/md4_dgst.o | Bin 5644 -> 0 bytes release/src/router/openssl/crypto/md4/md4_one.o | Bin 1484 -> 0 bytes release/src/router/openssl/crypto/md5/md5_dgst.o | Bin 6928 -> 0 bytes release/src/router/openssl/crypto/md5/md5_one.o | Bin 1484 -> 0 bytes release/src/router/openssl/crypto/mem.o | Bin 13012 -> 0 bytes release/src/router/openssl/crypto/mem_clr.o | Bin 1348 -> 0 bytes release/src/router/openssl/crypto/mem_dbg.o | Bin 13636 -> 0 bytes release/src/router/openssl/crypto/modes/cbc128.o | Bin 1732 -> 0 bytes release/src/router/openssl/crypto/modes/ccm128.o | Bin 6960 -> 0 bytes release/src/router/openssl/crypto/modes/cfb128.o | Bin 2980 -> 0 bytes release/src/router/openssl/crypto/modes/ctr128.o | Bin 2372 -> 0 bytes release/src/router/openssl/crypto/modes/cts128.o | Bin 5728 -> 0 bytes release/src/router/openssl/crypto/modes/gcm128.o | Bin 10088 -> 0 bytes release/src/router/openssl/crypto/modes/ofb128.o | Bin 1196 -> 0 bytes release/src/router/openssl/crypto/modes/xts128.o | Bin 2272 -> 0 bytes release/src/router/openssl/crypto/o_dir.o | Bin 2076 -> 0 bytes release/src/router/openssl/crypto/o_fips.o | Bin 1504 -> 0 bytes release/src/router/openssl/crypto/o_init.o | Bin 1220 -> 0 bytes release/src/router/openssl/crypto/o_str.o | Bin 1604 -> 0 bytes release/src/router/openssl/crypto/o_time.o | Bin 2280 -> 0 bytes .../src/router/openssl/crypto/objects/o_names.o | Bin 8484 -> 0 bytes .../src/router/openssl/crypto/objects/obj_dat.o | Bin 96632 -> 0 bytes .../src/router/openssl/crypto/objects/obj_err.o | Bin 996 -> 0 bytes .../src/router/openssl/crypto/objects/obj_lib.o | Bin 2352 -> 0 bytes .../src/router/openssl/crypto/objects/obj_xref.o | Bin 5320 -> 0 bytes release/src/router/openssl/crypto/ocsp/ocsp_asn.o | Bin 24960 -> 0 bytes release/src/router/openssl/crypto/ocsp/ocsp_cl.o | Bin 7260 -> 0 bytes release/src/router/openssl/crypto/ocsp/ocsp_err.o | Bin 1000 -> 0 bytes release/src/router/openssl/crypto/ocsp/ocsp_ext.o | Bin 16172 -> 0 bytes release/src/router/openssl/crypto/ocsp/ocsp_ht.o | Bin 6304 -> 0 bytes release/src/router/openssl/crypto/ocsp/ocsp_lib.o | Bin 5228 -> 0 bytes release/src/router/openssl/crypto/ocsp/ocsp_prn.o | Bin 9188 -> 0 bytes release/src/router/openssl/crypto/ocsp/ocsp_srv.o | Bin 5816 -> 0 bytes release/src/router/openssl/crypto/ocsp/ocsp_vfy.o | Bin 6424 -> 0 bytes release/src/router/openssl/crypto/pem/pem_all.o | Bin 20244 -> 0 bytes release/src/router/openssl/crypto/pem/pem_err.o | Bin 996 -> 0 bytes release/src/router/openssl/crypto/pem/pem_info.o | Bin 5844 -> 0 bytes release/src/router/openssl/crypto/pem/pem_lib.o | Bin 17188 -> 0 bytes release/src/router/openssl/crypto/pem/pem_oth.o | Bin 1396 -> 0 bytes release/src/router/openssl/crypto/pem/pem_pk8.o | Bin 9692 -> 0 bytes release/src/router/openssl/crypto/pem/pem_pkey.o | Bin 5852 -> 0 bytes release/src/router/openssl/crypto/pem/pem_seal.o | Bin 3896 -> 0 bytes release/src/router/openssl/crypto/pem/pem_sign.o | Bin 2228 -> 0 bytes release/src/router/openssl/crypto/pem/pem_x509.o | Bin 2452 -> 0 bytes release/src/router/openssl/crypto/pem/pem_xaux.o | Bin 4012 -> 0 bytes release/src/router/openssl/crypto/pem/pvkfmt.o | Bin 15500 -> 0 bytes release/src/router/openssl/crypto/pkcs12/p12_add.o | Bin 6224 -> 0 bytes release/src/router/openssl/crypto/pkcs12/p12_asn.o | Bin 9924 -> 0 bytes .../src/router/openssl/crypto/pkcs12/p12_attr.o | Bin 3380 -> 0 bytes .../src/router/openssl/crypto/pkcs12/p12_crpt.o | Bin 2308 -> 0 bytes release/src/router/openssl/crypto/pkcs12/p12_crt.o | Bin 6172 -> 0 bytes .../src/router/openssl/crypto/pkcs12/p12_decr.o | Bin 3524 -> 0 bytes .../src/router/openssl/crypto/pkcs12/p12_init.o | Bin 1584 -> 0 bytes release/src/router/openssl/crypto/pkcs12/p12_key.o | Bin 4168 -> 0 bytes .../src/router/openssl/crypto/pkcs12/p12_kiss.o | Bin 4464 -> 0 bytes .../src/router/openssl/crypto/pkcs12/p12_mutl.o | Bin 4448 -> 0 bytes .../src/router/openssl/crypto/pkcs12/p12_npas.o | Bin 3984 -> 0 bytes release/src/router/openssl/crypto/pkcs12/p12_p8d.o | Bin 1240 -> 0 bytes release/src/router/openssl/crypto/pkcs12/p12_p8e.o | Bin 1836 -> 0 bytes release/src/router/openssl/crypto/pkcs12/p12_utl.o | Bin 4592 -> 0 bytes release/src/router/openssl/crypto/pkcs12/pk12err.o | Bin 1004 -> 0 bytes release/src/router/openssl/crypto/pkcs7/bio_pk7.o | Bin 1152 -> 0 bytes release/src/router/openssl/crypto/pkcs7/pk7_asn1.o | Bin 21864 -> 0 bytes release/src/router/openssl/crypto/pkcs7/pk7_attr.o | Bin 4148 -> 0 bytes release/src/router/openssl/crypto/pkcs7/pk7_doit.o | Bin 21588 -> 0 bytes release/src/router/openssl/crypto/pkcs7/pk7_lib.o | Bin 12936 -> 0 bytes release/src/router/openssl/crypto/pkcs7/pk7_mime.o | Bin 2444 -> 0 bytes .../src/router/openssl/crypto/pkcs7/pk7_smime.o | Bin 10912 -> 0 bytes release/src/router/openssl/crypto/pkcs7/pkcs7err.o | Bin 1000 -> 0 bytes release/src/router/openssl/crypto/pqueue/pqueue.o | Bin 4332 -> 0 bytes release/src/router/openssl/crypto/rand/md_rand.o | Bin 10004 -> 0 bytes release/src/router/openssl/crypto/rand/rand_egd.o | Bin 2876 -> 0 bytes release/src/router/openssl/crypto/rand/rand_err.o | Bin 1000 -> 0 bytes release/src/router/openssl/crypto/rand/rand_lib.o | Bin 4436 -> 0 bytes release/src/router/openssl/crypto/rand/rand_nw.o | Bin 783 -> 0 bytes release/src/router/openssl/crypto/rand/rand_os2.o | Bin 784 -> 0 bytes release/src/router/openssl/crypto/rand/rand_unix.o | Bin 2932 -> 0 bytes release/src/router/openssl/crypto/rand/rand_win.o | Bin 784 -> 0 bytes release/src/router/openssl/crypto/rand/randfile.o | Bin 3488 -> 0 bytes release/src/router/openssl/crypto/rc2/rc2_cbc.o | Bin 3952 -> 0 bytes release/src/router/openssl/crypto/rc2/rc2_ecb.o | Bin 1516 -> 0 bytes release/src/router/openssl/crypto/rc2/rc2_skey.o | Bin 1788 -> 0 bytes release/src/router/openssl/crypto/rc2/rc2cfb64.o | Bin 1756 -> 0 bytes release/src/router/openssl/crypto/rc2/rc2ofb64.o | Bin 1792 -> 0 bytes release/src/router/openssl/crypto/rc4/rc4_enc.o | Bin 3452 -> 0 bytes release/src/router/openssl/crypto/rc4/rc4_skey.o | Bin 1796 -> 0 bytes release/src/router/openssl/crypto/rc4/rc4_utl.o | Bin 1124 -> 0 bytes release/src/router/openssl/crypto/rc5/rc5_ecb.o | Bin 1528 -> 0 bytes release/src/router/openssl/crypto/rc5/rc5_enc.o | Bin 5676 -> 0 bytes release/src/router/openssl/crypto/rc5/rc5_skey.o | Bin 2056 -> 0 bytes release/src/router/openssl/crypto/rc5/rc5cfb64.o | Bin 1768 -> 0 bytes release/src/router/openssl/crypto/rc5/rc5ofb64.o | Bin 1804 -> 0 bytes release/src/router/openssl/crypto/rsa/rsa_ameth.o | Bin 15092 -> 0 bytes release/src/router/openssl/crypto/rsa/rsa_asn1.o | Bin 6372 -> 0 bytes release/src/router/openssl/crypto/rsa/rsa_chk.o | Bin 3168 -> 0 bytes release/src/router/openssl/crypto/rsa/rsa_crpt.o | Bin 4544 -> 0 bytes release/src/router/openssl/crypto/rsa/rsa_depr.o | Bin 1604 -> 0 bytes release/src/router/openssl/crypto/rsa/rsa_eay.o | Bin 13772 -> 0 bytes release/src/router/openssl/crypto/rsa/rsa_err.o | Bin 996 -> 0 bytes release/src/router/openssl/crypto/rsa/rsa_gen.o | Bin 3700 -> 0 bytes release/src/router/openssl/crypto/rsa/rsa_lib.o | Bin 6788 -> 0 bytes release/src/router/openssl/crypto/rsa/rsa_none.o | Bin 1748 -> 0 bytes release/src/router/openssl/crypto/rsa/rsa_null.o | Bin 3032 -> 0 bytes release/src/router/openssl/crypto/rsa/rsa_oaep.o | Bin 4612 -> 0 bytes release/src/router/openssl/crypto/rsa/rsa_pk1.o | Bin 3148 -> 0 bytes release/src/router/openssl/crypto/rsa/rsa_pmeth.o | Bin 10724 -> 0 bytes release/src/router/openssl/crypto/rsa/rsa_prn.o | Bin 2012 -> 0 bytes release/src/router/openssl/crypto/rsa/rsa_pss.o | Bin 4804 -> 0 bytes release/src/router/openssl/crypto/rsa/rsa_saos.o | Bin 2820 -> 0 bytes release/src/router/openssl/crypto/rsa/rsa_sign.o | Bin 4696 -> 0 bytes release/src/router/openssl/crypto/rsa/rsa_ssl.o | Bin 2152 -> 0 bytes release/src/router/openssl/crypto/rsa/rsa_x931.o | Bin 2188 -> 0 bytes release/src/router/openssl/crypto/sha/sha1-mips.o | Bin 7424 -> 0 bytes release/src/router/openssl/crypto/sha/sha1_one.o | Bin 1488 -> 0 bytes release/src/router/openssl/crypto/sha/sha1dgst.o | Bin 3008 -> 0 bytes .../src/router/openssl/crypto/sha/sha256-mips.o | Bin 8540 -> 0 bytes release/src/router/openssl/crypto/sha/sha256.o | Bin 5068 -> 0 bytes release/src/router/openssl/crypto/sha/sha512.o | Bin 9308 -> 0 bytes release/src/router/openssl/crypto/sha/sha_dgst.o | Bin 784 -> 0 bytes release/src/router/openssl/crypto/sha/sha_one.o | Bin 783 -> 0 bytes release/src/router/openssl/crypto/srp/srp_lib.o | Bin 15708 -> 0 bytes release/src/router/openssl/crypto/srp/srp_vfy.o | Bin 11292 -> 0 bytes release/src/router/openssl/crypto/stack/stack.o | Bin 7548 -> 0 bytes release/src/router/openssl/crypto/txt_db/txt_db.o | Bin 6648 -> 0 bytes release/src/router/openssl/crypto/ui/ui_compat.o | Bin 1448 -> 0 bytes release/src/router/openssl/crypto/ui/ui_err.o | Bin 996 -> 0 bytes release/src/router/openssl/crypto/ui/ui_lib.o | Bin 19808 -> 0 bytes release/src/router/openssl/crypto/ui/ui_openssl.o | Bin 7912 -> 0 bytes release/src/router/openssl/crypto/ui/ui_util.o | Bin 1960 -> 0 bytes release/src/router/openssl/crypto/uid.o | Bin 1316 -> 0 bytes .../src/router/openssl/crypto/whrlpool/wp_block.o | Bin 5380 -> 0 bytes .../src/router/openssl/crypto/whrlpool/wp_dgst.o | Bin 3508 -> 0 bytes release/src/router/openssl/crypto/x509/by_dir.o | Bin 7232 -> 0 bytes release/src/router/openssl/crypto/x509/by_file.o | Bin 5320 -> 0 bytes release/src/router/openssl/crypto/x509/x509_att.o | Bin 9752 -> 0 bytes release/src/router/openssl/crypto/x509/x509_cmp.o | Bin 8712 -> 0 bytes release/src/router/openssl/crypto/x509/x509_d2.o | Bin 2068 -> 0 bytes release/src/router/openssl/crypto/x509/x509_def.o | Bin 2784 -> 0 bytes release/src/router/openssl/crypto/x509/x509_err.o | Bin 1000 -> 0 bytes release/src/router/openssl/crypto/x509/x509_ext.o | Bin 8188 -> 0 bytes release/src/router/openssl/crypto/x509/x509_lu.o | Bin 15828 -> 0 bytes release/src/router/openssl/crypto/x509/x509_obj.o | Bin 2912 -> 0 bytes release/src/router/openssl/crypto/x509/x509_r2x.o | Bin 2108 -> 0 bytes release/src/router/openssl/crypto/x509/x509_req.o | Bin 8772 -> 0 bytes release/src/router/openssl/crypto/x509/x509_set.o | Bin 3412 -> 0 bytes release/src/router/openssl/crypto/x509/x509_trs.o | Bin 7828 -> 0 bytes release/src/router/openssl/crypto/x509/x509_txt.o | Bin 6908 -> 0 bytes release/src/router/openssl/crypto/x509/x509_v3.o | Bin 6684 -> 0 bytes release/src/router/openssl/crypto/x509/x509_vfy.o | Bin 29092 -> 0 bytes release/src/router/openssl/crypto/x509/x509_vpm.o | Bin 8920 -> 0 bytes release/src/router/openssl/crypto/x509/x509cset.o | Bin 3676 -> 0 bytes release/src/router/openssl/crypto/x509/x509name.o | Bin 9332 -> 0 bytes release/src/router/openssl/crypto/x509/x509rset.o | Bin 1776 -> 0 bytes release/src/router/openssl/crypto/x509/x509spki.o | Bin 3012 -> 0 bytes release/src/router/openssl/crypto/x509/x509type.o | Bin 1660 -> 0 bytes release/src/router/openssl/crypto/x509/x_all.o | Bin 21984 -> 0 bytes .../src/router/openssl/crypto/x509v3/pcy_cache.o | Bin 4364 -> 0 bytes .../src/router/openssl/crypto/x509v3/pcy_data.o | Bin 2160 -> 0 bytes release/src/router/openssl/crypto/x509v3/pcy_lib.o | Bin 3036 -> 0 bytes release/src/router/openssl/crypto/x509v3/pcy_map.o | Bin 1924 -> 0 bytes .../src/router/openssl/crypto/x509v3/pcy_node.o | Bin 3848 -> 0 bytes .../src/router/openssl/crypto/x509v3/pcy_tree.o | Bin 7404 -> 0 bytes release/src/router/openssl/crypto/x509v3/v3_addr.o | Bin 783 -> 0 bytes release/src/router/openssl/crypto/x509v3/v3_akey.o | Bin 4080 -> 0 bytes .../src/router/openssl/crypto/x509v3/v3_akeya.o | Bin 2724 -> 0 bytes release/src/router/openssl/crypto/x509v3/v3_alt.o | Bin 13740 -> 0 bytes release/src/router/openssl/crypto/x509v3/v3_asid.o | Bin 783 -> 0 bytes .../src/router/openssl/crypto/x509v3/v3_bcons.o | Bin 4588 -> 0 bytes .../src/router/openssl/crypto/x509v3/v3_bitst.o | Bin 4392 -> 0 bytes release/src/router/openssl/crypto/x509v3/v3_conf.o | Bin 14028 -> 0 bytes .../src/router/openssl/crypto/x509v3/v3_cpols.o | Bin 17796 -> 0 bytes release/src/router/openssl/crypto/x509v3/v3_crld.o | Bin 20056 -> 0 bytes release/src/router/openssl/crypto/x509v3/v3_enum.o | Bin 2484 -> 0 bytes .../src/router/openssl/crypto/x509v3/v3_extku.o | Bin 4664 -> 0 bytes release/src/router/openssl/crypto/x509v3/v3_genn.o | Bin 10816 -> 0 bytes release/src/router/openssl/crypto/x509v3/v3_ia5.o | Bin 2912 -> 0 bytes release/src/router/openssl/crypto/x509v3/v3_info.o | Bin 7616 -> 0 bytes release/src/router/openssl/crypto/x509v3/v3_int.o | Bin 1880 -> 0 bytes release/src/router/openssl/crypto/x509v3/v3_lib.o | Bin 8196 -> 0 bytes .../src/router/openssl/crypto/x509v3/v3_ncons.o | Bin 9600 -> 0 bytes release/src/router/openssl/crypto/x509v3/v3_ocsp.o | Bin 8012 -> 0 bytes release/src/router/openssl/crypto/x509v3/v3_pci.o | Bin 7084 -> 0 bytes release/src/router/openssl/crypto/x509v3/v3_pcia.o | Bin 4332 -> 0 bytes .../src/router/openssl/crypto/x509v3/v3_pcons.o | Bin 4108 -> 0 bytes release/src/router/openssl/crypto/x509v3/v3_pku.o | Bin 3732 -> 0 bytes .../src/router/openssl/crypto/x509v3/v3_pmaps.o | Bin 4480 -> 0 bytes release/src/router/openssl/crypto/x509v3/v3_prn.o | Bin 5592 -> 0 bytes release/src/router/openssl/crypto/x509v3/v3_purp.o | Bin 16756 -> 0 bytes release/src/router/openssl/crypto/x509v3/v3_skey.o | Bin 2948 -> 0 bytes .../src/router/openssl/crypto/x509v3/v3_sxnet.o | Bin 8896 -> 0 bytes release/src/router/openssl/crypto/x509v3/v3_utl.o | Bin 17932 -> 0 bytes release/src/router/openssl/crypto/x509v3/v3err.o | Bin 1004 -> 0 bytes release/src/router/openssl/libcrypto.a | Bin 2838846 -> 0 bytes release/src/router/openssl/libcrypto.so | 1 - release/src/router/openssl/libssl.a | Bin 549590 -> 0 bytes release/src/router/openssl/libssl.so | 1 - release/src/router/openssl/ssl/bio_ssl.o | Bin 10136 -> 0 bytes release/src/router/openssl/ssl/d1_both.o | Bin 21172 -> 0 bytes release/src/router/openssl/ssl/d1_clnt.o | Bin 13216 -> 0 bytes release/src/router/openssl/ssl/d1_enc.o | Bin 2720 -> 0 bytes release/src/router/openssl/ssl/d1_lib.o | Bin 9432 -> 0 bytes release/src/router/openssl/ssl/d1_meth.o | Bin 2768 -> 0 bytes release/src/router/openssl/ssl/d1_pkt.o | Bin 13996 -> 0 bytes release/src/router/openssl/ssl/d1_srtp.o | Bin 5720 -> 0 bytes release/src/router/openssl/ssl/d1_srvr.o | Bin 16984 -> 0 bytes release/src/router/openssl/ssl/kssl.o | Bin 780 -> 0 bytes release/src/router/openssl/ssl/s23_clnt.o | Bin 8356 -> 0 bytes release/src/router/openssl/ssl/s23_lib.o | Bin 4092 -> 0 bytes release/src/router/openssl/ssl/s23_meth.o | Bin 2968 -> 0 bytes release/src/router/openssl/ssl/s23_pkt.o | Bin 1700 -> 0 bytes release/src/router/openssl/ssl/s23_srvr.o | Bin 7532 -> 0 bytes release/src/router/openssl/ssl/s2_clnt.o | Bin 12932 -> 0 bytes release/src/router/openssl/ssl/s2_enc.o | Bin 3692 -> 0 bytes release/src/router/openssl/ssl/s2_lib.o | Bin 7768 -> 0 bytes release/src/router/openssl/ssl/s2_meth.o | Bin 2532 -> 0 bytes release/src/router/openssl/ssl/s2_pkt.o | Bin 7400 -> 0 bytes release/src/router/openssl/ssl/s2_srvr.o | Bin 12864 -> 0 bytes release/src/router/openssl/ssl/s3_both.o | Bin 11720 -> 0 bytes release/src/router/openssl/ssl/s3_clnt.o | Bin 30916 -> 0 bytes release/src/router/openssl/ssl/s3_enc.o | Bin 14224 -> 0 bytes release/src/router/openssl/ssl/s3_lib.o | Bin 20488 -> 0 bytes release/src/router/openssl/ssl/s3_meth.o | Bin 2740 -> 0 bytes release/src/router/openssl/ssl/s3_pkt.o | Bin 12948 -> 0 bytes release/src/router/openssl/ssl/s3_srvr.o | Bin 30052 -> 0 bytes release/src/router/openssl/ssl/ssl_algs.o | Bin 3792 -> 0 bytes release/src/router/openssl/ssl/ssl_asn1.o | Bin 10128 -> 0 bytes release/src/router/openssl/ssl/ssl_cert.o | Bin 14212 -> 0 bytes release/src/router/openssl/ssl/ssl_ciph.o | Bin 27064 -> 0 bytes release/src/router/openssl/ssl/ssl_err.o | Bin 996 -> 0 bytes release/src/router/openssl/ssl/ssl_err2.o | Bin 1000 -> 0 bytes release/src/router/openssl/ssl/ssl_lib.o | Bin 55904 -> 0 bytes release/src/router/openssl/ssl/ssl_rsa.o | Bin 14744 -> 0 bytes release/src/router/openssl/ssl/ssl_sess.o | Bin 19136 -> 0 bytes release/src/router/openssl/ssl/ssl_stat.o | Bin 25408 -> 0 bytes release/src/router/openssl/ssl/ssl_txt.o | Bin 5132 -> 0 bytes release/src/router/openssl/ssl/t1_clnt.o | Bin 4428 -> 0 bytes release/src/router/openssl/ssl/t1_enc.o | Bin 15948 -> 0 bytes release/src/router/openssl/ssl/t1_lib.o | Bin 20396 -> 0 bytes release/src/router/openssl/ssl/t1_meth.o | Bin 4320 -> 0 bytes release/src/router/openssl/ssl/t1_reneg.o | Bin 3500 -> 0 bytes release/src/router/openssl/ssl/t1_srvr.o | Bin 4424 -> 0 bytes release/src/router/openssl/ssl/tls_srp.o | Bin 11016 -> 0 bytes release/src/router/openvpn/Makefile | 32 +- release/src/router/pcre/Makefile | 20 +- release/src/router/pcre/config.log | 1570 -- release/src/router/pcre/config.status | 2397 -- release/src/router/pptpd/Makefile | 16 +- release/src/router/rp-pppoe/src/Makefile | 2 +- release/src/router/rp-pppoe/src/config.log | 2294 -- release/src/router/rp-pppoe/src/config.status | 1072 - release/src/router/shared/tomato_version.h | 2 +- release/src/router/snmp/config.status | 1050 - release/src/router/sqlite/config.status | 1056 - release/src/router/target.info | 21 + release/src/router/zebra/Makefile | 12 +- release/src/router/zebra/bgpd/Makefile | 12 +- release/src/router/zebra/config.status | 1308 -- release/src/router/zebra/doc/Makefile | 14 +- release/src/router/zebra/lib/Makefile | 12 +- release/src/router/zebra/ospf6d/Makefile | 12 +- release/src/router/zebra/ospfd/Makefile | 12 +- release/src/router/zebra/ripd/Makefile | 12 +- release/src/router/zebra/ripngd/Makefile | 12 +- release/src/router/zebra/vtysh/Makefile | 12 +- release/src/router/zebra/zebra/Makefile | 12 +- release/src/router/zlib/Makefile | 5 - release/src/router/zlib/zconf.h | 428 - 1253 files changed, 132970 insertions(+), 53477 deletions(-) mode change 100644 => 100755 release/src-rt/bcm57xx/linux/b57um.c mode change 100644 => 100755 release/src-rt/bcm57xx/linux/bcm5700.4 create mode 100755 release/src-rt/bcmcrypto/Makefile create mode 100755 release/src-rt/bcmcrypto/aes.c create mode 100755 release/src-rt/bcmcrypto/aes_vectors.h create mode 100755 release/src-rt/bcmcrypto/aeskeywrap.c create mode 100755 release/src-rt/bcmcrypto/aeskeywrap_vectors.h copy release/src-rt/bcmcrypto/{prebuilt/.dummy => bcmccx.c} (100%) mode change 100644 => 100755 create mode 100755 release/src-rt/bcmcrypto/bn.c create mode 100755 release/src-rt/bcmcrypto/bn_lcl.h rename release/src-rt/{et/linux/.dummy => bcmcrypto/ccx.c} (100%) mode change 100644 => 100755 create mode 100755 release/src-rt/bcmcrypto/ccx.ref create mode 100755 release/src-rt/bcmcrypto/des.c create mode 100755 release/src-rt/bcmcrypto/dh.c rename release/{src/router/dropbear/_MTN/log => src-rt/bcmcrypto/examccx.h} (100%) mode change 100644 => 100755 copy release/src-rt/bcmcrypto/{prebuilt/.dummy => examppkt.h} (100%) mode change 100644 => 100755 create mode 100755 release/src-rt/bcmcrypto/hmac.c create mode 100755 release/src-rt/bcmcrypto/hmac_sha256.c create mode 100755 release/src-rt/bcmcrypto/md32_common.h create mode 100755 release/src-rt/bcmcrypto/md4.c create mode 100755 release/src-rt/bcmcrypto/md5.c create mode 100755 release/src-rt/bcmcrypto/passhash.c create mode 100755 release/src-rt/bcmcrypto/passhash_vectors.h delete mode 100644 release/src-rt/bcmcrypto/prebuilt/aes.o delete mode 100644 release/src-rt/bcmcrypto/prebuilt/aeskeywrap.o delete mode 100644 release/src-rt/bcmcrypto/prebuilt/bn.o delete mode 100644 release/src-rt/bcmcrypto/prebuilt/dh.o delete mode 100644 release/src-rt/bcmcrypto/prebuilt/hmac.o delete mode 100644 release/src-rt/bcmcrypto/prebuilt/hmac_sha256.o delete mode 100644 release/src-rt/bcmcrypto/prebuilt/md5.o delete mode 100644 release/src-rt/bcmcrypto/prebuilt/passhash.o delete mode 100644 release/src-rt/bcmcrypto/prebuilt/prf.o delete mode 100644 release/src-rt/bcmcrypto/prebuilt/random.o delete mode 100644 release/src-rt/bcmcrypto/prebuilt/rc4.o delete mode 100644 release/src-rt/bcmcrypto/prebuilt/rijndael-alg-fst.o delete mode 100644 release/src-rt/bcmcrypto/prebuilt/sha1.o delete mode 100644 release/src-rt/bcmcrypto/prebuilt/sha256.o create mode 100755 release/src-rt/bcmcrypto/prf.c create mode 100755 release/src-rt/bcmcrypto/prf_vectors.h create mode 100755 release/src-rt/bcmcrypto/random.c create mode 100755 release/src-rt/bcmcrypto/rc4.c create mode 100755 release/src-rt/bcmcrypto/rc4_vectors.h create mode 100755 release/src-rt/bcmcrypto/rijndael-alg-fst.c create mode 100755 release/src-rt/bcmcrypto/sha1.c create mode 100755 release/src-rt/bcmcrypto/sha256.c create mode 100755 release/src-rt/bcmcrypto/sms4.c create mode 100755 release/src-rt/bcmcrypto/tkhash.c create mode 100755 release/src-rt/bcmcrypto/tkhash_vectors.h create mode 100755 release/src-rt/bcmcrypto/tkmic.c create mode 100755 release/src-rt/bcmcrypto/wep.c mode change 100644 => 100755 release/src-rt/emf/emf/emfc.c mode change 100644 => 100755 release/src-rt/emf/emfconf/Makefile create mode 100755 release/src-rt/emf/emfconf/emf mode change 100644 => 100755 release/src-rt/emf/emfconf/emfu.c mode change 100644 => 100755 release/src-rt/emf/emfconf/emfu.h create mode 100644 release/src-rt/emf/emfconf/emfu.o mode change 100644 => 100755 release/src-rt/emf/emfconf/emfu_linux.c mode change 100644 => 100755 release/src-rt/emf/emfconf/emfu_linux.h create mode 100644 release/src-rt/emf/emfconf/emfu_linux.o mode change 100644 => 100755 release/src-rt/emf/igs/igsc.c mode change 100644 => 100755 release/src-rt/emf/igsconf/Makefile create mode 100755 release/src-rt/emf/igsconf/igs mode change 100644 => 100755 release/src-rt/emf/igsconf/igsu.c mode change 100644 => 100755 release/src-rt/emf/igsconf/igsu.h create mode 100644 release/src-rt/emf/igsconf/igsu.o mode change 100644 => 100755 release/src-rt/emf/igsconf/igsu_linux.c mode change 100644 => 100755 release/src-rt/emf/igsconf/igsu_linux.h create mode 100644 release/src-rt/emf/igsconf/igsu_linux.o create mode 100644 release/src-rt/et/linux/et.c create mode 100755 release/src-rt/include/amemc_core.h delete mode 100644 release/src-rt/include/bcm20xx.h mode change 100644 => 100755 release/src-rt/include/bcmdefs.h mode change 100644 => 100755 release/src-rt/include/bcmdevs.h mode change 100644 => 100755 release/src-rt/include/bcmenetphy.h mode change 100644 => 100755 release/src-rt/include/bcmnvram.h mode change 100644 => 100755 release/src-rt/include/bcmparams.h mode change 100644 => 100755 release/src-rt/include/bcmsrom_fmt.h mode change 100644 => 100755 release/src-rt/include/bcmsrom_tbl.h mode change 100644 => 100755 release/src-rt/include/bcmutils.h delete mode 100644 release/src-rt/include/code_pattern.h delete mode 100644 release/src-rt/include/cyutils.h mode change 100644 => 100755 release/src-rt/include/epivers.h mode change 100644 => 100755 release/src-rt/include/etioctl.h mode change 100644 => 100755 release/src-rt/include/hndpci.h create mode 100755 release/src-rt/include/libsmbclient.h mode change 100644 => 100755 release/src-rt/include/linux_osl.h mode change 100644 => 100755 release/src-rt/include/proto/bcmip.h mode change 100644 => 100755 release/src-rt/include/sbchipc.h mode change 100644 => 100755 release/src-rt/include/siutils.h mode change 100644 => 100755 release/src-rt/include/typedefs.h mode change 100644 => 100755 release/src-rt/include/wlioctl.h create mode 100644 release/src-rt/linux/linux-2.6/.config create mode 120000 release/src-rt/linux/linux-2.6/config_current create mode 100644 release/src-rt/linux/linux-2.6/config_nc create mode 100644 release/src-rt/linux/linux-2.6/drivers/mtd/devices/bcm_nflash.c delete mode 100755 release/src-rt/linux/linux-2.6/drivers/net/wl/wlconf.h create mode 100644 release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ipt_account.h delete mode 100644 release/src-rt/linux/linux-2.6/include/linux/version.h create mode 100644 release/src-rt/linux/linux-2.6/net/ipv4/netfilter/dnsmq.c create mode 100644 release/src-rt/linux/linux-2.6/net/ipv4/netfilter/ipt_account.c create mode 100644 release/src-rt/linux/linux-2.6/save-config create mode 120000 release/src-rt/linux/linux-2.6/scripts/squashfs/linux create mode 100644 release/src-rt/shared/.aiutils.o.cmd create mode 100644 release/src-rt/shared/.bcmotp.o.cmd create mode 100644 release/src-rt/shared/.bcmrobo.o.cmd create mode 100644 release/src-rt/shared/.bcmsrom.o.cmd create mode 100644 release/src-rt/shared/.bcmutils.o.cmd create mode 100644 release/src-rt/shared/.hndchipc.o.cmd create mode 100644 release/src-rt/shared/.hnddma.o.cmd create mode 100644 release/src-rt/shared/.hndmips.o.cmd create mode 100644 release/src-rt/shared/.hndpci.o.cmd create mode 100644 release/src-rt/shared/.hndpmu.o.cmd create mode 100644 release/src-rt/shared/.linux_gpio.o.cmd create mode 100644 release/src-rt/shared/.linux_osl.o.cmd create mode 100644 release/src-rt/shared/.nicpci.o.cmd create mode 100644 release/src-rt/shared/.sbutils.o.cmd create mode 100644 release/src-rt/shared/.sflash.o.cmd create mode 100644 release/src-rt/shared/.siutils.o.cmd mode change 100644 => 100755 release/src-rt/shared/aisdram.S mode change 100644 => 100755 release/src-rt/shared/aiutils.c create mode 100644 release/src-rt/shared/aiutils.o mode change 100644 => 100755 release/src-rt/shared/bcm_rpc.c mode change 100644 => 100755 release/src-rt/shared/bcmotp.c create mode 100644 release/src-rt/shared/bcmotp.o mode change 100644 => 100755 release/src-rt/shared/bcmrobo.c create mode 100644 release/src-rt/shared/bcmrobo.o create mode 100644 release/src-rt/shared/bcmsrom.o create mode 100644 release/src-rt/shared/bcmutils.o mode change 100644 => 100755 release/src-rt/shared/flashutl.c create mode 100644 release/src-rt/shared/hndchipc.o mode change 100644 => 100755 release/src-rt/shared/hnddma.c create mode 100644 release/src-rt/shared/hnddma.o mode change 100644 => 100755 release/src-rt/shared/hndmips.c create mode 100644 release/src-rt/shared/hndmips.o mode change 100644 => 100755 release/src-rt/shared/hndpci.c create mode 100644 release/src-rt/shared/hndpci.o mode change 100644 => 100755 release/src-rt/shared/hndpmu.c create mode 100644 release/src-rt/shared/hndpmu.o create mode 100644 release/src-rt/shared/linux_gpio.o mode change 100644 => 100755 release/src-rt/shared/linux_osl.c create mode 100644 release/src-rt/shared/linux_osl.o create mode 100644 release/src-rt/shared/nicpci.o create mode 100644 release/src-rt/shared/nvram/.nvram.o.cmd mode change 100644 => 100755 release/src-rt/shared/nvram/nvram.c create mode 100644 release/src-rt/shared/nvram/nvram.o delete mode 100644 release/src-rt/shared/nvram/nvram_ro.c mode change 100644 => 100755 release/src-rt/shared/nvram/nvram_rw.c delete mode 100644 release/src-rt/shared/nvram/nvram_vx.c create mode 100644 release/src-rt/shared/sbutils.o create mode 100644 release/src-rt/shared/sflash.o mode change 100644 => 100755 release/src-rt/shared/siutils.c create mode 100644 release/src-rt/shared/siutils.o mode change 100644 => 100755 release/src-rt/shared/siutils_priv.h copy release/src-rt/{bcmcrypto/prebuilt/.dummy => tomato_profile.mak} (100%) mode change 100644 => 100755 release/src-rt/wl/config/wl.mk create mode 100644 release/src-rt/wl/config/wlconfig_lx_router_high create mode 100644 release/src-rt/wl/config/wlconfig_lx_wl_stadef create mode 100644 release/src-rt/wl/config/wltunable_rte_43236b1_usbap.h create mode 100644 release/src-rt/wl/eapd/dcs_eap.c create mode 100644 release/src-rt/wl/eapd/eapd.c create mode 100644 release/src-rt/wl/eapd/eapd.h create mode 100644 release/src-rt/wl/eapd/eapd_ecos.c create mode 100644 release/src-rt/wl/eapd/eapd_linux.c create mode 100644 release/src-rt/wl/eapd/eapd_vx.c create mode 100755 release/src-rt/wl/eapd/linux/.gitignore create mode 100755 release/src-rt/wl/eapd/linux/Makefile create mode 100644 release/src-rt/wl/eapd/nas_eap.c create mode 100644 release/src-rt/wl/eapd/ses_eap.c create mode 100644 release/src-rt/wl/eapd/wai_eap.c create mode 100644 release/src-rt/wl/eapd/wps_eap.c create mode 100755 release/src-rt/wl/exe/shellproc_linux.c create mode 100755 release/src-rt/wl/exe/wlu.c create mode 100755 release/src-rt/wl/exe/wlu.h create mode 100755 release/src-rt/wl/exe/wlu_client_shared.c create mode 100755 release/src-rt/wl/exe/wlu_client_shared.h create mode 100755 release/src-rt/wl/exe/wlu_cmd.c create mode 100755 release/src-rt/wl/exe/wlu_cmd.h create mode 100755 release/src-rt/wl/exe/wlu_iov.c create mode 100755 release/src-rt/wl/exe/wlu_linux.c create mode 100755 release/src-rt/wl/exe/wlu_pipe.c create mode 100755 release/src-rt/wl/exe/wlu_pipe.h create mode 100755 release/src-rt/wl/exe/wlu_pipe_linux.c create mode 100755 release/src-rt/wl/exe/wlu_remote.h create mode 100755 release/src-rt/wl/exe/wlu_server_linux.c create mode 100755 release/src-rt/wl/exe/wlu_server_shared.c create mode 100755 release/src-rt/wl/exe/wlu_server_shared.h delete mode 100755 release/src-rt/wl/mipsel-uclibc/eapd delete mode 100755 release/src-rt/wl/mipsel-uclibc/nas delete mode 100755 release/src-rt/wl/mipsel-uclibc/wl create mode 100755 release/src-rt/wl/nas/Makefile create mode 100755 release/src-rt/wl/nas/README create mode 100644 release/src-rt/wl/nas/global.h create mode 100644 release/src-rt/wl/nas/mppe.c create mode 100644 release/src-rt/wl/nas/mppe.h create mode 100644 release/src-rt/wl/nas/nas.c create mode 100644 release/src-rt/wl/nas/nas.h create mode 100755 release/src-rt/wl/nas/nas.h.orig create mode 100755 release/src-rt/wl/nas/nas/.gitignore create mode 100755 release/src-rt/wl/nas/nas/Makefile create mode 100644 release/src-rt/wl/nas/nas_bsd.c create mode 100644 release/src-rt/wl/nas/nas_ecos.c create mode 100644 release/src-rt/wl/nas/nas_linux.c create mode 100644 release/src-rt/wl/nas/nas_radius.c create mode 100644 release/src-rt/wl/nas/nas_radius.h create mode 100644 release/src-rt/wl/nas/nas_rte.c create mode 100644 release/src-rt/wl/nas/nas_vx.c create mode 100644 release/src-rt/wl/nas/nas_wksp.c create mode 100644 release/src-rt/wl/nas/nas_wksp.h create mode 100644 release/src-rt/wl/nas/nas_wksp_radius.c create mode 100644 release/src-rt/wl/nas/nas_wksp_radius.h create mode 100644 release/src-rt/wl/nas/nas_wl.c create mode 100644 release/src-rt/wl/nas/radius.h create mode 100644 release/src-rt/wl/nas/unix.c create mode 100644 release/src-rt/wl/nas/wpa.c create mode 100644 release/src-rt/wl/nas/wpa.h create mode 100644 release/src-rt/wl/sys/wlc_channel.c mode change 100644 => 100755 release/src-rt/wlconf/wlconf.c create mode 100755 release/src-rt/wnrtool/ambitCfg.h create mode 100755 release/src-rt/wnrtool/compatible_WNR3500Lv2.txt create mode 100755 release/src-rt/wnrtool/gzip create mode 100644 release/src-rt/wnrtool/loader.lzma create mode 100755 release/src-rt/wnrtool/lzma create mode 100755 release/src-rt/wnrtool/mkchkimg create mode 100755 release/src-rt/wnrtool/packet create mode 100755 release/src-rt/wnrtool/trx create mode 100644 release/src-rt/wnrtool/trx.c delete mode 120000 release/src/linux/linux/include/asm create mode 100644 release/src/lzma/C/Compress/Lzma/LzmaDecode.o create mode 100644 release/src/lzma/CPP/7zip/Compress/LZMA_Alone/7zCrc.o create mode 100644 release/src/lzma/CPP/7zip/Compress/LZMA_Alone/Alloc.o create mode 100644 release/src/lzma/CPP/7zip/Compress/LZMA_Alone/BranchX86.o create mode 100644 release/src/lzma/CPP/7zip/Compress/LZMA_Alone/CRC.o create mode 100644 release/src/lzma/CPP/7zip/Compress/LZMA_Alone/C_FileIO.o create mode 100644 release/src/lzma/CPP/7zip/Compress/LZMA_Alone/CommandLineParser.o create mode 100644 release/src/lzma/CPP/7zip/Compress/LZMA_Alone/FileStreams.o create mode 100644 release/src/lzma/CPP/7zip/Compress/LZMA_Alone/InBuffer.o create mode 100644 release/src/lzma/CPP/7zip/Compress/LZMA_Alone/IntToString.o create mode 100644 release/src/lzma/CPP/7zip/Compress/LZMA_Alone/LZMADecoder.o create mode 100644 release/src/lzma/CPP/7zip/Compress/LZMA_Alone/LZMAEncoder.o create mode 100644 release/src/lzma/CPP/7zip/Compress/LZMA_Alone/LZOutWindow.o create mode 100644 release/src/lzma/CPP/7zip/Compress/LZMA_Alone/LzmaAlone.o create mode 100644 release/src/lzma/CPP/7zip/Compress/LZMA_Alone/LzmaBench.o create mode 100644 release/src/lzma/CPP/7zip/Compress/LZMA_Alone/LzmaBenchCon.o create mode 100644 release/src/lzma/CPP/7zip/Compress/LZMA_Alone/LzmaDecode.o create mode 100644 release/src/lzma/CPP/7zip/Compress/LZMA_Alone/LzmaRam.o create mode 100644 release/src/lzma/CPP/7zip/Compress/LZMA_Alone/LzmaRamDecode.o create mode 100644 release/src/lzma/CPP/7zip/Compress/LZMA_Alone/MatchFinder.o create mode 100644 release/src/lzma/CPP/7zip/Compress/LZMA_Alone/MyString.o create mode 100644 release/src/lzma/CPP/7zip/Compress/LZMA_Alone/MyVector.o create mode 100644 release/src/lzma/CPP/7zip/Compress/LZMA_Alone/OutBuffer.o create mode 100644 release/src/lzma/CPP/7zip/Compress/LZMA_Alone/RangeCoderBit.o create mode 100644 release/src/lzma/CPP/7zip/Compress/LZMA_Alone/StreamUtils.o create mode 100644 release/src/lzma/CPP/7zip/Compress/LZMA_Alone/StringConvert.o create mode 100644 release/src/lzma/CPP/7zip/Compress/LZMA_Alone/StringToInt.o create mode 100644 release/src/lzma/CPP/7zip/Compress/LZMA_Lib/7zCrc.o create mode 100644 release/src/lzma/CPP/7zip/Compress/LZMA_Lib/Alloc.o create mode 100644 release/src/lzma/CPP/7zip/Compress/LZMA_Lib/CRC.o create mode 100644 release/src/lzma/CPP/7zip/Compress/LZMA_Lib/C_FileIO.o create mode 100644 release/src/lzma/CPP/7zip/Compress/LZMA_Lib/CommandLineParser.o create mode 100644 release/src/lzma/CPP/7zip/Compress/LZMA_Lib/FileStreams.o create mode 100644 release/src/lzma/CPP/7zip/Compress/LZMA_Lib/InBuffer.o create mode 100644 release/src/lzma/CPP/7zip/Compress/LZMA_Lib/LZMADecoder.o create mode 100644 release/src/lzma/CPP/7zip/Compress/LZMA_Lib/LZMAEncoder.o create mode 100644 release/src/lzma/CPP/7zip/Compress/LZMA_Lib/LZOutWindow.o create mode 100644 release/src/lzma/CPP/7zip/Compress/LZMA_Lib/MatchFinder.o create mode 100644 release/src/lzma/CPP/7zip/Compress/LZMA_Lib/MyString.o create mode 100644 release/src/lzma/CPP/7zip/Compress/LZMA_Lib/MyVector.o create mode 100644 release/src/lzma/CPP/7zip/Compress/LZMA_Lib/NewHandler.o create mode 100644 release/src/lzma/CPP/7zip/Compress/LZMA_Lib/OutBuffer.o create mode 100644 release/src/lzma/CPP/7zip/Compress/LZMA_Lib/RangeCoderBit.o create mode 100644 release/src/lzma/CPP/7zip/Compress/LZMA_Lib/StreamUtils.o create mode 100644 release/src/lzma/CPP/7zip/Compress/LZMA_Lib/StringConvert.o create mode 100644 release/src/lzma/CPP/7zip/Compress/LZMA_Lib/StringToInt.o create mode 100644 release/src/lzma/CPP/7zip/Compress/LZMA_Lib/UTFConvert.o create mode 100644 release/src/lzma/CPP/7zip/Compress/LZMA_Lib/ZLib.o create mode 100644 release/src/lzma/CPP/7zip/Compress/LZMA_Lib/liblzma.a delete mode 100644 release/src/router/bridge/config.log delete mode 100755 release/src/router/bridge/config.status create mode 100644 release/src/router/config_nc delete mode 100644 release/src/router/cyassl/config.log delete mode 100755 release/src/router/cyassl/config.status delete mode 100755 release/src/router/dnscrypt/config.status delete mode 100755 release/src/router/dnscrypt/src/libevent/config.status delete mode 100644 release/src/router/dropbear/_MTN/format delete mode 100644 release/src/router/dropbear/_MTN/inodeprints delete mode 100644 release/src/router/dropbear/_MTN/options delete mode 100644 release/src/router/dropbear/_MTN/revision create mode 100644 release/src/router/ffmpeg/config.err delete mode 100644 release/src/router/flac/config.log delete mode 100755 release/src/router/flac/config.status rename release/{src-rt/bcmcrypto/prebuilt/.dummy => src/router/iptables/.makefirst} (100%) create mode 100644 release/src/router/iptables/extensions/libipt_CLASSIFY.d create mode 100644 release/src/router/iptables/extensions/libipt_CONNMARK.d create mode 100644 release/src/router/iptables/extensions/libipt_DNAT.d create mode 100644 release/src/router/iptables/extensions/libipt_DSCP.d create mode 100644 release/src/router/iptables/extensions/libipt_IMQ.d create mode 100644 release/src/router/iptables/extensions/libipt_LOG.d create mode 100644 release/src/router/iptables/extensions/libipt_MARK.d create mode 100644 release/src/router/iptables/extensions/libipt_MASQUERADE.d create mode 100644 release/src/router/iptables/extensions/libipt_NETMAP.d create mode 100644 release/src/router/iptables/extensions/libipt_NFQUEUE.d create mode 100644 release/src/router/iptables/extensions/libipt_NOTRACK.d create mode 100644 release/src/router/iptables/extensions/libipt_REDIRECT.d create mode 100644 release/src/router/iptables/extensions/libipt_REJECT.d create mode 100644 release/src/router/iptables/extensions/libipt_ROUTE.d create mode 100644 release/src/router/iptables/extensions/libipt_SNAT.d create mode 100644 release/src/router/iptables/extensions/libipt_TCPMSS.d create mode 100644 release/src/router/iptables/extensions/libipt_TOS.d create mode 100644 release/src/router/iptables/extensions/libipt_TRIGGER.d create mode 100644 release/src/router/iptables/extensions/libipt_TTL.d create mode 100644 release/src/router/iptables/extensions/libipt_account.d create mode 100644 release/src/router/iptables/extensions/libipt_condition.d create mode 100644 release/src/router/iptables/extensions/libipt_connbytes.d create mode 100644 release/src/router/iptables/extensions/libipt_connlimit.d create mode 100644 release/src/router/iptables/extensions/libipt_connmark.d create mode 100644 release/src/router/iptables/extensions/libipt_dscp.d create mode 100644 release/src/router/iptables/extensions/libipt_geoip.d create mode 100644 release/src/router/iptables/extensions/libipt_hashlimit.d create mode 100644 release/src/router/iptables/extensions/libipt_icmp.d create mode 100644 release/src/router/iptables/extensions/libipt_ipp2p.d create mode 100644 release/src/router/iptables/extensions/libipt_iprange.d create mode 100644 release/src/router/iptables/extensions/libipt_layer7.d create mode 100644 release/src/router/iptables/extensions/libipt_length.d create mode 100644 release/src/router/iptables/extensions/libipt_limit.d create mode 100644 release/src/router/iptables/extensions/libipt_mac.d create mode 100644 release/src/router/iptables/extensions/libipt_mark.d create mode 100644 release/src/router/iptables/extensions/libipt_multiport.d create mode 100644 release/src/router/iptables/extensions/libipt_quota.d create mode 100644 release/src/router/iptables/extensions/libipt_recent.d create mode 100644 release/src/router/iptables/extensions/libipt_standard.d create mode 100644 release/src/router/iptables/extensions/libipt_state.d create mode 100644 release/src/router/iptables/extensions/libipt_string.d create mode 100644 release/src/router/iptables/extensions/libipt_tcp.d create mode 100644 release/src/router/iptables/extensions/libipt_tcpmss.d create mode 100644 release/src/router/iptables/extensions/libipt_time.d create mode 100644 release/src/router/iptables/extensions/libipt_tos.d create mode 100644 release/src/router/iptables/extensions/libipt_u32.d create mode 100644 release/src/router/iptables/extensions/libipt_udp.d create mode 100644 release/src/router/iptables/extensions/libipt_web.d create mode 100644 release/src/router/iptables/extensions/libipt_webmon.d create mode 100644 release/src/router/iptables/iptables-standalone.d create mode 100644 release/src/router/iptables/iptables.d create mode 100644 release/src/router/iptables/libiptc/libip4tc.d delete mode 100644 release/src/router/libexif/config.log delete mode 100755 release/src/router/libexif/config.status create mode 100644 release/src/router/libid3tag/autom4te.cache/output.0 create mode 100644 release/src/router/libid3tag/autom4te.cache/requests create mode 100644 release/src/router/libid3tag/autom4te.cache/traces.0 copy release/src/router/libid3tag/{config.h.in => config.h.in~} (100%) delete mode 100644 release/src/router/libnfnetlink/config.log delete mode 100755 release/src/router/libnfnetlink/config.status delete mode 100644 release/src/router/libogg/config.log delete mode 100755 release/src/router/libogg/config.status delete mode 100644 release/src/router/libusb10/config.log delete mode 100755 release/src/router/libusb10/config.status delete mode 100644 release/src/router/libvorbis/config.log delete mode 100755 release/src/router/libvorbis/config.status delete mode 100755 release/src/router/lzo/config.status delete mode 100755 release/src/router/nocat/config.status delete mode 100755 release/src/router/ntfs-3g/config.status delete mode 100644 release/src/router/openssl/apps/app_rand.o delete mode 100644 release/src/router/openssl/apps/apps.o delete mode 100644 release/src/router/openssl/apps/enc.o delete mode 100644 release/src/router/openssl/apps/openssl.o delete mode 100644 release/src/router/openssl/apps/req.o delete mode 100644 release/src/router/openssl/apps/rsa.o delete mode 100644 release/src/router/openssl/apps/speed.o delete mode 100644 release/src/router/openssl/apps/version.o delete mode 100644 release/src/router/openssl/apps/x509.o delete mode 100644 release/src/router/openssl/crypto/aes/aes-mips.o delete mode 100644 release/src/router/openssl/crypto/aes/aes_cbc.o delete mode 100644 release/src/router/openssl/crypto/aes/aes_cfb.o delete mode 100644 release/src/router/openssl/crypto/aes/aes_ctr.o delete mode 100644 release/src/router/openssl/crypto/aes/aes_ecb.o delete mode 100644 release/src/router/openssl/crypto/aes/aes_ige.o delete mode 100644 release/src/router/openssl/crypto/aes/aes_misc.o delete mode 100644 release/src/router/openssl/crypto/aes/aes_ofb.o delete mode 100644 release/src/router/openssl/crypto/aes/aes_wrap.o delete mode 100644 release/src/router/openssl/crypto/asn1/a_bitstr.o delete mode 100644 release/src/router/openssl/crypto/asn1/a_bool.o delete mode 100644 release/src/router/openssl/crypto/asn1/a_bytes.o delete mode 100644 release/src/router/openssl/crypto/asn1/a_d2i_fp.o delete mode 100644 release/src/router/openssl/crypto/asn1/a_digest.o delete mode 100644 release/src/router/openssl/crypto/asn1/a_dup.o delete mode 100644 release/src/router/openssl/crypto/asn1/a_enum.o delete mode 100644 release/src/router/openssl/crypto/asn1/a_gentm.o delete mode 100644 release/src/router/openssl/crypto/asn1/a_i2d_fp.o delete mode 100644 release/src/router/openssl/crypto/asn1/a_int.o delete mode 100644 release/src/router/openssl/crypto/asn1/a_mbstr.o delete mode 100644 release/src/router/openssl/crypto/asn1/a_object.o delete mode 100644 release/src/router/openssl/crypto/asn1/a_octet.o delete mode 100644 release/src/router/openssl/crypto/asn1/a_print.o delete mode 100644 release/src/router/openssl/crypto/asn1/a_set.o delete mode 100644 release/src/router/openssl/crypto/asn1/a_sign.o delete mode 100644 release/src/router/openssl/crypto/asn1/a_strex.o delete mode 100644 release/src/router/openssl/crypto/asn1/a_strnid.o delete mode 100644 release/src/router/openssl/crypto/asn1/a_time.o delete mode 100644 release/src/router/openssl/crypto/asn1/a_type.o delete mode 100644 release/src/router/openssl/crypto/asn1/a_utctm.o delete mode 100644 release/src/router/openssl/crypto/asn1/a_utf8.o delete mode 100644 release/src/router/openssl/crypto/asn1/a_verify.o delete mode 100644 release/src/router/openssl/crypto/asn1/ameth_lib.o delete mode 100644 release/src/router/openssl/crypto/asn1/asn1_err.o delete mode 100644 release/src/router/openssl/crypto/asn1/asn1_gen.o delete mode 100644 release/src/router/openssl/crypto/asn1/asn1_lib.o delete mode 100644 release/src/router/openssl/crypto/asn1/asn1_par.o delete mode 100644 release/src/router/openssl/crypto/asn1/asn_mime.o delete mode 100644 release/src/router/openssl/crypto/asn1/asn_moid.o delete mode 100644 release/src/router/openssl/crypto/asn1/asn_pack.o delete mode 100644 release/src/router/openssl/crypto/asn1/bio_asn1.o delete mode 100644 release/src/router/openssl/crypto/asn1/bio_ndef.o delete mode 100644 release/src/router/openssl/crypto/asn1/d2i_pr.o delete mode 100644 release/src/router/openssl/crypto/asn1/d2i_pu.o delete mode 100644 release/src/router/openssl/crypto/asn1/evp_asn1.o delete mode 100644 release/src/router/openssl/crypto/asn1/f_enum.o delete mode 100644 release/src/router/openssl/crypto/asn1/f_int.o delete mode 100644 release/src/router/openssl/crypto/asn1/f_string.o delete mode 100644 release/src/router/openssl/crypto/asn1/i2d_pr.o delete mode 100644 release/src/router/openssl/crypto/asn1/i2d_pu.o delete mode 100644 release/src/router/openssl/crypto/asn1/n_pkey.o delete mode 100644 release/src/router/openssl/crypto/asn1/nsseq.o delete mode 100644 release/src/router/openssl/crypto/asn1/p5_pbe.o delete mode 100644 release/src/router/openssl/crypto/asn1/p5_pbev2.o delete mode 100644 release/src/router/openssl/crypto/asn1/p8_pkey.o delete mode 100644 release/src/router/openssl/crypto/asn1/t_bitst.o delete mode 100644 release/src/router/openssl/crypto/asn1/t_crl.o delete mode 100644 release/src/router/openssl/crypto/asn1/t_pkey.o delete mode 100644 release/src/router/openssl/crypto/asn1/t_req.o delete mode 100644 release/src/router/openssl/crypto/asn1/t_spki.o delete mode 100644 release/src/router/openssl/crypto/asn1/t_x509.o delete mode 100644 release/src/router/openssl/crypto/asn1/t_x509a.o delete mode 100644 release/src/router/openssl/crypto/asn1/tasn_dec.o delete mode 100644 release/src/router/openssl/crypto/asn1/tasn_enc.o delete mode 100644 release/src/router/openssl/crypto/asn1/tasn_fre.o delete mode 100644 release/src/router/openssl/crypto/asn1/tasn_new.o delete mode 100644 release/src/router/openssl/crypto/asn1/tasn_prn.o delete mode 100644 release/src/router/openssl/crypto/asn1/tasn_typ.o delete mode 100644 release/src/router/openssl/crypto/asn1/tasn_utl.o delete mode 100644 release/src/router/openssl/crypto/asn1/x_algor.o delete mode 100644 release/src/router/openssl/crypto/asn1/x_attrib.o delete mode 100644 release/src/router/openssl/crypto/asn1/x_bignum.o delete mode 100644 release/src/router/openssl/crypto/asn1/x_crl.o delete mode 100644 release/src/router/openssl/crypto/asn1/x_exten.o delete mode 100644 release/src/router/openssl/crypto/asn1/x_info.o delete mode 100644 release/src/router/openssl/crypto/asn1/x_long.o delete mode 100644 release/src/router/openssl/crypto/asn1/x_name.o delete mode 100644 release/src/router/openssl/crypto/asn1/x_nx509.o delete mode 100644 release/src/router/openssl/crypto/asn1/x_pkey.o delete mode 100644 release/src/router/openssl/crypto/asn1/x_pubkey.o delete mode 100644 release/src/router/openssl/crypto/asn1/x_req.o delete mode 100644 release/src/router/openssl/crypto/asn1/x_sig.o delete mode 100644 release/src/router/openssl/crypto/asn1/x_spki.o delete mode 100644 release/src/router/openssl/crypto/asn1/x_val.o delete mode 100644 release/src/router/openssl/crypto/asn1/x_x509.o delete mode 100644 release/src/router/openssl/crypto/asn1/x_x509a.o delete mode 100644 release/src/router/openssl/crypto/bf/bf_cfb64.o delete mode 100644 release/src/router/openssl/crypto/bf/bf_ecb.o delete mode 100644 release/src/router/openssl/crypto/bf/bf_enc.o delete mode 100644 release/src/router/openssl/crypto/bf/bf_ofb64.o delete mode 100644 release/src/router/openssl/crypto/bf/bf_skey.o delete mode 100644 release/src/router/openssl/crypto/bio/b_dump.o delete mode 100644 release/src/router/openssl/crypto/bio/b_print.o delete mode 100644 release/src/router/openssl/crypto/bio/b_sock.o delete mode 100644 release/src/router/openssl/crypto/bio/bf_buff.o delete mode 100644 release/src/router/openssl/crypto/bio/bf_nbio.o delete mode 100644 release/src/router/openssl/crypto/bio/bf_null.o delete mode 100644 release/src/router/openssl/crypto/bio/bio_cb.o delete mode 100644 release/src/router/openssl/crypto/bio/bio_err.o delete mode 100644 release/src/router/openssl/crypto/bio/bio_lib.o delete mode 100644 release/src/router/openssl/crypto/bio/bss_acpt.o delete mode 100644 release/src/router/openssl/crypto/bio/bss_bio.o delete mode 100644 release/src/router/openssl/crypto/bio/bss_conn.o delete mode 100644 release/src/router/openssl/crypto/bio/bss_dgram.o delete mode 100644 release/src/router/openssl/crypto/bio/bss_fd.o delete mode 100644 release/src/router/openssl/crypto/bio/bss_file.o delete mode 100644 release/src/router/openssl/crypto/bio/bss_log.o delete mode 100644 release/src/router/openssl/crypto/bio/bss_mem.o delete mode 100644 release/src/router/openssl/crypto/bio/bss_null.o delete mode 100644 release/src/router/openssl/crypto/bio/bss_sock.o delete mode 100644 release/src/router/openssl/crypto/bn/bn-mips.o delete mode 100644 release/src/router/openssl/crypto/bn/bn_add.o delete mode 100644 release/src/router/openssl/crypto/bn/bn_blind.o delete mode 100644 release/src/router/openssl/crypto/bn/bn_const.o delete mode 100644 release/src/router/openssl/crypto/bn/bn_ctx.o delete mode 100644 release/src/router/openssl/crypto/bn/bn_depr.o delete mode 100644 release/src/router/openssl/crypto/bn/bn_div.o delete mode 100644 release/src/router/openssl/crypto/bn/bn_err.o delete mode 100644 release/src/router/openssl/crypto/bn/bn_exp.o delete mode 100644 release/src/router/openssl/crypto/bn/bn_exp2.o delete mode 100644 release/src/router/openssl/crypto/bn/bn_gcd.o delete mode 100644 release/src/router/openssl/crypto/bn/bn_gf2m.o delete mode 100644 release/src/router/openssl/crypto/bn/bn_kron.o delete mode 100644 release/src/router/openssl/crypto/bn/bn_lib.o delete mode 100644 release/src/router/openssl/crypto/bn/bn_mod.o delete mode 100644 release/src/router/openssl/crypto/bn/bn_mont.o delete mode 100644 release/src/router/openssl/crypto/bn/bn_mpi.o delete mode 100644 release/src/router/openssl/crypto/bn/bn_mul.o delete mode 100644 release/src/router/openssl/crypto/bn/bn_nist.o delete mode 100644 release/src/router/openssl/crypto/bn/bn_prime.o delete mode 100644 release/src/router/openssl/crypto/bn/bn_print.o delete mode 100644 release/src/router/openssl/crypto/bn/bn_rand.o delete mode 100644 release/src/router/openssl/crypto/bn/bn_recp.o delete mode 100644 release/src/router/openssl/crypto/bn/bn_shift.o delete mode 100644 release/src/router/openssl/crypto/bn/bn_sqr.o delete mode 100644 release/src/router/openssl/crypto/bn/bn_sqrt.o delete mode 100644 release/src/router/openssl/crypto/bn/bn_word.o delete mode 100644 release/src/router/openssl/crypto/bn/bn_x931p.o delete mode 100644 release/src/router/openssl/crypto/buffer/buf_err.o delete mode 100644 release/src/router/openssl/crypto/buffer/buf_str.o delete mode 100644 release/src/router/openssl/crypto/buffer/buffer.o delete mode 100644 release/src/router/openssl/crypto/cast/c_cfb64.o delete mode 100644 release/src/router/openssl/crypto/cast/c_ecb.o delete mode 100644 release/src/router/openssl/crypto/cast/c_enc.o delete mode 100644 release/src/router/openssl/crypto/cast/c_ofb64.o delete mode 100644 release/src/router/openssl/crypto/cast/c_skey.o delete mode 100644 release/src/router/openssl/crypto/cmac/cm_ameth.o delete mode 100644 release/src/router/openssl/crypto/cmac/cm_pmeth.o delete mode 100644 release/src/router/openssl/crypto/cmac/cmac.o delete mode 100644 release/src/router/openssl/crypto/comp/c_rle.o delete mode 100644 release/src/router/openssl/crypto/comp/c_zlib.o delete mode 100644 release/src/router/openssl/crypto/comp/comp_err.o delete mode 100644 release/src/router/openssl/crypto/comp/comp_lib.o delete mode 100644 release/src/router/openssl/crypto/conf/conf_api.o delete mode 100644 release/src/router/openssl/crypto/conf/conf_def.o delete mode 100644 release/src/router/openssl/crypto/conf/conf_err.o delete mode 100644 release/src/router/openssl/crypto/conf/conf_lib.o delete mode 100644 release/src/router/openssl/crypto/conf/conf_mall.o delete mode 100644 release/src/router/openssl/crypto/conf/conf_mod.o delete mode 100644 release/src/router/openssl/crypto/conf/conf_sap.o delete mode 100644 release/src/router/openssl/crypto/cpt_err.o delete mode 100644 release/src/router/openssl/crypto/cryptlib.o delete mode 100644 release/src/router/openssl/crypto/cversion.o delete mode 100644 release/src/router/openssl/crypto/des/cbc_cksm.o delete mode 100644 release/src/router/openssl/crypto/des/cbc_enc.o delete mode 100644 release/src/router/openssl/crypto/des/cfb64ede.o delete mode 100644 release/src/router/openssl/crypto/des/cfb64enc.o delete mode 100644 release/src/router/openssl/crypto/des/cfb_enc.o delete mode 100644 release/src/router/openssl/crypto/des/des_enc.o delete mode 100644 release/src/router/openssl/crypto/des/des_old.o delete mode 100644 release/src/router/openssl/crypto/des/des_old2.o delete mode 100644 release/src/router/openssl/crypto/des/ecb3_enc.o delete mode 100644 release/src/router/openssl/crypto/des/ecb_enc.o delete mode 100644 release/src/router/openssl/crypto/des/ede_cbcm_enc.o delete mode 100644 release/src/router/openssl/crypto/des/enc_read.o delete mode 100644 release/src/router/openssl/crypto/des/enc_writ.o delete mode 100644 release/src/router/openssl/crypto/des/fcrypt.o delete mode 100644 release/src/router/openssl/crypto/des/fcrypt_b.o delete mode 100644 release/src/router/openssl/crypto/des/ofb64ede.o delete mode 100644 release/src/router/openssl/crypto/des/ofb64enc.o delete mode 100644 release/src/router/openssl/crypto/des/ofb_enc.o delete mode 100644 release/src/router/openssl/crypto/des/pcbc_enc.o delete mode 100644 release/src/router/openssl/crypto/des/qud_cksm.o delete mode 100644 release/src/router/openssl/crypto/des/rand_key.o delete mode 100644 release/src/router/openssl/crypto/des/read2pwd.o delete mode 100644 release/src/router/openssl/crypto/des/rpc_enc.o delete mode 100644 release/src/router/openssl/crypto/des/set_key.o delete mode 100644 release/src/router/openssl/crypto/des/str2key.o delete mode 100644 release/src/router/openssl/crypto/des/xcbc_enc.o delete mode 100644 release/src/router/openssl/crypto/dh/dh_ameth.o delete mode 100644 release/src/router/openssl/crypto/dh/dh_asn1.o delete mode 100644 release/src/router/openssl/crypto/dh/dh_check.o delete mode 100644 release/src/router/openssl/crypto/dh/dh_depr.o delete mode 100644 release/src/router/openssl/crypto/dh/dh_err.o delete mode 100644 release/src/router/openssl/crypto/dh/dh_gen.o delete mode 100644 release/src/router/openssl/crypto/dh/dh_key.o delete mode 100644 release/src/router/openssl/crypto/dh/dh_lib.o delete mode 100644 release/src/router/openssl/crypto/dh/dh_pmeth.o delete mode 100644 release/src/router/openssl/crypto/dh/dh_prn.o delete mode 100644 release/src/router/openssl/crypto/dsa/dsa_ameth.o delete mode 100644 release/src/router/openssl/crypto/dsa/dsa_asn1.o delete mode 100644 release/src/router/openssl/crypto/dsa/dsa_depr.o delete mode 100644 release/src/router/openssl/crypto/dsa/dsa_err.o delete mode 100644 release/src/router/openssl/crypto/dsa/dsa_gen.o delete mode 100644 release/src/router/openssl/crypto/dsa/dsa_key.o delete mode 100644 release/src/router/openssl/crypto/dsa/dsa_lib.o delete mode 100644 release/src/router/openssl/crypto/dsa/dsa_ossl.o delete mode 100644 release/src/router/openssl/crypto/dsa/dsa_pmeth.o delete mode 100644 release/src/router/openssl/crypto/dsa/dsa_prn.o delete mode 100644 release/src/router/openssl/crypto/dsa/dsa_sign.o delete mode 100644 release/src/router/openssl/crypto/dsa/dsa_vrf.o delete mode 100644 release/src/router/openssl/crypto/dso/dso_beos.o delete mode 100644 release/src/router/openssl/crypto/dso/dso_dl.o delete mode 100644 release/src/router/openssl/crypto/dso/dso_dlfcn.o delete mode 100644 release/src/router/openssl/crypto/dso/dso_err.o delete mode 100644 release/src/router/openssl/crypto/dso/dso_lib.o delete mode 100644 release/src/router/openssl/crypto/dso/dso_null.o delete mode 100644 release/src/router/openssl/crypto/dso/dso_openssl.o delete mode 100644 release/src/router/openssl/crypto/dso/dso_vms.o delete mode 100644 release/src/router/openssl/crypto/dso/dso_win32.o delete mode 100644 release/src/router/openssl/crypto/ebcdic.o delete mode 100644 release/src/router/openssl/crypto/engine/eng_all.o delete mode 100644 release/src/router/openssl/crypto/engine/eng_cnf.o delete mode 100644 release/src/router/openssl/crypto/engine/eng_cryptodev.o delete mode 100644 release/src/router/openssl/crypto/engine/eng_ctrl.o delete mode 100644 release/src/router/openssl/crypto/engine/eng_dyn.o delete mode 100644 release/src/router/openssl/crypto/engine/eng_err.o delete mode 100644 release/src/router/openssl/crypto/engine/eng_fat.o delete mode 100644 release/src/router/openssl/crypto/engine/eng_init.o delete mode 100644 release/src/router/openssl/crypto/engine/eng_lib.o delete mode 100644 release/src/router/openssl/crypto/engine/eng_list.o delete mode 100644 release/src/router/openssl/crypto/engine/eng_openssl.o delete mode 100644 release/src/router/openssl/crypto/engine/eng_pkey.o delete mode 100644 release/src/router/openssl/crypto/engine/eng_rdrand.o delete mode 100644 release/src/router/openssl/crypto/engine/eng_rsax.o delete mode 100644 release/src/router/openssl/crypto/engine/eng_table.o delete mode 100644 release/src/router/openssl/crypto/engine/tb_asnmth.o delete mode 100644 release/src/router/openssl/crypto/engine/tb_cipher.o delete mode 100644 release/src/router/openssl/crypto/engine/tb_dh.o delete mode 100644 release/src/router/openssl/crypto/engine/tb_digest.o delete mode 100644 release/src/router/openssl/crypto/engine/tb_dsa.o delete mode 100644 release/src/router/openssl/crypto/engine/tb_ecdh.o delete mode 100644 release/src/router/openssl/crypto/engine/tb_ecdsa.o delete mode 100644 release/src/router/openssl/crypto/engine/tb_pkmeth.o delete mode 100644 release/src/router/openssl/crypto/engine/tb_rand.o delete mode 100644 release/src/router/openssl/crypto/engine/tb_rsa.o delete mode 100644 release/src/router/openssl/crypto/engine/tb_store.o delete mode 100644 release/src/router/openssl/crypto/err/err.o delete mode 100644 release/src/router/openssl/crypto/err/err_all.o delete mode 100644 release/src/router/openssl/crypto/err/err_prn.o delete mode 100644 release/src/router/openssl/crypto/evp/bio_b64.o delete mode 100644 release/src/router/openssl/crypto/evp/bio_enc.o delete mode 100644 release/src/router/openssl/crypto/evp/bio_md.o delete mode 100644 release/src/router/openssl/crypto/evp/bio_ok.o delete mode 100644 release/src/router/openssl/crypto/evp/c_all.o delete mode 100644 release/src/router/openssl/crypto/evp/c_allc.o delete mode 100644 release/src/router/openssl/crypto/evp/c_alld.o delete mode 100644 release/src/router/openssl/crypto/evp/digest.o delete mode 100644 release/src/router/openssl/crypto/evp/e_aes.o delete mode 100644 release/src/router/openssl/crypto/evp/e_aes_cbc_hmac_sha1.o delete mode 100644 release/src/router/openssl/crypto/evp/e_bf.o delete mode 100644 release/src/router/openssl/crypto/evp/e_camellia.o delete mode 100644 release/src/router/openssl/crypto/evp/e_cast.o delete mode 100644 release/src/router/openssl/crypto/evp/e_des.o delete mode 100644 release/src/router/openssl/crypto/evp/e_des3.o delete mode 100644 release/src/router/openssl/crypto/evp/e_idea.o delete mode 100644 release/src/router/openssl/crypto/evp/e_null.o delete mode 100644 release/src/router/openssl/crypto/evp/e_old.o delete mode 100644 release/src/router/openssl/crypto/evp/e_rc2.o delete mode 100644 release/src/router/openssl/crypto/evp/e_rc4.o delete mode 100644 release/src/router/openssl/crypto/evp/e_rc4_hmac_md5.o delete mode 100644 release/src/router/openssl/crypto/evp/e_rc5.o delete mode 100644 release/src/router/openssl/crypto/evp/e_seed.o delete mode 100644 release/src/router/openssl/crypto/evp/e_xcbc_d.o delete mode 100644 release/src/router/openssl/crypto/evp/encode.o delete mode 100644 release/src/router/openssl/crypto/evp/evp_acnf.o delete mode 100644 release/src/router/openssl/crypto/evp/evp_enc.o delete mode 100644 release/src/router/openssl/crypto/evp/evp_err.o delete mode 100644 release/src/router/openssl/crypto/evp/evp_fips.o delete mode 100644 release/src/router/openssl/crypto/evp/evp_key.o delete mode 100644 release/src/router/openssl/crypto/evp/evp_lib.o delete mode 100644 release/src/router/openssl/crypto/evp/evp_pbe.o delete mode 100644 release/src/router/openssl/crypto/evp/evp_pkey.o delete mode 100644 release/src/router/openssl/crypto/evp/m_dss.o delete mode 100644 release/src/router/openssl/crypto/evp/m_dss1.o delete mode 100644 release/src/router/openssl/crypto/evp/m_ecdsa.o delete mode 100644 release/src/router/openssl/crypto/evp/m_md2.o delete mode 100644 release/src/router/openssl/crypto/evp/m_md4.o delete mode 100644 release/src/router/openssl/crypto/evp/m_md5.o delete mode 100644 release/src/router/openssl/crypto/evp/m_mdc2.o delete mode 100644 release/src/router/openssl/crypto/evp/m_null.o delete mode 100644 release/src/router/openssl/crypto/evp/m_ripemd.o delete mode 100644 release/src/router/openssl/crypto/evp/m_sha.o delete mode 100644 release/src/router/openssl/crypto/evp/m_sha1.o delete mode 100644 release/src/router/openssl/crypto/evp/m_sigver.o delete mode 100644 release/src/router/openssl/crypto/evp/m_wp.o delete mode 100644 release/src/router/openssl/crypto/evp/names.o delete mode 100644 release/src/router/openssl/crypto/evp/p5_crpt.o delete mode 100644 release/src/router/openssl/crypto/evp/p5_crpt2.o delete mode 100644 release/src/router/openssl/crypto/evp/p_dec.o delete mode 100644 release/src/router/openssl/crypto/evp/p_enc.o delete mode 100644 release/src/router/openssl/crypto/evp/p_lib.o delete mode 100644 release/src/router/openssl/crypto/evp/p_open.o delete mode 100644 release/src/router/openssl/crypto/evp/p_seal.o delete mode 100644 release/src/router/openssl/crypto/evp/p_sign.o delete mode 100644 release/src/router/openssl/crypto/evp/p_verify.o delete mode 100644 release/src/router/openssl/crypto/evp/pmeth_fn.o delete mode 100644 release/src/router/openssl/crypto/evp/pmeth_gn.o delete mode 100644 release/src/router/openssl/crypto/evp/pmeth_lib.o delete mode 100644 release/src/router/openssl/crypto/ex_data.o delete mode 100644 release/src/router/openssl/crypto/fips_ers.o delete mode 100644 release/src/router/openssl/crypto/hmac/hm_ameth.o delete mode 100644 release/src/router/openssl/crypto/hmac/hm_pmeth.o delete mode 100644 release/src/router/openssl/crypto/hmac/hmac.o delete mode 100644 release/src/router/openssl/crypto/idea/i_cbc.o delete mode 100644 release/src/router/openssl/crypto/idea/i_cfb64.o delete mode 100644 release/src/router/openssl/crypto/idea/i_ecb.o delete mode 100644 release/src/router/openssl/crypto/idea/i_ofb64.o delete mode 100644 release/src/router/openssl/crypto/idea/i_skey.o delete mode 100644 release/src/router/openssl/crypto/lhash/lh_stats.o delete mode 100644 release/src/router/openssl/crypto/lhash/lhash.o delete mode 100644 release/src/router/openssl/crypto/md4/md4_dgst.o delete mode 100644 release/src/router/openssl/crypto/md4/md4_one.o delete mode 100644 release/src/router/openssl/crypto/md5/md5_dgst.o delete mode 100644 release/src/router/openssl/crypto/md5/md5_one.o delete mode 100644 release/src/router/openssl/crypto/mem.o delete mode 100644 release/src/router/openssl/crypto/mem_clr.o delete mode 100644 release/src/router/openssl/crypto/mem_dbg.o delete mode 100644 release/src/router/openssl/crypto/modes/cbc128.o delete mode 100644 release/src/router/openssl/crypto/modes/ccm128.o delete mode 100644 release/src/router/openssl/crypto/modes/cfb128.o delete mode 100644 release/src/router/openssl/crypto/modes/ctr128.o delete mode 100644 release/src/router/openssl/crypto/modes/cts128.o delete mode 100644 release/src/router/openssl/crypto/modes/gcm128.o delete mode 100644 release/src/router/openssl/crypto/modes/ofb128.o delete mode 100644 release/src/router/openssl/crypto/modes/xts128.o delete mode 100644 release/src/router/openssl/crypto/o_dir.o delete mode 100644 release/src/router/openssl/crypto/o_fips.o delete mode 100644 release/src/router/openssl/crypto/o_init.o delete mode 100644 release/src/router/openssl/crypto/o_str.o delete mode 100644 release/src/router/openssl/crypto/o_time.o delete mode 100644 release/src/router/openssl/crypto/objects/o_names.o delete mode 100644 release/src/router/openssl/crypto/objects/obj_dat.o delete mode 100644 release/src/router/openssl/crypto/objects/obj_err.o delete mode 100644 release/src/router/openssl/crypto/objects/obj_lib.o delete mode 100644 release/src/router/openssl/crypto/objects/obj_xref.o delete mode 100644 release/src/router/openssl/crypto/ocsp/ocsp_asn.o delete mode 100644 release/src/router/openssl/crypto/ocsp/ocsp_cl.o delete mode 100644 release/src/router/openssl/crypto/ocsp/ocsp_err.o delete mode 100644 release/src/router/openssl/crypto/ocsp/ocsp_ext.o delete mode 100644 release/src/router/openssl/crypto/ocsp/ocsp_ht.o delete mode 100644 release/src/router/openssl/crypto/ocsp/ocsp_lib.o delete mode 100644 release/src/router/openssl/crypto/ocsp/ocsp_prn.o delete mode 100644 release/src/router/openssl/crypto/ocsp/ocsp_srv.o delete mode 100644 release/src/router/openssl/crypto/ocsp/ocsp_vfy.o delete mode 100644 release/src/router/openssl/crypto/pem/pem_all.o delete mode 100644 release/src/router/openssl/crypto/pem/pem_err.o delete mode 100644 release/src/router/openssl/crypto/pem/pem_info.o delete mode 100644 release/src/router/openssl/crypto/pem/pem_lib.o delete mode 100644 release/src/router/openssl/crypto/pem/pem_oth.o delete mode 100644 release/src/router/openssl/crypto/pem/pem_pk8.o delete mode 100644 release/src/router/openssl/crypto/pem/pem_pkey.o delete mode 100644 release/src/router/openssl/crypto/pem/pem_seal.o delete mode 100644 release/src/router/openssl/crypto/pem/pem_sign.o delete mode 100644 release/src/router/openssl/crypto/pem/pem_x509.o delete mode 100644 release/src/router/openssl/crypto/pem/pem_xaux.o delete mode 100644 release/src/router/openssl/crypto/pem/pvkfmt.o delete mode 100644 release/src/router/openssl/crypto/pkcs12/p12_add.o delete mode 100644 release/src/router/openssl/crypto/pkcs12/p12_asn.o delete mode 100644 release/src/router/openssl/crypto/pkcs12/p12_attr.o delete mode 100644 release/src/router/openssl/crypto/pkcs12/p12_crpt.o delete mode 100644 release/src/router/openssl/crypto/pkcs12/p12_crt.o delete mode 100644 release/src/router/openssl/crypto/pkcs12/p12_decr.o delete mode 100644 release/src/router/openssl/crypto/pkcs12/p12_init.o delete mode 100644 release/src/router/openssl/crypto/pkcs12/p12_key.o delete mode 100644 release/src/router/openssl/crypto/pkcs12/p12_kiss.o delete mode 100644 release/src/router/openssl/crypto/pkcs12/p12_mutl.o delete mode 100644 release/src/router/openssl/crypto/pkcs12/p12_npas.o delete mode 100644 release/src/router/openssl/crypto/pkcs12/p12_p8d.o delete mode 100644 release/src/router/openssl/crypto/pkcs12/p12_p8e.o delete mode 100644 release/src/router/openssl/crypto/pkcs12/p12_utl.o delete mode 100644 release/src/router/openssl/crypto/pkcs12/pk12err.o delete mode 100644 release/src/router/openssl/crypto/pkcs7/bio_pk7.o delete mode 100644 release/src/router/openssl/crypto/pkcs7/pk7_asn1.o delete mode 100644 release/src/router/openssl/crypto/pkcs7/pk7_attr.o delete mode 100644 release/src/router/openssl/crypto/pkcs7/pk7_doit.o delete mode 100644 release/src/router/openssl/crypto/pkcs7/pk7_lib.o delete mode 100644 release/src/router/openssl/crypto/pkcs7/pk7_mime.o delete mode 100644 release/src/router/openssl/crypto/pkcs7/pk7_smime.o delete mode 100644 release/src/router/openssl/crypto/pkcs7/pkcs7err.o delete mode 100644 release/src/router/openssl/crypto/pqueue/pqueue.o delete mode 100644 release/src/router/openssl/crypto/rand/md_rand.o delete mode 100644 release/src/router/openssl/crypto/rand/rand_egd.o delete mode 100644 release/src/router/openssl/crypto/rand/rand_err.o delete mode 100644 release/src/router/openssl/crypto/rand/rand_lib.o delete mode 100644 release/src/router/openssl/crypto/rand/rand_nw.o delete mode 100644 release/src/router/openssl/crypto/rand/rand_os2.o delete mode 100644 release/src/router/openssl/crypto/rand/rand_unix.o delete mode 100644 release/src/router/openssl/crypto/rand/rand_win.o delete mode 100644 release/src/router/openssl/crypto/rand/randfile.o delete mode 100644 release/src/router/openssl/crypto/rc2/rc2_cbc.o delete mode 100644 release/src/router/openssl/crypto/rc2/rc2_ecb.o delete mode 100644 release/src/router/openssl/crypto/rc2/rc2_skey.o delete mode 100644 release/src/router/openssl/crypto/rc2/rc2cfb64.o delete mode 100644 release/src/router/openssl/crypto/rc2/rc2ofb64.o delete mode 100644 release/src/router/openssl/crypto/rc4/rc4_enc.o delete mode 100644 release/src/router/openssl/crypto/rc4/rc4_skey.o delete mode 100644 release/src/router/openssl/crypto/rc4/rc4_utl.o delete mode 100644 release/src/router/openssl/crypto/rc5/rc5_ecb.o delete mode 100644 release/src/router/openssl/crypto/rc5/rc5_enc.o delete mode 100644 release/src/router/openssl/crypto/rc5/rc5_skey.o delete mode 100644 release/src/router/openssl/crypto/rc5/rc5cfb64.o delete mode 100644 release/src/router/openssl/crypto/rc5/rc5ofb64.o delete mode 100644 release/src/router/openssl/crypto/rsa/rsa_ameth.o delete mode 100644 release/src/router/openssl/crypto/rsa/rsa_asn1.o delete mode 100644 release/src/router/openssl/crypto/rsa/rsa_chk.o delete mode 100644 release/src/router/openssl/crypto/rsa/rsa_crpt.o delete mode 100644 release/src/router/openssl/crypto/rsa/rsa_depr.o delete mode 100644 release/src/router/openssl/crypto/rsa/rsa_eay.o delete mode 100644 release/src/router/openssl/crypto/rsa/rsa_err.o delete mode 100644 release/src/router/openssl/crypto/rsa/rsa_gen.o delete mode 100644 release/src/router/openssl/crypto/rsa/rsa_lib.o delete mode 100644 release/src/router/openssl/crypto/rsa/rsa_none.o delete mode 100644 release/src/router/openssl/crypto/rsa/rsa_null.o delete mode 100644 release/src/router/openssl/crypto/rsa/rsa_oaep.o delete mode 100644 release/src/router/openssl/crypto/rsa/rsa_pk1.o delete mode 100644 release/src/router/openssl/crypto/rsa/rsa_pmeth.o delete mode 100644 release/src/router/openssl/crypto/rsa/rsa_prn.o delete mode 100644 release/src/router/openssl/crypto/rsa/rsa_pss.o delete mode 100644 release/src/router/openssl/crypto/rsa/rsa_saos.o delete mode 100644 release/src/router/openssl/crypto/rsa/rsa_sign.o delete mode 100644 release/src/router/openssl/crypto/rsa/rsa_ssl.o delete mode 100644 release/src/router/openssl/crypto/rsa/rsa_x931.o delete mode 100644 release/src/router/openssl/crypto/sha/sha1-mips.o delete mode 100644 release/src/router/openssl/crypto/sha/sha1_one.o delete mode 100644 release/src/router/openssl/crypto/sha/sha1dgst.o delete mode 100644 release/src/router/openssl/crypto/sha/sha256-mips.o delete mode 100644 release/src/router/openssl/crypto/sha/sha256.o delete mode 100644 release/src/router/openssl/crypto/sha/sha512.o delete mode 100644 release/src/router/openssl/crypto/sha/sha_dgst.o delete mode 100644 release/src/router/openssl/crypto/sha/sha_one.o delete mode 100644 release/src/router/openssl/crypto/srp/srp_lib.o delete mode 100644 release/src/router/openssl/crypto/srp/srp_vfy.o delete mode 100644 release/src/router/openssl/crypto/stack/stack.o delete mode 100644 release/src/router/openssl/crypto/txt_db/txt_db.o delete mode 100644 release/src/router/openssl/crypto/ui/ui_compat.o delete mode 100644 release/src/router/openssl/crypto/ui/ui_err.o delete mode 100644 release/src/router/openssl/crypto/ui/ui_lib.o delete mode 100644 release/src/router/openssl/crypto/ui/ui_openssl.o delete mode 100644 release/src/router/openssl/crypto/ui/ui_util.o delete mode 100644 release/src/router/openssl/crypto/uid.o delete mode 100644 release/src/router/openssl/crypto/whrlpool/wp_block.o delete mode 100644 release/src/router/openssl/crypto/whrlpool/wp_dgst.o delete mode 100644 release/src/router/openssl/crypto/x509/by_dir.o delete mode 100644 release/src/router/openssl/crypto/x509/by_file.o delete mode 100644 release/src/router/openssl/crypto/x509/x509_att.o delete mode 100644 release/src/router/openssl/crypto/x509/x509_cmp.o delete mode 100644 release/src/router/openssl/crypto/x509/x509_d2.o delete mode 100644 release/src/router/openssl/crypto/x509/x509_def.o delete mode 100644 release/src/router/openssl/crypto/x509/x509_err.o delete mode 100644 release/src/router/openssl/crypto/x509/x509_ext.o delete mode 100644 release/src/router/openssl/crypto/x509/x509_lu.o delete mode 100644 release/src/router/openssl/crypto/x509/x509_obj.o delete mode 100644 release/src/router/openssl/crypto/x509/x509_r2x.o delete mode 100644 release/src/router/openssl/crypto/x509/x509_req.o delete mode 100644 release/src/router/openssl/crypto/x509/x509_set.o delete mode 100644 release/src/router/openssl/crypto/x509/x509_trs.o delete mode 100644 release/src/router/openssl/crypto/x509/x509_txt.o delete mode 100644 release/src/router/openssl/crypto/x509/x509_v3.o delete mode 100644 release/src/router/openssl/crypto/x509/x509_vfy.o delete mode 100644 release/src/router/openssl/crypto/x509/x509_vpm.o delete mode 100644 release/src/router/openssl/crypto/x509/x509cset.o delete mode 100644 release/src/router/openssl/crypto/x509/x509name.o delete mode 100644 release/src/router/openssl/crypto/x509/x509rset.o delete mode 100644 release/src/router/openssl/crypto/x509/x509spki.o delete mode 100644 release/src/router/openssl/crypto/x509/x509type.o delete mode 100644 release/src/router/openssl/crypto/x509/x_all.o delete mode 100644 release/src/router/openssl/crypto/x509v3/pcy_cache.o delete mode 100644 release/src/router/openssl/crypto/x509v3/pcy_data.o delete mode 100644 release/src/router/openssl/crypto/x509v3/pcy_lib.o delete mode 100644 release/src/router/openssl/crypto/x509v3/pcy_map.o delete mode 100644 release/src/router/openssl/crypto/x509v3/pcy_node.o delete mode 100644 release/src/router/openssl/crypto/x509v3/pcy_tree.o delete mode 100644 release/src/router/openssl/crypto/x509v3/v3_addr.o delete mode 100644 release/src/router/openssl/crypto/x509v3/v3_akey.o delete mode 100644 release/src/router/openssl/crypto/x509v3/v3_akeya.o delete mode 100644 release/src/router/openssl/crypto/x509v3/v3_alt.o delete mode 100644 release/src/router/openssl/crypto/x509v3/v3_asid.o delete mode 100644 release/src/router/openssl/crypto/x509v3/v3_bcons.o delete mode 100644 release/src/router/openssl/crypto/x509v3/v3_bitst.o delete mode 100644 release/src/router/openssl/crypto/x509v3/v3_conf.o delete mode 100644 release/src/router/openssl/crypto/x509v3/v3_cpols.o delete mode 100644 release/src/router/openssl/crypto/x509v3/v3_crld.o delete mode 100644 release/src/router/openssl/crypto/x509v3/v3_enum.o delete mode 100644 release/src/router/openssl/crypto/x509v3/v3_extku.o delete mode 100644 release/src/router/openssl/crypto/x509v3/v3_genn.o delete mode 100644 release/src/router/openssl/crypto/x509v3/v3_ia5.o delete mode 100644 release/src/router/openssl/crypto/x509v3/v3_info.o delete mode 100644 release/src/router/openssl/crypto/x509v3/v3_int.o delete mode 100644 release/src/router/openssl/crypto/x509v3/v3_lib.o delete mode 100644 release/src/router/openssl/crypto/x509v3/v3_ncons.o delete mode 100644 release/src/router/openssl/crypto/x509v3/v3_ocsp.o delete mode 100644 release/src/router/openssl/crypto/x509v3/v3_pci.o delete mode 100644 release/src/router/openssl/crypto/x509v3/v3_pcia.o delete mode 100644 release/src/router/openssl/crypto/x509v3/v3_pcons.o delete mode 100644 release/src/router/openssl/crypto/x509v3/v3_pku.o delete mode 100644 release/src/router/openssl/crypto/x509v3/v3_pmaps.o delete mode 100644 release/src/router/openssl/crypto/x509v3/v3_prn.o delete mode 100644 release/src/router/openssl/crypto/x509v3/v3_purp.o delete mode 100644 release/src/router/openssl/crypto/x509v3/v3_skey.o delete mode 100644 release/src/router/openssl/crypto/x509v3/v3_sxnet.o delete mode 100644 release/src/router/openssl/crypto/x509v3/v3_utl.o delete mode 100644 release/src/router/openssl/crypto/x509v3/v3err.o delete mode 100644 release/src/router/openssl/libcrypto.a delete mode 120000 release/src/router/openssl/libcrypto.so delete mode 100644 release/src/router/openssl/libssl.a delete mode 120000 release/src/router/openssl/libssl.so delete mode 100644 release/src/router/openssl/ssl/bio_ssl.o delete mode 100644 release/src/router/openssl/ssl/d1_both.o delete mode 100644 release/src/router/openssl/ssl/d1_clnt.o delete mode 100644 release/src/router/openssl/ssl/d1_enc.o delete mode 100644 release/src/router/openssl/ssl/d1_lib.o delete mode 100644 release/src/router/openssl/ssl/d1_meth.o delete mode 100644 release/src/router/openssl/ssl/d1_pkt.o delete mode 100644 release/src/router/openssl/ssl/d1_srtp.o delete mode 100644 release/src/router/openssl/ssl/d1_srvr.o delete mode 100644 release/src/router/openssl/ssl/kssl.o delete mode 100644 release/src/router/openssl/ssl/s23_clnt.o delete mode 100644 release/src/router/openssl/ssl/s23_lib.o delete mode 100644 release/src/router/openssl/ssl/s23_meth.o delete mode 100644 release/src/router/openssl/ssl/s23_pkt.o delete mode 100644 release/src/router/openssl/ssl/s23_srvr.o delete mode 100644 release/src/router/openssl/ssl/s2_clnt.o delete mode 100644 release/src/router/openssl/ssl/s2_enc.o delete mode 100644 release/src/router/openssl/ssl/s2_lib.o delete mode 100644 release/src/router/openssl/ssl/s2_meth.o delete mode 100644 release/src/router/openssl/ssl/s2_pkt.o delete mode 100644 release/src/router/openssl/ssl/s2_srvr.o delete mode 100644 release/src/router/openssl/ssl/s3_both.o delete mode 100644 release/src/router/openssl/ssl/s3_clnt.o delete mode 100644 release/src/router/openssl/ssl/s3_enc.o delete mode 100644 release/src/router/openssl/ssl/s3_lib.o delete mode 100644 release/src/router/openssl/ssl/s3_meth.o delete mode 100644 release/src/router/openssl/ssl/s3_pkt.o delete mode 100644 release/src/router/openssl/ssl/s3_srvr.o delete mode 100644 release/src/router/openssl/ssl/ssl_algs.o delete mode 100644 release/src/router/openssl/ssl/ssl_asn1.o delete mode 100644 release/src/router/openssl/ssl/ssl_cert.o delete mode 100644 release/src/router/openssl/ssl/ssl_ciph.o delete mode 100644 release/src/router/openssl/ssl/ssl_err.o delete mode 100644 release/src/router/openssl/ssl/ssl_err2.o delete mode 100644 release/src/router/openssl/ssl/ssl_lib.o delete mode 100644 release/src/router/openssl/ssl/ssl_rsa.o delete mode 100644 release/src/router/openssl/ssl/ssl_sess.o delete mode 100644 release/src/router/openssl/ssl/ssl_stat.o delete mode 100644 release/src/router/openssl/ssl/ssl_txt.o delete mode 100644 release/src/router/openssl/ssl/t1_clnt.o delete mode 100644 release/src/router/openssl/ssl/t1_enc.o delete mode 100644 release/src/router/openssl/ssl/t1_lib.o delete mode 100644 release/src/router/openssl/ssl/t1_meth.o delete mode 100644 release/src/router/openssl/ssl/t1_reneg.o delete mode 100644 release/src/router/openssl/ssl/t1_srvr.o delete mode 100644 release/src/router/openssl/ssl/tls_srp.o delete mode 100644 release/src/router/pcre/config.log delete mode 100755 release/src/router/pcre/config.status delete mode 100644 release/src/router/rp-pppoe/src/config.log delete mode 100755 release/src/router/rp-pppoe/src/config.status delete mode 100755 release/src/router/snmp/config.status delete mode 100755 release/src/router/sqlite/config.status create mode 100644 release/src/router/target.info delete mode 100755 release/src/router/zebra/config.status delete mode 100644 release/src/router/zlib/Makefile delete mode 100644 release/src/router/zlib/zconf.h diff --git a/release/src-rt/bcm57xx/linux/b57um.c b/release/src-rt/bcm57xx/linux/b57um.c old mode 100644 new mode 100755 index b0d7d0a5ce..f595977957 --- a/release/src-rt/bcm57xx/linux/b57um.c +++ b/release/src-rt/bcm57xx/linux/b57um.c @@ -10,7 +10,7 @@ /* */ /******************************************************************************/ -/* $Id: b57um.c,v 1.29.2.6 2010/02/21 20:06:36 Exp $ */ +/* $Id: b57um.c,v 1.34.10.1 2010-10-09 01:46:48 Exp $ */ char bcm5700_driver[] = "bcm5700"; char bcm5700_version[] = "8.3.14"; @@ -4329,6 +4329,68 @@ STATIC int bcm5700_ioctl(struct net_device *dev, struct ifreq *rq, int cmd) return 0; } + case SIOCSETGETVAR: + { + int ret = 0; + void *buffer = NULL; + bool get = FALSE, set = TRUE; + et_var_t var; + + if (set && mm_copy_from_user(&var, rq->ifr_data, sizeof(var))) + return -EFAULT; + + /* prepare buffer if any */ + if (var.buf) { + if (!var.set) + get = TRUE; + + if (!(buffer = (void *) MALLOC(SI_OSH, var.len))) { + B57_ERR(("%s: out of memory, malloced %d bytes\n", __FUNCTION__, + MALLOCED(SI_OSH))); + return -ENOMEM; + } + + if (mm_copy_from_user(buffer, var.buf, var.len)) { + MFREE(SI_OSH, buffer, var.len); + return -EFAULT; + } + } + + /* do var.cmd */ + switch (var.cmd) { + case IOV_ET_ROBO_DEVID: + { + uint *vecarg = (uint *)buffer; + robo_info_t *robo = (robo_info_t *)pUmDevice->robo; + + if (((pDevice->Flags & ROBO_SWITCH_FLAG) == 0) || + (robo == NULL)) { + ret = -ENXIO; + break; + } + + /* get robo device id */ + *vecarg = robo->devid; + + if (mm_copy_to_user(var.buf, buffer, var.len)) { + ret = -EFAULT; + break; + } + + break; + } + + default: + ret = -EOPNOTSUPP; + break; + } + + if (buffer) + MFREE(SI_OSH, buffer, var.len); + + return ret; + } + case SIOCSETCSETMSGLEVEL: if (mm_copy_from_user(&value, rq->ifr_data, sizeof(value))) return -EFAULT; diff --git a/release/src-rt/bcm57xx/linux/bcm5700.4 b/release/src-rt/bcm57xx/linux/bcm5700.4 old mode 100644 new mode 100755 index fbe6206395..1549000220 --- a/release/src-rt/bcm57xx/linux/bcm5700.4 +++ b/release/src-rt/bcm57xx/linux/bcm5700.4 @@ -532,3 +532,4 @@ Michael Chan \- mchan@broadcom.com .BR ifconfig (8), .BR insmod (8), .BR modules.conf (5). + diff --git a/release/src-rt/bcm57xx/linux/mm.h b/release/src-rt/bcm57xx/linux/mm.h index 606ef2bdf2..b96dcc9b26 100644 --- a/release/src-rt/bcm57xx/linux/mm.h +++ b/release/src-rt/bcm57xx/linux/mm.h @@ -10,7 +10,7 @@ /* */ /******************************************************************************/ -/* $Id: mm.h,v 1.9.2.1 2009/10/12 23:21:25 Exp $ */ +/* $Id: mm.h,v 1.10 2009-10-20 01:17:52 Exp $ */ #ifndef MM_H #define MM_H diff --git a/release/src-rt/bcm57xx/sys/tigon3.c b/release/src-rt/bcm57xx/sys/tigon3.c index 66cc58daea..e5544ee52e 100644 --- a/release/src-rt/bcm57xx/sys/tigon3.c +++ b/release/src-rt/bcm57xx/sys/tigon3.c @@ -11,7 +11,7 @@ /* History: */ /******************************************************************************/ -/* $Id: tigon3.c,v 1.15 2008/02/22 22:46:19 Exp $ */ +/* $Id: tigon3.c,v 1.15 2008-02-22 22:46:19 Exp $ */ #include "mm.h" #include "bcmdevs.h" @@ -3457,7 +3457,7 @@ PLM_DEVICE_BLOCK pDevice) * In the case of the BCM4785, access to external EEPROM is * avoided, so these calls are skipped. */ - if (!(pDevice->Flags & SB_CORE_FLAG)) { + if (!pDevice->Flags & SB_CORE_FLAG) { LM_ReadVPD(pDevice); LM_ReadBootCodeVersion(pDevice); LM_ReadIPMICodeVersion(pDevice); @@ -5832,7 +5832,7 @@ LM_ResetChip(PLM_DEVICE_BLOCK pDevice) MM_Wait(40); /* BCM4785: Don't use any firmware, so don't wait */ - if (!(pDevice->Flags & SB_CORE_FLAG)) { + if (!pDevice->Flags & SB_CORE_FLAG) { /* Wait for the firmware to finish initialization. */ for(j = 0; j < 100000; j++) { MM_Wait(10); @@ -8326,10 +8326,6 @@ LM_ResetPhy(LM_DEVICE_BLOCK *pDevice) int j; LM_UINT32 miireg; - /* Bypassing Reset when it's Robo PHY (from Broadcom Email 2008-4-9). */ - if (pDevice->Flags & ROBO_SWITCH_FLAG) - return; - if (pDevice->PhyFlags & PHY_CHECK_TAPS_AFTER_RESET) { LM_ResetPhy_5703_4_5(pDevice, 5, 1); diff --git a/release/src-rt/bcmcrypto/Makefile b/release/src-rt/bcmcrypto/Makefile new file mode 100755 index 0000000000..4eef5d0107 --- /dev/null +++ b/release/src-rt/bcmcrypto/Makefile @@ -0,0 +1,69 @@ +# +# Assorted cryptographic algorithms +# +# Copyright (C) 2002 Broadcom Corporation +# +# $Id: Makefile,v 1.30.10.1 2010-05-28 15:25:49 Exp $ +# + +SRCBASE := .. + +CC := gcc +CFLAGS += -I. -I$(SRCBASE)/include -Wall +CFLAGS += -g -DDEBUG -ffunction-sections +#CFLAGS += -O2 +CFLAGS += -Wall -Werror + +#CC := cl +#CFLAGS += -I. -I../include -Ic:/tools/msdev/2600ddk/inc/crt +#LDFLAGS += -link -LIBPATH:c:/tools/msdev/2600ddk/lib/wxp/i386 + +PROGS := aes aeskeywrap des dh passhash prf rc4 sha1 tkhash tkhash_shared_sbox sha256 + + + +all: $(PROGS) + +clean: + rm -f *.o *.obj $(PROGS) *.exe + +AESFLAGS := -DBCMAES_TEST -DBCMAES_TEST_STANDALONE -DBCMAES_GENTABLE +aes: aes.c rijndael-alg-fst.c + $(CC) $(CFLAGS) $(AESFLAGS) -o $@ $^ $(LDFLAGS) + +aeskeywrap: aeskeywrap.c aes.c rijndael-alg-fst.c + $(CC) $(CFLAGS) -DBCMAESKEYWRAP_TEST -o $@ $^ $(LDFLAGS) + + +des: des.c + $(CC) $(CFLAGS) -DDES_TEST_STANDALONE -o $@ $^ $(LDFLAGS) + +passhash: passhash.c sha1.c prf.c + $(CC) $(CFLAGS) -DBCMPASSHASH_TEST -o $@ $^ $(LDFLAGS) + +prf: prf.c hmac.c sha1.c md5.c + $(CC) $(CFLAGS) -DBCMPRF_TEST -DBCMCCX -o $@ $^ $(LDFLAGS) + +rc4: rc4.c + $(CC) $(CFLAGS) -DBCMRC4_TEST -o $@ $^ $(LDFLAGS) + +sha1: sha1.c + $(CC) $(CFLAGS) -DBCMSHA1_TEST -o $@ $^ $(LDFLAGS) + +sha256: sha256.c + $(CC) $(CFLAGS) -DBCMSHA256_TEST -o $@ $^ $(LDFLAGS) + + +tkhash: tkhash.c + $(CC) $(CFLAGS) -DBCMTKHASH_TEST -o $@ $^ $(LDFLAGS) + +tkhash_shared_sbox: tkhash.c rijndael-alg-fst.c + $(CC) $(CFLAGS) -DBCMTKHASH_TEST -DSHARE_RIJNDAEL_SBOX -o $@ $^ $(LDFLAGS) + +dh: dh.c bn.c random.c + $(CC) $(CFLAGS) -m32 -DBCMDH_TEST -o $@ $^ $(LDFLAGS) + +install: + install -d $(INSTALLDIR)/usr/sbin + install $(PROGS) $(INSTALLDIR)/usr/sbin + $(STRIP) $(foreach file,$(PROGS),$(INSTALLDIR)/usr/sbin/$(file)) diff --git a/release/src-rt/bcmcrypto/aes.c b/release/src-rt/bcmcrypto/aes.c new file mode 100755 index 0000000000..1d721706d5 --- /dev/null +++ b/release/src-rt/bcmcrypto/aes.c @@ -0,0 +1,1198 @@ +/* + * aes.c + * AES encrypt/decrypt wrapper functions used around Rijndael reference + * implementation + * + * Copyright (C) 2010, Broadcom Corporation + * All Rights Reserved. + * + * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation; + * the contents of this file may not be disclosed to third parties, copied + * or duplicated in any form, in whole or in part, without the prior + * written permission of Broadcom Corporation. + * + * $Id: aes.c,v 1.34.10.1 2010-05-28 15:25:49 Exp $ + */ + +#include +#ifdef BCMDRIVER +#include +#else +#include /* for size_t */ +#if defined(__GNUC__) +extern void bcopy(const void *src, void *dst, size_t len); +extern int bcmp(const void *b1, const void *b2, size_t len); +extern void bzero(void *b, size_t len); +#else +#define bcopy(src, dst, len) memcpy((dst), (src), (len)) +#define bcmp(b1, b2, len) memcmp((b1), (b2), (len)) +#define bzero(b, len) memset((b), 0, (len)) +#endif +#endif /* BCMDRIVER */ +#include +#include +#include +#include +#include + +#ifdef BCMAES_TEST +#include + +#define dbg(args) printf args + +void +pinter(const char *label, const uint8 *A, const size_t il, const uint8 *R) +{ + int k; + printf("%s", label); + for (k = 0; k < AES_BLOCK_SZ; k++) + printf("%02X", A[k]); + printf(" "); + for (k = 0; k < il; k++) { + printf("%02X", R[k]); + if (!((k + 1) % AES_BLOCK_SZ)) + printf(" "); + } + printf("\n"); +} + +void +pres(const char *label, const size_t len, const uint8 *data) +{ + int k; + printf("%s\n", label); + for (k = 0; k < len; k++) { + printf("%02x ", data[k]); + if (!((k + 1) % AES_BLOCK_SZ)) + printf("\n"); + } + printf("\n"); +} + +#ifdef BCMAES_GENTABLE +void +ptable(const char *tablename, const uint32 *table) +{ + int k; + printf("static const uint32 %s[256] = {\n ", tablename); + for (k = 0; k < 256; k++) { + printf("0x%08xU", table[k]); + if ((k+1) % 4) + printf(", "); + else + if (k != 255) + printf(",\n "); + else + printf("\n"); + } + printf("};\n"); +} +#endif /* BCMAES_GENTABLE */ + +#else +#define dbg(args) +#define pinter(label, A, il, R) +#define pres(label, len, data) +#endif /* BCMAES_TEST */ + +/* +* ptxt - plain text +* ctxt - cipher text +*/ + +/* Perform AES block encryption, including key schedule setup */ +void +BCMROMFN(aes_encrypt)(const size_t kl, const uint8 *K, const uint8 *ptxt, uint8 *ctxt) +{ + uint32 rk[4 * (AES_MAXROUNDS + 1)]; + rijndaelKeySetupEnc(rk, K, (int)AES_KEY_BITLEN(kl)); + rijndaelEncrypt(rk, (int)AES_ROUNDS(kl), ptxt, ctxt); +} + +/* Perform AES block decryption, including key schedule setup */ +void +BCMROMFN(aes_decrypt)(const size_t kl, const uint8 *K, const uint8 *ctxt, uint8 *ptxt) +{ + uint32 rk[4 * (AES_MAXROUNDS + 1)]; + rijndaelKeySetupDec(rk, K, (int)AES_KEY_BITLEN(kl)); + rijndaelDecrypt(rk, (int)AES_ROUNDS(kl), ctxt, ptxt); +} + +/* AES-CBC mode encryption algorithm + * - handle partial blocks with padding of type as above + * - assumes nonce is ready to use as-is (i.e. any + * encryption/randomization of nonce/IV is handled by the caller) + * - ptxt and ctxt can point to the same location + * - returns -1 on error or final length of output + */ + + +int +BCMROMFN(aes_cbc_encrypt_pad)(uint32 *rk, + const size_t key_len, + const uint8 *nonce, + const size_t data_len, + const uint8 *ptxt, + uint8 *ctxt, + uint8 padd_type) +{ + + uint8 tmp[AES_BLOCK_SZ]; + uint32 encrypt_len = 0; + uint32 j; + + /* First block get XORed with nonce/IV */ + const unsigned char *iv = nonce; + unsigned char *crypt_data = ctxt; + const unsigned char *plain_data = ptxt; + uint32 remaining = (uint32)data_len; + + while (remaining >= AES_BLOCK_SZ) + { + xor_128bit_block(iv, plain_data, tmp); + aes_block_encrypt((int)AES_ROUNDS(key_len), rk, tmp, crypt_data); + remaining -= AES_BLOCK_SZ; + iv = crypt_data; + crypt_data += AES_BLOCK_SZ; + plain_data += AES_BLOCK_SZ; + encrypt_len += AES_BLOCK_SZ; + } + + if (padd_type == NO_PADDING) + return encrypt_len; + + if (remaining) { + for (j = 0; j < remaining; j++) + { + tmp[j] = plain_data[j] ^ iv[j]; + } + } + switch (padd_type) + { + case PAD_LEN_PADDING: + for (j = remaining; j < AES_BLOCK_SZ; j++) { + tmp[j] = (AES_BLOCK_SZ - remaining) ^ iv[j]; + } + break; + default: + return -1; + } + + aes_block_encrypt((int)AES_ROUNDS(key_len), rk, tmp, crypt_data); + encrypt_len += AES_BLOCK_SZ; + + return (encrypt_len); +} + +/* AES-CBC mode encryption algorithm + * - does not handle partial blocks + * - assumes nonce is ready to use as-is (i.e. any + * encryption/randomization of nonce/IV is handled by the caller) + * - ptxt and ctxt can point to the same location + * - returns -1 on error + */ + +int +BCMROMFN(aes_cbc_encrypt)(uint32 *rk, + const size_t key_len, + const uint8 *nonce, + const size_t data_len, + const uint8 *ptxt, + uint8 *ctxt) +{ + if (data_len % AES_BLOCK_SZ) return (-1); + if (data_len < AES_BLOCK_SZ) return (-1); + + return aes_cbc_encrypt_pad(rk, key_len, nonce, data_len, ptxt, ctxt, NO_PADDING); +} + + +/* AES-CBC mode decryption algorithm + * - handle partial plaintext blocks with padding + * - ptxt and ctxt can point to the same location + * - returns -1 on error + */ +int +BCMROMFN(aes_cbc_decrypt_pad)(uint32 *rk, + const size_t key_len, + const uint8 *nonce, + const size_t data_len, + const uint8 *ctxt, + uint8 *ptxt, + uint8 padd_type) +{ + uint8 tmp[AES_BLOCK_SZ]; + uint32 remaining = (uint32)data_len; + /* First block get XORed with nonce/IV */ + const unsigned char *iv = nonce; + const unsigned char *crypt_data = ctxt; + uint32 plaintext_len = 0; + unsigned char *plain_data = ptxt; + + if (data_len % AES_BLOCK_SZ) return (-1); + if (data_len < AES_BLOCK_SZ) return (-1); + + while (remaining >= AES_BLOCK_SZ) + { + aes_block_decrypt((int)AES_ROUNDS(key_len), rk, crypt_data, tmp); + xor_128bit_block(tmp, iv, plain_data); + remaining -= AES_BLOCK_SZ; + iv = crypt_data; + crypt_data += AES_BLOCK_SZ; + plain_data += AES_BLOCK_SZ; + plaintext_len += AES_BLOCK_SZ; + } + if (padd_type == PAD_LEN_PADDING) + plaintext_len -= ptxt[plaintext_len -1]; + return (plaintext_len); +} + +int +BCMROMFN(aes_cbc_decrypt)(uint32 *rk, + const size_t key_len, + const uint8 *nonce, + const size_t data_len, + const uint8 *ctxt, + uint8 *ptxt) +{ + + return aes_cbc_decrypt_pad(rk, key_len, nonce, data_len, ctxt, ptxt, NO_PADDING); + +} + + +/* AES-CTR mode encryption/decryption algorithm + * - max data_len is (AES_BLOCK_SZ * 2^16) + * - nonce must be AES_BLOCK_SZ bytes + * - assumes nonce is ready to use as-is (i.e. any + * encryption/randomization of nonce/IV is handled by the caller) + * - ptxt and ctxt can point to the same location + * - returns -1 on error + */ +int +BCMROMFN(aes_ctr_crypt)(unsigned int *rk, + const size_t key_len, + const uint8 *nonce, + const size_t data_len, + const uint8 *ptxt, + uint8 *ctxt) +{ + size_t k; + uint8 tmp[AES_BLOCK_SZ], ctr[AES_BLOCK_SZ]; + + if (data_len > (AES_BLOCK_SZ * AES_CTR_MAXBLOCKS)) return (-1); + + bcopy(nonce, ctr, AES_BLOCK_SZ); + + for (k = 0; k < (data_len / AES_BLOCK_SZ); k++) { + aes_block_encrypt((int)AES_ROUNDS(key_len), rk, ctr, tmp); + xor_128bit_block(ptxt, tmp, ctxt); + ctr[AES_BLOCK_SZ-1]++; + if (!ctr[AES_BLOCK_SZ - 1]) ctr[AES_BLOCK_SZ - 2]++; + ptxt += AES_BLOCK_SZ; + ctxt += AES_BLOCK_SZ; + } + /* handle partial block */ + if (data_len%AES_BLOCK_SZ) { + aes_block_encrypt((int)AES_ROUNDS(key_len), rk, ctr, tmp); + for (k = 0; k < (data_len % AES_BLOCK_SZ); k++) + ctxt[k] = ptxt[k] ^ tmp[k]; + } + + return (0); +} + + +/* AES-CCM mode MAC calculation + * - computes AES_CCM_AUTH_LEN MAC + * - nonce must be AES_CCM_NONCE_LEN bytes + * - returns -1 on error + */ + +int +BCMROMFN(aes_ccm_mac)(unsigned int *rk, + const size_t key_len, + const uint8 *nonce, + const size_t aad_len, + const uint8 *aad, + const size_t data_len, + const uint8 *ptxt, + uint8 *mac) +{ + uint8 B_0[AES_BLOCK_SZ], X[AES_BLOCK_SZ]; + size_t j, k; + + if (aad_len > AES_CCM_AAD_MAX_LEN) return (-1); + + pres("aes_ccm_mac: nonce:", AES_CCM_NONCE_LEN, nonce); + pres("aes_ccm_mac: aad:", aad_len, aad); + pres("aes_ccm_mac: input:", data_len, ptxt); + + /* B_0 = Flags || Nonce || l(m) */ + B_0[0] = AES_CCM_AUTH_FLAGS; + if (aad_len) + B_0[0] |= AES_CCM_AUTH_AAD_FLAG; + bcopy(nonce, &B_0[1], AES_CCM_NONCE_LEN); + B_0[AES_BLOCK_SZ - 2] = (uint8)(data_len >> 8) & 0xff; + B_0[AES_BLOCK_SZ - 1] = (uint8)(data_len & 0xff); + + /* X_1 := E( K, B_0 ) */ + pres("aes_ccm_mac: CBC IV in:", AES_BLOCK_SZ, B_0); + aes_block_encrypt((int)AES_ROUNDS(key_len), rk, B_0, X); + pres("aes_ccm_mac: CBC IV out:", AES_BLOCK_SZ, X); + + /* X_i + 1 := E( K, X_i XOR B_i ) for i = 1, ..., n */ + + /* first the AAD */ + if (aad_len) { + pres("aes_ccm_mac: aad:", aad_len, aad); + X[0] ^= (aad_len >> 8) & 0xff; + X[1] ^= aad_len & 0xff; + k = 2; + j = aad_len; + while (j--) { + X[k] ^= *aad++; + k++; + if (k == AES_BLOCK_SZ) { + pres("aes_ccm_mac: After xor (full block aad):", AES_BLOCK_SZ, X); + aes_block_encrypt((int)AES_ROUNDS(key_len), rk, X, X); + pres("aes_ccm_mac: After AES (full block aad):", AES_BLOCK_SZ, X); + k = 0; + } + } + /* handle partial last block */ + if (k % AES_BLOCK_SZ) { + pres("aes_ccm_mac: After xor (partial block aad):", AES_BLOCK_SZ, X); + aes_block_encrypt((int)AES_ROUNDS(key_len), rk, X, X); + pres("aes_ccm_mac: After AES (partial block aad):", AES_BLOCK_SZ, X); + } + } + + /* then the message data */ + for (k = 0; k < (data_len / AES_BLOCK_SZ); k++) { + xor_128bit_block(X, ptxt, X); + pres("aes_ccm_mac: After xor (full block data):", AES_BLOCK_SZ, X); + ptxt += AES_BLOCK_SZ; + aes_block_encrypt((int)AES_ROUNDS(key_len), rk, X, X); + pres("aes_ccm_mac: After AES (full block data):", AES_BLOCK_SZ, X); + } + /* last block may be partial, padding is implicit in this xor */ + for (k = 0; k < (data_len % AES_BLOCK_SZ); k++) + X[k] ^= *ptxt++; + if (data_len % AES_BLOCK_SZ) { + pres("aes_ccm_mac: After xor (final block data):", AES_BLOCK_SZ, X); + aes_block_encrypt((int)AES_ROUNDS(key_len), rk, X, X); + pres("aes_ccm_mac: After AES (final block data):", AES_BLOCK_SZ, X); + } + + /* T := first-M-bytes( X_n+1 ) */ + bcopy(X, mac, AES_CCM_AUTH_LEN); + pres("aes_ccm_mac: MAC:", AES_CCM_AUTH_LEN, mac); + + return (0); +} + +/* AES-CCM mode encryption + * - computes AES_CCM_AUTH_LEN MAC and then encrypts ptxt and MAC + * - nonce must be AES_CCM_NONCE_LEN bytes + * - ctxt must have sufficient tailroom for CCM MAC + * - ptxt and ctxt can point to the same location + * - returns -1 on error + */ + +int +BCMROMFN(aes_ccm_encrypt)(unsigned int *rk, + const size_t key_len, + const uint8 *nonce, + const size_t aad_len, + const uint8 *aad, + const size_t data_len, + const uint8 *ptxt, + uint8 *ctxt, + uint8 *mac) +{ + uint8 A[AES_BLOCK_SZ], X[AES_BLOCK_SZ]; + + /* initialize counter */ + A[0] = AES_CCM_CRYPT_FLAGS; + bcopy(nonce, &A[1], AES_CCM_NONCE_LEN); + A[AES_BLOCK_SZ-2] = 0; + A[AES_BLOCK_SZ-1] = 0; + pres("aes_ccm_encrypt: initial counter:", AES_BLOCK_SZ, A); + + /* calculate and encrypt MAC */ + if (aes_ccm_mac(rk, key_len, nonce, aad_len, aad, data_len, ptxt, X)) + return (-1); + pres("aes_ccm_encrypt: MAC:", AES_CCM_AUTH_LEN, X); + if (aes_ctr_crypt(rk, key_len, A, AES_CCM_AUTH_LEN, X, X)) + return (-1); + pres("aes_ccm_encrypt: encrypted MAC:", AES_CCM_AUTH_LEN, X); + bcopy(X, mac, AES_CCM_AUTH_LEN); + + /* encrypt data */ + A[AES_BLOCK_SZ - 1] = 1; + if (aes_ctr_crypt(rk, key_len, A, data_len, ptxt, ctxt)) + return (-1); + pres("aes_ccm_encrypt: encrypted data:", data_len, ctxt); + + return (0); +} + +/* AES-CCM mode decryption + * - decrypts ctxt, then computes AES_CCM_AUTH_LEN MAC and checks it against + * then decrypted MAC + * - the decrypted MAC is included in ptxt + * - nonce must be AES_CCM_NONCE_LEN bytes + * - ptxt and ctxt can point to the same location + * - returns -1 on error + */ + +int +BCMROMFN(aes_ccm_decrypt)(unsigned int *rk, + const size_t key_len, + const uint8 *nonce, + const size_t aad_len, + const uint8 *aad, + const size_t data_len, + const uint8 *ctxt, + uint8 *ptxt) +{ + uint8 A[AES_BLOCK_SZ], X[AES_BLOCK_SZ]; + + /* initialize counter */ + A[0] = AES_CCM_CRYPT_FLAGS; + bcopy(nonce, &A[1], AES_CCM_NONCE_LEN); + A[AES_BLOCK_SZ - 2] = 0; + A[AES_BLOCK_SZ - 1] = 1; + pres("aes_ccm_decrypt: initial counter:", AES_BLOCK_SZ, A); + + /* decrypt data */ + if (aes_ctr_crypt(rk, key_len, A, data_len-AES_CCM_AUTH_LEN, ctxt, ptxt)) + return (-1); + pres("aes_ccm_decrypt: decrypted data:", data_len-AES_CCM_AUTH_LEN, ptxt); + + /* decrypt MAC */ + A[AES_BLOCK_SZ - 2] = 0; + A[AES_BLOCK_SZ - 1] = 0; + if (aes_ctr_crypt(rk, key_len, A, AES_CCM_AUTH_LEN, + ctxt+data_len-AES_CCM_AUTH_LEN, ptxt + data_len - AES_CCM_AUTH_LEN)) + return (-1); + pres("aes_ccm_decrypt: decrypted MAC:", AES_CCM_AUTH_LEN, + ptxt + data_len - AES_CCM_AUTH_LEN); + + /* calculate MAC */ + if (aes_ccm_mac(rk, key_len, nonce, aad_len, aad, + data_len - AES_CCM_AUTH_LEN, ptxt, X)) + return (-1); + pres("aes_ccm_decrypt: MAC:", AES_CCM_AUTH_LEN, X); + if (bcmp(X, ptxt + data_len - AES_CCM_AUTH_LEN, AES_CCM_AUTH_LEN) != 0) + return (-1); + + return (0); +} + +/* AES-CCMP mode encryption algorithm + * - packet buffer should be an 802.11 MPDU, starting with Frame Control, + * and including the CCMP extended IV + * - encrypts in-place + * - packet buffer must have sufficient tailroom for CCMP MAC + * - returns -1 on error + */ + + +int +BCMROMFN(aes_ccmp_encrypt)(unsigned int *rk, + const size_t key_len, + const size_t data_len, + uint8 *p, + bool legacy, + uint8 nonce_1st_byte) +{ + uint8 nonce[AES_CCMP_NONCE_LEN], aad[AES_CCMP_AAD_MAX_LEN]; + struct dot11_header *h = (struct dot11_header*) p; + uint la, lh; + int status = 0; + + aes_ccmp_cal_params(h, legacy, nonce_1st_byte, nonce, aad, &la, &lh); + + pres("aes_ccmp_encrypt: aad:", la, aad); + + /* + * MData: + * B3..Bn, n = floor((l(m)+(AES_BLOCK_SZ-1))/AES_BLOCK_SZ) + 2 + * m || pad(m) + */ + + status = aes_ccm_encrypt(rk, key_len, nonce, la, aad, + data_len - lh, p + lh, p + lh, p + data_len); + + pres("aes_ccmp_encrypt: Encrypted packet with MAC:", + data_len+AES_CCMP_AUTH_LEN, p); + + if (status) return (AES_CCMP_ENCRYPT_ERROR); + else return (AES_CCMP_ENCRYPT_SUCCESS); +} + +int +BCMROMFN(aes_ccmp_decrypt)(unsigned int *rk, + const size_t key_len, + const size_t data_len, + uint8 *p, + bool legacy, + uint8 nonce_1st_byte) +{ + uint8 nonce[AES_CCMP_NONCE_LEN], aad[AES_CCMP_AAD_MAX_LEN]; + struct dot11_header *h = (struct dot11_header *)p; + uint la, lh; + int status = 0; + + aes_ccmp_cal_params(h, legacy, nonce_1st_byte, nonce, aad, &la, &lh); + + pres("aes_ccmp_decrypt: aad:", la, aad); + + /* + * MData: + * B3..Bn, n = floor((l(m)+(AES_BLOCK_SZ-1))/AES_BLOCK_SZ) + 2 + * m || pad(m) + */ + + status = aes_ccm_decrypt(rk, key_len, nonce, la, aad, + data_len - lh, p + lh, p + lh); + + pres("aes_ccmp_decrypt: Decrypted packet with MAC:", data_len, p); + + if (status) return (AES_CCMP_DECRYPT_MIC_FAIL); + else return (AES_CCMP_DECRYPT_SUCCESS); +} + +void +BCMROMFN(aes_ccmp_cal_params)(struct dot11_header *h, bool legacy, + uint8 nonce_1st_byte, uint8 *nonce, uint8 *aad, uint *la, uint *lh) +{ + uint8 *iv_data; + uint16 fc, subtype; + uint16 seq, qc = 0; + uint addlen = 0; + bool wds, qos; + + bzero(nonce, AES_CCMP_NONCE_LEN); + bzero(aad, AES_CCMP_AAD_MAX_LEN); + + fc = ltoh16(h->fc); + subtype = (fc & FC_SUBTYPE_MASK) >> FC_SUBTYPE_SHIFT; + wds = ((fc & (FC_TODS | FC_FROMDS)) == (FC_TODS | FC_FROMDS)); + /* all QoS subtypes have the FC_SUBTYPE_QOS_DATA bit set */ + qos = (FC_TYPE(fc) == FC_TYPE_DATA) && (subtype & FC_SUBTYPE_QOS_DATA); + + if (qos) { + qc = ltoh16(*((uint16 *)((uchar *)h + + (wds ? DOT11_A4_HDR_LEN : DOT11_A3_HDR_LEN)))); + } + + if (wds) { + dbg(("aes_ccmp_cal_params: A4 present\n")); + addlen += ETHER_ADDR_LEN; + } + if (qos) { + dbg(("aes_ccmp_cal_params: QC present\n")); + addlen += DOT11_QOS_LEN; + } + + /* length of MPDU header, including IV */ + *lh = DOT11_A3_HDR_LEN + DOT11_IV_AES_CCM_LEN + addlen; + /* length of AAD */ + *la = AES_CCMP_AAD_MIN_LEN + addlen; + /* pointer to IV */ + iv_data = (uint8 *)h + DOT11_A3_HDR_LEN + addlen; + + *nonce++ = nonce_1st_byte; + + bcopy((uchar *)&h->a2, nonce, ETHER_ADDR_LEN); + nonce += ETHER_ADDR_LEN; + + /* PN[5] */ + *nonce++ = iv_data[7]; + /* PN[4] */ + *nonce++ = iv_data[6]; + /* PN[3] */ + *nonce++ = iv_data[5]; + /* PN[2] */ + *nonce++ = iv_data[4]; + /* PN[1] */ + *nonce++ = iv_data[1]; + /* PN[0] */ + *nonce++ = iv_data[0]; + + pres("aes_ccmp_cal_params: nonce:", AES_CCM_NONCE_LEN, nonce - AES_CCM_NONCE_LEN); + + /* B1..B2 = l(aad) || aad || pad(aad) */ + /* aad: maskedFC || A1 || A2 || A3 || maskedSC || A4 || maskedQC */ + + if (!legacy) { +#ifdef MFP + /* For a management frame, don't mask the the subtype bits */ + if (nonce_1st_byte & AES_CCMP_NF_MANAGEMENT) + fc &= (FC_SUBTYPE_MASK | AES_CCMP_FC_MASK); + else +#endif /* MFP */ + fc &= AES_CCMP_FC_MASK; + } else { + /* 802.11i Draft 3 inconsistencies: + * Clause 8.3.4.4.3: "FC ­ MPDU Frame Control field, with Retry bit masked + * to zero." (8.3.4.4.3). + * Figure 29: "FC ­ MPDU Frame Control field, with Retry, MoreData, CF-ACK, + * CF-POLL bits masked to zero." + * F.10.4.1: "FC ­ MPDU Frame Control field, with Retry, MoreData, + * PwrMgmt bits masked to zero." + */ + + /* Our implementation: match 8.3.4.4.3 */ + fc &= AES_CCMP_LEGACY_FC_MASK; + } + *aad++ = (uint8)(fc & 0xff); + *aad++ = (uint8)((fc >> 8) & 0xff); + + bcopy((uchar *)&h->a1, aad, 3*ETHER_ADDR_LEN); + aad += 3*ETHER_ADDR_LEN; + + seq = ltoh16(h->seq); + if (!legacy) { + seq &= AES_CCMP_SEQ_MASK; + } else { + seq &= AES_CCMP_LEGACY_SEQ_MASK; + } + + *aad++ = (uint8)(seq & 0xff); + *aad++ = (uint8)((seq >> 8) & 0xff); + + if (wds) { + bcopy((uchar *)&h->a4, aad, ETHER_ADDR_LEN); + aad += ETHER_ADDR_LEN; + } + if (qos) { + if (!legacy) { + /* 802.11i Draft 7.0 inconsistencies: + * Clause 8.3.3.3.2: "QC ­ The Quality of Service Control, a + * two-octet field that includes the MSDU priority, reserved + * for future use." + * I.7.4: TID portion of QoS + */ + + /* Our implementation: match the test vectors */ + qc &= AES_CCMP_QOS_MASK; + *aad++ = (uint8)(qc & 0xff); + *aad++ = (uint8)((qc >> 8) & 0xff); + } else { + /* 802.11i Draft 3.0 inconsistencies: */ + /* Clause 8.3.4.4.3: "QC ­ The QoS Control, if present." */ + /* Figure 30: "QC ­ The QoS TC from QoS Control, if present." */ + /* F.10.4.1: "QC ­ The QoS TC from QoS Control, if present." */ + + /* Our implementation: Match clause 8.3.4.4.3 */ + qc &= AES_CCMP_LEGACY_QOS_MASK; + *aad++ = (uint8)(qc & 0xff); + *aad++ = (uint8)((qc >> 8) & 0xff); + } + } +} + +#if defined(WLFBT) +/* 128-bit long string of zeros */ +static uint8 Z128[] = { + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 +}; + +/* CMAC Subkey generation polynomial for 128-bit blocks */ +static uint8 R128[] = { + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x87 +}; + +/* AES-CMAC subkey generation + * - computes subkeys K1 and K2 of length AES_BLOCK_SZ + */ +void +aes_cmac_gen_subkeys(const size_t kl, const uint8 *K, uint8 *K1, uint8 *K2) +{ + uint8 L[AES_BLOCK_SZ]; + uint8 high, low; + int i; + + /* L = CIPHK(0b) */ + aes_encrypt(kl, K, Z128, L); + pres("Key", kl, K); + pres("CIPHK", AES_BLOCK_SZ, L); + + /* If MSB1(L) = 0, then K1 = L << 1 */ + /* Else K1 = (L << 1) ⊕ Rb */ + high = 0; + for (i = AES_BLOCK_SZ-1; i >= 0; i--) { + low = L[i] << 1; + K1[i] = low | high; + high = (L[i] & 0x80) >> 7; + } + if ((L[0] & 0x80) != 0) xor_128bit_block(K1, R128, K1); + pres("K1", AES_BLOCK_SZ, K1); + + /* If MSB1(K1) = 0, then K2 = K1 << 1 */ + /* Else K2 = (K1 << 1) ⊕ Rb */ + high = 0; + for (i = AES_BLOCK_SZ-1; i >= 0; i--) { + low = K1[i] << 1; + K2[i] = low | high; + high = (K1[i] & 0x80) >> 7; + } + if ((K1[0] & 0x80) != 0) xor_128bit_block(K2, R128, K2); + pres("K2", AES_BLOCK_SZ, K2); + + return; +} + +/* AES-CMAC mode calculation + * - computes AES_CMAC_AUTH_LEN MAC + * - operates on complete bytes only (i.e. data_len is in bytes) + */ + +void +aes_cmac(const size_t key_len, const uint8* K, + const uint8 *K1, const uint8 *K2, + const size_t data_len, + const uint8 *ptxt, + uint8 *mac) +{ + uint n, pblen, i; + uint8 Mn[AES_BLOCK_SZ], tmp[AES_BLOCK_SZ], C[AES_BLOCK_SZ]; + uint32 rk[4 * (AES_MAXROUNDS + 1)]; + + /* If Mlen = 0, let n = 1; else, let n = ⎡Mlen/b⎤ */ + if (data_len == 0) + n = 1; + else + n = (data_len + AES_BLOCK_SZ - 1)/AES_BLOCK_SZ; + + /* Let M1, M2, ... , Mn-1, Mn* denote the unique sequence of bit + strings such that M = M1 || M2 || ... || Mn-1 || Mn*, where M1, + M2,..., Mn-1 are complete blocks. If Mn* is a complete block, let + Mn = K1 ⊕ Mn*; else, let Mn = K2 ⊕ (Mn*||10j), where j = nb-Mlen-1 + */ + + if (data_len == (n * AES_BLOCK_SZ)) { + /* Mn* is a complete block */ + xor_128bit_block(K1, &(ptxt[(n-1)*AES_BLOCK_SZ]), Mn); + } else { + /* Mn* is a partial block, pad with 0s and use K2 */ + pblen = data_len - ((n-1)*AES_BLOCK_SZ); + for (i = 0; i < pblen; i++) Mn[i] = ptxt[((n-1)*AES_BLOCK_SZ) + i]; + Mn[pblen] = 0x80; + for (i = pblen+1; i < AES_BLOCK_SZ; i++) Mn[i] = 0; + xor_128bit_block(K2, Mn, Mn); + } + + /* Let C0 = 0b */ + bzero(C, AES_BLOCK_SZ); + + /* For i = 1 to n, let Ci = CIPHK(Ci-1 ⊕ Mi) */ + rijndaelKeySetupEnc(rk, K, (int)AES_KEY_BITLEN(key_len)); + for (i = 1; i < n; i++) { + xor_128bit_block(C, &(ptxt[(i-1)*AES_BLOCK_SZ]), tmp); + aes_block_encrypt((int)AES_ROUNDS(key_len), rk, tmp, C); + } + xor_128bit_block(C, Mn, tmp); + aes_block_encrypt((int)AES_ROUNDS(key_len), rk, tmp, C); + + /* Let T = MSBTlen(Cn) */ + bcopy(C, mac, AES_CMAC_AUTH_LEN); + + return; +} + + +void +aes_cmac_calc(const uint8 *data, const size_t data_length, const uint8 *mic_key, + const size_t key_len, uint8 *mic) +{ + uint8 K1[AES_BLOCK_SZ], K2[AES_BLOCK_SZ]; + + aes_cmac_gen_subkeys(key_len, mic_key, K1, K2); + aes_cmac(key_len, mic_key, K1, K2, data_length, data, mic); +} +#endif + +#ifdef BCMAES_GENTABLE +/* AES table expansion for rijndael-alg-fst.c + * - can compute all 10 tables needed by rijndael-alg-fst.c + * - only stores table entries for non-NULL entries in "at" structure, so + * can be used to generate a subset of the tables if only some are needed + */ +void +aes_gen_tables(const uint8 *S, const uint8 *Si, aes_tables_t at) +{ + int k; + uint8 s2, s3; + uint8 si2, si4, si8, si9, sib, sid, sie; + uint32 Te0tmp, Td0tmp; + + for (k = 0; k < AES_SBOX_ENTRIES; k++) { + /* 2 X S[k] */ + XTIME(S[k], s2); + + /* 3 X S[k] */ + s3 = s2 ^ S[k]; + + /* 2 X Si[k] */ + XTIME(Si[k], si2); + + /* 4 X Si[k] */ + XTIME(si2, si4); + + /* 8 X Si[k] */ + XTIME(si4, si8); + + /* 9 X S[k] */ + si9 = si8 ^ Si[k]; + + /* 11 X S[k] */ + sib = si9 ^ si2; + + /* 13 X S[k] */ + sid = si8 ^ si4 ^ Si[k]; + + /* 14 X S[k] */ + sie = si8 ^ si4 ^ si2; + + Te0tmp = (s2 << 24) | (S[k] << 16) | (S[k] << 8) | s3; + if (at.Te0 != NULL) + at.Te0[k] = Te0tmp; + if (at.Te1 != NULL) + at.Te1[k] = ROTATE(Te0tmp, 24); + if (at.Te2 != NULL) + at.Te2[k] = ROTATE(Te0tmp, 16); + if (at.Te3 != NULL) + at.Te3[k] = ROTATE(Te0tmp, 8); + if (at.Te4 != NULL) + at.Te4[k] = (S[k] << 24) | (S[k] << 16) | (S[k] << 8) | S[k]; + + Td0tmp = (sie << 24) | (si9 << 16) | (sid << 8) | sib; + if (at.Td0 != NULL) + at.Td0[k] = Td0tmp; + if (at.Td1 != NULL) + at.Td1[k] = ROTATE(Td0tmp, 24); + if (at.Td2 != NULL) + at.Td2[k] = ROTATE(Td0tmp, 16); + if (at.Td3 != NULL) + at.Td3[k] = ROTATE(Td0tmp, 8); + if (at.Td4 != NULL) + at.Td4[k] = (Si[k] << 24) | (Si[k] << 16) | (Si[k] << 8) | Si[k]; + } +} +#endif /* BCMAES_GENTABLE */ + +#ifdef BCMAES_TEST +#include "aes_vectors.h" + +static uint8 +get_nonce_1st_byte(struct dot11_header *h) +{ + uint16 fc, subtype; + uint16 qc; + bool wds, qos; + + qc = 0; + fc = ltoh16(h->fc); + subtype = (fc & FC_SUBTYPE_MASK) >> FC_SUBTYPE_SHIFT; + wds = ((fc & (FC_TODS | FC_FROMDS)) == (FC_TODS | FC_FROMDS)); + /* all QoS subtypes have the FC_SUBTYPE_QOS_DATA bit set */ + qos = (FC_TYPE(fc) == FC_TYPE_DATA) && (subtype & FC_SUBTYPE_QOS_DATA); + + if (qos) { + qc = ltoh16(*((uint16 *)((uchar *)h + + (wds ? DOT11_A4_HDR_LEN : DOT11_A3_HDR_LEN)))); + } + + /* nonce = priority octet || A2 || PN, !legacy */ + return (uint8)(QOS_TID(qc) & 0x0f); +} + +int main(int argc, char **argv) +{ + uint8 output[BUFSIZ], input2[BUFSIZ]; + int retv, k, fail = 0; + uint32 rk[4 * (AES_MAXROUNDS + 1)]; + +#ifdef BCMAES_GENTABLE + uint32 Te0test[256], Te1test[256], Te2test[256], Te3test[256], Te4test[256]; + uint32 Td0test[256], Td1test[256], Td2test[256], Td3test[256], Td4test[256]; + + aes_tables_t at = { + Te0test, Te1test, Te2test, Te3test, Te4test, + Td0test, Td1test, Td2test, Td3test, Td4test + }; +#endif /* BCMAES_GENTABLE */ + + /* AES-CBC */ + dbg(("%s: AES-CBC\n", *argv)); + for (k = 0; k < NUM_CBC_VECTORS; k++) { + rijndaelKeySetupEnc(rk, aes_cbc_vec[k].key, + AES_KEY_BITLEN(aes_cbc_vec[k].kl)); + retv = aes_cbc_encrypt(rk, aes_cbc_vec[k].kl, + aes_cbc_vec[k].nonce, aes_cbc_vec[k].il, + aes_cbc_vec[k].input, output); + pres("AES CBC Encrypt: ", aes_cbc_vec[k].il, output); + + if (retv == -1) { + dbg(("%s: aes_cbc_encrypt failed\n", *argv)); + fail++; + } + if (bcmp(output, aes_cbc_vec[k].ref, aes_cbc_vec[k].il) != 0) { + dbg(("%s: aes_cbc_encrypt failed\n", *argv)); + fail++; + } + + rijndaelKeySetupDec(rk, aes_cbc_vec[k].key, + AES_KEY_BITLEN(aes_cbc_vec[k].kl)); + retv = aes_cbc_decrypt(rk, aes_cbc_vec[k].kl, + aes_cbc_vec[k].nonce, aes_cbc_vec[k].il, + aes_cbc_vec[k].ref, input2); + pres("AES CBC Decrypt: ", aes_cbc_vec[k].il, input2); + + if (retv == -1) { + dbg(("%s: aes_cbc_decrypt failed\n", *argv)); + fail++; + } + if (bcmp(aes_cbc_vec[k].input, input2, aes_cbc_vec[k].il) != 0) { + dbg(("%s: aes_cbc_decrypt failed\n", *argv)); + fail++; + } + } + + /* AES-CTR, full blocks */ + dbg(("%s: AES-CTR, full blocks\n", *argv)); + for (k = 0; k < NUM_CTR_VECTORS; k++) { + rijndaelKeySetupEnc(rk, aes_ctr_vec[k].key, + AES_KEY_BITLEN(aes_ctr_vec[k].kl)); + retv = aes_ctr_crypt(rk, aes_ctr_vec[k].kl, + aes_ctr_vec[k].nonce, aes_ctr_vec[k].il, + aes_ctr_vec[k].input, output); + pres("AES CTR Encrypt: ", aes_ctr_vec[k].il, output); + + if (retv) { + dbg(("%s: aes_ctr_crypt failed\n", *argv)); + fail++; + } + if (bcmp(output, aes_ctr_vec[k].ref, aes_ctr_vec[k].il) != 0) { + dbg(("%s: aes_ctr_crypt encrypt failed\n", *argv)); + fail++; + } + + rijndaelKeySetupEnc(rk, aes_ctr_vec[k].key, + AES_KEY_BITLEN(aes_ctr_vec[k].kl)); + retv = aes_ctr_crypt(rk, aes_ctr_vec[k].kl, + aes_ctr_vec[k].nonce, aes_ctr_vec[k].il, + aes_ctr_vec[k].ref, input2); + pres("AES CTR Decrypt: ", aes_ctr_vec[k].il, input2); + + if (retv) { + dbg(("%s: aes_ctr_crypt failed\n", *argv)); + fail++; + } + if (bcmp(aes_ctr_vec[k].input, input2, aes_ctr_vec[k].il) != 0) { + dbg(("%s: aes_ctr_crypt decrypt failed\n", *argv)); + fail++; + } + } + + /* AES-CTR, one partial block */ + dbg(("%s: AES-CTR, one partial block\n", *argv)); + for (k = 0; k < NUM_CTR_VECTORS; k++) { + rijndaelKeySetupEnc(rk, aes_ctr_vec[k].key, + AES_KEY_BITLEN(aes_ctr_vec[k].kl)); + retv = aes_ctr_crypt(rk, aes_ctr_vec[k].kl, + aes_ctr_vec[k].nonce, k+1, + aes_ctr_vec[k].input, output); + pres("AES CTR Partial Block Encrypt: ", k+1, output); + + if (retv) { + dbg(("%s: aes_ctr_crypt failed\n", *argv)); + fail++; + } + if (bcmp(output, aes_ctr_vec[k].ref, k + 1) != 0) { + dbg(("%s: aes_ctr_crypt encrypt failed\n", *argv)); + fail++; + } + + rijndaelKeySetupEnc(rk, aes_ctr_vec[k].key, + AES_KEY_BITLEN(aes_ctr_vec[k].kl)); + retv = aes_ctr_crypt(rk, aes_ctr_vec[k].kl, + aes_ctr_vec[k].nonce, k + 1, + aes_ctr_vec[k].ref, input2); + pres("AES CTR Partial Block Decrypt: ", k + 1, input2); + + if (retv) { + dbg(("%s: aes_ctr_crypt failed\n", *argv)); + fail++; + } + if (bcmp(aes_ctr_vec[k].input, input2, k + 1) != 0) { + dbg(("%s: aes_ctr_crypt decrypt failed\n", *argv)); + fail++; + } + } + + /* AES-CTR, multi-block partial */ + dbg(("%s: AES-CTR, multi-block partial\n", *argv)); + for (k = 0; k < NUM_CTR_VECTORS; k++) { + rijndaelKeySetupEnc(rk, aes_ctr_vec[k].key, + AES_KEY_BITLEN(aes_ctr_vec[k].kl)); + retv = aes_ctr_crypt(rk, aes_ctr_vec[k].kl, + aes_ctr_vec[k].nonce, AES_BLOCK_SZ + NUM_CTR_VECTORS+k+1, + aes_ctr_vec[k].input, output); + pres("AES CTR Partial Multi-Block Encrypt: ", + AES_BLOCK_SZ + NUM_CTR_VECTORS + k + 1, output); + + if (retv) { + dbg(("%s: aes_ctr_crypt failed\n", *argv)); + fail++; + } + if (bcmp(output, aes_ctr_vec[k].ref, AES_BLOCK_SZ+NUM_CTR_VECTORS + k + 1) != 0) { + dbg(("%s: aes_ctr_crypt encrypt failed\n", *argv)); + fail++; + } + + rijndaelKeySetupEnc(rk, aes_ctr_vec[k].key, + AES_KEY_BITLEN(aes_ctr_vec[k].kl)); + retv = aes_ctr_crypt(rk, aes_ctr_vec[k].kl, + aes_ctr_vec[k].nonce, AES_BLOCK_SZ + NUM_CTR_VECTORS + k + 1, + aes_ctr_vec[k].ref, input2); + pres("AES CTR Partial Multi-Block Decrypt: ", + AES_BLOCK_SZ + NUM_CTR_VECTORS + k + 1, input2); + + if (retv) { + dbg(("%s: aes_ctr_crypt failed\n", *argv)); + fail++; + } + if (bcmp(aes_ctr_vec[k].input, input2, + AES_BLOCK_SZ + NUM_CTR_VECTORS + k + 1) != 0) { + dbg(("%s: aes_ctr_crypt decrypt failed\n", *argv)); + fail++; + } + } + + /* AES-CCM */ + dbg(("%s: AES-CCM\n", *argv)); + for (k = 0; k < NUM_CCM_VECTORS; k++) { + rijndaelKeySetupEnc(rk, aes_ccm_vec[k].key, + AES_KEY_BITLEN(aes_ccm_vec[k].kl)); + retv = aes_ccm_mac(rk, aes_ccm_vec[k].kl, + aes_ccm_vec[k].nonce, aes_ccm_vec[k].al, + aes_ccm_vec[k].aad, aes_ccm_vec[k].il, + aes_ccm_vec[k].input, output); + + if (retv) { + dbg(("%s: aes_ccm_mac failed\n", *argv)); + fail++; + } + if (bcmp(output, aes_ccm_vec[k].mac, AES_CCM_AUTH_LEN) != 0) { + dbg(("%s: aes_ccm_mac failed\n", *argv)); + fail++; + } + + rijndaelKeySetupEnc(rk, aes_ccm_vec[k].key, + AES_KEY_BITLEN(aes_ccm_vec[k].kl)); + retv = aes_ccm_encrypt(rk, aes_ccm_vec[k].kl, + aes_ccm_vec[k].nonce, aes_ccm_vec[k].al, + aes_ccm_vec[k].aad, aes_ccm_vec[k].il, + aes_ccm_vec[k].input, output, &output[aes_ccm_vec[k].il]); + pres("AES CCM Encrypt: ", aes_ccm_vec[k].il + AES_CCM_AUTH_LEN, output); + + if (retv) { + dbg(("%s: aes_ccm_encrypt failed\n", *argv)); + fail++; + } + if (bcmp(output, aes_ccm_vec[k].ref, aes_ccm_vec[k].il + AES_CCM_AUTH_LEN) != 0) { + dbg(("%s: aes_ccm_encrypt failed\n", *argv)); + fail++; + } + + rijndaelKeySetupEnc(rk, aes_ccm_vec[k].key, + AES_KEY_BITLEN(aes_ccm_vec[k].kl)); + retv = aes_ccm_decrypt(rk, aes_ccm_vec[k].kl, + aes_ccm_vec[k].nonce, aes_ccm_vec[k].al, + aes_ccm_vec[k].aad, aes_ccm_vec[k].il + AES_CCM_AUTH_LEN, + aes_ccm_vec[k].ref, input2); + pres("AES CCM Decrypt: ", aes_ccm_vec[k].il + AES_CCM_AUTH_LEN, input2); + + if (retv) { + dbg(("%s: aes_ccm_decrypt failed\n", *argv)); + fail++; + } + if (bcmp(aes_ccm_vec[k].input, input2, aes_ccm_vec[k].il) != 0) { + dbg(("%s: aes_ccm_decrypt failed\n", *argv)); + fail++; + } + } + + /* AES-CCMP */ + dbg(("%s: AES-CCMP\n", *argv)); + for (k = 0; k < NUM_CCMP_VECTORS; k++) { + uint8 nonce_1st_byte; + dbg(("%s: AES-CCMP vector %d\n", *argv, k)); + rijndaelKeySetupEnc(rk, aes_ccmp_vec[k].key, + AES_KEY_BITLEN(aes_ccmp_vec[k].kl)); + bcopy(aes_ccmp_vec[k].input, output, aes_ccmp_vec[k].il); + nonce_1st_byte = get_nonce_1st_byte((struct dot11_header *)output); + retv = aes_ccmp_encrypt(rk, aes_ccmp_vec[k].kl, + aes_ccmp_vec[k].il, output, + aes_ccmp_vec[k].flags[2], + nonce_1st_byte); + + if (retv) { + dbg(("%s: aes_ccmp_encrypt of vector %d returned error\n", *argv, k)); + fail++; + } + if (bcmp(output, aes_ccmp_vec[k].ref, + aes_ccmp_vec[k].il+AES_CCM_AUTH_LEN) != 0) { + dbg(("%s: aes_ccmp_encrypt of vector %d reference mismatch\n", *argv, k)); + fail++; + } + + rijndaelKeySetupEnc(rk, aes_ccmp_vec[k].key, + AES_KEY_BITLEN(aes_ccmp_vec[k].kl)); + bcopy(aes_ccmp_vec[k].ref, output, aes_ccmp_vec[k].il+AES_CCM_AUTH_LEN); + nonce_1st_byte = get_nonce_1st_byte((struct dot11_header *)output); + retv = aes_ccmp_decrypt(rk, aes_ccmp_vec[k].kl, + aes_ccmp_vec[k].il+AES_CCM_AUTH_LEN, output, + aes_ccmp_vec[k].flags[2], + nonce_1st_byte); + + if (retv) { + dbg(("%s: aes_ccmp_decrypt of vector %d returned error %d\n", + *argv, k, retv)); + fail++; + } + if (bcmp(output, aes_ccmp_vec[k].input, aes_ccmp_vec[k].il) != 0) { + dbg(("%s: aes_ccmp_decrypt of vector %d reference mismatch\n", *argv, k)); + fail++; + } + } + + +#ifdef BCMAES_GENTABLE + aes_gen_tables(AES_Sbox, AES_Inverse_Sbox, at); + ptable("Te0", Te0test); + ptable("Te1", Te1test); + ptable("Te2", Te2test); + ptable("Te3", Te3test); + ptable("Te4", Te4test); + + ptable("Td0", Td0test); + ptable("Td1", Td1test); + ptable("Td2", Td2test); + ptable("Td3", Td3test); + ptable("Td4", Td4test); +#endif /* BCMAES_GENTABLE */ + + fprintf(stderr, "%s: %s\n", *argv, fail ? "FAILED" : "PASSED"); + return (fail); +} + +#endif /* BCMAES_TEST */ diff --git a/release/src-rt/bcmcrypto/aes_vectors.h b/release/src-rt/bcmcrypto/aes_vectors.h new file mode 100755 index 0000000000..eafac152e1 --- /dev/null +++ b/release/src-rt/bcmcrypto/aes_vectors.h @@ -0,0 +1,1066 @@ +/* + * aes_vectors.h + * AES test vectors + * + * Copyright 2003, Broadcom Corporation + * All Rights Reserved. + * + * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation; the + * contents of this file may not be disclosed to third parties, copied or + * duplicated in any form, in whole or in part, without the prior written + * permission of Broadcom Corporation. + * + * $Id: aes_vectors.h,v 1.6.218.1 2010-05-28 15:25:49 Exp $ + */ + +#include + +/* Test vector data from NIST Special Publication 800-38A */ + +/* F.2.1 CBC-AES128.Encrypt and F.2.2 CBC-AES128.Decrypt */ +uint8 key_00[] = { + 0x2b, 0x7e, 0x15, 0x16, 0x28, 0xae, 0xd2, 0xa6, + 0xab, 0xf7, 0x15, 0x88, 0x09, 0xcf, 0x4f, 0x3c + }; + +uint8 nonce_00[] = { + 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, + 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f + }; + +uint8 input_00[] = { + 0x6b, 0xc1, 0xbe, 0xe2, 0x2e, 0x40, 0x9f, 0x96, + 0xe9, 0x3d, 0x7e, 0x11, 0x73, 0x93, 0x17, 0x2a, + 0xae, 0x2d, 0x8a, 0x57, 0x1e, 0x03, 0xac, 0x9c, + 0x9e, 0xb7, 0x6f, 0xac, 0x45, 0xaf, 0x8e, 0x51, + 0x30, 0xc8, 0x1c, 0x46, 0xa3, 0x5c, 0xe4, 0x11, + 0xe5, 0xfb, 0xc1, 0x19, 0x1a, 0x0a, 0x52, 0xef, + 0xf6, 0x9f, 0x24, 0x45, 0xdf, 0x4f, 0x9b, 0x17, + 0xad, 0x2b, 0x41, 0x7b, 0xe6, 0x6c, 0x37, 0x10 + }; + +uint8 ref_00[] = { + 0x76, 0x49, 0xab, 0xac, 0x81, 0x19, 0xb2, 0x46, + 0xce, 0xe9, 0x8e, 0x9b, 0x12, 0xe9, 0x19, 0x7d, + 0x50, 0x86, 0xcb, 0x9b, 0x50, 0x72, 0x19, 0xee, + 0x95, 0xdb, 0x11, 0x3a, 0x91, 0x76, 0x78, 0xb2, + 0x73, 0xbe, 0xd6, 0xb8, 0xe3, 0xc1, 0x74, 0x3b, + 0x71, 0x16, 0xe6, 0x9e, 0x22, 0x22, 0x95, 0x16, + 0x3f, 0xf1, 0xca, 0xa1, 0x68, 0x1f, 0xac, 0x09, + 0x12, 0x0e, 0xca, 0x30, 0x75, 0x86, 0xe1, 0xa7 + }; + + +/* F.2.3 CBC-AES192.Encrypt and F.2.4 CBC-AES192.Decrypt */ +uint8 key_01[] = { + 0x8e, 0x73, 0xb0, 0xf7, 0xda, 0x0e, 0x64, 0x52, + 0xc8, 0x10, 0xf3, 0x2b, 0x80, 0x90, 0x79, 0xe5, + 0x62, 0xf8, 0xea, 0xd2, 0x52, 0x2c, 0x6b, 0x7b + }; + +uint8 nonce_01[] = { + 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, + 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f + }; + +uint8 input_01[] = { + 0x6b, 0xc1, 0xbe, 0xe2, 0x2e, 0x40, 0x9f, 0x96, + 0xe9, 0x3d, 0x7e, 0x11, 0x73, 0x93, 0x17, 0x2a, + 0xae, 0x2d, 0x8a, 0x57, 0x1e, 0x03, 0xac, 0x9c, + 0x9e, 0xb7, 0x6f, 0xac, 0x45, 0xaf, 0x8e, 0x51, + 0x30, 0xc8, 0x1c, 0x46, 0xa3, 0x5c, 0xe4, 0x11, + 0xe5, 0xfb, 0xc1, 0x19, 0x1a, 0x0a, 0x52, 0xef, + 0xf6, 0x9f, 0x24, 0x45, 0xdf, 0x4f, 0x9b, 0x17, + 0xad, 0x2b, 0x41, 0x7b, 0xe6, 0x6c, 0x37, 0x10 + }; + +uint8 ref_01[] = { + 0x4f, 0x02, 0x1d, 0xb2, 0x43, 0xbc, 0x63, 0x3d, + 0x71, 0x78, 0x18, 0x3a, 0x9f, 0xa0, 0x71, 0xe8, + 0xb4, 0xd9, 0xad, 0xa9, 0xad, 0x7d, 0xed, 0xf4, + 0xe5, 0xe7, 0x38, 0x76, 0x3f, 0x69, 0x14, 0x5a, + 0x57, 0x1b, 0x24, 0x20, 0x12, 0xfb, 0x7a, 0xe0, + 0x7f, 0xa9, 0xba, 0xac, 0x3d, 0xf1, 0x02, 0xe0, + 0x08, 0xb0, 0xe2, 0x79, 0x88, 0x59, 0x88, 0x81, + 0xd9, 0x20, 0xa9, 0xe6, 0x4f, 0x56, 0x15, 0xcd + }; + + +/* F.2.5 CBC-AES256.Encrypt and F.2.6 CBC-AES256.Decrypt */ +uint8 key_02[] = { + 0x60, 0x3d, 0xeb, 0x10, 0x15, 0xca, 0x71, 0xbe, + 0x2b, 0x73, 0xae, 0xf0, 0x85, 0x7d, 0x77, 0x81, + 0x1f, 0x35, 0x2c, 0x07, 0x3b, 0x61, 0x08, 0xd7, + 0x2d, 0x98, 0x10, 0xa3, 0x09, 0x14, 0xdf, 0xf4 + }; + +uint8 nonce_02[] = { + 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, + 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f + }; + +uint8 input_02[] = { + 0x6b, 0xc1, 0xbe, 0xe2, 0x2e, 0x40, 0x9f, 0x96, + 0xe9, 0x3d, 0x7e, 0x11, 0x73, 0x93, 0x17, 0x2a, + 0xae, 0x2d, 0x8a, 0x57, 0x1e, 0x03, 0xac, 0x9c, + 0x9e, 0xb7, 0x6f, 0xac, 0x45, 0xaf, 0x8e, 0x51, + 0x30, 0xc8, 0x1c, 0x46, 0xa3, 0x5c, 0xe4, 0x11, + 0xe5, 0xfb, 0xc1, 0x19, 0x1a, 0x0a, 0x52, 0xef, + 0xf6, 0x9f, 0x24, 0x45, 0xdf, 0x4f, 0x9b, 0x17, + 0xad, 0x2b, 0x41, 0x7b, 0xe6, 0x6c, 0x37, 0x10 + }; + +uint8 ref_02[] = { + 0xf5, 0x8c, 0x4c, 0x04, 0xd6, 0xe5, 0xf1, 0xba, + 0x77, 0x9e, 0xab, 0xfb, 0x5f, 0x7b, 0xfb, 0xd6, + 0x9c, 0xfc, 0x4e, 0x96, 0x7e, 0xdb, 0x80, 0x8d, + 0x67, 0x9f, 0x77, 0x7b, 0xc6, 0x70, 0x2c, 0x7d, + 0x39, 0xf2, 0x33, 0x69, 0xa9, 0xd9, 0xba, 0xcf, + 0xa5, 0x30, 0xe2, 0x63, 0x04, 0x23, 0x14, 0x61, + 0xb2, 0xeb, 0x05, 0xe2, 0xc3, 0x9b, 0xe9, 0xfc, + 0xda, 0x6c, 0x19, 0x07, 0x8c, 0x6a, 0x9d, 0x1b + }; + + +/* F.5.1 CTR-AES128.Encrypt and F.5.2 CTR-AES128.Decrypt */ +uint8 key_03[] = { + 0x2b, 0x7e, 0x15, 0x16, 0x28, 0xae, 0xd2, 0xa6, + 0xab, 0xf7, 0x15, 0x88, 0x09, 0xcf, 0x4f, 0x3c + }; + +uint8 nonce_03[] = { + 0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7, + 0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0xfd, 0xfe, 0xff + }; + +uint8 input_03[] = { + 0x6b, 0xc1, 0xbe, 0xe2, 0x2e, 0x40, 0x9f, 0x96, + 0xe9, 0x3d, 0x7e, 0x11, 0x73, 0x93, 0x17, 0x2a, + 0xae, 0x2d, 0x8a, 0x57, 0x1e, 0x03, 0xac, 0x9c, + 0x9e, 0xb7, 0x6f, 0xac, 0x45, 0xaf, 0x8e, 0x51, + 0x30, 0xc8, 0x1c, 0x46, 0xa3, 0x5c, 0xe4, 0x11, + 0xe5, 0xfb, 0xc1, 0x19, 0x1a, 0x0a, 0x52, 0xef, + 0xf6, 0x9f, 0x24, 0x45, 0xdf, 0x4f, 0x9b, 0x17, + 0xad, 0x2b, 0x41, 0x7b, 0xe6, 0x6c, 0x37, 0x10 + }; + +uint8 ref_03[] = { + 0x87, 0x4d, 0x61, 0x91, 0xb6, 0x20, 0xe3, 0x26, + 0x1b, 0xef, 0x68, 0x64, 0x99, 0x0d, 0xb6, 0xce, + 0x98, 0x06, 0xf6, 0x6b, 0x79, 0x70, 0xfd, 0xff, + 0x86, 0x17, 0x18, 0x7b, 0xb9, 0xff, 0xfd, 0xff, + 0x5a, 0xe4, 0xdf, 0x3e, 0xdb, 0xd5, 0xd3, 0x5e, + 0x5b, 0x4f, 0x09, 0x02, 0x0d, 0xb0, 0x3e, 0xab, + 0x1e, 0x03, 0x1d, 0xda, 0x2f, 0xbe, 0x03, 0xd1, + 0x79, 0x21, 0x70, 0xa0, 0xf3, 0x00, 0x9c, 0xee + }; + + +/* F.5.3 CTR-AES192.Encrypt and F.5.4 CTR-AES192.Decrypt */ +uint8 key_04[] = { + 0x8e, 0x73, 0xb0, 0xf7, 0xda, 0x0e, 0x64, 0x52, + 0xc8, 0x10, 0xf3, 0x2b, 0x80, 0x90, 0x79, 0xe5, + 0x62, 0xf8, 0xea, 0xd2, 0x52, 0x2c, 0x6b, 0x7b + }; + +uint8 nonce_04[] = { + 0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7, + 0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0xfd, 0xfe, 0xff + }; + +uint8 input_04[] = { + 0x6b, 0xc1, 0xbe, 0xe2, 0x2e, 0x40, 0x9f, 0x96, + 0xe9, 0x3d, 0x7e, 0x11, 0x73, 0x93, 0x17, 0x2a, + 0xae, 0x2d, 0x8a, 0x57, 0x1e, 0x03, 0xac, 0x9c, + 0x9e, 0xb7, 0x6f, 0xac, 0x45, 0xaf, 0x8e, 0x51, + 0x30, 0xc8, 0x1c, 0x46, 0xa3, 0x5c, 0xe4, 0x11, + 0xe5, 0xfb, 0xc1, 0x19, 0x1a, 0x0a, 0x52, 0xef, + 0xf6, 0x9f, 0x24, 0x45, 0xdf, 0x4f, 0x9b, 0x17, + 0xad, 0x2b, 0x41, 0x7b, 0xe6, 0x6c, 0x37, 0x10 + }; + +uint8 ref_04[] = { + 0x1a, 0xbc, 0x93, 0x24, 0x17, 0x52, 0x1c, 0xa2, + 0x4f, 0x2b, 0x04, 0x59, 0xfe, 0x7e, 0x6e, 0x0b, + 0x09, 0x03, 0x39, 0xec, 0x0a, 0xa6, 0xfa, 0xef, + 0xd5, 0xcc, 0xc2, 0xc6, 0xf4, 0xce, 0x8e, 0x94, + 0x1e, 0x36, 0xb2, 0x6b, 0xd1, 0xeb, 0xc6, 0x70, + 0xd1, 0xbd, 0x1d, 0x66, 0x56, 0x20, 0xab, 0xf7, + 0x4f, 0x78, 0xa7, 0xf6, 0xd2, 0x98, 0x09, 0x58, + 0x5a, 0x97, 0xda, 0xec, 0x58, 0xc6, 0xb0, 0x50 + }; + +/* F.5.5 CTR-AES256.Encrypt and F.5.6 CTR-AES256.Decrypt */ +uint8 key_05[] = { + 0x60, 0x3d, 0xeb, 0x10, 0x15, 0xca, 0x71, 0xbe, + 0x2b, 0x73, 0xae, 0xf0, 0x85, 0x7d, 0x77, 0x81, + 0x1f, 0x35, 0x2c, 0x07, 0x3b, 0x61, 0x08, 0xd7, + 0x2d, 0x98, 0x10, 0xa3, 0x09, 0x14, 0xdf, 0xf4 + }; + +uint8 nonce_05[] = { + 0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7, + 0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0xfd, 0xfe, 0xff + }; + +uint8 input_05[] = { + 0x6b, 0xc1, 0xbe, 0xe2, 0x2e, 0x40, 0x9f, 0x96, + 0xe9, 0x3d, 0x7e, 0x11, 0x73, 0x93, 0x17, 0x2a, + 0xae, 0x2d, 0x8a, 0x57, 0x1e, 0x03, 0xac, 0x9c, + 0x9e, 0xb7, 0x6f, 0xac, 0x45, 0xaf, 0x8e, 0x51, + 0x30, 0xc8, 0x1c, 0x46, 0xa3, 0x5c, 0xe4, 0x11, + 0xe5, 0xfb, 0xc1, 0x19, 0x1a, 0x0a, 0x52, 0xef, + 0xf6, 0x9f, 0x24, 0x45, 0xdf, 0x4f, 0x9b, 0x17, + 0xad, 0x2b, 0x41, 0x7b, 0xe6, 0x6c, 0x37, 0x10 + }; + +uint8 ref_05[] = { + 0x60, 0x1e, 0xc3, 0x13, 0x77, 0x57, 0x89, 0xa5, + 0xb7, 0xa7, 0xf5, 0x04, 0xbb, 0xf3, 0xd2, 0x28, + 0xf4, 0x43, 0xe3, 0xca, 0x4d, 0x62, 0xb5, 0x9a, + 0xca, 0x84, 0xe9, 0x90, 0xca, 0xca, 0xf5, 0xc5, + 0x2b, 0x09, 0x30, 0xda, 0xa2, 0x3d, 0xe9, 0x4c, + 0xe8, 0x70, 0x17, 0xba, 0x2d, 0x84, 0x98, 0x8d, + 0xdf, 0xc9, 0xc5, 0x8d, 0xb6, 0x7a, 0xad, 0xa6, + 0x13, 0xc2, 0xdd, 0x08, 0x45, 0x79, 0x41, 0xa6 + }; + + +typedef struct { + int kl; + uint8 *key; + uint8 *nonce; + int il; + uint8 *input; + uint8 *ref; +} aes_vector_t; + +#define AES_VECTOR_ENTRY(x) \ + { sizeof(key_##x), key_##x, nonce_##x, sizeof(input_##x), input_##x, ref_##x } + +aes_vector_t aes_cbc_vec[] = { + AES_VECTOR_ENTRY(00), + AES_VECTOR_ENTRY(01), + AES_VECTOR_ENTRY(02), + }; +#define NUM_CBC_VECTORS (sizeof(aes_cbc_vec)/sizeof(aes_cbc_vec[0])) + +aes_vector_t aes_ctr_vec[] = { + AES_VECTOR_ENTRY(03), + AES_VECTOR_ENTRY(04), + AES_VECTOR_ENTRY(05) + }; +#define NUM_CTR_VECTORS (sizeof(aes_ctr_vec)/sizeof(aes_ctr_vec[0])) + + +/* Test vector data from: RFC3610 Counter with CBC-MAC (CCM) */ + +/* Packet Vector #1 */ +uint8 key_06[] = { + 0xC0, 0xC1, 0xC2, 0xC3, 0xC4, 0xC5, 0xC6, 0xC7, + 0xC8, 0xC9, 0xCA, 0xCB, 0xCC, 0xCD, 0xCE, 0xCF + }; + +uint8 nonce_06[] = { + 0x00, 0x00, 0x00, 0x03, 0x02, 0x01, 0x00, 0xA0, + 0xA1, 0xA2, 0xA3, 0xA4, 0xA5 + }; + +uint8 aad_06[] = { + 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07 + }; + +uint8 input_06[] = { + 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, + 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, + 0x18, 0x19, 0x1A, 0x1B, 0x1C, 0x1D, 0x1E + }; + +uint8 mac_06[] = { + 0x2D, 0xC6, 0x97, 0xE4, 0x11, 0xCA, 0x83, 0xA8 + }; + +uint8 ref_06[] = { + 0x58, 0x8C, 0x97, 0x9A, 0x61, 0xC6, 0x63, 0xD2, + 0xF0, 0x66, 0xD0, 0xC2, 0xC0, 0xF9, 0x89, 0x80, + 0x6D, 0x5F, 0x6B, 0x61, 0xDA, 0xC3, 0x84, 0x17, + 0xE8, 0xD1, 0x2C, 0xFD, 0xF9, 0x26, 0xE0 + }; + +/* Packet Vector #2 */ +uint8 key_07[] = { + 0xC0, 0xC1, 0xC2, 0xC3, 0xC4, 0xC5, 0xC6, 0xC7, + 0xC8, 0xC9, 0xCA, 0xCB, 0xCC, 0xCD, 0xCE, 0xCF + }; + +uint8 nonce_07[] = { + 0x00, 0x00, 0x00, 0x04, 0x03, 0x02, 0x01, 0xA0, + 0xA1, 0xA2, 0xA3, 0xA4, 0xA5 + }; + +uint8 aad_07[] = { + 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07 + }; + +uint8 input_07[] = { + 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, + 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, + 0x18, 0x19, 0x1A, 0x1B, 0x1C, 0x1D, 0x1E, 0x1F + }; + +uint8 mac_07[] = { + 0xF7, 0xB9, 0x05, 0x6A, 0x86, 0x92, 0x6C, 0xF3 + }; + +uint8 ref_07[] = { + 0x72, 0xC9, 0x1A, 0x36, 0xE1, 0x35, 0xF8, 0xCF, + 0x29, 0x1C, 0xA8, 0x94, 0x08, 0x5C, 0x87, 0xE3, + 0xCC, 0x15, 0xC4, 0x39, 0xC9, 0xE4, 0x3A, 0x3B, + 0xA0, 0x91, 0xD5, 0x6E, 0x10, 0x40, 0x09, 0x16 + }; + +/* Packet Vector #3 */ +uint8 key_08[] = { + 0xC0, 0xC1, 0xC2, 0xC3, 0xC4, 0xC5, 0xC6, 0xC7, + 0xC8, 0xC9, 0xCA, 0xCB, 0xCC, 0xCD, 0xCE, 0xCF + }; + +uint8 nonce_08[] = { + 0x00, 0x00, 0x00, 0x05, 0x04, 0x03, 0x02, 0xA0, + 0xA1, 0xA2, 0xA3, 0xA4, 0xA5 + }; + +uint8 aad_08[] = { + 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07 + }; + +uint8 input_08[] = { + 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, + 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, + 0x18, 0x19, 0x1A, 0x1B, 0x1C, 0x1D, 0x1E, 0x1F, + 0x20 + }; + +uint8 mac_08[] = { + 0x73, 0xB4, 0x67, 0x75, 0xC0, 0x26, 0xDE, 0xAA + }; + +uint8 ref_08[] = { + 0x51, 0xB1, 0xE5, 0xF4, 0x4A, 0x19, 0x7D, 0x1D, + 0xA4, 0x6B, 0x0F, 0x8E, 0x2D, 0x28, 0x2A, 0xE8, + 0x71, 0xE8, 0x38, 0xBB, 0x64, 0xDA, 0x85, 0x96, + 0x57, 0x4A, 0xDA, 0xA7, 0x6F, 0xBD, 0x9F, 0xB0, + 0xC5 + }; + +/* Packet Vector #4 */ +uint8 key_09[] = { + 0xC0, 0xC1, 0xC2, 0xC3, 0xC4, 0xC5, 0xC6, 0xC7, + 0xC8, 0xC9, 0xCA, 0xCB, 0xCC, 0xCD, 0xCE, 0xCF + }; + +uint8 nonce_09[] = { + 0x00, 0x00, 0x00, 0x06, 0x05, 0x04, 0x03, 0xA0, + 0xA1, 0xA2, 0xA3, 0xA4, 0xA5 + }; + +uint8 aad_09[] = { + 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, + 0x08, 0x09, 0x0A, 0x0B + }; + +uint8 input_09[] = { + 0x0C, 0x0D, 0x0E, 0x0F, 0x10, 0x11, 0x12, 0x13, + 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x1B, + 0x1C, 0x1D, 0x1E + }; + +uint8 mac_09[] = { + 0x4B, 0x4F, 0x4B, 0x39, 0xB5, 0x93, 0xE6, 0xBF + }; + +uint8 ref_09[] = { + 0xA2, 0x8C, 0x68, 0x65, 0x93, 0x9A, 0x9A, 0x79, + 0xFA, 0xAA, 0x5C, 0x4C, 0x2A, 0x9D, 0x4A, 0x91, + 0xCD, 0xAC, 0x8C, 0x96, 0xC8, 0x61, 0xB9, 0xC9, + 0xE6, 0x1E, 0xF1 + }; + +/* Packet Vector #5 */ +uint8 key_10[] = { + 0xC0, 0xC1, 0xC2, 0xC3, 0xC4, 0xC5, 0xC6, 0xC7, + 0xC8, 0xC9, 0xCA, 0xCB, 0xCC, 0xCD, 0xCE, 0xCF + }; + +uint8 nonce_10[] = { + 0x00, 0x00, 0x00, 0x07, 0x06, 0x05, 0x04, 0xA0, + 0xA1, 0xA2, 0xA3, 0xA4, 0xA5 + }; + +uint8 aad_10[] = { + 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, + 0x08, 0x09, 0x0A, 0x0B + }; + +uint8 input_10[] = { + 0x0C, 0x0D, 0x0E, 0x0F, 0x10, 0x11, 0x12, 0x13, + 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x1B, + 0x1C, 0x1D, 0x1E, 0x1F + }; + +uint8 mac_10[] = { + 0x48, 0xB9, 0xE8, 0x82, 0x55, 0x05, 0x4A, 0xB5 + }; + +uint8 ref_10[] = { + 0xDC, 0xF1, 0xFB, 0x7B, 0x5D, 0x9E, 0x23, 0xFB, + 0x9D, 0x4E, 0x13, 0x12, 0x53, 0x65, 0x8A, 0xD8, + 0x6E, 0xBD, 0xCA, 0x3E, 0x51, 0xE8, 0x3F, 0x07, + 0x7D, 0x9C, 0x2D, 0x93 + }; + +/* Packet Vector #6 */ +uint8 key_11[] = { + 0xC0, 0xC1, 0xC2, 0xC3, 0xC4, 0xC5, 0xC6, 0xC7, + 0xC8, 0xC9, 0xCA, 0xCB, 0xCC, 0xCD, 0xCE, 0xCF + }; + +uint8 nonce_11[] = { + 0x00, 0x00, 0x00, 0x08, 0x07, 0x06, 0x05, 0xA0, + 0xA1, 0xA2, 0xA3, 0xA4, 0xA5 + }; + +uint8 aad_11[] = { + 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, + 0x08, 0x09, 0x0A, 0x0B + }; + +uint8 input_11[] = { + 0x0C, 0x0D, 0x0E, 0x0F, 0x10, 0x11, 0x12, 0x13, + 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x1B, + 0x1C, 0x1D, 0x1E, 0x1F, 0x20 + }; + +uint8 mac_11[] = { + 0xA5, 0x27, 0xD8, 0x15, 0x6A, 0xC3, 0x59, 0xBF + }; + +uint8 ref_11[] = { + 0x6F, 0xC1, 0xB0, 0x11, 0xF0, 0x06, 0x56, 0x8B, + 0x51, 0x71, 0xA4, 0x2D, 0x95, 0x3D, 0x46, 0x9B, + 0x25, 0x70, 0xA4, 0xBD, 0x87, 0x40, 0x5A, 0x04, + 0x43, 0xAC, 0x91, 0xCB, 0x94 + }; + + +typedef struct { + int kl; + uint8 *key; + uint8 *nonce; + int al; + uint8 *aad; + int il; + uint8 *input; + uint8 *mac; + uint8 *ref; +} aes_ccm_vector_t; + +#define AES_CCM_VECTOR_ENTRY(x) \ +{ \ + sizeof(key_##x), key_##x, nonce_##x, sizeof(aad_##x), aad_##x, \ + sizeof(input_##x), input_##x, mac_##x, ref_##x \ +} + +aes_ccm_vector_t aes_ccm_vec[] = { + AES_CCM_VECTOR_ENTRY(06), + AES_CCM_VECTOR_ENTRY(07), + AES_CCM_VECTOR_ENTRY(08), + AES_CCM_VECTOR_ENTRY(09), + AES_CCM_VECTOR_ENTRY(10), + AES_CCM_VECTOR_ENTRY(11), + AES_CCM_VECTOR_ENTRY(99) + }; +#define NUM_CCM_VECTORS (sizeof(aes_ccm_vec)/sizeof(aes_ccm_vec[0])) + + +/* Test vectors from 802.11i Draft 7.0 */ +/* CCMP test mpdu 1 - works for both legacy and new ucode, so try it both ways */ +uint8 key_20[] = { + 0xc9, 0x7c, 0x1f, 0x67, 0xce, 0x37, 0x11, 0x85, + 0x51, 0x4a, 0x8a, 0x19, 0xf2, 0xbd, 0xd5, 0x2f + }; + +uint8 input_20[] = { + 0x08, 0x48, 0xc3, 0x2c, 0x0f, 0xd2, 0xe1, 0x28, + 0xa5, 0x7c, 0x50, 0x30, 0xf1, 0x84, 0x44, 0x08, + 0xab, 0xae, 0xa5, 0xb8, 0xfc, 0xba, 0x80, 0x33, + 0x0c, 0xe7, 0x00, 0x20, 0x76, 0x97, 0x03, 0xb5, + 0xf8, 0xba, 0x1a, 0x55, 0xd0, 0x2f, 0x85, 0xae, + 0x96, 0x7b, 0xb6, 0x2f, 0xb6, 0xcd, 0xa8, 0xeb, + 0x7e, 0x78, 0xa0, 0x50 + }; + +uint8 ref_20[] = { + 0x08, 0x48, 0xc3, 0x2c, 0x0f, 0xd2, 0xe1, 0x28, + 0xa5, 0x7c, 0x50, 0x30, 0xf1, 0x84, 0x44, 0x08, + 0xab, 0xae, 0xa5, 0xb8, 0xfc, 0xba, 0x80, 0x33, + 0x0c, 0xe7, 0x00, 0x20, 0x76, 0x97, 0x03, 0xb5, + 0xf3, 0xd0, 0xa2, 0xfe, 0x9a, 0x3d, 0xbf, 0x23, + 0x42, 0xa6, 0x43, 0xe4, 0x32, 0x46, 0xe8, 0x0c, + 0x3c, 0x04, 0xd0, 0x19, 0x78, 0x45, 0xce, 0x0b, + 0x16, 0xf9, 0x76, 0x23 + }; + +/* WDS, WME, legacy */ +bool flags_20[] = { FALSE, FALSE, TRUE }; + +uint8 key_21[] = { + 0xc9, 0x7c, 0x1f, 0x67, 0xce, 0x37, 0x11, 0x85, + 0x51, 0x4a, 0x8a, 0x19, 0xf2, 0xbd, 0xd5, 0x2f + }; + +uint8 input_21[] = { + 0x08, 0x48, 0xc3, 0x2c, 0x0f, 0xd2, 0xe1, 0x28, + 0xa5, 0x7c, 0x50, 0x30, 0xf1, 0x84, 0x44, 0x08, + 0xab, 0xae, 0xa5, 0xb8, 0xfc, 0xba, 0x80, 0x33, + 0x0c, 0xe7, 0x00, 0x20, 0x76, 0x97, 0x03, 0xb5, + 0xf8, 0xba, 0x1a, 0x55, 0xd0, 0x2f, 0x85, 0xae, + 0x96, 0x7b, 0xb6, 0x2f, 0xb6, 0xcd, 0xa8, 0xeb, + 0x7e, 0x78, 0xa0, 0x50 + }; + +uint8 ref_21[] = { + 0x08, 0x48, 0xc3, 0x2c, 0x0f, 0xd2, 0xe1, 0x28, + 0xa5, 0x7c, 0x50, 0x30, 0xf1, 0x84, 0x44, 0x08, + 0xab, 0xae, 0xa5, 0xb8, 0xfc, 0xba, 0x80, 0x33, + 0x0c, 0xe7, 0x00, 0x20, 0x76, 0x97, 0x03, 0xb5, + 0xf3, 0xd0, 0xa2, 0xfe, 0x9a, 0x3d, 0xbf, 0x23, + 0x42, 0xa6, 0x43, 0xe4, 0x32, 0x46, 0xe8, 0x0c, + 0x3c, 0x04, 0xd0, 0x19, 0x78, 0x45, 0xce, 0x0b, + 0x16, 0xf9, 0x76, 0x23 + }; + +/* WDS, WME, legacy */ +bool flags_21[] = { FALSE, FALSE, FALSE }; + +/* CCMP test mpdu 2 */ +uint8 key_22[] = { + 0x8f, 0x7a, 0x05, 0x3f, 0xa5, 0x77, 0xa5, 0x59, + 0x75, 0x29, 0x27, 0x20, 0x97, 0xa6, 0x03, 0xd5 + }; + +uint8 input_22[] = { + 0x38, 0xc0, 0x6a, 0x51, 0xea, 0x10, 0x0c, 0x84, + 0x68, 0x50, 0xee, 0xc1, 0x76, 0x2c, 0x88, 0xde, + 0xaf, 0x2e, 0xe9, 0xf4, 0x6a, 0x07, 0xe0, 0xcc, + 0xea, 0x97, 0x00, 0xa0, 0xba, 0xcb, 0xf3, 0x31, + 0x83, 0xa0, 0x63, 0x4b, 0x5e, 0xd7, 0x62, 0x7e, + 0xb9, 0xdf, 0x22, 0x5e, 0x05, 0x74, 0x03, 0x42, + 0xde, 0x19, 0x41, 0x17 + }; + +uint8 ref_22[] = { + 0x38, 0xc0, 0x6a, 0x51, 0xea, 0x10, 0x0c, 0x84, + 0x68, 0x50, 0xee, 0xc1, 0x76, 0x2c, 0x88, 0xde, + 0xaf, 0x2e, 0xe9, 0xf4, 0x6a, 0x07, 0xe0, 0xcc, + 0xea, 0x97, 0x00, 0xa0, 0xba, 0xcb, 0xf3, 0x31, + 0x81, 0x4b, 0x69, 0x65, 0xd0, 0x5b, 0xf2, 0xb2, + 0xed, 0x38, 0xd4, 0xbe, 0xb0, 0x69, 0xfe, 0x82, + 0x71, 0x4a, 0x61, 0x0b, 0x54, 0x2f, 0xbf, 0x8d, + 0xa0, 0x6a, 0xa4, 0xae + }; + +bool flags_22[] = { FALSE, FALSE, FALSE }; + +/* CCMP test mpdu 3 */ +uint8 key_23[] = { + 0x40, 0xcf, 0xb7, 0xa6, 0x2e, 0x88, 0x01, 0x3b, + 0xd6, 0xd3, 0xaf, 0xfc, 0xc1, 0x91, 0x04, 0x1e + }; + +uint8 input_23[] = { + 0xb8, 0xc8, 0xdc, 0x61, 0xd9, 0x57, 0x7d, 0xf7, + 0x63, 0xc8, 0xb6, 0xa8, 0x8a, 0xdf, 0x36, 0x91, + 0xdc, 0x4a, 0x8b, 0xca, 0x94, 0xdd, 0x60, 0x82, + 0x20, 0x85, 0xae, 0xa5, 0x00, 0xa0, 0xf3, 0xa0, + 0xdc, 0x2f, 0x2c, 0x1b, 0xd0, 0x36, 0x83, 0x1c, + 0x95, 0x49, 0x6c, 0x5f, 0x4d, 0xbf, 0x3d, 0x55, + 0x9e, 0x72, 0xde, 0x80, 0x2a, 0x18 + }; + +uint8 ref_23[] = { + 0xb8, 0xc8, 0xdc, 0x61, 0xd9, 0x57, 0x7d, 0xf7, + 0x63, 0xc8, 0xb6, 0xa8, 0x8a, 0xdf, 0x36, 0x91, + 0xdc, 0x4a, 0x8b, 0xca, 0x94, 0xdd, 0x60, 0x82, + 0x20, 0x85, 0xae, 0xa5, 0x00, 0xa0, 0xf3, 0xa0, + 0xdc, 0x2f, 0x89, 0xd8, 0x58, 0x03, 0x40, 0xb6, + 0x26, 0xa0, 0xb6, 0xd4, 0xd0, 0x13, 0xbf, 0x18, + 0xf2, 0x91, 0xb8, 0x96, 0x46, 0xc8, 0xfd, 0x1f, + 0x1f, 0x61, 0xa9, 0xfb, 0x4b, 0xb3 + }; + +bool flags_23[] = { FALSE, TRUE, FALSE }; + +/* CCMP test mpdu 4 */ +uint8 key_24[] = { + 0x8c, 0x89, 0xa2, 0xeb, 0xc9, 0x6c, 0x76, 0x02, + 0x70, 0x7f, 0xcf, 0x24, 0xb3, 0x2d, 0x38, 0x33 + }; + +uint8 input_24[] = { + 0xa8, 0xca, 0x3a, 0x11, 0x71, 0x2a, 0x9d, 0xdf, + 0x11, 0xdb, 0x8e, 0xf8, 0x22, 0x73, 0x47, 0x01, + 0x59, 0x14, 0x0d, 0xd6, 0x46, 0xa2, 0xc0, 0x2f, + 0x67, 0xa5, 0xe3, 0x0f, 0x00, 0x20, 0x5a, 0xa5, + 0x70, 0xf6, 0x4f, 0xad, 0x2b, 0x1c, 0x29, 0x0f, + 0xa5, 0xeb, 0xd8, 0x72, 0xfb, 0xc3, 0xf3, 0xa0, + 0x74, 0x89, 0x8f, 0x8b, 0x2f, 0xbb + }; + +uint8 ref_24[] = { + 0xa8, 0xca, 0x3a, 0x11, 0x71, 0x2a, 0x9d, 0xdf, + 0x11, 0xdb, 0x8e, 0xf8, 0x22, 0x73, 0x47, 0x01, + 0x59, 0x14, 0x0d, 0xd6, 0x46, 0xa2, 0xc0, 0x2f, + 0x67, 0xa5, 0xe3, 0x0f, 0x00, 0x20, 0x5a, 0xa5, + 0x70, 0xf6, 0x9d, 0x59, 0xb1, 0x5f, 0x37, 0x14, + 0x48, 0xc2, 0x30, 0xf4, 0xd7, 0x39, 0x05, 0x2e, + 0x13, 0xab, 0x3b, 0x1a, 0x7b, 0x10, 0x31, 0xfc, + 0x88, 0x00, 0x4f, 0x35, 0xee, 0x3d + }; + +bool flags_24[] = { FALSE, TRUE, FALSE }; + +/* CCMP test mpdu 5 */ +uint8 key_25[] = { + 0xa5, 0x74, 0xd5, 0x14, 0x3b, 0xb2, 0x5e, 0xfd, + 0xde, 0xff, 0x30, 0x12, 0x2f, 0xdf, 0xd0, 0x66 + }; + +uint8 input_25[] = { + 0x88, 0xda, 0x18, 0x41, 0x45, 0xde, 0xc6, 0x9a, + 0x74, 0x80, 0xf3, 0x51, 0x94, 0x6b, 0xc9, 0x6b, + 0xe2, 0x76, 0xfb, 0xe6, 0xc1, 0x27, 0x80, 0xf2, + 0x4b, 0x19, 0x37, 0x0e, 0x00, 0xa0, 0x3c, 0xe0, + 0xff, 0xa7, 0x28, 0x96, 0x9b, 0x95, 0x4f, 0x26, + 0x3a, 0x80, 0x18, 0xa9, 0xef, 0x70, 0xa8, 0xb0, + 0x51, 0x46, 0x24, 0x81, 0x92, 0x2e + }; + +uint8 ref_25[] = { + 0x88, 0xda, 0x18, 0x41, 0x45, 0xde, 0xc6, 0x9a, + 0x74, 0x80, 0xf3, 0x51, 0x94, 0x6b, 0xc9, 0x6b, + 0xe2, 0x76, 0xfb, 0xe6, 0xc1, 0x27, 0x80, 0xf2, + 0x4b, 0x19, 0x37, 0x0e, 0x00, 0xa0, 0x3c, 0xe0, + 0xff, 0xa7, 0xeb, 0x4a, 0xe4, 0x95, 0x6a, 0x80, + 0x1d, 0xa9, 0x62, 0x4b, 0x7e, 0x0c, 0x18, 0xb2, + 0x3e, 0x61, 0x5e, 0xc0, 0x3a, 0xf6, 0xce, 0x0c, + 0x3b, 0xe1, 0x97, 0xd3, 0x05, 0xeb + }; + +bool flags_25[] = { FALSE, TRUE, FALSE }; + +/* CCMP test mpdu 6 */ +uint8 key_26[] = { + 0xf7, 0x1e, 0xea, 0x4e, 0x1f, 0x58, 0x80, 0x4b, + 0x97, 0x17, 0x23, 0x0a, 0xd0, 0x61, 0x46, 0x41 + }; + +uint8 input_26[] = { + 0x88, 0x52, 0xe1, 0x1f, 0x5a, 0xf2, 0x84, 0x30, + 0xfd, 0xab, 0xbf, 0xf9, 0x43, 0xb9, 0xf9, 0xa6, + 0xab, 0x1d, 0x98, 0xc7, 0xfe, 0x73, 0x50, 0x71, + 0x3d, 0x6a, 0x89, 0x89, 0x00, 0x60, 0xa4, 0xec, + 0x81, 0x6b, 0xab, 0xfd, 0xa2, 0x2d, 0x3a, 0x0b, + 0xfc, 0x9c, 0xc1, 0xfc, 0x07, 0x93, 0x63, 0xc2, + 0xfc, 0xa1, 0x43, 0xe6, 0xeb, 0x1d + }; + +uint8 ref_26[] = { + 0x88, 0x52, 0xe1, 0x1f, 0x5a, 0xf2, 0x84, 0x30, + 0xfd, 0xab, 0xbf, 0xf9, 0x43, 0xb9, 0xf9, 0xa6, + 0xab, 0x1d, 0x98, 0xc7, 0xfe, 0x73, 0x50, 0x71, + 0x3d, 0x6a, 0x89, 0x89, 0x00, 0x60, 0xa4, 0xec, + 0x81, 0x6b, 0x9a, 0x70, 0x9b, 0x60, 0xa3, 0x9d, + 0x40, 0xb1, 0xdf, 0xb6, 0x12, 0xe1, 0x8b, 0x5f, + 0x11, 0x4b, 0xad, 0xb6, 0xcc, 0x86, 0x30, 0x9a, + 0x8d, 0x5c, 0x46, 0x6b, 0xbb, 0x71 + }; + +bool flags_26[] = { FALSE, TRUE, FALSE }; + +/* CCMP test mpdu 7 */ +uint8 key_27[] = { + 0x1b, 0xdb, 0x34, 0x98, 0x0e, 0x03, 0x81, 0x24, + 0xa1, 0xdb, 0x1a, 0x89, 0x2b, 0xec, 0x36, 0x6a + }; + +uint8 input_27[] = { + 0x18, 0x79, 0x81, 0x46, 0x9b, 0x50, 0xf4, 0xfd, + 0x56, 0xf6, 0xef, 0xec, 0x95, 0x20, 0x16, 0x91, + 0x83, 0x57, 0x0c, 0x4c, 0xcd, 0xee, 0x20, 0xa0, + 0x23, 0xe7, 0x00, 0xe0, 0x73, 0x40, 0xec, 0x5e, + 0x98, 0xbe, 0xca, 0x86, 0xf4, 0xb3, 0x8d, 0xa2, + 0x0c, 0xfd, 0xf2, 0x47, 0x24, 0xc5, 0x8e, 0xb8, + 0x35, 0x66, 0x53, 0x39 + }; + +uint8 ref_27[] = { + 0x18, 0x79, 0x81, 0x46, 0x9b, 0x50, 0xf4, 0xfd, + 0x56, 0xf6, 0xef, 0xec, 0x95, 0x20, 0x16, 0x91, + 0x83, 0x57, 0x0c, 0x4c, 0xcd, 0xee, 0x20, 0xa0, + 0x23, 0xe7, 0x00, 0xe0, 0x73, 0x40, 0xec, 0x5e, + 0x12, 0xc5, 0x37, 0xeb, 0xf3, 0xab, 0x58, 0x4e, + 0xf1, 0xfe, 0xf9, 0xa1, 0xf3, 0x54, 0x7a, 0x8c, + 0x13, 0xb3, 0x22, 0x5a, 0x2d, 0x09, 0x57, 0xec, + 0xfa, 0xbe, 0x95, 0xb9 + }; + +bool flags_27[] = { FALSE, FALSE, FALSE }; + +/* CCMP test mpdu 8 */ +uint8 key_28[] = { + 0x6e, 0xac, 0x1b, 0xf5, 0x4b, 0xd5, 0x4e, 0xdb, + 0x23, 0x21, 0x75, 0x43, 0x03, 0x02, 0x4c, 0x71 + }; + +uint8 input_28[] = { + 0xb8, 0xd9, 0x4c, 0x72, 0x55, 0x2d, 0x5f, 0x72, + 0xbb, 0x70, 0xca, 0x3f, 0x3a, 0xae, 0x60, 0xc4, + 0x8b, 0xa9, 0xb5, 0xf8, 0x2c, 0x2f, 0x50, 0xeb, + 0x2a, 0x55, 0xdd, 0xcc, 0x00, 0xa0, 0x6e, 0x99, + 0xfd, 0xce, 0x57, 0xcb, 0x5c, 0x0e, 0x5f, 0xcd, + 0x88, 0x5e, 0x9a, 0x42, 0x39, 0xe9, 0xb9, 0xca, + 0xd6, 0x0d, 0x64, 0x37, 0x59, 0x79 + }; + +uint8 ref_28[] = { + 0xb8, 0xd9, 0x4c, 0x72, 0x55, 0x2d, 0x5f, 0x72, + 0xbb, 0x70, 0xca, 0x3f, 0x3a, 0xae, 0x60, 0xc4, + 0x8b, 0xa9, 0xb5, 0xf8, 0x2c, 0x2f, 0x50, 0xeb, + 0x2a, 0x55, 0xdd, 0xcc, 0x00, 0xa0, 0x6e, 0x99, + 0xfd, 0xce, 0x4b, 0xf2, 0x81, 0xef, 0x8e, 0xc7, + 0x73, 0x9f, 0x91, 0x59, 0x1b, 0x97, 0xa8, 0x7d, + 0xc1, 0x4b, 0x3f, 0xa1, 0x74, 0x62, 0x6d, 0xba, + 0x8e, 0xf7, 0xf0, 0x80, 0x87, 0xdd + }; + +bool flags_28[] = { FALSE, TRUE, FALSE }; + +/* CCMP test mpdu 9 */ +uint8 key_29[] = { + 0x49, 0x4b, 0x50, 0x1e, 0x19, 0x46, 0x75, 0x97, + 0x1a, 0x48, 0xd0, 0x8c, 0x5b, 0xc3, 0x53, 0xcb + }; + +uint8 input_29[] = { + 0xa8, 0xf9, 0xc8, 0x42, 0x9a, 0xfb, 0x79, 0x8b, + 0x8a, 0x4b, 0xa4, 0xad, 0x6d, 0x31, 0x99, 0x85, + 0xbc, 0x42, 0x9e, 0x8f, 0x0a, 0xfa, 0xf0, 0x7d, + 0x4a, 0x80, 0xb3, 0x37, 0x00, 0xe0, 0x34, 0xe9, + 0x82, 0xba, 0x25, 0xa9, 0x8f, 0x9c, 0x1b, 0xd9, + 0xc9, 0x3c, 0xf3, 0x83, 0xab, 0x9d, 0x98, 0x15, + 0x2d, 0x76, 0xcb, 0x4a, 0x32, 0xc6 + }; + +uint8 ref_29[] = { + 0xa8, 0xf9, 0xc8, 0x42, 0x9a, 0xfb, 0x79, 0x8b, + 0x8a, 0x4b, 0xa4, 0xad, 0x6d, 0x31, 0x99, 0x85, + 0xbc, 0x42, 0x9e, 0x8f, 0x0a, 0xfa, 0xf0, 0x7d, + 0x4a, 0x80, 0xb3, 0x37, 0x00, 0xe0, 0x34, 0xe9, + 0x82, 0xba, 0x56, 0x1a, 0x0d, 0x06, 0x8e, 0xac, + 0x2e, 0xad, 0xb0, 0xc5, 0x7f, 0xe2, 0xd0, 0xa6, + 0xcc, 0x73, 0x98, 0xb6, 0xdd, 0xbf, 0xcf, 0xe4, + 0x38, 0xcb, 0xea, 0x61, 0xfa, 0x9a + }; + +bool flags_29[] = { FALSE, TRUE, FALSE }; + +/* CCMP test mpdu 10 */ +uint8 key_30[] = { + 0x48, 0x9e, 0x49, 0xbc, 0x3c, 0xfe, 0x3f, 0xce, + 0x38, 0x95, 0x82, 0x0e, 0x87, 0x2e, 0xe1, 0xa3 + }; + +uint8 input_30[] = { + 0x18, 0x4b, 0xe0, 0x63, 0x40, 0xec, 0x29, 0xfa, + 0x75, 0x9b, 0x53, 0xf8, 0x69, 0xfe, 0x27, 0x9a, + 0xf0, 0xf9, 0xf8, 0xa6, 0x54, 0x16, 0x80, 0xe3, + 0x52, 0xbf, 0xd2, 0x70, 0x3d, 0x24, 0xa9, 0xfe, + 0x00, 0x20, 0x75, 0x3e, 0x1d, 0xcf, 0x7f, 0x91, + 0xf2, 0x47, 0x2d, 0x7a, 0x12, 0x1c, 0x9c, 0xdd, + 0x4b, 0x6c, 0x90, 0x80, 0x67, 0x5a, 0x10, 0x20, + 0xaa, 0x00 + }; + +uint8 ref_30[] = { + 0x18, 0x4b, 0xe0, 0x63, 0x40, 0xec, 0x29, 0xfa, + 0x75, 0x9b, 0x53, 0xf8, 0x69, 0xfe, 0x27, 0x9a, + 0xf0, 0xf9, 0xf8, 0xa6, 0x54, 0x16, 0x80, 0xe3, + 0x52, 0xbf, 0xd2, 0x70, 0x3d, 0x24, 0xa9, 0xfe, + 0x00, 0x20, 0x75, 0x3e, 0x1d, 0xcf, 0x25, 0xdf, + 0x51, 0x73, 0x83, 0x5e, 0x4f, 0xba, 0x23, 0xbc, + 0x05, 0xa2, 0x53, 0x88, 0x5e, 0xbe, 0xd3, 0xac, + 0x48, 0x71, 0xc8, 0x68, 0xa7, 0x25, 0x55, 0x2c, + 0x55, 0x65 + }; + +bool flags_30[] = { TRUE, FALSE, FALSE }; + +/* CCMP test mpdu 11 */ +uint8 key_31[] = { + 0x02, 0xbe, 0x5c, 0x45, 0x45, 0x67, 0x2a, 0x07, + 0xe4, 0xe3, 0x14, 0xd7, 0x0f, 0x1f, 0x9e, 0x85 + }; + +uint8 input_31[] = { + 0xb8, 0xdb, 0x6a, 0x54, 0x29, 0x8c, 0x0b, 0xaa, + 0x91, 0x90, 0x34, 0x7c, 0xeb, 0x9a, 0xab, 0xff, + 0xd8, 0x3d, 0x48, 0x86, 0xe5, 0xc2, 0xe0, 0x53, + 0xe2, 0x9d, 0x52, 0x4a, 0xe1, 0x96, 0x3d, 0x62, + 0xd4, 0x55, 0x00, 0xe0, 0x6e, 0x59, 0xd6, 0xd2, + 0xf9, 0xa8, 0x12, 0xe4, 0xa2, 0x8a, 0xf7, 0xf3, + 0x71, 0x4d, 0x4b, 0xf6, 0x62, 0x2e, 0x59, 0x32, + 0xf2, 0x18, 0x45, 0x09 + }; + +uint8 ref_31[] = { + 0xb8, 0xdb, 0x6a, 0x54, 0x29, 0x8c, 0x0b, 0xaa, + 0x91, 0x90, 0x34, 0x7c, 0xeb, 0x9a, 0xab, 0xff, + 0xd8, 0x3d, 0x48, 0x86, 0xe5, 0xc2, 0xe0, 0x53, + 0xe2, 0x9d, 0x52, 0x4a, 0xe1, 0x96, 0x3d, 0x62, + 0xd4, 0x55, 0x00, 0xe0, 0x6e, 0x59, 0xd6, 0xd2, + 0x63, 0x15, 0x50, 0x0f, 0x92, 0x42, 0x95, 0xcd, + 0x3e, 0xaf, 0xbd, 0xc3, 0xe1, 0x51, 0xb1, 0xdf, + 0x46, 0x46, 0x5b, 0x71, 0x68, 0x1f, 0xde, 0xe8, + 0x51, 0x3c, 0x62, 0xdc + }; + +bool flags_31[] = { TRUE, TRUE, FALSE }; + +/* CCMP test mpdu 12 */ +uint8 key_32[] = { + 0x77, 0x07, 0x7e, 0xd7, 0x94, 0x53, 0xe4, 0xa1, + 0x8d, 0x60, 0x43, 0x8c, 0xc6, 0x48, 0x4d, 0x6e + }; + +uint8 input_32[] = { + 0x18, 0x6b, 0xd0, 0x27, 0xaa, 0x28, 0x8b, 0x84, + 0x35, 0xbc, 0xd8, 0xac, 0x5a, 0x7e, 0xc4, 0x44, + 0xe8, 0xb4, 0x62, 0x50, 0x53, 0x8b, 0x80, 0x62, + 0xe8, 0x14, 0x02, 0xc2, 0xee, 0x11, 0x8e, 0xfd, + 0x00, 0xe0, 0x77, 0x1e, 0xb0, 0x50, 0x43, 0x19, + 0x81, 0xa2, 0x33, 0x6d, 0x02, 0xf8, 0xcb, 0x84, + 0x48, 0xd5, 0x42, 0x89, 0x16, 0xbe, 0x95, 0x29, + 0x35, 0x37 + }; + +uint8 ref_32[] = { + 0x18, 0x6b, 0xd0, 0x27, 0xaa, 0x28, 0x8b, 0x84, + 0x35, 0xbc, 0xd8, 0xac, 0x5a, 0x7e, 0xc4, 0x44, + 0xe8, 0xb4, 0x62, 0x50, 0x53, 0x8b, 0x80, 0x62, + 0xe8, 0x14, 0x02, 0xc2, 0xee, 0x11, 0x8e, 0xfd, + 0x00, 0xe0, 0x77, 0x1e, 0xb0, 0x50, 0xcf, 0x71, + 0xb2, 0xcc, 0xbd, 0x59, 0x0b, 0x20, 0x80, 0x07, + 0x92, 0xf3, 0x59, 0xed, 0x1c, 0xfd, 0x74, 0xd8, + 0x00, 0xb4, 0xfd, 0x0f, 0x41, 0xf4, 0x26, 0xbb, + 0x8f, 0x30 + }; + +bool flags_32[] = { TRUE, FALSE, FALSE }; + + +/* Test vectors generated by legacy ucode */ +uint8 key_40[] = { + 0x12, 0x34, 0x56, 0x78, 0x90, 0x12, 0x34, 0x56, + 0x78, 0x90, 0x12, 0x34, 0x56, 0x78, 0x90, 0x12 + }; + +uint8 input_40[] = { + 0x08, 0x40, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0x00, 0x10, 0x18, 0x90, 0x01, 0xee, + 0x56, 0xb9, 0x99, 0xdd, 0x40, 0x04, 0x30, 0x9f, + 0x07, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, + 0xaa, 0xaa, 0x03, 0x00, 0x00, 0x00, 0x08, 0x06, + 0x00, 0x01, 0x08, 0x00, 0x06, 0x04, 0x00, 0x01, + 0x00, 0x10, 0x18, 0x90, 0x01, 0xee, 0xc0, 0xa8, + 0x0a, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xc0, 0xa8, 0x0a, 0x01 + }; + +uint8 ref_40[] = { + 0x08, 0x40, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0x00, 0x10, 0x18, 0x90, 0x01, 0xee, + 0x56, 0xb9, 0x99, 0xdd, 0x40, 0x04, 0x30, 0x9f, + 0x07, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, + 0x85, 0x7d, 0x0c, 0xf3, 0xe7, 0x0b, 0x05, 0xb2, + 0x66, 0x2f, 0xf4, 0xe1, 0xc4, 0x86, 0x1f, 0x94, + 0x02, 0x3f, 0x25, 0x41, 0xcf, 0x65, 0xec, 0xd1, + 0x33, 0x70, 0x8f, 0x62, 0x98, 0xa8, 0x72, 0x5f, + 0x67, 0xe3, 0xaf, 0x78, 0xb1, 0x0d, 0x04, 0x08, + 0x95, 0x2e, 0x11, 0x7a + }; + +bool flags_40[] = { FALSE, FALSE, TRUE }; + +uint8 key_41[] = { + 0x12, 0x34, 0x56, 0x78, 0x90, 0x12, 0x34, 0x56, + 0x78, 0x90, 0x12, 0x34, 0x56, 0x78, 0x90, 0x12 + }; + +uint8 input_41[] = { + 0x08, 0x40, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0x00, 0x10, 0x18, 0x90, 0x01, 0xee, + 0x56, 0xb9, 0x99, 0xdd, 0x40, 0x04, 0xb0, 0xa0, + 0x09, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, + 0xaa, 0xaa, 0x03, 0x00, 0x00, 0x00, 0x08, 0x06, + 0x00, 0x01, 0x08, 0x00, 0x06, 0x04, 0x00, 0x01, + 0x00, 0x10, 0x18, 0x90, 0x01, 0xee, 0xc0, 0xa8, + 0x0a, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xc0, 0xa8, 0x0a, 0x01 + }; + +uint8 ref_41[] = { + 0x08, 0x40, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0x00, 0x10, 0x18, 0x90, 0x01, 0xee, + 0x56, 0xb9, 0x99, 0xdd, 0x40, 0x04, 0xb0, 0xa0, + 0x09, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, + 0x0a, 0xd4, 0xf2, 0x74, 0x0e, 0x45, 0x6f, 0x6a, + 0xe2, 0x7f, 0xcd, 0x98, 0xa6, 0x54, 0x51, 0xb3, + 0x08, 0x7f, 0xf5, 0x68, 0xbe, 0xcf, 0xd0, 0x98, + 0xbc, 0xbd, 0x70, 0x59, 0xa9, 0xc8, 0xc0, 0x09, + 0xcb, 0x5f, 0x1d, 0x99, 0x71, 0x74, 0x5d, 0x39, + 0xe5, 0x52, 0x92, 0xb9 + }; + +bool flags_41[] = { FALSE, FALSE, TRUE }; + +uint8 key_42[] = { + 0x12, 0x34, 0x56, 0x78, 0x90, 0x12, 0x34, 0x56, + 0x78, 0x90, 0x12, 0x34, 0x56, 0x78, 0x90, 0x12 + }; + +uint8 input_42[] = { + 0x08, 0x40, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0x00, 0x10, 0x18, 0x90, 0x01, 0xee, + 0x56, 0xb9, 0x99, 0xdd, 0x40, 0x04, 0x70, 0xa1, + 0x0a, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, + 0xaa, 0xaa, 0x03, 0x00, 0x00, 0x00, 0x08, 0x06, + 0x00, 0x01, 0x08, 0x00, 0x06, 0x04, 0x00, 0x01, + 0x00, 0x10, 0x18, 0x90, 0x01, 0xee, 0xc0, 0xa8, + 0x0a, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xc0, 0xa8, 0x0a, 0x01 + }; + +uint8 ref_42[] = { + 0x08, 0x40, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0x00, 0x10, 0x18, 0x90, 0x01, 0xee, + 0x56, 0xb9, 0x99, 0xdd, 0x40, 0x04, 0x70, 0xa1, + 0x0a, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, + 0x73, 0xb2, 0x72, 0x41, 0xb8, 0x18, 0x10, 0x27, + 0xbc, 0x2e, 0x94, 0x4f, 0x86, 0x14, 0xfb, 0x7d, + 0x54, 0x85, 0xa1, 0x39, 0x52, 0xf0, 0x73, 0x94, + 0x05, 0x8c, 0xe8, 0xf0, 0xf8, 0xc8, 0x09, 0xfb, + 0x3b, 0x99, 0x3a, 0x1d, 0x49, 0xb1, 0xd1, 0x44, + 0xe4, 0x4d, 0xab, 0xaa + }; + +bool flags_42[] = { FALSE, FALSE, TRUE }; + +uint8 key_43[] = { + 0x12, 0x34, 0x56, 0x78, 0x90, 0x12, 0x34, 0x56, + 0x78, 0x90, 0x12, 0x34, 0x56, 0x78, 0x90, 0x12 + }; + +uint8 input_43[] = { + 0x08, 0x40, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0x00, 0x10, 0x18, 0x90, 0x01, 0xee, + 0x56, 0xb9, 0x99, 0xdd, 0x40, 0x04, 0x20, 0xa2, + 0x0b, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, + 0xaa, 0xaa, 0x03, 0x00, 0x00, 0x00, 0x08, 0x06, + 0x00, 0x01, 0x08, 0x00, 0x06, 0x04, 0x00, 0x01, + 0x00, 0x10, 0x18, 0x90, 0x01, 0xee, 0xc0, 0xa8, + 0x0a, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xc0, 0xa8, 0x0a, 0x01 + }; + +uint8 ref_43[] = { + 0x08, 0x40, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0x00, 0x10, 0x18, 0x90, 0x01, 0xee, + 0x56, 0xb9, 0x99, 0xdd, 0x40, 0x04, 0x20, 0xa2, + 0x0b, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, + 0xcf, 0x1c, 0x69, 0xfb, 0x5d, 0x67, 0xcd, 0xc2, + 0x9a, 0x93, 0x13, 0xec, 0x71, 0xc8, 0xb2, 0xbb, + 0x3e, 0x25, 0x0e, 0x4c, 0x1d, 0xcb, 0x44, 0x41, + 0x83, 0x6b, 0xc1, 0xb3, 0x25, 0x1d, 0xb0, 0xb2, + 0x58, 0x90, 0x5e, 0xa3, 0x5d, 0x3c, 0xf9, 0xcd, + 0x98, 0x4c, 0xad, 0xd9 + }; + +bool flags_43[] = { FALSE, FALSE, TRUE }; + +uint8 key_44[] = { + 0x12, 0x34, 0x56, 0x78, 0x90, 0x12, 0x34, 0x56, + 0x78, 0x90, 0x12, 0x34, 0x56, 0x78, 0x90, 0x12, + }; + +uint8 input_44[] = { + 0x08, 0x40, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0x00, 0x10, 0x18, 0x90, 0x01, 0xee, + 0x56, 0xb9, 0x99, 0xdd, 0x40, 0x04, 0xd0, 0xa2, + 0x0c, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, + 0xaa, 0xaa, 0x03, 0x00, 0x00, 0x00, 0x08, 0x06, + 0x00, 0x01, 0x08, 0x00, 0x06, 0x04, 0x00, 0x01, + 0x00, 0x10, 0x18, 0x90, 0x01, 0xee, 0xc0, 0xa8, + 0x0a, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xc0, 0xa8, 0x0a, 0x01, + }; + +uint8 ref_44[] = { + 0x08, 0x40, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0x00, 0x10, 0x18, 0x90, 0x01, 0xee, + 0x56, 0xb9, 0x99, 0xdd, 0x40, 0x04, 0xd0, 0xa2, + 0x0c, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, + 0xa5, 0x8a, 0xcf, 0x80, 0xe0, 0xe9, 0x96, 0x1f, + 0x95, 0x9e, 0x71, 0x57, 0x7b, 0x4a, 0x77, 0x1d, + 0x15, 0xae, 0x47, 0xa6, 0x2a, 0xfb, 0x9a, 0x65, + 0x3f, 0x3a, 0x19, 0x76, 0x9f, 0x73, 0xfa, 0xa6, + 0xa7, 0x85, 0x6f, 0xb8, 0x5b, 0x3e, 0x54, 0x25, + 0x34, 0x00, 0xa8, 0x44 + }; + +bool flags_44[] = { FALSE, FALSE, TRUE }; + + +typedef struct { + int kl; + uint8 *key; + int il; + uint8 *input; + uint8 *ref; + bool *flags; +} aes_ccmp_vector_t; + +#define AES_CCMP_VECTOR_ENTRY(x) \ + { sizeof(key_##x), key_##x, sizeof(input_##x), input_##x, ref_##x, flags_##x } + +aes_ccmp_vector_t aes_ccmp_vec[] = { + AES_CCMP_VECTOR_ENTRY(20), + AES_CCMP_VECTOR_ENTRY(21), + AES_CCMP_VECTOR_ENTRY(22), + AES_CCMP_VECTOR_ENTRY(23), + AES_CCMP_VECTOR_ENTRY(24), + AES_CCMP_VECTOR_ENTRY(25), + AES_CCMP_VECTOR_ENTRY(26), + AES_CCMP_VECTOR_ENTRY(27), + AES_CCMP_VECTOR_ENTRY(28), + AES_CCMP_VECTOR_ENTRY(29), + AES_CCMP_VECTOR_ENTRY(30), + AES_CCMP_VECTOR_ENTRY(31), + AES_CCMP_VECTOR_ENTRY(32), + AES_CCMP_VECTOR_ENTRY(40), + AES_CCMP_VECTOR_ENTRY(41), + AES_CCMP_VECTOR_ENTRY(42), + AES_CCMP_VECTOR_ENTRY(43), + AES_CCMP_VECTOR_ENTRY(44) + }; +#define NUM_CCMP_VECTORS (sizeof(aes_ccmp_vec)/sizeof(aes_ccmp_vec[0])) diff --git a/release/src-rt/bcmcrypto/aeskeywrap.c b/release/src-rt/bcmcrypto/aeskeywrap.c new file mode 100755 index 0000000000..4d21ed69dc --- /dev/null +++ b/release/src-rt/bcmcrypto/aeskeywrap.c @@ -0,0 +1,291 @@ +/* + * aeskeywrap.c + * Perform RFC3394 AES-based key wrap and unwrap functions. + * + * Copyright (C) 2010, Broadcom Corporation + * All Rights Reserved. + * + * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation; + * the contents of this file may not be disclosed to third parties, copied + * or duplicated in any form, in whole or in part, without the prior + * written permission of Broadcom Corporation. + * + * $Id: aeskeywrap.c,v 1.31 2009-04-21 01:06:59 Exp $ + */ + +#include + +#ifdef BCMDRIVER +#include +#else +#if defined(__GNUC__) +extern void bcopy(const void *src, void *dst, int len); +extern int bcmp(const void *b1, const void *b2, int len); +#else +#include +#define bcopy(src, dst, len) memcpy((dst), (src), (len)) +#define bcmp(b1, b2, len) memcmp((b1), (b2), (len)) +#endif /* __GNUC__ */ +#include /* for size_t */ +#endif /* BCMDRIVER */ + +#include +#include +#include + +#ifdef BCMAESKEYWRAP_TEST +#include + +#define dbg(args) printf args + +void pinter(const char *label, const uint8 *A, const size_t il, const uint8 *R) +{ + unsigned int k; + printf("%s", label); + for (k = 0; k < AKW_BLOCK_LEN; k++) + printf("%02X", A[k]); + printf(" "); + for (k = 0; k < il; k++) { + printf("%02X", R[k]); + if (!((k+1)%AKW_BLOCK_LEN)) + printf(" "); + } + printf("\n"); +} + +void pres(const char *label, const size_t len, const uint8 *data) +{ + unsigned int k; + printf("%lu %s", (unsigned long)len, label); + for (k = 0; k < len; k++) { + printf("%02x", data[k]); + if (!((k + 1) % AKW_BLOCK_LEN)) + printf(" "); + } + printf("\n"); +} +#else +#define dbg(args) +#define pinter(label, A, il, R) +#endif /* BCMAESKEYWRAP_TEST */ + +static const uint8 aeskeywrapIV[] = { 0xa6, 0xa6, 0xa6, 0xa6, 0xa6, 0xa6, 0xa6, 0xa6 }; + +/* aes_wrap: perform AES-based keywrap function defined in RFC3394 + * return 0 on success, 1 on error + * input is il bytes + * output is (il+8) bytes + */ +int +BCMROMFN(aes_wrap)(size_t kl, uint8 *key, size_t il, uint8 *input, uint8 *output) +{ + uint32 rk[4*(AES_MAXROUNDS+1)]; + uint8 A[AES_BLOCK_SZ]; + uint8 R[AKW_MAX_WRAP_LEN]; + uint8 B[AES_BLOCK_SZ]; + int n = (int)(il/AKW_BLOCK_LEN), i, j, k; + + /* validate kl (must be valid AES key length) */ + if ((kl != 16) && (kl != 24) && (kl != 32)) { + dbg(("aes_wrap: invlaid key length %lu\n", (unsigned long)kl)); + return (1); + } + if (il > AKW_MAX_WRAP_LEN) { + dbg(("aes_wrap: input length %lu too large\n", (unsigned long)il)); + return (1); + } + if (il % AKW_BLOCK_LEN) { + dbg(("aes_wrap: input length %lu must be a multiple of block length\n", + (unsigned long)il)); + return (1); + } + + dbg((" Input:\n")); + dbg((" KEK: ")); + for (k = 0; k < (int)kl; k++) + dbg(("%02X", key[k])); + dbg(("\n Key Data: ")); + for (k = 0; k < (int)il; k++) + dbg(("%02X", input[k])); + dbg(("\n\n Wrap: \n")); + + rijndaelKeySetupEnc(rk, key, (int)AES_KEY_BITLEN(kl)); + + /* Set A = IV */ + bcopy(aeskeywrapIV, A, AKW_BLOCK_LEN); + /* For i = 1 to n */ + /* R[i] = P[i] */ + bcopy(input, R, il); + + /* For j = 0 to 5 */ + for (j = 0; j < 6; j++) { + /* For i = 1 to n */ + for (i = 0; i < n; i++) { + dbg(("\n %d\n", (n*j)+i+1)); + pinter(" In ", A, il, R); + /* B = AES(K, A | R[i]) */ + bcopy(&R[i*AKW_BLOCK_LEN], &A[AKW_BLOCK_LEN], AKW_BLOCK_LEN); + aes_block_encrypt((int)AES_ROUNDS(kl), rk, A, B); + + /* R[i] = LSB(64, B) */ + bcopy(&B[AKW_BLOCK_LEN], &R[i*AKW_BLOCK_LEN], AKW_BLOCK_LEN); + + /* A = MSB(64, B) ^ t where t = (n*j)+i */ + bcopy(&B[0], &A[0], AKW_BLOCK_LEN); + pinter(" Enc ", A, il, R); + A[AKW_BLOCK_LEN-1] ^= ((n*j)+i+1); + pinter(" XorT ", A, il, R); + } + } + /* Set C[0] = A */ + bcopy(A, output, AKW_BLOCK_LEN); + /* For i = 1 to n */ + /* C[i] = R[i] */ + bcopy(R, &output[AKW_BLOCK_LEN], il); + + return (0); +} + +/* aes_unwrap: perform AES-based key unwrap function defined in RFC3394, + * return 0 on success, 1 on error + * input is il bytes + * output is (il-8) bytes + */ +int +BCMROMFN(aes_unwrap)(size_t kl, uint8 *key, size_t il, uint8 *input, uint8 *output) +{ + uint32 rk[4*(AES_MAXROUNDS+1)]; + uint8 A[AES_BLOCK_SZ]; + uint8 R[AKW_MAX_WRAP_LEN + AKW_BLOCK_LEN]; + uint8 B[AES_BLOCK_SZ]; + size_t ol = il - AKW_BLOCK_LEN; + int n = (int)(ol/AKW_BLOCK_LEN), i, j, k; + + /* validate kl (must be valid AES key length) */ + if ((kl != 16) && (kl != 24) && (kl != 32)) { + dbg(("aes_wrap: invlaid key length %lu\n", (unsigned long)kl)); + return (1); + } + if (il > (AKW_MAX_WRAP_LEN + AKW_BLOCK_LEN)) { + dbg(("aes_unwrap: input length %lu too large\n", (unsigned long)il)); + return (1); + } + if (il % AKW_BLOCK_LEN) { + dbg(("aes_unwrap: input length %lu must be a multiple of block length\n", + (unsigned long)il)); + return (1); + } + + dbg((" Input:\n")); + dbg((" KEK: ")); + for (k = 0; k < (int)kl; k++) + dbg(("%02X", key[k])); + dbg(("\n Data: ")); + for (k = 0; k < (int)il; k++) + dbg(("%02X", input[k])); + dbg(("\n\n Unwrap: \n")); + + rijndaelKeySetupDec(rk, key, (int)AES_KEY_BITLEN(kl)); + + /* Set A = C[0] */ + bcopy(input, A, AKW_BLOCK_LEN); + + /* For i = 1 to n */ + /* R[i] = C[i] */ + bcopy(&input[AKW_BLOCK_LEN], R, ol); + + /* For j = 5 to 0 */ + for (j = 5; j >= 0; j--) { + /* For i = n to 1 */ + for (i = n - 1; i >= 0; i--) { + dbg(("\n %d\n", (n*j)+i+1)); + pinter(" In ", A, ol, R); + + /* B = AES - 1 (K, (A ^ t) | R[i]) where t = n * j + i */ + A[AKW_BLOCK_LEN - 1] ^= ((n*j)+i+1); + pinter(" XorT ", A, ol, R); + + bcopy(&R[i*AKW_BLOCK_LEN], &A[AKW_BLOCK_LEN], AKW_BLOCK_LEN); + aes_block_decrypt((int)AES_ROUNDS(kl), rk, A, B); + + /* A = MSB(64, B) */ + bcopy(&B[0], &A[0], AKW_BLOCK_LEN); + + /* R[i] = LSB(64, B) */ + bcopy(&B[AKW_BLOCK_LEN], &R[i*AKW_BLOCK_LEN], AKW_BLOCK_LEN); + pinter(" Dec ", A, ol, R); + } + } + if (!bcmp(A, aeskeywrapIV, AKW_BLOCK_LEN)) { + /* For i = 1 to n */ + /* P[i] = R[i] */ + bcopy(R, &output[0], ol); + return 0; + } else { + dbg(("aes_unwrap: IV mismatch in unwrapped data\n")); + return 1; + } +} + +#ifdef BCMAESKEYWRAP_TEST +#include "aeskeywrap_vectors.h" +#define NUM_VECTORS (sizeof(akw_vec)/sizeof(akw_vec[0])) +#define NUM_WRAP_FAIL_VECTORS \ + (sizeof(akw_wrap_fail_vec)/sizeof(akw_wrap_fail_vec[0])) +#define NUM_UNWRAP_FAIL_VECTORS \ + (sizeof(akw_unwrap_fail_vec)/sizeof(akw_unwrap_fail_vec[0])) + +int main(int argc, char **argv) +{ + uint8 output[AKW_MAX_WRAP_LEN+AKW_BLOCK_LEN]; + uint8 input2[AKW_MAX_WRAP_LEN]; + int retv, k, fail = 0; + + for (k = 0; k < NUM_VECTORS; k++) { + retv = aes_wrap(akw_vec[k].kl, akw_vec[k].key, akw_vec[k].il, + akw_vec[k].input, output); + pres("\n AES Wrap: ", akw_vec[k].il+AKW_BLOCK_LEN, output); + + if (retv) { + dbg(("%s: aes_wrap failed\n", *argv)); + fail++; + } + if (bcmp(output, akw_vec[k].ref, akw_vec[k].il+AKW_BLOCK_LEN) != 0) { + dbg(("%s: aes_wrap failed\n", *argv)); + fail++; + } + + retv = aes_unwrap(akw_vec[k].kl, akw_vec[k].key, akw_vec[k].il + AKW_BLOCK_LEN, + output, input2); + pres("\n AES Unwrap: ", akw_vec[k].il, input2); + + if (retv) { + dbg(("%s: aes_unwrap failed\n", *argv)); + fail++; + } + if (bcmp(akw_vec[k].input, input2, akw_vec[k].il) != 0) { + dbg(("%s: aes_unwrap failed\n", *argv)); + fail++; + } + } + + for (k = 0; k < NUM_WRAP_FAIL_VECTORS; k++) { + if (!aes_wrap(akw_wrap_fail_vec[k].kl, akw_wrap_fail_vec[k].key, + akw_wrap_fail_vec[k].il, akw_wrap_fail_vec[k].input, output)) { + dbg(("%s: aes_wrap didn't detect failure case\n", *argv)); + fail++; + } + } + + for (k = 0; k < NUM_UNWRAP_FAIL_VECTORS; k++) { + if (!aes_unwrap(akw_unwrap_fail_vec[k].kl, akw_unwrap_fail_vec[k].key, + akw_unwrap_fail_vec[k].il, akw_unwrap_fail_vec[k].input, input2)) { + dbg(("%s: aes_unwrap didn't detect failure case\n", *argv)); + fail++; + } + } + + dbg(("%s: %s\n", *argv, fail?"FAILED":"PASSED")); + return (fail); +} +#endif /* BCMAESKEYWRAP_TEST */ diff --git a/release/src-rt/bcmcrypto/aeskeywrap_vectors.h b/release/src-rt/bcmcrypto/aeskeywrap_vectors.h new file mode 100755 index 0000000000..299d4cd580 --- /dev/null +++ b/release/src-rt/bcmcrypto/aeskeywrap_vectors.h @@ -0,0 +1,256 @@ +/* + * aeskeywrap_vectors.h + * AES keywrap test vectors + * + * Copyright (C) 2010, Broadcom Corporation + * All Rights Reserved. + * + * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation; + * the contents of this file may not be disclosed to third parties, copied + * or duplicated in any form, in whole or in part, without the prior + * written permission of Broadcom Corporation. + * + * $Id: aeskeywrap_vectors.h,v 1.7 2006-06-14 21:08:49 Exp $ + */ + +#include +#include + +/* Test vector data from: + * RFC3394 Advanced Encryption Standard (AES) Key Wrap Algorithm + * Copyright (C) The Internet Society (2002). All Rights Reserved. + */ + +/* 4.1 Wrap 128 bits of Key Data with a 128-bit KEK */ +uint8 key_00[] = { + 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, + 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F + }; + +uint8 input_00[] = { + 0x00, 0x11, 0x22, 0x33, 0x44, 0x55, 0x66, 0x77, + 0x88, 0x99, 0xAA, 0xBB, 0xCC, 0xDD, 0xEE, 0xFF + }; + +uint8 ref_00[] = { + 0x1F, 0xA6, 0x8B, 0x0A, 0x81, 0x12, 0xB4, 0x47, + 0xAE, 0xF3, 0x4B, 0xD8, 0xFB, 0x5A, 0x7B, 0x82, + 0x9D, 0x3E, 0x86, 0x23, 0x71, 0xD2, 0xCF, 0xE5 + }; + +/* 4.2 Wrap 128 bits of Key Data with a 192-bit KEK */ +uint8 key_01[] = { + 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, + 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, + 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17 + }; + +uint8 input_01[] = { + 0x00, 0x11, 0x22, 0x33, 0x44, 0x55, 0x66, 0x77, + 0x88, 0x99, 0xAA, 0xBB, 0xCC, 0xDD, 0xEE, 0xFF + }; + +uint8 ref_01[] = { + 0x96, 0x77, 0x8B, 0x25, 0xAE, 0x6C, 0xA4, 0x35, + 0xF9, 0x2B, 0x5B, 0x97, 0xC0, 0x50, 0xAE, 0xD2, + 0x46, 0x8A, 0xB8, 0xA1, 0x7A, 0xD8, 0x4E, 0x5D + }; + +/* 4.3 Wrap 128 bits of Key Data with a 256-bit KEK */ +uint8 key_02[] = { + 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, + 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, + 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, + 0x18, 0x19, 0x1A, 0x1B, 0x1C, 0x1D, 0x1E, 0x1F + }; + +uint8 input_02[] = { + 0x00, 0x11, 0x22, 0x33, 0x44, 0x55, 0x66, 0x77, + 0x88, 0x99, 0xAA, 0xBB, 0xCC, 0xDD, 0xEE, 0xFF + }; + +uint8 ref_02[] = { + 0x64, 0xE8, 0xC3, 0xF9, 0xCE, 0x0F, 0x5B, 0xA2, + 0x63, 0xE9, 0x77, 0x79, 0x05, 0x81, 0x8A, 0x2A, + 0x93, 0xC8, 0x19, 0x1E, 0x7D, 0x6E, 0x8A, 0xE7 + }; + +/* 4.4 Wrap 192 bits of Key Data with a 192-bit KEK */ +uint8 key_03[] = { + 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, + 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, + 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17 + }; + +uint8 input_03[] = { + 0x00, 0x11, 0x22, 0x33, 0x44, 0x55, 0x66, 0x77, + 0x88, 0x99, 0xAA, 0xBB, 0xCC, 0xDD, 0xEE, 0xFF, + 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07 + }; + +uint8 ref_03[] = { + 0x03, 0x1D, 0x33, 0x26, 0x4E, 0x15, 0xD3, 0x32, + 0x68, 0xF2, 0x4E, 0xC2, 0x60, 0x74, 0x3E, 0xDC, + 0xE1, 0xC6, 0xC7, 0xDD, 0xEE, 0x72, 0x5A, 0x93, + 0x6B, 0xA8, 0x14, 0x91, 0x5C, 0x67, 0x62, 0xD2 + }; + +/* 4.5 Wrap 192 bits of Key Data with a 256-bit KEK */ +uint8 key_04[] = { + 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, + 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, + 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, + 0x18, 0x19, 0x1A, 0x1B, 0x1C, 0x1D, 0x1E, 0x1F + }; + +uint8 input_04[] = { + 0x00, 0x11, 0x22, 0x33, 0x44, 0x55, 0x66, 0x77, + 0x88, 0x99, 0xAA, 0xBB, 0xCC, 0xDD, 0xEE, 0xFF, + 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07 + }; + +uint8 ref_04[] = { + 0xA8, 0xF9, 0xBC, 0x16, 0x12, 0xC6, 0x8B, 0x3F, + 0xF6, 0xE6, 0xF4, 0xFB, 0xE3, 0x0E, 0x71, 0xE4, + 0x76, 0x9C, 0x8B, 0x80, 0xA3, 0x2C, 0xB8, 0x95, + 0x8C, 0xD5, 0xD1, 0x7D, 0x6B, 0x25, 0x4D, 0xA1 + }; + +/* 4.6 Wrap 256 bits of Key Data with a 256-bit KEK */ +uint8 key_05[] = { + 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, + 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, + 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, + 0x18, 0x19, 0x1A, 0x1B, 0x1C, 0x1D, 0x1E, 0x1F + }; + +uint8 input_05[] = { + 0x00, 0x11, 0x22, 0x33, 0x44, 0x55, 0x66, 0x77, + 0x88, 0x99, 0xAA, 0xBB, 0xCC, 0xDD, 0xEE, 0xFF, + 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, + 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F + }; + +uint8 ref_05[] = { + 0x28, 0xC9, 0xF4, 0x04, 0xC4, 0xB8, 0x10, 0xF4, + 0xCB, 0xCC, 0xB3, 0x5C, 0xFB, 0x87, 0xF8, 0x26, + 0x3F, 0x57, 0x86, 0xE2, 0xD8, 0x0E, 0xD3, 0x26, + 0xCB, 0xC7, 0xF0, 0xE7, 0x1A, 0x99, 0xF4, 0x3B, + 0xFB, 0x98, 0x8B, 0x9B, 0x7A, 0x02, 0xDD, 0x21 + }; + +/* Test vectors generated at Broadcom */ +/* Wrap 256 bits of Key Data with a 128-bit KEK */ +uint8 key_06[] = { + 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, + 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F + }; + +uint8 input_06[] = { + 0x00, 0x11, 0x22, 0x33, 0x44, 0x55, 0x66, 0x77, + 0x88, 0x99, 0xAA, 0xBB, 0xCC, 0xDD, 0xEE, 0xFF, + 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, + 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F + }; + +uint8 ref_06[] = { + 0x11, 0x82, 0x68, 0x40, 0x77, 0x4D, 0x99, 0x3F, + 0xF9, 0xC2, 0xFA, 0x02, 0xCC, 0xA3, 0xCE, 0xA0, + 0xE9, 0x3B, 0x1E, 0x1C, 0xF9, 0x63, 0x61, 0xF9, + 0x3E, 0xA6, 0xDC, 0x2F, 0x34, 0x51, 0x94, 0xE7, + 0xB3, 0x0F, 0x96, 0x4C, 0x79, 0xF9, 0xE6, 0x1D + }; + +/* aes_wrap failure test 1: input too long */ +uint8 key_10[] = { + 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, + 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F + }; + +uint8 input_10[AKW_MAX_WRAP_LEN+1]; + +uint8 ref_10[] = ""; + +/* aes_wrap failure test 1: input length not multiple of block length */ +uint8 key_11[] = { + 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, + 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F + }; + +uint8 input_11[] = { + 0x00, 0x11, 0x22, 0x33, 0x44, 0x55, 0x66, 0x77, + 0x88, 0x99, 0xAA, 0xBB, 0xCC, 0xDD, 0xEE, 0xFF, + 0x00 + }; + +uint8 ref_11[] = ""; + +/* aes_unwrap failure test 0: input too long */ +uint8 key_20[] = { + 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, + 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F + }; + +uint8 input_20[AKW_MAX_WRAP_LEN+1]; + +uint8 ref_20[] = ""; + +/* aes_unwrap failure test 1: input length not multiple of block length */ +uint8 key_21[] = { + 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, + 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F + }; + +uint8 input_21[] = { + 0x00, 0x11, 0x22, 0x33, 0x44, 0x55, 0x66, 0x77, + 0x88, 0x99, 0xAA, 0xBB, 0xCC, 0xDD, 0xEE, 0xFF, + 0x00 + }; + +uint8 ref_21[] = ""; + +/* aes_unwrap failure test 2: unwraped data incorrect */ +uint8 key_22[] = { + 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, + 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F + }; + +uint8 input_22[] = { + 0x00, 0x11, 0x22, 0x33, 0x44, 0x55, 0x66, 0x77, + 0x88, 0x99, 0xAA, 0xBB, 0xCC, 0xDD, 0xEE, 0xFF + }; + +uint8 ref_22[] = ""; + + +typedef struct { + int kl; + uint8 *key; + int il; + uint8 *input; + uint8 *ref; +} akw_vector_t; + +#define AKW_VECTOR_ENTRY(x) \ + { sizeof(key_##x), key_##x, sizeof(input_##x), input_##x, ref_##x } + +akw_vector_t akw_vec[] = { + AKW_VECTOR_ENTRY(00), + AKW_VECTOR_ENTRY(01), + AKW_VECTOR_ENTRY(02), + AKW_VECTOR_ENTRY(03), + AKW_VECTOR_ENTRY(04), + AKW_VECTOR_ENTRY(05), + AKW_VECTOR_ENTRY(06) + }; + +akw_vector_t akw_wrap_fail_vec[] = { + AKW_VECTOR_ENTRY(10), + AKW_VECTOR_ENTRY(11) + }; + +akw_vector_t akw_unwrap_fail_vec[] = { + AKW_VECTOR_ENTRY(20), + AKW_VECTOR_ENTRY(21), + AKW_VECTOR_ENTRY(22) + }; diff --git a/release/src-rt/bcmcrypto/prebuilt/.dummy b/release/src-rt/bcmcrypto/bcmccx.c old mode 100644 new mode 100755 similarity index 100% copy from release/src-rt/bcmcrypto/prebuilt/.dummy copy to release/src-rt/bcmcrypto/bcmccx.c diff --git a/release/src-rt/bcmcrypto/bn.c b/release/src-rt/bcmcrypto/bn.c new file mode 100755 index 0000000000..aee01f6aef --- /dev/null +++ b/release/src-rt/bcmcrypto/bn.c @@ -0,0 +1,5661 @@ +/* + * bn.c: Big Number routines. Needed by Diffie Hellman implementation. + * + * Code copied from openssl distribution and + * Modified just enough so that compiles and runs standalone + * + * Copyright (C) 2010, Broadcom Corporation. All Rights Reserved. + * + * Permission to use, copy, modify, and/or distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY + * SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION + * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN + * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + * + * $Id: bn.c,v 1.7 2007-10-13 00:50:05 Exp $ + */ +/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) + * All rights reserved. + * + * This package is an SSL implementation written + * by Eric Young (eay@cryptsoft.com). + * The implementation was written so as to conform with Netscapes SSL. + * + * This library is free for commercial and non-commercial use as long as + * the following conditions are aheared to. The following conditions + * apply to all code found in this distribution, be it the RC4, RSA, + * lhash, DES, etc., code; not just the SSL code. The SSL documentation + * included with this distribution is covered by the same copyright terms + * except that the holder is Tim Hudson (tjh@cryptsoft.com). + * + * Copyright remains Eric Young's, and as such any Copyright notices in + * the code are not to be removed. + * If this package is used in a product, Eric Young should be given attribution + * as the author of the parts of the library used. + * This can be in the form of a textual message at program startup or + * in documentation (online or textual) provided with the package. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * "This product includes cryptographic software written by + * Eric Young (eay@cryptsoft.com)" + * The word 'cryptographic' can be left out if the rouines from the library + * being used are not cryptographic related :-). + * 4. If you include any Windows specific code (or a derivative thereof) from + * the apps directory (application code) you must include an acknowledgement: + * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" + * + * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * The licence and distribution terms for any publically available version or + * derivative of this code cannot be changed. i.e. this code cannot simply be + * copied and put under another distribution licence + * [including the GNU Public Licence.] + */ +/* + * Copyright (c) 1998-2000 The OpenSSL Project. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * + * 3. All advertising materials mentioning features or use of this + * software must display the following acknowledgment: + * "This product includes software developed by the OpenSSL Project + * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" + * + * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + * endorse or promote products derived from this software without + * prior written permission. For written permission, please contact + * openssl-core@openssl.org. + * + * 5. Products derived from this software may not be called "OpenSSL" + * nor may "OpenSSL" appear in their names without prior written + * permission of the OpenSSL Project. + * + * 6. Redistributions of any form whatsoever must retain the following + * acknowledgment: + * "This product includes software developed by the OpenSSL Project + * for use in the OpenSSL Toolkit (http://www.openssl.org/)" + * + * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY + * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR + * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * + * This product includes cryptographic software written by Eric Young + * (eay@cryptsoft.com). This product includes software written by Tim + * Hudson (tjh@cryptsoft.com). + * + */ +/* Includes code written by Lenka Fibikova + * for the OpenSSL project. + */ + +#include +#include +#include +#include +#include +#include +#include "bn_lcl.h" + +#define OPENSSL_malloc malloc +#define OPENSSL_free free +#define OPENSSL_cleanse(buf, size) memset(buf, 0, size) +#define BNerr(a, b) + +static bn_rand_fn_t bn_rand_fn = NULL; + +void +BN_register_RAND(bn_rand_fn_t fn) +{ + bn_rand_fn = fn; +} + +/* r can == a or b */ +int +BN_add(BIGNUM *r, const BIGNUM *a, const BIGNUM *b) +{ + const BIGNUM *tmp; + int a_neg = a->neg; + + bn_check_top(a); + bn_check_top(b); + + /* a + b a+b + * a + -b a-b + * -a + b b-a + * -a + -b -(a+b) + */ + if (a_neg ^ b->neg) { + /* only one is negative */ + if (a_neg) { + tmp = a; a = b; b = tmp; + } + + /* we are now a - b */ + + if (BN_ucmp(a, b) < 0) { + if (!BN_usub(r, b, a)) return (0); + r->neg = 1; + } else { + if (!BN_usub(r, a, b)) return (0); + r->neg = 0; + } + return (1); + } + + if (!BN_uadd(r, a, b)) return (0); + if (a_neg) /* both are neg */ + r->neg = 1; + else + r->neg = 0; + return (1); +} + +/* unsigned add of b to a, r must be large enough */ +int +BN_uadd(BIGNUM *r, const BIGNUM *a, const BIGNUM *b) +{ + register int i; + int max, min; + BN_ULONG *ap, *bp, *rp, carry, t1; + const BIGNUM *tmp; + + bn_check_top(a); + bn_check_top(b); + + if (a->top < b->top) { + tmp = a; a = b; b = tmp; + } + max = a->top; + min = b->top; + + if (bn_wexpand(r, max+1) == NULL) + return (0); + + r->top = max; + + + ap = a->d; + bp = b->d; + rp = r->d; + carry = 0; + + carry = bn_add_words(rp, ap, bp, min); + rp += min; + ap += min; + bp += min; + i = min; + + if (carry) { + while (i < max) { + i++; + t1 = *(ap++); + if ((*(rp++) = (t1+1)&BN_MASK2) >= t1) { + carry = 0; + break; + } + } + if ((i >= max) && carry) { + *(rp++) = 1; + r->top++; + } + } + if (rp != ap) { + for (; i < max; i++) + *(rp++) = *(ap++); + } + /* memcpy(rp, ap, sizeof(*ap)*(max-i)); */ + r->neg = 0; + return (1); +} + +/* unsigned subtraction of b from a, a must be larger than b. */ +int +BN_usub(BIGNUM *r, const BIGNUM *a, const BIGNUM *b) +{ + int max, min; + register BN_ULONG t1, t2, *ap, *bp, *rp; + int i, carry; +#if defined(IRIX_CC_BUG) && !defined(LINT) + int dummy; +#endif + + bn_check_top(a); + bn_check_top(b); + + if (a->top < b->top) /* hmm... should not be happening */ { + BNerr(BN_F_BN_USUB, BN_R_ARG2_LT_ARG3); + return (0); + } + + max = a->top; + min = b->top; + if (bn_wexpand(r, max) == NULL) return (0); + + ap = a->d; + bp = b->d; + rp = r->d; + + carry = 0; + for (i = 0; i < min; i++) { + t1 = *(ap++); + t2 = *(bp++); + if (carry) { + carry = (t1 <= t2); + t1 = (t1-t2-1)&BN_MASK2; + } + else { + carry = (t1 < t2); + t1 = (t1-t2)&BN_MASK2; + } +#if defined(IRIX_CC_BUG) && !defined(LINT) + dummy = t1; +#endif + *(rp++) = t1&BN_MASK2; + } + if (carry) /* subtracted */ { + while (i < max) { + i++; + t1 = *(ap++); + t2 = (t1-1)&BN_MASK2; + *(rp++) = t2; + if (t1 > t2) break; + } + } + if (rp != ap) { + for (;;) { + if (i++ >= max) break; + rp[0] = ap[0]; + if (i++ >= max) break; + rp[1] = ap[1]; + if (i++ >= max) break; + rp[2] = ap[2]; + if (i++ >= max) break; + rp[3] = ap[3]; + rp += 4; + ap += 4; + } + } + + r->top = max; + r->neg = 0; + bn_fix_top(r); + return (1); +} + +int +BN_sub(BIGNUM *r, const BIGNUM *a, const BIGNUM *b) +{ + int max; + int add = 0, neg = 0; + const BIGNUM *tmp; + + bn_check_top(a); + bn_check_top(b); + + /* a - b a-b + * a - -b a+b + * -a - b -(a+b) + * -a - -b b-a + */ + if (a->neg) { + if (b->neg) { tmp = a; a = b; b = tmp; } + else { add = 1; neg = 1; } + } + else { + if (b->neg) { add = 1; neg = 0; } + } + + if (add) { + if (!BN_uadd(r, a, b)) return (0); + r->neg = neg; + return (1); + } + + /* We are actually doing a - b :-) */ + + max = (a->top > b->top)?a->top:b->top; + if (bn_wexpand(r, max) == NULL) return (0); + if (BN_ucmp(a, b) < 0) { + if (!BN_usub(r, b, a)) return (0); + r->neg = 1; + } + else { + if (!BN_usub(r, a, b)) return (0); + r->neg = 0; + } + return (1); +} + + +#if defined(BN_LLONG) || defined(BN_UMULT_HIGH) + +BN_ULONG +bn_mul_add_words(BN_ULONG *rp, const BN_ULONG *ap, int num, BN_ULONG w) +{ + BN_ULONG c1 = 0; + + assert(num >= 0); + if (num <= 0) return (c1); + + while (num&~3) { + mul_add(rp[0], ap[0], w, c1); + mul_add(rp[1], ap[1], w, c1); + mul_add(rp[2], ap[2], w, c1); + mul_add(rp[3], ap[3], w, c1); + ap += 4; rp += 4; num -= 4; + } + if (num) { + mul_add(rp[0], ap[0], w, c1); if (--num == 0) return c1; + mul_add(rp[1], ap[1], w, c1); if (--num == 0) return c1; + mul_add(rp[2], ap[2], w, c1); return c1; + } + + return (c1); +} + +BN_ULONG +bn_mul_words(BN_ULONG *rp, const BN_ULONG *ap, int num, BN_ULONG w) +{ + BN_ULONG c1 = 0; + + assert(num >= 0); + if (num <= 0) return (c1); + + while (num&~3) { + mul(rp[0], ap[0], w, c1); + mul(rp[1], ap[1], w, c1); + mul(rp[2], ap[2], w, c1); + mul(rp[3], ap[3], w, c1); + ap += 4; rp += 4; num -= 4; + } + if (num) { + mul(rp[0], ap[0], w, c1); if (--num == 0) return c1; + mul(rp[1], ap[1], w, c1); if (--num == 0) return c1; + mul(rp[2], ap[2], w, c1); + } + return (c1); +} + +void +bn_sqr_words(BN_ULONG *r, const BN_ULONG *a, int n) +{ + assert(n >= 0); + if (n <= 0) return; + while (n & ~3) { + sqr(r[0], r[1], a[0]); + sqr(r[2], r[3], a[1]); + sqr(r[4], r[5], a[2]); + sqr(r[6], r[7], a[3]); + a += 4; r += 8; n -= 4; + } + if (n) { + sqr(r[0], r[1], a[0]); if (--n == 0) return; + sqr(r[2], r[3], a[1]); if (--n == 0) return; + sqr(r[4], r[5], a[2]); + } +} + +#else /* !(defined(BN_LLONG) || defined(BN_UMULT_HIGH)) */ + +BN_ULONG +bn_mul_add_words(BN_ULONG *rp, const BN_ULONG *ap, int num, BN_ULONG w) +{ + BN_ULONG c = 0; + BN_ULONG bl, bh; + + assert(num >= 0); + if (num <= 0) return ((BN_ULONG)0); + + bl = LBITS(w); + bh = HBITS(w); + + for (;;) { + mul_add(rp[0], ap[0], bl, bh, c); + if (--num == 0) break; + mul_add(rp[1], ap[1], bl, bh, c); + if (--num == 0) break; + mul_add(rp[2], ap[2], bl, bh, c); + if (--num == 0) break; + mul_add(rp[3], ap[3], bl, bh, c); + if (--num == 0) break; + ap += 4; + rp += 4; + } + return (c); +} + +BN_ULONG +bn_mul_words(BN_ULONG *rp, const BN_ULONG *ap, int num, BN_ULONG w) +{ + BN_ULONG carry = 0; + BN_ULONG bl, bh; + + assert(num >= 0); + if (num <= 0) return ((BN_ULONG)0); + + bl = LBITS(w); + bh = HBITS(w); + + for (;;) { + mul(rp[0], ap[0], bl, bh, carry); + if (--num == 0) break; + mul(rp[1], ap[1], bl, bh, carry); + if (--num == 0) break; + mul(rp[2], ap[2], bl, bh, carry); + if (--num == 0) break; + mul(rp[3], ap[3], bl, bh, carry); + if (--num == 0) break; + ap += 4; + rp += 4; + } + return (carry); +} + +void +bn_sqr_words(BN_ULONG *r, const BN_ULONG *a, int n) +{ + assert(n >= 0); + if (n <= 0) return; + for (;;) { + sqr64(r[0], r[1], a[0]); + if (--n == 0) break; + + sqr64(r[2], r[3], a[1]); + if (--n == 0) break; + + sqr64(r[4], r[5], a[2]); + if (--n == 0) break; + + sqr64(r[6], r[7], a[3]); + if (--n == 0) break; + + a += 4; + r += 8; + } +} + +#endif /* !(defined(BN_LLONG) || defined(BN_UMULT_HIGH)) */ + +#if defined(BN_LLONG) && defined(BN_DIV2W) + +BN_ULONG +bn_div_words(BN_ULONG h, BN_ULONG l, BN_ULONG d) +{ + return ((BN_ULONG)(((((BN_ULLONG)h) << BN_BITS2)|l) / (BN_ULLONG)d)); +} + +#else + +/* Divide h, l by d and return the result. */ +/* I need to test this some more :-( */ +BN_ULONG bn_div_words(BN_ULONG h, BN_ULONG l, BN_ULONG d) +{ + BN_ULONG dh, dl, q, ret = 0, th, tl, t; + int i, count = 2; + + if (d == 0) return (BN_MASK2); + + i = BN_num_bits_word(d); + assert((i == BN_BITS2) || (h > (BN_ULONG)1 << i)); + + i = BN_BITS2-i; + if (h >= d) h -= d; + + if (i) { + d <<= i; + h = (h << i) | (l >> (BN_BITS2 - i)); + l <<= i; + } + dh = (d&BN_MASK2h) >> BN_BITS4; + dl = (d&BN_MASK2l); + for (;;) { + if ((h>>BN_BITS4) == dh) + q = BN_MASK2l; + else + q = h/dh; + + th = q*dh; + tl = dl*q; + for (;;) { + t = h-th; + if ((t&BN_MASK2h) || + ((tl) <= ((t << BN_BITS4) | + ((l & BN_MASK2h) >> BN_BITS4)))) + break; + q--; + th -= dh; + tl -= dl; + } + t = (tl >> BN_BITS4); + tl = (tl << BN_BITS4) & BN_MASK2h; + th += t; + + if (l < tl) th++; + l -= tl; + if (h < th) { + h += d; + q--; + } + h -= th; + + if (--count == 0) break; + + ret = q << BN_BITS4; + h = ((h << BN_BITS4) | (l >> BN_BITS4)) & BN_MASK2; + l = (l & BN_MASK2l) << BN_BITS4; + } + ret |= q; + return (ret); +} +#endif /* !defined(BN_LLONG) && defined(BN_DIV2W) */ + +#ifdef BN_LLONG +BN_ULONG +bn_add_words(BN_ULONG *r, const BN_ULONG *a, const BN_ULONG *b, int n) +{ + BN_ULLONG ll = 0; + + assert(n >= 0); + if (n <= 0) return ((BN_ULONG)0); + + for (;;) { + ll += (BN_ULLONG)a[0]+b[0]; + r[0] = (BN_ULONG)ll&BN_MASK2; + ll >>= BN_BITS2; + if (--n <= 0) break; + + ll += (BN_ULLONG)a[1]+b[1]; + r[1] = (BN_ULONG)ll&BN_MASK2; + ll >>= BN_BITS2; + if (--n <= 0) break; + + ll += (BN_ULLONG)a[2]+b[2]; + r[2] = (BN_ULONG)ll&BN_MASK2; + ll >>= BN_BITS2; + if (--n <= 0) break; + + ll += (BN_ULLONG)a[3]+b[3]; + r[3] = (BN_ULONG)ll&BN_MASK2; + ll >>= BN_BITS2; + if (--n <= 0) break; + + a += 4; + b += 4; + r += 4; + } + return ((BN_ULONG)ll); +} + +#else /* !BN_LLONG */ + +BN_ULONG +bn_add_words(BN_ULONG *r, const BN_ULONG *a, const BN_ULONG *b, int n) +{ + BN_ULONG c, l, t; + + assert(n >= 0); + if (n <= 0) return ((BN_ULONG)0); + + c = 0; + for (;;) { + t = a[0]; + t = (t+c)&BN_MASK2; + c = (t < c); + l = (t+b[0])&BN_MASK2; + c += (l < t); + r[0] = l; + if (--n <= 0) break; + + t = a[1]; + t = (t+c)&BN_MASK2; + c = (t < c); + l = (t+b[1])&BN_MASK2; + c += (l < t); + r[1] = l; + if (--n <= 0) break; + + t = a[2]; + t = (t+c)&BN_MASK2; + c = (t < c); + l = (t+b[2])&BN_MASK2; + c += (l < t); + r[2] = l; + if (--n <= 0) break; + + t = a[3]; + t = (t+c)&BN_MASK2; + c = (t < c); + l = (t+b[3])&BN_MASK2; + c += (l < t); + r[3] = l; + if (--n <= 0) break; + + a += 4; + b += 4; + r += 4; + } + return ((BN_ULONG)c); +} +#endif /* !BN_LLONG */ + +BN_ULONG +bn_sub_words(BN_ULONG *r, const BN_ULONG *a, const BN_ULONG *b, int n) +{ + BN_ULONG t1, t2; + int c = 0; + + assert(n >= 0); + if (n <= 0) return ((BN_ULONG)0); + + for (;;) { + t1 = a[0]; t2 = b[0]; + r[0] = (t1-t2-c)&BN_MASK2; + if (t1 != t2) c = (t1 < t2); + if (--n <= 0) break; + + t1 = a[1]; t2 = b[1]; + r[1] = (t1-t2-c)&BN_MASK2; + if (t1 != t2) c = (t1 < t2); + if (--n <= 0) break; + + t1 = a[2]; t2 = b[2]; + r[2] = (t1-t2-c)&BN_MASK2; + if (t1 != t2) c = (t1 < t2); + if (--n <= 0) break; + + t1 = a[3]; t2 = b[3]; + r[3] = (t1-t2-c)&BN_MASK2; + if (t1 != t2) c = (t1 < t2); + if (--n <= 0) break; + + a += 4; + b += 4; + r += 4; + } + return (c); +} + +#ifdef BN_MUL_COMBA + +#undef bn_mul_comba8 +#undef bn_mul_comba4 +#undef bn_sqr_comba8 +#undef bn_sqr_comba4 + +/* mul_add_c(a, b, c0, c1, c2) -- c += a*b for three word number c = (c2, c1, c0) */ +/* mul_add_c2(a, b, c0, c1, c2) -- c += 2*a*b for three word number c = (c2, c1, c0) */ +/* sqr_add_c(a, i, c0, c1, c2) -- c += a[i]^2 for three word number c = (c2, c1, c0) */ +/* sqr_add_c2(a, i, c0, c1, c2) -- c += 2*a[i]*a[j] for three word number c = (c2, c1, c0) */ + +#ifdef BN_LLONG +#define mul_add_c(a, b, c0, c1, c2) \ + t = (BN_ULLONG)a * b; \ + t1 = (BN_ULONG)Lw(t); \ + t2 = (BN_ULONG)Hw(t); \ + c0 = (c0+t1)&BN_MASK2; if ((c0) < t1) t2++; \ + c1 = (c1+t2)&BN_MASK2; if ((c1) < t2) c2++; + +#define mul_add_c2(a, b, c0, c1, c2) \ + t = (BN_ULLONG)a * b; \ + tt = (t + t) & BN_MASK; \ + if (tt < t) c2++; \ + t1 = (BN_ULONG)Lw(tt); \ + t2 = (BN_ULONG)Hw(tt); \ + c0 = (c0+t1)&BN_MASK2; \ + if ((c0 < t1) && (((++t2) & BN_MASK2) == 0)) c2++; \ + c1 = (c1+t2)&BN_MASK2; if ((c1) < t2) c2++; + +#define sqr_add_c(a, i, c0, c1, c2) \ + t = (BN_ULLONG)a[i]*a[i]; \ + t1 = (BN_ULONG)Lw(t); \ + t2 = (BN_ULONG)Hw(t); \ + c0 = (c0+t1)&BN_MASK2; if ((c0) < t1) t2++; \ + c1 = (c1+t2)&BN_MASK2; if ((c1) < t2) c2++; + +#define sqr_add_c2(a, i, j, c0, c1, c2) \ + mul_add_c2((a)[i], (a)[j], c0, c1, c2) + +#elif defined(BN_UMULT_HIGH) + +#define mul_add_c(a, b, c0, c1, c2) { \ + BN_ULONG ta = (a), tb = (b); \ + t1 = ta * tb; \ + t2 = BN_UMULT_HIGH(ta, tb); \ + c0 += t1; t2 += (c0 < t1) ? 1 : 0; \ + c1 += t2; c2 += (c1 < t2) ? 1 : 0; \ +} + +#define mul_add_c2(a, b, c0, c1, c2) { \ + BN_ULONG ta = (a), tb = (b), t0; \ + t1 = BN_UMULT_HIGH(ta, tb); \ + t0 = ta * tb; \ + t2 = t1 + t1; c2 += (t2 < t1) ? 1 : 0; \ + t1 = t0 + t0; t2 += (t1 < t0) ? 1 : 0; \ + c0 += t1; t2 += (c0 < t1) ? 1 : 0; \ + c1 += t2; c2 += (c1 < t2) ? 1 : 0; \ +} + +#define sqr_add_c(a, i, c0, c1, c2) { \ + BN_ULONG ta = (a)[i]; \ + t1 = ta * ta; \ + t2 = BN_UMULT_HIGH(ta, ta); \ + c0 += t1; t2 += (c0 < t1) ? 1 : 0; \ + c1 += t2; c2 += (c1 < t2) ? 1 : 0; \ +} + +#define sqr_add_c2(a, i, j, c0, c1, c2) \ + mul_add_c2((a)[i], (a)[j], c0, c1, c2) + +#else /* !BN_LLONG */ + +#define mul_add_c(a, b, c0, c1, c2) \ + t1 = LBITS(a); t2 = HBITS(a); \ + bl = LBITS(b); bh = HBITS(b); \ + mul64(t1, t2, bl, bh); \ + c0 = (c0+t1)&BN_MASK2; if ((c0) < t1) t2++; \ + c1 = (c1+t2)&BN_MASK2; if ((c1) < t2) c2++; + +#define mul_add_c2(a, b, c0, c1, c2) \ + t1 = LBITS(a); t2 = HBITS(a); \ + bl = LBITS(b); bh = HBITS(b); \ + mul64(t1, t2, bl, bh); \ + if (t2 & BN_TBIT) c2++; \ + t2 = (t2+t2) & BN_MASK2; \ + if (t1 & BN_TBIT) t2++; \ + t1 = (t1+t1) & BN_MASK2; \ + c0 = (c0+t1) & BN_MASK2; \ + if ((c0 < t1) && (((++t2) & BN_MASK2) == 0)) c2++; \ + c1 = (c1+t2) & BN_MASK2; if ((c1) < t2) c2++; + +#define sqr_add_c(a, i, c0, c1, c2) \ + sqr64(t1, t2, (a)[i]); \ + c0 = (c0+t1) & BN_MASK2; if ((c0) < t1) t2++; \ + c1 = (c1+t2) & BN_MASK2; if ((c1) < t2) c2++; + +#define sqr_add_c2(a, i, j, c0, c1, c2) \ + mul_add_c2((a)[i], (a)[j], c0, c1, c2) +#endif /* !BN_LLONG */ + +void +bn_mul_comba8(BN_ULONG *r, BN_ULONG *a, BN_ULONG *b) +{ +#ifdef BN_LLONG + BN_ULLONG t; +#else + BN_ULONG bl, bh; +#endif + BN_ULONG t1, t2; + BN_ULONG c1, c2, c3; + + c1 = 0; + c2 = 0; + c3 = 0; + mul_add_c(a[0], b[0], c1, c2, c3); + r[0] = c1; + c1 = 0; + mul_add_c(a[0], b[1], c2, c3, c1); + mul_add_c(a[1], b[0], c2, c3, c1); + r[1] = c2; + c2 = 0; + mul_add_c(a[2], b[0], c3, c1, c2); + mul_add_c(a[1], b[1], c3, c1, c2); + mul_add_c(a[0], b[2], c3, c1, c2); + r[2] = c3; + c3 = 0; + mul_add_c(a[0], b[3], c1, c2, c3); + mul_add_c(a[1], b[2], c1, c2, c3); + mul_add_c(a[2], b[1], c1, c2, c3); + mul_add_c(a[3], b[0], c1, c2, c3); + r[3] = c1; + c1 = 0; + mul_add_c(a[4], b[0], c2, c3, c1); + mul_add_c(a[3], b[1], c2, c3, c1); + mul_add_c(a[2], b[2], c2, c3, c1); + mul_add_c(a[1], b[3], c2, c3, c1); + mul_add_c(a[0], b[4], c2, c3, c1); + r[4] = c2; + c2 = 0; + mul_add_c(a[0], b[5], c3, c1, c2); + mul_add_c(a[1], b[4], c3, c1, c2); + mul_add_c(a[2], b[3], c3, c1, c2); + mul_add_c(a[3], b[2], c3, c1, c2); + mul_add_c(a[4], b[1], c3, c1, c2); + mul_add_c(a[5], b[0], c3, c1, c2); + r[5] = c3; + c3 = 0; + mul_add_c(a[6], b[0], c1, c2, c3); + mul_add_c(a[5], b[1], c1, c2, c3); + mul_add_c(a[4], b[2], c1, c2, c3); + mul_add_c(a[3], b[3], c1, c2, c3); + mul_add_c(a[2], b[4], c1, c2, c3); + mul_add_c(a[1], b[5], c1, c2, c3); + mul_add_c(a[0], b[6], c1, c2, c3); + r[6] = c1; + c1 = 0; + mul_add_c(a[0], b[7], c2, c3, c1); + mul_add_c(a[1], b[6], c2, c3, c1); + mul_add_c(a[2], b[5], c2, c3, c1); + mul_add_c(a[3], b[4], c2, c3, c1); + mul_add_c(a[4], b[3], c2, c3, c1); + mul_add_c(a[5], b[2], c2, c3, c1); + mul_add_c(a[6], b[1], c2, c3, c1); + mul_add_c(a[7], b[0], c2, c3, c1); + r[7] = c2; + c2 = 0; + mul_add_c(a[7], b[1], c3, c1, c2); + mul_add_c(a[6], b[2], c3, c1, c2); + mul_add_c(a[5], b[3], c3, c1, c2); + mul_add_c(a[4], b[4], c3, c1, c2); + mul_add_c(a[3], b[5], c3, c1, c2); + mul_add_c(a[2], b[6], c3, c1, c2); + mul_add_c(a[1], b[7], c3, c1, c2); + r[8] = c3; + c3 = 0; + mul_add_c(a[2], b[7], c1, c2, c3); + mul_add_c(a[3], b[6], c1, c2, c3); + mul_add_c(a[4], b[5], c1, c2, c3); + mul_add_c(a[5], b[4], c1, c2, c3); + mul_add_c(a[6], b[3], c1, c2, c3); + mul_add_c(a[7], b[2], c1, c2, c3); + r[9] = c1; + c1 = 0; + mul_add_c(a[7], b[3], c2, c3, c1); + mul_add_c(a[6], b[4], c2, c3, c1); + mul_add_c(a[5], b[5], c2, c3, c1); + mul_add_c(a[4], b[6], c2, c3, c1); + mul_add_c(a[3], b[7], c2, c3, c1); + r[10] = c2; + c2 = 0; + mul_add_c(a[4], b[7], c3, c1, c2); + mul_add_c(a[5], b[6], c3, c1, c2); + mul_add_c(a[6], b[5], c3, c1, c2); + mul_add_c(a[7], b[4], c3, c1, c2); + r[11] = c3; + c3 = 0; + mul_add_c(a[7], b[5], c1, c2, c3); + mul_add_c(a[6], b[6], c1, c2, c3); + mul_add_c(a[5], b[7], c1, c2, c3); + r[12] = c1; + c1 = 0; + mul_add_c(a[6], b[7], c2, c3, c1); + mul_add_c(a[7], b[6], c2, c3, c1); + r[13] = c2; + c2 = 0; + mul_add_c(a[7], b[7], c3, c1, c2); + r[14] = c3; + r[15] = c1; +} + +void bn_mul_comba4(BN_ULONG *r, BN_ULONG *a, BN_ULONG *b) +{ +#ifdef BN_LLONG + BN_ULLONG t; +#else + BN_ULONG bl, bh; +#endif + BN_ULONG t1, t2; + BN_ULONG c1, c2, c3; + + c1 = 0; + c2 = 0; + c3 = 0; + mul_add_c(a[0], b[0], c1, c2, c3); + r[0] = c1; + c1 = 0; + mul_add_c(a[0], b[1], c2, c3, c1); + mul_add_c(a[1], b[0], c2, c3, c1); + r[1] = c2; + c2 = 0; + mul_add_c(a[2], b[0], c3, c1, c2); + mul_add_c(a[1], b[1], c3, c1, c2); + mul_add_c(a[0], b[2], c3, c1, c2); + r[2] = c3; + c3 = 0; + mul_add_c(a[0], b[3], c1, c2, c3); + mul_add_c(a[1], b[2], c1, c2, c3); + mul_add_c(a[2], b[1], c1, c2, c3); + mul_add_c(a[3], b[0], c1, c2, c3); + r[3] = c1; + c1 = 0; + mul_add_c(a[3], b[1], c2, c3, c1); + mul_add_c(a[2], b[2], c2, c3, c1); + mul_add_c(a[1], b[3], c2, c3, c1); + r[4] = c2; + c2 = 0; + mul_add_c(a[2], b[3], c3, c1, c2); + mul_add_c(a[3], b[2], c3, c1, c2); + r[5] = c3; + c3 = 0; + mul_add_c(a[3], b[3], c1, c2, c3); + r[6] = c1; + r[7] = c2; +} + +void +bn_sqr_comba8(BN_ULONG *r, const BN_ULONG *a) +{ +#ifdef BN_LLONG + BN_ULLONG t, tt; +#else + BN_ULONG bl, bh; +#endif + BN_ULONG t1, t2; + BN_ULONG c1, c2, c3; + + c1 = 0; + c2 = 0; + c3 = 0; + sqr_add_c(a, 0, c1, c2, c3); + r[0] = c1; + c1 = 0; + sqr_add_c2(a, 1, 0, c2, c3, c1); + r[1] = c2; + c2 = 0; + sqr_add_c(a, 1, c3, c1, c2); + sqr_add_c2(a, 2, 0, c3, c1, c2); + r[2] = c3; + c3 = 0; + sqr_add_c2(a, 3, 0, c1, c2, c3); + sqr_add_c2(a, 2, 1, c1, c2, c3); + r[3] = c1; + c1 = 0; + sqr_add_c(a, 2, c2, c3, c1); + sqr_add_c2(a, 3, 1, c2, c3, c1); + sqr_add_c2(a, 4, 0, c2, c3, c1); + r[4] = c2; + c2 = 0; + sqr_add_c2(a, 5, 0, c3, c1, c2); + sqr_add_c2(a, 4, 1, c3, c1, c2); + sqr_add_c2(a, 3, 2, c3, c1, c2); + r[5] = c3; + c3 = 0; + sqr_add_c(a, 3, c1, c2, c3); + sqr_add_c2(a, 4, 2, c1, c2, c3); + sqr_add_c2(a, 5, 1, c1, c2, c3); + sqr_add_c2(a, 6, 0, c1, c2, c3); + r[6] = c1; + c1 = 0; + sqr_add_c2(a, 7, 0, c2, c3, c1); + sqr_add_c2(a, 6, 1, c2, c3, c1); + sqr_add_c2(a, 5, 2, c2, c3, c1); + sqr_add_c2(a, 4, 3, c2, c3, c1); + r[7] = c2; + c2 = 0; + sqr_add_c(a, 4, c3, c1, c2); + sqr_add_c2(a, 5, 3, c3, c1, c2); + sqr_add_c2(a, 6, 2, c3, c1, c2); + sqr_add_c2(a, 7, 1, c3, c1, c2); + r[8] = c3; + c3 = 0; + sqr_add_c2(a, 7, 2, c1, c2, c3); + sqr_add_c2(a, 6, 3, c1, c2, c3); + sqr_add_c2(a, 5, 4, c1, c2, c3); + r[9] = c1; + c1 = 0; + sqr_add_c(a, 5, c2, c3, c1); + sqr_add_c2(a, 6, 4, c2, c3, c1); + sqr_add_c2(a, 7, 3, c2, c3, c1); + r[10] = c2; + c2 = 0; + sqr_add_c2(a, 7, 4, c3, c1, c2); + sqr_add_c2(a, 6, 5, c3, c1, c2); + r[11] = c3; + c3 = 0; + sqr_add_c(a, 6, c1, c2, c3); + sqr_add_c2(a, 7, 5, c1, c2, c3); + r[12] = c1; + c1 = 0; + sqr_add_c2(a, 7, 6, c2, c3, c1); + r[13] = c2; + c2 = 0; + sqr_add_c(a, 7, c3, c1, c2); + r[14] = c3; + r[15] = c1; +} + +void +bn_sqr_comba4(BN_ULONG *r, const BN_ULONG *a) +{ +#ifdef BN_LLONG + BN_ULLONG t, tt; +#else + BN_ULONG bl, bh; +#endif + BN_ULONG t1, t2; + BN_ULONG c1, c2, c3; + + c1 = 0; + c2 = 0; + c3 = 0; + sqr_add_c(a, 0, c1, c2, c3); + r[0] = c1; + c1 = 0; + sqr_add_c2(a, 1, 0, c2, c3, c1); + r[1] = c2; + c2 = 0; + sqr_add_c(a, 1, c3, c1, c2); + sqr_add_c2(a, 2, 0, c3, c1, c2); + r[2] = c3; + c3 = 0; + sqr_add_c2(a, 3, 0, c1, c2, c3); + sqr_add_c2(a, 2, 1, c1, c2, c3); + r[3] = c1; + c1 = 0; + sqr_add_c(a, 2, c2, c3, c1); + sqr_add_c2(a, 3, 1, c2, c3, c1); + r[4] = c2; + c2 = 0; + sqr_add_c2(a, 3, 2, c3, c1, c2); + r[5] = c3; + c3 = 0; + sqr_add_c(a, 3, c1, c2, c3); + r[6] = c1; + r[7] = c2; +} +#else /* !BN_MUL_COMBA */ + +/* hmm... is it faster just to do a multiply? */ +#undef bn_sqr_comba4 +void +bn_sqr_comba4(BN_ULONG *r, BN_ULONG *a) +{ + BN_ULONG t[8]; + bn_sqr_normal(r, a, 4, t); +} + +#undef bn_sqr_comba8 +void +bn_sqr_comba8(BN_ULONG *r, BN_ULONG *a) +{ + BN_ULONG t[16]; + bn_sqr_normal(r, a, 8, t); +} + +void +bn_mul_comba4(BN_ULONG *r, BN_ULONG *a, BN_ULONG *b) +{ + r[4] = bn_mul_words(&(r[0]), a, 4, b[0]); + r[5] = bn_mul_add_words(&(r[1]), a, 4, b[1]); + r[6] = bn_mul_add_words(&(r[2]), a, 4, b[2]); + r[7] = bn_mul_add_words(&(r[3]), a, 4, b[3]); +} + +void +bn_mul_comba8(BN_ULONG *r, BN_ULONG *a, BN_ULONG *b) +{ + r[ 8] = bn_mul_words(&(r[0]), a, 8, b[0]); + r[ 9] = bn_mul_add_words(&(r[1]), a, 8, b[1]); + r[10] = bn_mul_add_words(&(r[2]), a, 8, b[2]); + r[11] = bn_mul_add_words(&(r[3]), a, 8, b[3]); + r[12] = bn_mul_add_words(&(r[4]), a, 8, b[4]); + r[13] = bn_mul_add_words(&(r[5]), a, 8, b[5]); + r[14] = bn_mul_add_words(&(r[6]), a, 8, b[6]); + r[15] = bn_mul_add_words(&(r[7]), a, 8, b[7]); +} + +#endif /* !BN_MUL_COMBA */ + + +BN_CTX * +BN_CTX_new(void) +{ + BN_CTX *ret; + + ret = (BN_CTX *)OPENSSL_malloc(sizeof(BN_CTX)); + if (ret == NULL) { + BNerr(BN_F_BN_CTX_NEW, ERR_R_MALLOC_FAILURE); + return (NULL); + } + + BN_CTX_init(ret); + ret->flags = BN_FLG_MALLOCED; + return (ret); +} + +void +BN_CTX_init(BN_CTX *ctx) +{ + memset(ctx, 0, sizeof(*ctx)); +} + +void +BN_CTX_free(BN_CTX *ctx) +{ + int i; + + if (ctx == NULL) return; + assert(ctx->depth == 0); + + for (i = 0; i < BN_CTX_NUM; i++) + BN_clear_free(&(ctx->bn[i])); + if (ctx->flags & BN_FLG_MALLOCED) + OPENSSL_free(ctx); +} + +void +BN_CTX_start(BN_CTX *ctx) +{ + if (ctx->depth < BN_CTX_NUM_POS) + ctx->pos[ctx->depth] = ctx->tos; + ctx->depth++; +} + + +BIGNUM * +BN_CTX_get(BN_CTX *ctx) +{ + /* Note: If BN_CTX_get is ever changed to allocate BIGNUMs dynamically, + * make sure that if BN_CTX_get fails once it will return NULL again + * until BN_CTX_end is called. (This is so that callers have to check + * only the last return value.) + */ + if (ctx->depth > BN_CTX_NUM_POS || ctx->tos >= BN_CTX_NUM) { + if (!ctx->too_many) { + BNerr(BN_F_BN_CTX_GET, BN_R_TOO_MANY_TEMPORARY_VARIABLES); + /* disable error code until BN_CTX_end is called: */ + ctx->too_many = 1; + } + return NULL; + } + return (&(ctx->bn[ctx->tos++])); +} + +void +BN_CTX_end(BN_CTX *ctx) +{ + if (ctx == NULL) return; + assert(ctx->depth > 0); + if (ctx->depth == 0) { + /* should never happen, but we can tolerate it if not in + * debug mode (could be a 'goto err' in the calling function + * before BN_CTX_start was reached) + */ + BN_CTX_start(ctx); + } + ctx->too_many = 0; + ctx->depth--; + if (ctx->depth < BN_CTX_NUM_POS) + ctx->tos = ctx->pos[ctx->depth]; +} + +/* The old slow way */ + +#if !defined(OPENSSL_NO_ASM) && !defined(OPENSSL_NO_INLINE_ASM) && !defined(PEDANTIC) \ + && !defined(BN_DIV3W) +#if defined(__GNUC__) && __GNUC__ >= 2 +#if defined(__i386) || defined(__i386__) +/* + * There were two reasons for implementing this template: + * - GNU C generates a call to a function (__udivdi3 to be exact) + * in reply to ((((BN_ULLONG)n0) << BN_BITS2) | n1) / d0 (I fail to + * understand why...); + * - divl doesn't only calculate quotient, but also leaves + * remainder in %edx which we can definitely use here:-) + * + * + */ +#define bn_div_words(n0, n1, d0) \ + ({ asm volatile("divl %4" \ + : " = a"(q), " = d"(rem) \ + : "a"(n1), "d"(n0), "g"(d0) \ + : "cc"); \ + q; \ + }) +#define REMAINDER_IS_ALREADY_CALCULATED +#elif defined(__x86_64) && defined(SIXTY_FOUR_BIT_LONG) +/* + * Same story here, but it's 128-bit by 64-bit division. Wow! + * + */ +#define bn_div_words(n0, n1, d0) \ + ({ asm volatile("divq %4" \ + : " = a"(q), " = d"(rem) \ + : "a"(n1), "d"(n0), "g"(d0) \ + : "cc"); \ + q; \ + }) +#define REMAINDER_IS_ALREADY_CALCULATED +#endif /* __ */ +#endif /* __GNUC__ */ +#endif /* OPENSSL_NO_ASM */ + + +/* BN_div computes dv : = num / divisor, rounding towards zero, and sets up + * rm such that dv*divisor + rm = num holds. + * Thus: + * dv->neg == num->neg ^ divisor->neg (unless the result is zero) + * rm->neg == num->neg (unless the remainder is zero) + * If 'dv' or 'rm' is NULL, the respective value is not returned. + */ +int +BN_div(BIGNUM *dv, BIGNUM *rm, const BIGNUM *num, const BIGNUM *divisor, BN_CTX *ctx) +{ + int norm_shift, i, j, loop; + BIGNUM *tmp, wnum, *snum, *sdiv, *res; + BN_ULONG *resp, *wnump; + BN_ULONG d0, d1; + int num_n, div_n; + + bn_check_top(num); + bn_check_top(divisor); + + if (BN_is_zero(divisor)) { + BNerr(BN_F_BN_DIV, BN_R_DIV_BY_ZERO); + return (0); + } + + if (BN_ucmp(num, divisor) < 0) { + if (rm != NULL) { if (BN_copy(rm, num) == NULL) return (0); } + if (dv != NULL) BN_zero(dv); + return (1); + } + + BN_CTX_start(ctx); + tmp = BN_CTX_get(ctx); + snum = BN_CTX_get(ctx); + sdiv = BN_CTX_get(ctx); + if (dv == NULL) + res = BN_CTX_get(ctx); + else res = dv; + if (sdiv == NULL || res == NULL) goto err; + tmp->neg = 0; + + /* First we normalise the numbers */ + norm_shift = BN_BITS2-((BN_num_bits(divisor))%BN_BITS2); + if (!(BN_lshift(sdiv, divisor, norm_shift))) goto err; + sdiv->neg = 0; + norm_shift += BN_BITS2; + if (!(BN_lshift(snum, num, norm_shift))) goto err; + snum->neg = 0; + div_n = sdiv->top; + num_n = snum->top; + loop = num_n-div_n; + + /* Lets setup a 'window' into snum + * This is the part that corresponds to the current + * 'area' being divided + */ + BN_init(&wnum); + wnum.d = &(snum->d[loop]); + wnum.top = div_n; + wnum.dmax = snum->dmax+1; /* a bit of a lie */ + + /* Get the top 2 words of sdiv */ + /* i = sdiv->top; */ + d0 = sdiv->d[div_n-1]; + d1 = (div_n == 1)?0:sdiv->d[div_n-2]; + + /* pointer to the 'top' of snum */ + wnump = &(snum->d[num_n-1]); + + /* Setup to 'res' */ + res->neg = (num->neg^divisor->neg); + if (!bn_wexpand(res, (loop+1))) goto err; + res->top = loop; + resp = &(res->d[loop-1]); + + /* space for temp */ + if (!bn_wexpand(tmp, (div_n+1))) goto err; + + if (BN_ucmp(&wnum, sdiv) >= 0) { + if (!BN_usub(&wnum, &wnum, sdiv)) goto err; + *resp = 1; + res->d[res->top-1] = 1; + } else + res->top--; + if (res->top == 0) + res->neg = 0; + resp--; + + for (i = 0; i < loop - 1; i++) { + BN_ULONG q, l0; +#if defined(BN_DIV3W) && !defined(OPENSSL_NO_ASM) + BN_ULONG bn_div_3_words(BN_ULONG*, BN_ULONG, BN_ULONG); + q = bn_div_3_words(wnump, d1, d0); +#else + BN_ULONG n0, n1, rem = 0; + + n0 = wnump[0]; + n1 = wnump[-1]; + if (n0 == d0) + q = BN_MASK2; + else /* n0 < d0 */ { +#ifdef BN_LLONG + BN_ULLONG t2; + +#if defined(BN_LLONG) && defined(BN_DIV2W) && !defined(bn_div_words) + q = (BN_ULONG)(((((BN_ULLONG)n0) << BN_BITS2) | n1) / d0); +#else + q = bn_div_words(n0, n1, d0); +#ifdef BN_DEBUG_LEVITTE + fprintf(stderr, "DEBUG: bn_div_words(0x%08X, 0x%08X, 0x%08X) -> 0x%08X\n", + n0, n1, d0, q); +#endif /* BN_DEBUG_LEVITTE */ +#endif /* BN_LLONG && BN_DIV2W && !bn_div_words */ + +#ifndef REMAINDER_IS_ALREADY_CALCULATED + /* + * rem doesn't have to be BN_ULLONG. The least we + * know it's less that d0, isn't it? + */ + rem = (n1 - q * d0) & BN_MASK2; +#endif /* !REMAINDER_IS_ALREADY_CALCULATED */ + t2 = (BN_ULLONG)d1 * q; + + for (;;) { + if (t2 <= ((((BN_ULLONG)rem) << BN_BITS2) | wnump[-2])) + break; + q--; + rem += d0; + if (rem < d0) break; /* don't let rem overflow */ + t2 -= d1; + } +#else /* !BN_LLONG */ + BN_ULONG t2l, t2h, ql, qh; + + q = bn_div_words(n0, n1, d0); +#ifdef BN_DEBUG_LEVITTE + fprintf(stderr, "DEBUG: bn_div_words(0x%08X, 0x%08X, 0x%08X) -> 0x%08X\n", + n0, n1, d0, q); +#endif +#ifndef REMAINDER_IS_ALREADY_CALCULATED + rem = (n1 - q * d0) & BN_MASK2; +#endif + +#if defined(BN_UMULT_LOHI) + BN_UMULT_LOHI(t2l, t2h, d1, q); +#elif defined(BN_UMULT_HIGH) + t2l = d1 * q; + t2h = BN_UMULT_HIGH(d1, q); +#else + t2l = LBITS(d1); t2h = HBITS(d1); + ql = LBITS(q); qh = HBITS(q); + mul64(t2l, t2h, ql, qh); /* t2 = (BN_ULLONG)d1 * q; */ +#endif + + for (;;) { + if ((t2h < rem) || ((t2h == rem) && (t2l <= wnump[-2]))) + break; + q--; + rem += d0; + if (rem < d0) break; /* don't let rem overflow */ + if (t2l < d1) + t2h--; + t2l -= d1; + } +#endif /* !BN_LLONG */ + } +#endif /* !BN_DIV3W */ + + l0 = bn_mul_words(tmp->d, sdiv->d, div_n, q); + wnum.d--; wnum.top++; + tmp->d[div_n] = l0; + for (j = div_n + 1; j > 0; j--) + if (tmp->d[j - 1]) break; + tmp->top = j; + + j = wnum.top; + if (!BN_sub(&wnum, &wnum, tmp)) goto err; + + snum->top = snum->top + wnum.top - j; + + if (wnum.neg) { + q--; + j = wnum.top; + if (!BN_add(&wnum, &wnum, sdiv)) goto err; + snum->top += wnum.top - j; + } + *(resp--) = q; + wnump--; + } + if (rm != NULL) { + /* Keep a copy of the neg flag in num because if rm == num + * BN_rshift() will overwrite it. + */ + int neg = num->neg; + BN_rshift(rm, snum, norm_shift); + if (!BN_is_zero(rm)) + rm->neg = neg; + } + BN_CTX_end(ctx); + return (1); +err: + BN_CTX_end(ctx); + return (0); +} + + + +#define TABLE_SIZE 32 + +#ifdef NOT_NEEDED_FOR_DH +/* this one works - simple but works */ +int +BN_exp(BIGNUM *r, const BIGNUM *a, const BIGNUM *p, BN_CTX *ctx) +{ + int i, bits, ret = 0; + BIGNUM *v, *rr; + + BN_CTX_start(ctx); + if ((r == a) || (r == p)) + rr = BN_CTX_get(ctx); + else + rr = r; + if ((v = BN_CTX_get(ctx)) == NULL) goto err; + + if (BN_copy(v, a) == NULL) goto err; + bits = BN_num_bits(p); + + if (BN_is_odd(p)) { + if (BN_copy(rr, a) == NULL) + goto err; + } else { + if (!BN_one(rr)) + goto err; + } + + for (i = 1; i < bits; i++) { + if (!BN_sqr(v, v, ctx)) goto err; + if (BN_is_bit_set(p, i)) { + if (!BN_mul(rr, rr, v, ctx)) goto err; + } + } + ret = 1; +err: + if (r != rr) BN_copy(r, rr); + BN_CTX_end(ctx); + return (ret); +} + +int +BN_mod_exp(BIGNUM *r, const BIGNUM *a, const BIGNUM *p, const BIGNUM *m, BN_CTX *ctx) +{ + int ret; + + bn_check_top(a); + bn_check_top(p); + bn_check_top(m); + + /* For even modulus m = 2^k*m_odd, it might make sense to compute + * a^p mod m_odd and a^p mod 2^k separately (with Montgomery + * exponentiation for the odd part), using appropriate exponent + * reductions, and combine the results using the CRT. + * + * For now, we use Montgomery only if the modulus is odd; otherwise, + * exponentiation using the reciprocal-based quick remaindering + * algorithm is used. + * + * (Timing obtained with expspeed.c [computations a^p mod m + * where a, p, m are of the same length: 256, 512, 1024, 2048, + * 4096, 8192 bits], compared to the running time of the + * standard algorithm: + * + * BN_mod_exp_mont 33 .. 40 % [AMD K6-2, Linux, debug configuration] + * 55 .. 77 % [UltraSparc processor, but + * debug-solaris-sparcv8-gcc conf.] + * + * BN_mod_exp_recp 50 .. 70 % [AMD K6-2, Linux, debug configuration] + * 62 .. 118 % [UltraSparc, debug-solaris-sparcv8-gcc] + * + * On the Sparc, BN_mod_exp_recp was faster than BN_mod_exp_mont + * at 2048 and more bits, but at 512 and 1024 bits, it was + * slower even than the standard algorithm! + * + * "Real" timings [linux-elf, solaris-sparcv9-gcc configurations] + * should be obtained when the new Montgomery reduction code + * has been integrated into OpenSSL.) + */ + +#define MONT_MUL_MOD +#define MONT_EXP_WORD +#define RECP_MUL_MOD + +#ifdef MONT_MUL_MOD + /* I have finally been able to take out this pre-condition of + * the top bit being set. It was caused by an error in BN_div + * with negatives. There was also another problem when for a^b%m + * a >= m. eay 07-May-97 + */ +/* if ((m->d[m->top-1]&BN_TBIT) && BN_is_odd(m)) */ + + if (BN_is_odd(m)) { +#ifdef MONT_EXP_WORD + if (a->top == 1 && !a->neg) { + BN_ULONG A = a->d[0]; + ret = BN_mod_exp_mont_word(r, A, p, m, ctx, NULL); + } else +#endif + ret = BN_mod_exp_mont(r, a, p, m, ctx, NULL); + } else +#endif /* MONT_MUL_MOD */ +#ifdef RECP_MUL_MOD + { + ret = BN_mod_exp_recp(r, a, p, m, ctx); + } +#else + { + ret = BN_mod_exp_simple(r, a, p, m, ctx); + } +#endif + + return (ret); +} + + +int +BN_mod_exp_recp(BIGNUM *r, const BIGNUM *a, const BIGNUM *p, const BIGNUM *m, BN_CTX *ctx) +{ + int i, j, bits, ret = 0, wstart, wend, window, wvalue; + int start = 1, ts = 0; + BIGNUM *aa; + BIGNUM val[TABLE_SIZE]; + BN_RECP_CTX recp; + + bits = BN_num_bits(p); + + if (bits == 0) { + ret = BN_one(r); + return ret; + } + + BN_CTX_start(ctx); + if ((aa = BN_CTX_get(ctx)) == NULL) goto err; + + BN_RECP_CTX_init(&recp); + if (m->neg) { + /* ignore sign of 'm' */ + if (!BN_copy(aa, m)) goto err; + aa->neg = 0; + if (BN_RECP_CTX_set(&recp, aa, ctx) <= 0) goto err; + } else { + if (BN_RECP_CTX_set(&recp, m, ctx) <= 0) goto err; + } + + BN_init(&(val[0])); + ts = 1; + + if (!BN_nnmod(&(val[0]), a, m, ctx)) goto err; /* 1 */ + if (BN_is_zero(&(val[0]))) { + ret = BN_zero(r); + goto err; + } + + window = BN_window_bits_for_exponent_size(bits); + if (window > 1) { + if (!BN_mod_mul_reciprocal(aa, &(val[0]), &(val[0]), &recp, ctx)) + goto err; /* 2 */ + j = 1 << (window - 1); + for (i = 1; i < j; i++) { + BN_init(&val[i]); + if (!BN_mod_mul_reciprocal(&(val[i]), &(val[i - 1]), aa, &recp, ctx)) + goto err; + } + ts = i; + } + + start = 1; /* This is used to avoid multiplication etc + * when there is only the value '1' in the + * buffer. + */ + wvalue = 0; /* The 'value' of the window */ + wstart = bits - 1; /* The top bit of the window */ + wend = 0; /* The bottom bit of the window */ + + if (!BN_one(r)) goto err; + + for (;;) { + if (BN_is_bit_set(p, wstart) == 0) { + if (!start) + if (!BN_mod_mul_reciprocal(r, r, r, &recp, ctx)) + goto err; + if (wstart == 0) break; + wstart--; + continue; + } + /* We now have wstart on a 'set' bit, we now need to work out + * how bit a window to do. To do this we need to scan + * forward until the last set bit before the end of the + * window + */ + j = wstart; + wvalue = 1; + wend = 0; + for (i = 1; i < window; i++) { + if (wstart - i < 0) break; + if (BN_is_bit_set(p, wstart-i)) { + wvalue <<= (i - wend); + wvalue |= 1; + wend = i; + } + } + + /* wend is the size of the current window */ + j = wend+1; + /* add the 'bytes above' */ + if (!start) + for (i = 0; i < j; i++) { + if (!BN_mod_mul_reciprocal(r, r, r, &recp, ctx)) + goto err; + } + + /* wvalue will be an odd number < 2^window */ + if (!BN_mod_mul_reciprocal(r, r, &(val[wvalue >> 1]), &recp, ctx)) + goto err; + + /* move the 'window' down further */ + wstart -= wend+1; + wvalue = 0; + start = 0; + if (wstart < 0) break; + } + ret = 1; +err: + BN_CTX_end(ctx); + for (i = 0; i < ts; i++) + BN_clear_free(&(val[i])); + BN_RECP_CTX_free(&recp); + return (ret); +} +#endif /* NOT_NEEDED_FOR_DH */ + + +int +BN_mod_exp_mont(BIGNUM *rr, const BIGNUM *a, const BIGNUM *p, + const BIGNUM *m, BN_CTX *ctx, BN_MONT_CTX *in_mont) +{ + int i, j, bits, ret = 0, wstart, wend, window, wvalue; + int start = 1, ts = 0; + BIGNUM *d, *r; + const BIGNUM *aa; + BIGNUM val[TABLE_SIZE]; + BN_MONT_CTX *mont = NULL; + + bn_check_top(a); + bn_check_top(p); + bn_check_top(m); + + if (!(m->d[0] & 1)) { + BNerr(BN_F_BN_MOD_EXP_MONT, BN_R_CALLED_WITH_EVEN_MODULUS); + return (0); + } + bits = BN_num_bits(p); + if (bits == 0) { + ret = BN_one(rr); + return ret; + } + + BN_CTX_start(ctx); + d = BN_CTX_get(ctx); + r = BN_CTX_get(ctx); + if (d == NULL || r == NULL) goto err; + + /* If this is not done, things will break in the montgomery part */ + + if (in_mont != NULL) + mont = in_mont; + else { + if ((mont = BN_MONT_CTX_new()) == NULL) goto err; + if (!BN_MONT_CTX_set(mont, m, ctx)) goto err; + } + + BN_init(&val[0]); + ts = 1; + if (a->neg || BN_ucmp(a, m) >= 0) { + if (!BN_nnmod(&(val[0]), a, m, ctx)) + goto err; + aa = &(val[0]); + } else + aa = a; + if (BN_is_zero(aa)) { + ret = BN_zero(rr); + goto err; + } + if (!BN_to_montgomery(&(val[0]), aa, mont, ctx)) goto err; /* 1 */ + + window = BN_window_bits_for_exponent_size(bits); + if (window > 1) { + if (!BN_mod_mul_montgomery(d, &(val[0]), &(val[0]), mont, ctx)) goto err; /* 2 */ + j = 1 << (window - 1); + for (i = 1; i < j; i++) { + BN_init(&(val[i])); + if (!BN_mod_mul_montgomery(&(val[i]), &(val[i - 1]), d, mont, ctx)) + goto err; + } + ts = i; + } + + start = 1; /* This is used to avoid multiplication etc + * when there is only the value '1' in the + * buffer. + */ + wvalue = 0; /* The 'value' of the window */ + wstart = bits-1; /* The top bit of the window */ + wend = 0; /* The bottom bit of the window */ + + if (!BN_to_montgomery(r, BN_value_one(), mont, ctx)) goto err; + for (;;) { + if (BN_is_bit_set(p, wstart) == 0) { + if (!start) { + if (!BN_mod_mul_montgomery(r, r, r, mont, ctx)) + goto err; + } + if (wstart == 0) break; + wstart--; + continue; + } + /* We now have wstart on a 'set' bit, we now need to work out + * how bit a window to do. To do this we need to scan + * forward until the last set bit before the end of the + * window + */ + j = wstart; + wvalue = 1; + wend = 0; + for (i = 1; i < window; i++) { + if (wstart - i < 0) break; + if (BN_is_bit_set(p, wstart - i)) { + wvalue <<= (i - wend); + wvalue |= 1; + wend = i; + } + } + + /* wend is the size of the current window */ + j = wend + 1; + /* add the 'bytes above' */ + if (!start) + for (i = 0; i < j; i++) { + if (!BN_mod_mul_montgomery(r, r, r, mont, ctx)) + goto err; + } + + /* wvalue will be an odd number < 2^window */ + if (!BN_mod_mul_montgomery(r, r, &(val[wvalue >> 1]), mont, ctx)) + goto err; + + /* move the 'window' down further */ + wstart -= wend+1; + wvalue = 0; + start = 0; + if (wstart < 0) break; + } + if (!BN_from_montgomery(rr, r, mont, ctx)) goto err; + ret = 1; +err: + if ((in_mont == NULL) && (mont != NULL)) BN_MONT_CTX_free(mont); + BN_CTX_end(ctx); + for (i = 0; i < ts; i++) + BN_clear_free(&(val[i])); + return (ret); +} + +int +BN_mod_exp_mont_word(BIGNUM *rr, BN_ULONG a, const BIGNUM *p, + const BIGNUM *m, BN_CTX *ctx, BN_MONT_CTX *in_mont) +{ + BN_MONT_CTX *mont = NULL; + int b, bits, ret = 0; + int r_is_one; + BN_ULONG w, next_w; + BIGNUM *d, *r, *t; + BIGNUM *swap_tmp; +#define BN_MOD_MUL_WORD(r, w, m) \ + (BN_mul_word(r, (w)) && \ + (/* BN_ucmp(r, (m)) < 0 ? 1 : */ \ + (BN_mod(t, r, m, ctx) && (swap_tmp = r, r = t, t = swap_tmp, 1)))) + /* BN_MOD_MUL_WORD is only used with 'w' large, + * so the BN_ucmp test is probably more overhead + * than always using BN_mod (which uses BN_copy if + * a similar test returns true). + */ + /* We can use BN_mod and do not need BN_nnmod because our + * accumulator is never negative (the result of BN_mod does + * not depend on the sign of the modulus). + */ +#define BN_TO_MONTGOMERY_WORD(r, w, mont) \ + (BN_set_word(r, (w)) && BN_to_montgomery(r, r, (mont), ctx)) + + bn_check_top(p); + bn_check_top(m); + + if (m->top == 0 || !(m->d[0] & 1)) { + BNerr(BN_F_BN_MOD_EXP_MONT_WORD, BN_R_CALLED_WITH_EVEN_MODULUS); + return (0); + } + if (m->top == 1) + a %= m->d[0]; /* make sure that 'a' is reduced */ + + bits = BN_num_bits(p); + if (bits == 0) { + ret = BN_one(rr); + return ret; + } + if (a == 0) { + ret = BN_zero(rr); + return ret; + } + + BN_CTX_start(ctx); + d = BN_CTX_get(ctx); + r = BN_CTX_get(ctx); + t = BN_CTX_get(ctx); + if (d == NULL || r == NULL || t == NULL) goto err; + + if (in_mont != NULL) + mont = in_mont; + else { + if ((mont = BN_MONT_CTX_new()) == NULL) goto err; + if (!BN_MONT_CTX_set(mont, m, ctx)) goto err; + } + + r_is_one = 1; /* except for Montgomery factor */ + + /* bits-1 >= 0 */ + + /* The result is accumulated in the product r*w. */ + w = a; /* bit 'bits-1' of 'p' is always set */ + for (b = bits-2; b >= 0; b--) { + /* First, square r*w. */ + next_w = w*w; + if ((next_w/w) != w) /* overflow */ { + if (r_is_one) { + if (!BN_TO_MONTGOMERY_WORD(r, w, mont)) goto err; + r_is_one = 0; + } else { + if (!BN_MOD_MUL_WORD(r, w, m)) goto err; + } + next_w = 1; + } + w = next_w; + if (!r_is_one) { + if (!BN_mod_mul_montgomery(r, r, r, mont, ctx)) goto err; + } + + /* Second, multiply r*w by 'a' if exponent bit is set. */ + if (BN_is_bit_set(p, b)) { + next_w = w*a; + if ((next_w/a) != w) /* overflow */ { + if (r_is_one) { + if (!BN_TO_MONTGOMERY_WORD(r, w, mont)) goto err; + r_is_one = 0; + } else { + if (!BN_MOD_MUL_WORD(r, w, m)) goto err; + } + next_w = a; + } + w = next_w; + } + } + + /* Finally, set r: = r*w. */ + if (w != 1) { + if (r_is_one) { + if (!BN_TO_MONTGOMERY_WORD(r, w, mont)) goto err; + r_is_one = 0; + } else { + if (!BN_MOD_MUL_WORD(r, w, m)) goto err; + } + } + + if (r_is_one) /* can happen only if a == 1 */ { + if (!BN_one(rr)) goto err; + } else { + if (!BN_from_montgomery(rr, r, mont, ctx)) goto err; + } + ret = 1; +err: + if ((in_mont == NULL) && (mont != NULL)) BN_MONT_CTX_free(mont); + BN_CTX_end(ctx); + return (ret); +} + + +#ifdef NOT_NEEDED_FOR_DH +/* The old fallback, simple version :-) */ +int +BN_mod_exp_simple(BIGNUM *r, const BIGNUM *a, const BIGNUM *p, const BIGNUM *m, BN_CTX *ctx) +{ + int i, j, bits, ret = 0, wstart, wend, window, wvalue, ts = 0; + int start = 1; + BIGNUM *d; + BIGNUM val[TABLE_SIZE]; + + bits = BN_num_bits(p); + + if (bits == 0) { + ret = BN_one(r); + return ret; + } + + BN_CTX_start(ctx); + if ((d = BN_CTX_get(ctx)) == NULL) goto err; + + BN_init(&(val[0])); + ts = 1; + if (!BN_nnmod(&(val[0]), a, m, ctx)) goto err; /* 1 */ + if (BN_is_zero(&(val[0]))) { + ret = BN_zero(r); + goto err; + } + + window = BN_window_bits_for_exponent_size(bits); + if (window > 1) { + if (!BN_mod_mul(d, &(val[0]), &(val[0]), m, ctx)) + goto err; /* 2 */ + j = 1 << (window - 1); + for (i = 1; i < j; i++) { + BN_init(&(val[i])); + if (!BN_mod_mul(&(val[i]), &(val[i - 1]), d, m, ctx)) + goto err; + } + ts = i; + } + + start = 1; /* This is used to avoid multiplication etc + * when there is only the value '1' in the + * buffer. + */ + wvalue = 0; /* The 'value' of the window */ + wstart = bits-1; /* The top bit of the window */ + wend = 0; /* The bottom bit of the window */ + + if (!BN_one(r)) goto err; + + for (;;) { + if (BN_is_bit_set(p, wstart) == 0) { + if (!start) + if (!BN_mod_mul(r, r, r, m, ctx)) + goto err; + if (wstart == 0) break; + wstart--; + continue; + } + /* We now have wstart on a 'set' bit, we now need to work out + * how bit a window to do. To do this we need to scan + * forward until the last set bit before the end of the + * window + */ + j = wstart; + wvalue = 1; + wend = 0; + for (i = 1; i < window; i++) { + if (wstart - i < 0) break; + if (BN_is_bit_set(p, wstart - i)) { + wvalue <<= (i - wend); + wvalue |= 1; + wend = i; + } + } + + /* wend is the size of the current window */ + j = wend+1; + /* add the 'bytes above' */ + if (!start) + for (i = 0; i < j; i++) { + if (!BN_mod_mul(r, r, r, m, ctx)) + goto err; + } + + /* wvalue will be an odd number < 2^window */ + if (!BN_mod_mul(r, r, &(val[wvalue >> 1]), m, ctx)) + goto err; + + /* move the 'window' down further */ + wstart -= wend+1; + wvalue = 0; + start = 0; + if (wstart < 0) break; + } + ret = 1; +err: + BN_CTX_end(ctx); + for (i = 0; i < ts; i++) + BN_clear_free(&(val[i])); + return (ret); +} + +static BIGNUM *euclid(BIGNUM *a, BIGNUM *b); + +int +BN_gcd(BIGNUM *r, const BIGNUM *in_a, const BIGNUM *in_b, BN_CTX *ctx) +{ + BIGNUM *a, *b, *t; + int ret = 0; + + bn_check_top(in_a); + bn_check_top(in_b); + + BN_CTX_start(ctx); + a = BN_CTX_get(ctx); + b = BN_CTX_get(ctx); + if (a == NULL || b == NULL) goto err; + + if (BN_copy(a, in_a) == NULL) goto err; + if (BN_copy(b, in_b) == NULL) goto err; + a->neg = 0; + b->neg = 0; + + if (BN_cmp(a, b) < 0) { t = a; a = b; b = t; } + t = euclid(a, b); + if (t == NULL) goto err; + + if (BN_copy(r, t) == NULL) goto err; + ret = 1; +err: + BN_CTX_end(ctx); + return (ret); +} + +static BIGNUM * +euclid(BIGNUM *a, BIGNUM *b) +{ + BIGNUM *t; + int shifts = 0; + + bn_check_top(a); + bn_check_top(b); + + /* 0 <= b <= a */ + while (!BN_is_zero(b)) { + /* 0 < b <= a */ + + if (BN_is_odd(a)) { + if (BN_is_odd(b)) { + if (!BN_sub(a, a, b)) goto err; + if (!BN_rshift1(a, a)) goto err; + if (BN_cmp(a, b) < 0) { t = a; a = b; b = t; } + } else /* a odd - b even */ { + if (!BN_rshift1(b, b)) goto err; + if (BN_cmp(a, b) < 0) { t = a; a = b; b = t; } + } + } else /* a is even */ { + if (BN_is_odd(b)) { + if (!BN_rshift1(a, a)) goto err; + if (BN_cmp(a, b) < 0) { t = a; a = b; b = t; } + } else /* a even - b even */ { + if (!BN_rshift1(a, a)) goto err; + if (!BN_rshift1(b, b)) goto err; + shifts++; + } + } + /* 0 <= b <= a */ + } + + if (shifts) { + if (!BN_lshift(a, a, shifts)) goto err; + } + return (a); +err: + return (NULL); +} +#endif /* NOT_NEEDED_FOR_DH */ + + +/* solves ax == 1 (mod n) */ +BIGNUM * +BN_mod_inverse(BIGNUM *in, const BIGNUM *a, const BIGNUM *n, BN_CTX *ctx) +{ + BIGNUM *A, *B, *X, *Y, *M, *D, *T, *R = NULL; + BIGNUM *ret = NULL; + int sign; + + bn_check_top(a); + bn_check_top(n); + + BN_CTX_start(ctx); + A = BN_CTX_get(ctx); + B = BN_CTX_get(ctx); + X = BN_CTX_get(ctx); + D = BN_CTX_get(ctx); + M = BN_CTX_get(ctx); + Y = BN_CTX_get(ctx); + T = BN_CTX_get(ctx); + if (T == NULL) goto err; + + if (in == NULL) + R = BN_new(); + else + R = in; + if (R == NULL) goto err; + + BN_one(X); + BN_zero(Y); + if (BN_copy(B, a) == NULL) goto err; + if (BN_copy(A, n) == NULL) goto err; + A->neg = 0; + if (B->neg || (BN_ucmp(B, A) >= 0)) { + if (!BN_nnmod(B, B, A, ctx)) goto err; + } + sign = -1; + /* From B = a mod |n|, A = |n| it follows that + * + * 0 <= B < A, + * -sign*X*a == B (mod |n|), + * sign*Y*a == A (mod |n|). + */ + + if (BN_is_odd(n) && (BN_num_bits(n) <= (BN_BITS <= 32 ? 450 : 2048))) { + /* Binary inversion algorithm; requires odd modulus. + * This is faster than the general algorithm if the modulus + * is sufficiently small (about 400 .. 500 bits on 32-bit + * sytems, but much more on 64-bit systems) + */ + int shift; + + while (!BN_is_zero(B)) { + /* + * 0 < B < |n|, + * 0 < A <= |n|, + * (1) -sign*X*a == B (mod |n|), + * (2) sign*Y*a == A (mod |n|) + */ + + /* Now divide B by the maximum possible power of two in the integers, + * and divide X by the same value mod |n|. + * When we're done, (1) still holds. + */ + shift = 0; + while (!BN_is_bit_set(B, shift)) /* note that 0 < B */ { + shift++; + + if (BN_is_odd(X)) { + if (!BN_uadd(X, X, n)) goto err; + } + /* now X is even, so we can easily divide it by two */ + if (!BN_rshift1(X, X)) goto err; + } + if (shift > 0) { + if (!BN_rshift(B, B, shift)) goto err; + } + + + /* Same for A and Y. Afterwards, (2) still holds. */ + shift = 0; + while (!BN_is_bit_set(A, shift)) /* note that 0 < A */ { + shift++; + + if (BN_is_odd(Y)) { + if (!BN_uadd(Y, Y, n)) goto err; + } + /* now Y is even */ + if (!BN_rshift1(Y, Y)) goto err; + } + if (shift > 0) { + if (!BN_rshift(A, A, shift)) goto err; + } + + /* We still have (1) and (2). + * Both A and B are odd. + * The following computations ensure that + * + * 0 <= B < |n|, + * 0 < A < |n|, + * (1) -sign*X*a == B (mod |n|), + * (2) sign*Y*a == A (mod |n|), + * + * and that either A or B is even in the next iteration. + */ + if (BN_ucmp(B, A) >= 0) { + /* -sign*(X + Y)*a == B - A (mod |n|) */ + if (!BN_uadd(X, X, Y)) goto err; + /* NB: we could use BN_mod_add_quick(X, X, Y, n), but that + * actually makes the algorithm slower + */ + if (!BN_usub(B, B, A)) goto err; + } else { + /* sign*(X + Y)*a == A - B (mod |n|) */ + if (!BN_uadd(Y, Y, X)) goto err; + /* as above, BN_mod_add_quick(Y, Y, X, n) would slow things down */ + if (!BN_usub(A, A, B)) goto err; + } + } + } else { + /* general inversion algorithm */ + + while (!BN_is_zero(B)) { + BIGNUM *tmp; + + /* + * 0 < B < A, + * (*) -sign*X*a == B (mod |n|), + * sign*Y*a == A (mod |n|) + */ + + /* (D, M) : = (A/B, A%B) ... */ + if (BN_num_bits(A) == BN_num_bits(B)) { + if (!BN_one(D)) goto err; + if (!BN_sub(M, A, B)) goto err; + } else if (BN_num_bits(A) == BN_num_bits(B) + 1) { + /* A/B is 1, 2, or 3 */ + if (!BN_lshift1(T, B)) goto err; + if (BN_ucmp(A, T) < 0) { + /* A < 2*B, so D = 1 */ + if (!BN_one(D)) goto err; + if (!BN_sub(M, A, B)) goto err; + } else { + /* A >= 2*B, so D = 2 or D = 3 */ + if (!BN_sub(M, A, T)) goto err; + if (!BN_add(D, T, B)) goto err; + /* use D ( := 3 * B) as temp */ + if (BN_ucmp(A, D) < 0) { + /* A < 3*B, so D = 2 */ + if (!BN_set_word(D, 2)) goto err; + /* M ( = A - 2*B) already has the correct value */ + } else { + /* only D = 3 remains */ + if (!BN_set_word(D, 3)) goto err; + /* currently M = A - 2 * B, + * but we need M = A - 3 * B + */ + if (!BN_sub(M, M, B)) goto err; + } + } + } else { + if (!BN_div(D, M, A, B, ctx)) goto err; + } + + /* Now + * A = D*B + M; + * thus we have + * (**) sign*Y*a == D*B + M (mod |n|). + */ + + tmp = A; /* keep the BIGNUM object, the value does not matter */ + + /* (A, B) : = (B, A mod B) ... */ + A = B; + B = M; + /* ... so we have 0 <= B < A again */ + + /* Since the former M is now B and the former B is now A, + * (**) translates into + * sign*Y*a == D*A + B (mod |n|), + * i.e. + * sign*Y*a - D*A == B (mod |n|). + * Similarly, (*) translates into + * -sign*X*a == A (mod |n|). + * + * Thus, + * sign*Y*a + D*sign*X*a == B (mod |n|), + * i.e. + * sign*(Y + D*X)*a == B (mod |n|). + * + * So if we set (X, Y, sign) : = (Y + D*X, X, -sign), we arrive back at + * -sign*X*a == B (mod |n|), + * sign*Y*a == A (mod |n|). + * Note that X and Y stay non-negative all the time. + */ + + /* most of the time D is very small, so we can optimize tmp : = D*X+Y */ + if (BN_is_one(D)) { + if (!BN_add(tmp, X, Y)) goto err; + } else { + if (BN_is_word(D, 2)) { + if (!BN_lshift1(tmp, X)) goto err; + } else if (BN_is_word(D, 4)) { + if (!BN_lshift(tmp, X, 2)) goto err; + } else if (D->top == 1) { + if (!BN_copy(tmp, X)) goto err; + if (!BN_mul_word(tmp, D->d[0])) goto err; + } else { + if (!BN_mul(tmp, D, X, ctx)) goto err; + } + if (!BN_add(tmp, tmp, Y)) goto err; + } + + M = Y; /* keep the BIGNUM object, the value does not matter */ + Y = X; + X = tmp; + sign = -sign; + } + } + + /* + * The while loop (Euclid's algorithm) ends when + * A == gcd(a, n); + * we have + * sign*Y*a == A (mod |n|), + * where Y is non-negative. + */ + + if (sign < 0) { + if (!BN_sub(Y, n, Y)) goto err; + } + /* Now Y*a == A (mod |n|). */ + + + if (BN_is_one(A)) { + /* Y*a == 1 (mod |n|) */ + if (!Y->neg && BN_ucmp(Y, n) < 0) { + if (!BN_copy(R, Y)) goto err; + } else { + if (!BN_nnmod(R, Y, n, ctx)) goto err; + } + } else { + BNerr(BN_F_BN_MOD_INVERSE, BN_R_NO_INVERSE); + goto err; + } + ret = R; +err: + if ((ret == NULL) && (in == NULL)) BN_free(R); + BN_CTX_end(ctx); + return (ret); +} + +#include + +#ifdef NOT_NEEDED_FOR_DH +/* For a 32 bit machine + * 2 - 4 == 128 + * 3 - 8 == 256 + * 4 - 16 == 512 + * 5 - 32 == 1024 + * 6 - 64 == 2048 + * 7 - 128 == 4096 + * 8 - 256 == 8192 + */ +static int bn_limit_bits = 0; +static int bn_limit_num = 8; /* (1 << bn_limit_bits) */ +static int bn_limit_bits_low = 0; +static int bn_limit_num_low = 8; /* (1 << bn_limit_bits_low) */ +static int bn_limit_bits_high = 0; +static int bn_limit_num_high = 8; /* (1 << bn_limit_bits_high) */ +static int bn_limit_bits_mont = 0; +static int bn_limit_num_mont = 8; /* (1 << bn_limit_bits_mont) */ + +void +BN_set_params(int mult, int high, int low, int mont) +{ + if (mult >= 0) { + if (mult > (sizeof(int)*8)-1) + mult = sizeof(int)*8-1; + bn_limit_bits = mult; + bn_limit_num = 1 << mult; + } + if (high >= 0) { + if (high > (sizeof(int)*8)-1) + high = sizeof(int)*8-1; + bn_limit_bits_high = high; + bn_limit_num_high = 1 << high; + } + if (low >= 0) { + if (low > (sizeof(int)*8)-1) + low = sizeof(int)*8-1; + bn_limit_bits_low = low; + bn_limit_num_low = 1 << low; + } + if (mont >= 0) { + if (mont > (sizeof(int)*8)-1) + mont = sizeof(int)*8-1; + bn_limit_bits_mont = mont; + bn_limit_num_mont = 1 << mont; + } +} + +int +BN_get_params(int which) +{ + if (which == 0) return (bn_limit_bits); + else if (which == 1) return (bn_limit_bits_high); + else if (which == 2) return (bn_limit_bits_low); + else if (which == 3) return (bn_limit_bits_mont); + else return (0); +} + +char * +BN_options(void) +{ + static int init = 0; + static char data[16]; + + if (!init) { + init++; +#ifdef BN_LLONG + sprintf(data, "bn(%d, %d)", (int)sizeof(BN_ULLONG)*8, + (int)sizeof(BN_ULONG)*8); +#else + sprintf(data, "bn(%d, %d)", (int)sizeof(BN_ULONG)*8, + (int)sizeof(BN_ULONG)*8); +#endif + } + return (data); +} +#endif /* NOT_NEEDED_FOR_DH */ + +const BIGNUM * +BN_value_one(void) +{ + static BN_ULONG data_one = 1L; + static BIGNUM const_one = {&data_one, 1, 1, 0}; + + return (&const_one); +} + +int +BN_num_bits_word(BN_ULONG l) +{ + static const char bits[256] = { + 0, 1, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, + 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, + 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, + 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, + 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, + 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, + 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, + 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8 + }; + +#if defined(SIXTY_FOUR_BIT_LONG) + if (l & 0xffffffff00000000L) { + if (l & 0xffff000000000000L) { + if (l & 0xff00000000000000L) { + return (bits[(int)(l >> 56)] + 56); + } else + return (bits[(int)(l >> 48)] + 48); + } else { + if (l & 0x0000ff0000000000L) { + return (bits[(int)(l >> 40)] + 40); + } else + return (bits[(int)(l >> 32)] + 32); + } + } else +#else +#ifdef SIXTY_FOUR_BIT + if (l & 0xffffffff00000000LL) { + if (l & 0xffff000000000000LL) { + if (l & 0xff00000000000000LL) { + return (bits[(int)(l >> 56)] + 56); + } else + return (bits[(int)(l >> 48)] + 48); + } else { + if (l & 0x0000ff0000000000LL) { + return (bits[(int)(l >> 40)] + 40); + } else + return (bits[(int)(l >> 32)] + 32); + } + } else +#endif +#endif /* SIXTY_FOUR_BIT_LONG */ + { +#if defined(THIRTY_TWO_BIT) || defined(SIXTY_FOUR_BIT) || defined(SIXTY_FOUR_BIT_LONG) + if (l & 0xffff0000L) { + if (l & 0xff000000L) + return (bits[(int)(l >> 24L)] + 24); + else + return (bits[(int)(l >> 16L)] + 16); + } else +#endif + { +#if defined(SIXTEEN_BIT) || defined(THIRTY_TWO_BIT) || defined(SIXTY_FOUR_BIT) || \ + defined(SIXTY_FOUR_BIT_LONG) + if (l & 0xff00L) + return (bits[(int)(l >> 8)] + 8); + else +#endif + return (bits[(int)(l)]); + } + } +} + +int +BN_num_bits(const BIGNUM *a) +{ + BN_ULONG l; + int i; + + bn_check_top(a); + + if (a->top == 0) return (0); + l = a->d[a->top-1]; + assert(l != 0); + i = (a->top-1)*BN_BITS2; + return (i+BN_num_bits_word(l)); +} + +void +BN_clear_free(BIGNUM *a) +{ + int i; + + if (a == NULL) return; + if (a->d != NULL) { + OPENSSL_cleanse(a->d, a->dmax*sizeof(a->d[0])); + if (!(BN_get_flags(a, BN_FLG_STATIC_DATA))) + OPENSSL_free(a->d); + } + i = BN_get_flags(a, BN_FLG_MALLOCED); + OPENSSL_cleanse(a, sizeof(BIGNUM)); + if (i) + OPENSSL_free(a); +} + +void +BN_free(BIGNUM *a) +{ + if (a == NULL) return; + if ((a->d != NULL) && !(BN_get_flags(a, BN_FLG_STATIC_DATA))) + OPENSSL_free(a->d); + a->flags |= BN_FLG_FREE; /* REMOVE? */ + if (a->flags & BN_FLG_MALLOCED) + OPENSSL_free(a); +} + +void +BN_init(BIGNUM *a) +{ + memset(a, 0, sizeof(BIGNUM)); +} + +BIGNUM * +BN_new(void) +{ + BIGNUM *ret; + + if ((ret = (BIGNUM *)OPENSSL_malloc(sizeof(BIGNUM))) == NULL) { + BNerr(BN_F_BN_NEW, ERR_R_MALLOC_FAILURE); + return (NULL); + } + ret->flags = BN_FLG_MALLOCED; + ret->top = 0; + ret->neg = 0; + ret->dmax = 0; + ret->d = NULL; + return (ret); +} + +/* This is used both by bn_expand2() and bn_dup_expand() */ +/* The caller MUST check that words > b->dmax before calling this */ +static BN_ULONG * +bn_expand_internal(const BIGNUM *b, int words) +{ + BN_ULONG *A, *a = NULL; + const BN_ULONG *B; + int i; + + if (words > (INT_MAX/(4*BN_BITS2))) { + BNerr(BN_F_BN_EXPAND_INTERNAL, BN_R_BIGNUM_TOO_LONG); + return NULL; + } + + bn_check_top(b); + if (BN_get_flags(b, BN_FLG_STATIC_DATA)) { + BNerr(BN_F_BN_EXPAND_INTERNAL, BN_R_EXPAND_ON_STATIC_BIGNUM_DATA); + return (NULL); + } + a = A = (BN_ULONG *)OPENSSL_malloc(sizeof(BN_ULONG)*(words+1)); + if (A == NULL) { + BNerr(BN_F_BN_EXPAND_INTERNAL, ERR_R_MALLOC_FAILURE); + return (NULL); + } + B = b->d; + /* Check if the previous number needs to be copied */ + if (B != NULL) { + for (i = b->top >> 2; i > 0; i--, A += 4, B += 4) { + /* + * The fact that the loop is unrolled + * 4-wise is a tribute to Intel. It's + * the one that doesn't have enough + * registers to accomodate more data. + * I'd unroll it 8-wise otherwise:-) + * + * + */ + BN_ULONG a0, a1, a2, a3; + a0 = B[0]; a1 = B[1]; a2 = B[2]; a3 = B[3]; + A[0] = a0; A[1] = a1; A[2] = a2; A[3] = a3; + } + switch (b->top&3) { + case 3: A[2] = B[2]; + case 2: A[1] = B[1]; + case 1: A[0] = B[0]; + case 0: + ; + } + } + + /* Now need to zero any data between b->top and b->max */ + + A = &(a[b->top]); + for (i = (words - b->top) >> 3; i > 0; i--, A += 8) { + A[0] = 0; A[1] = 0; A[2] = 0; A[3] = 0; + A[4] = 0; A[5] = 0; A[6] = 0; A[7] = 0; + } + for (i = (words - b->top) & 7; i > 0; i--, A++) + A[0] = 0; + + return (a); +} + +#ifdef NOT_NEEDED_FOR_DH +/* This is an internal function that can be used instead of bn_expand2() + * when there is a need to copy BIGNUMs instead of only expanding the + * data part, while still expanding them. + * Especially useful when needing to expand BIGNUMs that are declared + * 'const' and should therefore not be changed. + * The reason to use this instead of a BN_dup() followed by a bn_expand2() + * is memory allocation overhead. A BN_dup() followed by a bn_expand2() + * will allocate new memory for the BIGNUM data twice, and free it once, + * while bn_dup_expand() makes sure allocation is made only once. + */ + +BIGNUM * +bn_dup_expand(const BIGNUM *b, int words) +{ + BIGNUM *r = NULL; + + /* This function does not work if + * words <= b->dmax && top < words + * because BN_dup() does not preserve 'dmax'! + * (But bn_dup_expand() is not used anywhere yet.) + */ + + if (words > b->dmax) { + BN_ULONG *a = bn_expand_internal(b, words); + + if (a) { + r = BN_new(); + if (r) { + r->top = b->top; + r->dmax = words; + r->neg = b->neg; + r->d = a; + } else { + /* r == NULL, BN_new failure */ + OPENSSL_free(a); + } + } + /* If a == NULL, there was an error in allocation in + * bn_expand_internal(), and NULL should be returned + */ + } else { + r = BN_dup(b); + } + + return r; +} +#endif /* NOT_NEEDED_FOR_DH */ + +/* This is an internal function that should not be used in applications. + * It ensures that 'b' has enough room for a 'words' word number number. + * It is mostly used by the various BIGNUM routines. If there is an error, + * NULL is returned. If not, 'b' is returned. + */ + +BIGNUM * +bn_expand2(BIGNUM *b, int words) +{ + if (words > b->dmax) { + BN_ULONG *a = bn_expand_internal(b, words); + + if (a) { + if (b->d) + OPENSSL_free(b->d); + b->d = a; + b->dmax = words; + } else + b = NULL; + } + return b; +} + +#ifdef BCMDH_TEST +BIGNUM * +BN_dup(const BIGNUM *a) +{ + BIGNUM *r, *t; + + if (a == NULL) return NULL; + + bn_check_top(a); + + t = BN_new(); + if (t == NULL) return (NULL); + r = BN_copy(t, a); + /* now r == t || r == NULL */ + if (r == NULL) + BN_free(t); + return r; +} +#endif /* BCMDH_TEST */ + +BIGNUM * +BN_copy(BIGNUM *a, const BIGNUM *b) +{ + int i; + BN_ULONG *A; + const BN_ULONG *B; + + bn_check_top(b); + + if (a == b) return (a); + if (bn_wexpand(a, b->top) == NULL) return (NULL); + + A = a->d; + B = b->d; + for (i = b->top >> 2; i > 0; i--, A += 4, B += 4) { + BN_ULONG a0, a1, a2, a3; + a0 = B[0]; a1 = B[1]; a2 = B[2]; a3 = B[3]; + A[0] = a0; A[1] = a1; A[2] = a2; A[3] = a3; + } + switch (b->top & 3) { + case 3: A[2] = B[2]; + case 2: A[1] = B[1]; + case 1: A[0] = B[0]; + case 0: ; + } + +/* memset(&(a->d[b->top]), 0, sizeof(a->d[0])*(a->max-b->top)); */ + a->top = b->top; + if ((a->top == 0) && (a->d != NULL)) + a->d[0] = 0; + a->neg = b->neg; + return (a); +} + +#ifdef NOT_NEEDED_FOR_DH +void +BN_swap(BIGNUM *a, BIGNUM *b) +{ + int flags_old_a, flags_old_b; + BN_ULONG *tmp_d; + int tmp_top, tmp_dmax, tmp_neg; + + flags_old_a = a->flags; + flags_old_b = b->flags; + + tmp_d = a->d; + tmp_top = a->top; + tmp_dmax = a->dmax; + tmp_neg = a->neg; + + a->d = b->d; + a->top = b->top; + a->dmax = b->dmax; + a->neg = b->neg; + + b->d = tmp_d; + b->top = tmp_top; + b->dmax = tmp_dmax; + b->neg = tmp_neg; + + a->flags = (flags_old_a & BN_FLG_MALLOCED) | (flags_old_b & BN_FLG_STATIC_DATA); + b->flags = (flags_old_b & BN_FLG_MALLOCED) | (flags_old_a & BN_FLG_STATIC_DATA); +} + + +void +BN_clear(BIGNUM *a) +{ + if (a->d != NULL) + memset(a->d, 0, a->dmax*sizeof(a->d[0])); + a->top = 0; + a->neg = 0; +} + +BN_ULONG +BN_get_word(const BIGNUM *a) +{ + int i, n; + BN_ULONG ret = 0; + + n = BN_num_bytes(a); + if (n > sizeof(BN_ULONG)) + return (BN_MASK2); + for (i = a->top-1; i >= 0; i--) { +#ifndef SIXTY_FOUR_BIT /* the data item > unsigned long */ + ret <<= BN_BITS4; /* stops the compiler complaining */ + ret <<= BN_BITS4; +#else + ret = 0; +#endif + ret |= a->d[i]; + } + return (ret); +} +#endif /* NOT_NEEDED_FOR_DH */ + +int +BN_set_word(BIGNUM *a, BN_ULONG w) +{ + int i, n; + if (bn_expand(a, (int)sizeof(BN_ULONG)*8) == NULL) return (0); + + n = sizeof(BN_ULONG)/BN_BYTES; + a->neg = 0; + a->top = 0; + a->d[0] = (BN_ULONG)w&BN_MASK2; + if (a->d[0] != 0) a->top = 1; + for (i = 1; i < n; i++) { + /* the following is done instead of + * w >>= BN_BITS2 so compilers don't complain + * on builds where sizeof(long) == BN_TYPES + */ +#ifndef SIXTY_FOUR_BIT /* the data item > unsigned long */ + w >>= BN_BITS4; + w >>= BN_BITS4; +#else + w = 0; +#endif + a->d[i] = (BN_ULONG)w&BN_MASK2; + if (a->d[i] != 0) a->top = i+1; + } + return (1); +} + +BIGNUM * +BN_bin2bn(const unsigned char *s, int len, BIGNUM *ret) +{ + unsigned int i, m; + unsigned int n; + BN_ULONG l; + + if (ret == NULL) ret = BN_new(); + if (ret == NULL) return (NULL); + l = 0; + n = len; + if (n == 0) { + ret->top = 0; + return (ret); + } + if (bn_expand(ret, (int)(n+2)*8) == NULL) + return (NULL); + i = ((n-1)/BN_BYTES)+1; + m = ((n-1)%(BN_BYTES)); + ret->top = i; + ret->neg = 0; + while (n-- > 0) { + l = (l << 8L)| *(s++); + if (m-- == 0) { + ret->d[--i] = l; + l = 0; + m = BN_BYTES-1; + } + } + /* need to call this due to clear byte at top if avoiding + * having the top bit set (-ve number) + */ + bn_fix_top(ret); + return (ret); +} + +/* ignore negative */ +int +BN_bn2bin(const BIGNUM *a, unsigned char *to) +{ + int n, i; + BN_ULONG l; + + n = i = BN_num_bytes(a); + while (i-- > 0) { + l = a->d[i/BN_BYTES]; + *(to++) = (unsigned char)(l>>(8*(i%BN_BYTES)))&0xff; + } + return (n); +} + +int +BN_ucmp(const BIGNUM *a, const BIGNUM *b) +{ + int i; + BN_ULONG t1, t2, *ap, *bp; + + bn_check_top(a); + bn_check_top(b); + + i = a->top-b->top; + if (i != 0) return (i); + ap = a->d; + bp = b->d; + for (i = a->top-1; i >= 0; i--) { + t1 = ap[i]; + t2 = bp[i]; + if (t1 != t2) + return (t1 > t2?1:-1); + } + return (0); +} + +#ifdef BCMDH_TEST +int +BN_cmp(const BIGNUM *a, const BIGNUM *b) +{ + int i; + int gt, lt; + BN_ULONG t1, t2; + + if ((a == NULL) || (b == NULL)) { + if (a != NULL) + return (-1); + else if (b != NULL) + return (1); + else + return (0); + } + + bn_check_top(a); + bn_check_top(b); + + if (a->neg != b->neg) { + if (a->neg) + return (-1); + else return (1); + } + if (a->neg == 0) { + gt = 1; lt = -1; + } else { + gt = -1; lt = 1; + } + + if (a->top > b->top) return (gt); + if (a->top < b->top) return (lt); + for (i = a->top-1; i >= 0; i--) { + t1 = a->d[i]; + t2 = b->d[i]; + if (t1 > t2) return (gt); + if (t1 < t2) return (lt); + } + return (0); +} +#endif /* BCMDH_TEST */ + +int +BN_set_bit(BIGNUM *a, int n) +{ + int i, j, k; + + i = n/BN_BITS2; + j = n%BN_BITS2; + if (a->top <= i) { + if (bn_wexpand(a, i + 1) == NULL) return (0); + for (k = a->top; k < i + 1; k++) + a->d[k] = 0; + a->top = i+1; + } + + a->d[i] |= (((BN_ULONG)1) << j); + return (1); +} + +#ifdef NOT_NEEDED_FOR_DH +int +BN_clear_bit(BIGNUM *a, int n) +{ + int i, j; + + i = n/BN_BITS2; + j = n%BN_BITS2; + if (a->top <= i) return (0); + + a->d[i] &= (~(((BN_ULONG)1) << j)); + bn_fix_top(a); + return (1); +} +#endif /* NOT_NEEDED_FOR_DH */ + +int +BN_is_bit_set(const BIGNUM *a, int n) +{ + int i, j; + + if (n < 0) return (0); + i = n/BN_BITS2; + j = n%BN_BITS2; + if (a->top <= i) return (0); + return ((a->d[i]&(((BN_ULONG)1) << j)) ? 1 : 0); +} + +#ifdef NOT_NEEDED_FOR_DH +int +BN_mask_bits(BIGNUM *a, int n) +{ + int b, w; + + w = n/BN_BITS2; + b = n%BN_BITS2; + if (w >= a->top) return (0); + if (b == 0) + a->top = w; + else { + a->top = w+1; + a->d[w] &= ~(BN_MASK2 << b); + } + bn_fix_top(a); + return (1); +} +#endif /* NOT_NEEDED_FOR_DH */ + +int +bn_cmp_words(const BN_ULONG *a, const BN_ULONG *b, int n) +{ + int i; + BN_ULONG aa, bb; + + aa = a[n-1]; + bb = b[n-1]; + if (aa != bb) return ((aa > bb)?1:-1); + for (i = n-2; i >= 0; i--) { + aa = a[i]; + bb = b[i]; + if (aa != bb) return ((aa > bb)?1:-1); + } + return (0); +} + +#ifdef NOT_NEEDED_FOR_DH +/* Here follows a specialised variants of bn_cmp_words(). It has the + * property of performing the operation on arrays of different sizes. + * The sizes of those arrays is expressed through cl, which is the + * common length ( basicall, min(len(a), len(b)) ), and dl, which is the + * delta between the two lengths, calculated as len(a)-len(b). + * All lengths are the number of BN_ULONGs... + */ + +int +bn_cmp_part_words(const BN_ULONG *a, const BN_ULONG *b, int cl, int dl) +{ + int n, i; + n = cl-1; + + if (dl < 0) { + for (i = dl; i < 0; i++) { + if (b[n - i] != 0) + return -1; /* a < b */ + } + } + if (dl > 0) { + for (i = dl; i > 0; i--) { + if (a[n + i] != 0) + return 1; /* a > b */ + } + } + return bn_cmp_words(a, b, cl); +} +#endif /* NOT_NEEDED_FOR_DH */ + + + +int +BN_nnmod(BIGNUM *r, const BIGNUM *m, const BIGNUM *d, BN_CTX *ctx) +{ + /* like BN_mod, but returns non-negative remainder + * (i.e., 0 <= r < |d| always holds) + */ + + if (!(BN_mod(r, m, d, ctx))) + return 0; + if (!r->neg) + return 1; + /* now -|d| < r < 0, so we have to set r : = r + |d| */ + return (d->neg ? BN_sub : BN_add)(r, r, d); +} + + +#ifdef NOT_NEEDED_FOR_DH +int +BN_mod_add(BIGNUM *r, const BIGNUM *a, const BIGNUM *b, const BIGNUM *m, BN_CTX *ctx) +{ + if (!BN_add(r, a, b)) + return 0; + return BN_nnmod(r, r, m, ctx); +} + + +/* BN_mod_add variant that may be used if both a and b are non-negative + * and less than m + */ +int +BN_mod_add_quick(BIGNUM *r, const BIGNUM *a, const BIGNUM *b, const BIGNUM *m) +{ + if (!BN_add(r, a, b)) return 0; + if (BN_ucmp(r, m) >= 0) + return BN_usub(r, r, m); + return 1; +} + +int +BN_mod_sub(BIGNUM *r, const BIGNUM *a, const BIGNUM *b, const BIGNUM *m, BN_CTX *ctx) +{ + if (!BN_sub(r, a, b)) return 0; + return BN_nnmod(r, r, m, ctx); +} + +/* BN_mod_sub variant that may be used if both a and b are non-negative + * and less than m + */ +int +BN_mod_sub_quick(BIGNUM *r, const BIGNUM *a, const BIGNUM *b, const BIGNUM *m) +{ + if (!BN_sub(r, a, b)) + return 0; + if (r->neg) + return BN_add(r, r, m); + return 1; +} +#endif /* NOT_NEEDED_FOR_DH */ + +#ifdef BCMDH_TEST +/* slow but works */ +int +BN_mod_mul(BIGNUM *r, const BIGNUM *a, const BIGNUM *b, const BIGNUM *m, BN_CTX *ctx) +{ + BIGNUM *t; + int ret = 0; + + bn_check_top(a); + bn_check_top(b); + bn_check_top(m); + + BN_CTX_start(ctx); + if ((t = BN_CTX_get(ctx)) == NULL) goto err; + if (a == b) { if (!BN_sqr(t, a, ctx)) goto err; } + else { if (!BN_mul(t, a, b, ctx)) goto err; } + if (!BN_nnmod(r, t, m, ctx)) goto err; + ret = 1; +err: + BN_CTX_end(ctx); + return (ret); +} +#endif /* BCMDH_TEST */ + + +#ifdef NOT_NEEDED_FOR_DH +int +BN_mod_sqr(BIGNUM *r, const BIGNUM *a, const BIGNUM *m, BN_CTX *ctx) +{ + if (!BN_sqr(r, a, ctx)) return 0; + /* r->neg == 0, thus we don't need BN_nnmod */ + return BN_mod(r, r, m, ctx); +} + + +int +BN_mod_lshift1(BIGNUM *r, const BIGNUM *a, const BIGNUM *m, BN_CTX *ctx) +{ + if (!BN_lshift1(r, a)) + return 0; + return BN_nnmod(r, r, m, ctx); +} + + +/* BN_mod_lshift1 variant that may be used if a is non-negative + * and less than m + */ +int +BN_mod_lshift1_quick(BIGNUM *r, const BIGNUM *a, const BIGNUM *m) +{ + if (!BN_lshift1(r, a)) return 0; + if (BN_cmp(r, m) >= 0) + return BN_sub(r, r, m); + return 1; +} + + +int +BN_mod_lshift(BIGNUM *r, const BIGNUM *a, int n, const BIGNUM *m, BN_CTX *ctx) +{ + BIGNUM *abs_m = NULL; + int ret; + + if (!BN_nnmod(r, a, m, ctx)) + return 0; + + if (m->neg) { + abs_m = BN_dup(m); + if (abs_m == NULL) return 0; + abs_m->neg = 0; + } + + ret = BN_mod_lshift_quick(r, r, n, (abs_m ? abs_m : m)); + + if (abs_m) + BN_free(abs_m); + return ret; +} + + +/* BN_mod_lshift variant that may be used if a is non-negative + * and less than m + */ +int +BN_mod_lshift_quick(BIGNUM *r, const BIGNUM *a, int n, const BIGNUM *m) +{ + if (r != a) { + if (BN_copy(r, a) == NULL) return 0; + } + + while (n > 0) { + int max_shift; + + /* 0 < r < m */ + max_shift = BN_num_bits(m) - BN_num_bits(r); + /* max_shift >= 0 */ + + if (max_shift < 0) { + BNerr(BN_F_BN_MOD_LSHIFT_QUICK, BN_R_INPUT_NOT_REDUCED); + return 0; + } + + if (max_shift > n) + max_shift = n; + + if (max_shift) { + if (!BN_lshift(r, r, max_shift)) return 0; + n -= max_shift; + } else { + if (!BN_lshift1(r, r)) return 0; + --n; + } + + /* BN_num_bits(r) <= BN_num_bits(m) */ + + if (BN_cmp(r, m) >= 0) { + if (!BN_sub(r, r, m)) return 0; + } + } + + return 1; +} +#endif /* NOT_NEEDED_FOR_DH */ + +/* + * Details about Montgomery multiplication algorithms can be found at + * http://security.ece.orst.edu/publications.html, e.g. + * http://security.ece.orst.edu/koc/papers/j37acmon.pdf and + * sections 3.8 and 4.2 in http://security.ece.orst.edu/koc/papers/r01rsasw.pdf + */ + + +#define MONT_WORD /* use the faster word-based algorithm */ + +int +BN_mod_mul_montgomery(BIGNUM *r, const BIGNUM *a, const BIGNUM *b, BN_MONT_CTX *mont, BN_CTX *ctx) +{ + BIGNUM *tmp; + int ret = 0; + + BN_CTX_start(ctx); + tmp = BN_CTX_get(ctx); + if (tmp == NULL) goto err; + + bn_check_top(tmp); + if (a == b) { + if (!BN_sqr(tmp, a, ctx)) goto err; + } else { + if (!BN_mul(tmp, a, b, ctx)) goto err; + } + /* reduce from aRR to aR */ + if (!BN_from_montgomery(r, tmp, mont, ctx)) goto err; + ret = 1; +err: + BN_CTX_end(ctx); + return (ret); +} + +int +BN_from_montgomery(BIGNUM *ret, const BIGNUM *a, BN_MONT_CTX *mont, BN_CTX *ctx) +{ + int retn = 0; + +#ifdef MONT_WORD + BIGNUM *n, *r; + BN_ULONG *ap, *np, *rp, n0, v, *nrp; + int al, nl, max, i, x, ri; + + BN_CTX_start(ctx); + if ((r = BN_CTX_get(ctx)) == NULL) goto err; + + if (!BN_copy(r, a)) goto err; + n = &(mont->N); + + ap = a->d; + /* mont->ri is the size of mont->N in bits (rounded up + * to the word size) + */ + al = ri = mont->ri/BN_BITS2; + + nl = n->top; + if ((al == 0) || (nl == 0)) { + r->top = 0; + return (1); + } + + max = (nl + al + 1); + if (bn_wexpand(r, max) == NULL) + goto err; + if (bn_wexpand(ret, max) == NULL) + goto err; + + r->neg = a->neg^n->neg; + np = n->d; + rp = r->d; + nrp = &(r->d[nl]); + + /* clear the top words of T */ + for (i = r->top; i < max; i++) + r->d[i] = 0; + + r->top = max; + n0 = mont->n0; + +#ifdef BN_COUNT + fprintf(stderr, "word BN_from_montgomery %d * %d\n", nl, nl); +#endif + for (i = 0; i < nl; i++) { +#ifdef __TANDEM + { + long long t1; + long long t2; + long long t3; + t1 = rp[0] * (n0 & 0177777); + t2 = 037777600000l; + t2 = n0 & t2; + t3 = rp[0] & 0177777; + t2 = (t3 * t2) & BN_MASK2; + t1 = t1 + t2; + v = bn_mul_add_words(rp, np, nl, (BN_ULONG) t1); + } +#else + v = bn_mul_add_words(rp, np, nl, (rp[0]*n0)&BN_MASK2); +#endif + nrp++; + rp++; + if (((nrp[-1] += v)&BN_MASK2) >= v) + continue; + else { + if (((++nrp[0])&BN_MASK2) != 0) continue; + if (((++nrp[1])&BN_MASK2) != 0) continue; + for (x = 2; (((++nrp[x]) & BN_MASK2) == 0); x++) + ; + } + } + bn_fix_top(r); + + /* mont->ri will be a multiple of the word size */ + ret->neg = r->neg; + x = ri; + rp = ret->d; + ap = &(r->d[x]); + if (r->top < x) + al = 0; + else + al = r->top-x; + ret->top = al; + al -= 4; + for (i = 0; i < al; i += 4) { + BN_ULONG t1, t2, t3, t4; + + t1 = ap[i+0]; + t2 = ap[i+1]; + t3 = ap[i+2]; + t4 = ap[i+3]; + rp[i+0] = t1; + rp[i+1] = t2; + rp[i+2] = t3; + rp[i+3] = t4; + } + al += 4; + for (; i < al; i++) + rp[i] = ap[i]; +#else /* !MONT_WORD */ + BIGNUM *t1, *t2; + + BN_CTX_start(ctx); + t1 = BN_CTX_get(ctx); + t2 = BN_CTX_get(ctx); + if (t1 == NULL || t2 == NULL) goto err; + + if (!BN_copy(t1, a)) goto err; + BN_mask_bits(t1, mont->ri); + + if (!BN_mul(t2, t1, &mont->Ni, ctx)) goto err; + BN_mask_bits(t2, mont->ri); + + if (!BN_mul(t1, t2, &mont->N, ctx)) goto err; + if (!BN_add(t2, a, t1)) goto err; + if (!BN_rshift(ret, t2, mont->ri)) goto err; +#endif /* MONT_WORD */ + + if (BN_ucmp(ret, &(mont->N)) >= 0) { + if (!BN_usub(ret, ret, &(mont->N))) goto err; + } + retn = 1; +err: + BN_CTX_end(ctx); + return (retn); +} + +BN_MONT_CTX * +BN_MONT_CTX_new(void) +{ + BN_MONT_CTX *ret; + + if ((ret = (BN_MONT_CTX *)OPENSSL_malloc(sizeof(BN_MONT_CTX))) == NULL) + return (NULL); + + BN_MONT_CTX_init(ret); + ret->flags = BN_FLG_MALLOCED; + return (ret); +} + +void +BN_MONT_CTX_init(BN_MONT_CTX *ctx) +{ + ctx->ri = 0; + BN_init(&(ctx->RR)); + BN_init(&(ctx->N)); + BN_init(&(ctx->Ni)); + ctx->flags = 0; +} + +void +BN_MONT_CTX_free(BN_MONT_CTX *mont) +{ + if (mont == NULL) + return; + + BN_free(&(mont->RR)); + BN_free(&(mont->N)); + BN_free(&(mont->Ni)); + if (mont->flags & BN_FLG_MALLOCED) + OPENSSL_free(mont); +} + +int +BN_MONT_CTX_set(BN_MONT_CTX *mont, const BIGNUM *mod, BN_CTX *ctx) +{ + BIGNUM Ri, *R; + + BN_init(&Ri); + R = &(mont->RR); /* grab RR as a temp */ + BN_copy(&(mont->N), mod); /* Set N */ + mont->N.neg = 0; + +#ifdef MONT_WORD + { + BIGNUM tmod; + BN_ULONG buf[2]; + + mont->ri = (BN_num_bits(mod)+(BN_BITS2-1))/BN_BITS2*BN_BITS2; + if (!(BN_zero(R))) goto err; + if (!(BN_set_bit(R, BN_BITS2))) goto err; /* R */ + + buf[0] = mod->d[0]; /* tmod = N mod word size */ + buf[1] = 0; + tmod.d = buf; + tmod.top = 1; + tmod.dmax = 2; + tmod.neg = 0; + /* Ri = R^-1 mod N */ + if ((BN_mod_inverse(&Ri, R, &tmod, ctx)) == NULL) + goto err; + if (!BN_lshift(&Ri, &Ri, BN_BITS2)) goto err; /* R*Ri */ + if (!BN_is_zero(&Ri)) { + if (!BN_sub_word(&Ri, 1)) goto err; + } else { + /* if N mod word size == 1 */ + if (!BN_set_word(&Ri, BN_MASK2)) goto err; /* Ri-- (mod word size) */ + } + if (!BN_div(&Ri, NULL, &Ri, &tmod, ctx)) goto err; + /* Ni = (R*Ri-1)/N, + * keep only least significant word: + */ + mont->n0 = (Ri.top > 0) ? Ri.d[0] : 0; + BN_free(&Ri); + } +#else /* !MONT_WORD */ + { + /* bignum version */ + mont->ri = BN_num_bits(&mont->N); + if (!BN_zero(R)) goto err; + if (!BN_set_bit(R, mont->ri)) goto err; /* R = 2^ri */ + /* Ri = R^-1 mod N */ + if ((BN_mod_inverse(&Ri, R, &mont->N, ctx)) == NULL) + goto err; + if (!BN_lshift(&Ri, &Ri, mont->ri)) goto err; /* R*Ri */ + if (!BN_sub_word(&Ri, 1)) goto err; + /* Ni = (R*Ri-1) / N */ + if (!BN_div(&(mont->Ni), NULL, &Ri, &mont->N, ctx)) goto err; + BN_free(&Ri); + } +#endif /* MONT_WORD */ + + /* setup RR for conversions */ + if (!BN_zero(&(mont->RR))) goto err; + if (!BN_set_bit(&(mont->RR), mont->ri*2)) goto err; + if (!BN_mod(&(mont->RR), &(mont->RR), &(mont->N), ctx)) goto err; + + return (1); +err: + return (0); +} + +#ifdef NOT_NEEDED_FOR_DH +BN_MONT_CTX * +BN_MONT_CTX_copy(BN_MONT_CTX *to, BN_MONT_CTX *from) +{ + if (to == from) return (to); + + if (!BN_copy(&(to->RR), &(from->RR))) return NULL; + if (!BN_copy(&(to->N), &(from->N))) return NULL; + if (!BN_copy(&(to->Ni), &(from->Ni))) return NULL; + to->ri = from->ri; + to->n0 = from->n0; + return (to); +} +#endif /* NOT_NEEDED_FOR_DH */ + + +#ifdef BN_RECURSION +/* Karatsuba recursive multiplication algorithm + * (cf. Knuth, The Art of Computer Programming, Vol. 2) + */ + +/* r is 2*n2 words in size, + * a and b are both n2 words in size. + * n2 must be a power of 2. + * We multiply and return the result. + * t must be 2*n2 words in size + * We calculate + * a[0]*b[0] + * a[0]*b[0]+a[1]*b[1]+(a[0]-a[1])*(b[1]-b[0]) + * a[1]*b[1] + */ +void +bn_mul_recursive(BN_ULONG *r, BN_ULONG *a, BN_ULONG *b, int n2, BN_ULONG *t) +{ + int n = n2/2, c1, c2; + unsigned int neg, zero; + BN_ULONG ln, lo, *p; + +#ifdef BN_COUNT + printf(" bn_mul_recursive %d * %d\n", n2, n2); +#endif +#ifdef BN_MUL_COMBA + if (n2 == 8) { + bn_mul_comba8(r, a, b); + return; + } +#endif /* BN_MUL_COMBA */ + if (n2 < BN_MUL_RECURSIVE_SIZE_NORMAL) { + /* This should not happen */ + bn_mul_normal(r, a, n2, b, n2); + return; + } + /* r = (a[0]-a[1])*(b[1]-b[0]) */ + c1 = bn_cmp_words(a, &(a[n]), n); + c2 = bn_cmp_words(&(b[n]), b, n); + zero = neg = 0; + switch (c1*3+c2) { + case -4: + bn_sub_words(t, &(a[n]), a, n); /* - */ + bn_sub_words(&(t[n]), b, &(b[n]), n); /* - */ + break; + case -3: + zero = 1; + break; + case -2: + bn_sub_words(t, &(a[n]), a, n); /* - */ + bn_sub_words(&(t[n]), &(b[n]), b, n); /* + */ + neg = 1; + break; + case -1: + case 0: + case 1: + zero = 1; + break; + case 2: + bn_sub_words(t, a, &(a[n]), n); /* + */ + bn_sub_words(&(t[n]), b, &(b[n]), n); /* - */ + neg = 1; + break; + case 3: + zero = 1; + break; + case 4: + bn_sub_words(t, a, &(a[n]), n); + bn_sub_words(&(t[n]), &(b[n]), b, n); + break; + } + +# ifdef BN_MUL_COMBA + if (n == 4) { + if (!zero) + bn_mul_comba4(&(t[n2]), t, &(t[n])); + else + memset(&(t[n2]), 0, 8*sizeof(BN_ULONG)); + + bn_mul_comba4(r, a, b); + bn_mul_comba4(&(r[n2]), &(a[n]), &(b[n])); + } else if (n == 8) { + if (!zero) + bn_mul_comba8(&(t[n2]), t, &(t[n])); + else + memset(&(t[n2]), 0, 16*sizeof(BN_ULONG)); + + bn_mul_comba8(r, a, b); + bn_mul_comba8(&(r[n2]), &(a[n]), &(b[n])); + } else +# endif /* BN_MUL_COMBA */ + { + p = &(t[n2*2]); + if (!zero) + bn_mul_recursive(&(t[n2]), t, &(t[n]), n, p); + else + memset(&(t[n2]), 0, n2*sizeof(BN_ULONG)); + bn_mul_recursive(r, a, b, n, p); + bn_mul_recursive(&(r[n2]), &(a[n]), &(b[n]), n, p); + } + + /* t[32] holds (a[0]-a[1])*(b[1]-b[0]), c1 is the sign + * r[10] holds (a[0]*b[0]) + * r[32] holds (b[1]*b[1]) + */ + + c1 = (int)(bn_add_words(t, r, &(r[n2]), n2)); + + if (neg) { + /* if t[32] is negative */ + c1 -= (int)(bn_sub_words(&(t[n2]), t, &(t[n2]), n2)); + } else { + /* Might have a carry */ + c1 += (int)(bn_add_words(&(t[n2]), &(t[n2]), t, n2)); + } + + /* t[32] holds (a[0]-a[1])*(b[1]-b[0])+(a[0]*b[0])+(a[1]*b[1]) + * r[10] holds (a[0]*b[0]) + * r[32] holds (b[1]*b[1]) + * c1 holds the carry bits + */ + c1 += (int)(bn_add_words(&(r[n]), &(r[n]), &(t[n2]), n2)); + if (c1) { + p = &(r[n+n2]); + lo = *p; + ln = (lo+c1)&BN_MASK2; + *p = ln; + + /* The overflow will stop before we over write + * words we should not overwrite + */ + if (ln < (BN_ULONG)c1) { + do { + p++; + lo = *p; + ln = (lo+1)&BN_MASK2; + *p = ln; + } while (ln == 0); + } + } +} + +/* n+tn is the word length + * t needs to be n*4 is size, as does r + */ +void +bn_mul_part_recursive(BN_ULONG *r, BN_ULONG *a, BN_ULONG *b, int tn, int n, BN_ULONG *t) +{ + int i, j, n2 = n*2; + int c1, c2, neg, zero; + BN_ULONG ln, lo, *p; + +# ifdef BN_COUNT + printf(" bn_mul_part_recursive %d * %d\n", tn+n, tn+n); +# endif + if (n < 8) { + i = tn+n; + bn_mul_normal(r, a, i, b, i); + return; + } + + /* r = (a[0]-a[1])*(b[1]-b[0]) */ + c1 = bn_cmp_words(a, &(a[n]), n); + c2 = bn_cmp_words(&(b[n]), b, n); + zero = neg = 0; + switch (c1 * 3 + c2) { + case -4: + bn_sub_words(t, &(a[n]), a, n); /* - */ + bn_sub_words(&(t[n]), b, &(b[n]), n); /* - */ + break; + case -3: + zero = 1; + /* break; */ + case -2: + bn_sub_words(t, &(a[n]), a, n); /* - */ + bn_sub_words(&(t[n]), &(b[n]), b, n); /* + */ + neg = 1; + break; + case -1: + case 0: + case 1: + zero = 1; + /* break; */ + case 2: + bn_sub_words(t, a, &(a[n]), n); /* + */ + bn_sub_words(&(t[n]), b, &(b[n]), n); /* - */ + neg = 1; + break; + case 3: + zero = 1; + /* break; */ + case 4: + bn_sub_words(t, a, &(a[n]), n); + bn_sub_words(&(t[n]), &(b[n]), b, n); + break; + } + /* The zero case isn't yet implemented here. The speedup + * would probably be negligible. + */ + if (n == 8) { + bn_mul_comba8(&(t[n2]), t, &(t[n])); + bn_mul_comba8(r, a, b); + bn_mul_normal(&(r[n2]), &(a[n]), tn, &(b[n]), tn); + memset(&(r[n2+tn*2]), 0, sizeof(BN_ULONG)*(n2-tn*2)); + } else { + p = &(t[n2*2]); + bn_mul_recursive(&(t[n2]), t, &(t[n]), n, p); + bn_mul_recursive(r, a, b, n, p); + i = n/2; + /* If there is only a bottom half to the number, + * just do it + */ + j = tn-i; + if (j == 0) { + bn_mul_recursive(&(r[n2]), &(a[n]), &(b[n]), i, p); + memset(&(r[n2+i*2]), 0, sizeof(BN_ULONG)*(n2-i*2)); + } else if (j > 0) { + /* eg, n == 16, i == 8 and tn == 11 */ + bn_mul_part_recursive(&(r[n2]), &(a[n]), &(b[n]), j, i, p); + memset(&(r[n2+tn*2]), 0, sizeof(BN_ULONG)*(n2-tn*2)); + } else { + /* (j < 0) eg, n == 16, i == 8 and tn == 5 */ + memset(&(r[n2]), 0, sizeof(BN_ULONG)*n2); + if (tn < BN_MUL_RECURSIVE_SIZE_NORMAL) { + bn_mul_normal(&(r[n2]), &(a[n]), tn, &(b[n]), tn); + } else { + for (;;) { + i /= 2; + if (i < tn) { + bn_mul_part_recursive(&(r[n2]), + &(a[n]), &(b[n]), + tn-i, i, p); + break; + } else if (i == tn) { + bn_mul_recursive(&(r[n2]), + &(a[n]), &(b[n]), + i, p); + break; + } + } + } + } + } + + /* t[32] holds (a[0]-a[1])*(b[1]-b[0]), c1 is the sign + * r[10] holds (a[0]*b[0]) + * r[32] holds (b[1]*b[1]) + */ + + c1 = (int)(bn_add_words(t, r, &(r[n2]), n2)); + + if (neg) /* if t[32] is negative */ { + c1 -= (int)(bn_sub_words(&(t[n2]), t, &(t[n2]), n2)); + } else { + /* Might have a carry */ + c1 += (int)(bn_add_words(&(t[n2]), &(t[n2]), t, n2)); + } + + /* t[32] holds (a[0]-a[1])*(b[1]-b[0])+(a[0]*b[0])+(a[1]*b[1]) + * r[10] holds (a[0]*b[0]) + * r[32] holds (b[1]*b[1]) + * c1 holds the carry bits + */ + c1 += (int)(bn_add_words(&(r[n]), &(r[n]), &(t[n2]), n2)); + if (c1) { + p = &(r[n+n2]); + lo = *p; + ln = (lo+c1)&BN_MASK2; + *p = ln; + + /* The overflow will stop before we over write + * words we should not overwrite + */ + if (ln < (BN_ULONG)c1) { + do { + p++; + lo = *p; + ln = (lo+1)&BN_MASK2; + *p = ln; + } while (ln == 0); + } + } +} + +#ifdef NOT_NEEDED_FOR_DH +/* a and b must be the same size, which is n2. + * r needs to be n2 words and t needs to be n2*2 + */ +void +bn_mul_low_recursive(BN_ULONG *r, BN_ULONG *a, BN_ULONG *b, int n2, BN_ULONG *t) +{ + int n = n2/2; + +# ifdef BN_COUNT + printf(" bn_mul_low_recursive %d * %d\n", n2, n2); +# endif + + bn_mul_recursive(r, a, b, n, &(t[0])); + if (n >= BN_MUL_LOW_RECURSIVE_SIZE_NORMAL) { + bn_mul_low_recursive(&(t[0]), &(a[0]), &(b[n]), n, &(t[n2])); + bn_add_words(&(r[n]), &(r[n]), &(t[0]), n); + bn_mul_low_recursive(&(t[0]), &(a[n]), &(b[0]), n, &(t[n2])); + bn_add_words(&(r[n]), &(r[n]), &(t[0]), n); + } else { + bn_mul_low_normal(&(t[0]), &(a[0]), &(b[n]), n); + bn_mul_low_normal(&(t[n]), &(a[n]), &(b[0]), n); + bn_add_words(&(r[n]), &(r[n]), &(t[0]), n); + bn_add_words(&(r[n]), &(r[n]), &(t[n]), n); + } +} +#endif /* NOT_NEEDED_FOR_DH */ + +/* a and b must be the same size, which is n2. + * r needs to be n2 words and t needs to be n2*2 + * l is the low words of the output. + * t needs to be n2*3 + */ +void +bn_mul_high(BN_ULONG *r, BN_ULONG *a, BN_ULONG *b, BN_ULONG *l, int n2, BN_ULONG *t) +{ + int i, n; + int c1, c2; + int neg, oneg, zero; + BN_ULONG ll, lc, *lp, *mp; + +# ifdef BN_COUNT + printf(" bn_mul_high %d * %d\n", n2, n2); +# endif + n = n2 / 2; + + /* Calculate (al - ah) * (bh - bl) */ + neg = zero = 0; + c1 = bn_cmp_words(&(a[0]), &(a[n]), n); + c2 = bn_cmp_words(&(b[n]), &(b[0]), n); + switch (c1 * 3 + c2) { + case -4: + bn_sub_words(&(r[0]), &(a[n]), &(a[0]), n); + bn_sub_words(&(r[n]), &(b[0]), &(b[n]), n); + break; + case -3: + zero = 1; + break; + case -2: + bn_sub_words(&(r[0]), &(a[n]), &(a[0]), n); + bn_sub_words(&(r[n]), &(b[n]), &(b[0]), n); + neg = 1; + break; + case -1: + case 0: + case 1: + zero = 1; + break; + case 2: + bn_sub_words(&(r[0]), &(a[0]), &(a[n]), n); + bn_sub_words(&(r[n]), &(b[0]), &(b[n]), n); + neg = 1; + break; + case 3: + zero = 1; + break; + case 4: + bn_sub_words(&(r[0]), &(a[0]), &(a[n]), n); + bn_sub_words(&(r[n]), &(b[n]), &(b[0]), n); + break; + } + + oneg = neg; + /* t[10] = (a[0]-a[1])*(b[1]-b[0]) */ + /* r[10] = (a[1]*b[1]) */ +# ifdef BN_MUL_COMBA + if (n == 8) { + bn_mul_comba8(&(t[0]), &(r[0]), &(r[n])); + bn_mul_comba8(r, &(a[n]), &(b[n])); + } else +# endif + { + bn_mul_recursive(&(t[0]), &(r[0]), &(r[n]), n, &(t[n2])); + bn_mul_recursive(r, &(a[n]), &(b[n]), n, &(t[n2])); + } + + /* s0 == low(al*bl) + * s1 == low(ah*bh)+low((al-ah)*(bh-bl))+low(al*bl)+high(al*bl) + * We know s0 and s1 so the only unknown is high(al*bl) + * high(al*bl) == s1 - low(ah*bh+s0+(al-ah)*(bh-bl)) + * high(al*bl) == s1 - (r[0]+l[0]+t[0]) + */ + if (l != NULL) { + lp = &(t[n2+n]); + c1 = (int)(bn_add_words(lp, &(r[0]), &(l[0]), n)); + } else { + c1 = 0; + lp = &(r[0]); + } + + if (neg) + neg = (int)(bn_sub_words(&(t[n2]), lp, &(t[0]), n)); + else { + bn_add_words(&(t[n2]), lp, &(t[0]), n); + neg = 0; + } + + if (l != NULL) { + bn_sub_words(&(t[n2+n]), &(l[n]), &(t[n2]), n); + } else { + lp = &(t[n2+n]); + mp = &(t[n2]); + for (i = 0; i < n; i++) + lp[i] = ((~mp[i])+1)&BN_MASK2; + } + + /* s[0] = low(al*bl) + * t[3] = high(al*bl) + * t[10] = (a[0]-a[1])*(b[1]-b[0]) neg is the sign + * r[10] = (a[1]*b[1]) + */ + /* R[10] = al*bl + * R[21] = al*bl + ah*bh + (a[0]-a[1])*(b[1]-b[0]) + * R[32] = ah*bh + */ + /* R[1] = t[3]+l[0]+r[0](+-)t[0] (have carry/borrow) + * R[2] = r[0]+t[3]+r[1](+-)t[1] (have carry/borrow) + * R[3] = r[1]+(carry/borrow) + */ + if (l != NULL) { + lp = &(t[n2]); + c1 = (int)(bn_add_words(lp, &(t[n2+n]), &(l[0]), n)); + } else { + lp = &(t[n2+n]); + c1 = 0; + } + c1 += (int)(bn_add_words(&(t[n2]), lp, &(r[0]), n)); + if (oneg) + c1 -= (int)(bn_sub_words(&(t[n2]), &(t[n2]), &(t[0]), n)); + else + c1 += (int)(bn_add_words(&(t[n2]), &(t[n2]), &(t[0]), n)); + + c2 = (int)(bn_add_words(&(r[0]), &(r[0]), &(t[n2+n]), n)); + c2 += (int)(bn_add_words(&(r[0]), &(r[0]), &(r[n]), n)); + if (oneg) + c2 -= (int)(bn_sub_words(&(r[0]), &(r[0]), &(t[n]), n)); + else + c2 += (int)(bn_add_words(&(r[0]), &(r[0]), &(t[n]), n)); + + if (c1 != 0) { + /* Add starting at r[0], could be +ve or -ve */ + i = 0; + if (c1 > 0) { + lc = c1; + do { + ll = (r[i]+lc)&BN_MASK2; + r[i++] = ll; + lc = (lc > ll); + } while (lc); + } else { + lc = -c1; + do { + ll = r[i]; + r[i++] = (ll-lc)&BN_MASK2; + lc = (lc > ll); + } while (lc); + } + } + if (c2 != 0) { + /* Add starting at r[1] */ + i = n; + if (c2 > 0) { + lc = c2; + do { + ll = (r[i]+lc)&BN_MASK2; + r[i++] = ll; + lc = (lc > ll); + } while (lc); + } else { + lc = -c2; + do { + ll = r[i]; + r[i++] = (ll-lc)&BN_MASK2; + lc = (lc > ll); + } while (lc); + } + } +} +#endif /* BN_RECURSION */ + +int +BN_mul(BIGNUM *r, const BIGNUM *a, const BIGNUM *b, BN_CTX *ctx) +{ + int top, al, bl; + BIGNUM *rr; + int ret = 0; +#if defined(BN_MUL_COMBA) || defined(BN_RECURSION) + int i; +#endif +#ifdef BN_RECURSION + BIGNUM *t; + int j, k; +#endif + +#ifdef BN_COUNT + printf("BN_mul %d * %d\n", a->top, b->top); +#endif + + bn_check_top(a); + bn_check_top(b); + bn_check_top(r); + + al = a->top; + bl = b->top; + + if ((al == 0) || (bl == 0)) { + if (!BN_zero(r)) goto err; + return (1); + } + top = al+bl; + + BN_CTX_start(ctx); + if ((r == a) || (r == b)) { + if ((rr = BN_CTX_get(ctx)) == NULL) goto err; + } else + rr = r; + rr->neg = a->neg^b->neg; + +#if defined(BN_MUL_COMBA) || defined(BN_RECURSION) + i = al-bl; +#endif +#ifdef BN_MUL_COMBA + if (i == 0) { + if (al == 8) { + if (bn_wexpand(rr, 16) == NULL) goto err; + rr->top = 16; + bn_mul_comba8(rr->d, a->d, b->d); + goto end; + } + } +#endif /* BN_MUL_COMBA */ +#ifdef BN_RECURSION + if ((al >= BN_MULL_SIZE_NORMAL) && (bl >= BN_MULL_SIZE_NORMAL)) { + if (i == 1 && !BN_get_flags(b, BN_FLG_STATIC_DATA) && bl < b->dmax) { + b->d[bl] = 0; + bl++; + i--; + } else if (i == -1 && !BN_get_flags(a, BN_FLG_STATIC_DATA) && al < a->dmax) { + a->d[al] = 0; + al++; + i++; + } + if (i == 0) { + /* symmetric and > 4 */ + /* 16 or larger */ + j = BN_num_bits_word((BN_ULONG)al); + j = 1 << (j - 1); + k = j + j; + t = BN_CTX_get(ctx); + if (al == j) { + /* exact multiple */ + if (bn_wexpand(t, k*2) == NULL) goto err; + if (bn_wexpand(rr, k*2) == NULL) goto err; + bn_mul_recursive(rr->d, a->d, b->d, al, t->d); + rr->top = top; + goto end; + } + } + } +#endif /* BN_RECURSION */ + if (bn_wexpand(rr, top) == NULL) goto err; + rr->top = top; + bn_mul_normal(rr->d, a->d, al, b->d, bl); + +#if defined(BN_MUL_COMBA) || defined(BN_RECURSION) +end: +#endif + bn_fix_top(rr); + if (r != rr) BN_copy(r, rr); + ret = 1; +err: + BN_CTX_end(ctx); + return (ret); +} + +void +bn_mul_normal(BN_ULONG *r, BN_ULONG *a, int na, BN_ULONG *b, int nb) +{ + BN_ULONG *rr; + +#ifdef BN_COUNT + printf(" bn_mul_normal %d * %d\n", na, nb); +#endif + + if (na < nb) { + int itmp; + BN_ULONG *ltmp; + + itmp = na; na = nb; nb = itmp; + ltmp = a; a = b; b = ltmp; + } + rr = &(r[na]); + rr[0] = bn_mul_words(r, a, na, b[0]); + + for (;;) { + if (--nb <= 0) return; + rr[1] = bn_mul_add_words(&(r[1]), a, na, b[1]); + if (--nb <= 0) return; + rr[2] = bn_mul_add_words(&(r[2]), a, na, b[2]); + if (--nb <= 0) return; + rr[3] = bn_mul_add_words(&(r[3]), a, na, b[3]); + if (--nb <= 0) return; + rr[4] = bn_mul_add_words(&(r[4]), a, na, b[4]); + rr += 4; + r += 4; + b += 4; + } +} + +#ifdef NOT_NEEDED_FOR_DH +void +bn_mul_low_normal(BN_ULONG *r, BN_ULONG *a, BN_ULONG *b, int n) +{ +#ifdef BN_COUNT + printf(" bn_mul_low_normal %d * %d\n", n, n); +#endif + bn_mul_words(r, a, n, b[0]); + + for (;;) { + if (--n <= 0) return; + bn_mul_add_words(&(r[1]), a, n, b[1]); + if (--n <= 0) return; + bn_mul_add_words(&(r[2]), a, n, b[2]); + if (--n <= 0) return; + bn_mul_add_words(&(r[3]), a, n, b[3]); + if (--n <= 0) return; + bn_mul_add_words(&(r[4]), a, n, b[4]); + r += 4; + b += 4; + } +} +#endif /* NOT_NEEDED_FOR_DH */ + +static int +bnrand(int pseudorand, BIGNUM *rnd, int bits, int top, int bottom) +{ + unsigned char *buf = NULL; + int ret = 0, bit, bytes, mask; + + if (bits == 0) { + BN_zero(rnd); + return 1; + } + + bytes = (bits + 7) / 8; + bit = (bits - 1) % 8; + mask = 0xff << (bit + 1); + + buf = (unsigned char *)OPENSSL_malloc(bytes); + if (buf == NULL) { + BNerr(BN_F_BN_RAND, ERR_R_MALLOC_FAILURE); + goto err; + } + + + assert(bn_rand_fn); + bn_rand_fn(buf, bytes); + + if (pseudorand == 2) { + /* generate patterns that are more likely to trigger BN + * library bugs + */ + int i; + unsigned char c; + + for (i = 0; i < bytes; i++) { +/* RAND_pseudo_bytes(&c, 1); */ + bn_rand_fn(&c, 1); + if (c >= 128 && i > 0) + buf[i] = buf[i-1]; + else if (c < 42) + buf[i] = 0; + else if (c < 84) + buf[i] = 255; + } + } + + if (top != -1) { + if (top) { + if (bit == 0) { + buf[0] = 1; + buf[1] |= 0x80; + } else { + buf[0] |= (3 << (bit - 1)); + } + } else { + buf[0] |= (1 << bit); + } + } + buf[0] &= ~mask; + if (bottom) /* set bottom bit if requested */ + buf[bytes-1] |= 1; + if (!BN_bin2bn(buf, bytes, rnd)) goto err; + ret = 1; +err: + if (buf != NULL) { + OPENSSL_cleanse(buf, bytes); + OPENSSL_free(buf); + } + return (ret); +} + +int +BN_rand(BIGNUM *rnd, int bits, int top, int bottom) +{ + return bnrand(0, rnd, bits, top, bottom); +} + +#ifdef BCMDH_TEST +int +BN_pseudo_rand(BIGNUM *rnd, int bits, int top, int bottom) +{ + return bnrand(1, rnd, bits, top, bottom); +} +#endif /* BCMDH_TEST */ + +#ifdef NOT_NEEDED_FOR_DH +int +BN_bntest_rand(BIGNUM *rnd, int bits, int top, int bottom) +{ + return bnrand(2, rnd, bits, top, bottom); +} +#endif /* NOT_NEEDED_FOR_DH */ + + +#ifdef BCMDH_TEST +/* random number r: 0 <= r < range */ +static int +bn_rand_range(int pseudo, BIGNUM *r, BIGNUM *range) +{ + int (*bn_rand)(BIGNUM *, int, int, int) = pseudo ? BN_pseudo_rand : BN_rand; + int n; + + if (range->neg || BN_is_zero(range)) { + BNerr(BN_F_BN_RAND_RANGE, BN_R_INVALID_RANGE); + return 0; + } + + n = BN_num_bits(range); /* n > 0 */ + + /* BN_is_bit_set(range, n - 1) always holds */ + + if (n == 1) { + if (!BN_zero(r)) return 0; + } else if (!BN_is_bit_set(range, n - 2) && !BN_is_bit_set(range, n - 3)) { + /* range = 100..._2, + * so 3*range ( = 11..._2) is exactly one bit longer than range + */ + do { + if (!bn_rand(r, n + 1, -1, 0)) return 0; + /* If r < 3*range, use r : = r MOD range + * (which is either r, r - range, or r - 2*range). + * Otherwise, iterate once more. + * Since 3*range = 11..._2, each iteration succeeds with + * probability >= .75. + */ + if (BN_cmp(r, range) >= 0) { + if (!BN_sub(r, r, range)) return 0; + if (BN_cmp(r, range) >= 0) + if (!BN_sub(r, r, range)) return 0; + } + } + while (BN_cmp(r, range) >= 0) + ; + } else { + do { + /* range = 11..._2 or range = 101..._2 */ + if (!bn_rand(r, n, -1, 0)) + return 0; + } while (BN_cmp(r, range) >= 0); + } + + return 1; +} +#endif /* BCMDH_TEST */ + +#ifdef NOT_NEEDED_FOR_DH +int +BN_rand_range(BIGNUM *r, BIGNUM *range) +{ + return bn_rand_range(0, r, range); +} +#endif /* NOT_NEEDED_FOR_DH */ + +#ifdef BCMDH_TEST +int +BN_pseudo_rand_range(BIGNUM *r, BIGNUM *range) +{ + return bn_rand_range(1, r, range); +} +#endif /* BCMDH_TEST */ + +#ifdef NOT_NEEDED_FOR_DH +void +BN_RECP_CTX_init(BN_RECP_CTX *recp) +{ + BN_init(&(recp->N)); + BN_init(&(recp->Nr)); + recp->num_bits = 0; + recp->flags = 0; +} + +BN_RECP_CTX * +BN_RECP_CTX_new(void) +{ + BN_RECP_CTX *ret; + + if ((ret = (BN_RECP_CTX *)OPENSSL_malloc(sizeof(BN_RECP_CTX))) == NULL) + return (NULL); + + BN_RECP_CTX_init(ret); + ret->flags = BN_FLG_MALLOCED; + return (ret); +} + +void +BN_RECP_CTX_free(BN_RECP_CTX *recp) +{ + if (recp == NULL) + return; + + BN_free(&(recp->N)); + BN_free(&(recp->Nr)); + if (recp->flags & BN_FLG_MALLOCED) + OPENSSL_free(recp); +} + +int +BN_RECP_CTX_set(BN_RECP_CTX *recp, const BIGNUM *d, BN_CTX *ctx) +{ + if (!BN_copy(&(recp->N), d)) return 0; + if (!BN_zero(&(recp->Nr))) return 0; + recp->num_bits = BN_num_bits(d); + recp->shift = 0; + return (1); +} + +int +BN_mod_mul_reciprocal(BIGNUM *r, const BIGNUM *x, const BIGNUM *y, + BN_RECP_CTX *recp, BN_CTX *ctx) +{ + int ret = 0; + BIGNUM *a; + const BIGNUM *ca; + + BN_CTX_start(ctx); + if ((a = BN_CTX_get(ctx)) == NULL) + goto err; + if (y != NULL) { + if (x == y) { + if (!BN_sqr(a, x, ctx)) + goto err; + } else { + if (!BN_mul(a, x, y, ctx)) + goto err; + } + ca = a; + } else + ca = x; /* Just do the mod */ + + ret = BN_div_recp(NULL, r, ca, recp, ctx); +err: + BN_CTX_end(ctx); + return (ret); +} + +int +BN_div_recp(BIGNUM *dv, BIGNUM *rem, const BIGNUM *m, BN_RECP_CTX *recp, BN_CTX *ctx) +{ + int i, j, ret = 0; + BIGNUM *a, *b, *d, *r; + + BN_CTX_start(ctx); + a = BN_CTX_get(ctx); + b = BN_CTX_get(ctx); + if (dv != NULL) + d = dv; + else + d = BN_CTX_get(ctx); + if (rem != NULL) + r = rem; + else + r = BN_CTX_get(ctx); + if (a == NULL || b == NULL || d == NULL || r == NULL) + goto err; + + if (BN_ucmp(m, &(recp->N)) < 0) { + if (!BN_zero(d)) return 0; + if (!BN_copy(r, m)) return 0; + BN_CTX_end(ctx); + return (1); + } + + /* We want the remainder + * Given input of ABCDEF / ab + * we need multiply ABCDEF by 3 digests of the reciprocal of ab + * + */ + + /* i : = max(BN_num_bits(m), 2*BN_num_bits(N)) */ + i = BN_num_bits(m); + j = recp->num_bits << 1; + if (j > i) i = j; + + /* Nr : = round(2^i / N) */ + if (i != recp->shift) + recp->shift = BN_reciprocal(&(recp->Nr), &(recp->N), + i, ctx); /* BN_reciprocal returns i, or -1 for an error */ + if (recp->shift == -1) goto err; + + /* d : = |round(round(m / 2^BN_num_bits(N)) * recp->Nr / 2^(i - BN_num_bits(N)))| + * = |round(round(m / 2^BN_num_bits(N)) * round(2^i / N) / 2^(i - BN_num_bits(N)))| + * <= |(m / 2^BN_num_bits(N)) * (2^i / N) * (2^BN_num_bits(N) / 2^i)| + * = |m/N| + */ + if (!BN_rshift(a, m, recp->num_bits)) goto err; + if (!BN_mul(b, a, &(recp->Nr), ctx)) goto err; + if (!BN_rshift(d, b, i-recp->num_bits)) goto err; + d->neg = 0; + + if (!BN_mul(b, &(recp->N), d, ctx)) goto err; + if (!BN_usub(r, m, b)) goto err; + r->neg = 0; + + j = 0; + while (BN_ucmp(r, &(recp->N)) >= 0) { + if (j++ > 2) { + BNerr(BN_F_BN_MOD_MUL_RECIPROCAL, BN_R_BAD_RECIPROCAL); + goto err; + } + if (!BN_usub(r, r, &(recp->N))) goto err; + if (!BN_add_word(d, 1)) goto err; + } + + r->neg = BN_is_zero(r)?0:m->neg; + d->neg = m->neg^recp->N.neg; + ret = 1; +err: + BN_CTX_end(ctx); + return (ret); +} + +/* len is the expected size of the result + * We actually calculate with an extra word of precision, so + * we can do faster division if the remainder is not required. + */ +/* r : = 2^len / m */ +int +BN_reciprocal(BIGNUM *r, const BIGNUM *m, int len, BN_CTX *ctx) +{ + int ret = -1; + BIGNUM t; + + BN_init(&t); + + if (!BN_zero(&t)) goto err; + if (!BN_set_bit(&t, len)) goto err; + + if (!BN_div(r, NULL, &t, m, ctx)) goto err; + + ret = len; +err: + BN_free(&t); + return (ret); +} +#endif /* NOT_NEEDED_FOR_DH */ + +int +BN_lshift1(BIGNUM *r, const BIGNUM *a) +{ + register BN_ULONG *ap, *rp, t, c; + int i; + + if (r != a) { + r->neg = a->neg; + if (bn_wexpand(r, a->top+1) == NULL) return (0); + r->top = a->top; + } else { + if (bn_wexpand(r, a->top+1) == NULL) return (0); + } + ap = a->d; + rp = r->d; + c = 0; + for (i = 0; i < a->top; i++) { + t = *(ap++); + *(rp++) = ((t << 1) | c) & BN_MASK2; + c = (t & BN_TBIT)?1:0; + } + if (c) { + *rp = 1; + r->top++; + } + return (1); +} + +int +BN_rshift1(BIGNUM *r, const BIGNUM *a) +{ + BN_ULONG *ap, *rp, t, c; + int i; + + if (BN_is_zero(a)) { + BN_zero(r); + return (1); + } + if (a != r) { + if (bn_wexpand(r, a->top) == NULL) return (0); + r->top = a->top; + r->neg = a->neg; + } + ap = a->d; + rp = r->d; + c = 0; + for (i = a->top - 1; i >= 0; i--) { + t = ap[i]; + rp[i] = ((t >> 1) & BN_MASK2) | c; + c = (t & 1) ? BN_TBIT : 0; + } + bn_fix_top(r); + return (1); +} + +int +BN_lshift(BIGNUM *r, const BIGNUM *a, int n) +{ + int i, nw, lb, rb; + BN_ULONG *t, *f; + BN_ULONG l; + + r->neg = a->neg; + nw = n / BN_BITS2; + if (bn_wexpand(r, a->top + nw + 1) == NULL) + return (0); + lb = n % BN_BITS2; + rb = BN_BITS2 - lb; + f = a->d; + t = r->d; + t[a->top + nw] = 0; + if (lb == 0) + for (i = a->top - 1; i >= 0; i--) + t[nw+i] = f[i]; + else + for (i = a->top-1; i >= 0; i--) { + l = f[i]; + t[nw + i + 1] |= (l >> rb) & BN_MASK2; + t[nw + i] = (l << lb) & BN_MASK2; + } + memset(t, 0, nw * sizeof(t[0])); +/* for (i = 0; i < nw; i++) + * t[i] = 0; + */ + r->top = a->top + nw + 1; + bn_fix_top(r); + return (1); +} + +int +BN_rshift(BIGNUM *r, const BIGNUM *a, int n) +{ + int i, j, nw, lb, rb; + BN_ULONG *t, *f; + BN_ULONG l, tmp; + + nw = n/BN_BITS2; + rb = n%BN_BITS2; + lb = BN_BITS2-rb; + if (nw > a->top || a->top == 0) { + BN_zero(r); + return (1); + } + if (r != a) { + r->neg = a->neg; + if (bn_wexpand(r, a->top-nw+1) == NULL) return (0); + } else { + if (n == 0) + return 1; /* or the copying loop will go berserk */ + } + + f = &(a->d[nw]); + t = r->d; + j = a->top-nw; + r->top = j; + + if (rb == 0) { + for (i = j+1; i > 0; i--) + *(t++) = *(f++); + } else { + l = *(f++); + for (i = 1; i < j; i++) { + tmp = (l >> rb)&BN_MASK2; + l = *(f++); + *(t++) = (tmp | (l << lb)) & BN_MASK2; + } + *(t++) = (l>>rb)&BN_MASK2; + } + *t = 0; + bn_fix_top(r); + return (1); +} + +/* r must not be a */ +/* I've just gone over this and it is now %20 faster on x86 - eay - 27 Jun 96 */ +int +BN_sqr(BIGNUM *r, const BIGNUM *a, BN_CTX *ctx) +{ + int max, al; + int ret = 0; + BIGNUM *tmp, *rr; + +#ifdef BN_COUNT + fprintf(stderr, "BN_sqr %d * %d\n", a->top, a->top); +#endif + bn_check_top(a); + + al = a->top; + if (al <= 0) { + r->top = 0; + return (1); + } + + BN_CTX_start(ctx); + rr = (a != r) ? r : BN_CTX_get(ctx); + tmp = BN_CTX_get(ctx); + if (tmp == NULL) goto err; + + max = (al + al); + if (bn_wexpand(rr, max + 1) == NULL) + goto err; + + if (al == 4) { +#ifndef BN_SQR_COMBA + BN_ULONG t[8]; + bn_sqr_normal(rr->d, a->d, 4, t); +#else + bn_sqr_comba4(rr->d, a->d); +#endif + } else if (al == 8) { +#ifndef BN_SQR_COMBA + BN_ULONG t[16]; + bn_sqr_normal(rr->d, a->d, 8, t); +#else + bn_sqr_comba8(rr->d, a->d); +#endif + } else { +#if defined(BN_RECURSION) + if (al < BN_SQR_RECURSIVE_SIZE_NORMAL) { + BN_ULONG t[BN_SQR_RECURSIVE_SIZE_NORMAL*2]; + bn_sqr_normal(rr->d, a->d, al, t); + } else { + int j, k; + + j = BN_num_bits_word((BN_ULONG)al); + j = 1 << (j - 1); + k = j + j; + if (al == j) { + if (bn_wexpand(tmp, k*2) == NULL) goto err; + bn_sqr_recursive(rr->d, a->d, al, tmp->d); + } else { + if (bn_wexpand(tmp, max) == NULL) goto err; + bn_sqr_normal(rr->d, a->d, al, tmp->d); + } + } +#else + if (bn_wexpand(tmp, max) == NULL) + goto err; + bn_sqr_normal(rr->d, a->d, al, tmp->d); +#endif /* BN_RECURSION */ + } + + rr->top = max; + rr->neg = 0; + if ((max > 0) && (rr->d[max-1] == 0)) rr->top--; + if (rr != r) BN_copy(r, rr); + ret = 1; +err: + BN_CTX_end(ctx); + return (ret); +} + +/* tmp must have 2*n words */ +void +bn_sqr_normal(BN_ULONG *r, const BN_ULONG *a, int n, BN_ULONG *tmp) +{ + int i, j, max; + const BN_ULONG *ap; + BN_ULONG *rp; + + max = n*2; + ap = a; + rp = r; + rp[0] = rp[max-1] = 0; + rp++; + j = n; + + if (--j > 0) { + ap++; + rp[j] = bn_mul_words(rp, ap, j, ap[-1]); + rp += 2; + } + + for (i = n - 2; i > 0; i--) { + j--; + ap++; + rp[j] = bn_mul_add_words(rp, ap, j, ap[-1]); + rp += 2; + } + + bn_add_words(r, r, r, max); + + /* There will not be a carry */ + + bn_sqr_words(tmp, a, n); + + bn_add_words(r, r, tmp, max); +} + +#ifdef BN_RECURSION +/* r is 2*n words in size, + * a and b are both n words in size. (There's not actually a 'b' here ...) + * n must be a power of 2. + * We multiply and return the result. + * t must be 2*n words in size + * We calculate + * a[0]*b[0] + * a[0]*b[0]+a[1]*b[1]+(a[0]-a[1])*(b[1]-b[0]) + * a[1]*b[1] + */ +void +bn_sqr_recursive(BN_ULONG *r, const BN_ULONG *a, int n2, BN_ULONG *t) +{ + int n = n2/2; + int zero, c1; + BN_ULONG ln, lo, *p; + +#ifdef BN_COUNT + fprintf(stderr, " bn_sqr_recursive %d * %d\n", n2, n2); +#endif + if (n2 == 4) { +#ifndef BN_SQR_COMBA + bn_sqr_normal(r, a, 4, t); +#else + bn_sqr_comba4(r, a); +#endif + return; + } else if (n2 == 8) { +#ifndef BN_SQR_COMBA + bn_sqr_normal(r, a, 8, t); +#else + bn_sqr_comba8(r, a); +#endif + return; + } + if (n2 < BN_SQR_RECURSIVE_SIZE_NORMAL) { + bn_sqr_normal(r, a, n2, t); + return; + } + /* r = (a[0]-a[1])*(a[1]-a[0]) */ + c1 = bn_cmp_words(a, &(a[n]), n); + zero = 0; + if (c1 > 0) + bn_sub_words(t, a, &(a[n]), n); + else if (c1 < 0) + bn_sub_words(t, &(a[n]), a, n); + else + zero = 1; + + /* The result will always be negative unless it is zero */ + p = &(t[n2*2]); + + if (!zero) + bn_sqr_recursive(&(t[n2]), t, n, p); + else + memset(&(t[n2]), 0, n2*sizeof(BN_ULONG)); + bn_sqr_recursive(r, a, n, p); + bn_sqr_recursive(&(r[n2]), &(a[n]), n, p); + + /* t[32] holds (a[0]-a[1])*(a[1]-a[0]), it is negative or zero + * r[10] holds (a[0]*b[0]) + * r[32] holds (b[1]*b[1]) + */ + + c1 = (int)(bn_add_words(t, r, &(r[n2]), n2)); + + /* t[32] is negative */ + c1 -= (int)(bn_sub_words(&(t[n2]), t, &(t[n2]), n2)); + + /* t[32] holds (a[0]-a[1])*(a[1]-a[0])+(a[0]*a[0])+(a[1]*a[1]) + * r[10] holds (a[0]*a[0]) + * r[32] holds (a[1]*a[1]) + * c1 holds the carry bits + */ + c1 += (int)(bn_add_words(&(r[n]), &(r[n]), &(t[n2]), n2)); + if (c1) { + p = &(r[n+n2]); + lo = *p; + ln = (lo+c1)&BN_MASK2; + *p = ln; + + /* The overflow will stop before we over write + * words we should not overwrite + */ + if (ln < (BN_ULONG)c1) { + do { + p++; + lo = *p; + ln = (lo+1)&BN_MASK2; + *p = ln; + } while (ln == 0); + } + } +} +#endif /* BN_RECURSION */ + +#ifdef BCMDH_TEST +BN_ULONG +BN_mod_word(const BIGNUM *a, BN_ULONG w) +{ +#ifndef BN_LLONG + BN_ULONG ret = 0; +#else + BN_ULLONG ret = 0; +#endif + int i; + + w &= BN_MASK2; + for (i = a->top-1; i >= 0; i--) { +#ifndef BN_LLONG + ret = ((ret << BN_BITS4) | ((a->d[i] >> BN_BITS4) & BN_MASK2l)) % w; + ret = ((ret << BN_BITS4) | (a->d[i] & BN_MASK2l)) % w; +#else + ret = (BN_ULLONG)(((ret << (BN_ULLONG)BN_BITS2) | a->d[i]) % (BN_ULLONG)w); +#endif + } + return ((BN_ULONG)ret); +} +#endif /* BCMDH_TEST */ + +#ifdef NOT_NEEDED_FOR_DH +BN_ULONG +BN_div_word(BIGNUM *a, BN_ULONG w) +{ + BN_ULONG ret; + int i; + + if (a->top == 0) return (0); + ret = 0; + w &= BN_MASK2; + for (i = a->top-1; i >= 0; i--) { + BN_ULONG l, d; + + l = a->d[i]; + d = bn_div_words(ret, l, w); + ret = (l-((d*w)&BN_MASK2))&BN_MASK2; + a->d[i] = d; + } + if ((a->top > 0) && (a->d[a->top-1] == 0)) + a->top--; + return (ret); +} +#endif /* NOT_NEEDED_FOR_DH */ + +int +BN_add_word(BIGNUM *a, BN_ULONG w) +{ + BN_ULONG l; + int i; + + if (a->neg) { + a->neg = 0; + i = BN_sub_word(a, w); + if (!BN_is_zero(a)) + a->neg = !(a->neg); + return (i); + } + w &= BN_MASK2; + if (bn_wexpand(a, a->top+1) == NULL) return (0); + i = 0; + for (;;) { + if (i >= a->top) + l = w; + else + l = (a->d[i]+(BN_ULONG)w)&BN_MASK2; + a->d[i] = l; + if (w > l) + w = 1; + else + break; + i++; + } + if (i >= a->top) + a->top++; + return (1); +} + +int +BN_sub_word(BIGNUM *a, BN_ULONG w) +{ + int i; + + if (BN_is_zero(a) || a->neg) { + a->neg = 0; + i = BN_add_word(a, w); + a->neg = 1; + return (i); + } + + w &= BN_MASK2; + if ((a->top == 1) && (a->d[0] < w)) { + a->d[0] = w-a->d[0]; + a->neg = 1; + return (1); + } + i = 0; + for (;;) { + if (a->d[i] >= w) { + a->d[i] -= w; + break; + } else { + a->d[i] = (a->d[i]-w)&BN_MASK2; + i++; + w = 1; + } + } + if ((a->d[i] == 0) && (i == (a->top-1))) + a->top--; + return (1); +} + +int +BN_mul_word(BIGNUM *a, BN_ULONG w) +{ + BN_ULONG ll; + + w &= BN_MASK2; + if (a->top) { + if (w == 0) + BN_zero(a); + else { + ll = bn_mul_words(a->d, a->d, a->top, w); + if (ll) { + if (bn_wexpand(a, a->top+1) == NULL) return (0); + a->d[a->top++] = ll; + } + } + } + return (1); +} + +#ifdef BCMDH_TEST +/* The quick sieve algorithm approach to weeding out primes is + * Philip Zimmermann's, as implemented in PGP. I have had a read of + * his comments and implemented my own version. + */ + +#ifndef EIGHT_BIT +#define NUMPRIMES 2048 +#else +#define NUMPRIMES 54 +#endif +static const unsigned int primes[NUMPRIMES] = +{ + 2, 3, 5, 7, 11, 13, 17, 19, + 23, 29, 31, 37, 41, 43, 47, 53, + 59, 61, 67, 71, 73, 79, 83, 89, + 97, 101, 103, 107, 109, 113, 127, 131, + 137, 139, 149, 151, 157, 163, 167, 173, + 179, 181, 191, 193, 197, 199, 211, 223, + 227, 229, 233, 239, 241, 251, +#ifndef EIGHT_BIT + 257, 263, + 269, 271, 277, 281, 283, 293, 307, 311, + 313, 317, 331, 337, 347, 349, 353, 359, + 367, 373, 379, 383, 389, 397, 401, 409, + 419, 421, 431, 433, 439, 443, 449, 457, + 461, 463, 467, 479, 487, 491, 499, 503, + 509, 521, 523, 541, 547, 557, 563, 569, + 571, 577, 587, 593, 599, 601, 607, 613, + 617, 619, 631, 641, 643, 647, 653, 659, + 661, 673, 677, 683, 691, 701, 709, 719, + 727, 733, 739, 743, 751, 757, 761, 769, + 773, 787, 797, 809, 811, 821, 823, 827, + 829, 839, 853, 857, 859, 863, 877, 881, + 883, 887, 907, 911, 919, 929, 937, 941, + 947, 953, 967, 971, 977, 983, 991, 997, + 1009, 1013, 1019, 1021, 1031, 1033, 1039, 1049, + 1051, 1061, 1063, 1069, 1087, 1091, 1093, 1097, + 1103, 1109, 1117, 1123, 1129, 1151, 1153, 1163, + 1171, 1181, 1187, 1193, 1201, 1213, 1217, 1223, + 1229, 1231, 1237, 1249, 1259, 1277, 1279, 1283, + 1289, 1291, 1297, 1301, 1303, 1307, 1319, 1321, + 1327, 1361, 1367, 1373, 1381, 1399, 1409, 1423, + 1427, 1429, 1433, 1439, 1447, 1451, 1453, 1459, + 1471, 1481, 1483, 1487, 1489, 1493, 1499, 1511, + 1523, 1531, 1543, 1549, 1553, 1559, 1567, 1571, + 1579, 1583, 1597, 1601, 1607, 1609, 1613, 1619, + 1621, 1627, 1637, 1657, 1663, 1667, 1669, 1693, + 1697, 1699, 1709, 1721, 1723, 1733, 1741, 1747, + 1753, 1759, 1777, 1783, 1787, 1789, 1801, 1811, + 1823, 1831, 1847, 1861, 1867, 1871, 1873, 1877, + 1879, 1889, 1901, 1907, 1913, 1931, 1933, 1949, + 1951, 1973, 1979, 1987, 1993, 1997, 1999, 2003, + 2011, 2017, 2027, 2029, 2039, 2053, 2063, 2069, + 2081, 2083, 2087, 2089, 2099, 2111, 2113, 2129, + 2131, 2137, 2141, 2143, 2153, 2161, 2179, 2203, + 2207, 2213, 2221, 2237, 2239, 2243, 2251, 2267, + 2269, 2273, 2281, 2287, 2293, 2297, 2309, 2311, + 2333, 2339, 2341, 2347, 2351, 2357, 2371, 2377, + 2381, 2383, 2389, 2393, 2399, 2411, 2417, 2423, + 2437, 2441, 2447, 2459, 2467, 2473, 2477, 2503, + 2521, 2531, 2539, 2543, 2549, 2551, 2557, 2579, + 2591, 2593, 2609, 2617, 2621, 2633, 2647, 2657, + 2659, 2663, 2671, 2677, 2683, 2687, 2689, 2693, + 2699, 2707, 2711, 2713, 2719, 2729, 2731, 2741, + 2749, 2753, 2767, 2777, 2789, 2791, 2797, 2801, + 2803, 2819, 2833, 2837, 2843, 2851, 2857, 2861, + 2879, 2887, 2897, 2903, 2909, 2917, 2927, 2939, + 2953, 2957, 2963, 2969, 2971, 2999, 3001, 3011, + 3019, 3023, 3037, 3041, 3049, 3061, 3067, 3079, + 3083, 3089, 3109, 3119, 3121, 3137, 3163, 3167, + 3169, 3181, 3187, 3191, 3203, 3209, 3217, 3221, + 3229, 3251, 3253, 3257, 3259, 3271, 3299, 3301, + 3307, 3313, 3319, 3323, 3329, 3331, 3343, 3347, + 3359, 3361, 3371, 3373, 3389, 3391, 3407, 3413, + 3433, 3449, 3457, 3461, 3463, 3467, 3469, 3491, + 3499, 3511, 3517, 3527, 3529, 3533, 3539, 3541, + 3547, 3557, 3559, 3571, 3581, 3583, 3593, 3607, + 3613, 3617, 3623, 3631, 3637, 3643, 3659, 3671, + 3673, 3677, 3691, 3697, 3701, 3709, 3719, 3727, + 3733, 3739, 3761, 3767, 3769, 3779, 3793, 3797, + 3803, 3821, 3823, 3833, 3847, 3851, 3853, 3863, + 3877, 3881, 3889, 3907, 3911, 3917, 3919, 3923, + 3929, 3931, 3943, 3947, 3967, 3989, 4001, 4003, + 4007, 4013, 4019, 4021, 4027, 4049, 4051, 4057, + 4073, 4079, 4091, 4093, 4099, 4111, 4127, 4129, + 4133, 4139, 4153, 4157, 4159, 4177, 4201, 4211, + 4217, 4219, 4229, 4231, 4241, 4243, 4253, 4259, + 4261, 4271, 4273, 4283, 4289, 4297, 4327, 4337, + 4339, 4349, 4357, 4363, 4373, 4391, 4397, 4409, + 4421, 4423, 4441, 4447, 4451, 4457, 4463, 4481, + 4483, 4493, 4507, 4513, 4517, 4519, 4523, 4547, + 4549, 4561, 4567, 4583, 4591, 4597, 4603, 4621, + 4637, 4639, 4643, 4649, 4651, 4657, 4663, 4673, + 4679, 4691, 4703, 4721, 4723, 4729, 4733, 4751, + 4759, 4783, 4787, 4789, 4793, 4799, 4801, 4813, + 4817, 4831, 4861, 4871, 4877, 4889, 4903, 4909, + 4919, 4931, 4933, 4937, 4943, 4951, 4957, 4967, + 4969, 4973, 4987, 4993, 4999, 5003, 5009, 5011, + 5021, 5023, 5039, 5051, 5059, 5077, 5081, 5087, + 5099, 5101, 5107, 5113, 5119, 5147, 5153, 5167, + 5171, 5179, 5189, 5197, 5209, 5227, 5231, 5233, + 5237, 5261, 5273, 5279, 5281, 5297, 5303, 5309, + 5323, 5333, 5347, 5351, 5381, 5387, 5393, 5399, + 5407, 5413, 5417, 5419, 5431, 5437, 5441, 5443, + 5449, 5471, 5477, 5479, 5483, 5501, 5503, 5507, + 5519, 5521, 5527, 5531, 5557, 5563, 5569, 5573, + 5581, 5591, 5623, 5639, 5641, 5647, 5651, 5653, + 5657, 5659, 5669, 5683, 5689, 5693, 5701, 5711, + 5717, 5737, 5741, 5743, 5749, 5779, 5783, 5791, + 5801, 5807, 5813, 5821, 5827, 5839, 5843, 5849, + 5851, 5857, 5861, 5867, 5869, 5879, 5881, 5897, + 5903, 5923, 5927, 5939, 5953, 5981, 5987, 6007, + 6011, 6029, 6037, 6043, 6047, 6053, 6067, 6073, + 6079, 6089, 6091, 6101, 6113, 6121, 6131, 6133, + 6143, 6151, 6163, 6173, 6197, 6199, 6203, 6211, + 6217, 6221, 6229, 6247, 6257, 6263, 6269, 6271, + 6277, 6287, 6299, 6301, 6311, 6317, 6323, 6329, + 6337, 6343, 6353, 6359, 6361, 6367, 6373, 6379, + 6389, 6397, 6421, 6427, 6449, 6451, 6469, 6473, + 6481, 6491, 6521, 6529, 6547, 6551, 6553, 6563, + 6569, 6571, 6577, 6581, 6599, 6607, 6619, 6637, + 6653, 6659, 6661, 6673, 6679, 6689, 6691, 6701, + 6703, 6709, 6719, 6733, 6737, 6761, 6763, 6779, + 6781, 6791, 6793, 6803, 6823, 6827, 6829, 6833, + 6841, 6857, 6863, 6869, 6871, 6883, 6899, 6907, + 6911, 6917, 6947, 6949, 6959, 6961, 6967, 6971, + 6977, 6983, 6991, 6997, 7001, 7013, 7019, 7027, + 7039, 7043, 7057, 7069, 7079, 7103, 7109, 7121, + 7127, 7129, 7151, 7159, 7177, 7187, 7193, 7207, + 7211, 7213, 7219, 7229, 7237, 7243, 7247, 7253, + 7283, 7297, 7307, 7309, 7321, 7331, 7333, 7349, + 7351, 7369, 7393, 7411, 7417, 7433, 7451, 7457, + 7459, 7477, 7481, 7487, 7489, 7499, 7507, 7517, + 7523, 7529, 7537, 7541, 7547, 7549, 7559, 7561, + 7573, 7577, 7583, 7589, 7591, 7603, 7607, 7621, + 7639, 7643, 7649, 7669, 7673, 7681, 7687, 7691, + 7699, 7703, 7717, 7723, 7727, 7741, 7753, 7757, + 7759, 7789, 7793, 7817, 7823, 7829, 7841, 7853, + 7867, 7873, 7877, 7879, 7883, 7901, 7907, 7919, + 7927, 7933, 7937, 7949, 7951, 7963, 7993, 8009, + 8011, 8017, 8039, 8053, 8059, 8069, 8081, 8087, + 8089, 8093, 8101, 8111, 8117, 8123, 8147, 8161, + 8167, 8171, 8179, 8191, 8209, 8219, 8221, 8231, + 8233, 8237, 8243, 8263, 8269, 8273, 8287, 8291, + 8293, 8297, 8311, 8317, 8329, 8353, 8363, 8369, + 8377, 8387, 8389, 8419, 8423, 8429, 8431, 8443, + 8447, 8461, 8467, 8501, 8513, 8521, 8527, 8537, + 8539, 8543, 8563, 8573, 8581, 8597, 8599, 8609, + 8623, 8627, 8629, 8641, 8647, 8663, 8669, 8677, + 8681, 8689, 8693, 8699, 8707, 8713, 8719, 8731, + 8737, 8741, 8747, 8753, 8761, 8779, 8783, 8803, + 8807, 8819, 8821, 8831, 8837, 8839, 8849, 8861, + 8863, 8867, 8887, 8893, 8923, 8929, 8933, 8941, + 8951, 8963, 8969, 8971, 8999, 9001, 9007, 9011, + 9013, 9029, 9041, 9043, 9049, 9059, 9067, 9091, + 9103, 9109, 9127, 9133, 9137, 9151, 9157, 9161, + 9173, 9181, 9187, 9199, 9203, 9209, 9221, 9227, + 9239, 9241, 9257, 9277, 9281, 9283, 9293, 9311, + 9319, 9323, 9337, 9341, 9343, 9349, 9371, 9377, + 9391, 9397, 9403, 9413, 9419, 9421, 9431, 9433, + 9437, 9439, 9461, 9463, 9467, 9473, 9479, 9491, + 9497, 9511, 9521, 9533, 9539, 9547, 9551, 9587, + 9601, 9613, 9619, 9623, 9629, 9631, 9643, 9649, + 9661, 9677, 9679, 9689, 9697, 9719, 9721, 9733, + 9739, 9743, 9749, 9767, 9769, 9781, 9787, 9791, + 9803, 9811, 9817, 9829, 9833, 9839, 9851, 9857, + 9859, 9871, 9883, 9887, 9901, 9907, 9923, 9929, + 9931, 9941, 9949, 9967, 9973, 10007, 10009, 10037, + 10039, 10061, 10067, 10069, 10079, 10091, 10093, 10099, + 10103, 10111, 10133, 10139, 10141, 10151, 10159, 10163, + 10169, 10177, 10181, 10193, 10211, 10223, 10243, 10247, + 10253, 10259, 10267, 10271, 10273, 10289, 10301, 10303, + 10313, 10321, 10331, 10333, 10337, 10343, 10357, 10369, + 10391, 10399, 10427, 10429, 10433, 10453, 10457, 10459, + 10463, 10477, 10487, 10499, 10501, 10513, 10529, 10531, + 10559, 10567, 10589, 10597, 10601, 10607, 10613, 10627, + 10631, 10639, 10651, 10657, 10663, 10667, 10687, 10691, + 10709, 10711, 10723, 10729, 10733, 10739, 10753, 10771, + 10781, 10789, 10799, 10831, 10837, 10847, 10853, 10859, + 10861, 10867, 10883, 10889, 10891, 10903, 10909, 10937, + 10939, 10949, 10957, 10973, 10979, 10987, 10993, 11003, + 11027, 11047, 11057, 11059, 11069, 11071, 11083, 11087, + 11093, 11113, 11117, 11119, 11131, 11149, 11159, 11161, + 11171, 11173, 11177, 11197, 11213, 11239, 11243, 11251, + 11257, 11261, 11273, 11279, 11287, 11299, 11311, 11317, + 11321, 11329, 11351, 11353, 11369, 11383, 11393, 11399, + 11411, 11423, 11437, 11443, 11447, 11467, 11471, 11483, + 11489, 11491, 11497, 11503, 11519, 11527, 11549, 11551, + 11579, 11587, 11593, 11597, 11617, 11621, 11633, 11657, + 11677, 11681, 11689, 11699, 11701, 11717, 11719, 11731, + 11743, 11777, 11779, 11783, 11789, 11801, 11807, 11813, + 11821, 11827, 11831, 11833, 11839, 11863, 11867, 11887, + 11897, 11903, 11909, 11923, 11927, 11933, 11939, 11941, + 11953, 11959, 11969, 11971, 11981, 11987, 12007, 12011, + 12037, 12041, 12043, 12049, 12071, 12073, 12097, 12101, + 12107, 12109, 12113, 12119, 12143, 12149, 12157, 12161, + 12163, 12197, 12203, 12211, 12227, 12239, 12241, 12251, + 12253, 12263, 12269, 12277, 12281, 12289, 12301, 12323, + 12329, 12343, 12347, 12373, 12377, 12379, 12391, 12401, + 12409, 12413, 12421, 12433, 12437, 12451, 12457, 12473, + 12479, 12487, 12491, 12497, 12503, 12511, 12517, 12527, + 12539, 12541, 12547, 12553, 12569, 12577, 12583, 12589, + 12601, 12611, 12613, 12619, 12637, 12641, 12647, 12653, + 12659, 12671, 12689, 12697, 12703, 12713, 12721, 12739, + 12743, 12757, 12763, 12781, 12791, 12799, 12809, 12821, + 12823, 12829, 12841, 12853, 12889, 12893, 12899, 12907, + 12911, 12917, 12919, 12923, 12941, 12953, 12959, 12967, + 12973, 12979, 12983, 13001, 13003, 13007, 13009, 13033, + 13037, 13043, 13049, 13063, 13093, 13099, 13103, 13109, + 13121, 13127, 13147, 13151, 13159, 13163, 13171, 13177, + 13183, 13187, 13217, 13219, 13229, 13241, 13249, 13259, + 13267, 13291, 13297, 13309, 13313, 13327, 13331, 13337, + 13339, 13367, 13381, 13397, 13399, 13411, 13417, 13421, + 13441, 13451, 13457, 13463, 13469, 13477, 13487, 13499, + 13513, 13523, 13537, 13553, 13567, 13577, 13591, 13597, + 13613, 13619, 13627, 13633, 13649, 13669, 13679, 13681, + 13687, 13691, 13693, 13697, 13709, 13711, 13721, 13723, + 13729, 13751, 13757, 13759, 13763, 13781, 13789, 13799, + 13807, 13829, 13831, 13841, 13859, 13873, 13877, 13879, + 13883, 13901, 13903, 13907, 13913, 13921, 13931, 13933, + 13963, 13967, 13997, 13999, 14009, 14011, 14029, 14033, + 14051, 14057, 14071, 14081, 14083, 14087, 14107, 14143, + 14149, 14153, 14159, 14173, 14177, 14197, 14207, 14221, + 14243, 14249, 14251, 14281, 14293, 14303, 14321, 14323, + 14327, 14341, 14347, 14369, 14387, 14389, 14401, 14407, + 14411, 14419, 14423, 14431, 14437, 14447, 14449, 14461, + 14479, 14489, 14503, 14519, 14533, 14537, 14543, 14549, + 14551, 14557, 14561, 14563, 14591, 14593, 14621, 14627, + 14629, 14633, 14639, 14653, 14657, 14669, 14683, 14699, + 14713, 14717, 14723, 14731, 14737, 14741, 14747, 14753, + 14759, 14767, 14771, 14779, 14783, 14797, 14813, 14821, + 14827, 14831, 14843, 14851, 14867, 14869, 14879, 14887, + 14891, 14897, 14923, 14929, 14939, 14947, 14951, 14957, + 14969, 14983, 15013, 15017, 15031, 15053, 15061, 15073, + 15077, 15083, 15091, 15101, 15107, 15121, 15131, 15137, + 15139, 15149, 15161, 15173, 15187, 15193, 15199, 15217, + 15227, 15233, 15241, 15259, 15263, 15269, 15271, 15277, + 15287, 15289, 15299, 15307, 15313, 15319, 15329, 15331, + 15349, 15359, 15361, 15373, 15377, 15383, 15391, 15401, + 15413, 15427, 15439, 15443, 15451, 15461, 15467, 15473, + 15493, 15497, 15511, 15527, 15541, 15551, 15559, 15569, + 15581, 15583, 15601, 15607, 15619, 15629, 15641, 15643, + 15647, 15649, 15661, 15667, 15671, 15679, 15683, 15727, + 15731, 15733, 15737, 15739, 15749, 15761, 15767, 15773, + 15787, 15791, 15797, 15803, 15809, 15817, 15823, 15859, + 15877, 15881, 15887, 15889, 15901, 15907, 15913, 15919, + 15923, 15937, 15959, 15971, 15973, 15991, 16001, 16007, + 16033, 16057, 16061, 16063, 16067, 16069, 16073, 16087, + 16091, 16097, 16103, 16111, 16127, 16139, 16141, 16183, + 16187, 16189, 16193, 16217, 16223, 16229, 16231, 16249, + 16253, 16267, 16273, 16301, 16319, 16333, 16339, 16349, + 16361, 16363, 16369, 16381, 16411, 16417, 16421, 16427, + 16433, 16447, 16451, 16453, 16477, 16481, 16487, 16493, + 16519, 16529, 16547, 16553, 16561, 16567, 16573, 16603, + 16607, 16619, 16631, 16633, 16649, 16651, 16657, 16661, + 16673, 16691, 16693, 16699, 16703, 16729, 16741, 16747, + 16759, 16763, 16787, 16811, 16823, 16829, 16831, 16843, + 16871, 16879, 16883, 16889, 16901, 16903, 16921, 16927, + 16931, 16937, 16943, 16963, 16979, 16981, 16987, 16993, + 17011, 17021, 17027, 17029, 17033, 17041, 17047, 17053, + 17077, 17093, 17099, 17107, 17117, 17123, 17137, 17159, + 17167, 17183, 17189, 17191, 17203, 17207, 17209, 17231, + 17239, 17257, 17291, 17293, 17299, 17317, 17321, 17327, + 17333, 17341, 17351, 17359, 17377, 17383, 17387, 17389, + 17393, 17401, 17417, 17419, 17431, 17443, 17449, 17467, + 17471, 17477, 17483, 17489, 17491, 17497, 17509, 17519, + 17539, 17551, 17569, 17573, 17579, 17581, 17597, 17599, + 17609, 17623, 17627, 17657, 17659, 17669, 17681, 17683, + 17707, 17713, 17729, 17737, 17747, 17749, 17761, 17783, + 17789, 17791, 17807, 17827, 17837, 17839, 17851, 17863 +#endif /* !EIGHT_BIT */ +}; + +static int witness(BIGNUM *w, const BIGNUM *a, const BIGNUM *a1, + const BIGNUM *a1_odd, int k, BN_CTX *ctx, BN_MONT_CTX *mont); +static int probable_prime(BIGNUM *rnd, int bits); +static int probable_prime_dh(BIGNUM *rnd, int bits, + const BIGNUM *add, const BIGNUM *rem, BN_CTX *ctx); +static int probable_prime_dh_safe(BIGNUM *rnd, int bits, + const BIGNUM *add, const BIGNUM *rem, BN_CTX *ctx); + +BIGNUM * +BN_generate_prime(BIGNUM *ret, int bits, int safe, const BIGNUM *add, const BIGNUM *rem, + void (*callback)(int, int, void *), void *cb_arg) +{ + BIGNUM *rnd = NULL; + BIGNUM t; + int found = 0; + int i, j, c1 = 0; + BN_CTX *ctx; + int checks = BN_prime_checks_for_size(bits); + + BN_init(&t); + ctx = BN_CTX_new(); + if (ctx == NULL) goto err; + if (ret == NULL) { + if ((rnd = BN_new()) == NULL) goto err; + } else + rnd = ret; +loop: + /* make a random number and set the top and bottom bits */ + if (add == NULL) { + if (!probable_prime(rnd, bits)) goto err; + } else { + if (safe) { + if (!probable_prime_dh_safe(rnd, bits, add, rem, ctx)) + goto err; + } else { + if (!probable_prime_dh(rnd, bits, add, rem, ctx)) + goto err; + } + } + /* if (BN_mod_word(rnd, (BN_ULONG)3) == 1) goto loop; */ + if (callback != NULL) + callback(0, c1++, cb_arg); + + if (!safe) { + i = BN_is_prime_fasttest(rnd, checks, callback, ctx, cb_arg, 0); + if (i == -1) goto err; + if (i == 0) goto loop; + } else { + /* for "safe prime" generation, + * check that (p-1)/2 is prime. + * Since a prime is odd, We just + * need to divide by 2 + */ + if (!BN_rshift1(&t, rnd)) goto err; + + for (i = 0; i < checks; i++) { + j = BN_is_prime_fasttest(rnd, 1, callback, ctx, cb_arg, 0); + if (j == -1) goto err; + if (j == 0) goto loop; + + j = BN_is_prime_fasttest(&t, 1, callback, ctx, cb_arg, 0); + if (j == -1) goto err; + if (j == 0) goto loop; + + if (callback != NULL) callback(2, c1-1, cb_arg); + /* We have a safe prime test pass */ + } + } + /* we have a prime :-) */ + found = 1; +err: + if (!found && (ret == NULL) && (rnd != NULL)) BN_free(rnd); + BN_free(&t); + if (ctx != NULL) BN_CTX_free(ctx); + return (found ? rnd : NULL); +} + +int +BN_is_prime(const BIGNUM *a, int checks, void (*callback)(int, int, void *), + BN_CTX *ctx_passed, void *cb_arg) +{ + return BN_is_prime_fasttest(a, checks, callback, ctx_passed, cb_arg, 0); +} + +int +BN_is_prime_fasttest(const BIGNUM *a, int checks, void (*callback)(int, int, void *), + BN_CTX *ctx_passed, void *cb_arg, int do_trial_division) +{ + int i, j, ret = -1; + int k; + BN_CTX *ctx = NULL; + BIGNUM *A1, *A1_odd, *check; /* taken from ctx */ + BN_MONT_CTX *mont = NULL; + const BIGNUM *A = NULL; + + if (BN_cmp(a, BN_value_one()) <= 0) + return 0; + + if (checks == BN_prime_checks) + checks = BN_prime_checks_for_size(BN_num_bits(a)); + + /* first look for small factors */ + if (!BN_is_odd(a)) + return 0; + if (do_trial_division) { + for (i = 1; i < NUMPRIMES; i++) + if (BN_mod_word(a, primes[i]) == 0) + return 0; + if (callback != NULL) + callback(1, -1, cb_arg); + } + + if (ctx_passed != NULL) + ctx = ctx_passed; + else + if ((ctx = BN_CTX_new()) == NULL) + goto err; + BN_CTX_start(ctx); + + /* A : = abs(a) */ + if (a->neg) { + BIGNUM *t; + if ((t = BN_CTX_get(ctx)) == NULL) goto err; + BN_copy(t, a); + t->neg = 0; + A = t; + } else + A = a; + A1 = BN_CTX_get(ctx); + A1_odd = BN_CTX_get(ctx); + check = BN_CTX_get(ctx); + if (check == NULL) goto err; + + /* compute A1 : = A - 1 */ + if (!BN_copy(A1, A)) + goto err; + if (!BN_sub_word(A1, 1)) + goto err; + if (BN_is_zero(A1)) { + ret = 0; + goto err; + } + + /* write A1 as A1_odd * 2^k */ + k = 1; + while (!BN_is_bit_set(A1, k)) + k++; + if (!BN_rshift(A1_odd, A1, k)) + goto err; + + /* Montgomery setup for computations mod A */ + mont = BN_MONT_CTX_new(); + if (mont == NULL) + goto err; + if (!BN_MONT_CTX_set(mont, A, ctx)) + goto err; + + for (i = 0; i < checks; i++) { + if (!BN_pseudo_rand_range(check, A1)) + goto err; + if (!BN_add_word(check, 1)) + goto err; + /* now 1 <= check < A */ + + j = witness(check, A, A1, A1_odd, k, ctx, mont); + if (j == -1) goto err; + if (j) { + ret = 0; + goto err; + } + if (callback != NULL) + callback(1, i, cb_arg); + } + ret = 1; +err: + if (ctx != NULL) { + BN_CTX_end(ctx); + if (ctx_passed == NULL) + BN_CTX_free(ctx); + } + if (mont != NULL) + BN_MONT_CTX_free(mont); + + return (ret); +} + +static int +witness(BIGNUM *w, const BIGNUM *a, const BIGNUM *a1, + const BIGNUM *a1_odd, int k, BN_CTX *ctx, BN_MONT_CTX *mont) +{ + if (!BN_mod_exp_mont(w, w, a1_odd, a, ctx, mont)) /* w : = w^a1_odd mod a */ + return -1; + if (BN_is_one(w)) + return 0; /* probably prime */ + if (BN_cmp(w, a1) == 0) + return 0; /* w == -1 (mod a), 'a' is probably prime */ + while (--k) { + if (!BN_mod_mul(w, w, w, a, ctx)) /* w : = w^2 mod a */ + return -1; + if (BN_is_one(w)) + return 1; /* 'a' is composite, otherwise a previous 'w' would + * have been == -1 (mod 'a') + */ + if (BN_cmp(w, a1) == 0) + return 0; /* w == -1 (mod a), 'a' is probably prime */ + } + /* If we get here, 'w' is the (a-1)/2-th power of the original 'w', + * and it is neither -1 nor +1 -- so 'a' cannot be prime + */ + return 1; +} + +static int +probable_prime(BIGNUM *rnd, int bits) +{ + int i; + BN_ULONG mods[NUMPRIMES]; + BN_ULONG delta, d; + +again: + if (!BN_rand(rnd, bits, 1, 1)) return (0); + /* we now have a random number 'rand' to test. */ + for (i = 1; i < NUMPRIMES; i++) + mods[i] = BN_mod_word(rnd, (BN_ULONG)primes[i]); + delta = 0; +loop: + for (i = 1; i < NUMPRIMES; i++) { + /* check that rnd is not a prime and also + * that gcd(rnd-1, primes) == 1 (except for 2) + */ + if (((mods[i]+delta)%primes[i]) <= 1) { + d = delta; + delta += 2; + /* perhaps need to check for overflow of + * delta (but delta can be up to 2^32) + * 21-May-98 eay - added overflow check + */ + if (delta < d) goto again; + goto loop; + } + } + if (!BN_add_word(rnd, delta)) return (0); + return (1); +} + +static int +probable_prime_dh(BIGNUM *rnd, int bits, const BIGNUM *add, const BIGNUM *rem, BN_CTX *ctx) +{ + int i, ret = 0; + BIGNUM *t1; + + BN_CTX_start(ctx); + if ((t1 = BN_CTX_get(ctx)) == NULL) goto err; + + if (!BN_rand(rnd, bits, 0, 1)) + goto err; + + /* we need ((rnd-rem) % add) == 0 */ + + if (!BN_mod(t1, rnd, add, ctx)) + goto err; + if (!BN_sub(rnd, rnd, t1)) + goto err; + if (rem == NULL) { + if (!BN_add_word(rnd, 1)) + goto err; + } else { + if (!BN_add(rnd, rnd, rem)) + goto err; + } + + /* we now have a random number 'rand' to test. */ + + loop: for (i = 1; i < NUMPRIMES; i++) { + /* check that rnd is a prime */ + if (BN_mod_word(rnd, (BN_ULONG)primes[i]) <= 1) { + if (!BN_add(rnd, rnd, add)) goto err; + goto loop; + } + } + ret = 1; +err: + BN_CTX_end(ctx); + return (ret); +} + +static int +probable_prime_dh_safe(BIGNUM *p, int bits, const BIGNUM *padd, const BIGNUM *rem, BN_CTX *ctx) +{ + int i, ret = 0; + BIGNUM *t1, *qadd, *q; + + bits--; + BN_CTX_start(ctx); + t1 = BN_CTX_get(ctx); + q = BN_CTX_get(ctx); + qadd = BN_CTX_get(ctx); + if (qadd == NULL) goto err; + + if (!BN_rshift1(qadd, padd)) goto err; + + if (!BN_rand(q, bits, 0, 1)) goto err; + + /* we need ((rnd-rem) % add) == 0 */ + if (!BN_mod(t1, q, qadd, ctx)) goto err; + if (!BN_sub(q, q, t1)) goto err; + if (rem == NULL) { + if (!BN_add_word(q, 1)) goto err; + } else { + if (!BN_rshift1(t1, rem)) goto err; + if (!BN_add(q, q, t1)) goto err; + } + + /* we now have a random number 'rand' to test. */ + if (!BN_lshift1(p, q)) goto err; + if (!BN_add_word(p, 1)) goto err; + +loop: + for (i = 1; i < NUMPRIMES; i++) { + /* check that p and q are prime */ + /* check that for p and q + * gcd(p-1, primes) == 1 (except for 2) + */ + if ((BN_mod_word(p, (BN_ULONG)primes[i]) == 0) || + (BN_mod_word(q, (BN_ULONG)primes[i]) == 0)) { + if (!BN_add(p, p, padd)) goto err; + if (!BN_add(q, q, qadd)) goto err; + goto loop; + } + } + ret = 1; +err: + BN_CTX_end(ctx); + return (ret); +} +#endif /* BCMDH_TEST */ diff --git a/release/src-rt/bcmcrypto/bn_lcl.h b/release/src-rt/bcmcrypto/bn_lcl.h new file mode 100755 index 0000000000..56c8f51203 --- /dev/null +++ b/release/src-rt/bcmcrypto/bn_lcl.h @@ -0,0 +1,451 @@ +/* + * bn_lcl.h: Big Number local header file. + * + * Code copied from openssl distribution and + * Modified just enough so that compiles and runs standalone + * + * Copyright (C) 2010, Broadcom Corporation. All Rights Reserved. + * + * Permission to use, copy, modify, and/or distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY + * SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION + * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN + * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + * + * $Id: bn_lcl.h,v 1.3 2006-06-15 10:09:43 Exp $ + */ +/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) + * All rights reserved. + * + * This package is an SSL implementation written + * by Eric Young (eay@cryptsoft.com). + * The implementation was written so as to conform with Netscapes SSL. + * + * This library is free for commercial and non-commercial use as long as + * the following conditions are aheared to. The following conditions + * apply to all code found in this distribution, be it the RC4, RSA, + * lhash, DES, etc., code; not just the SSL code. The SSL documentation + * included with this distribution is covered by the same copyright terms + * except that the holder is Tim Hudson (tjh@cryptsoft.com). + * + * Copyright remains Eric Young's, and as such any Copyright notices in + * the code are not to be removed. + * If this package is used in a product, Eric Young should be given attribution + * as the author of the parts of the library used. + * This can be in the form of a textual message at program startup or + * in documentation (online or textual) provided with the package. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * "This product includes cryptographic software written by + * Eric Young (eay@cryptsoft.com)" + * The word 'cryptographic' can be left out if the rouines from the library + * being used are not cryptographic related :-). + * 4. If you include any Windows specific code (or a derivative thereof) from + * the apps directory (application code) you must include an acknowledgement: + * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" + * + * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * The licence and distribution terms for any publically available version or + * derivative of this code cannot be changed. i.e. this code cannot simply be + * copied and put under another distribution licence + * [including the GNU Public Licence.] + */ +/* ==================================================================== + * Copyright (c) 1998-2000 The OpenSSL Project. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * + * 3. All advertising materials mentioning features or use of this + * software must display the following acknowledgment: + * "This product includes software developed by the OpenSSL Project + * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" + * + * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + * endorse or promote products derived from this software without + * prior written permission. For written permission, please contact + * openssl-core@openssl.org. + * + * 5. Products derived from this software may not be called "OpenSSL" + * nor may "OpenSSL" appear in their names without prior written + * permission of the OpenSSL Project. + * + * 6. Redistributions of any form whatsoever must retain the following + * acknowledgment: + * "This product includes software developed by the OpenSSL Project + * for use in the OpenSSL Toolkit (http://www.openssl.org/)" + * + * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY + * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR + * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * ==================================================================== + * + * This product includes cryptographic software written by Eric Young + * (eay@cryptsoft.com). This product includes software written by Tim + * Hudson (tjh@cryptsoft.com). + * + */ + +#ifndef HEADER_BN_LCL_H +#define HEADER_BN_LCL_H + +#ifdef __cplusplus +extern "C" { +#endif + + +/* Used for temp variables */ +#define BN_CTX_NUM 32 +#define BN_CTX_NUM_POS 12 +struct bignum_ctx + { + int tos; + BIGNUM bn[BN_CTX_NUM]; + int flags; + int depth; + int pos[BN_CTX_NUM_POS]; + int too_many; + } /* BN_CTX */; + + +/* + * BN_window_bits_for_exponent_size -- macro for sliding window mod_exp functions + * + * + * For window size 'w' (w >= 2) and a random 'b' bits exponent, + * the number of multiplications is a constant plus on average + * + * 2^(w-1) + (b-w)/(w+1); + * + * here 2^(w-1) is for precomputing the table (we actually need + * entries only for windows that have the lowest bit set), and + * (b-w)/(w+1) is an approximation for the expected number of + * w-bit windows, not counting the first one. + * + * Thus we should use + * + * w >= 6 if b > 671 + * w = 5 if 671 > b > 239 + * w = 4 if 239 > b > 79 + * w = 3 if 79 > b > 23 + * w <= 2 if 23 > b + * + * (with draws in between). Very small exponents are often selected + * with low Hamming weight, so we use w = 1 for b <= 23. + */ +#define BN_window_bits_for_exponent_size(b) \ + ((b) > 671 ? 6 : \ + (b) > 239 ? 5 : \ + (b) > 79 ? 4 : \ + (b) > 23 ? 3 : 1) + + +/* Pentium pro 16, 16, 16, 32, 64 */ +/* Alpha 16, 16, 16, 16.64 */ +#define BN_MULL_SIZE_NORMAL (16) /* 32 */ +#define BN_MUL_RECURSIVE_SIZE_NORMAL (16) /* 32 less than */ +#define BN_SQR_RECURSIVE_SIZE_NORMAL (16) /* 32 */ +#define BN_MUL_LOW_RECURSIVE_SIZE_NORMAL (32) /* 32 */ +#define BN_MONT_CTX_SET_SIZE_WORD (64) /* 32 */ + +#if !defined(OPENSSL_NO_ASM) && !defined(OPENSSL_NO_INLINE_ASM) && !defined(PEDANTIC) +/* + * BN_UMULT_HIGH section. + * + * No, I'm not trying to overwhelm you when stating that the + * product of N-bit numbers is 2*N bits wide:-) No, I don't expect + * you to be impressed when I say that if the compiler doesn't + * support 2*N integer type, then you have to replace every N*N + * multiplication with 4 (N/2)*(N/2) accompanied by some shifts + * and additions which unavoidably results in severe performance + * penalties. Of course provided that the hardware is capable of + * producing 2*N result... That's when you normally start + * considering assembler implementation. However! It should be + * pointed out that some CPUs (most notably Alpha, PowerPC and + * upcoming IA-64 family:-) provide *separate* instruction + * calculating the upper half of the product placing the result + * into a general purpose register. Now *if* the compiler supports + * inline assembler, then it's not impossible to implement the + * "bignum" routines (and have the compiler optimize 'em) + * exhibiting "native" performance in C. That's what BN_UMULT_HIGH + * macro is about:-) + * + * + */ +# if defined(__alpha) && (defined(SIXTY_FOUR_BIT_LONG) || defined(SIXTY_FOUR_BIT)) +# if defined(__DECC) +# include +# define BN_UMULT_HIGH(a, b) (BN_ULONG)asm("umulh %a0, %a1, %v0", (a), (b)) +# elif defined(__GNUC__) +# define BN_UMULT_HIGH(a, b) ({ \ + register BN_ULONG ret; \ + asm("umulh %1, %2, %0" \ + : "=r"(ret) \ + : "r"(a), "r"(b)); \ + ret; }) +# endif /* compiler */ +# elif defined(_ARCH_PPC) && defined(__64BIT__) && defined(SIXTY_FOUR_BIT_LONG) +# if defined(__GNUC__) +# define BN_UMULT_HIGH(a, b) ({ \ + register BN_ULONG ret; \ + asm("mulhdu %0, %1, %2" \ + : "=r"(ret) \ + : "r"(a), "r"(b)); \ + ret; }) +# endif /* compiler */ +# elif defined(__x86_64) && defined(SIXTY_FOUR_BIT_LONG) +# if defined(__GNUC__) +# define BN_UMULT_HIGH(a, b) ({ \ + register BN_ULONG ret, discard; \ + asm("mulq %3" \ + : "=a"(discard), "=d"(ret) \ + : "a"(a), "g"(b) \ + : "cc"); \ + ret; }) +# define BN_UMULT_LOHI(low, high, a, b) \ + asm("mulq %3" \ + : "=a"(low), "=d"(high) \ + : "a"(a), "g"(b) \ + : "cc"); +# endif +# endif /* cpu */ +#endif /* OPENSSL_NO_ASM */ + +/************************************************************* + * Using the long long type + */ +#define Lw(t) (((BN_ULONG)(t))&BN_MASK2) +#define Hw(t) (((BN_ULONG)((t)>>BN_BITS2))&BN_MASK2) + +/* This is used for internal error checking and is not normally used */ +#ifdef BN_DEBUG +# include +# define bn_check_top(a) assert ((a)->top >= 0 && (a)->top <= (a)->dmax); +#else +# define bn_check_top(a) +#endif + +/* This macro is to add extra stuff for development checking */ +#ifdef BN_DEBUG +#define bn_set_max(r) ((r)->max = (r)->top, BN_set_flags((r), BN_FLG_STATIC_DATA)) +#else +#define bn_set_max(r) +#endif + +/* These macros are used to 'take' a section of a bignum for read only use */ +#define bn_set_low(r, a, n) { \ + (r)->top = ((a)->top > (n))?(n):(a)->top; \ + (r)->d = (a)->d; \ + (r)->neg = (a)->neg; \ + (r)->flags |= BN_FLG_STATIC_DATA; \ + bn_set_max(r); \ +} + +#define bn_set_high(r, a, n) { \ + if ((a)->top > (n)) { \ + (r)->top = (a)->top-n; \ + (r)->d = &((a)->d[n]); \ + } else \ + (r)->top = 0; \ + (r)->neg = (a)->neg; \ + (r)->flags |= BN_FLG_STATIC_DATA; \ + bn_set_max(r); \ +} + +#ifdef BN_LLONG +#define mul_add(r, a, w, c) { \ + BN_ULLONG t; \ + t = (BN_ULLONG)w * (a) + (r) + (c); \ + (r) = Lw(t); \ + (c) = Hw(t); \ +} + +#define mul(r, a, w, c) { \ + BN_ULLONG t; \ + t = (BN_ULLONG)w * (a) + (c); \ + (r) = Lw(t); \ + (c) = Hw(t); \ +} + +#define sqr(r0, r1, a) { \ + BN_ULLONG t; \ + t = (BN_ULLONG)(a)*(a); \ + (r0) = Lw(t); \ + (r1) = Hw(t); \ +} + +#elif defined(BN_UMULT_HIGH) +#define mul_add(r, a, w, c) { \ + BN_ULONG high, low, ret, tmp = (a); \ + ret = (r); \ + high = BN_UMULT_HIGH(w, tmp); \ + ret += (c); \ + low = (w) * tmp; \ + (c) = (ret < (c)) ? 1 : 0; \ + (c) += high; \ + ret += low; \ + (c) += (ret < low) ? 1 : 0; \ + (r) = ret; \ +} + +#define mul(r, a, w, c) { \ + BN_ULONG high, low, ret, ta = (a); \ + low = (w) * ta; \ + high = BN_UMULT_HIGH(w, ta); \ + ret = low + (c); \ + (c) = high; \ + (c) += (ret < low) ? 1 : 0; \ + (r) = ret; \ +} + +#define sqr(r0, r1, a) { \ + BN_ULONG tmp = (a); \ + (r0) = tmp * tmp; \ + (r1) = BN_UMULT_HIGH(tmp, tmp); \ +} + +#else +/* No long long type */ + +#define LBITS(a) ((a) & BN_MASK2l) +#define HBITS(a) (((a) >> BN_BITS4) & BN_MASK2l) +#define L2HBITS(a) (((a) << BN_BITS4) & BN_MASK2) + +#define LLBITS(a) ((a) & BN_MASKl) +#define LHBITS(a) (((a) >> BN_BITS2) & BN_MASKl) +#define LL2HBITS(a) ((BN_ULLONG)((a) & BN_MASKl) << BN_BITS2) + +#define mul64(l, h, bl, bh) { \ + BN_ULONG m, m1, lt, ht; \ + lt = l; \ + ht = h; \ + m = (bh) * (lt); \ + lt = (bl) * (lt); \ + m1 = (bl) * (ht); \ + ht = (bh) * (ht); \ + m = (m + m1) & BN_MASK2; \ + if (m < m1) \ + ht += L2HBITS((BN_ULONG)1); \ + ht += HBITS(m); \ + m1 = L2HBITS(m); \ + lt = (lt + m1) & BN_MASK2; \ + if (lt < m1) \ + ht++; \ + (l) = lt; \ + (h) = ht; \ +} + +#define sqr64(lo, ho, in) { \ + BN_ULONG l, h, m; \ + h = (in); \ + l = LBITS(h); \ + h = HBITS(h); \ + m = (l) * (h); \ + l *= l; \ + h *= h; \ + h += (m & BN_MASK2h1) >> (BN_BITS4 - 1); \ + m = (m & BN_MASK2l) << (BN_BITS4 + 1); \ + l = (l + m) & BN_MASK2; \ + if (l < m) \ + h++; \ + (lo) = l; \ + (ho) = h; \ +} + +#define mul_add(r, a, bl, bh, c) { \ + BN_ULONG l, h; \ + h = (a); \ + l = LBITS(h); \ + h = HBITS(h); \ + mul64(l, h, (bl), (bh)); \ + /* non-multiply part */ \ + l = (l + (c)) & BN_MASK2; \ + if (l < (c)) \ + h++; \ + (c) = (r); \ + l = (l + (c)) & BN_MASK2; \ + if (l < (c)) \ + h++; \ + (c) = h & BN_MASK2; \ + (r) = l; \ +} + +#define mul(r, a, bl, bh, c) { \ + BN_ULONG l, h; \ + h = (a); \ + l = LBITS(h); \ + h = HBITS(h); \ + mul64(l, h, (bl), (bh)); \ + /* non-multiply part */ \ + l += (c); \ + if ((l & BN_MASK2) < (c)) \ + h++; \ + (c) = h & BN_MASK2; \ + (r) = l & BN_MASK2; \ +} +#endif /* !BN_LLONG */ + +void bn_mul_normal(BN_ULONG *r, BN_ULONG *a, int na, BN_ULONG *b, int nb); +void bn_mul_comba8(BN_ULONG *r, BN_ULONG *a, BN_ULONG *b); +void bn_mul_comba4(BN_ULONG *r, BN_ULONG *a, BN_ULONG *b); +void bn_sqr_normal(BN_ULONG *r, const BN_ULONG *a, int n, BN_ULONG *tmp); +void bn_sqr_comba8(BN_ULONG *r, const BN_ULONG *a); +void bn_sqr_comba4(BN_ULONG *r, const BN_ULONG *a); +int bn_cmp_words(const BN_ULONG *a, const BN_ULONG *b, int n); +int bn_cmp_part_words(const BN_ULONG *a, const BN_ULONG *b, int cl, int dl); +void bn_sqr_recursive(BN_ULONG *r, const BN_ULONG *a, int n2, BN_ULONG *t); +void bn_mul_low_normal(BN_ULONG *r, BN_ULONG *a, BN_ULONG *b, int n); +void bn_mul_low_recursive(BN_ULONG *r, BN_ULONG *a, BN_ULONG *b, int n2, + BN_ULONG *t); +void bn_mul_high(BN_ULONG *r, BN_ULONG *a, BN_ULONG *b, BN_ULONG *l, int n2, + BN_ULONG *t); + +#ifdef __cplusplus +} +#endif + +#endif /* HEADER_BN_LCL_H */ diff --git a/release/src-rt/et/linux/.dummy b/release/src-rt/bcmcrypto/ccx.c old mode 100644 new mode 100755 similarity index 100% rename from release/src-rt/et/linux/.dummy rename to release/src-rt/bcmcrypto/ccx.c diff --git a/release/src-rt/bcmcrypto/ccx.ref b/release/src-rt/bcmcrypto/ccx.ref new file mode 100755 index 0000000000..1c33a4e450 --- /dev/null +++ b/release/src-rt/bcmcrypto/ccx.ref @@ -0,0 +1,171 @@ +#ifdef BCMCCX +==== 802.11 packet (encrypted) ==== +08 41 02 01 00 40 96 21 DC 83 00 40 96 28 8D DC FF FF FF FF FF FF A0 38 00 01 15 00 EB B1 C7 6A B1 96 B2 16 58 C4 04 5E 2D 6A F3 4B 92 EB FC FC ED 70 98 D0 64 6C 5E BB 1A DD D4 2A 26 2A 8B EF C2 41 67 75 9D FB FE 5D 4E CA A0 45 6D 7C 36 22 22 7D D0 BD 09 16 1D E6 41 D9 94 BE 9B 53 C5 CB +==== CK (basic CKIP key) ==== +19 59 8D F5 EF 19 59 8D F5 EF 19 59 8D F5 EF 19 +==== PK (permuted key) ==== +00 01 15 E6 8B D6 03 23 0B 6A 60 B9 F4 EB 46 99 +==== 802.11 packet decrypted ==== +08 41 02 01 00 40 96 21 DC 83 00 40 96 28 8D DC FF FF FF FF FF FF A0 38 00 01 15 00 AA AA 03 00 40 96 00 02 2F F1 C0 A6 00 00 00 C0 08 06 00 01 08 00 06 04 00 01 00 40 96 28 8D DC A1 2C EE 03 00 00 00 00 00 00 A1 2C EE 14 21 BD D8 23 21 BD A8 AC 52 E1 01 00 00 00 28 AC 0F 82 46 86 F9 D9 +==== Original MSDU ==== +DA: FF FF FF FF FF FF +SA: 00 40 96 28 8D DC +Payload: 08 06 00 01 08 00 06 04 00 01 00 40 96 28 8D DC A1 2C EE 03 00 00 00 00 00 00 A1 2C EE 14 21 BD D8 23 21 BD A8 AC 52 E1 01 00 00 00 28 AC 0F 82 +================================================================ +==== 802.11 packet (encrypted) ==== +08 42 00 00 FF FF FF FF FF FF 00 40 96 21 DC 83 00 40 96 28 8D DC 60 2C 00 00 62 00 46 65 A8 0F 86 59 F8 57 8E 51 D5 A5 D6 FE D1 40 2A 0E 28 E1 DA AE 2C 90 45 05 7B F1 00 FD AD ED 8F 09 F3 86 81 6B 24 BE 31 36 CA 54 29 54 AA 61 1C 7D C9 F4 89 EA 71 FF 55 03 7F 8A CC 48 77 01 CA 0F 89 2C +==== CK (basic CKIP key) ==== +12 34 56 78 90 12 34 56 78 90 12 34 56 78 90 12 +==== PK (permuted key) ==== +00 00 62 00 9E 5C 91 78 08 9C 36 DE 8F 3B 5F 65 +==== 802.11 packet decrypted ==== +08 42 00 00 FF FF FF FF FF FF 00 40 96 21 DC 83 00 40 96 28 8D DC 60 2C 00 00 62 00 AA AA 03 00 40 96 00 02 73 34 88 C1 00 00 00 AF 08 06 00 01 08 00 06 04 00 01 00 40 96 28 8D DC A1 2C EE 03 00 00 00 00 00 00 A1 2C EE 14 21 BD D8 23 21 BD A8 AC 52 E1 01 00 00 00 28 AC 0F 82 B4 DE 39 20 +==== Original MSDU ==== +DA: FF FF FF FF FF FF +SA: 00 40 96 28 8D DC +Payload: 08 06 00 01 08 00 06 04 00 01 00 40 96 28 8D DC A1 2C EE 03 00 00 00 00 00 00 A1 2C EE 14 21 BD D8 23 21 BD A8 AC 52 E1 01 00 00 00 28 AC 0F 82 +================================================================ +==== 802.11 packet (encrypted) ==== +08 42 D5 00 00 40 96 28 8D DC 00 40 96 21 DC 83 00 40 96 12 CE 40 70 2C 00 00 63 C0 FF 46 41 BB 38 5F C1 06 32 3F 27 B5 5B 2E 49 EB B7 11 AC AA B5 50 07 0F 6D 41 86 F3 06 A8 8F 84 DF 54 72 1F D3 21 EF 38 77 72 A9 4B 70 4F 02 4C 15 D5 89 3A 45 08 D4 F4 0B C7 F5 E8 DE 73 FE 5A E9 58 93 C0 +==== CK (basic CKIP key) ==== +19 59 8D F5 EF 19 59 8D F5 EF 19 59 8D F5 EF 19 +==== PK (permuted key) ==== +00 00 63 93 42 80 56 4E C0 8E BD 8A 37 F8 52 87 +==== 802.11 packet decrypted ==== +08 42 D5 00 00 40 96 28 8D DC 00 40 96 21 DC 83 00 40 96 12 CE 40 70 2C 00 00 63 C0 AA AA 03 00 40 96 00 02 A6 97 2C 66 00 00 00 41 08 06 00 01 08 00 06 04 00 02 00 40 96 12 CE 40 A1 2C EE 14 00 40 96 28 8D DC A1 2C EE 03 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 B0 4E DB EA +==== Original MSDU ==== +DA: 00 40 96 28 8D DC +SA: 00 40 96 12 CE 40 +Payload: 08 06 00 01 08 00 06 04 00 02 00 40 96 12 CE 40 A1 2C EE 14 00 40 96 28 8D DC A1 2C EE 03 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +================================================================ +==== 802.11 packet (encrypted) ==== +08 41 02 01 00 40 96 21 DC 83 00 40 96 28 8D DC 00 40 96 12 CE 40 B0 38 00 01 16 00 5A 29 07 E8 B3 EE 6C BD CA 57 79 7E 24 45 C4 E7 0D D7 82 D0 8E 24 3D B9 60 BC E2 1C D4 59 9F FF A6 F1 60 62 F4 B8 22 BB 5D DA A0 0B 7D 7C 28 9F 11 03 8C 2C AD 84 BA 31 09 F6 B0 F4 5A 5C A4 77 6D B8 0C 1B 6A 7A B4 F8 53 C0 8C 21 7A AF 6D A3 8E 08 1F 7E 43 15 EB AC 26 04 +==== CK (basic CKIP key) ==== +19 59 8D F5 EF 19 59 8D F5 EF 19 59 8D F5 EF 19 +==== PK (permuted key) ==== +00 01 16 C2 09 BC 35 3C 7E A0 42 8F 3C C0 39 B1 +==== 802.11 packet decrypted ==== +08 41 02 01 00 40 96 21 DC 83 00 40 96 28 8D DC 00 40 96 12 CE 40 B0 38 00 01 16 00 AA AA 03 00 40 96 00 02 43 FC D0 96 00 00 00 C2 08 00 45 00 00 44 45 6D 00 00 80 01 D6 DA A1 2C EE 03 A1 2C EE 14 08 00 28 A2 06 00 69 00 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 67 5A D5 7F +==== Original MSDU ==== +DA: 00 40 96 12 CE 40 +SA: 00 40 96 28 8D DC +Payload: 08 00 45 00 00 44 45 6D 00 00 80 01 D6 DA A1 2C EE 03 A1 2C EE 14 08 00 28 A2 06 00 69 00 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 +================================================================ +==== 802.11 packet (encrypted) ==== +08 42 D5 00 00 40 96 28 8D DC 00 40 96 21 DC 83 00 40 96 12 CE 40 80 2C 00 00 64 C0 3D D2 7E B5 8B 76 63 BE AD AA BA 8B D7 7D 29 63 FC 49 4F 48 FC 3F 86 75 33 2B 52 6F 78 81 63 67 BE FE 89 EE D8 16 99 FB A3 0A 8D 1E A0 68 B0 FF 7A FE 21 D2 1D 14 CC 24 74 A3 C1 7E 04 C9 C0 D0 C2 26 25 D8 5B 2C 6C 42 E3 25 10 35 85 97 02 10 B6 D2 9B FC 6B 0F 95 C7 4C DB +==== CK (basic CKIP key) ==== +19 59 8D F5 EF 19 59 8D F5 EF 19 59 8D F5 EF 19 +==== PK (permuted key) ==== +00 00 64 86 D0 75 6D A7 39 E8 33 D1 BB BA 9C 4B +==== 802.11 packet decrypted ==== +08 42 D5 00 00 40 96 28 8D DC 00 40 96 21 DC 83 00 40 96 12 CE 40 80 2C 00 00 64 C0 AA AA 03 00 40 96 00 02 7D FB 95 B2 00 00 00 43 08 00 45 00 00 44 00 08 00 00 80 01 1C 40 A1 2C EE 14 A1 2C EE 03 00 00 30 A2 06 00 69 00 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 96 00 88 09 +==== Original MSDU ==== +DA: 00 40 96 28 8D DC +SA: 00 40 96 12 CE 40 +Payload: 08 00 45 00 00 44 00 08 00 00 80 01 1C 40 A1 2C EE 14 A1 2C EE 03 00 00 30 A2 06 00 69 00 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 +================================================================ +==== 802.11 packet (encrypted) ==== +08 41 02 01 00 40 96 21 DC 83 00 40 96 28 8D DC 00 40 96 12 CE 40 C0 38 00 01 17 00 EB 87 DA 4A 03 77 92 B5 E6 B7 66 F6 9B 21 22 45 80 ED 42 E9 A0 3E 18 46 1F 1F 4B 32 D0 E4 60 9E 0F 31 83 0C 64 13 B1 C3 D8 35 C3 2B 32 67 24 40 F2 0B 08 8A 43 E2 93 82 6B C2 8B 4C 83 FA 61 4C 1E D3 7B F9 0A 8A 6F C9 D8 A9 D8 06 5C 90 18 4A CC A9 F9 53 1A F7 90 57 8B 84 3A +==== CK (basic CKIP key) ==== +19 59 8D F5 EF 19 59 8D F5 EF 19 59 8D F5 EF 19 +==== PK (permuted key) ==== +00 01 17 EB BC 6E B5 1B EF 55 A7 1A DD D8 44 4D +==== 802.11 packet decrypted ==== +08 41 02 01 00 40 96 21 DC 83 00 40 96 28 8D DC 00 40 96 12 CE 40 C0 38 00 01 17 00 AA AA 03 00 40 96 00 02 8D 47 6D B7 00 00 00 C4 08 00 45 00 00 45 45 6E 00 00 80 01 D6 D8 A1 2C EE 03 A1 2C EE 14 08 00 B5 A1 06 00 6A 00 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 5E 17 97 C2 +==== Original MSDU ==== +DA: 00 40 96 12 CE 40 +SA: 00 40 96 28 8D DC +Payload: 08 00 45 00 00 45 45 6E 00 00 80 01 D6 D8 A1 2C EE 03 A1 2C EE 14 08 00 B5 A1 06 00 6A 00 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 +================================================================ +==== 802.11 packet (encrypted) ==== +08 42 D5 00 00 40 96 28 8D DC 00 40 96 21 DC 83 00 40 96 12 CE 40 F0 2E 00 00 65 C0 43 8F AC C7 F2 78 AF 25 73 09 6C DF E8 51 D0 D8 64 51 0D D1 44 4F E8 15 1F 87 AE A2 FC 2E 45 AB 0F 88 87 6A B6 E2 FF C7 8B 41 C3 80 9A 61 85 13 3A 99 1E AF FF DB 96 07 6E D1 30 70 E0 10 81 A0 02 A4 16 FC 46 17 A1 C9 BF 17 4B 5E 7B 94 6B 09 8F 0B 8A EE 56 BF 6C 79 D5 A0 19 +==== CK (basic CKIP key) ==== +19 59 8D F5 EF 19 59 8D F5 EF 19 59 8D F5 EF 19 +==== PK (permuted key) ==== +00 00 65 66 21 F2 41 13 D3 78 07 9D 04 F7 A9 D9 +==== 802.11 packet decrypted ==== +08 42 D5 00 00 40 96 28 8D DC 00 40 96 21 DC 83 00 40 96 12 CE 40 F0 2E 00 00 65 C0 AA AA 03 00 40 96 00 02 C7 46 32 D3 00 00 00 45 08 00 45 00 00 45 00 09 00 00 80 01 1C 3E A1 2C EE 14 A1 2C EE 03 00 00 BD A1 06 00 6A 00 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 A2 55 9D C8 +==== Original MSDU ==== +DA: 00 40 96 28 8D DC +SA: 00 40 96 12 CE 40 +Payload: 08 00 45 00 00 45 00 09 00 00 80 01 1C 3E A1 2C EE 14 A1 2C EE 03 00 00 BD A1 06 00 6A 00 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 +================================================================ +==== 802.11 packet (encrypted) ==== +08 41 02 01 00 40 96 21 DC 83 00 40 96 28 8D DC 00 40 96 12 CE 40 D0 38 00 01 18 00 EB 88 BD CE 5D 37 D5 AD 0A 99 49 56 E2 59 4E BB 14 C0 15 0E C0 48 FD CC 0F A8 2A 3D F0 3F BF AE CD B9 53 26 9B 43 44 76 40 B2 CC DA 90 16 D0 1B 65 C2 41 2F C0 07 95 41 00 94 32 14 DD 74 BA D8 D6 A5 39 0B F5 50 0C A5 95 DB 7C D3 AB F4 F4 36 B7 E9 8C F5 0F FA F1 6A B6 62 14 6C +==== CK (basic CKIP key) ==== +19 59 8D F5 EF 19 59 8D F5 EF 19 59 8D F5 EF 19 +==== PK (permuted key) ==== +00 01 18 6C 44 FB 99 8F 7D 96 84 E0 66 89 A6 E1 +==== 802.11 packet decrypted ==== +08 41 02 01 00 40 96 21 DC 83 00 40 96 28 8D DC 00 40 96 12 CE 40 D0 38 00 01 18 00 AA AA 03 00 40 96 00 02 BC C2 23 5E 00 00 00 C6 08 00 45 00 00 46 45 6F 00 00 80 01 D6 D6 A1 2C EE 03 A1 2C EE 14 08 00 B4 2E 06 00 6B 00 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 68 4C FC 9F +==== Original MSDU ==== +DA: 00 40 96 12 CE 40 +SA: 00 40 96 28 8D DC +Payload: 08 00 45 00 00 46 45 6F 00 00 80 01 D6 D6 A1 2C EE 03 A1 2C EE 14 08 00 B4 2E 06 00 6B 00 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 +================================================================ +==== 802.11 packet (encrypted) ==== +08 42 D5 00 00 40 96 28 8D DC 00 40 96 21 DC 83 00 40 96 12 CE 40 F0 2F 00 00 66 C0 C3 05 B8 5F 71 12 85 8E 89 4D 59 E0 62 5A F3 7A 77 3F 11 6E C2 9F 66 C3 2B 49 01 22 7F 61 CF 29 58 22 9D 50 CC 34 D0 56 B7 0E 98 E4 4A 47 1D D6 34 0B A7 0E 96 94 F0 39 CF 2E EF E3 63 57 D5 5D BA D0 59 DE 53 C3 9B 8A 5C 6B 1F A4 6F 35 A0 2C 61 7A 1D B9 B4 C2 29 31 F1 BA C8 BA +==== CK (basic CKIP key) ==== +19 59 8D F5 EF 19 59 8D F5 EF 19 59 8D F5 EF 19 +==== PK (permuted key) ==== +00 00 66 DF BF A5 46 6C 7C DC A4 61 B1 D5 94 E6 +==== 802.11 packet decrypted ==== +08 42 D5 00 00 40 96 28 8D DC 00 40 96 21 DC 83 00 40 96 12 CE 40 F0 2F 00 00 66 C0 AA AA 03 00 40 96 00 02 F6 C0 E8 7A 00 00 00 47 08 00 45 00 00 46 00 0A 00 00 80 01 1C 3C A1 2C EE 14 A1 2C EE 03 00 00 BC 2E 06 00 6B 00 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 01 72 E9 9B +==== Original MSDU ==== +DA: 00 40 96 28 8D DC +SA: 00 40 96 12 CE 40 +Payload: 08 00 45 00 00 46 00 0A 00 00 80 01 1C 3C A1 2C EE 14 A1 2C EE 03 00 00 BC 2E 06 00 6B 00 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 +================================================================ +==== 802.11 packet (encrypted) ==== +08 41 02 01 00 40 96 21 DC 83 00 40 96 28 8D DC 00 40 96 12 CE 40 E0 38 00 01 19 00 F6 FF DA 8C 66 09 9F FD 7D 87 D8 AB 17 D6 30 32 C8 C0 0A 2B B5 85 CE 3E D1 EB AE A2 93 0E 43 D7 28 DB 86 5B 80 88 36 9F 7C 8D 01 6E 2A 58 5F CD E1 1C E4 D8 E8 92 43 22 DE F6 CA BA 48 C6 25 15 CB C5 2F FE 5B 90 C0 DE 54 C4 7D 4D DA 34 28 A2 DE 09 AD F3 A9 B8 64 2E 8C C8 CC A7 E1 +==== CK (basic CKIP key) ==== +19 59 8D F5 EF 19 59 8D F5 EF 19 59 8D F5 EF 19 +==== PK (permuted key) ==== +00 01 19 C4 B0 7E CA C9 D4 51 19 F2 F1 30 6C 2E +==== 802.11 packet decrypted ==== +08 41 02 01 00 40 96 21 DC 83 00 40 96 28 8D DC 00 40 96 12 CE 40 E0 38 00 01 19 00 AA AA 03 00 40 96 00 02 D6 0A 50 C0 00 00 00 C8 08 00 45 00 00 47 45 70 00 00 80 01 D6 D4 A1 2C EE 03 A1 2C EE 14 08 00 3F 2E 06 00 6C 00 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 17 59 B2 64 +==== Original MSDU ==== +DA: 00 40 96 12 CE 40 +SA: 00 40 96 28 8D DC +Payload: 08 00 45 00 00 47 45 70 00 00 80 01 D6 D4 A1 2C EE 03 A1 2C EE 14 08 00 3F 2E 06 00 6C 00 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 +================================================================ +==== 802.11 packet (encrypted) ==== +08 42 D5 00 00 40 96 28 8D DC 00 40 96 21 DC 83 00 40 96 12 CE 40 C0 30 00 00 67 C0 65 8D 3A 72 0D 34 3B 88 5E C7 37 64 69 77 C4 07 B3 B1 A5 40 56 DE 8E E8 AE 5B 5C 1C D7 39 31 17 27 7E 3D 0C 41 8E 2E 88 EF 45 5E C1 19 64 D5 B3 C4 71 C1 1F 9B 05 68 D9 4B 4F B5 D3 4A A0 D6 69 A7 F3 E4 E2 83 FC EA 0A 60 3B D0 3E A5 62 D2 6D DB B1 F3 66 A3 24 E7 7D 5D DF 72 7C 33 +==== CK (basic CKIP key) ==== +19 59 8D F5 EF 19 59 8D F5 EF 19 59 8D F5 EF 19 +==== PK (permuted key) ==== +00 00 67 D5 7B 95 4D EF 5F BB 89 35 BF D9 0A B8 +==== 802.11 packet decrypted ==== +08 42 D5 00 00 40 96 28 8D DC 00 40 96 21 DC 83 00 40 96 12 CE 40 C0 30 00 00 67 C0 AA AA 03 00 40 96 00 02 10 09 15 CD 00 00 00 49 08 00 45 00 00 47 00 0B 00 00 80 01 1C 3A A1 2C EE 14 A1 2C EE 03 00 00 47 2E 06 00 6C 00 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 D8 A6 10 22 +==== Original MSDU ==== +DA: 00 40 96 28 8D DC +SA: 00 40 96 12 CE 40 +Payload: 08 00 45 00 00 47 00 0B 00 00 80 01 1C 3A A1 2C EE 14 A1 2C EE 03 00 00 47 2E 06 00 6C 00 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 +================================================================ +==== 802.11 packet (encrypted) ==== +08 41 02 01 00 40 96 21 DC 83 00 40 96 28 8D DC 00 40 96 12 CE 40 F0 38 00 01 1A 00 22 76 C2 12 82 07 BF 14 A2 E8 38 F4 F4 8A 96 E8 46 DF 7E B8 44 67 51 50 27 D1 EE 30 D4 97 06 C3 29 B9 B1 0A 7F 3B 20 73 A0 4F D9 44 0A 2C 61 C5 48 25 34 54 EC 8F CE D8 5C 77 3D 71 13 0D 07 52 44 75 18 F5 F4 5C ED 2D 5C 19 9F C8 01 26 80 8D 54 72 1F CF CE F0 BB 73 34 D2 36 3B 51 CD 56 C7 57 39 2D 83 D1 F8 EF 78 8C BD C4 50 82 35 9B B4 17 05 4E 4F A7 4E 78 5F 1C C8 CF 75 95 66 FB 20 21 B9 96 60 EC 47 94 64 C5 17 FD E2 06 E5 AF 2D 25 AA 18 76 80 E2 7F 00 7C CD 42 CA 68 58 4E 74 92 9F 20 2E 24 8F 27 CB 2C 6D 2F 68 C1 F8 85 53 2A C3 E7 EC E2 58 0B A4 E2 1B DA 34 34 30 48 FC 6C 5F 78 5C 39 7C B9 71 E2 E1 3A 7D 84 88 A9 7E FB 43 79 8D B3 FB C0 8A 65 6D C8 F9 F1 C0 B2 81 B3 C8 E8 97 7A 1A 25 9D 7C 8D 29 9F 88 E2 27 18 1B 60 59 A2 C1 2D EB 89 C6 39 CB A6 08 05 78 D7 8D A1 0F BD E7 B8 F0 40 E0 91 AC 17 1C 10 1C 01 78 68 0E 6D 14 E0 35 C4 00 59 B3 94 4E 6D 52 C6 AA C3 9A AA 24 A3 1B 7C 17 91 9E 97 64 94 FB BC 2E 68 1A E4 07 C3 D0 11 EB 6C A6 54 1B 4B 1D 08 5B 1F C1 DB F8 D6 8F A3 EE B4 E4 7F 64 D8 23 4B 24 DF CB 9B 68 BD 3C F9 AF AA B5 06 42 63 60 23 01 67 0A 2A 3B 4A A1 54 BE AE AD 60 5B BD 54 8E 70 37 2B F6 AD FB 49 99 0B 12 0F C1 B2 F9 2E C8 CB C4 1E E8 45 08 50 62 61 3A BE 7F 2F CE 49 BA 00 B9 A4 26 85 B3 4D F9 69 05 42 F5 76 4D 63 FD 1E BA 03 A8 7C 01 86 DE F6 EF D3 E9 5F 35 1F 77 48 82 8E DF B9 62 51 BC D0 05 DF 80 43 8F E0 C8 D0 4A 30 41 5C 27 28 A4 20 6B 9B 6B 30 AA 68 06 A8 E2 B3 56 4A 9C AA B7 E3 CD E0 94 F9 26 20 E7 6E F2 21 9A AE BD C8 B1 23 3B EA AC 68 F9 63 83 11 E6 4B 21 4A 05 3B 15 F0 AB A4 D6 94 46 65 E9 23 14 6E C4 2C E0 58 0F 54 C5 57 BF 66 10 AA 1B 83 F6 51 E4 E2 7D D5 55 C4 F3 F0 E3 57 27 36 FD C0 B9 36 F5 A9 38 0B CB 98 D1 70 38 4C C0 BF FB 17 E0 94 74 AE B5 F9 60 24 D7 4B BF 30 F1 AA BC C9 03 46 B9 C1 F0 1E 4A 4C 91 5D 9F C9 6F 94 6D FC 63 EC A9 3B 1B D5 62 6F C1 59 68 22 35 67 57 BF 9D C3 9D 44 60 4E EA 52 DE 38 FD EB 94 3C D5 6A 63 20 8E 90 C1 89 63 CF 47 5F 5A C0 A9 98 E0 6C 87 91 A8 88 38 56 03 36 31 82 92 0F 94 EC 95 A0 0F 50 F3 40 E0 A7 42 CA 4D B7 1B AE B4 E9 90 A6 47 BF 28 09 06 F0 C6 93 D0 A2 B9 26 8C 11 DB F8 8C 6A BD D6 A4 E2 61 5C 01 CB 72 1C 8A 58 FB 1D C3 F0 15 5B 3D 82 CE DB 34 00 7B 65 72 AB 04 D6 B8 90 CC 64 CC 28 66 D8 98 96 39 85 24 43 D1 98 2A 4F C2 FB CB 09 81 6F 9E 8D 53 D4 03 E6 BF 2A +==== CK (basic CKIP key) ==== +19 59 8D F5 EF 19 59 8D F5 EF 19 59 8D F5 EF 19 +==== PK (permuted key) ==== +00 01 1A 2A B0 CA 25 2B 0C B7 03 22 E4 CD BA B0 +==== 802.11 packet decrypted ==== +08 41 02 01 00 40 96 21 DC 83 00 40 96 28 8D DC 00 40 96 12 CE 40 F0 38 00 01 1A 00 AA AA 03 00 40 96 00 02 EF C0 38 BA 00 00 00 CA 08 00 45 00 02 DB 45 71 00 00 80 01 D4 3F A1 2C EE 03 A1 2C EE 14 08 00 93 74 06 00 6D 00 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D DD 5B 7F 71 +==== Original MSDU ==== +DA: 00 40 96 12 CE 40 +SA: 00 40 96 28 8D DC +Payload: 08 00 45 00 02 DB 45 71 00 00 80 01 D4 3F A1 2C EE 03 A1 2C EE 14 08 00 93 74 06 00 6D 00 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D +================================================================ +==== 802.11 packet (encrypted) ==== +08 42 D5 00 00 40 96 28 8D DC 00 40 96 21 DC 83 00 40 96 12 CE 40 A0 31 00 00 68 C0 2C 57 A9 0D 2B FD 8B 58 08 91 FB A0 74 E7 72 32 CE 1C DD AF 3E 65 6A 89 B7 85 A2 48 AD A3 AD 93 90 5B 2E 58 20 55 36 6E 33 D1 EA 64 B4 73 AD EB 0B 8C 03 28 A6 04 7A 11 67 55 A9 E2 80 CF DF 83 21 95 D3 19 B8 05 18 1E 63 F3 4A 72 7B 8F 23 D2 75 6A C1 3D CE 4F 50 55 72 95 B2 E0 D9 63 F8 6B 65 01 1A BF 76 AD 51 FE 81 0A 52 E1 29 3B 6A F8 FC 8A 07 CE 2B 0D 91 4D 59 36 38 4C 31 04 8F 9C E0 CA E5 80 9E E0 37 4E A2 FE 3D 56 74 BB D7 98 17 0C 9C EC 83 6A 90 AC 0C 60 82 4B 3C 0A B0 6B F4 F6 18 88 E0 D5 74 A1 E4 5B EB DE E3 9A 40 62 69 58 A6 9E F3 69 A5 7A EF 27 2C 7A A4 A2 23 FD 0C DC 7B 16 8C 0D 5A CC 3B 34 EB C0 1C B8 9C 2D 38 1E DF ED 48 11 A2 83 6D A9 D0 B4 89 85 58 B8 EA 58 62 EF 0A 45 1E C8 43 59 63 56 6C EF 01 40 13 F2 A0 A3 0B A6 C2 25 F1 96 FD C3 2F 5F 2E 82 13 89 FD 4C E0 88 4A 8D BB 11 C8 48 0C 11 D4 A8 83 3E 77 59 26 44 72 66 B6 CD 6A D7 3B 37 F6 69 20 02 E8 F1 A6 A0 5A FA 70 66 B5 CA 55 2B 40 5A 0E FE 10 28 47 B5 A6 A1 3E 6B 23 1B 59 99 4E 0C E0 B0 0E A9 2C 5C 40 7E 56 F4 D3 2B 63 C2 4C F9 81 22 13 65 C9 F1 64 FC 98 F5 AC 5E 0B CE CA 31 22 2E 50 D8 6C 4C DF F4 82 9F FF 2E 3F 76 E5 33 88 85 E9 3F 9D 75 09 0A C9 54 2F 7B 0A A3 55 DC B1 24 5F DD C6 BC AC BA 3B 38 34 E0 57 A2 25 AA BD 4D 63 C4 65 93 60 9D 99 CC 28 D4 B2 E1 DF 00 7D 23 61 DA E6 6A EE 6B 7E 6C 06 BB FE 41 6F DC 22 F0 83 CA 34 EF 2B 05 DA FF A6 D5 C8 BC 6D 54 76 A2 29 92 FB 67 39 2A DF 81 5C 13 4D 7D 89 ED EF 27 F1 C7 97 07 6F 34 CE D3 AF 88 29 7D FE 08 EE D0 D5 87 51 92 17 28 8A 72 24 A6 75 68 AC C8 A0 B9 3A 38 BB DB D3 83 2C 95 24 6C 5E 31 28 B4 DA 08 38 66 25 E7 77 18 88 A7 53 07 F6 70 77 71 D0 95 0A EA 74 00 0F 13 D0 06 9C 40 68 0C C3 BF AA C7 DF 35 7C B7 05 4D 8B 20 9A 5B 4E 62 71 C3 34 49 56 BB 57 26 B3 3C A0 95 9B C0 32 62 62 5B 22 B9 ED 8C 93 2E A3 0B 24 E6 BF 80 A6 32 7F 1A 3A 8D A8 2A 75 F2 B4 19 3E 68 73 72 4B 20 3A C1 6D 6F B5 17 42 FF 1E B1 E2 29 E8 F1 B7 EE 84 CD 74 2E 3E 1B 81 69 C8 42 F2 C7 1C D9 64 0F 8D A4 2A 98 E9 CE 06 C2 20 A3 B7 7A 15 9C B9 4D 50 F4 25 42 D6 F2 9F 4A 3B 86 C0 47 75 CA EA EF A5 66 4B 5E E2 B4 71 53 5B E6 EE 29 0E E7 25 41 29 2B EE E9 51 96 BC F4 60 3C 4F 4B 16 0B CE 63 31 80 6F 16 9D 13 4D A3 80 D9 5D D3 C7 1A F5 8A DE B9 91 D1 E5 75 04 DE FB 7E ED 30 A8 C6 62 61 E3 BB 6D C6 4A E8 EC 06 6F EE D4 94 08 90 A7 47 55 F0 A2 +==== CK (basic CKIP key) ==== +19 59 8D F5 EF 19 59 8D F5 EF 19 59 8D F5 EF 19 +==== PK (permuted key) ==== +00 00 68 DA 0F 2D E1 15 FE EE BE 77 C9 BF 8E 28 +==== 802.11 packet decrypted ==== +08 42 D5 00 00 40 96 28 8D DC 00 40 96 21 DC 83 00 40 96 12 CE 40 A0 31 00 00 68 C0 AA AA 03 00 40 96 00 02 29 BE FD C7 00 00 00 4B 08 00 45 00 02 DB 00 0C 00 00 80 01 19 A5 A1 2C EE 14 A1 2C EE 03 00 00 9B 74 06 00 6D 00 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D DE C1 6F 1A +==== Original MSDU ==== +DA: 00 40 96 28 8D DC +SA: 00 40 96 12 CE 40 +Payload: 08 00 45 00 02 DB 00 0C 00 00 80 01 19 A5 A1 2C EE 14 A1 2C EE 03 00 00 9B 74 06 00 6D 00 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D +================================================================ +#endif /* BCMCCX */ diff --git a/release/src-rt/bcmcrypto/des.c b/release/src-rt/bcmcrypto/des.c new file mode 100755 index 0000000000..f59233b4c8 --- /dev/null +++ b/release/src-rt/bcmcrypto/des.c @@ -0,0 +1,655 @@ +/* + * DES functions + * Copied from des-ka9q-1.0-portable, a public domain DES implementation, + * and diddled with only enough to compile without warnings and link + * with our driver. + * + * Copyright (C) 2010, Broadcom Corporation + * All Rights Reserved. + * + * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation; + * the contents of this file may not be disclosed to third parties, copied + * or duplicated in any form, in whole or in part, without the prior + * written permission of Broadcom Corporation. + * + * $Id: des.c,v 1.12 2009-10-21 23:12:36 Exp $ + */ + +/* Portable C code to create DES key schedules from user-provided keys + * This doesn't have to be fast unless you're cracking keys or UNIX + * passwords + */ + +#include +#ifdef BCMDRIVER +#include +#else +#include /* for size_t */ +#if defined(__GNUC__) +#include +#else +#include +#define bcopy(src, dst, len) memcpy((dst), (src), (len)) +#define bcmp(b1, b2, len) memcmp((b1), (b2), (len)) +#define bzero(b, len) memset((b), 0, (len)) +#endif /* __GNUC__ */ +#endif /* BCMDRIVER */ +#include + +const unsigned long BCMROMDATA(Spbox)[8][64] = { + { + 0x01010400, 0x00000000, 0x00010000, 0x01010404, + 0x01010004, 0x00010404, 0x00000004, 0x00010000, + 0x00000400, 0x01010400, 0x01010404, 0x00000400, + 0x01000404, 0x01010004, 0x01000000, 0x00000004, + 0x00000404, 0x01000400, 0x01000400, 0x00010400, + 0x00010400, 0x01010000, 0x01010000, 0x01000404, + 0x00010004, 0x01000004, 0x01000004, 0x00010004, + 0x00000000, 0x00000404, 0x00010404, 0x01000000, + 0x00010000, 0x01010404, 0x00000004, 0x01010000, + 0x01010400, 0x01000000, 0x01000000, 0x00000400, + 0x01010004, 0x00010000, 0x00010400, 0x01000004, + 0x00000400, 0x00000004, 0x01000404, 0x00010404, + 0x01010404, 0x00010004, 0x01010000, 0x01000404, + 0x01000004, 0x00000404, 0x00010404, 0x01010400, + 0x00000404, 0x01000400, 0x01000400, 0x00000000, + 0x00010004, 0x00010400, 0x00000000, 0x01010004 + }, + { + 0x80108020, 0x80008000, 0x00008000, 0x00108020, + 0x00100000, 0x00000020, 0x80100020, 0x80008020, + 0x80000020, 0x80108020, 0x80108000, 0x80000000, + 0x80008000, 0x00100000, 0x00000020, 0x80100020, + 0x00108000, 0x00100020, 0x80008020, 0x00000000, + 0x80000000, 0x00008000, 0x00108020, 0x80100000, + 0x00100020, 0x80000020, 0x00000000, 0x00108000, + 0x00008020, 0x80108000, 0x80100000, 0x00008020, + 0x00000000, 0x00108020, 0x80100020, 0x00100000, + 0x80008020, 0x80100000, 0x80108000, 0x00008000, + 0x80100000, 0x80008000, 0x00000020, 0x80108020, + 0x00108020, 0x00000020, 0x00008000, 0x80000000, + 0x00008020, 0x80108000, 0x00100000, 0x80000020, + 0x00100020, 0x80008020, 0x80000020, 0x00100020, + 0x00108000, 0x00000000, 0x80008000, 0x00008020, + 0x80000000, 0x80100020, 0x80108020, 0x00108000 + }, + { + 0x00000208, 0x08020200, 0x00000000, 0x08020008, + 0x08000200, 0x00000000, 0x00020208, 0x08000200, + 0x00020008, 0x08000008, 0x08000008, 0x00020000, + 0x08020208, 0x00020008, 0x08020000, 0x00000208, + 0x08000000, 0x00000008, 0x08020200, 0x00000200, + 0x00020200, 0x08020000, 0x08020008, 0x00020208, + 0x08000208, 0x00020200, 0x00020000, 0x08000208, + 0x00000008, 0x08020208, 0x00000200, 0x08000000, + 0x08020200, 0x08000000, 0x00020008, 0x00000208, + 0x00020000, 0x08020200, 0x08000200, 0x00000000, + 0x00000200, 0x00020008, 0x08020208, 0x08000200, + 0x08000008, 0x00000200, 0x00000000, 0x08020008, + 0x08000208, 0x00020000, 0x08000000, 0x08020208, + 0x00000008, 0x00020208, 0x00020200, 0x08000008, + 0x08020000, 0x08000208, 0x00000208, 0x08020000, + 0x00020208, 0x00000008, 0x08020008, 0x00020200 + }, + { + 0x00802001, 0x00002081, 0x00002081, 0x00000080, + 0x00802080, 0x00800081, 0x00800001, 0x00002001, + 0x00000000, 0x00802000, 0x00802000, 0x00802081, + 0x00000081, 0x00000000, 0x00800080, 0x00800001, + 0x00000001, 0x00002000, 0x00800000, 0x00802001, + 0x00000080, 0x00800000, 0x00002001, 0x00002080, + 0x00800081, 0x00000001, 0x00002080, 0x00800080, + 0x00002000, 0x00802080, 0x00802081, 0x00000081, + 0x00800080, 0x00800001, 0x00802000, 0x00802081, + 0x00000081, 0x00000000, 0x00000000, 0x00802000, + 0x00002080, 0x00800080, 0x00800081, 0x00000001, + 0x00802001, 0x00002081, 0x00002081, 0x00000080, + 0x00802081, 0x00000081, 0x00000001, 0x00002000, + 0x00800001, 0x00002001, 0x00802080, 0x00800081, + 0x00002001, 0x00002080, 0x00800000, 0x00802001, + 0x00000080, 0x00800000, 0x00002000, 0x00802080 + }, + { + 0x00000100, 0x02080100, 0x02080000, 0x42000100, + 0x00080000, 0x00000100, 0x40000000, 0x02080000, + 0x40080100, 0x00080000, 0x02000100, 0x40080100, + 0x42000100, 0x42080000, 0x00080100, 0x40000000, + 0x02000000, 0x40080000, 0x40080000, 0x00000000, + 0x40000100, 0x42080100, 0x42080100, 0x02000100, + 0x42080000, 0x40000100, 0x00000000, 0x42000000, + 0x02080100, 0x02000000, 0x42000000, 0x00080100, + 0x00080000, 0x42000100, 0x00000100, 0x02000000, + 0x40000000, 0x02080000, 0x42000100, 0x40080100, + 0x02000100, 0x40000000, 0x42080000, 0x02080100, + 0x40080100, 0x00000100, 0x02000000, 0x42080000, + 0x42080100, 0x00080100, 0x42000000, 0x42080100, + 0x02080000, 0x00000000, 0x40080000, 0x42000000, + 0x00080100, 0x02000100, 0x40000100, 0x00080000, + 0x00000000, 0x40080000, 0x02080100, 0x40000100 + }, + { + 0x20000010, 0x20400000, 0x00004000, 0x20404010, + 0x20400000, 0x00000010, 0x20404010, 0x00400000, + 0x20004000, 0x00404010, 0x00400000, 0x20000010, + 0x00400010, 0x20004000, 0x20000000, 0x00004010, + 0x00000000, 0x00400010, 0x20004010, 0x00004000, + 0x00404000, 0x20004010, 0x00000010, 0x20400010, + 0x20400010, 0x00000000, 0x00404010, 0x20404000, + 0x00004010, 0x00404000, 0x20404000, 0x20000000, + 0x20004000, 0x00000010, 0x20400010, 0x00404000, + 0x20404010, 0x00400000, 0x00004010, 0x20000010, + 0x00400000, 0x20004000, 0x20000000, 0x00004010, + 0x20000010, 0x20404010, 0x00404000, 0x20400000, + 0x00404010, 0x20404000, 0x00000000, 0x20400010, + 0x00000010, 0x00004000, 0x20400000, 0x00404010, + 0x00004000, 0x00400010, 0x20004010, 0x00000000, + 0x20404000, 0x20000000, 0x00400010, 0x20004010 + }, + { + 0x00200000, 0x04200002, 0x04000802, 0x00000000, + 0x00000800, 0x04000802, 0x00200802, 0x04200800, + 0x04200802, 0x00200000, 0x00000000, 0x04000002, + 0x00000002, 0x04000000, 0x04200002, 0x00000802, + 0x04000800, 0x00200802, 0x00200002, 0x04000800, + 0x04000002, 0x04200000, 0x04200800, 0x00200002, + 0x04200000, 0x00000800, 0x00000802, 0x04200802, + 0x00200800, 0x00000002, 0x04000000, 0x00200800, + 0x04000000, 0x00200800, 0x00200000, 0x04000802, + 0x04000802, 0x04200002, 0x04200002, 0x00000002, + 0x00200002, 0x04000000, 0x04000800, 0x00200000, + 0x04200800, 0x00000802, 0x00200802, 0x04200800, + 0x00000802, 0x04000002, 0x04200802, 0x04200000, + 0x00200800, 0x00000000, 0x00000002, 0x04200802, + 0x00000000, 0x00200802, 0x04200000, 0x00000800, + 0x04000002, 0x04000800, 0x00000800, 0x00200002 + }, + { + 0x10001040, 0x00001000, 0x00040000, 0x10041040, + 0x10000000, 0x10001040, 0x00000040, 0x10000000, + 0x00040040, 0x10040000, 0x10041040, 0x00041000, + 0x10041000, 0x00041040, 0x00001000, 0x00000040, + 0x10040000, 0x10000040, 0x10001000, 0x00001040, + 0x00041000, 0x00040040, 0x10040040, 0x10041000, + 0x00001040, 0x00000000, 0x00000000, 0x10040040, + 0x10000040, 0x10001000, 0x00041040, 0x00040000, + 0x00041040, 0x00040000, 0x10041000, 0x00001000, + 0x00000040, 0x10040040, 0x00001000, 0x00041040, + 0x10001000, 0x00000040, 0x10000040, 0x10040000, + 0x10040040, 0x10000000, 0x00040000, 0x10001040, + 0x00000000, 0x10041040, 0x00040040, 0x10000040, + 0x10040000, 0x10001000, 0x10001040, 0x00000000, + 0x10041040, 0x00041000, 0x00041000, 0x00001040, + 0x00001040, 0x00040040, 0x10000000, 0x10041000 + } +}; + + +/* Key schedule-related tables from FIPS-46 */ + +/* permuted choice table (key) */ +static const unsigned char pc1[] = { + 57, 49, 41, 33, 25, 17, 9, + 01, 58, 50, 42, 34, 26, 18, + 10, 2, 59, 51, 43, 35, 27, + 19, 11, 3, 60, 52, 44, 36, + + 63, 55, 47, 39, 31, 23, 15, + 07, 62, 54, 46, 38, 30, 22, + 14, 6, 61, 53, 45, 37, 29, + 21, 13, 5, 28, 20, 12, 4 +}; + +/* number left rotations of pc1 */ +static const unsigned char totrot[] = { + 1, 2, 4, 6, 8, 10, 12, 14, 15, 17, 19, 21, 23, 25, 27, 28 +}; + +/* permuted choice key (table) */ +static const unsigned char pc2[] = { + 14, 17, 11, 24, 1, 5, + 03, 28, 15, 6, 21, 10, + 23, 19, 12, 4, 26, 8, + 16, 7, 27, 20, 13, 2, + 41, 52, 31, 37, 47, 55, + 30, 40, 51, 45, 33, 48, + 44, 49, 39, 56, 34, 53, + 46, 42, 50, 36, 29, 32 +}; + +/* End of DES-defined tables */ + + +/* int Asmversion = 0; */ +#define Asmversion 0 + +/* bit 0 is left-most in byte */ +static const int bytebit[] = { + 0200, 0100, 040, 020, 010, 04, 02, 01 +}; + + +/* Generate key schedule for encryption or decryption + * depending on the value of "decrypt" + */ +void +BCMROMFN(deskey)(DES_KS k, /* Key schedule array */ + unsigned char *key, /* 64 bits (will use only 56) */ + int decrypt) /* 0 = encrypt, 1 = decrypt */ +{ + unsigned char pc1m[56]; /* place to modify pc1 into */ + unsigned char pcr[56]; /* place to rotate pc1 into */ + register int i, j, l; + int m; + unsigned char ks[8]; + + for (j = 0; j < 56; j++) { /* convert pc1 to bits of key */ + l = pc1[j] - 1; /* integer bit location */ + m = l & 07; /* find bit */ + pc1m[j] = (key[l >> 3] & /* find which key byte l is in */ + bytebit[m]) /* and which bit of that byte */ + ? 1 : 0; /* and store 1-bit result */ + } + for (i = 0; i < 16; i++) { /* key chunk for each iteration */ + bzero(ks, sizeof(ks)); /* Clear key schedule */ + for (j = 0; j < 56; j++) /* rotate pc1 the right amount */ + pcr[j] = pc1m[(l = j + totrot[decrypt ? 15 - i : i]) < + (j < 28 ? 28 : 56) ? l : l - 28]; + /* rotate left and right halves independently */ + for (j = 0; j < 48; j++) { /* select bits individually */ + /* check bit that goes to ks[j] */ + if (pcr[pc2[j] - 1]) { + /* mask it in if it's there */ + l = j % 6; + ks[j/6] |= bytebit[l] >> 2; + } + } + /* Now convert to packed odd/even interleaved form */ + k[i][0] = (((long)ks[0] << 24) | + ((long)ks[2] << 16) | + ((long)ks[4] << 8) | + ((long)ks[6])); + k[i][1] = (((long)ks[1] << 24) | + ((long)ks[3] << 16) | + ((long)ks[5] << 8) | + ((long)ks[7])); + if (Asmversion) { + /* The assembler versions pre-shift each subkey 2 bits + * so the Spbox indexes are already computed + */ + k[i][0] <<= 2; + k[i][1] <<= 2; + } + } +} + +/* Portable C version of des() function */ + +/* Tables defined in the Data Encryption Standard documents + * Three of these tables, the initial permutation, the final + * permutation and the expansion operator, are regular enough that + * for speed, we hard-code them. They're here for reference only. + * Also, the S and P boxes are used by a separate program, gensp.c, + * to build the combined SP box, Spbox[]. They're also here just + * for reference. + */ +#ifdef notdef +/* initial permutation IP */ +static unsigned char ip[] = { + 58, 50, 42, 34, 26, 18, 10, 2, + 60, 52, 44, 36, 28, 20, 12, 4, + 62, 54, 46, 38, 30, 22, 14, 6, + 64, 56, 48, 40, 32, 24, 16, 8, + 57, 49, 41, 33, 25, 17, 9, 1, + 59, 51, 43, 35, 27, 19, 11, 3, + 61, 53, 45, 37, 29, 21, 13, 5, + 63, 55, 47, 39, 31, 23, 15, 7 +}; + +/* final permutation IP^-1 */ +static unsigned char fp[] = { + 40, 8, 48, 16, 56, 24, 64, 32, + 39, 7, 47, 15, 55, 23, 63, 31, + 38, 6, 46, 14, 54, 22, 62, 30, + 37, 5, 45, 13, 53, 21, 61, 29, + 36, 4, 44, 12, 52, 20, 60, 28, + 35, 3, 43, 11, 51, 19, 59, 27, + 34, 2, 42, 10, 50, 18, 58, 26, + 33, 1, 41, 9, 49, 17, 57, 25 +}; +/* expansion operation matrix */ +static unsigned char ei[] = { + 32, 1, 2, 3, 4, 5, + 4, 5, 6, 7, 8, 9, + 8, 9, 10, 11, 12, 13, + 12, 13, 14, 15, 16, 17, + 16, 17, 18, 19, 20, 21, + 20, 21, 22, 23, 24, 25, + 24, 25, 26, 27, 28, 29, + 28, 29, 30, 31, 32, 1 +}; +/* The (in)famous S-boxes */ +static unsigned char sbox[8][64] = { + /* S1 */ + 14, 4, 13, 1, 2, 15, 11, 8, 3, 10, 6, 12, 5, 9, 0, 7, + 00, 15, 7, 4, 14, 2, 13, 1, 10, 6, 12, 11, 9, 5, 3, 8, + 04, 1, 14, 8, 13, 6, 2, 11, 15, 12, 9, 7, 3, 10, 5, 0, + 15, 12, 8, 2, 4, 9, 1, 7, 5, 11, 3, 14, 10, 0, 6, 13, + + /* S2 */ + 15, 1, 8, 14, 6, 11, 3, 4, 9, 7, 2, 13, 12, 0, 5, 10, + 03, 13, 4, 7, 15, 2, 8, 14, 12, 0, 1, 10, 6, 9, 11, 5, + 00, 14, 7, 11, 10, 4, 13, 1, 5, 8, 12, 6, 9, 3, 2, 15, + 13, 8, 10, 1, 3, 15, 4, 2, 11, 6, 7, 12, 0, 5, 14, 9, + + /* S3 */ + 10, 0, 9, 14, 6, 3, 15, 5, 1, 13, 12, 7, 11, 4, 2, 8, + 13, 7, 0, 9, 3, 4, 6, 10, 2, 8, 5, 14, 12, 11, 15, 1, + 13, 6, 4, 9, 8, 15, 3, 0, 11, 1, 2, 12, 5, 10, 14, 7, + 01, 10, 13, 0, 6, 9, 8, 7, 4, 15, 14, 3, 11, 5, 2, 12, + + /* S4 */ + 07, 13, 14, 3, 0, 6, 9, 10, 1, 2, 8, 5, 11, 12, 4, 15, + 13, 8, 11, 5, 6, 15, 0, 3, 4, 7, 2, 12, 1, 10, 14, 9, + 10, 6, 9, 0, 12, 11, 7, 13, 15, 1, 3, 14, 5, 2, 8, 4, + 03, 15, 0, 6, 10, 1, 13, 8, 9, 4, 5, 11, 12, 7, 2, 14, + + /* S5 */ + 02, 12, 4, 1, 7, 10, 11, 6, 8, 5, 3, 15, 13, 0, 14, 9, + 14, 11, 2, 12, 4, 7, 13, 1, 5, 0, 15, 10, 3, 9, 8, 6, + 04, 2, 1, 11, 10, 13, 7, 8, 15, 9, 12, 5, 6, 3, 0, 14, + 11, 8, 12, 7, 1, 14, 2, 13, 6, 15, 0, 9, 10, 4, 5, 3, + + /* S6 */ + 12, 1, 10, 15, 9, 2, 6, 8, 0, 13, 3, 4, 14, 7, 5, 11, + 10, 15, 4, 2, 7, 12, 9, 5, 6, 1, 13, 14, 0, 11, 3, 8, + 9, 14, 15, 5, 2, 8, 12, 3, 7, 0, 4, 10, 1, 13, 11, 6, + 4, 3, 2, 12, 9, 5, 15, 10, 11, 14, 1, 7, 6, 0, 8, 13, + + /* S7 */ + 04, 11, 2, 14, 15, 0, 8, 13, 3, 12, 9, 7, 5, 10, 6, 1, + 13, 0, 11, 7, 4, 9, 1, 10, 14, 3, 5, 12, 2, 15, 8, 6, + 01, 4, 11, 13, 12, 3, 7, 14, 10, 15, 6, 8, 0, 5, 9, 2, + 06, 11, 13, 8, 1, 4, 10, 7, 9, 5, 0, 15, 14, 2, 3, 12, + + /* S8 */ + 13, 2, 8, 4, 6, 15, 11, 1, 10, 9, 3, 14, 5, 0, 12, 7, + 01, 15, 13, 8, 10, 3, 7, 4, 12, 5, 6, 11, 0, 14, 9, 2, + 07, 11, 4, 1, 9, 12, 14, 2, 0, 6, 10, 13, 15, 3, 5, 8, + 02, 1, 14, 7, 4, 10, 8, 13, 15, 12, 9, 0, 3, 5, 6, 11 +}; + +/* 32-bit permutation function P used on the output of the S-boxes */ +static unsigned char p32i[] = { + 16, 7, 20, 21, + 29, 12, 28, 17, + 01, 15, 23, 26, + 05, 18, 31, 10, + 02, 8, 24, 14, + 32, 27, 3, 9, + 19, 13, 30, 6, + 22, 11, 4, 25 +}; +#endif /* notdef */ + +/* Combined SP lookup table, linked in + * For best results, ensure that this is aligned on a 32-bit boundary; + * Borland C++ 3.1 doesn't guarantee this! + */ + +/* Primitive function F. + * Input is r, subkey array in keys, output is XORed into l. + * Each round consumes eight 6-bit subkeys, one for + * each of the 8 S-boxes, 2 longs for each round. + * Each long contains four 6-bit subkeys, each taking up a byte. + * The first long contains, from high to low end, the subkeys for + * S-boxes 1, 3, 5 & 7; the second contains the subkeys for S-boxes + * 2, 4, 6 & 8 (using the origin-1 S-box numbering in the standard, + * not the origin-0 numbering used elsewhere in this code) + * See comments elsewhere about the pre-rotated values of r and Spbox. + */ +#define F(l, r, key) { \ + work = ((r >> 4) | (r << 28)) ^ key[0]; \ + l ^= Spbox[6][work & 0x3f]; \ + l ^= Spbox[4][(work >> 8) & 0x3f]; \ + l ^= Spbox[2][(work >> 16) & 0x3f]; \ + l ^= Spbox[0][(work >> 24) & 0x3f]; \ + work = r ^ key[1]; \ + l ^= Spbox[7][work & 0x3f]; \ + l ^= Spbox[5][(work >> 8) & 0x3f]; \ + l ^= Spbox[3][(work >> 16) & 0x3f]; \ + l ^= Spbox[1][(work >> 24) & 0x3f]; \ +} +/* Encrypt or decrypt a block of data in ECB mode */ +void +BCMROMFN(des)(unsigned long ks[16][2], /* Key schedule */ + unsigned char block[8]) /* Data block */ +{ + unsigned long left, right, work; +#if defined(BCMROMBUILD) + int round; +#endif + + /* Read input block and place in left/right in big-endian order */ + left = (((unsigned long)block[0] << 24) | + ((unsigned long)block[1] << 16) | + ((unsigned long)block[2] << 8) | + (unsigned long)block[3]); + right = (((unsigned long)block[4] << 24) | + ((unsigned long)block[5] << 16) | + ((unsigned long)block[6] << 8) | + (unsigned long)block[7]); + + /* Hoey's clever initial permutation algorithm, from Outerbridge + * (see Schneier p 478) + * + * The convention here is the same as Outerbridge: rotate each + * register left by 1 bit, i.e., so that "left" contains permuted + * input bits 2, 3, 4, ... 1 and "right" contains 33, 34, 35, ... 32 + * (using origin-1 numbering as in the FIPS). This allows us to avoid + * one of the two rotates that would otherwise be required in each of + * the 16 rounds. + */ + work = ((left >> 4) ^ right) & 0x0f0f0f0f; + right ^= work; + left ^= work << 4; + work = ((left >> 16) ^ right) & 0xffff; + right ^= work; + left ^= work << 16; + work = ((right >> 2) ^ left) & 0x33333333; + left ^= work; + right ^= (work << 2); + work = ((right >> 8) ^ left) & 0xff00ff; + left ^= work; + right ^= (work << 8); + right = (right << 1) | (right >> 31); + work = (left ^ right) & 0xaaaaaaaa; + left ^= work; + right ^= work; + left = (left << 1) | (left >> 31); + + /* Now do the 16 rounds. + * Fully unrolling generates 4x larger ARM code for this function + */ +#if defined(BCMROMBUILD) + for (round = 0; round < 16; round += 2) { + F(left, right, ks[round + 0]); + F(right, left, ks[round + 1]); + } +#else /* !BCMROMBUILD */ + F(left, right, ks[0]); + F(right, left, ks[1]); + F(left, right, ks[2]); + F(right, left, ks[3]); + F(left, right, ks[4]); + F(right, left, ks[5]); + F(left, right, ks[6]); + F(right, left, ks[7]); + F(left, right, ks[8]); + F(right, left, ks[9]); + F(left, right, ks[10]); + F(right, left, ks[11]); + F(left, right, ks[12]); + F(right, left, ks[13]); + F(left, right, ks[14]); + F(right, left, ks[15]); +#endif /* !BCMROMBUILD */ + + /* Inverse permutation, also from Hoey via Outerbridge and Schneier */ + right = (right << 31) | (right >> 1); + work = (left ^ right) & 0xaaaaaaaa; + left ^= work; + right ^= work; + left = (left >> 1) | (left << 31); + work = ((left >> 8) ^ right) & 0xff00ff; + right ^= work; + left ^= work << 8; + work = ((left >> 2) ^ right) & 0x33333333; + right ^= work; + left ^= work << 2; + work = ((right >> 16) ^ left) & 0xffff; + left ^= work; + right ^= work << 16; + work = ((right >> 4) ^ left) & 0x0f0f0f0f; + left ^= work; + right ^= work << 4; + + /* Put the block back into the user's buffer with final swap */ + block[0] = (unsigned char)(right >> 24); + block[1] = (unsigned char)(right >> 16); + block[2] = (unsigned char)(right >> 8); + block[3] = (unsigned char)right; + block[4] = (unsigned char)(left >> 24); + block[5] = (unsigned char)(left >> 16); + block[6] = (unsigned char)(left >> 8); + block[7] = (unsigned char)left; +} + +#ifdef DES_TEST_STANDALONE +#include +#include +#include + +static unsigned long +randlong(void) +{ + static unsigned long r = 0; + if (r == 0) + r = getpid() * time(0) * 153846157; + r = (r + 7180351) * 74449801; + return r; +} + +static void +dumpit(int sample, unsigned long ks[16][2], unsigned char in[8], unsigned char out[8]) +{ + int i; + + printf("unsigned long sample%d_ks[16][2] = {\n", sample); + for (i = 0; i < 16; i++) + printf("\t{ 0x%08lx, 0x%08lx },\n", ks[i][0], ks[i][1]); + printf("};\n\n"); + printf("unsigned char sample%d_in[8] = {\n\t", sample); + for (i = 0; i < 8; i++) + printf("%s0x%02x,", i > 0 ? " " : "", in[i]); + printf("\n};\n\n"); + printf("unsigned char sample%d_out[8] = {\n\t", sample); + for (i = 0; i < 8; i++) + printf("%s0x%02x,", i > 0 ? " " : "", out[i]); + printf("\n};\n\n"); +} + +void +gensample(int sample) +{ + unsigned long ks[16][2]; + unsigned char in[8], out[8]; + int i, j; + + for (i = 0; i < 16; i++) + for (j = 0; j < 2; j++) + ks[i][j] = randlong(); + + for (i = 0; i < 8; i++) + in[i] = out[i] = randlong() & 0xff; + + des(ks, out); + + dumpit(sample, ks, in, out); +} + +int +checksample(unsigned long ks[16][2], unsigned char in[8], unsigned char expected_out[8]) +{ + des(ks, in); + return (bcmp(in, expected_out, 8) == 0); +} + +unsigned long sample1_ks[16][2] = { + { 0xe75fea2c, 0xb035c443 }, + { 0x7245bf92, 0xab5529d9 }, + { 0xfde3ded8, 0x03f1b84f }, + { 0x6af77dfe, 0xd6ef55a5 }, + { 0x7b28b304, 0x5f83c7db }, + { 0x1f9073ea, 0x8eecb4f1 }, + { 0xcb1e96b0, 0x5705a2e7 }, + { 0x1edfd156, 0xadbdf7bd }, + { 0x2623b9dc, 0x2f6ef973 }, + { 0x3882c642, 0x2611ce09 }, + { 0x77c44c88, 0x9b557b7f }, + { 0xbfa482ae, 0xfb94e7d5 }, + { 0xbd7a7eb4, 0xafacd90b }, + { 0xc5be369a, 0xf3b1f521 }, + { 0xdd6e8060, 0x1086c217 }, + { 0x4d571206, 0xfe51a5ed }, +}; + +unsigned char sample1_in[8] = { + 0x8c, 0xa3, 0xf2, 0x39, 0x38, 0xaf, 0x5e, 0x05, +}; + +unsigned char sample1_out[8] = { + 0x0e, 0x38, 0x62, 0x0a, 0x72, 0x93, 0xc8, 0x25, +}; + +unsigned long sample2_ks[16][2] = { + { 0xf130845c, 0x97a6d7f3 }, + { 0xfe0458c2, 0x7520b489 }, + { 0xcb712708, 0x0165e9ff }, + { 0xe7bb252e, 0xcb995e55 }, + { 0xf5416934, 0x75dfd78b }, + { 0xc803e91a, 0x1415fba1 }, + { 0x37097ae0, 0x6d665097 }, + { 0xf7a5d486, 0x26bf3c6d }, + { 0xb89f8c0c, 0xbc290523 }, + { 0x93361772, 0x0efbd0b9 }, + { 0xc807ccb8, 0x2ef5a52f }, + { 0x9dd7e1de, 0xe4306885 }, + { 0x18346ce4, 0x5ff7e0bb }, + { 0x1bfc63ca, 0x5a7fb3d1 }, + { 0x77c59c90, 0xc37967c7 }, + { 0x2622cd36, 0x0b8a629d }, +}; + +unsigned char sample2_in[8] = { + 0xbc, 0x53, 0x22, 0xe9, 0x68, 0x5f, 0x8e, 0xb5, +}; + +unsigned char sample2_out[8] = { + 0x76, 0xb9, 0xdf, 0xb8, 0x2a, 0x5b, 0x50, 0x48, +}; + +int +main(int argc, char **argv) +{ + + if (!checksample(sample1_ks, sample1_in, sample1_out)) + printf("sample1 bad\n"); + else if (!checksample(sample2_ks, sample2_in, sample2_out)) + printf("sample2 bad\n"); + else + printf("pass\n"); + + return 0; +} + +#endif /* DES_TEST_STANDALONE */ diff --git a/release/src-rt/bcmcrypto/dh.c b/release/src-rt/bcmcrypto/dh.c new file mode 100755 index 0000000000..7e3b673d47 --- /dev/null +++ b/release/src-rt/bcmcrypto/dh.c @@ -0,0 +1,617 @@ +/* + * dh.c: Diffie Hellman implementation. + * + * Code copied from openssl distribution and + * Modified just enough so that compiles and runs standalone + * + * Copyright (C) 2010, Broadcom Corporation. All Rights Reserved. + * + * Permission to use, copy, modify, and/or distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY + * SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION + * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN + * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + * + * $Id: dh.c,v 1.9.108.1 2010-08-13 18:00:15 Exp $ + */ +/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) + * All rights reserved. + * + * This package is an SSL implementation written + * by Eric Young (eay@cryptsoft.com). + * The implementation was written so as to conform with Netscapes SSL. + * + * This library is free for commercial and non-commercial use as long as + * the following conditions are aheared to. The following conditions + * apply to all code found in this distribution, be it the RC4, RSA, + * lhash, DES, etc., code; not just the SSL code. The SSL documentation + * included with this distribution is covered by the same copyright terms + * except that the holder is Tim Hudson (tjh@cryptsoft.com). + * + * Copyright remains Eric Young's, and as such any Copyright notices in + * the code are not to be removed. + * If this package is used in a product, Eric Young should be given attribution + * as the author of the parts of the library used. + * This can be in the form of a textual message at program startup or + * in documentation (online or textual) provided with the package. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * "This product includes cryptographic software written by + * Eric Young (eay@cryptsoft.com)" + * The word 'cryptographic' can be left out if the rouines from the library + * being used are not cryptographic related :-). + * 4. If you include any Windows specific code (or a derivative thereof) from + * the apps directory (application code) you must include an acknowledgement: + * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" + * + * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * The licence and distribution terms for any publically available version or + * derivative of this code cannot be changed. i.e. this code cannot simply be + * copied and put under another distribution licence + * [including the GNU Public Licence.] + */ + +#include +#include +#include +#include + +/* #include */ + +#include + +#define OPENSSL_malloc malloc +#define OPENSSL_free free + + +static int dh_bn_mod_exp(const DH *dh, BIGNUM *r, + const BIGNUM *a, const BIGNUM *p, + const BIGNUM *m, BN_CTX *ctx, + BN_MONT_CTX *m_ctx); + +#ifdef BCMDH_TEST + +#include + +static int bn_print(const BIGNUM *a); +static void cb(int p, int n, void *arg); + +unsigned char data192[] = { + 0xD4, 0xA0, 0xBA, 0x02, 0x50, 0xB6, 0xFD, 0x2E, + 0xC6, 0x26, 0xE7, 0xEF, 0xD6, 0x37, 0xDF, 0x76, + 0xC7, 0x16, 0xE2, 0x2D, 0x09, 0x44, 0xB8, 0x8B +}; + +unsigned char data512[] = { + 0xDA, 0x58, 0x3C, 0x16, 0xD9, 0x85, 0x22, 0x89, + 0xD0, 0xE4, 0xAF, 0x75, 0x6F, 0x4C, 0xCA, 0x92, + 0xDD, 0x4B, 0xE5, 0x33, 0xB8, 0x04, 0xFB, 0x0F, + 0xED, 0x94, 0xEF, 0x9C, 0x8A, 0x44, 0x03, 0xED, + 0x57, 0x46, 0x50, 0xD3, 0x69, 0x99, 0xDB, 0x29, + 0xD7, 0x76, 0x27, 0x6B, 0xA2, 0xD3, 0xD4, 0x12, + 0xE2, 0x18, 0xF4, 0xDD, 0x1E, 0x08, 0x4C, 0xF6, + 0xD8, 0x00, 0x3E, 0x7C, 0x47, 0x74, 0xE8, 0x33 +}; + +unsigned char data1024[] = { + 0x97, 0xF6, 0x42, 0x61, 0xCA, 0xB5, 0x05, 0xDD, + 0x28, 0x28, 0xE1, 0x3F, 0x1D, 0x68, 0xB6, 0xD3, + 0xDB, 0xD0, 0xF3, 0x13, 0x04, 0x7F, 0x40, 0xE8, + 0x56, 0xDA, 0x58, 0xCB, 0x13, 0xB8, 0xA1, 0xBF, + 0x2B, 0x78, 0x3A, 0x4C, 0x6D, 0x59, 0xD5, 0xF9, + 0x2A, 0xFC, 0x6C, 0xFF, 0x3D, 0x69, 0x3F, 0x78, + 0xB2, 0x3D, 0x4F, 0x31, 0x60, 0xA9, 0x50, 0x2E, + 0x3E, 0xFA, 0xF7, 0xAB, 0x5E, 0x1A, 0xD5, 0xA6, + 0x5E, 0x55, 0x43, 0x13, 0x82, 0x8D, 0xA8, 0x3B, + 0x9F, 0xF2, 0xD9, 0x41, 0xDE, 0xE9, 0x56, 0x89, + 0xFA, 0xDA, 0xEA, 0x09, 0x36, 0xAD, 0xDF, 0x19, + 0x71, 0xFE, 0x63, 0x5B, 0x20, 0xAF, 0x47, 0x03, + 0x64, 0x60, 0x3C, 0x2D, 0xE0, 0x59, 0xF5, 0x4B, + 0x65, 0x0A, 0xD8, 0xFA, 0x0C, 0xF7, 0x01, 0x21, + 0xC7, 0x47, 0x99, 0xD7, 0x58, 0x71, 0x32, 0xBE, + 0x9B, 0x99, 0x9B, 0xB9, 0xB7, 0x87, 0xE8, 0xAB +}; + +/* uncomment this and write a matching function when testing on another OS */ +#ifndef WIN32 +#define BCMDH_TEST_LINUX +#endif + +#ifdef BCMDH_TEST_LINUX + +#define dbg(fmt, arg...) printf(fmt, ##arg) + +#endif /* BCMDH_TEST_LINUX */ + + +int +main(int argc, char *argv[]) +{ + DH *a; + DH *b = NULL; + unsigned char *abuf = NULL, *bbuf = NULL; + unsigned char *apubbuf = NULL, *bpubbuf = NULL; + int i, alen, blen, apublen, bpublen, aout, bout, ret = 1, size = 0; + char opt; + + while ((opt = getopt(argc, argv, "s:")) != EOF) { + switch (opt) { + case 's': + size = (int)strtoul(optarg, NULL, 0); + break; + default: + dbg("invalid option"); + return ret; + } + } + +#ifdef BCMDH_TEST_LINUX + { + extern void linux_random(uint8 *rand, int len); + BN_register_RAND(linux_random); + } +#endif + + if (size == 192) { + a = DH_init(data192, sizeof(data192), 3); + } else if (size == 512) { + a = DH_init(data512, sizeof(data512), 2); + } else if (size == 1024) { + a = DH_init(data1024, sizeof(data1024), 2); + } else { + a = DH_generate_parameters(NULL, 64, DH_GENERATOR_5, cb, NULL); + if (a == NULL) goto err; + } + + if (!DH_check(a, &i)) goto err; + if (i & DH_CHECK_P_NOT_PRIME) + dbg("p value is not prime\n"); + if (i & DH_CHECK_P_NOT_SAFE_PRIME) + dbg("p value is not a safe prime\n"); + if (i & DH_UNABLE_TO_CHECK_GENERATOR) + dbg("unable to check the generator value\n"); + if (i & DH_NOT_SUITABLE_GENERATOR) + dbg("the g value is not a generator\n"); + + dbg("\np ="); + bn_print(a->p); + dbg("\ng ="); + bn_print(a->g); + dbg("\n"); + + b = DH_new(); + if (b == NULL) goto err; + + b->p = BN_dup(a->p); + b->g = BN_dup(a->g); + if ((b->p == NULL) || (b->g == NULL)) goto err; + + apubbuf = (unsigned char *)OPENSSL_malloc(DH_size(a)); + /* dbg("%s\n", file2str("/proc/uptime")); */ + if (!(apublen = DH_generate_key(apubbuf, a))) goto err; + /* dbg("%s\n", file2str("/proc/uptime")); */ + dbg("pri 1="); + bn_print(a->priv_key); + dbg("\npub 1="); + for (i = 0; i < apublen; i++) dbg("%02X", apubbuf[i]); + dbg("\n"); + + bpubbuf = (unsigned char *)OPENSSL_malloc(DH_size(b)); + if (!(bpublen = DH_generate_key(bpubbuf, b))) goto err; + dbg("pri 2="); + bn_print(b->priv_key); + dbg("\npub 2="); + for (i = 0; i < bpublen; i++) dbg("%02X", bpubbuf[i]); + dbg("\n"); + + alen = DH_size(a); + abuf = (unsigned char *)OPENSSL_malloc(alen); + /* dbg("%s\n", file2str("/proc/uptime")); */ + aout = DH_compute_key(abuf, bpubbuf, bpublen, a); + /* dbg("%s\n", file2str("/proc/uptime")); */ + + dbg("key1 ="); + for (i = 0; i < aout; i++) dbg("%02X", abuf[i]); + dbg("\n"); + + blen = DH_size(b); + bbuf = (unsigned char *)OPENSSL_malloc(blen); + bout = DH_compute_key(bbuf, apubbuf, apublen, b); + + dbg("key2 ="); + for (i = 0; i < bout; i++) dbg("%02X", abuf[i]); + dbg("\n"); + + if ((aout < 4) || (bout != aout) || (memcmp(abuf, bbuf, aout) != 0)) + ret = 1; + else + ret = 0; +err: + if (abuf != NULL) OPENSSL_free(abuf); + if (bbuf != NULL) OPENSSL_free(bbuf); + if (b != NULL) DH_free(b); + if (a != NULL) DH_free(a); + fprintf(stderr, "%s: %s\n", *argv, ret?"FAILED":"PASSED"); + return (ret); +} + +static void +cb(int p, int n, void *arg) +{ + if (p == 0) dbg("."); + if (p == 1) dbg("+"); + if (p == 2) dbg("*"); + if (p == 3) dbg("\n"); +} + +static const char *Hex = "0123456789ABCDEF"; + +static int +bn_print(const BIGNUM *a) +{ + int i, j, v, z = 0; + int ret = 0; + + if ((a->neg) && (dbg("-") != 1)) goto end; + if ((a->top == 0) && (dbg("0") != 1)) goto end; + for (i = a->top - 1; i >= 0; i--) { + for (j = BN_BITS2 - 4; j >= 0; j -= 4) { + /* strip leading zeros */ + v = ((int)(a->d[i] >> (long)j)) & 0x0f; + if (z || (v != 0)) { + dbg("%c", Hex[v]); + z = 1; + } + } + } + ret = 1; +end: + return (ret); +} + +int DH_size(const DH *dh) +{ + return (BN_num_bytes(dh->p)); +} + +/* We generate DH parameters as follows + * find a prime q which is prime_len/2 bits long. + * p=(2*q)+1 or (p-1)/2 = q + * For this case, g is a generator if + * g^((p-1)/q) mod p != 1 for values of q which are the factors of p-1. + * Since the factors of p-1 are q and 2, we just need to check + * g^2 mod p != 1 and g^q mod p != 1. + * + * Having said all that, + * there is another special case method for the generators 2, 3 and 5. + * for 2, p mod 24 == 11 + * for 3, p mod 12 == 5 <<<<< does not work for safe primes. + * for 5, p mod 10 == 3 or 7 + * + * Thanks to Phil Karn for the pointers about the + * special generators and for answering some of my questions. + * + * I've implemented the second simple method :-). + * Since DH should be using a safe prime (both p and q are prime), + * this generator function can take a very very long time to run. + */ +/* Actually there is no reason to insist that 'generator' be a generator. + * It's just as OK (and in some sense better) to use a generator of the + * order-q subgroup. + */ +DH * +DH_generate_parameters(DH* dh, int prime_len, int generator, + void (*callback)(int, int, void *), void *cb_arg) +{ + BIGNUM *p = NULL, *t1, *t2; + DH *ret = NULL; + int g, ok = -1; + BN_CTX *ctx = NULL; + + ret = dh ? dh : DH_new(); + if (ret == NULL) goto err; + ctx = BN_CTX_new(); + if (ctx == NULL) goto err; + BN_CTX_start(ctx); + t1 = BN_CTX_get(ctx); + t2 = BN_CTX_get(ctx); + if (t1 == NULL || t2 == NULL) goto err; + + if (generator <= 1) { + goto err; + } + if (generator == DH_GENERATOR_2) { + if (!BN_set_word(t1, 24)) goto err; + if (!BN_set_word(t2, 11)) goto err; + g = 2; + } + + else if (generator == DH_GENERATOR_5) { + if (!BN_set_word(t1, 10)) goto err; + if (!BN_set_word(t2, 3)) goto err; + /* BN_set_word(t3, 7); just have to miss + * out on these ones :-( + */ + g = 5; + } else { + /* in the general case, don't worry if 'generator' is a + * generator or not: since we are using safe primes, + * it will generate either an order-q or an order-2q group, + * which both is OK + */ + if (!BN_set_word(t1, 2)) goto err; + if (!BN_set_word(t2, 1)) goto err; + g = generator; + } + + p = BN_generate_prime(NULL, prime_len, 1, t1, t2, callback, cb_arg); + if (p == NULL) goto err; + if (callback != NULL) callback(3, 0, cb_arg); + ret->p = p; + ret->g = BN_new(); + if (!BN_set_word(ret->g, g)) goto err; + ok = 1; +err: + if (ok == -1) { + ok = 0; + } + + if (ctx != NULL) { + BN_CTX_end(ctx); + BN_CTX_free(ctx); + } + if (!ok && (ret != NULL)) { + DH_free(ret); + ret = NULL; + } + return (ret); +} + +/* Check that p is a safe prime and + * if g is 2, 3 or 5, check that is is a suitable generator + * where + * for 2, p mod 24 == 11 + * for 3, p mod 12 == 5 + * for 5, p mod 10 == 3 or 7 + * should hold. + */ + +int +DH_check(const DH *dh, int *ret) +{ + int ok = 0; + BN_CTX *ctx = NULL; + BN_ULONG l; + BIGNUM *q = NULL; + + *ret = 0; + ctx = BN_CTX_new(); + if (ctx == NULL) goto err; + q = BN_new(); + if (q == NULL) goto err; + + if (BN_is_word(dh->g, DH_GENERATOR_2)) { + l = BN_mod_word(dh->p, 24); + if (l != 11) *ret |= DH_NOT_SUITABLE_GENERATOR; + } + + else if (BN_is_word(dh->g, DH_GENERATOR_5)) { + l = BN_mod_word(dh->p, 10); + if ((l != 3) && (l != 7)) + *ret |= DH_NOT_SUITABLE_GENERATOR; + } else + *ret |= DH_UNABLE_TO_CHECK_GENERATOR; + + if (!BN_is_prime(dh->p, BN_prime_checks, NULL, ctx, NULL)) + *ret |= DH_CHECK_P_NOT_PRIME; + else { + if (!BN_rshift1(q, dh->p)) goto err; + if (!BN_is_prime(q, BN_prime_checks, NULL, ctx, NULL)) + *ret |= DH_CHECK_P_NOT_SAFE_PRIME; + } + ok = 1; +err: + if (ctx != NULL) BN_CTX_free(ctx); + if (q != NULL) BN_free(q); + return (ok); +} + +#endif /* BCMDH_TEST */ + +DH * +DH_new(void) +{ + DH *ret; + + ret = (DH *)OPENSSL_malloc(sizeof(DH)); + if (ret == NULL) { + return (NULL); + } + + ret->p = NULL; + ret->g = NULL; + ret->length = 0; + ret->pub_key = NULL; + ret->priv_key = NULL; + ret->q = NULL; + ret->j = NULL; + ret->seed = NULL; + ret->seedlen = 0; + ret->counter = NULL; + ret->method_mont_p = NULL; + ret->flags = DH_FLAG_CACHE_MONT_P; + return (ret); +} + +void +DH_free(DH *r) +{ + if (r == NULL) return; + if (r->p != NULL) BN_clear_free(r->p); + if (r->g != NULL) BN_clear_free(r->g); + if (r->q != NULL) BN_clear_free(r->q); + if (r->j != NULL) BN_clear_free(r->j); + if (r->seed) OPENSSL_free(r->seed); + if (r->counter != NULL) BN_clear_free(r->counter); + if (r->pub_key != NULL) BN_clear_free(r->pub_key); + if (r->priv_key != NULL) BN_clear_free(r->priv_key); + if (r->method_mont_p) + BN_MONT_CTX_free((BN_MONT_CTX *)r->method_mont_p); + OPENSSL_free(r); +} + +int +DH_generate_key(unsigned char *pubbuf, DH *dh) +{ + int ret = 0; + unsigned l; + BN_CTX *ctx = NULL; + BN_MONT_CTX *mont; + BIGNUM *pub_key = NULL, *priv_key = NULL; + + + if (dh->pub_key != NULL) { + if (pubbuf) + return BN_bn2bin(dh->pub_key, pubbuf); + else + return BN_num_bytes(dh->pub_key); + } + /* first time in here */ + priv_key = BN_new(); + if (priv_key == NULL) goto err; + + pub_key = BN_new(); + if (pub_key == NULL) goto err; + + ctx = BN_CTX_new(); + if (ctx == NULL) goto err; + + if (dh->flags & DH_FLAG_CACHE_MONT_P) { + if ((dh->method_mont_p = BN_MONT_CTX_new()) != NULL) + if (!BN_MONT_CTX_set((BN_MONT_CTX *)dh->method_mont_p, + dh->p, ctx)) + goto err; + } + + mont = (BN_MONT_CTX *)dh->method_mont_p; + + l = dh->length ? dh->length : BN_num_bits(dh->p)-1; /* secret exponent length */ + if (!BN_rand(priv_key, l, 0, 0)) + goto err; + if (!dh_bn_mod_exp(dh, pub_key, dh->g, priv_key, dh->p, ctx, mont)) + goto err; + + dh->pub_key = pub_key; + dh->priv_key = priv_key; + if (pubbuf) + ret = BN_bn2bin(pub_key, pubbuf); + else + ret = BN_num_bytes(dh->pub_key); +err: + if ((pub_key != NULL) && (dh->pub_key == NULL)) + BN_free(pub_key); + if ((priv_key != NULL) && (dh->priv_key == NULL)) + BN_free(priv_key); + if (ctx) + BN_CTX_free(ctx); + return (ret); +} + + +int +DH_compute_key_bn(unsigned char *key, BIGNUM *peer_key, DH *dh) +{ + BN_CTX *ctx; + BN_MONT_CTX *mont; + BIGNUM *tmp; + int ret = -1; + + ctx = BN_CTX_new(); + if (ctx == NULL) goto err; + BN_CTX_start(ctx); + tmp = BN_CTX_get(ctx); + + if (dh->priv_key == NULL) { + goto err; + } + if ((dh->method_mont_p == NULL) && (dh->flags & DH_FLAG_CACHE_MONT_P)) { + if ((dh->method_mont_p = BN_MONT_CTX_new()) != NULL) + if (!BN_MONT_CTX_set((BN_MONT_CTX *)dh->method_mont_p, + dh->p, ctx)) + goto err; + } + + mont = (BN_MONT_CTX *)dh->method_mont_p; + if (!dh_bn_mod_exp(dh, tmp, peer_key, dh->priv_key, dh->p, ctx, mont)) { + goto err; + } + + ret = BN_bn2bin(tmp, key); +err: + if (peer_key) + BN_clear_free(peer_key); + BN_CTX_end(ctx); + BN_CTX_free(ctx); + return (ret); +} + + +int +DH_compute_key(unsigned char *key, unsigned char *pubbuf, int buflen, DH *dh) +{ + BIGNUM *peer_key = NULL; + + peer_key = BN_bin2bn(pubbuf, buflen, NULL); + return DH_compute_key_bn(key, peer_key, dh); +} + +DH * +DH_init(unsigned char *pbuf, int plen, int g) +{ + DH *dh; + + dh = DH_new(); + dh->p = BN_bin2bn(pbuf, plen, NULL); + dh->g = BN_new(); + BN_set_word(dh->g, g); + return dh; +} + +static int +dh_bn_mod_exp(const DH *dh, BIGNUM *r, + const BIGNUM *a, const BIGNUM *p, + const BIGNUM *m, BN_CTX *ctx, + BN_MONT_CTX *m_ctx) +{ + if (a->top == 1) { + BN_ULONG A = a->d[0]; + return BN_mod_exp_mont_word(r, A, p, m, ctx, m_ctx); + } else + return BN_mod_exp_mont(r, a, p, m, ctx, m_ctx); +} diff --git a/release/src/router/dropbear/_MTN/log b/release/src-rt/bcmcrypto/examccx.h old mode 100644 new mode 100755 similarity index 100% rename from release/src/router/dropbear/_MTN/log rename to release/src-rt/bcmcrypto/examccx.h diff --git a/release/src-rt/bcmcrypto/prebuilt/.dummy b/release/src-rt/bcmcrypto/examppkt.h old mode 100644 new mode 100755 similarity index 100% copy from release/src-rt/bcmcrypto/prebuilt/.dummy copy to release/src-rt/bcmcrypto/examppkt.h diff --git a/release/src-rt/bcmcrypto/hmac.c b/release/src-rt/bcmcrypto/hmac.c new file mode 100755 index 0000000000..fb5eb691d1 --- /dev/null +++ b/release/src-rt/bcmcrypto/hmac.c @@ -0,0 +1,136 @@ +/* + * Function: hmac_md5 + * From rfc2104.txt + * + * $Id: hmac.c,v 1.16 2009-04-13 16:25:16 Exp $ + */ + +/* + * Copyright (C) The Internet Society (2001). All Rights Reserved. + * + * This document and translations of it may be copied and furnished to + * others, and derivative works that comment on or otherwise explain it + * or assist in its implementation may be prepared, copied, published + * and distributed, in whole or in part, without restriction of any + * kind, provided that the above copyright notice and this paragraph are + * included on all such copies and derivative works. However, this + * document itself may not be modified in any way, such as by removing + * the copyright notice or references to the Internet Society or other + * Internet organizations, except as needed for the purpose of + * developing Internet standards in which case the procedures for + * copyrights defined in the Internet Standards process must be + * followed, or as required to translate it into languages other than + * English. + * + * The limited permissions granted above are perpetual and will not be + * revoked by the Internet Society or its successors or assigns. + * + * This document and the information contained herein is provided on an + * "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING + * TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING + * BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION + * HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF + * MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. + * + * Copyright (C) 2010, Broadcom Corporation + * All Rights Reserved. + * + * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation; + * the contents of this file may not be disclosed to third parties, copied + * or duplicated in any form, in whole or in part, without the prior + * written permission of Broadcom Corporation. + * + * $Id: hmac.c,v 1.16 2009-04-13 16:25:16 Exp $ + */ + + +#include + +#ifdef BCMDRIVER +#if !defined(BCMSUP_PSK) +#error "BCMSUP_PSK or BCMCCX must be defined to compile hmac.c for driver!" +#endif +#include +#else +#if defined(__GNUC__) +extern void bcopy(const void *src, void *dst, int len); +extern void bzero(void *b, int len); +#else +#define bcopy(src, dst, len) memcpy((dst), (src), (len)) +#define bzero(b, len) memset((b), 0, (len)) +#endif +#endif /* BCMDRIVER */ + + +extern void BCMROMFN(hmac_md5)(unsigned char *text, int text_len, unsigned char *key, + int key_len, unsigned char *digest); + +/* text pointer to data stream */ +/* text_len length of data stream */ +/* key pointer to authentication key */ +/* key_len length of authentication key */ +/* digest caller digest to be filled in */ +void +BCMROMFN(hmac_md5)(unsigned char *text, int text_len, unsigned char *key, + int key_len, unsigned char *digest) +{ + MD5_CTX context; + unsigned char k_ipad[65]; /* inner padding - + * key XORd with ipad + */ + unsigned char k_opad[65]; /* outer padding - + * key XORd with opad + */ + unsigned char tk[16]; + int i; + /* if key is longer than 64 bytes reset it to key=MD5(key) */ + if (key_len > 64) { + + MD5_CTX tctx; + + MD5Init(&tctx); + MD5Update(&tctx, key, key_len); + MD5Final(tk, &tctx); + + key = tk; + key_len = 16; + } + + /* + * the HMAC_MD5 transform looks like: + * + * MD5(K XOR opad, MD5(K XOR ipad, text)) + * + * where K is an n byte key + * ipad is the byte 0x36 repeated 64 times + + * opad is the byte 0x5c repeated 64 times + * and text is the data being protected + */ + + /* start out by storing key in pads */ + bzero(k_ipad, sizeof(k_ipad)); + bzero(k_opad, sizeof(k_opad)); + bcopy(key, k_ipad, key_len); + bcopy(key, k_opad, key_len); + + /* XOR key with ipad and opad values */ + for (i = 0; i < 64; i++) { + k_ipad[i] ^= 0x36; + k_opad[i] ^= 0x5c; + } + /* + * perform inner MD5 + */ + MD5Init(&context); /* init context for 1st pass */ + MD5Update(&context, k_ipad, 64); /* start with inner pad */ + MD5Update(&context, text, text_len); /* then text of datagram */ + MD5Final(digest, &context); /* finish up 1st pass */ + /* + * perform outer MD5 + */ + MD5Init(&context); /* init context for 2nd pass */ + MD5Update(&context, k_opad, 64); /* start with outer pad */ + MD5Update(&context, digest, 16); /* then results of 1st hash */ + MD5Final(digest, &context); /* finish up 2nd pass */ +} diff --git a/release/src-rt/bcmcrypto/hmac_sha256.c b/release/src-rt/bcmcrypto/hmac_sha256.c new file mode 100755 index 0000000000..c8409c9ced --- /dev/null +++ b/release/src-rt/bcmcrypto/hmac_sha256.c @@ -0,0 +1,236 @@ +/* crypto/hmac/hmac.c + * Code copied from openssl distribution and + * Modified just enough so that compiles and runs standalone + * + * Copyright (C) 2010, Broadcom Corporation. All Rights Reserved. + * + * Permission to use, copy, modify, and/or distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY + * SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION + * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN + * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + * + * $Id: hmac_sha256.c,v 1.5.218.2 2010-06-08 01:29:21 Exp $ + */ +/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) + * All rights reserved. + * + * This package is an SSL implementation written + * by Eric Young (eay@cryptsoft.com). + * The implementation was written so as to conform with Netscapes SSL. + * + * This library is free for commercial and non-commercial use as long as + * the following conditions are aheared to. The following conditions + * apply to all code found in this distribution, be it the RC4, RSA, + * lhash, DES, etc., code; not just the SSL code. The SSL documentation + * included with this distribution is covered by the same copyright terms + * except that the holder is Tim Hudson (tjh@cryptsoft.com). + * + * Copyright remains Eric Young's, and as such any Copyright notices in + * the code are not to be removed. + * If this package is used in a product, Eric Young should be given attribution + * as the author of the parts of the library used. + * This can be in the form of a textual message at program startup or + * in documentation (online or textual) provided with the package. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * "This product includes cryptographic software written by + * Eric Young (eay@cryptsoft.com)" + * The word 'cryptographic' can be left out if the rouines from the library + * being used are not cryptographic related :-). + * 4. If you include any Windows specific code (or a derivative thereof) from + * the apps directory (application code) you must include an acknowledgement: + * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" + * + * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * The licence and distribution terms for any publically available version or + * derivative of this code cannot be changed. i.e. this code cannot simply be + * copied and put under another distribution licence + * [including the GNU Public Licence.] + */ +#include +#ifdef BCMDRIVER +#include +#else +#include /* for size_t */ +#if defined(__GNUC__) +extern void bcopy(const void *src, void *dst, size_t len); +extern int bcmp(const void *b1, const void *b2, size_t len); +extern void bzero(void *b, size_t len); +#else +#define bcopy(src, dst, len) memcpy((dst), (src), (len)) +#define bcmp(b1, b2, len) memcmp((b1), (b2), (len)) +#define bzero(b, len) memset((b), 0, (len)) +#endif /* defined(__GNUC__) */ + +#include +#include +#include +#endif /* BCMDRIVER */ + +#include "bcmcrypto/sha256.h" +#include "bcmcrypto/hmac_sha256.h" + +#include "bcmutils.h" + +void +hmac_sha256(const void *key, int key_len, + const unsigned char *text, size_t text_len, unsigned char *digest, + unsigned int *digest_len) + +{ + SHA256_CTX ctx; + + int i; + unsigned char sha_key[SHA256_CBLOCK]; + unsigned char k_ipad[SHA256_CBLOCK]; /* inner padding - + * key XORd with ipad + */ + unsigned char k_opad[SHA256_CBLOCK]; /* outer padding - + * key XORd with opad + */ + /* set the key */ + /* block size smaller than key size : hash down */ + if (SHA256_CBLOCK < key_len) + { + SHA256_Init(&ctx); + SHA256_Update(&ctx, key, key_len); + SHA256_Final(sha_key, &ctx); + key = sha_key; + key_len = SHA256_DIGEST_LENGTH; + } + + /* + * the HMAC_SHA256 transform looks like: + * + * SHA256(K XOR opad, SHA256(K XOR ipad, text)) + * + * where K is an n byte key + * ipad is the byte 0x36 repeated 64 times + * opad is the byte 0x5c repeated 64 times + * and text is the data being protected + */ + /* compute inner and outer pads from key */ + bzero(k_ipad, sizeof(k_ipad)); + bzero(k_opad, sizeof(k_opad)); + bcopy(key, k_ipad, key_len); + bcopy(key, k_opad, key_len); + + /* XOR key with ipad and opad values */ + for (i = 0; i < 64; i++) { + k_ipad[i] ^= 0x36; + k_opad[i] ^= 0x5c; + } + + + /* + * perform inner SHA256 + */ + SHA256_Init(&ctx); /* init context for 1st pass */ + SHA256_Update(&ctx, k_ipad, SHA256_CBLOCK); /* start with inner pad */ + SHA256_Update(&ctx, text, text_len); /* then text of datagram */ + SHA256_Final(digest, &ctx); /* finish up 1st pass */ + /* + * perform outer SHA256 + */ + SHA256_Init(&ctx); /* init context for 2nd pass */ + SHA256_Update(&ctx, k_opad, SHA256_CBLOCK); /* start with outer pad */ + SHA256_Update(&ctx, digest, SHA256_DIGEST_LENGTH); /* then results of 1st hash */ + SHA256_Final(digest, &ctx); /* finish up 2nd pass */ + + if (digest_len) + *digest_len = SHA256_DIGEST_LENGTH; +} + +void hmac_sha256_n(const void *key, int key_len, + const unsigned char *text, size_t text_len, unsigned char *digest, + unsigned int digest_len) +{ + uchar data[128]; + uchar digest_tmp[SHA256_DIGEST_LENGTH]; + int data_len = 2; + unsigned int i; + uint16 digest_bitlen = (digest_len*8); + + *(uint16 *)data = 0; + + + bcopy(text, &data[data_len], text_len); + data_len += text_len; + bcopy((uchar *)&digest_bitlen, &data[data_len], sizeof(uint16)); + data_len += sizeof(uint16); + for (i = 0; i < (digest_len + SHA256_DIGEST_LENGTH - 1) / SHA256_DIGEST_LENGTH; i++) { + *(uint16 *)data = (uint16) i + 1; + hmac_sha256(key, key_len, data, data_len, digest_tmp, NULL); + bcopy(digest_tmp, &digest[(i*SHA256_DIGEST_LENGTH)], SHA256_DIGEST_LENGTH); + } +} + +void +sha256(const unsigned char *text, size_t text_len, unsigned char *digest, + unsigned int digest_len) +{ + SHA256_CTX ctx; + + SHA256_Init(&ctx); /* init context for 1st pass */ + SHA256_Update(&ctx, text, text_len); /* start with inner pad */ + SHA256_Final(digest, &ctx); /* finish up 1st pass */ +} + +/* KDF + * Length of output is in octets rather than bits + * since length is always a multiple of 8 + * output array is organized so first N octets starting from 0 + * contains PRF output + * + * supported inputs are 16, 32, 48, 64 + * output array must be 80 octets in size to allow for sha1 overflow + */ +#define KDF_MAX_I_D_LEN 128 +int +KDF(unsigned char *key, int key_len, unsigned char *prefix, + int prefix_len, unsigned char *data, int data_len, + unsigned char *output, int len) +{ + unsigned char input[KDF_MAX_I_D_LEN]; /* concatenated input */ + int total_len; + int data_offset = 0; + + if ((prefix_len + data_len + 1) > KDF_MAX_I_D_LEN) + return (-1); + + if (prefix_len != 0) { + bcopy(prefix, input, prefix_len); + data_offset = prefix_len; + } + bcopy(data, &input[data_offset], data_len); + total_len = data_offset + data_len; + hmac_sha256_n(key, key_len, input, total_len, output, len); + return (0); +} diff --git a/release/src-rt/bcmcrypto/md32_common.h b/release/src-rt/bcmcrypto/md32_common.h new file mode 100755 index 0000000000..10eda0bd80 --- /dev/null +++ b/release/src-rt/bcmcrypto/md32_common.h @@ -0,0 +1,602 @@ +/* crypto/md32_common.h */ +/* ==================================================================== + * Copyright (c) 1999-2002 The OpenSSL Project. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * + * 3. All advertising materials mentioning features or use of this + * software must display the following acknowledgment: + * "This product includes software developed by the OpenSSL Project + * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + * + * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + * endorse or promote products derived from this software without + * prior written permission. For written permission, please contact + * licensing@OpenSSL.org. + * + * 5. Products derived from this software may not be called "OpenSSL" + * nor may "OpenSSL" appear in their names without prior written + * permission of the OpenSSL Project. + * + * 6. Redistributions of any form whatsoever must retain the following + * acknowledgment: + * "This product includes software developed by the OpenSSL Project + * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" + * + * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY + * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR + * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * ==================================================================== + * + * This product includes cryptographic software written by Eric Young + * (eay@cryptsoft.com). This product includes software written by Tim + * Hudson (tjh@cryptsoft.com). + * + */ + +/* + * This is a generic 32 bit "collector" for message digest algorithms. + * Whenever needed it collects input character stream into chunks of + * 32 bit values and invokes a block function that performs actual hash + * calculations. + * + * Porting guide. + * + * Obligatory macros: + * + * DATA_ORDER_IS_BIG_ENDIAN or DATA_ORDER_IS_LITTLE_ENDIAN + * this macro defines byte order of input stream. + * HASH_CBLOCK + * size of a unit chunk HASH_BLOCK operates on. + * HASH_LONG + * has to be at lest 32 bit wide, if it's wider, then + * HASH_LONG_LOG2 *has to* be defined along + * HASH_CTX + * context structure that at least contains following + * members: + * typedef struct { + * ... + * HASH_LONG Nl,Nh; + * HASH_LONG data[HASH_LBLOCK]; + * unsigned int num; + * ... + * } HASH_CTX; + * HASH_UPDATE + * name of "Update" function, implemented here. + * HASH_TRANSFORM + * name of "Transform" function, implemented here. + * HASH_FINAL + * name of "Final" function, implemented here. + * HASH_BLOCK_HOST_ORDER + * name of "block" function treating *aligned* input message + * in host byte order, implemented externally. + * HASH_BLOCK_DATA_ORDER + * name of "block" function treating *unaligned* input message + * in original (data) byte order, implemented externally (it + * actually is optional if data and host are of the same + * "endianess"). + * HASH_MAKE_STRING + * macro convering context variables to an ASCII hash string. + * + * Optional macros: + * + * B_ENDIAN or L_ENDIAN + * defines host byte-order. + * HASH_LONG_LOG2 + * defaults to 2 if not states otherwise. + * HASH_LBLOCK + * assumed to be HASH_CBLOCK/4 if not stated otherwise. + * HASH_BLOCK_DATA_ORDER_ALIGNED + * alternative "block" function capable of treating + * aligned input message in original (data) order, + * implemented externally. + * + * MD5 example: + * + * #define DATA_ORDER_IS_LITTLE_ENDIAN + * + * #define HASH_LONG MD5_LONG + * #define HASH_LONG_LOG2 MD5_LONG_LOG2 + * #define HASH_CTX MD5_CTX + * #define HASH_CBLOCK MD5_CBLOCK + * #define HASH_LBLOCK MD5_LBLOCK + * #define HASH_UPDATE MD5_Update + * #define HASH_TRANSFORM MD5_Transform + * #define HASH_FINAL MD5_Final + * #define HASH_BLOCK_HOST_ORDER md5_block_host_order + * #define HASH_BLOCK_DATA_ORDER md5_block_data_order + * + * + */ + +/* FILE-CSTYLED */ + +#if !defined(DATA_ORDER_IS_BIG_ENDIAN) && !defined(DATA_ORDER_IS_LITTLE_ENDIAN) +#error "DATA_ORDER must be defined!" +#endif + +#ifndef HASH_CBLOCK +#error "HASH_CBLOCK must be defined!" +#endif +#ifndef HASH_LONG +#error "HASH_LONG must be defined!" +#endif +#ifndef HASH_CTX +#error "HASH_CTX must be defined!" +#endif + +#ifndef HASH_UPDATE +#error "HASH_UPDATE must be defined!" +#endif +#ifndef HASH_TRANSFORM +#error "HASH_TRANSFORM must be defined!" +#endif +#ifndef HASH_FINAL +#error "HASH_FINAL must be defined!" +#endif + +#ifndef HASH_BLOCK_HOST_ORDER +#error "HASH_BLOCK_HOST_ORDER must be defined!" +#endif + + +#ifndef HASH_LBLOCK +#define HASH_LBLOCK (HASH_CBLOCK/4) +#endif + +#ifndef HASH_LONG_LOG2 +#define HASH_LONG_LOG2 2 +#endif + +/* + * Engage compiler specific rotate intrinsic function if available. + */ +#undef ROTATE +#ifndef PEDANTIC +# if defined(_MSC_VER) || defined(__ICC) +# define ROTATE(a,n) _lrotl(a,n) +# elif defined(__MWERKS__) +# if defined(__POWERPC__) +# define ROTATE(a,n) __rlwinm(a,n,0,31) +# elif defined(__MC68K__) + /* Motorola specific tweak. */ +# define ROTATE(a,n) ( n<24 ? __rol(a,n) : __ror(a,32-n) ) +# else +# define ROTATE(a,n) __rol(a,n) +# endif +# elif defined(__GNUC__) && __GNUC__>=2 && !defined(OPENSSL_NO_ASM) && \ + !defined(OPENSSL_NO_INLINE_ASM) + /* + * Some GNU C inline assembler templates. Note that these are + * rotates by *constant* number of bits! But that's exactly + * what we need here... + * + */ +# if defined(__i386) || defined(__i386__) || defined(__x86_64) || defined(__x86_64__) +# define ROTATE(a,n) ({ register unsigned int ret; \ + asm ( \ + "roll %1,%0" \ + : "=r"(ret) \ + : "I"(n), "0"(a) \ + : "cc"); \ + ret; \ + }) +# elif defined(__powerpc) || defined(__ppc__) || defined(__powerpc64__) +# define ROTATE(a,n) ({ register unsigned int ret; \ + asm ( \ + "rlwinm %0,%1,%2,0,31" \ + : "=r"(ret) \ + : "r"(a), "I"(n)); \ + ret; \ + }) +# endif +# endif +#endif /* PEDANTIC */ + +#if HASH_LONG_LOG2==2 /* Engage only if sizeof(HASH_LONG)== 4 */ +/* A nice byte order reversal from Wei Dai */ +#ifdef ROTATE +/* 5 instructions with rotate instruction, else 9 */ +#define REVERSE_FETCH32(a,l) ( \ + l =* (const HASH_LONG *)(a), \ + ((ROTATE(l,8)&0x00FF00FF)|(ROTATE((l&0x00FF00FF),24))) \ + ) +#else +/* 6 instructions with rotate instruction, else 8 */ +#define REVERSE_FETCH32(a,l) ( \ + l =* (const HASH_LONG *)(a), \ + l = (((l>>8)&0x00FF00FF)|((l&0x00FF00FF)<<8)), \ + ROTATE(l,16) \ + ) +/* + * Originally the middle line started with l=(((l&0xFF00FF00)>>8)|... + * It's rewritten as above for two reasons: + * - RISCs aren't good at long constants and have to explicitely + * compose 'em with several (well, usually 2) instructions in a + * register before performing the actual operation and (as you + * already realized:-) having same constant should inspire the + * compiler to permanently allocate the only register for it; + * - most modern CPUs have two ALUs, but usually only one has + * circuitry for shifts:-( this minor tweak inspires compiler + * to schedule shift instructions in a better way... + * + * + */ +#endif +#endif + +#ifndef ROTATE +#define ROTATE(a,n) (((a)<<(n))|(((a)&0xffffffff)>>(32-(n)))) +#endif + +/* + * Make some obvious choices. E.g., HASH_BLOCK_DATA_ORDER_ALIGNED + * and HASH_BLOCK_HOST_ORDER ought to be the same if input data + * and host are of the same "endianess". It's possible to mask + * this with blank #define HASH_BLOCK_DATA_ORDER though... + * + * + */ +#if defined(B_ENDIAN) +# if defined(DATA_ORDER_IS_BIG_ENDIAN) +# if !defined(HASH_BLOCK_DATA_ORDER_ALIGNED) && HASH_LONG_LOG2==2 +# define HASH_BLOCK_DATA_ORDER_ALIGNED HASH_BLOCK_HOST_ORDER +# endif +# endif +#elif defined(L_ENDIAN) +# if defined(DATA_ORDER_IS_LITTLE_ENDIAN) +# if !defined(HASH_BLOCK_DATA_ORDER_ALIGNED) && HASH_LONG_LOG2==2 +# define HASH_BLOCK_DATA_ORDER_ALIGNED HASH_BLOCK_HOST_ORDER +# endif +# endif +#endif + +#if !defined(HASH_BLOCK_DATA_ORDER_ALIGNED) +#ifndef HASH_BLOCK_DATA_ORDER +#error "HASH_BLOCK_DATA_ORDER must be defined!" +#endif +#endif + +#if defined(DATA_ORDER_IS_BIG_ENDIAN) + +#ifndef PEDANTIC +# if defined(__GNUC__) && __GNUC__>=2 && !defined(OPENSSL_NO_ASM) && \ + !defined(OPENSSL_NO_INLINE_ASM) +# if ((defined(__i386) || defined(__i386__)) && !defined(I386_ONLY)) || \ + (defined(__x86_64) || defined(__x86_64__)) + /* + * This gives ~30-40% performance improvement in SHA-256 compiled + * with gcc [on P4]. Well, first macro to be frank. We can pull + * this trick on x86* platforms only, because these CPUs can fetch + * unaligned data without raising an exception. + */ +# define HOST_c2l(c,l) ({ unsigned int r=*((const unsigned int *)(c)); \ + asm ("bswapl %0":"=r"(r):"0"(r)); \ + (c)+=4; (l)=r; }) +# define HOST_l2c(l,c) ({ unsigned int r=(l); \ + asm ("bswapl %0":"=r"(r):"0"(r)); \ + *((unsigned int *)(c))=r; (c)+=4; r; }) +# endif +# endif +#endif + +#ifndef HOST_c2l +#define HOST_c2l(c,l) (l =(((unsigned long)(*((c)++)))<<24), \ + l|=(((unsigned long)(*((c)++)))<<16), \ + l|=(((unsigned long)(*((c)++)))<< 8), \ + l|=(((unsigned long)(*((c)++))) ), \ + l) +#endif +#define HOST_p_c2l(c,l,n) { \ + switch (n) { \ + case 0: l =((unsigned long)(*((c)++)))<<24; \ + case 1: l|=((unsigned long)(*((c)++)))<<16; \ + case 2: l|=((unsigned long)(*((c)++)))<< 8; \ + case 3: l|=((unsigned long)(*((c)++))); \ + } } +#define HOST_p_c2l_p(c,l,sc,len) { \ + switch (sc) { \ + case 0: l =((unsigned long)(*((c)++)))<<24; \ + if (--len == 0) break; \ + case 1: l|=((unsigned long)(*((c)++)))<<16; \ + if (--len == 0) break; \ + case 2: l|=((unsigned long)(*((c)++)))<< 8; \ + } } +/* NOTE the pointer is not incremented at the end of this */ +#define HOST_c2l_p(c,l,n) { \ + l=0; (c)+=n; \ + switch (n) { \ + case 3: l =((unsigned long)(*(--(c))))<< 8; \ + case 2: l|=((unsigned long)(*(--(c))))<<16; \ + case 1: l|=((unsigned long)(*(--(c))))<<24; \ + } } +#ifndef HOST_l2c +#define HOST_l2c(l,c) (*((c)++)=(unsigned char)(((l)>>24)&0xff), \ + *((c)++)=(unsigned char)(((l)>>16)&0xff), \ + *((c)++)=(unsigned char)(((l)>> 8)&0xff), \ + *((c)++)=(unsigned char)(((l) )&0xff), \ + l) +#endif + +#elif defined(DATA_ORDER_IS_LITTLE_ENDIAN) + +#if defined(__i386) || defined(__i386__) || defined(__x86_64) || defined(__x86_64__) +# ifndef B_ENDIAN + /* See comment in DATA_ORDER_IS_BIG_ENDIAN section. */ +# define HOST_c2l(c,l) ((l)=*((const unsigned int *)(c)), (c)+=4, l) +# define HOST_l2c(l,c) (*((unsigned int *)(c))=(l), (c)+=4, l) +# endif +#endif + +#ifndef HOST_c2l +#define HOST_c2l(c,l) (l =(((unsigned long)(*((c)++))) ), \ + l|=(((unsigned long)(*((c)++)))<< 8), \ + l|=(((unsigned long)(*((c)++)))<<16), \ + l|=(((unsigned long)(*((c)++)))<<24), \ + l) +#endif +#define HOST_p_c2l(c,l,n) { \ + switch (n) { \ + case 0: l =((unsigned long)(*((c)++))); \ + case 1: l|=((unsigned long)(*((c)++)))<< 8; \ + case 2: l|=((unsigned long)(*((c)++)))<<16; \ + case 3: l|=((unsigned long)(*((c)++)))<<24; \ + } } +#define HOST_p_c2l_p(c,l,sc,len) { \ + switch (sc) { \ + case 0: l =((unsigned long)(*((c)++))); \ + if (--len == 0) break; \ + case 1: l|=((unsigned long)(*((c)++)))<< 8; \ + if (--len == 0) break; \ + case 2: l|=((unsigned long)(*((c)++)))<<16; \ + } } +/* NOTE the pointer is not incremented at the end of this */ +#define HOST_c2l_p(c,l,n) { \ + l=0; (c)+=n; \ + switch (n) { \ + case 3: l =((unsigned long)(*(--(c))))<<16; \ + case 2: l|=((unsigned long)(*(--(c))))<< 8; \ + case 1: l|=((unsigned long)(*(--(c)))); \ + } } +#ifndef HOST_l2c +#define HOST_l2c(l,c) (*((c)++)=(unsigned char)(((l) )&0xff), \ + *((c)++)=(unsigned char)(((l)>> 8)&0xff), \ + *((c)++)=(unsigned char)(((l)>>16)&0xff), \ + *((c)++)=(unsigned char)(((l)>>24)&0xff), \ + l) +#endif + +#endif + +/* + * Time for some action:-) + */ + +int HASH_UPDATE (HASH_CTX *c, const void *data_, size_t len) + { + const unsigned char *data=data_; + register HASH_LONG * p; + register HASH_LONG l; + size_t sw,sc,ew,ec; + + if (len==0) return 1; + + l=(c->Nl+(((HASH_LONG)len)<<3))&0xffffffffUL; + /* 95-05-24 eay Fixed a bug with the overflow handling, thanks to + * Wei Dai for pointing it out. */ + if (l < c->Nl) /* overflow */ + c->Nh++; + c->Nh+=(len>>29); /* might cause compiler warning on 16-bit */ + c->Nl=l; + + if (c->num != 0) + { + p=c->data; + sw=c->num>>2; + sc=c->num&0x03; + + if ((c->num+len) >= HASH_CBLOCK) + { + l=p[sw]; HOST_p_c2l(data,l,sc); p[sw++]=l; + for (; swnum); + c->num=0; + /* drop through and do the rest */ + } + else + { + c->num+=(unsigned int)len; + if ((sc+len) < 4) /* ugly, add char's to a word */ + { + l=p[sw]; HOST_p_c2l_p(data,l,sc,len); p[sw]=l; + } + else + { + ew=(c->num>>2); + ec=(c->num&0x03); + if (sc) + l=p[sw]; + HOST_p_c2l(data,l,sc); + p[sw++]=l; + for (; sw < ew; sw++) + { + HOST_c2l(data,l); p[sw]=l; + } + if (ec) + { + HOST_c2l_p(data,l,ec); p[sw]=l; + } + } + return 1; + } + } + + sw=len/HASH_CBLOCK; + if (sw > 0) + { +#if defined(HASH_BLOCK_DATA_ORDER_ALIGNED) + /* + * Note that HASH_BLOCK_DATA_ORDER_ALIGNED gets defined + * only if sizeof(HASH_LONG)==4. + */ + if ((((size_t)data)%4) == 0) + { + /* data is properly aligned so that we can cast it: */ + HASH_BLOCK_DATA_ORDER_ALIGNED (c,(const HASH_LONG *)data,sw); + sw*=HASH_CBLOCK; + data+=sw; + len-=sw; + } + else +#if !defined(HASH_BLOCK_DATA_ORDER) + while (sw--) + { + memcpy (p=c->data,data,HASH_CBLOCK); + HASH_BLOCK_DATA_ORDER_ALIGNED(c,p,1); + data+=HASH_CBLOCK; + len-=HASH_CBLOCK; + } +#endif +#endif +#if defined(HASH_BLOCK_DATA_ORDER) + { + HASH_BLOCK_DATA_ORDER(c,data,sw); + sw*=HASH_CBLOCK; + data+=sw; + len-=sw; + } +#endif + } + + if (len!=0) + { + p = c->data; + c->num = len; + ew=len>>2; /* words to copy */ + ec=len&0x03; + for (; ew; ew--,p++) + { + HOST_c2l(data,l); *p=l; + } + HOST_c2l_p(data,l,ec); + *p=l; + } + return 1; + } + + +void HASH_TRANSFORM (HASH_CTX *c, const unsigned char *data) + { +#if defined(HASH_BLOCK_DATA_ORDER_ALIGNED) + if ((((size_t)data)%4) == 0) + /* data is properly aligned so that we can cast it: */ + HASH_BLOCK_DATA_ORDER_ALIGNED (c,(const HASH_LONG *)data,1); + else +#if !defined(HASH_BLOCK_DATA_ORDER) + { + memcpy (c->data,data,HASH_CBLOCK); + HASH_BLOCK_DATA_ORDER_ALIGNED (c,c->data,1); + } +#endif +#endif +#if defined(HASH_BLOCK_DATA_ORDER) + HASH_BLOCK_DATA_ORDER (c,data,1); +#endif + } + + +int HASH_FINAL (unsigned char *md, HASH_CTX *c) + { + register HASH_LONG *p; + register unsigned long l; + register int i,j; + static const unsigned char end[4]={0x80,0x00,0x00,0x00}; + const unsigned char *cp=end; + + /* c->num should definitly have room for at least one more byte. */ + p=c->data; + i=c->num>>2; + j=c->num&0x03; + + l = (j==0) ? 0 : p[i]; + HOST_p_c2l(cp,l,j); p[i++]=l; /* i is the next 'undefined word' */ + + if (i>(HASH_LBLOCK-2)) /* save room for Nl and Nh */ + { + if (iNh; + p[HASH_LBLOCK-1]=c->Nl; +#elif defined(DATA_ORDER_IS_LITTLE_ENDIAN) + p[HASH_LBLOCK-2]=c->Nl; + p[HASH_LBLOCK-1]=c->Nh; +#endif + HASH_BLOCK_HOST_ORDER (c,p,1); + +#ifndef HASH_MAKE_STRING +#error "HASH_MAKE_STRING must be defined!" +#else + HASH_MAKE_STRING(c,md); +#endif + + c->num=0; + /* clear stuff, HASH_BLOCK may be leaving some stuff on the stack + * but I'm not worried :-) + OPENSSL_cleanse((void *)c,sizeof(HASH_CTX)); + */ + return 1; + } + +#ifndef MD32_REG_T +#define MD32_REG_T long +/* + * This comment was originaly written for MD5, which is why it + * discusses A-D. But it basically applies to all 32-bit digests, + * which is why it was moved to common header file. + * + * In case you wonder why A-D are declared as long and not + * as MD5_LONG. Doing so results in slight performance + * boost on LP64 architectures. The catch is we don't + * really care if 32 MSBs of a 64-bit register get polluted + * with eventual overflows as we *save* only 32 LSBs in + * *either* case. Now declaring 'em long excuses the compiler + * from keeping 32 MSBs zeroed resulting in 13% performance + * improvement under SPARC Solaris7/64 and 5% under AlphaLinux. + * Well, to be honest it should say that this *prevents* + * performance degradation. + * + * Apparently there're LP64 compilers that generate better + * code if A-D are declared int. Most notably GCC-x86_64 + * generates better code. + * + */ +#endif diff --git a/release/src-rt/bcmcrypto/md4.c b/release/src-rt/bcmcrypto/md4.c new file mode 100755 index 0000000000..8934ca07e0 --- /dev/null +++ b/release/src-rt/bcmcrypto/md4.c @@ -0,0 +1,287 @@ +/* + * md4.c, copied from src/router/ppp/pppd to src/bcmcrypto for general use, + * with a few casts added to make it usable with a fussy compiler. + * + * ******************************************************************** + * md4.c -- Implementation of MD4 Message Digest Algorithm ** + * Updated: 2/16/90 by Ronald L. Rivest ** + * (C) 1990 RSA Data Security, Inc. ** + * ******************************************************************** + * + * Copyright (C) 2010, Broadcom Corporation + * All Rights Reserved. + * + * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation; + * the contents of this file may not be disclosed to third parties, copied + * or duplicated in any form, in whole or in part, without the prior + * written permission of Broadcom Corporation. + * + * $Id: md4.c,v 1.5 2006-06-14 21:07:54 Exp $ + */ + +/* + * To use MD4: + * -- Include md4.h in your program + * -- Declare an MDstruct MD to hold the state of the digest + * computation. + * -- Initialize MD using MDbegin(&MD) + * -- For each full block (64 bytes) X you wish to process, call + * MD4Update(&MD,X,512) + * (512 is the number of bits in a full block.) + * -- For the last block (less than 64 bytes) you wish to process, + * MD4Update(&MD,X,n) + * where n is the number of bits in the partial block. A partial + * block terminates the computation, so every MD computation + * should terminate by processing a partial block, even if it + * has n = 0. + * -- The message digest is available in MD.buffer[0] ... + * MD.buffer[3]. (Least-significant byte of each word + * should be output first.) + * -- You can print out the digest using MDprint(&MD) + */ + +/* Implementation notes: + * This implementation assumes that ints are 32-bit quantities. + */ + +#include + +#include + +#ifndef BCMDRIVER +#include +#endif + +/* Compile-time declarations of MD4 "magic constants". */ +#define I0 0x67452301 /* Initial values for MD buffer */ +#define I1 0xefcdab89 +#define I2 0x98badcfe +#define I3 0x10325476 +#define C2 013240474631 /* round 2 constant = sqrt(2) in octal */ +#define C3 015666365641 /* round 3 constant = sqrt(3) in octal */ +/* C2 and C3 are from Knuth, The Art of Programming, Volume 2 + * (Seminumerical Algorithms), Second Edition (1981), Addison-Wesley. + * Table 2, page 660. + */ + +#define fs1 3 /* round 1 shift amounts */ +#define fs2 7 +#define fs3 11 +#define fs4 19 +#define gs1 3 /* round 2 shift amounts */ +#define gs2 5 +#define gs3 9 +#define gs4 13 +#define hs1 3 /* round 3 shift amounts */ +#define hs2 9 +#define hs3 11 +#define hs4 15 + +/* Compile-time macro declarations for MD4. + * Note: The "rot" operator uses the variable "tmp". + * It assumes tmp is declared as unsigned int, so that the >> + * operator will shift in zeros rather than extending the sign bit. + */ +#define f(X, Y, Z) ((X & Y) | ((~X) & Z)) +#define g(X, Y, Z) ((X & Y) | (X & Z) | (Y & Z)) +#define h(X, Y, Z) (X ^ Y ^ Z) +#define rot(X, S) (tmp = X, (tmp << S) | (tmp >> (32 - S))) +#define ff(A, B, C, D, i, s) A = rot((A + f(B, C, D) + X[i]), s) +#define gg(A, B, C, D, i, s) A = rot((A + g(B, C, D) + X[i] + C2), s) +#define hh(A, B, C, D, i, s) A = rot((A + h(B, C, D) + X[i] + C3), s) + + +/* MD4Init(MDp) + * Initialize message digest buffer MDp. + * This is a user-callable routine. + */ +void +BCMROMFN(MD4Init)(MD4_CTX *MDp) +{ + int i; + MDp->buffer[0] = I0; + MDp->buffer[1] = I1; + MDp->buffer[2] = I2; + MDp->buffer[3] = I3; + for (i = 0; i < 8; i++) + MDp->count[i] = 0; + MDp->done = 0; +} + +/* MDblock(MDp,X) + * Update message digest buffer MDp->buffer using 16-word data block X. + * Assumes all 16 words of X are full of data. + * Does not update MDp->count. + * This routine is not user-callable. + */ +static void +MDblock(MD4_CTX *MDp, unsigned char *Xb) +{ + register unsigned int tmp, A, B, C, D; + unsigned int X[16]; + int i; + + for (i = 0; i < 16; ++i) { + X[i] = Xb[0] + (Xb[1] << 8) + (Xb[2] << 16) + (Xb[3] << 24); + Xb += 4; + } + + A = MDp->buffer[0]; + B = MDp->buffer[1]; + C = MDp->buffer[2]; + D = MDp->buffer[3]; + /* Update the message digest buffer */ + ff(A, B, C, D, 0, fs1); /* Round 1 */ + ff(D, A, B, C, 1, fs2); + ff(C, D, A, B, 2, fs3); + ff(B, C, D, A, 3, fs4); + ff(A, B, C, D, 4, fs1); + ff(D, A, B, C, 5, fs2); + ff(C, D, A, B, 6, fs3); + ff(B, C, D, A, 7, fs4); + ff(A, B, C, D, 8, fs1); + ff(D, A, B, C, 9, fs2); + ff(C, D, A, B, 10, fs3); + ff(B, C, D, A, 11, fs4); + ff(A, B, C, D, 12, fs1); + ff(D, A, B, C, 13, fs2); + ff(C, D, A, B, 14, fs3); + ff(B, C, D, A, 15, fs4); + gg(A, B, C, D, 0, gs1); /* Round 2 */ + gg(D, A, B, C, 4, gs2); + gg(C, D, A, B, 8, gs3); + gg(B, C, D, A, 12, gs4); + gg(A, B, C, D, 1, gs1); + gg(D, A, B, C, 5, gs2); + gg(C, D, A, B, 9, gs3); + gg(B, C, D, A, 13, gs4); + gg(A, B, C, D, 2, gs1); + gg(D, A, B, C, 6, gs2); + gg(C, D, A, B, 10, gs3); + gg(B, C, D, A, 14, gs4); + gg(A, B, C, D, 3, gs1); + gg(D, A, B, C, 7, gs2); + gg(C, D, A, B, 11, gs3); + gg(B, C, D, A, 15, gs4); + hh(A, B, C, D, 0, hs1); /* Round 3 */ + hh(D, A, B, C, 8, hs2); + hh(C, D, A, B, 4, hs3); + hh(B, C, D, A, 12, hs4); + hh(A, B, C, D, 2, hs1); + hh(D, A, B, C, 10, hs2); + hh(C, D, A, B, 6, hs3); + hh(B, C, D, A, 14, hs4); + hh(A, B, C, D, 1, hs1); + hh(D, A, B, C, 9, hs2); + hh(C, D, A, B, 5, hs3); + hh(B, C, D, A, 13, hs4); + hh(A, B, C, D, 3, hs1); + hh(D, A, B, C, 11, hs2); + hh(C, D, A, B, 7, hs3); + hh(B, C, D, A, 15, hs4); + MDp->buffer[0] += A; + MDp->buffer[1] += B; + MDp->buffer[2] += C; + MDp->buffer[3] += D; +} + +/* MD4Update(MDp,X,count) + * Input: X -- a pointer to an array of unsigned characters. + * count -- the number of bits of X to use. + * (if not a multiple of 8, uses high bits of last byte.) + * Update MDp using the number of bits of X given by count. + * This is the basic input routine for an MD4 user. + * The routine completes the MD computation when count < 512, so + * every MD computation should end with one call to MD4Update with a + * count less than 512. A call with count 0 will be ignored if the + * MD has already been terminated (done != 0), so an extra call with + * count 0 can be given as a "courtesy close" to force termination + * if desired. + */ +void +BCMROMFN(MD4Update)(MD4_CTX *MDp, unsigned char *X, unsigned int count) +{ + unsigned int i, tmp, bit, byte, mask; + unsigned char XX[64]; + unsigned char *p; + + /* return with no error if this is a courtesy close with count + * zero and MDp->done is true. + */ + if (count == 0 && MDp->done) return; + /* check to see if MD is already done and report error */ + if (MDp->done) { + return; + } + + /* Add count to MDp->count */ + tmp = count; + p = MDp->count; + while (tmp) { + tmp += *p; + *p++ = (unsigned char) tmp; + tmp = tmp >> 8; + } + + /* Process data */ + if (count == 512) { + /* Full block of data to handle */ + MDblock(MDp, X); + } else if (count > 512) { + /* Check for count too large */ + return; + } else { + /* partial block -- must be last block so finish up */ + + /* Find out how many bytes and residual bits there are */ + byte = count >> 3; + bit = count & 7; + /* Copy X into XX since we need to modify it */ + for (i = 0; i <= byte; i++) + XX[i] = X[i]; + for (i = byte + 1; i < 64; i++) + XX[i] = 0; + /* Add padding '1' bit and low-order zeros in last byte */ + mask = 1 << (7 - bit); + XX[byte] = (XX[byte] | mask) & ~(mask - 1); + /* If room for bit count, finish up with this block */ + if (byte <= 55) { + for (i = 0; i < 8; i++) + XX[56 + i] = MDp->count[i]; + MDblock(MDp, XX); + } else { + /* need to do two blocks to finish up */ + MDblock(MDp, XX); + for (i = 0; i < 56; i++) + XX[i] = 0; + for (i = 0; i < 8; i++) + XX[56 + i] = MDp->count[i]; + MDblock(MDp, XX); + } + /* Set flag saying we're done with MD computation */ + MDp->done = 1; + } +} + +/* + * Finish up MD4 computation and return message digest. + */ +void +BCMROMFN(MD4Final)(unsigned char *buf, MD4_CTX *MD) +{ + int i, j; + unsigned int w; + + MD4Update(MD, NULL, 0); + for (i = 0; i < 4; ++i) { + w = MD->buffer[i]; + for (j = 0; j < 4; ++j) { + *buf++ = (unsigned char) w; + w >>= 8; + } + } +} + +/* + * End of md4.c + */ diff --git a/release/src-rt/bcmcrypto/md5.c b/release/src-rt/bcmcrypto/md5.c new file mode 100755 index 0000000000..dd3f444bf2 --- /dev/null +++ b/release/src-rt/bcmcrypto/md5.c @@ -0,0 +1,323 @@ +/* + * md5.c, copied from src/router/ppp/pppd to src/bcmcrypto for general use, + * with a few casts added to make it usable with a fussy compiler. + * + * md5.c -- the source code for MD5 routines + * RSA Data Security, Inc. MD5 Message-Digest Algorithm + * Created: 2/17/90 RLR + * Revised: 1/91 SRD,AJ,BSK,JT Reference C ver., 7/10 constant corr. + */ + +/* + * Copyright (C) 1990, RSA Data Security, Inc. All rights reserved. + * + * License to copy and use this software is granted provided that + * it is identified as the "RSA Data Security, Inc. MD5 Message- + * Digest Algorithm" in all material mentioning or referencing this + * software or this function. + * + * License is also granted to make and use derivative works + * provided that such works are identified as "derived from the RSA + * Data Security, Inc. MD5 Message-Digest Algorithm" in all + * material mentioning or referencing the derived work. + * + * RSA Data Security, Inc. makes no representations concerning + * either the merchantability of this software or the suitability + * of this software for any particular purpose. It is provided "as + * is" without express or implied warranty of any kind. + * + * These notices must be retained in any copies of any part of this + * documentation and/or software. + * + * Copyright (C) 2010, Broadcom Corporation + * All Rights Reserved. + * + * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation; + * the contents of this file may not be disclosed to third parties, copied + * or duplicated in any form, in whole or in part, without the prior + * written permission of Broadcom Corporation. + * + * $Id: md5.c,v 1.12 2007-03-26 17:28:56 Exp $ + */ + +#ifdef BCMDRIVER +#include +#include +#else +#if defined(__GNUC__) +#include +#endif +#endif /* BCMDRIVER */ + +#include + +typedef uint32 UINT4; + +/* + * Message-digest routines: + * To form the message digest for a message M + * (1) Initialize a context buffer mdContext using MD5Init + * (2) Call MD5Update on mdContext and M + * (3) Call MD5Final on mdContext + * The message digest is now in mdContext->digest[0...15] + * + */ + +/* forward declaration */ +static void Transform(UINT4 *buf, UINT4 *in); + +static const unsigned char PADDING[64] = { + 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 +}; + +/* F, G, H and I are basic MD5 functions */ +#define F(x, y, z) (((x) & (y)) | ((~x) & (z))) +#define G(x, y, z) (((x) & (z)) | ((y) & (~z))) +#define H(x, y, z) ((x) ^ (y) ^ (z)) +#define I(x, y, z) ((y) ^ ((x) | (~z))) + +/* ROTATE_LEFT rotates x left n bits */ +#define ROTATE_LEFT(x, n) (((x) << (n)) | ((x) >> (32-(n)))) + +/* FF, GG, HH, and II transformations for rounds 1, 2, 3, and 4 */ +/* Rotation is separate from addition to prevent recomputation */ +#define FF(a, b, c, d, x, s, ac) \ +{ \ + (a) += F((b), (c), (d)) + (x) + (UINT4)(ac); \ + (a) = ROTATE_LEFT((a), (s)); \ + (a) += (b); \ +} +#define GG(a, b, c, d, x, s, ac) \ +{ \ + (a) += G((b), (c), (d)) + (x) + (UINT4)(ac); \ + (a) = ROTATE_LEFT((a), (s)); \ + (a) += (b); \ +} +#define HH(a, b, c, d, x, s, ac) \ +{ \ + (a) += H((b), (c), (d)) + (x) + (UINT4)(ac); \ + (a) = ROTATE_LEFT((a), (s)); \ + (a) += (b); \ +} +#define II(a, b, c, d, x, s, ac) \ +{ \ + (a) += I((b), (c), (d)) + (x) + (UINT4)(ac); \ + (a) = ROTATE_LEFT((a), (s)); \ + (a) += (b); \ +} + +#ifndef UL +#ifdef __STDC__ +#define UL(x) x##U +#else +#define UL(x) x +#endif +#endif /* !UL */ + +/* The routine MD5Init initializes the message-digest context + * mdContext. All fields are set to zero. + */ +void +BCMROMFN(MD5Init)(MD5_CTX *mdContext) +{ + mdContext->i[0] = mdContext->i[1] = (UINT4)0; + +/* Load magic initialization constants. + */ + mdContext->buf[0] = (UINT4)0x67452301; + mdContext->buf[1] = (UINT4)0xefcdab89; + mdContext->buf[2] = (UINT4)0x98badcfe; + mdContext->buf[3] = (UINT4)0x10325476; +} + +/* The routine MD5Update updates the message-digest context to + * account for the presence of each of the characters inBuf[0..inLen-1] + * in the message whose digest is being computed. + */ +void +BCMROMFN(MD5Update)(MD5_CTX *mdContext, const unsigned char *inBuf, unsigned int inLen) +{ + UINT4 in[16]; + int mdi; + unsigned int i, ii; + +/* compute number of bytes mod 64 */ + mdi = (int)((mdContext->i[0] >> 3) & 0x3F); + +/* update number of bits */ + if ((mdContext->i[0] + ((UINT4)inLen << 3)) < mdContext->i[0]) + mdContext->i[1]++; + mdContext->i[0] += ((UINT4)inLen << 3); + mdContext->i[1] += ((UINT4)inLen >> 29); + + while (inLen--) { +/* add new character to buffer, increment mdi */ + mdContext->in[mdi++] = *inBuf++; + +/* transform if necessary */ + if (mdi == 0x40) { + for (i = 0, ii = 0; i < 16; i++, ii += 4) + in[i] = (((UINT4)mdContext->in[ii+3]) << 24) | + (((UINT4)mdContext->in[ii+2]) << 16) | + (((UINT4)mdContext->in[ii+1]) << 8) | + ((UINT4)mdContext->in[ii]); + Transform(mdContext->buf, in); + mdi = 0; + } + } +} + +/* The routine MD5Final terminates the message-digest computation and + * ends with the desired message digest in mdContext->digest[0...15]. + */ +void +BCMROMFN(MD5Final)(unsigned char *hash, MD5_CTX *mdContext) +{ + UINT4 in[16]; + int mdi; + unsigned int i, ii; + unsigned int padLen; + +/* save number of bits */ + in[14] = mdContext->i[0]; + in[15] = mdContext->i[1]; + +/* compute number of bytes mod 64 */ + mdi = (int)((mdContext->i[0] >> 3) & 0x3F); + +/* pad out to 56 mod 64 */ + padLen = (mdi < 56) ? (56 - mdi) : (120 - mdi); + MD5Update(mdContext, PADDING, padLen); + +/* append length in bits and transform */ + for (i = 0, ii = 0; i < 14; i++, ii += 4) + in[i] = (((UINT4)mdContext->in[ii+3]) << 24) | + (((UINT4)mdContext->in[ii+2]) << 16) | + (((UINT4)mdContext->in[ii+1]) << 8) | + ((UINT4)mdContext->in[ii]); + Transform(mdContext->buf, in); + +/* store buffer in digest */ + for (i = 0, ii = 0; i < 4; i++, ii += 4) { + mdContext->digest[ii] = (unsigned char)(mdContext->buf[i] & 0xFF); + mdContext->digest[ii+1] = + (unsigned char)((mdContext->buf[i] >> 8) & 0xFF); + mdContext->digest[ii+2] = + (unsigned char)((mdContext->buf[i] >> 16) & 0xFF); + mdContext->digest[ii+3] = + (unsigned char)((mdContext->buf[i] >> 24) & 0xFF); + } + memcpy((void *)hash, mdContext->digest, 16); +} + +/* Basic MD5 step. Transforms buf based on in. + */ +static void +Transform(UINT4 *buf, UINT4 *in) +{ + UINT4 a = buf[0], b = buf[1], c = buf[2], d = buf[3]; + +/* Round 1 */ +#define S11 7 +#define S12 12 +#define S13 17 +#define S14 22 + FF(a, b, c, d, in[ 0], S11, UL(3614090360)); /* 1 */ + FF(d, a, b, c, in[ 1], S12, UL(3905402710)); /* 2 */ + FF(c, d, a, b, in[ 2], S13, UL(606105819)); /* 3 */ + FF(b, c, d, a, in[ 3], S14, UL(3250441966)); /* 4 */ + FF(a, b, c, d, in[ 4], S11, UL(4118548399)); /* 5 */ + FF(d, a, b, c, in[ 5], S12, UL(1200080426)); /* 6 */ + FF(c, d, a, b, in[ 6], S13, UL(2821735955)); /* 7 */ + FF(b, c, d, a, in[ 7], S14, UL(4249261313)); /* 8 */ + FF(a, b, c, d, in[ 8], S11, UL(1770035416)); /* 9 */ + FF(d, a, b, c, in[ 9], S12, UL(2336552879)); /* 10 */ + FF(c, d, a, b, in[10], S13, UL(4294925233)); /* 11 */ + FF(b, c, d, a, in[11], S14, UL(2304563134)); /* 12 */ + FF(a, b, c, d, in[12], S11, UL(1804603682)); /* 13 */ + FF(d, a, b, c, in[13], S12, UL(4254626195)); /* 14 */ + FF(c, d, a, b, in[14], S13, UL(2792965006)); /* 15 */ + FF(b, c, d, a, in[15], S14, UL(1236535329)); /* 16 */ + +/* Round 2 */ +#define S21 5 +#define S22 9 +#define S23 14 +#define S24 20 + GG(a, b, c, d, in[ 1], S21, UL(4129170786)); /* 17 */ + GG(d, a, b, c, in[ 6], S22, UL(3225465664)); /* 18 */ + GG(c, d, a, b, in[11], S23, UL(643717713)); /* 19 */ + GG(b, c, d, a, in[ 0], S24, UL(3921069994)); /* 20 */ + GG(a, b, c, d, in[ 5], S21, UL(3593408605)); /* 21 */ + GG(d, a, b, c, in[10], S22, UL( 38016083)); /* 22 */ + GG(c, d, a, b, in[15], S23, UL(3634488961)); /* 23 */ + GG(b, c, d, a, in[ 4], S24, UL(3889429448)); /* 24 */ + GG(a, b, c, d, in[ 9], S21, UL(568446438)); /* 25 */ + GG(d, a, b, c, in[14], S22, UL(3275163606)); /* 26 */ + GG(c, d, a, b, in[ 3], S23, UL(4107603335)); /* 27 */ + GG(b, c, d, a, in[ 8], S24, UL(1163531501)); /* 28 */ + GG(a, b, c, d, in[13], S21, UL(2850285829)); /* 29 */ + GG(d, a, b, c, in[ 2], S22, UL(4243563512)); /* 30 */ + GG(c, d, a, b, in[ 7], S23, UL(1735328473)); /* 31 */ + GG(b, c, d, a, in[12], S24, UL(2368359562)); /* 32 */ + +/* Round 3 */ +#define S31 4 +#define S32 11 +#define S33 16 +#define S34 23 + HH(a, b, c, d, in[ 5], S31, UL(4294588738)); /* 33 */ + HH(d, a, b, c, in[ 8], S32, UL(2272392833)); /* 34 */ + HH(c, d, a, b, in[11], S33, UL(1839030562)); /* 35 */ + HH(b, c, d, a, in[14], S34, UL(4259657740)); /* 36 */ + HH(a, b, c, d, in[ 1], S31, UL(2763975236)); /* 37 */ + HH(d, a, b, c, in[ 4], S32, UL(1272893353)); /* 38 */ + HH(c, d, a, b, in[ 7], S33, UL(4139469664)); /* 39 */ + HH(b, c, d, a, in[10], S34, UL(3200236656)); /* 40 */ + HH(a, b, c, d, in[13], S31, UL(681279174)); /* 41 */ + HH(d, a, b, c, in[ 0], S32, UL(3936430074)); /* 42 */ + HH(c, d, a, b, in[ 3], S33, UL(3572445317)); /* 43 */ + HH(b, c, d, a, in[ 6], S34, UL( 76029189)); /* 44 */ + HH(a, b, c, d, in[ 9], S31, UL(3654602809)); /* 45 */ + HH(d, a, b, c, in[12], S32, UL(3873151461)); /* 46 */ + HH(c, d, a, b, in[15], S33, UL(530742520)); /* 47 */ + HH(b, c, d, a, in[ 2], S34, UL(3299628645)); /* 48 */ + +/* Round 4 */ +#define S41 6 +#define S42 10 +#define S43 15 +#define S44 21 + II(a, b, c, d, in[ 0], S41, UL(4096336452)); /* 49 */ + II(d, a, b, c, in[ 7], S42, UL(1126891415)); /* 50 */ + II(c, d, a, b, in[14], S43, UL(2878612391)); /* 51 */ + II(b, c, d, a, in[ 5], S44, UL(4237533241)); /* 52 */ + II(a, b, c, d, in[12], S41, UL(1700485571)); /* 53 */ + II(d, a, b, c, in[ 3], S42, UL(2399980690)); /* 54 */ + II(c, d, a, b, in[10], S43, UL(4293915773)); /* 55 */ + II(b, c, d, a, in[ 1], S44, UL(2240044497)); /* 56 */ + II(a, b, c, d, in[ 8], S41, UL(1873313359)); /* 57 */ + II(d, a, b, c, in[15], S42, UL(4264355552)); /* 58 */ + II(c, d, a, b, in[ 6], S43, UL(2734768916)); /* 59 */ + II(b, c, d, a, in[13], S44, UL(1309151649)); /* 60 */ + II(a, b, c, d, in[ 4], S41, UL(4149444226)); /* 61 */ + II(d, a, b, c, in[11], S42, UL(3174756917)); /* 62 */ + II(c, d, a, b, in[ 2], S43, UL(718787259)); /* 63 */ + II(b, c, d, a, in[ 9], S44, UL(3951481745)); /* 64 */ + + buf[0] += a; + buf[1] += b; + buf[2] += c; + buf[3] += d; +} + +/* + * End of md5.c + */ diff --git a/release/src-rt/bcmcrypto/passhash.c b/release/src-rt/bcmcrypto/passhash.c new file mode 100755 index 0000000000..d8ac4079e7 --- /dev/null +++ b/release/src-rt/bcmcrypto/passhash.c @@ -0,0 +1,274 @@ +/* + * passhash.c + * Perform password to key hash algorithm as defined in WPA and 802.11i + * specifications + * + * Copyright (C) 2010, Broadcom Corporation + * All Rights Reserved. + * + * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation; + * the contents of this file may not be disclosed to third parties, copied + * or duplicated in any form, in whole or in part, without the prior + * written permission of Broadcom Corporation. + * + * $Id: passhash.c,v 1.18.230.2 2010-12-01 23:33:28 Exp $ + */ + +#include +#include +#include + +#ifdef BCMDRIVER +#include +#else +#if defined(__GNUC__) +extern void bcopy(const void *src, void *dst, size_t len); +extern int bcmp(const void *b1, const void *b2, size_t len); +extern void bzero(void *b, size_t len); +extern size_t strlen(const char *s); +#else +#define bcopy(src, dst, len) memcpy((dst), (src), (len)) +#define bcmp(b1, b2, len) memcmp((b1), (b2), (len)) +#define bzero(b, len) memset((b), 0, (len)) +#endif +#endif /* BCMDRIVER */ + +#ifdef BCMPASSHASH_TEST +#include +void prhash(char *password, int passlen, unsigned char *ssid, int ssidlen, unsigned char *output); +#define dbg(args) printf args +#endif /* BCMPASSHASH_TEST */ + +/* F(P, S, c, i) = U1 xor U2 xor ... Uc + * U1 = PRF(P, S || Int(i) + * U2 = PRF(P, U1) + * Uc = PRF(P, Uc-1) + */ +static void +F(char *password, int passlen, unsigned char *ssid, int ssidlength, int iterations, int count, + unsigned char *output) +{ + unsigned char digest[36], digest1[SHA1HashSize]; + int i, j; + + /* U1 = PRF(P, S || int(i)) */ + if (ssidlength > 32) + ssidlength = 32; + bcopy(ssid, digest, ssidlength); + digest[ssidlength] = (unsigned char)((count>>24) & 0xff); + digest[ssidlength+1] = (unsigned char)((count>>16) & 0xff); + digest[ssidlength+2] = (unsigned char)((count>>8) & 0xff); + digest[ssidlength+3] = (unsigned char)(count & 0xff); + hmac_sha1(digest, ssidlength+4, (unsigned char *)password, passlen, digest1); + + /* output = U1 */ + bcopy(digest1, output, SHA1HashSize); + + for (i = 1; i < iterations; i++) { + /* Un = PRF(P, Un-1) */ + hmac_sha1(digest1, SHA1HashSize, (unsigned char *)password, passlen, digest); + bcopy(digest, digest1, SHA1HashSize); + + /* output = output xor Un */ + for (j = 0; j < SHA1HashSize; j++) { + output[j] ^= digest[j]; + } + } +} + +/* passhash: perform passwork->key hash algorithm as defined in WPA and 802.11i + * specifications. + * password is an ascii string of 8 to 63 characters in length + * ssid is up to 32 bytes + * ssidlen is the length of ssid in bytes + * output must be at lest 40 bytes long, and returns a 256 bit key + * returns 0 on success, non-zero on failure + */ +int +BCMROMFN(passhash)(char *password, int passlen, unsigned char *ssid, int ssidlen, + unsigned char *output) +{ + if ((strlen(password) < 8) || (strlen(password) > 63) || (ssidlen > 32)) return 1; + + F(password, passlen, ssid, ssidlen, 4096, 1, output); + F(password, passlen, ssid, ssidlen, 4096, 2, &output[SHA1HashSize]); + return 0; +} + +static void +init_F(char *password, int passlen, unsigned char *ssid, int ssidlength, + int count, unsigned char *lastdigest, unsigned char *output) +{ + unsigned char digest[36]; + + /* U0 = PRF(P, S || int(i)) */ + /* output = U0 */ + if (ssidlength > 32) + ssidlength = 32; + bcopy(ssid, digest, ssidlength); + digest[ssidlength] = (unsigned char)((count>>24) & 0xff); + digest[ssidlength+1] = (unsigned char)((count>>16) & 0xff); + digest[ssidlength+2] = (unsigned char)((count>>8) & 0xff); + digest[ssidlength+3] = (unsigned char)(count & 0xff); + hmac_sha1(digest, ssidlength+4, (unsigned char *)password, passlen, output); + + /* Save U0 for next PRF() */ + bcopy(output, lastdigest, SHA1HashSize); +} + +static void +do_F(char *password, int passlen, int iterations, unsigned char *lastdigest, unsigned char *output) +{ + unsigned char digest[SHA1HashSize]; + int i, j; + + for (i = 0; i < iterations; i++) { + /* Un = PRF(P, Un-1) */ + hmac_sha1(lastdigest, SHA1HashSize, (unsigned char *)password, passlen, digest); + /* output = output xor Un */ + for (j = 0; j < SHA1HashSize; j++) + output[j] ^= digest[j]; + + /* Save Un for next PRF() */ + bcopy(digest, lastdigest, SHA1HashSize); + } +} + +/* passhash: Perform passwork to key hash algorithm as defined in WPA and 802.11i + * specifications. We are breaking this lengthy process into smaller pieces. Users + * are responsible for making sure password length is between 8 and 63 inclusive. + * + * init_passhash: initialize passhash_t structure. + * do_passhash: advance states in passhash_t structure and return 0 to indicate + * it is done and 1 to indicate more to be done. + * get_passhash: copy passhash result to output buffer. + */ +int +init_passhash(passhash_t *ph, + char *password, int passlen, unsigned char *ssid, int ssidlen) +{ + if (strlen(password) < 8 || strlen(password) > 63) + return -1; + + bzero(ph, sizeof(*ph)); + ph->count = 1; + ph->password = password; + ph->passlen = passlen; + ph->ssid = ssid; + ph->ssidlen = ssidlen; + + return 0; +} + +int +do_passhash(passhash_t *ph, int iterations) +{ + unsigned char *output; + + if (ph->count > 2) + return -1; + output = ph->output + SHA1HashSize * (ph->count - 1); + if (ph->iters == 0) { + init_F(ph->password, ph->passlen, ph->ssid, ph->ssidlen, + ph->count, ph->digest, output); + ph->iters = 1; + iterations --; + } + if (ph->iters + iterations > 4096) + iterations = 4096 - ph->iters; + do_F(ph->password, ph->passlen, iterations, ph->digest, output); + ph->iters += iterations; + if (ph->iters == 4096) { + ph->count ++; + ph->iters = 0; + if (ph->count > 2) + return 0; + } + return 1; +} + +int +get_passhash(passhash_t *ph, unsigned char *output, int outlen) +{ + if (ph->count > 2 && outlen <= (int)sizeof(ph->output)) { + bcopy(ph->output, output, outlen); + return 0; + } + return -1; +} + +#ifdef BCMPASSHASH_TEST +void +prhash(char *password, int passlen, unsigned char *ssid, int ssidlen, unsigned char *output) +{ + int k; + printf("pass\n\t%s\nssid(hex)\n\t", password); + for (k = 0; k < ssidlen; k++) { + printf("%02x ", ssid[k]); + if (!((k+1)%16)) printf("\n\t"); + } + printf("\nhash\n\t"); + for (k = 0; k < 2 * SHA1HashSize; k++) { + printf("%02x ", output[k]); + if (!((k + 1) % SHA1HashSize)) printf("\n\t"); + } + printf("\n"); +} + +#include "passhash_vectors.h" + +int main(int argc, char **argv) +{ + unsigned char output[2*SHA1HashSize]; + int retv, k, fail = 0, fail1 = 0; + passhash_t passhash_states; + + dbg(("%s: testing passhash()\n", *argv)); + + for (k = 0; k < NUM_PASSHASH_VECTORS; k++) { + printf("Passhash test %d:\n", k); + bzero(output, sizeof(output)); + retv = passhash(passhash_vec[k].pass, passhash_vec[k].pl, + passhash_vec[k].salt, passhash_vec[k].sl, output); + prhash(passhash_vec[k].pass, passhash_vec[k].pl, + passhash_vec[k].salt, passhash_vec[k].sl, output); + + if (retv) { + dbg(("%s: passhash() test %d returned error\n", *argv, k)); + fail++; + } + if (bcmp(output, passhash_vec[k].ref, 2*SHA1HashSize) != 0) { + dbg(("%s: passhash test %d reference mismatch\n", *argv, k)); + fail++; + } + } + + dbg(("%s: %s\n", *argv, fail?"FAILED":"PASSED")); + + dbg(("%s: testing init_passhash()/do_passhash()/get_passhash()\n", *argv)); + + for (k = 0; k < NUM_PASSHASH_VECTORS; k++) { + printf("Passhash test %d:\n", k); + init_passhash(&passhash_states, + passhash_vec[k].pass, passhash_vec[k].pl, + passhash_vec[k].salt, passhash_vec[k].sl); + while ((retv = do_passhash(&passhash_states, 100)) > 0) + ; + get_passhash(&passhash_states, output, sizeof(output)); + prhash(passhash_vec[k].pass, passhash_vec[k].pl, + passhash_vec[k].salt, passhash_vec[k].sl, output); + + if (retv < 0) { + dbg(("%s: passhash() test %d returned error\n", *argv, k)); + fail1++; + } + if (bcmp(output, passhash_vec[k].ref, 2*SHA1HashSize) != 0) { + dbg(("%s: passhash test %d reference mismatch\n", *argv, k)); + fail1++; + } + } + + dbg(("%s: %s\n", *argv, fail1?"FAILED":"PASSED")); + return (fail+fail1); +} +#endif /* BCMPASSHASH_TEST */ diff --git a/release/src-rt/bcmcrypto/passhash_vectors.h b/release/src-rt/bcmcrypto/passhash_vectors.h new file mode 100755 index 0000000000..a697269aa0 --- /dev/null +++ b/release/src-rt/bcmcrypto/passhash_vectors.h @@ -0,0 +1,268 @@ +/* + * passhash_vectors.h + * Password Hash test vectors + * + * Copyright (C) 2010, Broadcom Corporation + * All Rights Reserved. + * + * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation; + * the contents of this file may not be disclosed to third parties, copied + * or duplicated in any form, in whole or in part, without the prior + * written permission of Broadcom Corporation. + * + * $Id: passhash_vectors.h,v 1.4 2007-01-11 19:43:26 Exp $ + */ + +#include + +/* Make sure all passphrases and salts are null-terminated so we can get + * the sizes using sizeof(x) - 1 + */ +char pass_01[] = "password"; + +uint8 salt_01[] = "IEEE"; + +uint8 ref_01[] = { + 0xf4, 0x2c, 0x6f, 0xc5, 0x2d, 0xf0, 0xeb, 0xef, + 0x9e, 0xbb, 0x4b, 0x90, 0xb3, 0x8a, 0x5f, 0x90, + 0x2e, 0x83, 0xfe, 0x1b, 0x13, 0x5a, 0x70, 0xe2, + 0x3a, 0xed, 0x76, 0x2e, 0x97, 0x10, 0xa1, 0x2e, + 0x48, 0x88, 0xf1, 0x97, 0xa3, 0x68, 0x04, 0x15 + }; + +char pass_02[] = "ThisIsAPassword"; + +uint8 salt_02[] = "ThisIsASSID"; + +uint8 ref_02[] = { + 0x0d, 0xc0, 0xd6, 0xeb, 0x90, 0x55, 0x5e, 0xd6, + 0x41, 0x97, 0x56, 0xb9, 0xa1, 0x5e, 0xc3, 0xe3, + 0x20, 0x9b, 0x63, 0xdf, 0x70, 0x7d, 0xd5, 0x08, + 0xd1, 0x45, 0x81, 0xf8, 0x98, 0x27, 0x21, 0xaf, + 0xca, 0xc2, 0x80, 0x6d, 0xe3, 0xfd, 0x47, 0xa8 + }; + +char pass_03[] = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"; + +uint8 salt_03[] = "ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ"; + +uint8 ref_03[] = { + 0xbe, 0xcb, 0x93, 0x86, 0x6b, 0xb8, 0xc3, 0x83, + 0x2c, 0xb7, 0x77, 0xc2, 0xf5, 0x59, 0x80, 0x7c, + 0x8c, 0x59, 0xaf, 0xcb, 0x6e, 0xae, 0x73, 0x48, + 0x85, 0x00, 0x13, 0x00, 0xa9, 0x81, 0xcc, 0x62, + 0x1d, 0x20, 0xbd, 0x88, 0x0f, 0x55, 0x2c, 0xbb + }; + +char pass_04[] = "password"; + +uint8 salt_04[] = { 0x12, 0x34, 0x56, 0x78, 0x78, 0x56, 0x34, 0x12, 0x00 }; + +uint8 ref_04[] = { + 0x08, 0x79, 0xef, 0x3a, 0x9e, 0xa7, 0xe0, 0x66, + 0x05, 0x39, 0x7f, 0xb4, 0x11, 0xb8, 0xf9, 0xf7, + 0x90, 0x7b, 0x24, 0xd2, 0xa0, 0x31, 0x01, 0x33, + 0x31, 0x40, 0x8a, 0x42, 0xde, 0xe2, 0x28, 0x26, + 0x1e, 0x3d, 0x64, 0x13, 0xc0, 0xb0, 0xe9, 0x8f + }; + +char pass_05[] = "passphrase!"; + +uint8 salt_05[] = "wpa_psk"; + +uint8 ref_05[] = { + 0x08, 0xa3, 0x94, 0x8b, 0x74, 0x8d, 0xda, 0x04, + 0xdf, 0xd2, 0x4b, 0x4a, 0xda, 0x23, 0x1e, 0xbf, + 0xe5, 0xdd, 0x38, 0xd3, 0x9a, 0xdd, 0x54, 0xa6, + 0xc9, 0xed, 0x2a, 0x6c, 0x2c, 0x62, 0xc5, 0x15, + 0xa2, 0xb7, 0x3d, 0xc3, 0xd9, 0x53, 0x0f, 0xf0 + }; + +char pass_06[] = "PASSPHRASE"; + +uint8 salt_06[] = "wpa_psk"; + +uint8 ref_06[] = { + 0x2c, 0x84, 0x30, 0x3a, 0x59, 0x3b, 0x91, 0x7f, + 0x5a, 0x9f, 0x53, 0x73, 0xc8, 0x5f, 0xe0, 0x1c, + 0x57, 0x87, 0xda, 0x02, 0xb0, 0x3f, 0xc0, 0x3c, + 0x09, 0x76, 0xe1, 0x52, 0x6f, 0x9d, 0xcc, 0x13, + 0x9d, 0xb4, 0x79, 0x46, 0x98, 0xdd, 0x51, 0x63 + }; + +char pass_07[] = "PASSPHRASE1"; + +uint8 salt_07[] = "wpa_psk"; + +uint8 ref_07[] = { + 0xf9, 0xdb, 0xe5, 0x4b, 0x58, 0xb2, 0xb0, 0xce, + 0x8f, 0x6e, 0xa3, 0xe4, 0xa4, 0xcd, 0xc6, 0x4b, + 0x11, 0x24, 0xab, 0x80, 0x32, 0x69, 0x32, 0x8e, + 0xea, 0xef, 0x9c, 0x26, 0x65, 0x2d, 0x9f, 0x60, + 0x49, 0x52, 0x48, 0x47, 0x02, 0x1d, 0x75, 0xe8 + }; + +char pass_08[] = "PASSPHRASE11"; + +uint8 salt_08[] = "wpa_psk"; + +uint8 ref_08[] = { + 0x65, 0x4d, 0x60, 0xa5, 0x24, 0xb7, 0xa8, 0xec, + 0x12, 0xa5, 0xeb, 0x01, 0x9d, 0xa9, 0xda, 0x1f, + 0xd0, 0x82, 0x92, 0x8f, 0xfe, 0x13, 0x6f, 0x1a, + 0x9b, 0x8a, 0x7f, 0xe9, 0x92, 0x74, 0xba, 0xbb, + 0x86, 0xef, 0x50, 0x50, 0x8d, 0xe3, 0x59, 0xc1 + }; + +char pass_09[] = "PASSPHRASE111"; + +uint8 salt_09[] = "wpa_psk"; + +uint8 ref_09[] = { + 0xac, 0xb8, 0x2e, 0xfd, 0x02, 0xf1, 0xa3, 0x6c, + 0x99, 0xe9, 0x21, 0x16, 0x30, 0xcf, 0x11, 0x96, + 0x7e, 0x26, 0x0b, 0x01, 0x26, 0xb0, 0x12, 0x45, + 0xc6, 0xd2, 0x65, 0xed, 0x1c, 0x40, 0xe2, 0xf9, + 0x3a, 0xc4, 0x5c, 0x80, 0x5a, 0xf9, 0x48, 0xe4 + }; + +char pass_10[] = "PASSPHRASE1111"; + +uint8 salt_10[] = "wpa_psk"; + +uint8 ref_10[] = { + 0x0f, 0xba, 0xf8, 0x61, 0xa5, 0xf0, 0x9f, 0xc7, + 0xec, 0xda, 0xb6, 0x7e, 0x0d, 0x11, 0x63, 0xbe, + 0xb2, 0x01, 0x91, 0xa1, 0xba, 0xce, 0x08, 0xd1, + 0xf8, 0x2e, 0xaa, 0x7a, 0x02, 0xc1, 0x0e, 0x1e, + 0x22, 0x2c, 0x42, 0x3f, 0xf0, 0xfe, 0xd1, 0x78 + }; + +char pass_11[] = "*Doyouknowtheway"; + +uint8 salt_11[] = "wpa"; + +uint8 ref_11[] = { + 0x0e, 0xdb, 0xaa, 0x85, 0x68, 0x3a, 0x8d, 0xc0, + 0x84, 0x58, 0x97, 0x54, 0x79, 0x97, 0x48, 0x86, + 0x5a, 0x2b, 0x63, 0xa6, 0x42, 0x8c, 0x65, 0x91, + 0x59, 0x88, 0xe9, 0x24, 0x30, 0xe4, 0xf8, 0x33, + 0x7c, 0x63, 0xda, 0x22, 0x96, 0xee, 0xa5, 0x4d + }; + +char pass_12[] = "ToSanJose&&"; + +uint8 salt_12[] = "wpa"; + +uint8 ref_12[] = { + 0xef, 0x1b, 0x56, 0xee, 0xca, 0xdb, 0x92, 0xcc, + 0x4a, 0x5e, 0x42, 0x29, 0xcf, 0x13, 0xba, 0x6b, + 0x4d, 0x12, 0x0d, 0x19, 0x4a, 0x48, 0xc6, 0xb9, + 0xa4, 0xf8, 0xa8, 0x5c, 0x38, 0xea, 0x77, 0x30, + 0x01, 0x17, 0x80, 0xdc, 0xcb, 0x3f, 0x58, 0x00 + }; + +char pass_13[] = "I-Left-My-Heart"; + +uint8 salt_13[] = "802.11b"; + +uint8 ref_13[] = { + 0x0f, 0x11, 0xe3, 0x27, 0xb5, 0xaf, 0x29, 0xa5, + 0x02, 0x1a, 0x77, 0x70, 0x28, 0xed, 0xc7, 0x48, + 0x09, 0x96, 0x93, 0x35, 0x9c, 0xcf, 0xc9, 0xba, + 0x63, 0x29, 0xdb, 0xf5, 0x6d, 0x2f, 0xce, 0x5f, + 0xcf, 0x43, 0xd2, 0x4a, 0xe7, 0xdb, 0x7f, 0xd6 + }; + +char pass_14[] = "1nSanFranc1sc0"; + +uint8 salt_14[] = "802.11b"; + +uint8 ref_14[] = { + 0x5b, 0x93, 0xd9, 0x52, 0xa7, 0x7c, 0xa2, 0x42, + 0xd4, 0x59, 0x3b, 0x1f, 0x5a, 0xa3, 0xcf, 0x86, + 0x90, 0x6f, 0x44, 0x11, 0x4b, 0xd9, 0x82, 0xd5, + 0x4f, 0x1e, 0x91, 0xe9, 0xc4, 0xa4, 0x34, 0x8d, + 0x35, 0xfe, 0x1d, 0x4a, 0x49, 0xf2, 0x14, 0xca + }; + +char pass_15[] = "passphras"; + +uint8 salt_15[] = "wpa_psk"; + +uint8 ref_15[] = { + 0x35, 0x73, 0x10, 0xdd, 0xfc, 0x20, 0x51, 0x88, + 0xe5, 0xbd, 0x7a, 0xfd, 0x93, 0x7c, 0x3c, 0x80, + 0xce, 0x0f, 0xbe, 0x75, 0x23, 0xef, 0x89, 0x5e, + 0x26, 0xed, 0x9c, 0x5b, 0x1f, 0x5d, 0x5d, 0x9e, + 0xa3, 0x05, 0x1a, 0xc5, 0xcb, 0x63, 0xb3, 0xb6 + }; + +char pass_16[] = "1234567890123456789012345678901"; + +uint8 salt_16[] = "wpa_psk"; + +uint8 ref_16[] = { + 0x67, 0x8b, 0xb9, 0x3d, 0x34, 0xb6, 0x6a, 0xce, + 0x00, 0x0e, 0xba, 0x82, 0x24, 0x14, 0xe0, 0xe8, + 0xc3, 0x6f, 0x0b, 0x7c, 0x9b, 0x80, 0x5a, 0x5e, + 0x15, 0xa5, 0x58, 0x09, 0x67, 0x6f, 0x44, 0xe2, + 0x15, 0x1e, 0xa3, 0x73, 0x58, 0xc8, 0x60, 0x6a + }; + +char pass_17[] = "12345678901234567890123456789012"; + +uint8 salt_17[] = "wpa_psk"; + +uint8 ref_17[] = { + 0x72, 0x45, 0xd3, 0x12, 0x28, 0x2b, 0x8f, 0x62, + 0xda, 0x28, 0xeb, 0x0b, 0xef, 0x8f, 0x82, 0x1f, + 0x7c, 0x86, 0x6d, 0x39, 0x5b, 0xa7, 0x95, 0x67, + 0x1f, 0xef, 0x9e, 0x2b, 0xfa, 0x9d, 0xba, 0xff, + 0xcf, 0xe0, 0x2e, 0x28, 0xf0, 0x03, 0x9e, 0x04 + }; + +char pass_18[] = "123456789012345678901234567890123"; + +uint8 salt_18[] = "wpa_psk"; + +uint8 ref_18[] = { + 0x67, 0xc2, 0xda, 0x52, 0xf5, 0xd5, 0x56, 0x5a, + 0xc6, 0xf7, 0x4c, 0x52, 0x12, 0xd5, 0xde, 0xb1, + 0xc5, 0xd3, 0x6e, 0x8a, 0xde, 0x42, 0x9d, 0xb3, + 0x6f, 0x37, 0xf8, 0xf2, 0x12, 0x7d, 0xb6, 0x3e, + 0x02, 0x33, 0xb7, 0x86, 0x25, 0x10, 0x92, 0x19 + }; + +typedef struct { + int pl; + char *pass; + int sl; + uint8 *salt; + uint8 *ref; +} passhash_vector_t; + +#define PASSHASH_VECTOR_ENTRY(x) \ + { sizeof(pass_##x)-1, pass_##x, sizeof(salt_##x)-1, salt_##x, ref_##x } + +passhash_vector_t passhash_vec[] = { + PASSHASH_VECTOR_ENTRY(01), + PASSHASH_VECTOR_ENTRY(02), + PASSHASH_VECTOR_ENTRY(03), + PASSHASH_VECTOR_ENTRY(04), + PASSHASH_VECTOR_ENTRY(05), + PASSHASH_VECTOR_ENTRY(06), + PASSHASH_VECTOR_ENTRY(07), + PASSHASH_VECTOR_ENTRY(08), + PASSHASH_VECTOR_ENTRY(09), + PASSHASH_VECTOR_ENTRY(10), + PASSHASH_VECTOR_ENTRY(11), + PASSHASH_VECTOR_ENTRY(12), + PASSHASH_VECTOR_ENTRY(13), + PASSHASH_VECTOR_ENTRY(14), + PASSHASH_VECTOR_ENTRY(15), + PASSHASH_VECTOR_ENTRY(16), + PASSHASH_VECTOR_ENTRY(17), + PASSHASH_VECTOR_ENTRY(18) +}; +#define NUM_PASSHASH_VECTORS (sizeof(passhash_vec)/sizeof(passhash_vec[0])) diff --git a/release/src-rt/bcmcrypto/prebuilt/aes.o b/release/src-rt/bcmcrypto/prebuilt/aes.o deleted file mode 100644 index 7db4fb51d97cbd4b902de7b35bc2dc05eba97c62..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 7392 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 O@CKMR${N7`2>2gD3%y?e diff --git a/release/src-rt/bcmcrypto/prebuilt/aeskeywrap.o b/release/src-rt/bcmcrypto/prebuilt/aeskeywrap.o deleted file mode 100644 index 54fb360934e53ba3eeb5966e342d5375f664d46b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 2768 zcwUWGO>7ip7=GrPc3CLMAdT5Xv@^KwteC7Dzyu8@&9;>gjX{V;FVfxaTB`loY!|ih z;G&Q~B$-A$NWy_^Thar`6k4H&QYWN`9z68Gfdh$q@ZiD3VmLGg^ZCB>vpc&DkvEyV z-~02uzt8OKH+}EEttbitQV>N$0v@#kTQnRy=t@aEgAO#)p2NTu)2LlmqyOG9ABkV= zb+K&!DQ??;h+FpW;%B=i7VHON-o7tx+V{i_dri#Q8kXo0aiij3H@?-3$r@rLYjoC$ z?<9Uf5h;piQ9O&{SrpHrcoxO8D4s>}EQ)7QJWHWFQPk88amVC)4`sKu1!DhSvbz(w zY&qxKa0pd%Luv^ltqVi%#uC-BbwgJjQRRB980Jm(C7Upk{eo>#MB;2CUn{9hnM>lD z#Xff{8dk)V9Yt?~{m37c80)H*5i7#cH5f6K^7P^*O+)6wE=Xk35?`b@Z z{eF{~=Xj2ZLn#^@_AHX?3XTJbu;z8_lw5K5N3e_7`XDqhy zyjlOWI50FIz(E+BI$`qxVe>v=^B!Syjj;JEVRMzRxkA`<2%AfU&BZV_XC0bx&Bf>4 zpCX&^c}A(GC?@4!ru?@l|1FDR(tZ}Ghk2U&O~TC$YcYh+8r8-3JbYFg_^f#NG}3Uf z$-U3|xCFj)=K|#7ZRooQilnKK%6Oc8dfCf|?X#e{Jl zFeX7gEST2`Ur85NRePUyfN;~@=~Q;ndw)C;L1y1SR1^Di&UG>4;v z7Z38X?P=!`?5XDNiDFgO#C10pnsUw7v0JO-+DKR2TyudfiOty6*}qY@h@B`Yh$jp! zk1kAIV!wpeL;I~@SwiD?hdX`@`8S?O(s?YU45ST0@C(Gdo?x$SvIEzAsw?VTf>Wt5oGKT-DkGK8ma|CZ#>ZJXI5hg{m}f2K zOGu663%S#SscdfOz|5e803WSIF<#ke}i|yU>^k(+}jAZSf0u zkdujic+gGC9dzceH}}E0xz}*KJSn~p$>AQu6xO%lp+tz(mRo9529`qra^)!fr|^hp zt2AwZ?X7b2u+=&`19_W^N2V)+=cphNvhxgI3&}i(o)-CNi~Mnm{0Y3+X+Qp8i~Z{s z8QH@4=Y@$cOW9&-AS4|9kcE?{M_Ith!Q#pM(0CE0q0dJ1*~0KUg^3e|^66r4VF0;- zvEoGCLYmSLq8q{u(0Z?LbfB)IvwOp(_U#@9BE+YOckJ-q*A805BcGpDJU+{O zC%p^4eBb8>srL?Q?lAGl7Q(vl^gI`ie^q$#dujb01m;t!XXlx1CI4a7yO&ozx$Mgi de7_B!_qKUF&wMw%8@~Lb&zS^)T4zqn{SQ&XF)IK7 diff --git a/release/src-rt/bcmcrypto/prebuilt/bn.o b/release/src-rt/bcmcrypto/prebuilt/bn.o deleted file mode 100644 index 414655d33d36fea0384cc834ef2433a9050afe37..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 55964 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 UsbQ6dvos8ASgRrb7?92X1Mt0cU;qFB diff --git a/release/src-rt/bcmcrypto/prebuilt/dh.o b/release/src-rt/bcmcrypto/prebuilt/dh.o deleted file mode 100644 index 3134cd9c9cb0ac51cb729803b6780a0ed3319a20..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 4216 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 boJMAp?9g?v+Vy?3cIj`C)uH)Yyi|Vy^dJyH diff --git a/release/src-rt/bcmcrypto/prebuilt/md5.o b/release/src-rt/bcmcrypto/prebuilt/md5.o deleted file mode 100644 index bad9a57d3334eb7c9bb42851dbe6fa59ef596668..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 5564 zcwVKL3vg7`8OQ(k>?Ya3N-iP6#pm8+Ujn8p4bwnx>$;lvCD5_MPfsCQJo%-?m^RWMzP+k5Pu>7fD zxs1&*tslo3=zY{`eIO(tim8u)kZjyXAWyPWAH*1Sx`b*cKd;}0x4Y6h-l0D7By%5u zI)UU2>SIxfq%87DyZ^|3Pm_jx{QJ+ra+kv=DRR=n47y)~<`-Tj5Gf?T`k*B9*!8un zfyN$*-Ttvqy^bk}7x1`A8nd0ou9e)5o5;6@u22@gQgH%B*b&`W!+v>~y^qHApCG%4 za5*}l`z_M^%*@Q|z#pRiQTDT8Mm788k=_!E%W<>eSF8D*%}H|?t^S<-@*(|_{g|_a z#%nYD7HfWHPG)rC$!NGk=X-O2{c6c?NHF7<@wu=qT6wq57ymTPmy{;(tuXi+nkA*7 zP4eOKXez~iQ}Nge_G_c@f?@(+i^10zk(9=}rMY-2di`DOXUCp{>~}Z$9sUZwI?0di z(f(U>zLM$eS4Vz={BFtSyUO6x=3$Cdjwhl6pX>8*|E=sdh5VYyZu|1ugz=N2fj(u_X<*K!WT8xl-T>-V4UsYWR~D zcQ?gEvtLa12Gb8cWKUdPUoL)d9qY;=9*-7#U6&re@V7}~qxMh!{SLCa_croyF_R!_`IXvllv3(D139 z!1K_X8J;`G%{=KiXY<%N&cyWUyBVef|J9lFGwc{9WBP}ZVH$tg%#@TSWBS%uhUtww zGt*&dGN#u*$}nv_&&(t&lg-g}RT-Z5ip+B~ls!kw3?AA~M>dmBeT~FCImgpHwc5VO z;<-ZSu^Vgji(sZx!|YdO#BM((V_MV3Odc9*3f>awILy}0v@E8O!9=l}eGkVj zUyH-f>(WfQ+I~0hAzW@S`G)WrokhU~w0C@?@Hp~$9SDz^pIF5C`h4EHQK)x*Lbm?B zWIL+G%40gS5)0`JDc0lr+fJdDG?8t^IN9z6?-vi9RbQNomDI1H`zW0=_6oA4^WWnb zXIrYlXVU!) zohOY;%(_b^)&1Nap>{oM)*Te*(#@KG;}hz>pPDr{Pa5ZkP6+iguQ|?1F`3?zuL*U% z->g?yCezzz6>84KX1yhr$@ISVmQWYGV%D2HXN+0z+v7q#y2-3pOsaS2QlXx@-K;kv zol7r&>#*jn&kMD6d6wpLt_{|F8J`2Bm*2^iCFHZ6&)Z>W_S^RfW&4;2UojJroij=I z8<-v9eYqF>j{8-L?E83cjX~q=^9rS}RD>5!N93OAr2Tz7@F<@d<7A(M-XAG?<9!y=-L+E3n5h`tN&*>=S(68Tu1>7A0Y^gcmvx+3O(v zr*JZr(f^Z=$iAQ76Ndi&MMCKhiA1On!3PTUy%s2xezrct@Yfso9a|!O!C=fmfaV}+ z%)#iI48!+%y^juM7)D2gGCE8Q#fWSxCWhBB_e_T25WSC-Mt%<&42>J<+h?5=UQA!~ zt#&#W=StGBaV`==5q)1M2TF*!RMHp@_$gb+7=2I2C>M$au-gl4q+F^` z%cVHq0xqJQ=s~Y?Xp^On@~R#@7w@8cY8B;E?UYZoP(Ia2`PB84Pc=|JCF9w+5>8MC zw;`ISkZJsJ%;7i=gb_eMR{91hXNp861YJ~b4PHt%4mt}Ei7CGQNIG-r`*67{m6AR5 z?d-Y|8~hGD>21K{UK@HmK9cUSpaD^xB|4B;B zB1HwvXx!tYSw+2;`OfU!_)^wR??t2!$LWb5c#K^7R5IxC>}Az54@d%%(}*?W`1*A z2Pm#B6xXxk2#iFn7>*|8TwIA7ztTU53LN!agW@k6~tfauOTh#W56c5 z9&u^oI|IUj&0bAII6z!ZN%03nJx0A>pYNE)$Neilr=((mm&dT7(vxPiLEOtWqKwY< z3+QqQG(Zf=^y^w!hOUEkXa#bHK29a6FWJ+8%6l6S^w?2NoS~=1P4cbG_UVK5cs5JK=d=*7NoW&w()h&r%Z#Ep+;7mM*)@Szb1;tQ;s?ds}BuQ!~{) z-Fn@g{?*;Os;sBAw+Ce{O+8I0YhJsSZ?<);zG;pAw5z2XWt}ap%|B`@YijQJ<~+K+ zMmJu$rn9qkb5Y#rr9kisdXXOV$Y7w!&O26wy5B`?c;o)-53&&H#8U z^Ng_l+3lRO+PN?n3#MR}@temeq#hNj`)I5NNpH_F+4I=^U*@4{!1cy+bhgYdTZwDB zn^v#AX-#)0>aVJ-tX*1z?^VvPUER^c^|CJ7WUaWdt?R~?jD+++A^sJofd|GfS)wxs;6zG0~1-c&>Vb|BF5PG}> K`89G)Hva?qiwZ9Q diff --git a/release/src-rt/bcmcrypto/prebuilt/passhash.o b/release/src-rt/bcmcrypto/prebuilt/passhash.o deleted file mode 100644 index 196a34ecb4949af01a250c97512d418fb053aa5e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 3124 zcwUuOO=uKn7=C6Zi9hjYv|F3D+Rn6Vc8y_KZCX;XbV#B`2qlLIDM+)~>^2GHXU(pl zmv#vra*)hYJVfxYL<$~cHzxiaw1%E~2*qQM!IK9sEiIK+I(^>xNoH51_JiS@_j`Z7 z_j%s;`)0m9(RWf&6a+)TR%}YZl`X&)9sM1y6vs|%NA1{u9Jm%U*RN{p&cj#>9#wTb zs75e*SwmO65te=kKgJzLjZ$ZC#kywTVeD_m(t)e?w&#Y{f=f~Q*nc|EO}#c|i7_V_ za|}OJGq_hx;coRT?o)f7N?QYpE>`un)-PtdRP1??V+nt3x)XuD8JK#nR#;#FmN~4fu)$_ zYZ@svf=1?hw`wMfs^o8WS}OOZZe2CwtLignwgg-+Dfm9x$~`HU|8kZh3itM6tkO>6 zG)2W`!l)x@J2TxjMtA;ML}0I@;_op?Sfc+fW}rcX{f@X`0K2*`1?F*!jr5E zSB`V1RWK@y>T^{IYWJOEMWl8mANT9xl)embhWoC_zPrG_E3oHstn~zYZj3#bVb7)5 zb7$FegMQDMcoH|TC)zys#Kqcy<(PTD2(w%UF~E#ls$jgr{YuP3@GLMV!C+t|X6on2 zmG1Gx&eGa+yh)z+k*BxNUyhKs1{`cP4T-}Z>n!?Qt%SHrxxE)~rDCz|0IZ1U73S7k z*T1!KmP2tYHO#r!*V3<+3e@&B<&C}$dRStRH=DfKb1Q@?nspIXx54mq0M~gC!%{c7CWt(x>lagP`%`fTZmu~;V zzpG6H#0)py0DHr7d0~IF0DVv^9;a%>!k$VG_Ew(qEcW7!O89H>0?u!E^(a1f948PA zJ_q=`zoB+kUxf6zkbX^d^)>#*m;67k(f7Wj-(90mhV`eqyN?<1Q(v4pWOO8sCip!} zZ2J6YVmLki z(NQEurY9$}Qw6;Cki6tu-Q>#_pJX6#=>GgJpKT$(j%MH&&YWET21q{w2Yp%d?Q)@5 zGJ<%Aef$5i6aJ{msUf?Tke%!+@@GKJKgS&H%5`=!K1D5#9XsTY#KX~qO&ndQjThg7 zni1&w{r6 zxZ8Z&3#w=TNuA!3hiS$YPk*{jFZCK@S`XmqzpB$CH=NIp4d=%aBRGlCY+)!^z|d%J zC^MeVAw4pkyNJy6rfO_*cw~sLM>gESV?2?a!uZs9D8yuTGN0WzosG?2J)1c5Vn*{0 z51XtH`s>eReV5k*qW|5W`4Mr~2USm&8i?Ox)$`LeZ@o|R>@NB8O8MxyLa!ZJH2|S^h?RS+q+Ly7WQA! CNK@

fS42T)42{VkjscWsK*giJS5ypB4t5h3wog`wru~?0g1xrU-j9 zi(ip2ZL5GwCQO$KI@}qn~*Q9V0D?(vN#ZmaN2`SotB1?J)W7_sGR>Ia-rDRaqCYZ*D z&KKp{2wzIpSSt81R;deOQ;2E_9V@|n2b)8yt*KOEp>j>-*~5Pe;U(j?Tr_UUe~fwg z)R>b`j9K~En30c+X<0O;jBSLz?- z=wY_P2kDgEGAvtGg%9eDpxy}TjiBBL>W!e@2?Z+;%(B|9nGhONkKqj)s4d1hcsV-b0(E0MLw zXl6&@;LoI-Y>WC3Q8;w_wy!|(T4`78pL3IkM zQ&63P>ZCnf-V=A>?Fn~}(XP-rO;XG$_8YyW%4sz|y*brB%d}*ap5cX5DlC;sB~Loa zf!B%ee8D-`vh&QM@BA)&=Lg%`KCmJOKmGD8D<0h&rQh@D$l0NES2ywWu;zo_x8c5% z(RAN8X+(Rw(p`vlkBlhgz=>1+r}b&7cNo#3-oEZL1JSPT6YuRswCD8DP~WLER!u4| z^NAj@_Pa8?~yAnxja~-^_?~P{>d7xzu@Xs4^;e#8XZ4atNjluPK~?g R%8D3)-BR4t`-u@y{s$s{loS8} diff --git a/release/src-rt/bcmcrypto/prebuilt/random.o b/release/src-rt/bcmcrypto/prebuilt/random.o deleted file mode 100644 index 1bc782ef722eff782ffb5d95c9f89a8635677656..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 2444 zcwUuOL2nyH6#jPCaqXlfCJm65B5br!Bk0;mEKm!TLfy0l1=p$)2}Gss+TJ9F*lX=> zP$MdlLl7WEb&+~#r5<{KD=vjf9E#uvaNsB81_va9#GwZy^PXp1kC#+}k!Ig~Z@%}< z+c&dge>}f%M$eUkc?y4`nfq{TOaXUI%U+&FtJXe(C;jG>acQCcf>Y zakp~>-*l#Mr<20{4)8_0+tp1Ve>HPs6DOcgWUk#tW|K8;wgK~MCVNRwK1dsx{G3iP z#5YV0sTU5RILREI6KfW?W6;gRs7x|%l*WH_^(TeS7WGf4f7)hD`LrpYHs#Z%eA<)` zb109msQ+rdhq#$Q+Q_4q`@gse?DXdTukMnfD`I=Onfwl$7%@5TpSopwujjswYO6ZT zf19-Kb&=v2wcgC-HKO}4@NZEKyIpm+{>J!SJhF{%K2Z31>d#Pr_R#_Vc|KQjKg_NB zPP67U*iX3cGbhu>rjc9q8g6dct$F?jxzKAkp_lXBHP;E;T;Nxa`C+b7ZB+e@ z7Eknottx2+p%bnLQiNKahtv7q`fK&(`el2tF3uKgteO)#uqr{o&Xsy|*%Py^nh&c{b1UmBmQ$(E&XC( zlKehzSG^Dv9#@!hYv~GaO5yRkj86hXcS?c+E=73Uj$`;e!la1j_lRTg9;Yy@x2j{P z_2$aSUq5O()Qb@cLFw{pS(j4mlr# z(B=GiZLW!`cV!=NPr;Gx+0!4xpF{V65s5N}R$v^1+KgW1Rh-1A9E&;{y>FeHICuTo zK7SOikX?J|N#ZqnnhKty=S2n2Lv2aC1$AH4lfwEV5gdow42$0B?3I>Xs|PLku2Um1*Y}&Az2;S&uE=zXoDLQLplXN&=X8!?kM{<5;P3WHHdHVPk*-!SICUoDCx(k}ny(o2g ouelDPChBm7btc4~vwvIque1L!y*J0p3qvQHW;-SBb^Q?V52-aaM*si- diff --git a/release/src-rt/bcmcrypto/prebuilt/rc4.o b/release/src-rt/bcmcrypto/prebuilt/rc4.o deleted file mode 100644 index 083312bbf68556e17cfdb8164e33070af914513e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 1224 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

  • O%0>nK2}a0V+;5@#E#~P+byz?je51y{HEUQp2BF;#NSo+0C^dBj%TPAoM7 z*Wu?x35H_vD^g>kfGUN)mX9H|uF2 ztwKqm6}sb>ZQy=u%t^b4sC_rvK0blD!Q(^JHWvOy0o_3;HPOG4tb%Y0>ul?oi*Bzk zCM(}d>rJf@{%u);u|m-Mkn@+2^A}$z=fs5DfDT4kwofJqGFBV5ClhOK*R>$l3@*w# zZKi~(c}#^PdmipNHgDr+5&(UPvGzbsJuoB$ zTTiv8J892Hr`U61Vx^gdHM32nZKd5@I@>js78E%4gI)1_(zZO_Pca|cQS(AC&@t;5 zajMv;%UQpb(CrAv7r3{AZxyOEsX~EXIxt6j)bX2UwA-Z)S$}6Zj-m58!$r~$XL&AC(dT}c?)agvU2*zW_QQgZ7wMuDp($ls;Mf*58{;s` z%45K1M^Z5M<%u?lwR#F7)Sj<-W=We?;-2j_lb%N{`@&6UcsR@;LreYXfJRm3LNSK4)sprP;VUduuUZriv|h)S;cWA{QHS( z;#2w?elziR{eR;9A7yL8`s2jJ#N<0${O7-Se(CmSQ@;29)%(Bx{cZ2_?5Xnk{)6{} zf5ZE`g161CpVvUw{s!he5!lmw*I~2aP|Lq4#j}076 zzaZ}0UT}J6o&LhtvhVJ`|Mb?s9RIm}IPIOMyDvZe{PXLde*c?`PXEi<|M7g@`G3mR zH`jbP`{<7DCGQ*=U;V#&|Mcj}6}Jp*JX<$>uF5t3(%0|({-;^*o?W!(@Y^doUP)V5 zU0t*@^Sf1z+I6*`ZLGPYFsJdZRogPx{B!2RkJi4N_{Pqft^NOW@%#IiuAMR5_2kmT zffXBGD!JJIhMxA+k9W??{ax4K!)o#KLnZDFHRdyUcU#wNsO?_U(@nLV4|P98we8!s@xyiNH?7_5 zyzT1TO0^q1*R+3SUF}2d>*v+qK`Bl||*}9Y|{XA3p@x0u=nds{O&j%k`Qy!!wuk-2ZbzH)O7IM~+MpxDm zpsU9V*3nhJ$#*Tu`}!&U+*A6cB;R+?)p}{EyCTzMKmI*P*Xa2sXFQfKldj0Ojhyi& z_0op%)F}c_>hG(`e!gV83xXD0=_cRtAOA~$N!j=pM!y}`^qag+&dI;=c|>vH%*SJ} ze0w!T%9j4izjE15p_=4~JCZjKwgZwLp{1NV)@O1*Kg~(YNQ84o40j8xOr>mnyr(aZ(qL& zn0HktM!%~&t=js~rfq9CZ{0Zg;O;JTT9a%gWte>T=$ftD)^Fa#>tbI?Ed;N?H4WFI z9QZQ+O7WML+{@J9NqK#caraeRnGUzs+{i!am_*n*;4I1Z}B?U zRSTLgvfY<#_a@tWlWq11mUE=qk@Gv% z&N`m0cGhtw`Tkt;{p+}96+6Dd&)-cx_s(+UX`SV~XW!xXp<3ttAg);eoN>Ow>CW+W z8uW{62An7bzLl2Z_!xheJ;(X38P_a0_^LV1cN^w7-wn=jz8g+{$3G?CiBYA%$ss6; msEx0X%jWAehubKSFV0thz`K0qAVBOZCHS7NGm_(F5&d5xyarbQ diff --git a/release/src-rt/bcmcrypto/prf.c b/release/src-rt/bcmcrypto/prf.c new file mode 100755 index 0000000000..90c265d44d --- /dev/null +++ b/release/src-rt/bcmcrypto/prf.c @@ -0,0 +1,353 @@ +/* + * prf.c + * Pseudo-ranom function used by WPA and TGi + * + * Original implementation of hmac_sha1(), PRF(), and test vectors data are + * from "SSN for 802.11-0.21.doc" + * + * Copyright (C) 2010, Broadcom Corporation + * All Rights Reserved. + * + * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation; + * the contents of this file may not be disclosed to third parties, copied + * or duplicated in any form, in whole or in part, without the prior + * written permission of Broadcom Corporation. + * + * $Id: prf.c,v 1.18 2006-06-15 02:17:55 Exp $ + */ + +#include +#include +#include + + + +#ifdef BCMDRIVER +#include +#else +#if defined(__GNUC__) +extern void bcopy(const void *src, void *dst, int len); +extern int bcmp(const void *b1, const void *b2, int len); +extern void bzero(void *b, int len); +#else +#define bcopy(src, dst, len) memcpy((dst), (src), (len)) +#define bcmp(b1, b2, len) memcmp((b1), (b2), (len)) +#define bzero(b, len) memset((b), 0, (len)) +#endif /* __GNUC__ */ +#endif /* BCMDRIVER */ + +void +BCMROMFN(hmac_sha1)(unsigned char *text, int text_len, unsigned char *key, + int key_len, unsigned char *digest) +{ + SHA1Context icontext, ocontext; + uint32 pki[(PRF_MAX_KEY_LEN / sizeof(uint32)) + 1]; + uint32 pko[(PRF_MAX_KEY_LEN / sizeof(uint32)) + 1]; + uint8 *k_ipad = (uint8 *)pki; + uint8 *k_opad = (uint8 *)pko; + int i; + + /* if key is longer than 64 bytes reset it to key = SHA1(key) */ + if (key_len > 64) { + SHA1Context tctx; + SHA1Reset(&tctx); + SHA1Input(&tctx, key, key_len); + SHA1Result(&tctx, key); + key_len = 20; + } + + /* + * the HMAC_SHA1 transform looks like: + * + * SHA1(K XOR opad, SHA1(K XOR ipad, text)) + * + * where K is an n byte key + * ipad is the byte 0x36 repeated 64 times + * opad is the byte 0x5c repeated 64 times + * and text is the data being protected + */ + + /* start out by storing key in pads */ + bcopy(key, k_ipad, key_len); + bzero(&k_ipad[key_len], PRF_MAX_KEY_LEN + 1 - key_len); + bcopy(k_ipad, k_opad, PRF_MAX_KEY_LEN + 1); + + /* XOR key with ipad and opad values */ + for (i = 0; i < 16; i++) { + pki[i] ^= 0x36363636; + pko[i] ^= 0x5c5c5c5c; + } + /* init contexts */ + SHA1Reset(&icontext); + bcopy(&icontext, &ocontext, sizeof(icontext)); + + /* perform inner SHA1 */ + SHA1Input(&icontext, k_ipad, 64); /* start with inner pad */ + SHA1Input(&icontext, text, text_len); /* then text of datagram */ + SHA1Result(&icontext, digest); /* finish up 1st pass */ + + /* perform outer SHA1 */ + SHA1Input(&ocontext, k_opad, 64); /* start with outer pad */ + SHA1Input(&ocontext, digest, 20); /* then results of 1st hash */ + SHA1Result(&ocontext, digest); /* finish up 2nd pass */ +} + +/* PRF + * Length of output is in octets rather than bits + * since length is always a multiple of 8 + * output array is organized so first N octets starting from 0 + * contains PRF output + * + * supported inputs are 16, 32, 48, 64 + * output array must be 80 octets in size to allow for sha1 overflow + */ +int +BCMROMFN(PRF)(unsigned char *key, int key_len, unsigned char *prefix, + int prefix_len, unsigned char *data, int data_len, + unsigned char *output, int len) +{ + int i; + unsigned char input[PRF_MAX_I_D_LEN]; /* concatenated input */ + int currentindex = 0; + int total_len; + int data_offset = 0; + + if ((prefix_len + data_len + 1) > PRF_MAX_I_D_LEN) + return (-1); + + if (prefix_len != 0) { + bcopy(prefix, input, prefix_len); + input[prefix_len] = 0; /* single octet 0 */ + data_offset = prefix_len + 1; + } + bcopy(data, &input[data_offset], data_len); + total_len = data_offset + data_len; + input[total_len] = 0; /* single octet count, starts at 0 */ + total_len++; + for (i = 0; i < (len + 19) / 20; i++) { + hmac_sha1(input, total_len, key, key_len, &output[currentindex]); + currentindex += 20; /* next concatenation location */ + input[total_len-1]++; /* increment octet count */ + } + return (0); +} + + +/* faster PRF, inline hmac_sha1 functionality and eliminate redundant + * initilizations + */ +int +BCMROMFN(fPRF)(unsigned char *key, int key_len, unsigned char *prefix, + int prefix_len, unsigned char *data, int data_len, + unsigned char *output, int len) +{ + uint32 pki32[(PRF_MAX_KEY_LEN / sizeof(uint32)) + 1]; + uint32 pko32[(PRF_MAX_KEY_LEN / sizeof(uint32)) + 1]; + uint8 *pki8 = (uint8 *)pki32; + uint8 *pko8 = (uint8 *)pko32; + + SHA1Context reficontext, refocontext, icontext, ocontext; + int i, total_len, currentindex = 0; + uint8 input[PRF_MAX_I_D_LEN]; + int data_offset = 0; + + if ((prefix_len + data_len + 1) > PRF_MAX_I_D_LEN) + return (-1); + + if (prefix_len != 0) { + bcopy(prefix, input, prefix_len); + input[prefix_len] = 0; + data_offset = prefix_len + 1; + } + bcopy(data, &input[data_offset], data_len); + total_len = data_offset + data_len; + input[total_len] = 0; + total_len++; + + /* if key is longer than 64 bytes reset it to key = SHA1(key) */ + if (key_len > PRF_MAX_KEY_LEN) { + SHA1Context tctx; + SHA1Reset(&tctx); + SHA1Input(&tctx, key, key_len); + SHA1Result(&tctx, key); + key_len = SHA1HashSize; + } + + /* store key in pads */ + bcopy(key, pki8, key_len); + bzero(&pki8[key_len], PRF_MAX_KEY_LEN + 1 - key_len); + bcopy(pki8, pko8, PRF_MAX_KEY_LEN + 1); + + /* XOR key with ipad and opad values */ + for (i = 0; i < PRF_MAX_KEY_LEN / 4; i++) { + pki32[i] ^= 0x36363636; + pko32[i] ^= 0x5c5c5c5c; + } + + /* init reference contexts */ + SHA1Reset(&reficontext); + bcopy(&reficontext, &refocontext, sizeof(reficontext)); + SHA1Input(&reficontext, pki8, PRF_MAX_KEY_LEN); + SHA1Input(&refocontext, pko8, PRF_MAX_KEY_LEN); + + for (i = 0; i < (len + SHA1HashSize - 1) / SHA1HashSize; i++) { + /* copy reference context to working copies */ + bcopy(&reficontext, &icontext, sizeof(reficontext)); + bcopy(&refocontext, &ocontext, sizeof(refocontext)); + + /* perform inner SHA1 */ + SHA1Input(&icontext, input, total_len); + SHA1Result(&icontext, &output[currentindex]); + + /* perform outer SHA1 */ + SHA1Input(&ocontext, &output[currentindex], SHA1HashSize); + SHA1Result(&ocontext, &output[currentindex]); + + currentindex += SHA1HashSize; + input[total_len-1]++; + } + + return (0); +} + +#ifdef BCMPRF_TEST +#include +#include "prf_vectors.h" + +#ifdef PRF_TIMING +#include +#include +#endif /* PRF_TIMING */ + +void dprintf(char *label, uint8 *data, int dlen, int status) +{ + int j; + printf("%s:\n\t", label); + for (j = 0; j < dlen; j++) { + printf("%02x ", data[j]); + if ((j < dlen - 1) && !((j + 1) % 16)) + printf("\n\t"); + } + printf("\n\t%s\n\n", !status?"Pass":"Fail"); +} + +#ifdef PRF_TIMING +#define NITER 10000 + +int main(int argc, char* argv[]) +{ + struct timeval tstart, tend; + unsigned char output[64 + 20]; + int32 usec; + int j; + + bzero(output, 64); + if (gettimeofday(&tstart, NULL)) exit(1); + for (j = 0; j < NITER; j++) { + fPRF(prf_vec[0].key, prf_vec[0].key_len, (unsigned char *)"prefix", + 6, prf_vec[0].data, prf_vec[0].data_len, output, 64); + } + if (gettimeofday(&tend, NULL)) exit(1); + dprintf("fPRF", output, 64, 0); + usec = tend.tv_usec - tstart.tv_usec; + usec += 1000000 * (tend.tv_sec - tstart.tv_sec); + printf("usec %d\n", usec); + + bzero(output, 64); + if (gettimeofday(&tstart, NULL)) exit(1); + for (j = 0; j < NITER; j++) { + PRF(prf_vec[0].key, prf_vec[0].key_len, (unsigned char *)"prefix", + 6, prf_vec[0].data, prf_vec[0].data_len, output, 64); + } + if (gettimeofday(&tend, NULL)) exit(1); + dprintf("PRF", output, 64, 0); + usec = tend.tv_usec - tstart.tv_usec; + usec += 1000000 * (tend.tv_sec - tstart.tv_sec); + printf("usec %d\n", usec); + + bzero(output, 64); + if (gettimeofday(&tstart, NULL)) exit(1); + for (j = 0; j < NITER; j++) { + fPRF(prf_vec[0].key, prf_vec[0].key_len, (unsigned char *)"prefix", + 6, prf_vec[0].data, prf_vec[0].data_len, output, 64); + } + if (gettimeofday(&tend, NULL)) exit(1); + dprintf("fPRF", output, 64, 0); + usec = tend.tv_usec - tstart.tv_usec; + usec += 1000000 * (tend.tv_sec - tstart.tv_sec); + printf("usec %d\n", usec); + + bzero(output, 64); + if (gettimeofday(&tstart, NULL)) exit(1); + for (j = 0; j < NITER; j++) { + PRF(prf_vec[0].key, prf_vec[0].key_len, (unsigned char *)"prefix", + 6, prf_vec[0].data, prf_vec[0].data_len, output, 64); + } + if (gettimeofday(&tend, NULL)) exit(1); + dprintf("PRF", output, 64, 0); + usec = tend.tv_usec - tstart.tv_usec; + usec += 1000000 * (tend.tv_sec - tstart.tv_sec); + printf("usec %d\n", usec); + + return (0); +} + +#else + +int main(int argc, char* argv[]) +{ + unsigned char digest[20]; + unsigned char output[64 + 20]; + int k, c, fail = 0; + + for (k = 0; k < NUM_VECTORS; k++) { + printf("Test Vector %d:\n", k); + hmac_sha1(prf_vec[k].data, prf_vec[k].data_len, prf_vec[k].key, + prf_vec[k].key_len, digest); + c = bcmp(digest, prf_vec[k].digest1, 20); + dprintf("HMAC_SHA1", digest, 20, c); + if (c) fail++; + + bzero(output, 64); + if (PRF(prf_vec[k].key, prf_vec[k].key_len, + prf_vec[k].prefix, prf_vec[k].prefix_len, + prf_vec[k].data, prf_vec[k].data_len, output, 16)) + fail++; + c = bcmp(output, prf_vec[k].prf, 16); + dprintf("PRF", output, 16, c); + if (c) fail++; + + bzero(output, 64); + if (fPRF(prf_vec[k].key, prf_vec[k].key_len, + prf_vec[k].prefix, prf_vec[k].prefix_len, + prf_vec[k].data, prf_vec[k].data_len, output, 16)) + fail++; + c = bcmp(output, prf_vec[k].prf, 16); + dprintf("fPRF", output, 16, c); + if (c) fail++; + + bzero(output, 64); + if (PRF(prf_vec[k].key, prf_vec[k].key_len, + prf_vec[k].prefix, prf_vec[k].prefix_len, + prf_vec[k].data, prf_vec[k].data_len, output, 64)) + fail++; + c = bcmp(output, prf_vec[k].prf, 64); + dprintf("PRF", output, 64, c); + if (c) fail++; + + bzero(output, 64); + if (fPRF(prf_vec[k].key, prf_vec[k].key_len, + prf_vec[k].prefix, prf_vec[k].prefix_len, + prf_vec[k].data, prf_vec[k].data_len, output, 64)) + fail++; + c = bcmp(output, prf_vec[k].prf, 64); + dprintf("fPRF", output, 64, c); + if (c) fail++; + } + + + fprintf(stderr, "%s: %s\n", *argv, fail?"FAILED":"PASSED"); + return (fail); +} +#endif /* PRF_TIMING */ +#endif /* BCMPRF_TEST */ diff --git a/release/src-rt/bcmcrypto/prf_vectors.h b/release/src-rt/bcmcrypto/prf_vectors.h new file mode 100755 index 0000000000..77419b191d --- /dev/null +++ b/release/src-rt/bcmcrypto/prf_vectors.h @@ -0,0 +1,143 @@ +/* + * prf_vectors.h + * PRF test vectors + * + * Copyright (C) 2010, Broadcom Corporation + * All Rights Reserved. + * + * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation; + * the contents of this file may not be disclosed to third parties, copied + * or duplicated in any form, in whole or in part, without the prior + * written permission of Broadcom Corporation. + * + * $Id: prf_vectors.h,v 1.7 2006-06-22 00:16:57 Exp $ + */ + +#include + +/* test vectors from rfc2202 */ +uint8 key_0[] = { + 0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0b, + 0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0b, + 0x0b, 0x0b, 0x0b, 0x0b + }; + +uint8 prefix_0[6] = "prefix"; + +uint8 data_0[8] = "Hi There"; + +uint8 digest_0[] = { + 0x92, 0x94, 0x72, 0x7a, 0x36, 0x38, 0xbb, 0x1c, + 0x13, 0xf4, 0x8e, 0xf8, 0x15, 0x8b, 0xfc, 0x9d + }; + +uint8 digest1_0[] = { + 0xb6, 0x17, 0x31, 0x86, 0x55, 0x05, 0x72, 0x64, + 0xe2, 0x8b, 0xc0, 0xb6, 0xfb, 0x37, 0x8c, 0x8e, + 0xf1, 0x46, 0xbe, 0x00 + }; + +uint8 prf_0[] = { + 0xbc, 0xd4, 0xc6, 0x50, 0xb3, 0x0b, 0x96, 0x84, + 0x95, 0x18, 0x29, 0xe0, 0xd7, 0x5f, 0x9d, 0x54, + 0xb8, 0x62, 0x17, 0x5e, 0xd9, 0xf0, 0x06, 0x06, + 0xe1, 0x7d, 0x8d, 0xa3, 0x54, 0x02, 0xff, 0xee, + 0x75, 0xdf, 0x78, 0xc3, 0xd3, 0x1e, 0x0f, 0x88, + 0x9f, 0x01, 0x21, 0x20, 0xc0, 0x86, 0x2b, 0xeb, + 0x67, 0x75, 0x3e, 0x74, 0x39, 0xae, 0x24, 0x2e, + 0xdb, 0x83, 0x73, 0x69, 0x83, 0x56, 0xcf, 0x5a + }; + + +uint8 key_1[4] = "Jefe"; + +uint8 prefix_1[6] = "prefix"; + +uint8 data_1[28] = "what do ya want for nothing?"; + +uint8 digest_1[] = { + 0x75, 0x0c, 0x78, 0x3e, 0x6a, 0xb0, 0xb5, 0x03, + 0xea, 0xa8, 0x6e, 0x31, 0x0a, 0x5d, 0xb7, 0x38 + }; + +uint8 digest1_1[] = { + 0xef, 0xfc, 0xdf, 0x6a, 0xe5, 0xeb, 0x2f, 0xa2, + 0xd2, 0x74, 0x16, 0xd5, 0xf1, 0x84, 0xdf, 0x9c, + 0x25, 0x9a, 0x7c, 0x79 + }; + +uint8 prf_1[] = { + 0x51, 0xf4, 0xde, 0x5b, 0x33, 0xf2, 0x49, 0xad, + 0xf8, 0x1a, 0xeb, 0x71, 0x3a, 0x3c, 0x20, 0xf4, + 0xfe, 0x63, 0x14, 0x46, 0xfa, 0xbd, 0xfa, 0x58, + 0x24, 0x47, 0x59, 0xae, 0x58, 0xef, 0x90, 0x09, + 0xa9, 0x9a, 0xbf, 0x4e, 0xac, 0x2c, 0xa5, 0xfa, + 0x87, 0xe6, 0x92, 0xc4, 0x40, 0xeb, 0x40, 0x02, + 0x3e, 0x7b, 0xab, 0xb2, 0x06, 0xd6, 0x1d, 0xe7, + 0xb9, 0x2f, 0x41, 0x52, 0x90, 0x92, 0xb8, 0xfc + }; + + +uint8 key_2[] = { + 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, + 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, + 0xAA, 0xAA, 0xAA, 0xAA + }; + +uint8 prefix_2[6] = "prefix"; + +uint8 data_2[] = { + 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, + 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, + 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, + 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, + 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD, 0xDD + }; + +uint8 digest_2[] = { + 0x56, 0xbe, 0x34, 0x52, 0x1d, 0x14, 0x4c, 0x88, + 0xdb, 0xb8, 0xc7, 0x33, 0xf0, 0xe8, 0xb3, 0xf6 + }; + +uint8 digest1_2[] = { + 0x12, 0x5d, 0x73, 0x42, 0xb9, 0xac, 0x11, 0xcd, + 0x91, 0xa3, 0x9a, 0xf4, 0x8a, 0xa1, 0x7b, 0x4f, + 0x63, 0xf1, 0x75, 0xd3 + }; + +uint8 prf_2[] = { + 0xe1, 0xac, 0x54, 0x6e, 0xc4, 0xcb, 0x63, 0x6f, + 0x99, 0x76, 0x48, 0x7b, 0xe5, 0xc8, 0x6b, 0xe1, + 0x7a, 0x02, 0x52, 0xca, 0x5d, 0x8d, 0x8d, 0xf1, + 0x2c, 0xfb, 0x04, 0x73, 0x52, 0x52, 0x49, 0xce, + 0x9d, 0xd8, 0xd1, 0x77, 0xea, 0xd7, 0x10, 0xbc, + 0x9b, 0x59, 0x05, 0x47, 0x23, 0x91, 0x07, 0xae, + 0xf7, 0xb4, 0xab, 0xd4, 0x3d, 0x87, 0xf0, 0xa6, + 0x8f, 0x1c, 0xbd, 0x9e, 0x2b, 0x6f, 0x76, 0x07 + }; + +typedef struct { + unsigned char *key; + int key_len; + unsigned char *prefix; + int prefix_len; + unsigned char *data; + int data_len; + unsigned char* digest; + unsigned char* digest1; + unsigned char* prf; +} prf_vector_t; + +#define PRF_VECTOR_ENTRY(x) \ +{ \ + key_##x, sizeof(key_##x), prefix_##x, sizeof(prefix_##x), \ + data_##x, sizeof(data_##x), digest_##x, digest1_##x, prf_##x \ +} + +prf_vector_t prf_vec[] = { + PRF_VECTOR_ENTRY(0), + PRF_VECTOR_ENTRY(1), + PRF_VECTOR_ENTRY(2) +}; + +#define NUM_VECTORS (sizeof(prf_vec)/sizeof(prf_vec[0])) diff --git a/release/src-rt/bcmcrypto/random.c b/release/src-rt/bcmcrypto/random.c new file mode 100755 index 0000000000..dfa9a4d295 --- /dev/null +++ b/release/src-rt/bcmcrypto/random.c @@ -0,0 +1,180 @@ +/* + * random.c + * Copyright (C) 2010, Broadcom Corporation + * All Rights Reserved. + * + * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation; + * the contents of this file may not be disclosed to third parties, copied + * or duplicated in any form, in whole or in part, without the prior + * written permission of Broadcom Corporation. + * + * $Id: random.c,v 1.13 2009-06-11 02:38:23 Exp $ + */ +#include +#if defined(__linux__) +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#elif (defined(__ECOS) || defined(TARGETOS_nucleus)) +#include +#elif WIN32 +#include +#include +#include +#endif /* __linux__ */ + +#include +#include +#include + +#if defined(__linux__) +void linux_random(uint8 *rand, int len); +#elif WIN32 +void windows_random(uint8 *rand, int len); +#elif (defined(__ECOS) || defined(TARGETOS_nucleus)) +void generic_random(uint8* rand, int len); +#endif /* __linux__ */ + +void RAND_bytes(unsigned char *buf, int num) +{ +#if defined(__linux__) + linux_random(buf, num); +#elif WIN32 + windows_random(buf, num); +#elif (defined(__ECOS) || defined(TARGETOS_nucleus)) + generic_random(buf, num); +#endif /* __linux__ */ +} + +#if defined(__linux__) +void RAND_linux_init() +{ + BN_register_RAND(linux_random); +} + +#ifndef RANDOM_READ_TRY_MAX +#define RANDOM_READ_TRY_MAX 10 +#endif + +void linux_random(uint8 *rand, int len) +{ + static int dev_random_fd = -1; + int status; + int i; + + if (dev_random_fd == -1) + dev_random_fd = open("/dev/urandom", O_RDONLY|O_NONBLOCK); + + assert(dev_random_fd != -1); + + for (i = 0; i < RANDOM_READ_TRY_MAX; i++) { + status = read(dev_random_fd, rand, len); + if (status == -1) { + if (errno == EINTR) + continue; + + assert(status != -1); + } + + return; + } + + assert(i != RANDOM_READ_TRY_MAX); +} +#elif __ECOS +void RAND_ecos_init() +{ + BN_register_RAND(generic_random); +} +#elif WIN32 +void RAND_windows_init() +{ + BN_register_RAND(windows_random); +} + +void windows_random(uint8 *rand, int len) +{ + /* Declare and initialize variables */ + + HCRYPTPROV hCryptProv = NULL; + LPCSTR UserName = "{56E9D11F-76B8-42fa-8645-76980E4E8648}"; + + /* + Attempt to acquire a context and a key + container. The context will use the default CSP + for the RSA_FULL provider type. DwFlags is set to 0 + to attempt to open an existing key container. + */ + if (CryptAcquireContext(&hCryptProv, + UserName, + NULL, + PROV_RSA_FULL, + 0)) + { + /* do nothing */ + } + else + { + /* + An error occurred in acquiring the context. This could mean + that the key container requested does not exist. In this case, + the function can be called again to attempt to create a new key + container. Error codes are defined in winerror.h. + */ + if (GetLastError() == NTE_BAD_KEYSET) + { + if (!CryptAcquireContext(&hCryptProv, + UserName, + NULL, + PROV_RSA_FULL, + CRYPT_NEWKEYSET)) + { + printf("Could not create a new key container.\n"); + } + } + else + { + printf("A cryptographic service handle could not be acquired.\n"); + } + } + + if (hCryptProv) + { + /* Generate a random initialization vector. */ + if (!CryptGenRandom(hCryptProv, len, rand)) + { + printf("Error during CryptGenRandom.\n"); + } + if (!CryptReleaseContext(hCryptProv, 0)) + printf("Failed CryptReleaseContext\n"); + } + return; +} +#elif TARGETOS_nucleus +void RAND_generic_init() +{ + BN_register_RAND(generic_random); +} +#endif /* __linux__ */ + +#if (defined(__ECOS) || defined(TARGETOS_nucleus)) +void +generic_random(uint8 * random, int len) +{ + int tlen = len; + while (tlen--) { + *random = (uint8)rand(); + *random++; + } + return; +} +#endif diff --git a/release/src-rt/bcmcrypto/rc4.c b/release/src-rt/bcmcrypto/rc4.c new file mode 100755 index 0000000000..30a838a1c1 --- /dev/null +++ b/release/src-rt/bcmcrypto/rc4.c @@ -0,0 +1,114 @@ +/* + * rc4.c + * RC4 stream cipher + * + * Copyright (C) 2010, Broadcom Corporation + * All Rights Reserved. + * + * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation; + * the contents of this file may not be disclosed to third parties, copied + * or duplicated in any form, in whole or in part, without the prior + * written permission of Broadcom Corporation. + * + * $Id: rc4.c,v 1.10 2006-06-14 21:07:54 Exp $ + */ + +#include +#include + +void +BCMROMFN(prepare_key)(uint8 *key_data, int key_data_len, rc4_ks_t *ks) +{ + unsigned int counter, index1 = 0, index2 = 0; + uint8 key_byte, temp; + uint8 *key_state = ks->state; + + for (counter = 0; counter < RC4_STATE_NBYTES; counter++) { + key_state[counter] = (uint8) counter; + } + + for (counter = 0; counter < RC4_STATE_NBYTES; counter++) { + key_byte = key_data[index1]; + index2 = (key_byte + key_state[counter] + index2) % RC4_STATE_NBYTES; + temp = key_state[counter]; + key_state[counter] = key_state[index2]; + key_state[index2] = temp; + index1 = (index1 + 1) % key_data_len; + } + + ks->x = 0; + ks->y = 0; +} + +/* encrypt or decrypt using RC4 */ +void +BCMROMFN(rc4)(uint8 *buf, int data_len, rc4_ks_t *ks) +{ + uint8 tmp; + uint8 xor_ind, x = ks->x, y = ks->y, *key_state = ks->state; + int i; + + for (i = 0; i < data_len; i++) { + y += key_state[++x]; /* mod RC4_STATE_NBYTES */ + tmp = key_state[x]; + key_state[x] = key_state[y]; + key_state[y] = tmp; + xor_ind = key_state[x] + key_state[y]; + buf[i] ^= key_state[xor_ind]; + } + + ks->x = x; + ks->y = y; +} + +#ifdef BCMRC4_TEST +#include + +#if defined(__GNUC__) +extern void bcopy(const void *src, void *dst, int len); +extern int bcmp(const void *b1, const void *b2, int len); +extern void bzero(void *b, int len); +#else +#define bcopy(src, dst, len) memcpy((dst), (src), (len)) +#define bcmp(b1, b2, len) memcmp((b1), (b2), (len)) +#define bzero(b, len) memset((b), 0, (len)) +#endif + +#include "rc4_vectors.h" +#define NUM_VECTORS (sizeof(rc4_vec)/sizeof(rc4_vec[0])) + +int main(int argc, char **argv) +{ + int k, fail = 0; + uint8 data[RC4_STATE_NBYTES]; + rc4_ks_t ks; + for (k = 0; k < NUM_VECTORS; k++) { + bzero(data, RC4_STATE_NBYTES); + bcopy(rc4_vec[k].input, data, rc4_vec[k].il); + + prepare_key(rc4_vec[k].key, rc4_vec[k].kl, &ks); + rc4(data, rc4_vec[k].il, &ks); + if (bcmp(data, rc4_vec[k].ref, rc4_vec[k].il) != 0) { + printf("%s: rc4 encrypt failed\n", *argv); + fail++; + } else { + printf("%s: rc4 encrypt %d passed\n", *argv, k); + } + + bzero(data, RC4_STATE_NBYTES); + bcopy(rc4_vec[k].ref, data, rc4_vec[k].il); + + prepare_key(rc4_vec[k].key, rc4_vec[k].kl, &ks); + rc4(data, rc4_vec[k].il, &ks); + if (bcmp(data, rc4_vec[k].input, rc4_vec[k].il) != 0) { + printf("%s: rc4 decrypt failed\n", *argv); + fail++; + } else { + printf("%s: rc4 decrypt %d passed\n", *argv, k); + } + } + + printf("%s: %s\n", *argv, fail?"FAILED":"PASSED"); + return (fail); +} +#endif /* BCMRC4_TEST */ diff --git a/release/src-rt/bcmcrypto/rc4_vectors.h b/release/src-rt/bcmcrypto/rc4_vectors.h new file mode 100755 index 0000000000..c540396e6e --- /dev/null +++ b/release/src-rt/bcmcrypto/rc4_vectors.h @@ -0,0 +1,294 @@ +/* + * rc4_vectors.h + * RC4 stream cipher test vectors + * + * Copyright (C) 2010, Broadcom Corporation + * All Rights Reserved. + * + * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation; + * the contents of this file may not be disclosed to third parties, copied + * or duplicated in any form, in whole or in part, without the prior + * written permission of Broadcom Corporation. + * + * $Id: rc4_vectors.h,v 1.3 2006-06-14 21:08:49 Exp $ + */ + +#include + +/* 16 byte key, 16 bytes of data */ +uint8 key_00[] = { + 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, + 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F + }; + +uint8 input_00[] = { + 0x00, 0x11, 0x22, 0x33, 0x44, 0x55, 0x66, 0x77, + 0x88, 0x99, 0xAA, 0xBB, 0xCC, 0xDD, 0xEE, 0xFF + }; + +uint8 ref_00[] = { + 0xE9, 0x8D, 0x62, 0xCA, 0x03, 0xB7, 0x7F, 0xBB, + 0x8E, 0x42, 0x3D, 0x7D, 0xC2, 0x00, 0xC4, 0xB0 + }; + +/* 24 byte key, 16 bytes of data */ +uint8 key_01[] = { + 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, + 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, + 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17 + }; + +uint8 input_01[] = { + 0x00, 0x11, 0x22, 0x33, 0x44, 0x55, 0x66, 0x77, + 0x88, 0x99, 0xAA, 0xBB, 0xCC, 0xDD, 0xEE, 0xFF + }; + +uint8 ref_01[] = { + 0x2A, 0x82, 0xD7, 0xBB, 0xCF, 0x41, 0xE7, 0xDE, + 0x3F, 0x7F, 0x3F, 0x27, 0x28, 0xD3, 0xE3, 0xBC + }; + +/* 32 byte key, 16 bytes of data */ +uint8 key_02[] = { + 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, + 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, + 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, + 0x18, 0x19, 0x1A, 0x1B, 0x1C, 0x1D, 0x1E, 0x1F + }; + +uint8 input_02[] = { + 0x00, 0x11, 0x22, 0x33, 0x44, 0x55, 0x66, 0x77, + 0x88, 0x99, 0xAA, 0xBB, 0xCC, 0xDD, 0xEE, 0xFF + }; + +uint8 ref_02[] = { + 0x10, 0x35, 0xD3, 0xFA, 0xEE, 0xFA, 0xCF, 0x4A, + 0xFE, 0xA5, 0x34, 0x3B, 0xC4, 0xE8, 0x87, 0x6C + }; + +/* 24 byte key, 24 bytes of data */ +uint8 key_03[] = { + 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, + 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, + 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17 + }; + +uint8 input_03[] = { + 0x00, 0x11, 0x22, 0x33, 0x44, 0x55, 0x66, 0x77, + 0x88, 0x99, 0xAA, 0xBB, 0xCC, 0xDD, 0xEE, 0xFF, + 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07 + }; + +uint8 ref_03[] = { + 0x2A, 0x82, 0xD7, 0xBB, 0xCF, 0x41, 0xE7, 0xDE, + 0x3F, 0x7F, 0x3F, 0x27, 0x28, 0xD3, 0xE3, 0xBC, + 0xBC, 0xAC, 0x8A, 0x44, 0xFC, 0x5A, 0xFE, 0x8A + }; + +/* 32 byte key, 24 bytes of data */ +uint8 key_04[] = { + 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, + 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, + 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, + 0x18, 0x19, 0x1A, 0x1B, 0x1C, 0x1D, 0x1E, 0x1F + }; + +uint8 input_04[] = { + 0x00, 0x11, 0x22, 0x33, 0x44, 0x55, 0x66, 0x77, + 0x88, 0x99, 0xAA, 0xBB, 0xCC, 0xDD, 0xEE, 0xFF, + 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07 + }; + +uint8 ref_04[] = { + 0x10, 0x35, 0xD3, 0xFA, 0xEE, 0xFA, 0xCF, 0x4A, + 0xFE, 0xA5, 0x34, 0x3B, 0xC4, 0xE8, 0x87, 0x6C, + 0xCC, 0x88, 0x22, 0x77, 0xD7, 0xCB, 0xA2, 0xBA + }; + +/* 32 byte key, 32 bytes of data */ +uint8 key_05[] = { + 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, + 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, + 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, + 0x18, 0x19, 0x1A, 0x1B, 0x1C, 0x1D, 0x1E, 0x1F + }; + +uint8 input_05[] = { + 0x00, 0x11, 0x22, 0x33, 0x44, 0x55, 0x66, 0x77, + 0x88, 0x99, 0xAA, 0xBB, 0xCC, 0xDD, 0xEE, 0xFF, + 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, + 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F + }; + +uint8 ref_05[] = { + 0x10, 0x35, 0xD3, 0xFA, 0xEE, 0xFA, 0xCF, 0x4A, + 0xFE, 0xA5, 0x34, 0x3B, 0xC4, 0xE8, 0x87, 0x6C, + 0xCC, 0x88, 0x22, 0x77, 0xD7, 0xCB, 0xA2, 0xBA, + 0x6E, 0xF3, 0x2A, 0x82, 0x85, 0xC3, 0xC6, 0x97 + }; + +/* 16 byte key, 32 bytes of data */ +uint8 key_06[] = { + 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, + 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F + }; + +uint8 input_06[] = { + 0x00, 0x11, 0x22, 0x33, 0x44, 0x55, 0x66, 0x77, + 0x88, 0x99, 0xAA, 0xBB, 0xCC, 0xDD, 0xEE, 0xFF, + 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, + 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F + }; + +uint8 ref_06[] = { + 0xE9, 0x8D, 0x62, 0xCA, 0x03, 0xB7, 0x7F, 0xBB, + 0x8E, 0x42, 0x3D, 0x7D, 0xC2, 0x00, 0xC4, 0xB0, + 0xD3, 0x70, 0x83, 0x5C, 0xF6, 0xB2, 0x44, 0xE9, + 0x87, 0x97, 0xAF, 0xD2, 0xF5, 0x3A, 0xED, 0x0D + }; + +/* RC4 test vectors generated with our tcl rc4 implementation */ +uint8 key_07[] = { + 0x00, 0x00, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05 + }; + +uint8 input_07[] = { + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 + }; + +uint8 ref_07[] = { + 0x0f, 0x17, 0xc0, 0x50, 0xbd, 0x01, 0x7f, 0x4a, + 0xce, 0xa1, 0xde, 0xc3, 0x10, 0x2b, 0x16, 0xd1 + }; + +uint8 key_08[] = { + 0x00, 0x00, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05 + }; + +uint8 input_08[] = { + 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, + 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08 + }; + +uint8 ref_08[] = { + 0x0e, 0x15, 0xc3, 0x54, 0xb8, 0x07, 0x78, 0x42, + 0xcf, 0xa3, 0xdd, 0xc7, 0x15, 0x2d, 0x11, 0xd9 + }; + +uint8 key_09[] = { + 0x00, 0x00, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05 + }; + +uint8 input_09[] = { + 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, + 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18 + }; + +uint8 ref_09[] = { + 0x1e, 0x05, 0xd3, 0x44, 0xa8, 0x17, 0x68, 0x52, + 0xdf, 0xb3, 0xcd, 0xd7, 0x05, 0x3d, 0x01, 0xc9 + }; + +uint8 key_10[] = { + 0x00, 0x00, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05 + }; + +uint8 input_10[] = { + 0xfe, 0xdc, 0xba, 0x98, 0x76, 0x54, 0x32, 0x10, + 0xfe, 0xdc, 0xba, 0x98, 0x76, 0x54, 0x32, 0x10 + }; + +uint8 ref_10[] = { + 0xf1, 0xcb, 0x7a, 0xc8, 0xcb, 0x55, 0x4d, 0x5a, + 0x30, 0x7d, 0x64, 0x5b, 0x66, 0x7f, 0x24, 0xc1 + }; + +uint8 key_11[] = { + 0x00, 0x00, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, + 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d + }; + +uint8 input_11[] = { + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 + }; + +uint8 ref_11[] = { + 0x85, 0x5c, 0xba, 0xe1, 0x78, 0xfa, 0x5c, 0xc2, + 0xf8, 0x81, 0xa2, 0xef, 0xce, 0x49, 0x47, 0xb7 + }; + +uint8 key_12[] = { + 0x00, 0x00, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, + 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d + }; + +uint8 input_12[] = { + 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, + 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08 + }; + +uint8 ref_12[] = { + 0x84, 0x5e, 0xb9, 0xe5, 0x7d, 0xfc, 0x5b, 0xca, + 0xf9, 0x83, 0xa1, 0xeb, 0xcb, 0x4f, 0x40, 0xbf + }; + +uint8 key_13[] = { + 0x00, 0x00, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, + 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d + }; + +uint8 input_13[] = { + 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, + 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18 + }; + +uint8 ref_13[] = { + 0x94, 0x4e, 0xa9, 0xf5, 0x6d, 0xec, 0x4b, 0xda, + 0xe9, 0x93, 0xb1, 0xfb, 0xdb, 0x5f, 0x50, 0xaf + }; + +uint8 key_14[] = { + 0x00, 0x00, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, + 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d + }; + +uint8 input_14[] = { + 0xfe, 0xdc, 0xba, 0x98, 0x76, 0x54, 0x32, 0x10, + 0xfe, 0xdc, 0xba, 0x98, 0x76, 0x54, 0x32, 0x10 + }; + +uint8 ref_14[] = { + 0x7b, 0x80, 0x00, 0x79, 0x0e, 0xae, 0x6e, 0xd2, + 0x06, 0x5d, 0x18, 0x77, 0xb8, 0x1d, 0x75, 0xa7 + }; + +typedef struct { + int kl; + uint8 *key; + int il; + uint8 *input; + uint8 *ref; +} rc4_vector_t; + +#define RC4_VECTOR_ENTRY(x) \ + { sizeof(key_##x), key_##x, sizeof(input_##x), input_##x, ref_##x } + +rc4_vector_t rc4_vec[] = { + RC4_VECTOR_ENTRY(00), + RC4_VECTOR_ENTRY(01), + RC4_VECTOR_ENTRY(02), + RC4_VECTOR_ENTRY(03), + RC4_VECTOR_ENTRY(04), + RC4_VECTOR_ENTRY(05), + RC4_VECTOR_ENTRY(06), + RC4_VECTOR_ENTRY(07), + RC4_VECTOR_ENTRY(08), + RC4_VECTOR_ENTRY(09), + RC4_VECTOR_ENTRY(10), + RC4_VECTOR_ENTRY(11), + RC4_VECTOR_ENTRY(12), + RC4_VECTOR_ENTRY(13), + RC4_VECTOR_ENTRY(14) + }; diff --git a/release/src-rt/bcmcrypto/rijndael-alg-fst.c b/release/src-rt/bcmcrypto/rijndael-alg-fst.c new file mode 100755 index 0000000000..b0cd850c33 --- /dev/null +++ b/release/src-rt/bcmcrypto/rijndael-alg-fst.c @@ -0,0 +1,1539 @@ +/* + * rijndael-alg-fst.c + * + * @version 3.0 (December 2000) + * + * Optimised ANSI C code for the Rijndael cipher (now AES) + * + * @author Vincent Rijmen + * @author Antoon Bosselaers + * @author Paulo Barreto + * + * This code is hereby placed in the public domain. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHORS ''AS IS'' AND ANY EXPRESS + * OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE + * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR + * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, + * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE + * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, + * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * Copyright (C) 2010, Broadcom Corporation + * All Rights Reserved. + * + * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation; + * the contents of this file may not be disclosed to third parties, copied + * or duplicated in any form, in whole or in part, without the prior + * written permission of Broadcom Corporation. + * + * $Id: rijndael-alg-fst.c,v 1.9 2009-10-28 00:28:59 Exp $ + */ +#include + +/* + * Te0[x] = S [x].[02, 01, 01, 03]; + * Te1[x] = S [x].[03, 02, 01, 01]; + * Te2[x] = S [x].[01, 03, 02, 01]; + * Te3[x] = S [x].[01, 01, 03, 02]; + * Te4[x] = S [x].[01, 01, 01, 01]; + * + * Td0[x] = Si[x].[0e, 09, 0d, 0b]; + * Td1[x] = Si[x].[0b, 0e, 09, 0d]; + * Td2[x] = Si[x].[0d, 0b, 0e, 09]; + * Td3[x] = Si[x].[09, 0d, 0b, 0e]; + * Td4[x] = Si[x].[01, 01, 01, 01]; + */ + +#define Te0 rijndaelTe0 /* Te0[x] can be shared with ccx.c as rijndaelTe0 */ +const uint32 rijndaelTe0[256] = { + 0xc66363a5U, 0xf87c7c84U, 0xee777799U, 0xf67b7b8dU, + 0xfff2f20dU, 0xd66b6bbdU, 0xde6f6fb1U, 0x91c5c554U, + 0x60303050U, 0x02010103U, 0xce6767a9U, 0x562b2b7dU, + 0xe7fefe19U, 0xb5d7d762U, 0x4dababe6U, 0xec76769aU, + 0x8fcaca45U, 0x1f82829dU, 0x89c9c940U, 0xfa7d7d87U, + 0xeffafa15U, 0xb25959ebU, 0x8e4747c9U, 0xfbf0f00bU, + 0x41adadecU, 0xb3d4d467U, 0x5fa2a2fdU, 0x45afafeaU, + 0x239c9cbfU, 0x53a4a4f7U, 0xe4727296U, 0x9bc0c05bU, + 0x75b7b7c2U, 0xe1fdfd1cU, 0x3d9393aeU, 0x4c26266aU, + 0x6c36365aU, 0x7e3f3f41U, 0xf5f7f702U, 0x83cccc4fU, + 0x6834345cU, 0x51a5a5f4U, 0xd1e5e534U, 0xf9f1f108U, + 0xe2717193U, 0xabd8d873U, 0x62313153U, 0x2a15153fU, + 0x0804040cU, 0x95c7c752U, 0x46232365U, 0x9dc3c35eU, + 0x30181828U, 0x379696a1U, 0x0a05050fU, 0x2f9a9ab5U, + 0x0e070709U, 0x24121236U, 0x1b80809bU, 0xdfe2e23dU, + 0xcdebeb26U, 0x4e272769U, 0x7fb2b2cdU, 0xea75759fU, + 0x1209091bU, 0x1d83839eU, 0x582c2c74U, 0x341a1a2eU, + 0x361b1b2dU, 0xdc6e6eb2U, 0xb45a5aeeU, 0x5ba0a0fbU, + 0xa45252f6U, 0x763b3b4dU, 0xb7d6d661U, 0x7db3b3ceU, + 0x5229297bU, 0xdde3e33eU, 0x5e2f2f71U, 0x13848497U, + 0xa65353f5U, 0xb9d1d168U, 0x00000000U, 0xc1eded2cU, + 0x40202060U, 0xe3fcfc1fU, 0x79b1b1c8U, 0xb65b5bedU, + 0xd46a6abeU, 0x8dcbcb46U, 0x67bebed9U, 0x7239394bU, + 0x944a4adeU, 0x984c4cd4U, 0xb05858e8U, 0x85cfcf4aU, + 0xbbd0d06bU, 0xc5efef2aU, 0x4faaaae5U, 0xedfbfb16U, + 0x864343c5U, 0x9a4d4dd7U, 0x66333355U, 0x11858594U, + 0x8a4545cfU, 0xe9f9f910U, 0x04020206U, 0xfe7f7f81U, + 0xa05050f0U, 0x783c3c44U, 0x259f9fbaU, 0x4ba8a8e3U, + 0xa25151f3U, 0x5da3a3feU, 0x804040c0U, 0x058f8f8aU, + 0x3f9292adU, 0x219d9dbcU, 0x70383848U, 0xf1f5f504U, + 0x63bcbcdfU, 0x77b6b6c1U, 0xafdada75U, 0x42212163U, + 0x20101030U, 0xe5ffff1aU, 0xfdf3f30eU, 0xbfd2d26dU, + 0x81cdcd4cU, 0x180c0c14U, 0x26131335U, 0xc3ecec2fU, + 0xbe5f5fe1U, 0x359797a2U, 0x884444ccU, 0x2e171739U, + 0x93c4c457U, 0x55a7a7f2U, 0xfc7e7e82U, 0x7a3d3d47U, + 0xc86464acU, 0xba5d5de7U, 0x3219192bU, 0xe6737395U, + 0xc06060a0U, 0x19818198U, 0x9e4f4fd1U, 0xa3dcdc7fU, + 0x44222266U, 0x542a2a7eU, 0x3b9090abU, 0x0b888883U, + 0x8c4646caU, 0xc7eeee29U, 0x6bb8b8d3U, 0x2814143cU, + 0xa7dede79U, 0xbc5e5ee2U, 0x160b0b1dU, 0xaddbdb76U, + 0xdbe0e03bU, 0x64323256U, 0x743a3a4eU, 0x140a0a1eU, + 0x924949dbU, 0x0c06060aU, 0x4824246cU, 0xb85c5ce4U, + 0x9fc2c25dU, 0xbdd3d36eU, 0x43acacefU, 0xc46262a6U, + 0x399191a8U, 0x319595a4U, 0xd3e4e437U, 0xf279798bU, + 0xd5e7e732U, 0x8bc8c843U, 0x6e373759U, 0xda6d6db7U, + 0x018d8d8cU, 0xb1d5d564U, 0x9c4e4ed2U, 0x49a9a9e0U, + 0xd86c6cb4U, 0xac5656faU, 0xf3f4f407U, 0xcfeaea25U, + 0xca6565afU, 0xf47a7a8eU, 0x47aeaee9U, 0x10080818U, + 0x6fbabad5U, 0xf0787888U, 0x4a25256fU, 0x5c2e2e72U, + 0x381c1c24U, 0x57a6a6f1U, 0x73b4b4c7U, 0x97c6c651U, + 0xcbe8e823U, 0xa1dddd7cU, 0xe874749cU, 0x3e1f1f21U, + 0x964b4bddU, 0x61bdbddcU, 0x0d8b8b86U, 0x0f8a8a85U, + 0xe0707090U, 0x7c3e3e42U, 0x71b5b5c4U, 0xcc6666aaU, + 0x904848d8U, 0x06030305U, 0xf7f6f601U, 0x1c0e0e12U, + 0xc26161a3U, 0x6a35355fU, 0xae5757f9U, 0x69b9b9d0U, + 0x17868691U, 0x99c1c158U, 0x3a1d1d27U, 0x279e9eb9U, + 0xd9e1e138U, 0xebf8f813U, 0x2b9898b3U, 0x22111133U, + 0xd26969bbU, 0xa9d9d970U, 0x078e8e89U, 0x339494a7U, + 0x2d9b9bb6U, 0x3c1e1e22U, 0x15878792U, 0xc9e9e920U, + 0x87cece49U, 0xaa5555ffU, 0x50282878U, 0xa5dfdf7aU, + 0x038c8c8fU, 0x59a1a1f8U, 0x09898980U, 0x1a0d0d17U, + 0x65bfbfdaU, 0xd7e6e631U, 0x844242c6U, 0xd06868b8U, + 0x824141c3U, 0x299999b0U, 0x5a2d2d77U, 0x1e0f0f11U, + 0x7bb0b0cbU, 0xa85454fcU, 0x6dbbbbd6U, 0x2c16163aU +}; +static const uint32 Te1[256] = { + 0xa5c66363U, 0x84f87c7cU, 0x99ee7777U, 0x8df67b7bU, + 0x0dfff2f2U, 0xbdd66b6bU, 0xb1de6f6fU, 0x5491c5c5U, + 0x50603030U, 0x03020101U, 0xa9ce6767U, 0x7d562b2bU, + 0x19e7fefeU, 0x62b5d7d7U, 0xe64dababU, 0x9aec7676U, + 0x458fcacaU, 0x9d1f8282U, 0x4089c9c9U, 0x87fa7d7dU, + 0x15effafaU, 0xebb25959U, 0xc98e4747U, 0x0bfbf0f0U, + 0xec41adadU, 0x67b3d4d4U, 0xfd5fa2a2U, 0xea45afafU, + 0xbf239c9cU, 0xf753a4a4U, 0x96e47272U, 0x5b9bc0c0U, + 0xc275b7b7U, 0x1ce1fdfdU, 0xae3d9393U, 0x6a4c2626U, + 0x5a6c3636U, 0x417e3f3fU, 0x02f5f7f7U, 0x4f83ccccU, + 0x5c683434U, 0xf451a5a5U, 0x34d1e5e5U, 0x08f9f1f1U, + 0x93e27171U, 0x73abd8d8U, 0x53623131U, 0x3f2a1515U, + 0x0c080404U, 0x5295c7c7U, 0x65462323U, 0x5e9dc3c3U, + 0x28301818U, 0xa1379696U, 0x0f0a0505U, 0xb52f9a9aU, + 0x090e0707U, 0x36241212U, 0x9b1b8080U, 0x3ddfe2e2U, + 0x26cdebebU, 0x694e2727U, 0xcd7fb2b2U, 0x9fea7575U, + 0x1b120909U, 0x9e1d8383U, 0x74582c2cU, 0x2e341a1aU, + 0x2d361b1bU, 0xb2dc6e6eU, 0xeeb45a5aU, 0xfb5ba0a0U, + 0xf6a45252U, 0x4d763b3bU, 0x61b7d6d6U, 0xce7db3b3U, + 0x7b522929U, 0x3edde3e3U, 0x715e2f2fU, 0x97138484U, + 0xf5a65353U, 0x68b9d1d1U, 0x00000000U, 0x2cc1ededU, + 0x60402020U, 0x1fe3fcfcU, 0xc879b1b1U, 0xedb65b5bU, + 0xbed46a6aU, 0x468dcbcbU, 0xd967bebeU, 0x4b723939U, + 0xde944a4aU, 0xd4984c4cU, 0xe8b05858U, 0x4a85cfcfU, + 0x6bbbd0d0U, 0x2ac5efefU, 0xe54faaaaU, 0x16edfbfbU, + 0xc5864343U, 0xd79a4d4dU, 0x55663333U, 0x94118585U, + 0xcf8a4545U, 0x10e9f9f9U, 0x06040202U, 0x81fe7f7fU, + 0xf0a05050U, 0x44783c3cU, 0xba259f9fU, 0xe34ba8a8U, + 0xf3a25151U, 0xfe5da3a3U, 0xc0804040U, 0x8a058f8fU, + 0xad3f9292U, 0xbc219d9dU, 0x48703838U, 0x04f1f5f5U, + 0xdf63bcbcU, 0xc177b6b6U, 0x75afdadaU, 0x63422121U, + 0x30201010U, 0x1ae5ffffU, 0x0efdf3f3U, 0x6dbfd2d2U, + 0x4c81cdcdU, 0x14180c0cU, 0x35261313U, 0x2fc3ececU, + 0xe1be5f5fU, 0xa2359797U, 0xcc884444U, 0x392e1717U, + 0x5793c4c4U, 0xf255a7a7U, 0x82fc7e7eU, 0x477a3d3dU, + 0xacc86464U, 0xe7ba5d5dU, 0x2b321919U, 0x95e67373U, + 0xa0c06060U, 0x98198181U, 0xd19e4f4fU, 0x7fa3dcdcU, + 0x66442222U, 0x7e542a2aU, 0xab3b9090U, 0x830b8888U, + 0xca8c4646U, 0x29c7eeeeU, 0xd36bb8b8U, 0x3c281414U, + 0x79a7dedeU, 0xe2bc5e5eU, 0x1d160b0bU, 0x76addbdbU, + 0x3bdbe0e0U, 0x56643232U, 0x4e743a3aU, 0x1e140a0aU, + 0xdb924949U, 0x0a0c0606U, 0x6c482424U, 0xe4b85c5cU, + 0x5d9fc2c2U, 0x6ebdd3d3U, 0xef43acacU, 0xa6c46262U, + 0xa8399191U, 0xa4319595U, 0x37d3e4e4U, 0x8bf27979U, + 0x32d5e7e7U, 0x438bc8c8U, 0x596e3737U, 0xb7da6d6dU, + 0x8c018d8dU, 0x64b1d5d5U, 0xd29c4e4eU, 0xe049a9a9U, + 0xb4d86c6cU, 0xfaac5656U, 0x07f3f4f4U, 0x25cfeaeaU, + 0xafca6565U, 0x8ef47a7aU, 0xe947aeaeU, 0x18100808U, + 0xd56fbabaU, 0x88f07878U, 0x6f4a2525U, 0x725c2e2eU, + 0x24381c1cU, 0xf157a6a6U, 0xc773b4b4U, 0x5197c6c6U, + 0x23cbe8e8U, 0x7ca1ddddU, 0x9ce87474U, 0x213e1f1fU, + 0xdd964b4bU, 0xdc61bdbdU, 0x860d8b8bU, 0x850f8a8aU, + 0x90e07070U, 0x427c3e3eU, 0xc471b5b5U, 0xaacc6666U, + 0xd8904848U, 0x05060303U, 0x01f7f6f6U, 0x121c0e0eU, + 0xa3c26161U, 0x5f6a3535U, 0xf9ae5757U, 0xd069b9b9U, + 0x91178686U, 0x5899c1c1U, 0x273a1d1dU, 0xb9279e9eU, + 0x38d9e1e1U, 0x13ebf8f8U, 0xb32b9898U, 0x33221111U, + 0xbbd26969U, 0x70a9d9d9U, 0x89078e8eU, 0xa7339494U, + 0xb62d9b9bU, 0x223c1e1eU, 0x92158787U, 0x20c9e9e9U, + 0x4987ceceU, 0xffaa5555U, 0x78502828U, 0x7aa5dfdfU, + 0x8f038c8cU, 0xf859a1a1U, 0x80098989U, 0x171a0d0dU, + 0xda65bfbfU, 0x31d7e6e6U, 0xc6844242U, 0xb8d06868U, + 0xc3824141U, 0xb0299999U, 0x775a2d2dU, 0x111e0f0fU, + 0xcb7bb0b0U, 0xfca85454U, 0xd66dbbbbU, 0x3a2c1616U +}; +static const uint32 Te2[256] = { + 0x63a5c663U, 0x7c84f87cU, 0x7799ee77U, 0x7b8df67bU, + 0xf20dfff2U, 0x6bbdd66bU, 0x6fb1de6fU, 0xc55491c5U, + 0x30506030U, 0x01030201U, 0x67a9ce67U, 0x2b7d562bU, + 0xfe19e7feU, 0xd762b5d7U, 0xabe64dabU, 0x769aec76U, + 0xca458fcaU, 0x829d1f82U, 0xc94089c9U, 0x7d87fa7dU, + 0xfa15effaU, 0x59ebb259U, 0x47c98e47U, 0xf00bfbf0U, + 0xadec41adU, 0xd467b3d4U, 0xa2fd5fa2U, 0xafea45afU, + 0x9cbf239cU, 0xa4f753a4U, 0x7296e472U, 0xc05b9bc0U, + 0xb7c275b7U, 0xfd1ce1fdU, 0x93ae3d93U, 0x266a4c26U, + 0x365a6c36U, 0x3f417e3fU, 0xf702f5f7U, 0xcc4f83ccU, + 0x345c6834U, 0xa5f451a5U, 0xe534d1e5U, 0xf108f9f1U, + 0x7193e271U, 0xd873abd8U, 0x31536231U, 0x153f2a15U, + 0x040c0804U, 0xc75295c7U, 0x23654623U, 0xc35e9dc3U, + 0x18283018U, 0x96a13796U, 0x050f0a05U, 0x9ab52f9aU, + 0x07090e07U, 0x12362412U, 0x809b1b80U, 0xe23ddfe2U, + 0xeb26cdebU, 0x27694e27U, 0xb2cd7fb2U, 0x759fea75U, + 0x091b1209U, 0x839e1d83U, 0x2c74582cU, 0x1a2e341aU, + 0x1b2d361bU, 0x6eb2dc6eU, 0x5aeeb45aU, 0xa0fb5ba0U, + 0x52f6a452U, 0x3b4d763bU, 0xd661b7d6U, 0xb3ce7db3U, + 0x297b5229U, 0xe33edde3U, 0x2f715e2fU, 0x84971384U, + 0x53f5a653U, 0xd168b9d1U, 0x00000000U, 0xed2cc1edU, + 0x20604020U, 0xfc1fe3fcU, 0xb1c879b1U, 0x5bedb65bU, + 0x6abed46aU, 0xcb468dcbU, 0xbed967beU, 0x394b7239U, + 0x4ade944aU, 0x4cd4984cU, 0x58e8b058U, 0xcf4a85cfU, + 0xd06bbbd0U, 0xef2ac5efU, 0xaae54faaU, 0xfb16edfbU, + 0x43c58643U, 0x4dd79a4dU, 0x33556633U, 0x85941185U, + 0x45cf8a45U, 0xf910e9f9U, 0x02060402U, 0x7f81fe7fU, + 0x50f0a050U, 0x3c44783cU, 0x9fba259fU, 0xa8e34ba8U, + 0x51f3a251U, 0xa3fe5da3U, 0x40c08040U, 0x8f8a058fU, + 0x92ad3f92U, 0x9dbc219dU, 0x38487038U, 0xf504f1f5U, + 0xbcdf63bcU, 0xb6c177b6U, 0xda75afdaU, 0x21634221U, + 0x10302010U, 0xff1ae5ffU, 0xf30efdf3U, 0xd26dbfd2U, + 0xcd4c81cdU, 0x0c14180cU, 0x13352613U, 0xec2fc3ecU, + 0x5fe1be5fU, 0x97a23597U, 0x44cc8844U, 0x17392e17U, + 0xc45793c4U, 0xa7f255a7U, 0x7e82fc7eU, 0x3d477a3dU, + 0x64acc864U, 0x5de7ba5dU, 0x192b3219U, 0x7395e673U, + 0x60a0c060U, 0x81981981U, 0x4fd19e4fU, 0xdc7fa3dcU, + 0x22664422U, 0x2a7e542aU, 0x90ab3b90U, 0x88830b88U, + 0x46ca8c46U, 0xee29c7eeU, 0xb8d36bb8U, 0x143c2814U, + 0xde79a7deU, 0x5ee2bc5eU, 0x0b1d160bU, 0xdb76addbU, + 0xe03bdbe0U, 0x32566432U, 0x3a4e743aU, 0x0a1e140aU, + 0x49db9249U, 0x060a0c06U, 0x246c4824U, 0x5ce4b85cU, + 0xc25d9fc2U, 0xd36ebdd3U, 0xacef43acU, 0x62a6c462U, + 0x91a83991U, 0x95a43195U, 0xe437d3e4U, 0x798bf279U, + 0xe732d5e7U, 0xc8438bc8U, 0x37596e37U, 0x6db7da6dU, + 0x8d8c018dU, 0xd564b1d5U, 0x4ed29c4eU, 0xa9e049a9U, + 0x6cb4d86cU, 0x56faac56U, 0xf407f3f4U, 0xea25cfeaU, + 0x65afca65U, 0x7a8ef47aU, 0xaee947aeU, 0x08181008U, + 0xbad56fbaU, 0x7888f078U, 0x256f4a25U, 0x2e725c2eU, + 0x1c24381cU, 0xa6f157a6U, 0xb4c773b4U, 0xc65197c6U, + 0xe823cbe8U, 0xdd7ca1ddU, 0x749ce874U, 0x1f213e1fU, + 0x4bdd964bU, 0xbddc61bdU, 0x8b860d8bU, 0x8a850f8aU, + 0x7090e070U, 0x3e427c3eU, 0xb5c471b5U, 0x66aacc66U, + 0x48d89048U, 0x03050603U, 0xf601f7f6U, 0x0e121c0eU, + 0x61a3c261U, 0x355f6a35U, 0x57f9ae57U, 0xb9d069b9U, + 0x86911786U, 0xc15899c1U, 0x1d273a1dU, 0x9eb9279eU, + 0xe138d9e1U, 0xf813ebf8U, 0x98b32b98U, 0x11332211U, + 0x69bbd269U, 0xd970a9d9U, 0x8e89078eU, 0x94a73394U, + 0x9bb62d9bU, 0x1e223c1eU, 0x87921587U, 0xe920c9e9U, + 0xce4987ceU, 0x55ffaa55U, 0x28785028U, 0xdf7aa5dfU, + 0x8c8f038cU, 0xa1f859a1U, 0x89800989U, 0x0d171a0dU, + 0xbfda65bfU, 0xe631d7e6U, 0x42c68442U, 0x68b8d068U, + 0x41c38241U, 0x99b02999U, 0x2d775a2dU, 0x0f111e0fU, + 0xb0cb7bb0U, 0x54fca854U, 0xbbd66dbbU, 0x163a2c16U +}; +static const uint32 Te3[256] = { + 0x6363a5c6U, 0x7c7c84f8U, 0x777799eeU, 0x7b7b8df6U, + 0xf2f20dffU, 0x6b6bbdd6U, 0x6f6fb1deU, 0xc5c55491U, + 0x30305060U, 0x01010302U, 0x6767a9ceU, 0x2b2b7d56U, + 0xfefe19e7U, 0xd7d762b5U, 0xababe64dU, 0x76769aecU, + 0xcaca458fU, 0x82829d1fU, 0xc9c94089U, 0x7d7d87faU, + 0xfafa15efU, 0x5959ebb2U, 0x4747c98eU, 0xf0f00bfbU, + 0xadadec41U, 0xd4d467b3U, 0xa2a2fd5fU, 0xafafea45U, + 0x9c9cbf23U, 0xa4a4f753U, 0x727296e4U, 0xc0c05b9bU, + 0xb7b7c275U, 0xfdfd1ce1U, 0x9393ae3dU, 0x26266a4cU, + 0x36365a6cU, 0x3f3f417eU, 0xf7f702f5U, 0xcccc4f83U, + 0x34345c68U, 0xa5a5f451U, 0xe5e534d1U, 0xf1f108f9U, + 0x717193e2U, 0xd8d873abU, 0x31315362U, 0x15153f2aU, + 0x04040c08U, 0xc7c75295U, 0x23236546U, 0xc3c35e9dU, + 0x18182830U, 0x9696a137U, 0x05050f0aU, 0x9a9ab52fU, + 0x0707090eU, 0x12123624U, 0x80809b1bU, 0xe2e23ddfU, + 0xebeb26cdU, 0x2727694eU, 0xb2b2cd7fU, 0x75759feaU, + 0x09091b12U, 0x83839e1dU, 0x2c2c7458U, 0x1a1a2e34U, + 0x1b1b2d36U, 0x6e6eb2dcU, 0x5a5aeeb4U, 0xa0a0fb5bU, + 0x5252f6a4U, 0x3b3b4d76U, 0xd6d661b7U, 0xb3b3ce7dU, + 0x29297b52U, 0xe3e33eddU, 0x2f2f715eU, 0x84849713U, + 0x5353f5a6U, 0xd1d168b9U, 0x00000000U, 0xeded2cc1U, + 0x20206040U, 0xfcfc1fe3U, 0xb1b1c879U, 0x5b5bedb6U, + 0x6a6abed4U, 0xcbcb468dU, 0xbebed967U, 0x39394b72U, + 0x4a4ade94U, 0x4c4cd498U, 0x5858e8b0U, 0xcfcf4a85U, + 0xd0d06bbbU, 0xefef2ac5U, 0xaaaae54fU, 0xfbfb16edU, + 0x4343c586U, 0x4d4dd79aU, 0x33335566U, 0x85859411U, + 0x4545cf8aU, 0xf9f910e9U, 0x02020604U, 0x7f7f81feU, + 0x5050f0a0U, 0x3c3c4478U, 0x9f9fba25U, 0xa8a8e34bU, + 0x5151f3a2U, 0xa3a3fe5dU, 0x4040c080U, 0x8f8f8a05U, + 0x9292ad3fU, 0x9d9dbc21U, 0x38384870U, 0xf5f504f1U, + 0xbcbcdf63U, 0xb6b6c177U, 0xdada75afU, 0x21216342U, + 0x10103020U, 0xffff1ae5U, 0xf3f30efdU, 0xd2d26dbfU, + 0xcdcd4c81U, 0x0c0c1418U, 0x13133526U, 0xecec2fc3U, + 0x5f5fe1beU, 0x9797a235U, 0x4444cc88U, 0x1717392eU, + 0xc4c45793U, 0xa7a7f255U, 0x7e7e82fcU, 0x3d3d477aU, + 0x6464acc8U, 0x5d5de7baU, 0x19192b32U, 0x737395e6U, + 0x6060a0c0U, 0x81819819U, 0x4f4fd19eU, 0xdcdc7fa3U, + 0x22226644U, 0x2a2a7e54U, 0x9090ab3bU, 0x8888830bU, + 0x4646ca8cU, 0xeeee29c7U, 0xb8b8d36bU, 0x14143c28U, + 0xdede79a7U, 0x5e5ee2bcU, 0x0b0b1d16U, 0xdbdb76adU, + 0xe0e03bdbU, 0x32325664U, 0x3a3a4e74U, 0x0a0a1e14U, + 0x4949db92U, 0x06060a0cU, 0x24246c48U, 0x5c5ce4b8U, + 0xc2c25d9fU, 0xd3d36ebdU, 0xacacef43U, 0x6262a6c4U, + 0x9191a839U, 0x9595a431U, 0xe4e437d3U, 0x79798bf2U, + 0xe7e732d5U, 0xc8c8438bU, 0x3737596eU, 0x6d6db7daU, + 0x8d8d8c01U, 0xd5d564b1U, 0x4e4ed29cU, 0xa9a9e049U, + 0x6c6cb4d8U, 0x5656faacU, 0xf4f407f3U, 0xeaea25cfU, + 0x6565afcaU, 0x7a7a8ef4U, 0xaeaee947U, 0x08081810U, + 0xbabad56fU, 0x787888f0U, 0x25256f4aU, 0x2e2e725cU, + 0x1c1c2438U, 0xa6a6f157U, 0xb4b4c773U, 0xc6c65197U, + 0xe8e823cbU, 0xdddd7ca1U, 0x74749ce8U, 0x1f1f213eU, + 0x4b4bdd96U, 0xbdbddc61U, 0x8b8b860dU, 0x8a8a850fU, + 0x707090e0U, 0x3e3e427cU, 0xb5b5c471U, 0x6666aaccU, + 0x4848d890U, 0x03030506U, 0xf6f601f7U, 0x0e0e121cU, + 0x6161a3c2U, 0x35355f6aU, 0x5757f9aeU, 0xb9b9d069U, + 0x86869117U, 0xc1c15899U, 0x1d1d273aU, 0x9e9eb927U, + 0xe1e138d9U, 0xf8f813ebU, 0x9898b32bU, 0x11113322U, + 0x6969bbd2U, 0xd9d970a9U, 0x8e8e8907U, 0x9494a733U, + 0x9b9bb62dU, 0x1e1e223cU, 0x87879215U, 0xe9e920c9U, + 0xcece4987U, 0x5555ffaaU, 0x28287850U, 0xdfdf7aa5U, + 0x8c8c8f03U, 0xa1a1f859U, 0x89898009U, 0x0d0d171aU, + 0xbfbfda65U, 0xe6e631d7U, 0x4242c684U, 0x6868b8d0U, + 0x4141c382U, 0x9999b029U, 0x2d2d775aU, 0x0f0f111eU, + 0xb0b0cb7bU, 0x5454fca8U, 0xbbbbd66dU, 0x16163a2cU +}; +static const uint32 Te4[256] = { + 0x63636363U, 0x7c7c7c7cU, 0x77777777U, 0x7b7b7b7bU, + 0xf2f2f2f2U, 0x6b6b6b6bU, 0x6f6f6f6fU, 0xc5c5c5c5U, + 0x30303030U, 0x01010101U, 0x67676767U, 0x2b2b2b2bU, + 0xfefefefeU, 0xd7d7d7d7U, 0xababababU, 0x76767676U, + 0xcacacacaU, 0x82828282U, 0xc9c9c9c9U, 0x7d7d7d7dU, + 0xfafafafaU, 0x59595959U, 0x47474747U, 0xf0f0f0f0U, + 0xadadadadU, 0xd4d4d4d4U, 0xa2a2a2a2U, 0xafafafafU, + 0x9c9c9c9cU, 0xa4a4a4a4U, 0x72727272U, 0xc0c0c0c0U, + 0xb7b7b7b7U, 0xfdfdfdfdU, 0x93939393U, 0x26262626U, + 0x36363636U, 0x3f3f3f3fU, 0xf7f7f7f7U, 0xccccccccU, + 0x34343434U, 0xa5a5a5a5U, 0xe5e5e5e5U, 0xf1f1f1f1U, + 0x71717171U, 0xd8d8d8d8U, 0x31313131U, 0x15151515U, + 0x04040404U, 0xc7c7c7c7U, 0x23232323U, 0xc3c3c3c3U, + 0x18181818U, 0x96969696U, 0x05050505U, 0x9a9a9a9aU, + 0x07070707U, 0x12121212U, 0x80808080U, 0xe2e2e2e2U, + 0xebebebebU, 0x27272727U, 0xb2b2b2b2U, 0x75757575U, + 0x09090909U, 0x83838383U, 0x2c2c2c2cU, 0x1a1a1a1aU, + 0x1b1b1b1bU, 0x6e6e6e6eU, 0x5a5a5a5aU, 0xa0a0a0a0U, + 0x52525252U, 0x3b3b3b3bU, 0xd6d6d6d6U, 0xb3b3b3b3U, + 0x29292929U, 0xe3e3e3e3U, 0x2f2f2f2fU, 0x84848484U, + 0x53535353U, 0xd1d1d1d1U, 0x00000000U, 0xededededU, + 0x20202020U, 0xfcfcfcfcU, 0xb1b1b1b1U, 0x5b5b5b5bU, + 0x6a6a6a6aU, 0xcbcbcbcbU, 0xbebebebeU, 0x39393939U, + 0x4a4a4a4aU, 0x4c4c4c4cU, 0x58585858U, 0xcfcfcfcfU, + 0xd0d0d0d0U, 0xefefefefU, 0xaaaaaaaaU, 0xfbfbfbfbU, + 0x43434343U, 0x4d4d4d4dU, 0x33333333U, 0x85858585U, + 0x45454545U, 0xf9f9f9f9U, 0x02020202U, 0x7f7f7f7fU, + 0x50505050U, 0x3c3c3c3cU, 0x9f9f9f9fU, 0xa8a8a8a8U, + 0x51515151U, 0xa3a3a3a3U, 0x40404040U, 0x8f8f8f8fU, + 0x92929292U, 0x9d9d9d9dU, 0x38383838U, 0xf5f5f5f5U, + 0xbcbcbcbcU, 0xb6b6b6b6U, 0xdadadadaU, 0x21212121U, + 0x10101010U, 0xffffffffU, 0xf3f3f3f3U, 0xd2d2d2d2U, + 0xcdcdcdcdU, 0x0c0c0c0cU, 0x13131313U, 0xececececU, + 0x5f5f5f5fU, 0x97979797U, 0x44444444U, 0x17171717U, + 0xc4c4c4c4U, 0xa7a7a7a7U, 0x7e7e7e7eU, 0x3d3d3d3dU, + 0x64646464U, 0x5d5d5d5dU, 0x19191919U, 0x73737373U, + 0x60606060U, 0x81818181U, 0x4f4f4f4fU, 0xdcdcdcdcU, + 0x22222222U, 0x2a2a2a2aU, 0x90909090U, 0x88888888U, + 0x46464646U, 0xeeeeeeeeU, 0xb8b8b8b8U, 0x14141414U, + 0xdedededeU, 0x5e5e5e5eU, 0x0b0b0b0bU, 0xdbdbdbdbU, + 0xe0e0e0e0U, 0x32323232U, 0x3a3a3a3aU, 0x0a0a0a0aU, + 0x49494949U, 0x06060606U, 0x24242424U, 0x5c5c5c5cU, + 0xc2c2c2c2U, 0xd3d3d3d3U, 0xacacacacU, 0x62626262U, + 0x91919191U, 0x95959595U, 0xe4e4e4e4U, 0x79797979U, + 0xe7e7e7e7U, 0xc8c8c8c8U, 0x37373737U, 0x6d6d6d6dU, + 0x8d8d8d8dU, 0xd5d5d5d5U, 0x4e4e4e4eU, 0xa9a9a9a9U, + 0x6c6c6c6cU, 0x56565656U, 0xf4f4f4f4U, 0xeaeaeaeaU, + 0x65656565U, 0x7a7a7a7aU, 0xaeaeaeaeU, 0x08080808U, + 0xbabababaU, 0x78787878U, 0x25252525U, 0x2e2e2e2eU, + 0x1c1c1c1cU, 0xa6a6a6a6U, 0xb4b4b4b4U, 0xc6c6c6c6U, + 0xe8e8e8e8U, 0xddddddddU, 0x74747474U, 0x1f1f1f1fU, + 0x4b4b4b4bU, 0xbdbdbdbdU, 0x8b8b8b8bU, 0x8a8a8a8aU, + 0x70707070U, 0x3e3e3e3eU, 0xb5b5b5b5U, 0x66666666U, + 0x48484848U, 0x03030303U, 0xf6f6f6f6U, 0x0e0e0e0eU, + 0x61616161U, 0x35353535U, 0x57575757U, 0xb9b9b9b9U, + 0x86868686U, 0xc1c1c1c1U, 0x1d1d1d1dU, 0x9e9e9e9eU, + 0xe1e1e1e1U, 0xf8f8f8f8U, 0x98989898U, 0x11111111U, + 0x69696969U, 0xd9d9d9d9U, 0x8e8e8e8eU, 0x94949494U, + 0x9b9b9b9bU, 0x1e1e1e1eU, 0x87878787U, 0xe9e9e9e9U, + 0xcecececeU, 0x55555555U, 0x28282828U, 0xdfdfdfdfU, + 0x8c8c8c8cU, 0xa1a1a1a1U, 0x89898989U, 0x0d0d0d0dU, + 0xbfbfbfbfU, 0xe6e6e6e6U, 0x42424242U, 0x68686868U, + 0x41414141U, 0x99999999U, 0x2d2d2d2dU, 0x0f0f0f0fU, + 0xb0b0b0b0U, 0x54545454U, 0xbbbbbbbbU, 0x16161616U +}; +static const uint32 Td0[256] = { + 0x51f4a750U, 0x7e416553U, 0x1a17a4c3U, 0x3a275e96U, + 0x3bab6bcbU, 0x1f9d45f1U, 0xacfa58abU, 0x4be30393U, + 0x2030fa55U, 0xad766df6U, 0x88cc7691U, 0xf5024c25U, + 0x4fe5d7fcU, 0xc52acbd7U, 0x26354480U, 0xb562a38fU, + 0xdeb15a49U, 0x25ba1b67U, 0x45ea0e98U, 0x5dfec0e1U, + 0xc32f7502U, 0x814cf012U, 0x8d4697a3U, 0x6bd3f9c6U, + 0x038f5fe7U, 0x15929c95U, 0xbf6d7aebU, 0x955259daU, + 0xd4be832dU, 0x587421d3U, 0x49e06929U, 0x8ec9c844U, + 0x75c2896aU, 0xf48e7978U, 0x99583e6bU, 0x27b971ddU, + 0xbee14fb6U, 0xf088ad17U, 0xc920ac66U, 0x7dce3ab4U, + 0x63df4a18U, 0xe51a3182U, 0x97513360U, 0x62537f45U, + 0xb16477e0U, 0xbb6bae84U, 0xfe81a01cU, 0xf9082b94U, + 0x70486858U, 0x8f45fd19U, 0x94de6c87U, 0x527bf8b7U, + 0xab73d323U, 0x724b02e2U, 0xe31f8f57U, 0x6655ab2aU, + 0xb2eb2807U, 0x2fb5c203U, 0x86c57b9aU, 0xd33708a5U, + 0x302887f2U, 0x23bfa5b2U, 0x02036abaU, 0xed16825cU, + 0x8acf1c2bU, 0xa779b492U, 0xf307f2f0U, 0x4e69e2a1U, + 0x65daf4cdU, 0x0605bed5U, 0xd134621fU, 0xc4a6fe8aU, + 0x342e539dU, 0xa2f355a0U, 0x058ae132U, 0xa4f6eb75U, + 0x0b83ec39U, 0x4060efaaU, 0x5e719f06U, 0xbd6e1051U, + 0x3e218af9U, 0x96dd063dU, 0xdd3e05aeU, 0x4de6bd46U, + 0x91548db5U, 0x71c45d05U, 0x0406d46fU, 0x605015ffU, + 0x1998fb24U, 0xd6bde997U, 0x894043ccU, 0x67d99e77U, + 0xb0e842bdU, 0x07898b88U, 0xe7195b38U, 0x79c8eedbU, + 0xa17c0a47U, 0x7c420fe9U, 0xf8841ec9U, 0x00000000U, + 0x09808683U, 0x322bed48U, 0x1e1170acU, 0x6c5a724eU, + 0xfd0efffbU, 0x0f853856U, 0x3daed51eU, 0x362d3927U, + 0x0a0fd964U, 0x685ca621U, 0x9b5b54d1U, 0x24362e3aU, + 0x0c0a67b1U, 0x9357e70fU, 0xb4ee96d2U, 0x1b9b919eU, + 0x80c0c54fU, 0x61dc20a2U, 0x5a774b69U, 0x1c121a16U, + 0xe293ba0aU, 0xc0a02ae5U, 0x3c22e043U, 0x121b171dU, + 0x0e090d0bU, 0xf28bc7adU, 0x2db6a8b9U, 0x141ea9c8U, + 0x57f11985U, 0xaf75074cU, 0xee99ddbbU, 0xa37f60fdU, + 0xf701269fU, 0x5c72f5bcU, 0x44663bc5U, 0x5bfb7e34U, + 0x8b432976U, 0xcb23c6dcU, 0xb6edfc68U, 0xb8e4f163U, + 0xd731dccaU, 0x42638510U, 0x13972240U, 0x84c61120U, + 0x854a247dU, 0xd2bb3df8U, 0xaef93211U, 0xc729a16dU, + 0x1d9e2f4bU, 0xdcb230f3U, 0x0d8652ecU, 0x77c1e3d0U, + 0x2bb3166cU, 0xa970b999U, 0x119448faU, 0x47e96422U, + 0xa8fc8cc4U, 0xa0f03f1aU, 0x567d2cd8U, 0x223390efU, + 0x87494ec7U, 0xd938d1c1U, 0x8ccaa2feU, 0x98d40b36U, + 0xa6f581cfU, 0xa57ade28U, 0xdab78e26U, 0x3fadbfa4U, + 0x2c3a9de4U, 0x5078920dU, 0x6a5fcc9bU, 0x547e4662U, + 0xf68d13c2U, 0x90d8b8e8U, 0x2e39f75eU, 0x82c3aff5U, + 0x9f5d80beU, 0x69d0937cU, 0x6fd52da9U, 0xcf2512b3U, + 0xc8ac993bU, 0x10187da7U, 0xe89c636eU, 0xdb3bbb7bU, + 0xcd267809U, 0x6e5918f4U, 0xec9ab701U, 0x834f9aa8U, + 0xe6956e65U, 0xaaffe67eU, 0x21bccf08U, 0xef15e8e6U, + 0xbae79bd9U, 0x4a6f36ceU, 0xea9f09d4U, 0x29b07cd6U, + 0x31a4b2afU, 0x2a3f2331U, 0xc6a59430U, 0x35a266c0U, + 0x744ebc37U, 0xfc82caa6U, 0xe090d0b0U, 0x33a7d815U, + 0xf104984aU, 0x41ecdaf7U, 0x7fcd500eU, 0x1791f62fU, + 0x764dd68dU, 0x43efb04dU, 0xccaa4d54U, 0xe49604dfU, + 0x9ed1b5e3U, 0x4c6a881bU, 0xc12c1fb8U, 0x4665517fU, + 0x9d5eea04U, 0x018c355dU, 0xfa877473U, 0xfb0b412eU, + 0xb3671d5aU, 0x92dbd252U, 0xe9105633U, 0x6dd64713U, + 0x9ad7618cU, 0x37a10c7aU, 0x59f8148eU, 0xeb133c89U, + 0xcea927eeU, 0xb761c935U, 0xe11ce5edU, 0x7a47b13cU, + 0x9cd2df59U, 0x55f2733fU, 0x1814ce79U, 0x73c737bfU, + 0x53f7cdeaU, 0x5ffdaa5bU, 0xdf3d6f14U, 0x7844db86U, + 0xcaaff381U, 0xb968c43eU, 0x3824342cU, 0xc2a3405fU, + 0x161dc372U, 0xbce2250cU, 0x283c498bU, 0xff0d9541U, + 0x39a80171U, 0x080cb3deU, 0xd8b4e49cU, 0x6456c190U, + 0x7bcb8461U, 0xd532b670U, 0x486c5c74U, 0xd0b85742U +}; +static const uint32 Td1[256] = { + 0x5051f4a7U, 0x537e4165U, 0xc31a17a4U, 0x963a275eU, + 0xcb3bab6bU, 0xf11f9d45U, 0xabacfa58U, 0x934be303U, + 0x552030faU, 0xf6ad766dU, 0x9188cc76U, 0x25f5024cU, + 0xfc4fe5d7U, 0xd7c52acbU, 0x80263544U, 0x8fb562a3U, + 0x49deb15aU, 0x6725ba1bU, 0x9845ea0eU, 0xe15dfec0U, + 0x02c32f75U, 0x12814cf0U, 0xa38d4697U, 0xc66bd3f9U, + 0xe7038f5fU, 0x9515929cU, 0xebbf6d7aU, 0xda955259U, + 0x2dd4be83U, 0xd3587421U, 0x2949e069U, 0x448ec9c8U, + 0x6a75c289U, 0x78f48e79U, 0x6b99583eU, 0xdd27b971U, + 0xb6bee14fU, 0x17f088adU, 0x66c920acU, 0xb47dce3aU, + 0x1863df4aU, 0x82e51a31U, 0x60975133U, 0x4562537fU, + 0xe0b16477U, 0x84bb6baeU, 0x1cfe81a0U, 0x94f9082bU, + 0x58704868U, 0x198f45fdU, 0x8794de6cU, 0xb7527bf8U, + 0x23ab73d3U, 0xe2724b02U, 0x57e31f8fU, 0x2a6655abU, + 0x07b2eb28U, 0x032fb5c2U, 0x9a86c57bU, 0xa5d33708U, + 0xf2302887U, 0xb223bfa5U, 0xba02036aU, 0x5ced1682U, + 0x2b8acf1cU, 0x92a779b4U, 0xf0f307f2U, 0xa14e69e2U, + 0xcd65daf4U, 0xd50605beU, 0x1fd13462U, 0x8ac4a6feU, + 0x9d342e53U, 0xa0a2f355U, 0x32058ae1U, 0x75a4f6ebU, + 0x390b83ecU, 0xaa4060efU, 0x065e719fU, 0x51bd6e10U, + 0xf93e218aU, 0x3d96dd06U, 0xaedd3e05U, 0x464de6bdU, + 0xb591548dU, 0x0571c45dU, 0x6f0406d4U, 0xff605015U, + 0x241998fbU, 0x97d6bde9U, 0xcc894043U, 0x7767d99eU, + 0xbdb0e842U, 0x8807898bU, 0x38e7195bU, 0xdb79c8eeU, + 0x47a17c0aU, 0xe97c420fU, 0xc9f8841eU, 0x00000000U, + 0x83098086U, 0x48322bedU, 0xac1e1170U, 0x4e6c5a72U, + 0xfbfd0effU, 0x560f8538U, 0x1e3daed5U, 0x27362d39U, + 0x640a0fd9U, 0x21685ca6U, 0xd19b5b54U, 0x3a24362eU, + 0xb10c0a67U, 0x0f9357e7U, 0xd2b4ee96U, 0x9e1b9b91U, + 0x4f80c0c5U, 0xa261dc20U, 0x695a774bU, 0x161c121aU, + 0x0ae293baU, 0xe5c0a02aU, 0x433c22e0U, 0x1d121b17U, + 0x0b0e090dU, 0xadf28bc7U, 0xb92db6a8U, 0xc8141ea9U, + 0x8557f119U, 0x4caf7507U, 0xbbee99ddU, 0xfda37f60U, + 0x9ff70126U, 0xbc5c72f5U, 0xc544663bU, 0x345bfb7eU, + 0x768b4329U, 0xdccb23c6U, 0x68b6edfcU, 0x63b8e4f1U, + 0xcad731dcU, 0x10426385U, 0x40139722U, 0x2084c611U, + 0x7d854a24U, 0xf8d2bb3dU, 0x11aef932U, 0x6dc729a1U, + 0x4b1d9e2fU, 0xf3dcb230U, 0xec0d8652U, 0xd077c1e3U, + 0x6c2bb316U, 0x99a970b9U, 0xfa119448U, 0x2247e964U, + 0xc4a8fc8cU, 0x1aa0f03fU, 0xd8567d2cU, 0xef223390U, + 0xc787494eU, 0xc1d938d1U, 0xfe8ccaa2U, 0x3698d40bU, + 0xcfa6f581U, 0x28a57adeU, 0x26dab78eU, 0xa43fadbfU, + 0xe42c3a9dU, 0x0d507892U, 0x9b6a5fccU, 0x62547e46U, + 0xc2f68d13U, 0xe890d8b8U, 0x5e2e39f7U, 0xf582c3afU, + 0xbe9f5d80U, 0x7c69d093U, 0xa96fd52dU, 0xb3cf2512U, + 0x3bc8ac99U, 0xa710187dU, 0x6ee89c63U, 0x7bdb3bbbU, + 0x09cd2678U, 0xf46e5918U, 0x01ec9ab7U, 0xa8834f9aU, + 0x65e6956eU, 0x7eaaffe6U, 0x0821bccfU, 0xe6ef15e8U, + 0xd9bae79bU, 0xce4a6f36U, 0xd4ea9f09U, 0xd629b07cU, + 0xaf31a4b2U, 0x312a3f23U, 0x30c6a594U, 0xc035a266U, + 0x37744ebcU, 0xa6fc82caU, 0xb0e090d0U, 0x1533a7d8U, + 0x4af10498U, 0xf741ecdaU, 0x0e7fcd50U, 0x2f1791f6U, + 0x8d764dd6U, 0x4d43efb0U, 0x54ccaa4dU, 0xdfe49604U, + 0xe39ed1b5U, 0x1b4c6a88U, 0xb8c12c1fU, 0x7f466551U, + 0x049d5eeaU, 0x5d018c35U, 0x73fa8774U, 0x2efb0b41U, + 0x5ab3671dU, 0x5292dbd2U, 0x33e91056U, 0x136dd647U, + 0x8c9ad761U, 0x7a37a10cU, 0x8e59f814U, 0x89eb133cU, + 0xeecea927U, 0x35b761c9U, 0xede11ce5U, 0x3c7a47b1U, + 0x599cd2dfU, 0x3f55f273U, 0x791814ceU, 0xbf73c737U, + 0xea53f7cdU, 0x5b5ffdaaU, 0x14df3d6fU, 0x867844dbU, + 0x81caaff3U, 0x3eb968c4U, 0x2c382434U, 0x5fc2a340U, + 0x72161dc3U, 0x0cbce225U, 0x8b283c49U, 0x41ff0d95U, + 0x7139a801U, 0xde080cb3U, 0x9cd8b4e4U, 0x906456c1U, + 0x617bcb84U, 0x70d532b6U, 0x74486c5cU, 0x42d0b857U +}; +static const uint32 Td2[256] = { + 0xa75051f4U, 0x65537e41U, 0xa4c31a17U, 0x5e963a27U, + 0x6bcb3babU, 0x45f11f9dU, 0x58abacfaU, 0x03934be3U, + 0xfa552030U, 0x6df6ad76U, 0x769188ccU, 0x4c25f502U, + 0xd7fc4fe5U, 0xcbd7c52aU, 0x44802635U, 0xa38fb562U, + 0x5a49deb1U, 0x1b6725baU, 0x0e9845eaU, 0xc0e15dfeU, + 0x7502c32fU, 0xf012814cU, 0x97a38d46U, 0xf9c66bd3U, + 0x5fe7038fU, 0x9c951592U, 0x7aebbf6dU, 0x59da9552U, + 0x832dd4beU, 0x21d35874U, 0x692949e0U, 0xc8448ec9U, + 0x896a75c2U, 0x7978f48eU, 0x3e6b9958U, 0x71dd27b9U, + 0x4fb6bee1U, 0xad17f088U, 0xac66c920U, 0x3ab47dceU, + 0x4a1863dfU, 0x3182e51aU, 0x33609751U, 0x7f456253U, + 0x77e0b164U, 0xae84bb6bU, 0xa01cfe81U, 0x2b94f908U, + 0x68587048U, 0xfd198f45U, 0x6c8794deU, 0xf8b7527bU, + 0xd323ab73U, 0x02e2724bU, 0x8f57e31fU, 0xab2a6655U, + 0x2807b2ebU, 0xc2032fb5U, 0x7b9a86c5U, 0x08a5d337U, + 0x87f23028U, 0xa5b223bfU, 0x6aba0203U, 0x825ced16U, + 0x1c2b8acfU, 0xb492a779U, 0xf2f0f307U, 0xe2a14e69U, + 0xf4cd65daU, 0xbed50605U, 0x621fd134U, 0xfe8ac4a6U, + 0x539d342eU, 0x55a0a2f3U, 0xe132058aU, 0xeb75a4f6U, + 0xec390b83U, 0xefaa4060U, 0x9f065e71U, 0x1051bd6eU, + 0x8af93e21U, 0x063d96ddU, 0x05aedd3eU, 0xbd464de6U, + 0x8db59154U, 0x5d0571c4U, 0xd46f0406U, 0x15ff6050U, + 0xfb241998U, 0xe997d6bdU, 0x43cc8940U, 0x9e7767d9U, + 0x42bdb0e8U, 0x8b880789U, 0x5b38e719U, 0xeedb79c8U, + 0x0a47a17cU, 0x0fe97c42U, 0x1ec9f884U, 0x00000000U, + 0x86830980U, 0xed48322bU, 0x70ac1e11U, 0x724e6c5aU, + 0xfffbfd0eU, 0x38560f85U, 0xd51e3daeU, 0x3927362dU, + 0xd9640a0fU, 0xa621685cU, 0x54d19b5bU, 0x2e3a2436U, + 0x67b10c0aU, 0xe70f9357U, 0x96d2b4eeU, 0x919e1b9bU, + 0xc54f80c0U, 0x20a261dcU, 0x4b695a77U, 0x1a161c12U, + 0xba0ae293U, 0x2ae5c0a0U, 0xe0433c22U, 0x171d121bU, + 0x0d0b0e09U, 0xc7adf28bU, 0xa8b92db6U, 0xa9c8141eU, + 0x198557f1U, 0x074caf75U, 0xddbbee99U, 0x60fda37fU, + 0x269ff701U, 0xf5bc5c72U, 0x3bc54466U, 0x7e345bfbU, + 0x29768b43U, 0xc6dccb23U, 0xfc68b6edU, 0xf163b8e4U, + 0xdccad731U, 0x85104263U, 0x22401397U, 0x112084c6U, + 0x247d854aU, 0x3df8d2bbU, 0x3211aef9U, 0xa16dc729U, + 0x2f4b1d9eU, 0x30f3dcb2U, 0x52ec0d86U, 0xe3d077c1U, + 0x166c2bb3U, 0xb999a970U, 0x48fa1194U, 0x642247e9U, + 0x8cc4a8fcU, 0x3f1aa0f0U, 0x2cd8567dU, 0x90ef2233U, + 0x4ec78749U, 0xd1c1d938U, 0xa2fe8ccaU, 0x0b3698d4U, + 0x81cfa6f5U, 0xde28a57aU, 0x8e26dab7U, 0xbfa43fadU, + 0x9de42c3aU, 0x920d5078U, 0xcc9b6a5fU, 0x4662547eU, + 0x13c2f68dU, 0xb8e890d8U, 0xf75e2e39U, 0xaff582c3U, + 0x80be9f5dU, 0x937c69d0U, 0x2da96fd5U, 0x12b3cf25U, + 0x993bc8acU, 0x7da71018U, 0x636ee89cU, 0xbb7bdb3bU, + 0x7809cd26U, 0x18f46e59U, 0xb701ec9aU, 0x9aa8834fU, + 0x6e65e695U, 0xe67eaaffU, 0xcf0821bcU, 0xe8e6ef15U, + 0x9bd9bae7U, 0x36ce4a6fU, 0x09d4ea9fU, 0x7cd629b0U, + 0xb2af31a4U, 0x23312a3fU, 0x9430c6a5U, 0x66c035a2U, + 0xbc37744eU, 0xcaa6fc82U, 0xd0b0e090U, 0xd81533a7U, + 0x984af104U, 0xdaf741ecU, 0x500e7fcdU, 0xf62f1791U, + 0xd68d764dU, 0xb04d43efU, 0x4d54ccaaU, 0x04dfe496U, + 0xb5e39ed1U, 0x881b4c6aU, 0x1fb8c12cU, 0x517f4665U, + 0xea049d5eU, 0x355d018cU, 0x7473fa87U, 0x412efb0bU, + 0x1d5ab367U, 0xd25292dbU, 0x5633e910U, 0x47136dd6U, + 0x618c9ad7U, 0x0c7a37a1U, 0x148e59f8U, 0x3c89eb13U, + 0x27eecea9U, 0xc935b761U, 0xe5ede11cU, 0xb13c7a47U, + 0xdf599cd2U, 0x733f55f2U, 0xce791814U, 0x37bf73c7U, + 0xcdea53f7U, 0xaa5b5ffdU, 0x6f14df3dU, 0xdb867844U, + 0xf381caafU, 0xc43eb968U, 0x342c3824U, 0x405fc2a3U, + 0xc372161dU, 0x250cbce2U, 0x498b283cU, 0x9541ff0dU, + 0x017139a8U, 0xb3de080cU, 0xe49cd8b4U, 0xc1906456U, + 0x84617bcbU, 0xb670d532U, 0x5c74486cU, 0x5742d0b8U +}; +static const uint32 Td3[256] = { + 0xf4a75051U, 0x4165537eU, 0x17a4c31aU, 0x275e963aU, + 0xab6bcb3bU, 0x9d45f11fU, 0xfa58abacU, 0xe303934bU, + 0x30fa5520U, 0x766df6adU, 0xcc769188U, 0x024c25f5U, + 0xe5d7fc4fU, 0x2acbd7c5U, 0x35448026U, 0x62a38fb5U, + 0xb15a49deU, 0xba1b6725U, 0xea0e9845U, 0xfec0e15dU, + 0x2f7502c3U, 0x4cf01281U, 0x4697a38dU, 0xd3f9c66bU, + 0x8f5fe703U, 0x929c9515U, 0x6d7aebbfU, 0x5259da95U, + 0xbe832dd4U, 0x7421d358U, 0xe0692949U, 0xc9c8448eU, + 0xc2896a75U, 0x8e7978f4U, 0x583e6b99U, 0xb971dd27U, + 0xe14fb6beU, 0x88ad17f0U, 0x20ac66c9U, 0xce3ab47dU, + 0xdf4a1863U, 0x1a3182e5U, 0x51336097U, 0x537f4562U, + 0x6477e0b1U, 0x6bae84bbU, 0x81a01cfeU, 0x082b94f9U, + 0x48685870U, 0x45fd198fU, 0xde6c8794U, 0x7bf8b752U, + 0x73d323abU, 0x4b02e272U, 0x1f8f57e3U, 0x55ab2a66U, + 0xeb2807b2U, 0xb5c2032fU, 0xc57b9a86U, 0x3708a5d3U, + 0x2887f230U, 0xbfa5b223U, 0x036aba02U, 0x16825cedU, + 0xcf1c2b8aU, 0x79b492a7U, 0x07f2f0f3U, 0x69e2a14eU, + 0xdaf4cd65U, 0x05bed506U, 0x34621fd1U, 0xa6fe8ac4U, + 0x2e539d34U, 0xf355a0a2U, 0x8ae13205U, 0xf6eb75a4U, + 0x83ec390bU, 0x60efaa40U, 0x719f065eU, 0x6e1051bdU, + 0x218af93eU, 0xdd063d96U, 0x3e05aeddU, 0xe6bd464dU, + 0x548db591U, 0xc45d0571U, 0x06d46f04U, 0x5015ff60U, + 0x98fb2419U, 0xbde997d6U, 0x4043cc89U, 0xd99e7767U, + 0xe842bdb0U, 0x898b8807U, 0x195b38e7U, 0xc8eedb79U, + 0x7c0a47a1U, 0x420fe97cU, 0x841ec9f8U, 0x00000000U, + 0x80868309U, 0x2bed4832U, 0x1170ac1eU, 0x5a724e6cU, + 0x0efffbfdU, 0x8538560fU, 0xaed51e3dU, 0x2d392736U, + 0x0fd9640aU, 0x5ca62168U, 0x5b54d19bU, 0x362e3a24U, + 0x0a67b10cU, 0x57e70f93U, 0xee96d2b4U, 0x9b919e1bU, + 0xc0c54f80U, 0xdc20a261U, 0x774b695aU, 0x121a161cU, + 0x93ba0ae2U, 0xa02ae5c0U, 0x22e0433cU, 0x1b171d12U, + 0x090d0b0eU, 0x8bc7adf2U, 0xb6a8b92dU, 0x1ea9c814U, + 0xf1198557U, 0x75074cafU, 0x99ddbbeeU, 0x7f60fda3U, + 0x01269ff7U, 0x72f5bc5cU, 0x663bc544U, 0xfb7e345bU, + 0x4329768bU, 0x23c6dccbU, 0xedfc68b6U, 0xe4f163b8U, + 0x31dccad7U, 0x63851042U, 0x97224013U, 0xc6112084U, + 0x4a247d85U, 0xbb3df8d2U, 0xf93211aeU, 0x29a16dc7U, + 0x9e2f4b1dU, 0xb230f3dcU, 0x8652ec0dU, 0xc1e3d077U, + 0xb3166c2bU, 0x70b999a9U, 0x9448fa11U, 0xe9642247U, + 0xfc8cc4a8U, 0xf03f1aa0U, 0x7d2cd856U, 0x3390ef22U, + 0x494ec787U, 0x38d1c1d9U, 0xcaa2fe8cU, 0xd40b3698U, + 0xf581cfa6U, 0x7ade28a5U, 0xb78e26daU, 0xadbfa43fU, + 0x3a9de42cU, 0x78920d50U, 0x5fcc9b6aU, 0x7e466254U, + 0x8d13c2f6U, 0xd8b8e890U, 0x39f75e2eU, 0xc3aff582U, + 0x5d80be9fU, 0xd0937c69U, 0xd52da96fU, 0x2512b3cfU, + 0xac993bc8U, 0x187da710U, 0x9c636ee8U, 0x3bbb7bdbU, + 0x267809cdU, 0x5918f46eU, 0x9ab701ecU, 0x4f9aa883U, + 0x956e65e6U, 0xffe67eaaU, 0xbccf0821U, 0x15e8e6efU, + 0xe79bd9baU, 0x6f36ce4aU, 0x9f09d4eaU, 0xb07cd629U, + 0xa4b2af31U, 0x3f23312aU, 0xa59430c6U, 0xa266c035U, + 0x4ebc3774U, 0x82caa6fcU, 0x90d0b0e0U, 0xa7d81533U, + 0x04984af1U, 0xecdaf741U, 0xcd500e7fU, 0x91f62f17U, + 0x4dd68d76U, 0xefb04d43U, 0xaa4d54ccU, 0x9604dfe4U, + 0xd1b5e39eU, 0x6a881b4cU, 0x2c1fb8c1U, 0x65517f46U, + 0x5eea049dU, 0x8c355d01U, 0x877473faU, 0x0b412efbU, + 0x671d5ab3U, 0xdbd25292U, 0x105633e9U, 0xd647136dU, + 0xd7618c9aU, 0xa10c7a37U, 0xf8148e59U, 0x133c89ebU, + 0xa927eeceU, 0x61c935b7U, 0x1ce5ede1U, 0x47b13c7aU, + 0xd2df599cU, 0xf2733f55U, 0x14ce7918U, 0xc737bf73U, + 0xf7cdea53U, 0xfdaa5b5fU, 0x3d6f14dfU, 0x44db8678U, + 0xaff381caU, 0x68c43eb9U, 0x24342c38U, 0xa3405fc2U, + 0x1dc37216U, 0xe2250cbcU, 0x3c498b28U, 0x0d9541ffU, + 0xa8017139U, 0x0cb3de08U, 0xb4e49cd8U, 0x56c19064U, + 0xcb84617bU, 0x32b670d5U, 0x6c5c7448U, 0xb85742d0U +}; +static const uint32 Td4[256] = { + 0x52525252U, 0x09090909U, 0x6a6a6a6aU, 0xd5d5d5d5U, + 0x30303030U, 0x36363636U, 0xa5a5a5a5U, 0x38383838U, + 0xbfbfbfbfU, 0x40404040U, 0xa3a3a3a3U, 0x9e9e9e9eU, + 0x81818181U, 0xf3f3f3f3U, 0xd7d7d7d7U, 0xfbfbfbfbU, + 0x7c7c7c7cU, 0xe3e3e3e3U, 0x39393939U, 0x82828282U, + 0x9b9b9b9bU, 0x2f2f2f2fU, 0xffffffffU, 0x87878787U, + 0x34343434U, 0x8e8e8e8eU, 0x43434343U, 0x44444444U, + 0xc4c4c4c4U, 0xdedededeU, 0xe9e9e9e9U, 0xcbcbcbcbU, + 0x54545454U, 0x7b7b7b7bU, 0x94949494U, 0x32323232U, + 0xa6a6a6a6U, 0xc2c2c2c2U, 0x23232323U, 0x3d3d3d3dU, + 0xeeeeeeeeU, 0x4c4c4c4cU, 0x95959595U, 0x0b0b0b0bU, + 0x42424242U, 0xfafafafaU, 0xc3c3c3c3U, 0x4e4e4e4eU, + 0x08080808U, 0x2e2e2e2eU, 0xa1a1a1a1U, 0x66666666U, + 0x28282828U, 0xd9d9d9d9U, 0x24242424U, 0xb2b2b2b2U, + 0x76767676U, 0x5b5b5b5bU, 0xa2a2a2a2U, 0x49494949U, + 0x6d6d6d6dU, 0x8b8b8b8bU, 0xd1d1d1d1U, 0x25252525U, + 0x72727272U, 0xf8f8f8f8U, 0xf6f6f6f6U, 0x64646464U, + 0x86868686U, 0x68686868U, 0x98989898U, 0x16161616U, + 0xd4d4d4d4U, 0xa4a4a4a4U, 0x5c5c5c5cU, 0xccccccccU, + 0x5d5d5d5dU, 0x65656565U, 0xb6b6b6b6U, 0x92929292U, + 0x6c6c6c6cU, 0x70707070U, 0x48484848U, 0x50505050U, + 0xfdfdfdfdU, 0xededededU, 0xb9b9b9b9U, 0xdadadadaU, + 0x5e5e5e5eU, 0x15151515U, 0x46464646U, 0x57575757U, + 0xa7a7a7a7U, 0x8d8d8d8dU, 0x9d9d9d9dU, 0x84848484U, + 0x90909090U, 0xd8d8d8d8U, 0xababababU, 0x00000000U, + 0x8c8c8c8cU, 0xbcbcbcbcU, 0xd3d3d3d3U, 0x0a0a0a0aU, + 0xf7f7f7f7U, 0xe4e4e4e4U, 0x58585858U, 0x05050505U, + 0xb8b8b8b8U, 0xb3b3b3b3U, 0x45454545U, 0x06060606U, + 0xd0d0d0d0U, 0x2c2c2c2cU, 0x1e1e1e1eU, 0x8f8f8f8fU, + 0xcacacacaU, 0x3f3f3f3fU, 0x0f0f0f0fU, 0x02020202U, + 0xc1c1c1c1U, 0xafafafafU, 0xbdbdbdbdU, 0x03030303U, + 0x01010101U, 0x13131313U, 0x8a8a8a8aU, 0x6b6b6b6bU, + 0x3a3a3a3aU, 0x91919191U, 0x11111111U, 0x41414141U, + 0x4f4f4f4fU, 0x67676767U, 0xdcdcdcdcU, 0xeaeaeaeaU, + 0x97979797U, 0xf2f2f2f2U, 0xcfcfcfcfU, 0xcecececeU, + 0xf0f0f0f0U, 0xb4b4b4b4U, 0xe6e6e6e6U, 0x73737373U, + 0x96969696U, 0xacacacacU, 0x74747474U, 0x22222222U, + 0xe7e7e7e7U, 0xadadadadU, 0x35353535U, 0x85858585U, + 0xe2e2e2e2U, 0xf9f9f9f9U, 0x37373737U, 0xe8e8e8e8U, + 0x1c1c1c1cU, 0x75757575U, 0xdfdfdfdfU, 0x6e6e6e6eU, + 0x47474747U, 0xf1f1f1f1U, 0x1a1a1a1aU, 0x71717171U, + 0x1d1d1d1dU, 0x29292929U, 0xc5c5c5c5U, 0x89898989U, + 0x6f6f6f6fU, 0xb7b7b7b7U, 0x62626262U, 0x0e0e0e0eU, + 0xaaaaaaaaU, 0x18181818U, 0xbebebebeU, 0x1b1b1b1bU, + 0xfcfcfcfcU, 0x56565656U, 0x3e3e3e3eU, 0x4b4b4b4bU, + 0xc6c6c6c6U, 0xd2d2d2d2U, 0x79797979U, 0x20202020U, + 0x9a9a9a9aU, 0xdbdbdbdbU, 0xc0c0c0c0U, 0xfefefefeU, + 0x78787878U, 0xcdcdcdcdU, 0x5a5a5a5aU, 0xf4f4f4f4U, + 0x1f1f1f1fU, 0xddddddddU, 0xa8a8a8a8U, 0x33333333U, + 0x88888888U, 0x07070707U, 0xc7c7c7c7U, 0x31313131U, + 0xb1b1b1b1U, 0x12121212U, 0x10101010U, 0x59595959U, + 0x27272727U, 0x80808080U, 0xececececU, 0x5f5f5f5fU, + 0x60606060U, 0x51515151U, 0x7f7f7f7fU, 0xa9a9a9a9U, + 0x19191919U, 0xb5b5b5b5U, 0x4a4a4a4aU, 0x0d0d0d0dU, + 0x2d2d2d2dU, 0xe5e5e5e5U, 0x7a7a7a7aU, 0x9f9f9f9fU, + 0x93939393U, 0xc9c9c9c9U, 0x9c9c9c9cU, 0xefefefefU, + 0xa0a0a0a0U, 0xe0e0e0e0U, 0x3b3b3b3bU, 0x4d4d4d4dU, + 0xaeaeaeaeU, 0x2a2a2a2aU, 0xf5f5f5f5U, 0xb0b0b0b0U, + 0xc8c8c8c8U, 0xebebebebU, 0xbbbbbbbbU, 0x3c3c3c3cU, + 0x83838383U, 0x53535353U, 0x99999999U, 0x61616161U, + 0x17171717U, 0x2b2b2b2bU, 0x04040404U, 0x7e7e7e7eU, + 0xbabababaU, 0x77777777U, 0xd6d6d6d6U, 0x26262626U, + 0xe1e1e1e1U, 0x69696969U, 0x14141414U, 0x63636363U, + 0x55555555U, 0x21212121U, 0x0c0c0c0cU, 0x7d7d7d7dU +}; +static const uint32 rcon[] = { + 0x01000000, 0x02000000, 0x04000000, 0x08000000, + 0x10000000, 0x20000000, 0x40000000, 0x80000000, + 0x1B000000, 0x36000000 + /* for 128-bit blocks, Rijndael never uses more than 10 rcon values */ +}; + +#if defined(_MSC_VER) && !defined(EFI) +#include +#endif + +#define SWAP(x) (_lrotl(x, 8) & 0x00ff00ff | _lrotr(x, 8) & 0xff00ff00) + +#if defined(_MSC_VER) && !defined(EFI) +#define GETU32(p) SWAP(*((uint32 *)(p))) +#define PUTU32(ct, st) { *((uint32 *)(ct)) = SWAP((st)); } +#else +#define GETU32(pt) (((uint32)(pt)[0] << 24) ^ ((uint32)(pt)[1] << 16) ^ \ + ((uint32)(pt)[2] << 8) ^ ((uint32)(pt)[3])) +#define PUTU32(ct, st) { \ + (ct)[0] = (uint8)((st) >> 24); \ + (ct)[1] = (uint8)((st) >> 16); \ + (ct)[2] = (uint8)((st) >> 8); \ + (ct)[3] = (uint8)(st); } +#endif + +/* + * Expand the cipher key into the encryption key schedule. + * + * @return the number of rounds for the given cipher key size. + */ + +uint8 _rijndael10 = 10; +uint8 _rijndael8 = 8; +uint8 _rijndael7 = 7; + +int +BCMROMFN(rijndaelKeySetupEnc)(uint32 rk[ /* 4 * (Nr + 1) */], const uint8 cipherKey[], int keyBits) +{ + int i = 0; + uint32 temp; + + rk[0] = GETU32(cipherKey); + rk[1] = GETU32(cipherKey + 4); + rk[2] = GETU32(cipherKey + 8); + rk[3] = GETU32(cipherKey + 12); + if (keyBits == 128) { + for (;;) { + temp = rk[3]; + rk[4] = rk[0] ^ + (Te4[(temp >> 16) & 0xff] & 0xff000000) ^ + (Te4[(temp >> 8) & 0xff] & 0x00ff0000) ^ + (Te4[(temp) & 0xff] & 0x0000ff00) ^ + (Te4[(temp >> 24) ] & 0x000000ff) ^ + rcon[i]; + rk[5] = rk[1] ^ rk[4]; + rk[6] = rk[2] ^ rk[5]; + rk[7] = rk[3] ^ rk[6]; + if (++i == _rijndael10) { + return 10; + } + rk += 4; + } + } + rk[4] = GETU32(cipherKey + 16); + rk[5] = GETU32(cipherKey + 20); + if (keyBits == 192) { + for (;;) { + temp = rk[ 5]; + rk[ 6] = rk[ 0] ^ + (Te4[(temp >> 16) & 0xff] & 0xff000000) ^ + (Te4[(temp >> 8) & 0xff] & 0x00ff0000) ^ + (Te4[(temp) & 0xff] & 0x0000ff00) ^ + (Te4[(temp >> 24) ] & 0x000000ff) ^ + rcon[i]; + rk[ 7] = rk[ 1] ^ rk[ 6]; + rk[ 8] = rk[ 2] ^ rk[ 7]; + rk[ 9] = rk[ 3] ^ rk[ 8]; + if (++i == _rijndael8) { + return 12; + } + rk[10] = rk[ 4] ^ rk[ 9]; + rk[11] = rk[ 5] ^ rk[10]; + rk += 6; + } + } + rk[6] = GETU32(cipherKey + 24); + rk[7] = GETU32(cipherKey + 28); + if (keyBits == 256) { + for (;;) { + temp = rk[ 7]; + rk[ 8] = rk[ 0] ^ + (Te4[(temp >> 16) & 0xff] & 0xff000000) ^ + (Te4[(temp >> 8) & 0xff] & 0x00ff0000) ^ + (Te4[(temp) & 0xff] & 0x0000ff00) ^ + (Te4[(temp >> 24) ] & 0x000000ff) ^ + rcon[i]; + rk[ 9] = rk[ 1] ^ rk[ 8]; + rk[10] = rk[ 2] ^ rk[ 9]; + rk[11] = rk[ 3] ^ rk[10]; + if (++i == _rijndael7) { + return 14; + } + temp = rk[11]; + rk[12] = rk[ 4] ^ + (Te4[(temp >> 24) ] & 0xff000000) ^ + (Te4[(temp >> 16) & 0xff] & 0x00ff0000) ^ + (Te4[(temp >> 8) & 0xff] & 0x0000ff00) ^ + (Te4[(temp) & 0xff] & 0x000000ff); + rk[13] = rk[ 5] ^ rk[12]; + rk[14] = rk[ 6] ^ rk[13]; + rk[15] = rk[ 7] ^ rk[14]; + + rk += 8; + } + } + return 0; +} + +/* + * Expand the cipher key into the decryption key schedule. + * + * @return the number of rounds for the given cipher key size. + */ +int +BCMROMFN(rijndaelKeySetupDec)(uint32 rk[ /* 4 * (Nr + 1) */ ], const uint8 cipherKey[], int keyBits) +{ + int Nr, i, j; + uint32 temp; + + /* expand the cipher key: */ + Nr = rijndaelKeySetupEnc(rk, cipherKey, keyBits); + /* invert the order of the round keys: */ + for (i = 0, j = 4*Nr; i < j; i += 4, j -= 4) { + temp = rk[i]; rk[i] = rk[j]; rk[j] = temp; + temp = rk[i + 1]; rk[i + 1] = rk[j + 1]; rk[j + 1] = temp; + temp = rk[i + 2]; rk[i + 2] = rk[j + 2]; rk[j + 2] = temp; + temp = rk[i + 3]; rk[i + 3] = rk[j + 3]; rk[j + 3] = temp; + } + /* apply the inverse MixColumn transform to all round keys but the first and the last: */ + for (i = 1; i < Nr; i++) { + rk += 4; + rk[0] = + Td0[Te4[(rk[0] >> 24) ] & 0xff] ^ + Td1[Te4[(rk[0] >> 16) & 0xff] & 0xff] ^ + Td2[Te4[(rk[0] >> 8) & 0xff] & 0xff] ^ + Td3[Te4[(rk[0]) & 0xff] & 0xff]; + rk[1] = + Td0[Te4[(rk[1] >> 24) ] & 0xff] ^ + Td1[Te4[(rk[1] >> 16) & 0xff] & 0xff] ^ + Td2[Te4[(rk[1] >> 8) & 0xff] & 0xff] ^ + Td3[Te4[(rk[1]) & 0xff] & 0xff]; + rk[2] = + Td0[Te4[(rk[2] >> 24) ] & 0xff] ^ + Td1[Te4[(rk[2] >> 16) & 0xff] & 0xff] ^ + Td2[Te4[(rk[2] >> 8) & 0xff] & 0xff] ^ + Td3[Te4[(rk[2]) & 0xff] & 0xff]; + rk[3] = + Td0[Te4[(rk[3] >> 24) ] & 0xff] ^ + Td1[Te4[(rk[3] >> 16) & 0xff] & 0xff] ^ + Td2[Te4[(rk[3] >> 8) & 0xff] & 0xff] ^ + Td3[Te4[(rk[3]) & 0xff] & 0xff]; + } + return Nr; +} + +void +BCMROMFN(rijndaelEncrypt)(const uint32 rk[ /* 4 * (Nr + 1) */ ], int Nr, const uint8 pt[16], + uint8 ct[16]) +{ + uint32 s0, s1, s2, s3, t0, t1, t2, t3; +#ifndef FULL_UNROLL + int r; +#endif /* FULL_UNROLL */ + + /* + * map byte array block to cipher state + * and add initial round key: + */ + s0 = GETU32(pt) ^ rk[0]; + s1 = GETU32(pt + 4) ^ rk[1]; + s2 = GETU32(pt + 8) ^ rk[2]; + s3 = GETU32(pt + 12) ^ rk[3]; +#ifdef FULL_UNROLL + /* round 1: */ + t0 = Te0[s0 >> 24] ^ Te1[(s1 >> 16) & 0xff] ^ Te2[(s2 >> 8) & 0xff] ^ + Te3[s3 & 0xff] ^ rk[ 4]; + t1 = Te0[s1 >> 24] ^ Te1[(s2 >> 16) & 0xff] ^ Te2[(s3 >> 8) & 0xff] ^ + Te3[s0 & 0xff] ^ rk[ 5]; + t2 = Te0[s2 >> 24] ^ Te1[(s3 >> 16) & 0xff] ^ Te2[(s0 >> 8) & 0xff] ^ + Te3[s1 & 0xff] ^ rk[ 6]; + t3 = Te0[s3 >> 24] ^ Te1[(s0 >> 16) & 0xff] ^ Te2[(s1 >> 8) & 0xff] ^ + Te3[s2 & 0xff] ^ rk[ 7]; + /* round 2: */ + s0 = Te0[t0 >> 24] ^ Te1[(t1 >> 16) & 0xff] ^ Te2[(t2 >> 8) & 0xff] ^ + Te3[t3 & 0xff] ^ rk[ 8]; + s1 = Te0[t1 >> 24] ^ Te1[(t2 >> 16) & 0xff] ^ Te2[(t3 >> 8) & 0xff] ^ + Te3[t0 & 0xff] ^ rk[ 9]; + s2 = Te0[t2 >> 24] ^ Te1[(t3 >> 16) & 0xff] ^ Te2[(t0 >> 8) & 0xff] ^ + Te3[t1 & 0xff] ^ rk[10]; + s3 = Te0[t3 >> 24] ^ Te1[(t0 >> 16) & 0xff] ^ Te2[(t1 >> 8) & 0xff] ^ + Te3[t2 & 0xff] ^ rk[11]; + /* round 3: */ + t0 = Te0[s0 >> 24] ^ Te1[(s1 >> 16) & 0xff] ^ Te2[(s2 >> 8) & 0xff] ^ + Te3[s3 & 0xff] ^ rk[12]; + t1 = Te0[s1 >> 24] ^ Te1[(s2 >> 16) & 0xff] ^ Te2[(s3 >> 8) & 0xff] ^ + Te3[s0 & 0xff] ^ rk[13]; + t2 = Te0[s2 >> 24] ^ Te1[(s3 >> 16) & 0xff] ^ Te2[(s0 >> 8) & 0xff] ^ + Te3[s1 & 0xff] ^ rk[14]; + t3 = Te0[s3 >> 24] ^ Te1[(s0 >> 16) & 0xff] ^ Te2[(s1 >> 8) & 0xff] ^ + Te3[s2 & 0xff] ^ rk[15]; + /* round 4: */ + s0 = Te0[t0 >> 24] ^ Te1[(t1 >> 16) & 0xff] ^ Te2[(t2 >> 8) & 0xff] ^ + Te3[t3 & 0xff] ^ rk[16]; + s1 = Te0[t1 >> 24] ^ Te1[(t2 >> 16) & 0xff] ^ Te2[(t3 >> 8) & 0xff] ^ + Te3[t0 & 0xff] ^ rk[17]; + s2 = Te0[t2 >> 24] ^ Te1[(t3 >> 16) & 0xff] ^ Te2[(t0 >> 8) & 0xff] ^ + Te3[t1 & 0xff] ^ rk[18]; + s3 = Te0[t3 >> 24] ^ Te1[(t0 >> 16) & 0xff] ^ Te2[(t1 >> 8) & 0xff] ^ + Te3[t2 & 0xff] ^ rk[19]; + /* round 5: */ + t0 = Te0[s0 >> 24] ^ Te1[(s1 >> 16) & 0xff] ^ Te2[(s2 >> 8) & 0xff] ^ + Te3[s3 & 0xff] ^ rk[20]; + t1 = Te0[s1 >> 24] ^ Te1[(s2 >> 16) & 0xff] ^ Te2[(s3 >> 8) & 0xff] ^ + Te3[s0 & 0xff] ^ rk[21]; + t2 = Te0[s2 >> 24] ^ Te1[(s3 >> 16) & 0xff] ^ Te2[(s0 >> 8) & 0xff] ^ + Te3[s1 & 0xff] ^ rk[22]; + t3 = Te0[s3 >> 24] ^ Te1[(s0 >> 16) & 0xff] ^ Te2[(s1 >> 8) & 0xff] ^ + Te3[s2 & 0xff] ^ rk[23]; + /* round 6: */ + s0 = Te0[t0 >> 24] ^ Te1[(t1 >> 16) & 0xff] ^ Te2[(t2 >> 8) & 0xff] ^ + Te3[t3 & 0xff] ^ rk[24]; + s1 = Te0[t1 >> 24] ^ Te1[(t2 >> 16) & 0xff] ^ Te2[(t3 >> 8) & 0xff] ^ + Te3[t0 & 0xff] ^ rk[25]; + s2 = Te0[t2 >> 24] ^ Te1[(t3 >> 16) & 0xff] ^ Te2[(t0 >> 8) & 0xff] ^ + Te3[t1 & 0xff] ^ rk[26]; + s3 = Te0[t3 >> 24] ^ Te1[(t0 >> 16) & 0xff] ^ Te2[(t1 >> 8) & 0xff] ^ + Te3[t2 & 0xff] ^ rk[27]; + /* round 7: */ + t0 = Te0[s0 >> 24] ^ Te1[(s1 >> 16) & 0xff] ^ Te2[(s2 >> 8) & 0xff] ^ + Te3[s3 & 0xff] ^ rk[28]; + t1 = Te0[s1 >> 24] ^ Te1[(s2 >> 16) & 0xff] ^ Te2[(s3 >> 8) & 0xff] ^ + Te3[s0 & 0xff] ^ rk[29]; + t2 = Te0[s2 >> 24] ^ Te1[(s3 >> 16) & 0xff] ^ Te2[(s0 >> 8) & 0xff] ^ + Te3[s1 & 0xff] ^ rk[30]; + t3 = Te0[s3 >> 24] ^ Te1[(s0 >> 16) & 0xff] ^ Te2[(s1 >> 8) & 0xff] ^ + Te3[s2 & 0xff] ^ rk[31]; + /* round 8: */ + s0 = Te0[t0 >> 24] ^ Te1[(t1 >> 16) & 0xff] ^ Te2[(t2 >> 8) & 0xff] ^ + Te3[t3 & 0xff] ^ rk[32]; + s1 = Te0[t1 >> 24] ^ Te1[(t2 >> 16) & 0xff] ^ Te2[(t3 >> 8) & 0xff] ^ + Te3[t0 & 0xff] ^ rk[33]; + s2 = Te0[t2 >> 24] ^ Te1[(t3 >> 16) & 0xff] ^ Te2[(t0 >> 8) & 0xff] ^ + Te3[t1 & 0xff] ^ rk[34]; + s3 = Te0[t3 >> 24] ^ Te1[(t0 >> 16) & 0xff] ^ Te2[(t1 >> 8) & 0xff] ^ + Te3[t2 & 0xff] ^ rk[35]; + /* round 9: */ + t0 = Te0[s0 >> 24] ^ Te1[(s1 >> 16) & 0xff] ^ Te2[(s2 >> 8) & 0xff] ^ + Te3[s3 & 0xff] ^ rk[36]; + t1 = Te0[s1 >> 24] ^ Te1[(s2 >> 16) & 0xff] ^ Te2[(s3 >> 8) & 0xff] ^ + Te3[s0 & 0xff] ^ rk[37]; + t2 = Te0[s2 >> 24] ^ Te1[(s3 >> 16) & 0xff] ^ Te2[(s0 >> 8) & 0xff] ^ + Te3[s1 & 0xff] ^ rk[38]; + t3 = Te0[s3 >> 24] ^ Te1[(s0 >> 16) & 0xff] ^ Te2[(s1 >> 8) & 0xff] ^ + Te3[s2 & 0xff] ^ rk[39]; + if (Nr > 10) { + /* round 10: */ + s0 = Te0[t0 >> 24] ^ Te1[(t1 >> 16) & 0xff] ^ Te2[(t2 >> 8) & 0xff] ^ + Te3[t3 & 0xff] ^ rk[40]; + s1 = Te0[t1 >> 24] ^ Te1[(t2 >> 16) & 0xff] ^ Te2[(t3 >> 8) & 0xff] ^ + Te3[t0 & 0xff] ^ rk[41]; + s2 = Te0[t2 >> 24] ^ Te1[(t3 >> 16) & 0xff] ^ Te2[(t0 >> 8) & 0xff] ^ + Te3[t1 & 0xff] ^ rk[42]; + s3 = Te0[t3 >> 24] ^ Te1[(t0 >> 16) & 0xff] ^ Te2[(t1 >> 8) & 0xff] ^ + Te3[t2 & 0xff] ^ rk[43]; + /* round 11: */ + t0 = Te0[s0 >> 24] ^ Te1[(s1 >> 16) & 0xff] ^ Te2[(s2 >> 8) & 0xff] ^ + Te3[s3 & 0xff] ^ rk[44]; + t1 = Te0[s1 >> 24] ^ Te1[(s2 >> 16) & 0xff] ^ Te2[(s3 >> 8) & 0xff] ^ + Te3[s0 & 0xff] ^ rk[45]; + t2 = Te0[s2 >> 24] ^ Te1[(s3 >> 16) & 0xff] ^ Te2[(s0 >> 8) & 0xff] ^ + Te3[s1 & 0xff] ^ rk[46]; + t3 = Te0[s3 >> 24] ^ Te1[(s0 >> 16) & 0xff] ^ Te2[(s1 >> 8) & 0xff] ^ + Te3[s2 & 0xff] ^ rk[47]; + if (Nr > 12) { + /* round 12: */ + s0 = Te0[t0 >> 24] ^ Te1[(t1 >> 16) & 0xff] ^ Te2[(t2 >> 8) & 0xff] ^ + Te3[t3 & 0xff] ^ rk[48]; + s1 = Te0[t1 >> 24] ^ Te1[(t2 >> 16) & 0xff] ^ Te2[(t3 >> 8) & 0xff] ^ + Te3[t0 & 0xff] ^ rk[49]; + s2 = Te0[t2 >> 24] ^ Te1[(t3 >> 16) & 0xff] ^ Te2[(t0 >> 8) & 0xff] ^ + Te3[t1 & 0xff] ^ rk[50]; + s3 = Te0[t3 >> 24] ^ Te1[(t0 >> 16) & 0xff] ^ Te2[(t1 >> 8) & 0xff] ^ + Te3[t2 & 0xff] ^ rk[51]; + /* round 13: */ + t0 = Te0[s0 >> 24] ^ Te1[(s1 >> 16) & 0xff] ^ Te2[(s2 >> 8) & 0xff] ^ + Te3[s3 & 0xff] ^ rk[52]; + t1 = Te0[s1 >> 24] ^ Te1[(s2 >> 16) & 0xff] ^ Te2[(s3 >> 8) & 0xff] ^ + Te3[s0 & 0xff] ^ rk[53]; + t2 = Te0[s2 >> 24] ^ Te1[(s3 >> 16) & 0xff] ^ Te2[(s0 >> 8) & 0xff] ^ + Te3[s1 & 0xff] ^ rk[54]; + t3 = Te0[s3 >> 24] ^ Te1[(s0 >> 16) & 0xff] ^ Te2[(s1 >> 8) & 0xff] ^ + Te3[s2 & 0xff] ^ rk[55]; + } + } + rk += Nr << 2; +#else /* !FULL_UNROLL */ + /* + * Nr - 1 full rounds: + */ + r = Nr >> 1; + for (;;) { + t0 = + Te0[(s0 >> 24) ] ^ + Te1[(s1 >> 16) & 0xff] ^ + Te2[(s2 >> 8) & 0xff] ^ + Te3[(s3) & 0xff] ^ + rk[4]; + t1 = + Te0[(s1 >> 24) ] ^ + Te1[(s2 >> 16) & 0xff] ^ + Te2[(s3 >> 8) & 0xff] ^ + Te3[(s0) & 0xff] ^ + rk[5]; + t2 = + Te0[(s2 >> 24) ] ^ + Te1[(s3 >> 16) & 0xff] ^ + Te2[(s0 >> 8) & 0xff] ^ + Te3[(s1) & 0xff] ^ + rk[6]; + t3 = + Te0[(s3 >> 24) ] ^ + Te1[(s0 >> 16) & 0xff] ^ + Te2[(s1 >> 8) & 0xff] ^ + Te3[(s2) & 0xff] ^ + rk[7]; + + rk += 8; + if (--r == 0) { + break; + } + + s0 = + Te0[(t0 >> 24) ] ^ + Te1[(t1 >> 16) & 0xff] ^ + Te2[(t2 >> 8) & 0xff] ^ + Te3[(t3) & 0xff] ^ + rk[0]; + s1 = + Te0[(t1 >> 24) ] ^ + Te1[(t2 >> 16) & 0xff] ^ + Te2[(t3 >> 8) & 0xff] ^ + Te3[(t0) & 0xff] ^ + rk[1]; + s2 = + Te0[(t2 >> 24) ] ^ + Te1[(t3 >> 16) & 0xff] ^ + Te2[(t0 >> 8) & 0xff] ^ + Te3[(t1) & 0xff] ^ + rk[2]; + s3 = + Te0[(t3 >> 24) ] ^ + Te1[(t0 >> 16) & 0xff] ^ + Te2[(t1 >> 8) & 0xff] ^ + Te3[(t2) & 0xff] ^ + rk[3]; + } +#endif /* ?FULL_UNROLL */ + /* + * apply last round and + * map cipher state to byte array block: + */ + s0 = + (Te4[(t0 >> 24) ] & 0xff000000) ^ + (Te4[(t1 >> 16) & 0xff] & 0x00ff0000) ^ + (Te4[(t2 >> 8) & 0xff] & 0x0000ff00) ^ + (Te4[(t3) & 0xff] & 0x000000ff) ^ + rk[0]; + PUTU32(ct, s0); + s1 = + (Te4[(t1 >> 24) ] & 0xff000000) ^ + (Te4[(t2 >> 16) & 0xff] & 0x00ff0000) ^ + (Te4[(t3 >> 8) & 0xff] & 0x0000ff00) ^ + (Te4[(t0) & 0xff] & 0x000000ff) ^ + rk[1]; + PUTU32(ct + 4, s1); + s2 = + (Te4[(t2 >> 24) ] & 0xff000000) ^ + (Te4[(t3 >> 16) & 0xff] & 0x00ff0000) ^ + (Te4[(t0 >> 8) & 0xff] & 0x0000ff00) ^ + (Te4[(t1) & 0xff] & 0x000000ff) ^ + rk[2]; + PUTU32(ct + 8, s2); + s3 = + (Te4[(t3 >> 24) ] & 0xff000000) ^ + (Te4[(t0 >> 16) & 0xff] & 0x00ff0000) ^ + (Te4[(t1 >> 8) & 0xff] & 0x0000ff00) ^ + (Te4[(t2) & 0xff] & 0x000000ff) ^ + rk[3]; + PUTU32(ct + 12, s3); +} + +void +BCMROMFN(rijndaelDecrypt)(const uint32 rk[ /* 4 * (Nr + 1) */], int Nr, const uint8 ct[16], + uint8 pt[16]) +{ + uint32 s0, s1, s2, s3, t0, t1, t2, t3; +#ifndef FULL_UNROLL + int r; +#endif /* ?FULL_UNROLL */ + + /* + * map byte array block to cipher state + * and add initial round key: + */ + s0 = GETU32(ct) ^ rk[0]; + s1 = GETU32(ct + 4) ^ rk[1]; + s2 = GETU32(ct + 8) ^ rk[2]; + s3 = GETU32(ct + 12) ^ rk[3]; +#ifdef FULL_UNROLL + /* round 1: */ + t0 = Td0[s0 >> 24] ^ Td1[(s3 >> 16) & 0xff] ^ Td2[(s2 >> 8) & 0xff] ^ + Td3[s1 & 0xff] ^ rk[ 4]; + t1 = Td0[s1 >> 24] ^ Td1[(s0 >> 16) & 0xff] ^ Td2[(s3 >> 8) & 0xff] ^ + Td3[s2 & 0xff] ^ rk[ 5]; + t2 = Td0[s2 >> 24] ^ Td1[(s1 >> 16) & 0xff] ^ Td2[(s0 >> 8) & 0xff] ^ + Td3[s3 & 0xff] ^ rk[ 6]; + t3 = Td0[s3 >> 24] ^ Td1[(s2 >> 16) & 0xff] ^ Td2[(s1 >> 8) & 0xff] ^ + Td3[s0 & 0xff] ^ rk[ 7]; + /* round 2: */ + s0 = Td0[t0 >> 24] ^ Td1[(t3 >> 16) & 0xff] ^ Td2[(t2 >> 8) & 0xff] ^ + Td3[t1 & 0xff] ^ rk[ 8]; + s1 = Td0[t1 >> 24] ^ Td1[(t0 >> 16) & 0xff] ^ Td2[(t3 >> 8) & 0xff] ^ + Td3[t2 & 0xff] ^ rk[ 9]; + s2 = Td0[t2 >> 24] ^ Td1[(t1 >> 16) & 0xff] ^ Td2[(t0 >> 8) & 0xff] ^ + Td3[t3 & 0xff] ^ rk[10]; + s3 = Td0[t3 >> 24] ^ Td1[(t2 >> 16) & 0xff] ^ Td2[(t1 >> 8) & 0xff] ^ + Td3[t0 & 0xff] ^ rk[11]; + /* round 3: */ + t0 = Td0[s0 >> 24] ^ Td1[(s3 >> 16) & 0xff] ^ Td2[(s2 >> 8) & 0xff] ^ + Td3[s1 & 0xff] ^ rk[12]; + t1 = Td0[s1 >> 24] ^ Td1[(s0 >> 16) & 0xff] ^ Td2[(s3 >> 8) & 0xff] ^ + Td3[s2 & 0xff] ^ rk[13]; + t2 = Td0[s2 >> 24] ^ Td1[(s1 >> 16) & 0xff] ^ Td2[(s0 >> 8) & 0xff] ^ + Td3[s3 & 0xff] ^ rk[14]; + t3 = Td0[s3 >> 24] ^ Td1[(s2 >> 16) & 0xff] ^ Td2[(s1 >> 8) & 0xff] ^ + Td3[s0 & 0xff] ^ rk[15]; + /* round 4: */ + s0 = Td0[t0 >> 24] ^ Td1[(t3 >> 16) & 0xff] ^ Td2[(t2 >> 8) & 0xff] ^ + Td3[t1 & 0xff] ^ rk[16]; + s1 = Td0[t1 >> 24] ^ Td1[(t0 >> 16) & 0xff] ^ Td2[(t3 >> 8) & 0xff] ^ + Td3[t2 & 0xff] ^ rk[17]; + s2 = Td0[t2 >> 24] ^ Td1[(t1 >> 16) & 0xff] ^ Td2[(t0 >> 8) & 0xff] ^ + Td3[t3 & 0xff] ^ rk[18]; + s3 = Td0[t3 >> 24] ^ Td1[(t2 >> 16) & 0xff] ^ Td2[(t1 >> 8) & 0xff] ^ + Td3[t0 & 0xff] ^ rk[19]; + /* round 5: */ + t0 = Td0[s0 >> 24] ^ Td1[(s3 >> 16) & 0xff] ^ Td2[(s2 >> 8) & 0xff] ^ + Td3[s1 & 0xff] ^ rk[20]; + t1 = Td0[s1 >> 24] ^ Td1[(s0 >> 16) & 0xff] ^ Td2[(s3 >> 8) & 0xff] ^ + Td3[s2 & 0xff] ^ rk[21]; + t2 = Td0[s2 >> 24] ^ Td1[(s1 >> 16) & 0xff] ^ Td2[(s0 >> 8) & 0xff] ^ + Td3[s3 & 0xff] ^ rk[22]; + t3 = Td0[s3 >> 24] ^ Td1[(s2 >> 16) & 0xff] ^ Td2[(s1 >> 8) & 0xff] ^ + Td3[s0 & 0xff] ^ rk[23]; + /* round 6: */ + s0 = Td0[t0 >> 24] ^ Td1[(t3 >> 16) & 0xff] ^ Td2[(t2 >> 8) & 0xff] ^ + Td3[t1 & 0xff] ^ rk[24]; + s1 = Td0[t1 >> 24] ^ Td1[(t0 >> 16) & 0xff] ^ Td2[(t3 >> 8) & 0xff] ^ + Td3[t2 & 0xff] ^ rk[25]; + s2 = Td0[t2 >> 24] ^ Td1[(t1 >> 16) & 0xff] ^ Td2[(t0 >> 8) & 0xff] ^ + Td3[t3 & 0xff] ^ rk[26]; + s3 = Td0[t3 >> 24] ^ Td1[(t2 >> 16) & 0xff] ^ Td2[(t1 >> 8) & 0xff] ^ + Td3[t0 & 0xff] ^ rk[27]; + /* round 7: */ + t0 = Td0[s0 >> 24] ^ Td1[(s3 >> 16) & 0xff] ^ Td2[(s2 >> 8) & 0xff] ^ + Td3[s1 & 0xff] ^ rk[28]; + t1 = Td0[s1 >> 24] ^ Td1[(s0 >> 16) & 0xff] ^ Td2[(s3 >> 8) & 0xff] ^ + Td3[s2 & 0xff] ^ rk[29]; + t2 = Td0[s2 >> 24] ^ Td1[(s1 >> 16) & 0xff] ^ Td2[(s0 >> 8) & 0xff] ^ + Td3[s3 & 0xff] ^ rk[30]; + t3 = Td0[s3 >> 24] ^ Td1[(s2 >> 16) & 0xff] ^ Td2[(s1 >> 8) & 0xff] ^ + Td3[s0 & 0xff] ^ rk[31]; + /* round 8: */ + s0 = Td0[t0 >> 24] ^ Td1[(t3 >> 16) & 0xff] ^ Td2[(t2 >> 8) & 0xff] ^ + Td3[t1 & 0xff] ^ rk[32]; + s1 = Td0[t1 >> 24] ^ Td1[(t0 >> 16) & 0xff] ^ Td2[(t3 >> 8) & 0xff] ^ + Td3[t2 & 0xff] ^ rk[33]; + s2 = Td0[t2 >> 24] ^ Td1[(t1 >> 16) & 0xff] ^ Td2[(t0 >> 8) & 0xff] ^ + Td3[t3 & 0xff] ^ rk[34]; + s3 = Td0[t3 >> 24] ^ Td1[(t2 >> 16) & 0xff] ^ Td2[(t1 >> 8) & 0xff] ^ + Td3[t0 & 0xff] ^ rk[35]; + /* round 9: */ + t0 = Td0[s0 >> 24] ^ Td1[(s3 >> 16) & 0xff] ^ Td2[(s2 >> 8) & 0xff] ^ + Td3[s1 & 0xff] ^ rk[36]; + t1 = Td0[s1 >> 24] ^ Td1[(s0 >> 16) & 0xff] ^ Td2[(s3 >> 8) & 0xff] ^ + Td3[s2 & 0xff] ^ rk[37]; + t2 = Td0[s2 >> 24] ^ Td1[(s1 >> 16) & 0xff] ^ Td2[(s0 >> 8) & 0xff] ^ + Td3[s3 & 0xff] ^ rk[38]; + t3 = Td0[s3 >> 24] ^ Td1[(s2 >> 16) & 0xff] ^ Td2[(s1 >> 8) & 0xff] ^ + Td3[s0 & 0xff] ^ rk[39]; + if (Nr > 10) { + /* round 10: */ + s0 = Td0[t0 >> 24] ^ Td1[(t3 >> 16) & 0xff] ^ Td2[(t2 >> 8) & 0xff] ^ + Td3[t1 & 0xff] ^ rk[40]; + s1 = Td0[t1 >> 24] ^ Td1[(t0 >> 16) & 0xff] ^ Td2[(t3 >> 8) & 0xff] ^ + Td3[t2 & 0xff] ^ rk[41]; + s2 = Td0[t2 >> 24] ^ Td1[(t1 >> 16) & 0xff] ^ Td2[(t0 >> 8) & 0xff] ^ + Td3[t3 & 0xff] ^ rk[42]; + s3 = Td0[t3 >> 24] ^ Td1[(t2 >> 16) & 0xff] ^ Td2[(t1 >> 8) & 0xff] ^ + Td3[t0 & 0xff] ^ rk[43]; + /* round 11: */ + t0 = Td0[s0 >> 24] ^ Td1[(s3 >> 16) & 0xff] ^ Td2[(s2 >> 8) & 0xff] ^ + Td3[s1 & 0xff] ^ rk[44]; + t1 = Td0[s1 >> 24] ^ Td1[(s0 >> 16) & 0xff] ^ Td2[(s3 >> 8) & 0xff] ^ + Td3[s2 & 0xff] ^ rk[45]; + t2 = Td0[s2 >> 24] ^ Td1[(s1 >> 16) & 0xff] ^ Td2[(s0 >> 8) & 0xff] ^ + Td3[s3 & 0xff] ^ rk[46]; + t3 = Td0[s3 >> 24] ^ Td1[(s2 >> 16) & 0xff] ^ Td2[(s1 >> 8) & 0xff] ^ + Td3[s0 & 0xff] ^ rk[47]; + if (Nr > 12) { + /* round 12: */ + s0 = Td0[t0 >> 24] ^ Td1[(t3 >> 16) & 0xff] ^ Td2[(t2 >> 8) & 0xff] ^ + Td3[t1 & 0xff] ^ rk[48]; + s1 = Td0[t1 >> 24] ^ Td1[(t0 >> 16) & 0xff] ^ Td2[(t3 >> 8) & 0xff] ^ + Td3[t2 & 0xff] ^ rk[49]; + s2 = Td0[t2 >> 24] ^ Td1[(t1 >> 16) & 0xff] ^ Td2[(t0 >> 8) & 0xff] ^ + Td3[t3 & 0xff] ^ rk[50]; + s3 = Td0[t3 >> 24] ^ Td1[(t2 >> 16) & 0xff] ^ Td2[(t1 >> 8) & 0xff] ^ + Td3[t0 & 0xff] ^ rk[51]; + /* round 13: */ + t0 = Td0[s0 >> 24] ^ Td1[(s3 >> 16) & 0xff] ^ Td2[(s2 >> 8) & 0xff] ^ + Td3[s1 & 0xff] ^ rk[52]; + t1 = Td0[s1 >> 24] ^ Td1[(s0 >> 16) & 0xff] ^ Td2[(s3 >> 8) & 0xff] ^ + Td3[s2 & 0xff] ^ rk[53]; + t2 = Td0[s2 >> 24] ^ Td1[(s1 >> 16) & 0xff] ^ Td2[(s0 >> 8) & 0xff] ^ + Td3[s3 & 0xff] ^ rk[54]; + t3 = Td0[s3 >> 24] ^ Td1[(s2 >> 16) & 0xff] ^ Td2[(s1 >> 8) & 0xff] ^ + Td3[s0 & 0xff] ^ rk[55]; + } + } + rk += Nr << 2; +#else /* !FULL_UNROLL */ + /* + * Nr - 1 full rounds: + */ + r = Nr >> 1; + for (;;) { + t0 = + Td0[(s0 >> 24) ] ^ + Td1[(s3 >> 16) & 0xff] ^ + Td2[(s2 >> 8) & 0xff] ^ + Td3[(s1) & 0xff] ^ + rk[4]; + t1 = + Td0[(s1 >> 24) ] ^ + Td1[(s0 >> 16) & 0xff] ^ + Td2[(s3 >> 8) & 0xff] ^ + Td3[(s2) & 0xff] ^ + rk[5]; + t2 = + Td0[(s2 >> 24) ] ^ + Td1[(s1 >> 16) & 0xff] ^ + Td2[(s0 >> 8) & 0xff] ^ + Td3[(s3) & 0xff] ^ + rk[6]; + t3 = + Td0[(s3 >> 24) ] ^ + Td1[(s2 >> 16) & 0xff] ^ + Td2[(s1 >> 8) & 0xff] ^ + Td3[(s0) & 0xff] ^ + rk[7]; + + rk += 8; + if (--r == 0) { + break; + } + + s0 = + Td0[(t0 >> 24) ] ^ + Td1[(t3 >> 16) & 0xff] ^ + Td2[(t2 >> 8) & 0xff] ^ + Td3[(t1) & 0xff] ^ + rk[0]; + s1 = + Td0[(t1 >> 24) ] ^ + Td1[(t0 >> 16) & 0xff] ^ + Td2[(t3 >> 8) & 0xff] ^ + Td3[(t2) & 0xff] ^ + rk[1]; + s2 = + Td0[(t2 >> 24) ] ^ + Td1[(t1 >> 16) & 0xff] ^ + Td2[(t0 >> 8) & 0xff] ^ + Td3[(t3) & 0xff] ^ + rk[2]; + s3 = + Td0[(t3 >> 24) ] ^ + Td1[(t2 >> 16) & 0xff] ^ + Td2[(t1 >> 8) & 0xff] ^ + Td3[(t0) & 0xff] ^ + rk[3]; + } +#endif /* ?FULL_UNROLL */ + /* + * apply last round and + * map cipher state to byte array block: + */ + s0 = + (Td4[(t0 >> 24) ] & 0xff000000) ^ + (Td4[(t3 >> 16) & 0xff] & 0x00ff0000) ^ + (Td4[(t2 >> 8) & 0xff] & 0x0000ff00) ^ + (Td4[(t1) & 0xff] & 0x000000ff) ^ + rk[0]; + PUTU32(pt, s0); + s1 = + (Td4[(t1 >> 24) ] & 0xff000000) ^ + (Td4[(t0 >> 16) & 0xff] & 0x00ff0000) ^ + (Td4[(t3 >> 8) & 0xff] & 0x0000ff00) ^ + (Td4[(t2) & 0xff] & 0x000000ff) ^ + rk[1]; + PUTU32(pt + 4, s1); + s2 = + (Td4[(t2 >> 24) ] & 0xff000000) ^ + (Td4[(t1 >> 16) & 0xff] & 0x00ff0000) ^ + (Td4[(t0 >> 8) & 0xff] & 0x0000ff00) ^ + (Td4[(t3) & 0xff] & 0x000000ff) ^ + rk[2]; + PUTU32(pt + 8, s2); + s3 = + (Td4[(t3 >> 24) ] & 0xff000000) ^ + (Td4[(t2 >> 16) & 0xff] & 0x00ff0000) ^ + (Td4[(t1 >> 8) & 0xff] & 0x0000ff00) ^ + (Td4[(t0) & 0xff] & 0x000000ff) ^ + rk[3]; + PUTU32(pt + 12, s3); +} + +#ifdef INTERMEDIATE_VALUE_KAT + +void +rijndaelEncryptRound(const uint32 rk[ /* 4 * (Nr + 1) */ ], int Nr, uint8 block[16], int rounds) +{ + int r; + uint32 s0, s1, s2, s3, t0, t1, t2, t3; + + /* + * map byte array block to cipher state + * and add initial round key: + */ + s0 = GETU32(block) ^ rk[0]; + s1 = GETU32(block + 4) ^ rk[1]; + s2 = GETU32(block + 8) ^ rk[2]; + s3 = GETU32(block + 12) ^ rk[3]; + rk += 4; + + /* + * Nr - 1 full rounds: + */ + for (r = (rounds < Nr ? rounds : Nr - 1); r > 0; r--) { + t0 = + Te0[(s0 >> 24) ] ^ + Te1[(s1 >> 16) & 0xff] ^ + Te2[(s2 >> 8) & 0xff] ^ + Te3[(s3) & 0xff] ^ + rk[0]; + t1 = + Te0[(s1 >> 24) ] ^ + Te1[(s2 >> 16) & 0xff] ^ + Te2[(s3 >> 8) & 0xff] ^ + Te3[(s0) & 0xff] ^ + rk[1]; + t2 = + Te0[(s2 >> 24) ] ^ + Te1[(s3 >> 16) & 0xff] ^ + Te2[(s0 >> 8) & 0xff] ^ + Te3[(s1) & 0xff] ^ + rk[2]; + t3 = + Te0[(s3 >> 24) ] ^ + Te1[(s0 >> 16) & 0xff] ^ + Te2[(s1 >> 8) & 0xff] ^ + Te3[(s2) & 0xff] ^ + rk[3]; + + s0 = t0; + s1 = t1; + s2 = t2; + s3 = t3; + rk += 4; + + } + + /* + * apply last round and + * map cipher state to byte array block: + */ + if (rounds == Nr) { + t0 = + (Te4[(s0 >> 24) ] & 0xff000000) ^ + (Te4[(s1 >> 16) & 0xff] & 0x00ff0000) ^ + (Te4[(s2 >> 8) & 0xff] & 0x0000ff00) ^ + (Te4[(s3) & 0xff] & 0x000000ff) ^ + rk[0]; + t1 = + (Te4[(s1 >> 24) ] & 0xff000000) ^ + (Te4[(s2 >> 16) & 0xff] & 0x00ff0000) ^ + (Te4[(s3 >> 8) & 0xff] & 0x0000ff00) ^ + (Te4[(s0) & 0xff] & 0x000000ff) ^ + rk[1]; + t2 = + (Te4[(s2 >> 24) ] & 0xff000000) ^ + (Te4[(s3 >> 16) & 0xff] & 0x00ff0000) ^ + (Te4[(s0 >> 8) & 0xff] & 0x0000ff00) ^ + (Te4[(s1) & 0xff] & 0x000000ff) ^ + rk[2]; + t3 = + (Te4[(s3 >> 24) ] & 0xff000000) ^ + (Te4[(s0 >> 16) & 0xff] & 0x00ff0000) ^ + (Te4[(s1 >> 8) & 0xff] & 0x0000ff00) ^ + (Te4[(s2) & 0xff] & 0x000000ff) ^ + rk[3]; + + s0 = t0; + s1 = t1; + s2 = t2; + s3 = t3; + } + + PUTU32(block, s0); + PUTU32(block + 4, s1); + PUTU32(block + 8, s2); + PUTU32(block + 12, s3); +} + +void +rijndaelDecryptRound(const uint32 rk[ /* 4 * (Nr + 1) */ ], int Nr, uint8 block[16], int rounds) +{ + int r; + uint32 s0, s1, s2, s3, t0, t1, t2, t3; + + /* + * map byte array block to cipher state + * and add initial round key: + */ + s0 = GETU32(block) ^ rk[0]; + s1 = GETU32(block + 4) ^ rk[1]; + s2 = GETU32(block + 8) ^ rk[2]; + s3 = GETU32(block + 12) ^ rk[3]; + rk += 4; + + /* + * Nr - 1 full rounds: + */ + for (r = (rounds < Nr ? rounds : Nr) - 1; r > 0; r--) { + t0 = + Td0[(s0 >> 24) ] ^ + Td1[(s3 >> 16) & 0xff] ^ + Td2[(s2 >> 8) & 0xff] ^ + Td3[(s1) & 0xff] ^ + rk[0]; + t1 = + Td0[(s1 >> 24) ] ^ + Td1[(s0 >> 16) & 0xff] ^ + Td2[(s3 >> 8) & 0xff] ^ + Td3[(s2) & 0xff] ^ + rk[1]; + t2 = + Td0[(s2 >> 24) ] ^ + Td1[(s1 >> 16) & 0xff] ^ + Td2[(s0 >> 8) & 0xff] ^ + Td3[(s3) & 0xff] ^ + rk[2]; + t3 = + Td0[(s3 >> 24) ] ^ + Td1[(s2 >> 16) & 0xff] ^ + Td2[(s1 >> 8) & 0xff] ^ + Td3[(s0) & 0xff] ^ + rk[3]; + + s0 = t0; + s1 = t1; + s2 = t2; + s3 = t3; + rk += 4; + + } + + /* + * complete the last round and + * map cipher state to byte array block: + */ + t0 = + (Td4[(s0 >> 24) ] & 0xff000000) ^ + (Td4[(s3 >> 16) & 0xff] & 0x00ff0000) ^ + (Td4[(s2 >> 8) & 0xff] & 0x0000ff00) ^ + (Td4[(s1) & 0xff] & 0x000000ff); + t1 = + (Td4[(s1 >> 24) ] & 0xff000000) ^ + (Td4[(s0 >> 16) & 0xff] & 0x00ff0000) ^ + (Td4[(s3 >> 8) & 0xff] & 0x0000ff00) ^ + (Td4[(s2) & 0xff] & 0x000000ff); + t2 = + (Td4[(s2 >> 24) ] & 0xff000000) ^ + (Td4[(s1 >> 16) & 0xff] & 0x00ff0000) ^ + (Td4[(s0 >> 8) & 0xff] & 0x0000ff00) ^ + (Td4[(s3) & 0xff] & 0x000000ff); + t3 = + (Td4[(s3 >> 24) ] & 0xff000000) ^ + (Td4[(s2 >> 16) & 0xff] & 0x00ff0000) ^ + (Td4[(s1 >> 8) & 0xff] & 0x0000ff00) ^ + (Td4[(s0) & 0xff] & 0x000000ff); + + if (rounds == Nr) { + t0 ^= rk[0]; + t1 ^= rk[1]; + t2 ^= rk[2]; + t3 ^= rk[3]; + } + + PUTU32(block, t0); + PUTU32(block + 4, t1); + PUTU32(block + 8, t2); + PUTU32(block + 12, t3); +} + +#endif /* INTERMEDIATE_VALUE_KAT */ diff --git a/release/src-rt/bcmcrypto/sha1.c b/release/src-rt/bcmcrypto/sha1.c new file mode 100755 index 0000000000..fa36d3a11f --- /dev/null +++ b/release/src-rt/bcmcrypto/sha1.c @@ -0,0 +1,522 @@ +/* + * Copyright (C) The Internet Society (2001). All Rights Reserved. + * + * This document and translations of it may be copied and furnished to + * others, and derivative works that comment on or otherwise explain it + * or assist in its implementation may be prepared, copied, published + * and distributed, in whole or in part, without restriction of any + * kind, provided that the above copyright notice and this paragraph are + * included on all such copies and derivative works. However, this + * document itself may not be modified in any way, such as by removing + * the copyright notice or references to the Internet Society or other + * Internet organizations, except as needed for the purpose of + * developing Internet standards in which case the procedures for + * copyrights defined in the Internet Standards process must be + * followed, or as required to translate it into languages other than + * English. + * + * The limited permissions granted above are perpetual and will not be + * revoked by the Internet Society or its successors or assigns. + * + * This document and the information contained herein is provided on an + * "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING + * TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING + * BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION + * HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF + * MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. + * + * Copyright (C) 2010, Broadcom Corporation + * All Rights Reserved. + * + * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation; + * the contents of this file may not be disclosed to third parties, copied + * or duplicated in any form, in whole or in part, without the prior + * written permission of Broadcom Corporation. + * + * $Id: sha1.c,v 1.14 2009-02-26 21:37:35 Exp $ + * + * From rfc3174.txt + */ + +/* + * sha1.c + * + * Description: + * This file implements the Secure Hashing Algorithm 1 as + * defined in FIPS PUB 180-1 published April 17, 1995. + * + * The SHA-1, produces a 160-bit message digest for a given + * data stream. It should take about 2**n steps to find a + * message with the same digest as a given message and + * 2**(n/2) to find any two messages with the same digest, + * when n is the digest size in bits. Therefore, this + * algorithm can serve as a means of providing a + * "fingerprint" for a message. + * + * Portability Issues: + * SHA-1 is defined in terms of 32-bit "words". This code + * uses (included via "sha1.h" to define 32 and 8 + * bit unsigned integer types. If your C compiler does not + * support 32 bit unsigned integers, this code is not + * appropriate. + * + * Caveats: + * SHA-1 is designed to work with messages less than 2^64 bits + * long. Although SHA-1 allows a message digest to be generated + * for messages of any number of bits less than 2^64, this + * implementation only works with messages with a length that is + * a multiple of the size of an 8-bit character. + * + */ + +#include + +#ifdef BCMDRIVER +#include +#else +#if defined(__GNUC__) +extern int bcmp(const void *b1, const void *b2, int len); +extern size_t strlen(const char *s); +#else +#define bcmp(b1, b2, len) memcmp((b1), (b2), (len)) +#endif /* __GNUC__ */ +#endif /* BCMDRIVER */ + +/* + * Define the SHA1 circular left shift macro + */ +#define SHA1CircularShift(bits, word) \ + (((word) << (bits)) | ((word) >> (32-(bits)))) + +/* Local Function Prototyptes */ +static void SHA1PadMessage(SHA1Context *); +static void SHA1ProcessMessageBlock(SHA1Context *); + +/* + * SHA1Reset + * + * Description: + * This function will initialize the SHA1Context in preparation + * for computing a new SHA1 message digest. + * + * Parameters: + * context: [in/out] + * The context to reset. + * + * Returns: + * sha Error Code. + * + */ +int +BCMROMFN(SHA1Reset)(SHA1Context *context) +{ + if (!context) { + return shaNull; + } + + context->Length_Low = 0; + context->Length_High = 0; + context->Message_Block_Index = 0; + + context->Intermediate_Hash[0] = 0x67452301; + context->Intermediate_Hash[1] = 0xEFCDAB89; + context->Intermediate_Hash[2] = 0x98BADCFE; + context->Intermediate_Hash[3] = 0x10325476; + context->Intermediate_Hash[4] = 0xC3D2E1F0; + + context->Computed = 0; + context->Corrupted = 0; + + return shaSuccess; +} + +/* + * SHA1Result + * + * Description: + * This function will return the 160-bit message digest into the + * Message_Digest array provided by the caller. + * NOTE: The first octet of hash is stored in the 0th element, + * the last octet of hash in the 19th element. + * + * Parameters: + * context: [in/out] + * The context to use to calculate the SHA-1 hash. + * Message_Digest: [out] + * Where the digest is returned. + * + * Returns: + * sha Error Code. + * + */ +int +BCMROMFN(SHA1Result)(SHA1Context *context, uint8 Message_Digest[SHA1HashSize]) +{ + int i; + + if (!context || !Message_Digest) { + return shaNull; + } + + if (context->Corrupted) { + return context->Corrupted; + } + + if (!context->Computed) { + SHA1PadMessage(context); + for (i = 0; i < 64; ++i) { + /* message may be sensitive, clear it out */ + context->Message_Block[i] = 0; + } + context->Length_Low = 0; /* and clear length */ + context->Length_High = 0; + context->Computed = 1; + } + + for (i = 0; i < SHA1HashSize; ++i) { + Message_Digest[i] = context->Intermediate_Hash[i >> 2] >> + 8 * (3 - (i & 0x03)); + } + + return shaSuccess; +} + +/* + * SHA1Input + * + * Description: + * This function accepts an array of octets as the next portion + * of the message. + * + * Parameters: + * context: [in/out] + * The SHA context to update + * message_array: [in] + * An array of characters representing the next portion of + * the message. + * length: [in] + * The length of the message in message_array + * + * Returns: + * sha Error Code. + * + */ +int +BCMROMFN(SHA1Input)(SHA1Context *context, const uint8 *message_array, unsigned length) +{ + if (!length) { + return shaSuccess; + } + + if (!context || !message_array) { + return shaNull; + } + + if (context->Computed) { + context->Corrupted = shaStateError; + return shaStateError; + } + + if (context->Corrupted) { + return context->Corrupted; + } + while (length-- && !context->Corrupted) { + context->Message_Block[context->Message_Block_Index++] = + (*message_array & 0xFF); + + context->Length_Low += 8; + if (context->Length_Low == 0) { + context->Length_High++; + if (context->Length_High == 0) { + /* Message is too long */ + context->Corrupted = 1; + } + } + + if (context->Message_Block_Index == 64) { + SHA1ProcessMessageBlock(context); + } + + message_array++; + } + + return shaSuccess; +} + +/* + * SHA1ProcessMessageBlock + * + * Description: + * This function will process the next 512 bits of the message + * stored in the Message_Block array. + * + * Parameters: + * None. + * + * Returns: + * Nothing. + * + * Comments: + * Many of the variable names in this code, especially the + * single character names, were used because those were the + * names used in the publication. + * + * + */ +static void +SHA1ProcessMessageBlock(SHA1Context *context) +{ + const uint32 K[] = { /* Constants defined in SHA-1 */ + 0x5A827999, + 0x6ED9EBA1, + 0x8F1BBCDC, + 0xCA62C1D6 + }; + int t; /* Loop counter */ + uint32 temp; /* Temporary word value */ + uint32 W[80]; /* Word sequence */ + uint32 A, B, C, D, E; /* Word buffers */ + + /* + * Initialize the first 16 words in the array W + */ + for (t = 0; t < 16; t++) { + W[t] = context->Message_Block[t * 4] << 24; + W[t] |= context->Message_Block[t * 4 + 1] << 16; + W[t] |= context->Message_Block[t * 4 + 2] << 8; + W[t] |= context->Message_Block[t * 4 + 3]; + } + + for (t = 16; t < 80; t++) { + W[t] = SHA1CircularShift(1, W[t-3] ^ W[t-8] ^ W[t-14] ^ W[t-16]); + } + + A = context->Intermediate_Hash[0]; + B = context->Intermediate_Hash[1]; + C = context->Intermediate_Hash[2]; + D = context->Intermediate_Hash[3]; + E = context->Intermediate_Hash[4]; + + for (t = 0; t < 20; t++) { + temp = SHA1CircularShift(5, A) + + ((B & C) | ((~B) & D)) + E + W[t] + K[0]; + E = D; + D = C; + C = SHA1CircularShift(30, B); + B = A; + A = temp; + } + + for (t = 20; t < 40; t++) { + temp = SHA1CircularShift(5, A) + (B ^ C ^ D) + E + W[t] + K[1]; + E = D; + D = C; + C = SHA1CircularShift(30, B); + B = A; + A = temp; + } + + for (t = 40; t < 60; t++) { + temp = SHA1CircularShift(5, A) + + ((B & C) | (B & D) | (C & D)) + E + W[t] + K[2]; + E = D; + D = C; + C = SHA1CircularShift(30, B); + B = A; + A = temp; + } + + for (t = 60; t < 80; t++) { + temp = SHA1CircularShift(5, A) + (B ^ C ^ D) + E + W[t] + K[3]; + E = D; + D = C; + C = SHA1CircularShift(30, B); + B = A; + A = temp; + } + + context->Intermediate_Hash[0] += A; + context->Intermediate_Hash[1] += B; + context->Intermediate_Hash[2] += C; + context->Intermediate_Hash[3] += D; + context->Intermediate_Hash[4] += E; + + context->Message_Block_Index = 0; +} + + +/* + * SHA1PadMessage + * + * Description: + * According to the standard, the message must be padded to an even + * 512 bits. The first padding bit must be a '1'. The last 64 + * bits represent the length of the original message. All bits in + * between should be 0. This function will pad the message + * according to those rules by filling the Message_Block array + * accordingly. It will also call the ProcessMessageBlock function + * provided appropriately. When it returns, it can be assumed that + * the message digest has been computed. + * + * Parameters: + * context: [in/out] + * The context to pad + * ProcessMessageBlock: [in] + * The appropriate SHA*ProcessMessageBlock function + * Returns: + * Nothing. + * + */ + +static void SHA1PadMessage(SHA1Context *context) +{ + /* + * Check to see if the current message block is too small to hold + * the initial padding bits and length. If so, we will pad the + * block, process it, and then continue padding into a second + * block. + */ + if (context->Message_Block_Index > 55) { + context->Message_Block[context->Message_Block_Index++] = 0x80; + while (context->Message_Block_Index < 64) { + context->Message_Block[context->Message_Block_Index++] = 0; + } + + SHA1ProcessMessageBlock(context); + + while (context->Message_Block_Index < 56) { + context->Message_Block[context->Message_Block_Index++] = 0; + } + } else { + context->Message_Block[context->Message_Block_Index++] = 0x80; + while (context->Message_Block_Index < 56) { + context->Message_Block[context->Message_Block_Index++] = 0; + } + } + + /* + * Store the message length as the last 8 octets + */ + context->Message_Block[56] = (uint8) (context->Length_High >> 24); + context->Message_Block[57] = (uint8) (context->Length_High >> 16); + context->Message_Block[58] = (uint8) (context->Length_High >> 8); + context->Message_Block[59] = (uint8) (context->Length_High); + context->Message_Block[60] = (uint8) (context->Length_Low >> 24); + context->Message_Block[61] = (uint8) (context->Length_Low >> 16); + context->Message_Block[62] = (uint8) (context->Length_Low >> 8); + context->Message_Block[63] = (uint8) (context->Length_Low); + + SHA1ProcessMessageBlock(context); +} + +#ifdef BCMSHA1_TEST +/* + * sha1test.c + * + * Description: + * This file will exercise the SHA-1 code performing the three + * tests documented in FIPS PUB 180-1 plus one which calls + * SHA1Input with an exact multiple of 512 bits, plus a few + * error test checks. + * + * Portability Issues: + * None. + * + */ + +#include + +/* + * Define patterns for testing + */ +#define TEST1 "abc" +#define TEST2a "abcdbcdecdefdefgefghfghighijhi" +#define TEST2b "jkijkljklmklmnlmnomnopnopq" +#define TEST2 TEST2a TEST2b +#define TEST3 "a" +#define TEST4a "01234567012345670123456701234567" +#define TEST4b "01234567012345670123456701234567" +/* an exact multiple of 512 bits */ +#define TEST4 TEST4a TEST4b +char *testarray[4] = +{ + TEST1, + TEST2, + TEST3, + TEST4 +}; +int repeatcount[4] = { 1, 1, 1000000, 10 }; +uint8 resultarray[4][20] = +{ + {0xA9, 0x99, 0x3E, 0x36, 0x47, 0x06, 0x81, 0x6A, 0xBA, 0x3E, + 0x25, 0x71, 0x78, 0x50, 0xC2, 0x6C, 0x9C, 0xD0, 0xD8, 0x9D}, + {0x84, 0x98, 0x3E, 0x44, 0x1C, 0x3B, 0xD2, 0x6E, 0xBA, 0xAE, + 0x4A, 0xA1, 0xF9, 0x51, 0x29, 0xE5, 0xE5, 0x46, 0x70, 0xF1}, + {0x34, 0xAA, 0x97, 0x3C, 0xD4, 0xC4, 0xDA, 0xA4, 0xF6, 0x1E, + 0xEB, 0x2B, 0xDB, 0xAD, 0x27, 0x31, 0x65, 0x34, 0x01, 0x6F}, + {0xDE, 0xA3, 0x56, 0xA2, 0xCD, 0xDD, 0x90, 0xC7, 0xA7, 0xEC, + 0xED, 0xC5, 0xEB, 0xB5, 0x63, 0x93, 0x4F, 0x46, 0x04, 0x52} +}; + +int main() +{ + SHA1Context sha; + int i, j, err, fail = 0; + uint8 Message_Digest[20]; + + /* + * Perform SHA-1 tests + */ + for (j = 0; j < 4; ++j) { + printf("\nTest %d: %d, '%s'\n", j + 1, repeatcount[j], testarray[j]); + + err = SHA1Reset(&sha); + if (err) { + fprintf(stderr, "SHA1Reset Error %d.\n", err); + break; /* out of for j loop */ + } + + for (i = 0; i < repeatcount[j]; ++i) { + err = SHA1Input(&sha, + (const unsigned char *) testarray[j], + strlen(testarray[j])); + if (err) { + fprintf(stderr, "SHA1Input Error %d.\n", err); + break; /* out of for i loop */ + } + } + + err = SHA1Result(&sha, Message_Digest); + if (err) { + fprintf(stderr, + "SHA1Result Error %d, could not compute message digest.\n", + err); + } else { + printf("\t"); + for (i = 0; i < 20; ++i) { + printf("%02X ", Message_Digest[i]); + } + printf("\n"); + } + printf("Should match:\n"); + printf("\t"); + for (i = 0; i < 20; ++i) { + printf("%02X ", resultarray[j][i]); + } + printf("\n"); + if (bcmp(Message_Digest, resultarray[j], 20)) fail++; + } + + /* Test some error returns */ + err = SHA1Input(&sha, (const unsigned char *) testarray[1], 1); + printf("\nError %d. Should be %d.\n", err, shaStateError); + if (err != shaStateError) fail++; + + err = SHA1Reset(0); + printf("\nError %d. Should be %d.\n", err, shaNull); + if (err != shaNull) fail++; + + printf("SHA1 test %s\n", fail? "FAILED" : "PASSED"); + return fail; +} +#endif /* BCMSHA1_TEST */ diff --git a/release/src-rt/bcmcrypto/sha256.c b/release/src-rt/bcmcrypto/sha256.c new file mode 100755 index 0000000000..ed6c2e9c91 --- /dev/null +++ b/release/src-rt/bcmcrypto/sha256.c @@ -0,0 +1,445 @@ +/* crypto/sha/sha256.c + * Code copied from openssl distribution and + * Modified just enough so that compiles and runs standalone + * + * Copyright (C) 2010, Broadcom Corporation. All Rights Reserved. + * + * Permission to use, copy, modify, and/or distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY + * SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION + * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN + * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + * + * $Id: sha256.c,v 1.2.578.1 2010-05-28 15:25:49 Exp $ + */ +/* ==================================================================== + * Copyright (c) 2004 The OpenSSL Project. All rights reserved + * according to the OpenSSL license [found in ../../LICENSE]. + * ==================================================================== + */ +#ifndef BCMDRIVER +#include +#include +#endif + +#include +#ifdef BCMDRIVER +#include +#else +#include /* for size_t */ +#if defined(__GNUC__) +extern void bcopy(const void *src, void *dst, size_t len); +extern int bcmp(const void *b1, const void *b2, size_t len); +extern void bzero(void *b, size_t len); +#else +#define bcopy(src, dst, len) memcpy((dst), (src), (len)) +#define bcmp(b1, b2, len) memcmp((b1), (b2), (len)) +#define bzero(b, len) memset((b), 0, (len)) +#endif +#endif /* BCMDRIVER */ + +#include + +const char *SHA256_version = "SHA-256"; + +int SHA224_Init(SHA256_CTX *c) + { + c->h[0] = 0xc1059ed8UL; c->h[1] = 0x367cd507UL; + c->h[2] = 0x3070dd17UL; c->h[3] = 0xf70e5939UL; + c->h[4] = 0xffc00b31UL; c->h[5] = 0x68581511UL; + c->h[6] = 0x64f98fa7UL; c->h[7] = 0xbefa4fa4UL; + c->Nl = 0; c->Nh = 0; + c->num = 0; c->md_len = SHA224_DIGEST_LENGTH; + return 1; + } + +int SHA256_Init(SHA256_CTX *c) + { + c->h[0] = 0x6a09e667UL; c->h[1] = 0xbb67ae85UL; + c->h[2] = 0x3c6ef372UL; c->h[3] = 0xa54ff53aUL; + c->h[4] = 0x510e527fUL; c->h[5] = 0x9b05688cUL; + c->h[6] = 0x1f83d9abUL; c->h[7] = 0x5be0cd19UL; + c->Nl = 0; c->Nh = 0; + c->num = 0; c->md_len = SHA256_DIGEST_LENGTH; + return 1; + } + +unsigned char *SHA224(const unsigned char *d, size_t n, unsigned char *md) + { + SHA256_CTX c; + static unsigned char m[SHA224_DIGEST_LENGTH]; + + if (md == NULL) md = m; + SHA224_Init(&c); + SHA256_Update(&c, d, n); + SHA256_Final(md, &c); + return (md); + } + +unsigned char *SHA256(const unsigned char *key, size_t n, unsigned char *md) + { + SHA256_CTX c; + static unsigned char m[SHA256_DIGEST_LENGTH]; + + if (md == NULL) md = m; + SHA256_Init(&c); + SHA256_Update(&c, key, n); + SHA256_Final(md, &c); + return (md); + } + +#ifndef SHA_LONG_LOG2 +#define SHA_LONG_LOG2 2 /* default to 32 bits */ +#endif + +#define DATA_ORDER_IS_BIG_ENDIAN + +#define HASH_LONG SHA_LONG +#define HASH_LONG_LOG2 SHA_LONG_LOG2 +#define HASH_CTX SHA256_CTX +#define HASH_CBLOCK SHA_CBLOCK +#define HASH_LBLOCK SHA_LBLOCK +/* + * Note that FIPS180-2 discusses "Truncation of the Hash Function Output." + * default: case below covers for it. It's not clear however if it's + * permitted to truncate to amount of bytes not divisible by 4. I bet not, + * but if it is, then default: case shall be extended. For reference. + * Idea behind separate cases for pre-defined lenghts is to let the + * compiler decide if it's appropriate to unroll small loops. + */ +#define HASH_MAKE_STRING(c, s) do { \ + unsigned long ll; \ + unsigned int n; \ + switch ((c)->md_len) \ + { case SHA224_DIGEST_LENGTH: \ + for (n = 0; n < SHA224_DIGEST_LENGTH/4; n++) \ + { ll = (c)->h[n]; HOST_l2c(ll, (s)); } \ + break; \ + case SHA256_DIGEST_LENGTH: \ + for (n = 0; n < SHA256_DIGEST_LENGTH/4; n++) \ + { ll = (c)->h[n]; HOST_l2c(ll, (s)); } \ + break; \ + default: \ + if ((c)->md_len > SHA256_DIGEST_LENGTH) \ + return 0; \ + for (n = 0; n < (c)->md_len/4; n++) \ + { ll = (c)->h[n]; HOST_l2c(ll, (s)); } \ + break; \ + } \ + } while (0) + +#define HASH_UPDATE SHA256_Update +#define HASH_TRANSFORM SHA256_Transform +#define HASH_FINAL SHA256_Final +#define HASH_BLOCK_HOST_ORDER sha256_block_host_order +#define HASH_BLOCK_DATA_ORDER sha256_block_data_order +void sha256_block_host_order(SHA256_CTX *ctx, const void *in, size_t num); +void sha256_block_data_order(SHA256_CTX *ctx, const void *in, size_t num); + +#include + +#ifdef SHA256_ASM +void sha256_block(SHA256_CTX *ctx, const void *in, size_t num, int host); +#else +static const SHA_LONG K256[64] = { + 0x428a2f98UL, 0x71374491UL, 0xb5c0fbcfUL, 0xe9b5dba5UL, + 0x3956c25bUL, 0x59f111f1UL, 0x923f82a4UL, 0xab1c5ed5UL, + 0xd807aa98UL, 0x12835b01UL, 0x243185beUL, 0x550c7dc3UL, + 0x72be5d74UL, 0x80deb1feUL, 0x9bdc06a7UL, 0xc19bf174UL, + 0xe49b69c1UL, 0xefbe4786UL, 0x0fc19dc6UL, 0x240ca1ccUL, + 0x2de92c6fUL, 0x4a7484aaUL, 0x5cb0a9dcUL, 0x76f988daUL, + 0x983e5152UL, 0xa831c66dUL, 0xb00327c8UL, 0xbf597fc7UL, + 0xc6e00bf3UL, 0xd5a79147UL, 0x06ca6351UL, 0x14292967UL, + 0x27b70a85UL, 0x2e1b2138UL, 0x4d2c6dfcUL, 0x53380d13UL, + 0x650a7354UL, 0x766a0abbUL, 0x81c2c92eUL, 0x92722c85UL, + 0xa2bfe8a1UL, 0xa81a664bUL, 0xc24b8b70UL, 0xc76c51a3UL, + 0xd192e819UL, 0xd6990624UL, 0xf40e3585UL, 0x106aa070UL, + 0x19a4c116UL, 0x1e376c08UL, 0x2748774cUL, 0x34b0bcb5UL, + 0x391c0cb3UL, 0x4ed8aa4aUL, 0x5b9cca4fUL, 0x682e6ff3UL, + 0x748f82eeUL, 0x78a5636fUL, 0x84c87814UL, 0x8cc70208UL, + 0x90befffaUL, 0xa4506cebUL, 0xbef9a3f7UL, 0xc67178f2UL }; + +/* + * FIPS specification refers to right rotations, while our ROTATE macro + * is left one. This is why you might notice that rotation coefficients + * differ from those observed in FIPS document by 32-N... + */ +#define Sigma0(x) (ROTATE((x), 30) ^ ROTATE((x), 19) ^ ROTATE((x), 10)) +#define Sigma1(x) (ROTATE((x), 26) ^ ROTATE((x), 21) ^ ROTATE((x), 7)) +#define sigma0(x) (ROTATE((x), 25) ^ ROTATE((x), 14) ^ ((x)>>3)) +#define sigma1(x) (ROTATE((x), 15) ^ ROTATE((x), 13) ^ ((x)>>10)) + +#define Ch(x, y, z) (((x) & (y)) ^ ((~(x)) & (z))) +#define Maj(x, y, z) (((x) & (y)) ^ ((x) & (z)) ^ ((y) & (z))) + +#ifdef OPENSSL_SMALL_FOOTPRINT + +static void sha256_block(SHA256_CTX *ctx, const void *in, size_t num, int host) + { + unsigned MD32_REG_T a, b, c, d, e, f, g, h, s0, s1, T1, T2; + SHA_LONG X[16]; + int i; + const unsigned char *data = in; + + while (num--) { + + a = ctx->h[0]; b = ctx->h[1]; c = ctx->h[2]; d = ctx->h[3]; + e = ctx->h[4]; f = ctx->h[5]; g = ctx->h[6]; h = ctx->h[7]; + + if (host) + { + const SHA_LONG *W = (const SHA_LONG *)data; + + for (i = 0; i < 16; i++) + { + T1 = X[i] = W[i]; + T1 += h + Sigma1(e) + Ch(e, f, g) + K256[i]; + T2 = Sigma0(a) + Maj(a, b, c); + h = g; g = f; f = e; e = d + T1; + d = c; c = b; b = a; a = T1 + T2; + } + + data += SHA256_CBLOCK; + } + else + { + SHA_LONG l; + + for (i = 0; i < 16; i++) + { + HOST_c2l(data, l); T1 = X[i] = l; + T1 += h + Sigma1(e) + Ch(e, f, g) + K256[i]; + T2 = Sigma0(a) + Maj(a, b, c); + h = g; g = f; f = e; e = d + T1; + d = c; c = b; b = a; a = T1 + T2; + } + } + + for (; i < 64; i++) + { + s0 = X[(i+1)&0x0f]; s0 = sigma0(s0); + s1 = X[(i+14)&0x0f]; s1 = sigma1(s1); + + T1 = X[i&0xf] += s0 + s1 + X[(i+9)&0xf]; + T1 += h + Sigma1(e) + Ch(e, f, g) + K256[i]; + T2 = Sigma0(a) + Maj(a, b, c); + h = g; g = f; f = e; e = d + T1; + d = c; c = b; b = a; a = T1 + T2; + } + + ctx->h[0] += a; ctx->h[1] += b; ctx->h[2] += c; ctx->h[3] += d; + ctx->h[4] += e; ctx->h[5] += f; ctx->h[6] += g; ctx->h[7] += h; + + } + } + +#else + +#define ROUND_00_15(i, a, b, c, d, e, f, g, h) do { \ + T1 += h + Sigma1(e) + Ch(e, f, g) + K256[i]; \ + h = Sigma0(a) + Maj(a, b, c); \ + d += T1; h += T1; } while (0) + +#define ROUND_16_63(i, a, b, c, d, e, f, g, h, X) do { \ + s0 = X[(i+1)&0x0f]; s0 = sigma0(s0); \ + s1 = X[(i+14)&0x0f]; s1 = sigma1(s1); \ + T1 = X[(i)&0x0f] += s0 + s1 + X[(i+9)&0x0f]; \ + ROUND_00_15(i, a, b, c, d, e, f, g, h); } while (0) + +static void sha256_block(SHA256_CTX *ctx, const void *in, size_t num, int host) + { + unsigned MD32_REG_T a, b, c, d, e, f, g, h, s0, s1, T1; + SHA_LONG X[16]; + int i; + const unsigned char *data = in; + + while (num--) { + + a = ctx->h[0]; b = ctx->h[1]; c = ctx->h[2]; d = ctx->h[3]; + e = ctx->h[4]; f = ctx->h[5]; g = ctx->h[6]; h = ctx->h[7]; + + if (host) + { + const SHA_LONG *W = (const SHA_LONG *)data; + + T1 = X[0] = W[0]; ROUND_00_15(0, a, b, c, d, e, f, g, h); + T1 = X[1] = W[1]; ROUND_00_15(1, h, a, b, c, d, e, f, g); + T1 = X[2] = W[2]; ROUND_00_15(2, g, h, a, b, c, d, e, f); + T1 = X[3] = W[3]; ROUND_00_15(3, f, g, h, a, b, c, d, e); + T1 = X[4] = W[4]; ROUND_00_15(4, e, f, g, h, a, b, c, d); + T1 = X[5] = W[5]; ROUND_00_15(5, d, e, f, g, h, a, b, c); + T1 = X[6] = W[6]; ROUND_00_15(6, c, d, e, f, g, h, a, b); + T1 = X[7] = W[7]; ROUND_00_15(7, b, c, d, e, f, g, h, a); + T1 = X[8] = W[8]; ROUND_00_15(8, a, b, c, d, e, f, g, h); + T1 = X[9] = W[9]; ROUND_00_15(9, h, a, b, c, d, e, f, g); + T1 = X[10] = W[10]; ROUND_00_15(10, g, h, a, b, c, d, e, f); + T1 = X[11] = W[11]; ROUND_00_15(11, f, g, h, a, b, c, d, e); + T1 = X[12] = W[12]; ROUND_00_15(12, e, f, g, h, a, b, c, d); + T1 = X[13] = W[13]; ROUND_00_15(13, d, e, f, g, h, a, b, c); + T1 = X[14] = W[14]; ROUND_00_15(14, c, d, e, f, g, h, a, b); + T1 = X[15] = W[15]; ROUND_00_15(15, b, c, d, e, f, g, h, a); + + data += SHA256_CBLOCK; + } + else + { + SHA_LONG l; + + HOST_c2l(data, l); T1 = X[0] = l; ROUND_00_15(0, a, b, c, d, e, f, g, h); + HOST_c2l(data, l); T1 = X[1] = l; ROUND_00_15(1, h, a, b, c, d, e, f, g); + HOST_c2l(data, l); T1 = X[2] = l; ROUND_00_15(2, g, h, a, b, c, d, e, f); + HOST_c2l(data, l); T1 = X[3] = l; ROUND_00_15(3, f, g, h, a, b, c, d, e); + HOST_c2l(data, l); T1 = X[4] = l; ROUND_00_15(4, e, f, g, h, a, b, c, d); + HOST_c2l(data, l); T1 = X[5] = l; ROUND_00_15(5, d, e, f, g, h, a, b, c); + HOST_c2l(data, l); T1 = X[6] = l; ROUND_00_15(6, c, d, e, f, g, h, a, b); + HOST_c2l(data, l); T1 = X[7] = l; ROUND_00_15(7, b, c, d, e, f, g, h, a); + HOST_c2l(data, l); T1 = X[8] = l; ROUND_00_15(8, a, b, c, d, e, f, g, h); + HOST_c2l(data, l); T1 = X[9] = l; ROUND_00_15(9, h, a, b, c, d, e, f, g); + HOST_c2l(data, l); T1 = X[10] = l; ROUND_00_15(10, g, h, a, b, c, d, e, f); + HOST_c2l(data, l); T1 = X[11] = l; ROUND_00_15(11, f, g, h, a, b, c, d, e); + HOST_c2l(data, l); T1 = X[12] = l; ROUND_00_15(12, e, f, g, h, a, b, c, d); + HOST_c2l(data, l); T1 = X[13] = l; ROUND_00_15(13, d, e, f, g, h, a, b, c); + HOST_c2l(data, l); T1 = X[14] = l; ROUND_00_15(14, c, d, e, f, g, h, a, b); + HOST_c2l(data, l); T1 = X[15] = l; ROUND_00_15(15, b, c, d, e, f, g, h, a); + } + + for (i = 16; i < 64; i += 8) + { + ROUND_16_63(i+0, a, b, c, d, e, f, g, h, X); + ROUND_16_63(i+1, h, a, b, c, d, e, f, g, X); + ROUND_16_63(i+2, g, h, a, b, c, d, e, f, X); + ROUND_16_63(i+3, f, g, h, a, b, c, d, e, X); + ROUND_16_63(i+4, e, f, g, h, a, b, c, d, X); + ROUND_16_63(i+5, d, e, f, g, h, a, b, c, X); + ROUND_16_63(i+6, c, d, e, f, g, h, a, b, X); + ROUND_16_63(i+7, b, c, d, e, f, g, h, a, X); + } + + ctx->h[0] += a; ctx->h[1] += b; ctx->h[2] += c; ctx->h[3] += d; + ctx->h[4] += e; ctx->h[5] += f; ctx->h[6] += g; ctx->h[7] += h; + + } + } + +#endif /* OPENSSL_SMALL_FOOTPRINT */ +#endif /* SHA256_ASM */ + +/* + * Idea is to trade couple of cycles for some space. On IA-32 we save + * about 4K in "big footprint" case. In "small footprint" case any gain + * is appreciated:-) + */ +void HASH_BLOCK_HOST_ORDER(SHA256_CTX *ctx, const void *in, size_t num) +{ sha256_block(ctx, in, num, 1); } + +void HASH_BLOCK_DATA_ORDER(SHA256_CTX *ctx, const void *in, size_t num) +{ sha256_block(ctx, in, num, 0); } + + +#ifdef BCMSHA256_TEST +/* + * sha1test.c + * + * Description: + * This file will exercise the SHA-256 code performing the three + * tests documented in FIPS PUB 180-2 plus one which calls + * SHA1Input with an exact multiple of 512 bits, plus a few + * error test checks. + * + * Portability Issues: + * None. + * + */ + +#include + +/* + * Define patterns for testing + */ +#define TEST1 "abc" +#define TEST2a "abcdbcdecdefdefgefghfghighijhi" +#define TEST2b "jkijkljklmklmnlmnomnopnopq" +#define TEST2 TEST2a TEST2b +#define TEST3 "a" + +char *testarray[3] = +{ + TEST1, + TEST2, + TEST3 +}; + + +int repeatcount[3] = { 1, 1, 1000000}; +unsigned char resultarray[3][32] = +{ + {0xba, 0x78, 0x16, 0xbf, 0x8f, 0x01, 0xcf, 0xea, + 0x41, 0x41, 0x40, 0xde, 0x5d, 0xae, 0x22, 0x23, + 0xb0, 0x03, 0x61, 0xa3, 0x96, 0x17, 0x7a, 0x9c, + 0xb4, 0x10, 0xff, 0x61, 0xf2, 0x00, 0x15, 0xad}, + + {0x24, 0x8d, 0x6a, 0x61, 0xd2, 0x06, 0x38, 0xb8, + 0xe5, 0xc0, 0x26, 0x93, 0x0c, 0x3e, 0x60, 0x39, + 0xa3, 0x3c, 0xe4, 0x59, 0x64, 0xff, 0x21, 0x67, + 0xf6, 0xec, 0xed, 0xd4, 0x19, 0xdb, 0x06, 0xc1}, + + {0xcd, 0xc7, 0x6e, 0x5c, 0x99, 0x14, 0xfb, 0x92, + 0x81, 0xa1, 0xc7, 0xe2, 0x84, 0xd7, 0x3e, 0x67, + 0xf1, 0x80, 0x9a, 0x48, 0xa4, 0x97, 0x20, 0x0e, + 0x04, 0x6d, 0x39, 0xcc, 0xc7, 0x11, 0x2c, 0xd0} +}; + +int main() +{ + SHA256_CTX sha; + int i, j, err, fail = 0; + unsigned char Message_Digest[32]; + + /* + * Perform SHA-1 tests + */ + for (j = 0; j < 3; ++j) { + printf("\nTest %d: %d, '%s'\n", j + 1, repeatcount[j], testarray[j]); + + err = SHA256_Init(&sha); + + for (i = 0; i < repeatcount[j]; ++i) { + err = SHA256_Update(&sha, + (const unsigned char *) testarray[j], + strlen(testarray[j])); + } + + err = SHA256_Final(Message_Digest, &sha); + printf("\t"); + for (i = 0; i < 32; ++i) { + printf("%02X ", Message_Digest[i]); + } + printf("\n"); + printf("Should match:\n"); + printf("\t"); + for (i = 0; i < 32; ++i) { + printf("%02X ", resultarray[j][i]); + } + printf("\n"); + if (bcmp(Message_Digest, resultarray[j], 32)) fail++; + } +#ifdef EXTRA_SHA256_TEST + /* Test some error returns */ + err = SHA1Input(&sha, (const unsigned char *) testarray[1], 1); + printf("\nError %d. Should be %d.\n", err, shaStateError); + if (err != shaStateError) fail++; + + err = SHA1Reset(0); + printf("\nError %d. Should be %d.\n", err, shaNull); + if (err != shaNull) fail++; +#endif + printf("SHA1 test %s\n", fail? "FAILED" : "PASSED"); + return fail; +} +#endif /* BCMSHA1_TEST */ diff --git a/release/src-rt/bcmcrypto/sms4.c b/release/src-rt/bcmcrypto/sms4.c new file mode 100755 index 0000000000..8a05986517 --- /dev/null +++ b/release/src-rt/bcmcrypto/sms4.c @@ -0,0 +1,1375 @@ +#ifdef BCMWAPI_WPI +/* + * sms4.c + * SMS-4 block cipher + * + * Copyright (C) 2010, Broadcom Corporation + * All Rights Reserved. + * + * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation; + * the contents of this file may not be disclosed to third parties, copied + * or duplicated in any form, in whole or in part, without the prior + * written permission of Broadcom Corporation. + * + * $Id: sms4.c,v 1.23 2009-10-22 00:10:59 Exp $ + */ + +#include +#include +#include +#include + +#include + +#ifdef BCMDRIVER +#include +#else +#include /* for size_t */ +#if defined(__GNUC__) +extern void bcopy(const void *src, void *dst, size_t len); +extern int bcmp(const void *b1, const void *b2, size_t len); +extern void bzero(void *b, size_t len); +#else +#define bcopy(src, dst, len) memcpy((dst), (src), (len)) +#define bcmp(b1, b2, len) memcmp((b1), (b2), (len)) +#define bzero(b, len) memset((b), 0, (len)) +#endif /* __GNUC__ */ +#endif /* BCMDRIVER */ + +#define ROTATE(x, n) (((x) << (n)) | ((x) >> (32 - (n)))) + +static void +sms4_print_bytes(char *name, const uchar *data, int len) +{ +} + +#if !defined(__i386__) +static const uint8 S_box[] = { + 0xd6, 0x90, 0xe9, 0xfe, 0xcc, 0xe1, 0x3d, 0xb7, + 0x16, 0xb6, 0x14, 0xc2, 0x28, 0xfb, 0x2c, 0x05, + 0x2b, 0x67, 0x9a, 0x76, 0x2a, 0xbe, 0x04, 0xc3, + 0xaa, 0x44, 0x13, 0x26, 0x49, 0x86, 0x06, 0x99, + 0x9c, 0x42, 0x50, 0xf4, 0x91, 0xef, 0x98, 0x7a, + 0x33, 0x54, 0x0b, 0x43, 0xed, 0xcf, 0xac, 0x62, + 0xe4, 0xb3, 0x1c, 0xa9, 0xc9, 0x08, 0xe8, 0x95, + 0x80, 0xdf, 0x94, 0xfa, 0x75, 0x8f, 0x3f, 0xa6, + 0x47, 0x07, 0xa7, 0xfc, 0xf3, 0x73, 0x17, 0xba, + 0x83, 0x59, 0x3c, 0x19, 0xe6, 0x85, 0x4f, 0xa8, + 0x68, 0x6b, 0x81, 0xb2, 0x71, 0x64, 0xda, 0x8b, + 0xf8, 0xeb, 0x0f, 0x4b, 0x70, 0x56, 0x9d, 0x35, + 0x1e, 0x24, 0x0e, 0x5e, 0x63, 0x58, 0xd1, 0xa2, + 0x25, 0x22, 0x7c, 0x3b, 0x01, 0x21, 0x78, 0x87, + 0xd4, 0x00, 0x46, 0x57, 0x9f, 0xd3, 0x27, 0x52, + 0x4c, 0x36, 0x02, 0xe7, 0xa0, 0xc4, 0xc8, 0x9e, + 0xea, 0xbf, 0x8a, 0xd2, 0x40, 0xc7, 0x38, 0xb5, + 0xa3, 0xf7, 0xf2, 0xce, 0xf9, 0x61, 0x15, 0xa1, + 0xe0, 0xae, 0x5d, 0xa4, 0x9b, 0x34, 0x1a, 0x55, + 0xad, 0x93, 0x32, 0x30, 0xf5, 0x8c, 0xb1, 0xe3, + 0x1d, 0xf6, 0xe2, 0x2e, 0x82, 0x66, 0xca, 0x60, + 0xc0, 0x29, 0x23, 0xab, 0x0d, 0x53, 0x4e, 0x6f, + 0xd5, 0xdb, 0x37, 0x45, 0xde, 0xfd, 0x8e, 0x2f, + 0x03, 0xff, 0x6a, 0x72, 0x6d, 0x6c, 0x5b, 0x51, + 0x8d, 0x1b, 0xaf, 0x92, 0xbb, 0xdd, 0xbc, 0x7f, + 0x11, 0xd9, 0x5c, 0x41, 0x1f, 0x10, 0x5a, 0xd8, + 0x0a, 0xc1, 0x31, 0x88, 0xa5, 0xcd, 0x7b, 0xbd, + 0x2d, 0x74, 0xd0, 0x12, 0xb8, 0xe5, 0xb4, 0xb0, + 0x89, 0x69, 0x97, 0x4a, 0x0c, 0x96, 0x77, 0x7e, + 0x65, 0xb9, 0xf1, 0x09, 0xc5, 0x6e, 0xc6, 0x84, + 0x18, 0xf0, 0x7d, 0xec, 0x3a, 0xdc, 0x4d, 0x20, + 0x79, 0xee, 0x5f, 0x3e, 0xd7, 0xcb, 0x39, 0x48 +}; +#else /* __i386__ */ +/* slightly better performance on Pentium, worse performance on ARM CM3 */ +static const uint32 S_box0[] = { + 0xd6, 0x90, 0xe9, 0xfe, 0xcc, 0xe1, 0x3d, 0xb7, + 0x16, 0xb6, 0x14, 0xc2, 0x28, 0xfb, 0x2c, 0x05, + 0x2b, 0x67, 0x9a, 0x76, 0x2a, 0xbe, 0x04, 0xc3, + 0xaa, 0x44, 0x13, 0x26, 0x49, 0x86, 0x06, 0x99, + 0x9c, 0x42, 0x50, 0xf4, 0x91, 0xef, 0x98, 0x7a, + 0x33, 0x54, 0x0b, 0x43, 0xed, 0xcf, 0xac, 0x62, + 0xe4, 0xb3, 0x1c, 0xa9, 0xc9, 0x08, 0xe8, 0x95, + 0x80, 0xdf, 0x94, 0xfa, 0x75, 0x8f, 0x3f, 0xa6, + 0x47, 0x07, 0xa7, 0xfc, 0xf3, 0x73, 0x17, 0xba, + 0x83, 0x59, 0x3c, 0x19, 0xe6, 0x85, 0x4f, 0xa8, + 0x68, 0x6b, 0x81, 0xb2, 0x71, 0x64, 0xda, 0x8b, + 0xf8, 0xeb, 0x0f, 0x4b, 0x70, 0x56, 0x9d, 0x35, + 0x1e, 0x24, 0x0e, 0x5e, 0x63, 0x58, 0xd1, 0xa2, + 0x25, 0x22, 0x7c, 0x3b, 0x01, 0x21, 0x78, 0x87, + 0xd4, 0x00, 0x46, 0x57, 0x9f, 0xd3, 0x27, 0x52, + 0x4c, 0x36, 0x02, 0xe7, 0xa0, 0xc4, 0xc8, 0x9e, + 0xea, 0xbf, 0x8a, 0xd2, 0x40, 0xc7, 0x38, 0xb5, + 0xa3, 0xf7, 0xf2, 0xce, 0xf9, 0x61, 0x15, 0xa1, + 0xe0, 0xae, 0x5d, 0xa4, 0x9b, 0x34, 0x1a, 0x55, + 0xad, 0x93, 0x32, 0x30, 0xf5, 0x8c, 0xb1, 0xe3, + 0x1d, 0xf6, 0xe2, 0x2e, 0x82, 0x66, 0xca, 0x60, + 0xc0, 0x29, 0x23, 0xab, 0x0d, 0x53, 0x4e, 0x6f, + 0xd5, 0xdb, 0x37, 0x45, 0xde, 0xfd, 0x8e, 0x2f, + 0x03, 0xff, 0x6a, 0x72, 0x6d, 0x6c, 0x5b, 0x51, + 0x8d, 0x1b, 0xaf, 0x92, 0xbb, 0xdd, 0xbc, 0x7f, + 0x11, 0xd9, 0x5c, 0x41, 0x1f, 0x10, 0x5a, 0xd8, + 0x0a, 0xc1, 0x31, 0x88, 0xa5, 0xcd, 0x7b, 0xbd, + 0x2d, 0x74, 0xd0, 0x12, 0xb8, 0xe5, 0xb4, 0xb0, + 0x89, 0x69, 0x97, 0x4a, 0x0c, 0x96, 0x77, 0x7e, + 0x65, 0xb9, 0xf1, 0x09, 0xc5, 0x6e, 0xc6, 0x84, + 0x18, 0xf0, 0x7d, 0xec, 0x3a, 0xdc, 0x4d, 0x20, + 0x79, 0xee, 0x5f, 0x3e, 0xd7, 0xcb, 0x39, 0x48 +}; + +static const uint32 S_box1[] = { + 0xd600, 0x9000, 0xe900, 0xfe00, 0xcc00, 0xe100, 0x3d00, 0xb700, + 0x1600, 0xb600, 0x1400, 0xc200, 0x2800, 0xfb00, 0x2c00, 0x0500, + 0x2b00, 0x6700, 0x9a00, 0x7600, 0x2a00, 0xbe00, 0x0400, 0xc300, + 0xaa00, 0x4400, 0x1300, 0x2600, 0x4900, 0x8600, 0x0600, 0x9900, + 0x9c00, 0x4200, 0x5000, 0xf400, 0x9100, 0xef00, 0x9800, 0x7a00, + 0x3300, 0x5400, 0x0b00, 0x4300, 0xed00, 0xcf00, 0xac00, 0x6200, + 0xe400, 0xb300, 0x1c00, 0xa900, 0xc900, 0x0800, 0xe800, 0x9500, + 0x8000, 0xdf00, 0x9400, 0xfa00, 0x7500, 0x8f00, 0x3f00, 0xa600, + 0x4700, 0x0700, 0xa700, 0xfc00, 0xf300, 0x7300, 0x1700, 0xba00, + 0x8300, 0x5900, 0x3c00, 0x1900, 0xe600, 0x8500, 0x4f00, 0xa800, + 0x6800, 0x6b00, 0x8100, 0xb200, 0x7100, 0x6400, 0xda00, 0x8b00, + 0xf800, 0xeb00, 0x0f00, 0x4b00, 0x7000, 0x5600, 0x9d00, 0x3500, + 0x1e00, 0x2400, 0x0e00, 0x5e00, 0x6300, 0x5800, 0xd100, 0xa200, + 0x2500, 0x2200, 0x7c00, 0x3b00, 0x0100, 0x2100, 0x7800, 0x8700, + 0xd400, 0x0000, 0x4600, 0x5700, 0x9f00, 0xd300, 0x2700, 0x5200, + 0x4c00, 0x3600, 0x0200, 0xe700, 0xa000, 0xc400, 0xc800, 0x9e00, + 0xea00, 0xbf00, 0x8a00, 0xd200, 0x4000, 0xc700, 0x3800, 0xb500, + 0xa300, 0xf700, 0xf200, 0xce00, 0xf900, 0x6100, 0x1500, 0xa100, + 0xe000, 0xae00, 0x5d00, 0xa400, 0x9b00, 0x3400, 0x1a00, 0x5500, + 0xad00, 0x9300, 0x3200, 0x3000, 0xf500, 0x8c00, 0xb100, 0xe300, + 0x1d00, 0xf600, 0xe200, 0x2e00, 0x8200, 0x6600, 0xca00, 0x6000, + 0xc000, 0x2900, 0x2300, 0xab00, 0x0d00, 0x5300, 0x4e00, 0x6f00, + 0xd500, 0xdb00, 0x3700, 0x4500, 0xde00, 0xfd00, 0x8e00, 0x2f00, + 0x0300, 0xff00, 0x6a00, 0x7200, 0x6d00, 0x6c00, 0x5b00, 0x5100, + 0x8d00, 0x1b00, 0xaf00, 0x9200, 0xbb00, 0xdd00, 0xbc00, 0x7f00, + 0x1100, 0xd900, 0x5c00, 0x4100, 0x1f00, 0x1000, 0x5a00, 0xd800, + 0x0a00, 0xc100, 0x3100, 0x8800, 0xa500, 0xcd00, 0x7b00, 0xbd00, + 0x2d00, 0x7400, 0xd000, 0x1200, 0xb800, 0xe500, 0xb400, 0xb000, + 0x8900, 0x6900, 0x9700, 0x4a00, 0x0c00, 0x9600, 0x7700, 0x7e00, + 0x6500, 0xb900, 0xf100, 0x0900, 0xc500, 0x6e00, 0xc600, 0x8400, + 0x1800, 0xf000, 0x7d00, 0xec00, 0x3a00, 0xdc00, 0x4d00, 0x2000, + 0x7900, 0xee00, 0x5f00, 0x3e00, 0xd700, 0xcb00, 0x3900, 0x4800 +}; + +static const uint32 S_box2[] = { + 0xd60000, 0x900000, 0xe90000, 0xfe0000, + 0xcc0000, 0xe10000, 0x3d0000, 0xb70000, + 0x160000, 0xb60000, 0x140000, 0xc20000, + 0x280000, 0xfb0000, 0x2c0000, 0x050000, + 0x2b0000, 0x670000, 0x9a0000, 0x760000, + 0x2a0000, 0xbe0000, 0x040000, 0xc30000, + 0xaa0000, 0x440000, 0x130000, 0x260000, + 0x490000, 0x860000, 0x060000, 0x990000, + 0x9c0000, 0x420000, 0x500000, 0xf40000, + 0x910000, 0xef0000, 0x980000, 0x7a0000, + 0x330000, 0x540000, 0x0b0000, 0x430000, + 0xed0000, 0xcf0000, 0xac0000, 0x620000, + 0xe40000, 0xb30000, 0x1c0000, 0xa90000, + 0xc90000, 0x080000, 0xe80000, 0x950000, + 0x800000, 0xdf0000, 0x940000, 0xfa0000, + 0x750000, 0x8f0000, 0x3f0000, 0xa60000, + 0x470000, 0x070000, 0xa70000, 0xfc0000, + 0xf30000, 0x730000, 0x170000, 0xba0000, + 0x830000, 0x590000, 0x3c0000, 0x190000, + 0xe60000, 0x850000, 0x4f0000, 0xa80000, + 0x680000, 0x6b0000, 0x810000, 0xb20000, + 0x710000, 0x640000, 0xda0000, 0x8b0000, + 0xf80000, 0xeb0000, 0x0f0000, 0x4b0000, + 0x700000, 0x560000, 0x9d0000, 0x350000, + 0x1e0000, 0x240000, 0x0e0000, 0x5e0000, + 0x630000, 0x580000, 0xd10000, 0xa20000, + 0x250000, 0x220000, 0x7c0000, 0x3b0000, + 0x010000, 0x210000, 0x780000, 0x870000, + 0xd40000, 0x000000, 0x460000, 0x570000, + 0x9f0000, 0xd30000, 0x270000, 0x520000, + 0x4c0000, 0x360000, 0x020000, 0xe70000, + 0xa00000, 0xc40000, 0xc80000, 0x9e0000, + 0xea0000, 0xbf0000, 0x8a0000, 0xd20000, + 0x400000, 0xc70000, 0x380000, 0xb50000, + 0xa30000, 0xf70000, 0xf20000, 0xce0000, + 0xf90000, 0x610000, 0x150000, 0xa10000, + 0xe00000, 0xae0000, 0x5d0000, 0xa40000, + 0x9b0000, 0x340000, 0x1a0000, 0x550000, + 0xad0000, 0x930000, 0x320000, 0x300000, + 0xf50000, 0x8c0000, 0xb10000, 0xe30000, + 0x1d0000, 0xf60000, 0xe20000, 0x2e0000, + 0x820000, 0x660000, 0xca0000, 0x600000, + 0xc00000, 0x290000, 0x230000, 0xab0000, + 0x0d0000, 0x530000, 0x4e0000, 0x6f0000, + 0xd50000, 0xdb0000, 0x370000, 0x450000, + 0xde0000, 0xfd0000, 0x8e0000, 0x2f0000, + 0x030000, 0xff0000, 0x6a0000, 0x720000, + 0x6d0000, 0x6c0000, 0x5b0000, 0x510000, + 0x8d0000, 0x1b0000, 0xaf0000, 0x920000, + 0xbb0000, 0xdd0000, 0xbc0000, 0x7f0000, + 0x110000, 0xd90000, 0x5c0000, 0x410000, + 0x1f0000, 0x100000, 0x5a0000, 0xd80000, + 0x0a0000, 0xc10000, 0x310000, 0x880000, + 0xa50000, 0xcd0000, 0x7b0000, 0xbd0000, + 0x2d0000, 0x740000, 0xd00000, 0x120000, + 0xb80000, 0xe50000, 0xb40000, 0xb00000, + 0x890000, 0x690000, 0x970000, 0x4a0000, + 0x0c0000, 0x960000, 0x770000, 0x7e0000, + 0x650000, 0xb90000, 0xf10000, 0x090000, + 0xc50000, 0x6e0000, 0xc60000, 0x840000, + 0x180000, 0xf00000, 0x7d0000, 0xec0000, + 0x3a0000, 0xdc0000, 0x4d0000, 0x200000, + 0x790000, 0xee0000, 0x5f0000, 0x3e0000, + 0xd70000, 0xcb0000, 0x390000, 0x480000 +}; + +static const uint32 S_box3[] = { + 0xd6000000, 0x90000000, 0xe9000000, 0xfe000000, + 0xcc000000, 0xe1000000, 0x3d000000, 0xb7000000, + 0x16000000, 0xb6000000, 0x14000000, 0xc2000000, + 0x28000000, 0xfb000000, 0x2c000000, 0x05000000, + 0x2b000000, 0x67000000, 0x9a000000, 0x76000000, + 0x2a000000, 0xbe000000, 0x04000000, 0xc3000000, + 0xaa000000, 0x44000000, 0x13000000, 0x26000000, + 0x49000000, 0x86000000, 0x06000000, 0x99000000, + 0x9c000000, 0x42000000, 0x50000000, 0xf4000000, + 0x91000000, 0xef000000, 0x98000000, 0x7a000000, + 0x33000000, 0x54000000, 0x0b000000, 0x43000000, + 0xed000000, 0xcf000000, 0xac000000, 0x62000000, + 0xe4000000, 0xb3000000, 0x1c000000, 0xa9000000, + 0xc9000000, 0x08000000, 0xe8000000, 0x95000000, + 0x80000000, 0xdf000000, 0x94000000, 0xfa000000, + 0x75000000, 0x8f000000, 0x3f000000, 0xa6000000, + 0x47000000, 0x07000000, 0xa7000000, 0xfc000000, + 0xf3000000, 0x73000000, 0x17000000, 0xba000000, + 0x83000000, 0x59000000, 0x3c000000, 0x19000000, + 0xe6000000, 0x85000000, 0x4f000000, 0xa8000000, + 0x68000000, 0x6b000000, 0x81000000, 0xb2000000, + 0x71000000, 0x64000000, 0xda000000, 0x8b000000, + 0xf8000000, 0xeb000000, 0x0f000000, 0x4b000000, + 0x70000000, 0x56000000, 0x9d000000, 0x35000000, + 0x1e000000, 0x24000000, 0x0e000000, 0x5e000000, + 0x63000000, 0x58000000, 0xd1000000, 0xa2000000, + 0x25000000, 0x22000000, 0x7c000000, 0x3b000000, + 0x01000000, 0x21000000, 0x78000000, 0x87000000, + 0xd4000000, 0x00000000, 0x46000000, 0x57000000, + 0x9f000000, 0xd3000000, 0x27000000, 0x52000000, + 0x4c000000, 0x36000000, 0x02000000, 0xe7000000, + 0xa0000000, 0xc4000000, 0xc8000000, 0x9e000000, + 0xea000000, 0xbf000000, 0x8a000000, 0xd2000000, + 0x40000000, 0xc7000000, 0x38000000, 0xb5000000, + 0xa3000000, 0xf7000000, 0xf2000000, 0xce000000, + 0xf9000000, 0x61000000, 0x15000000, 0xa1000000, + 0xe0000000, 0xae000000, 0x5d000000, 0xa4000000, + 0x9b000000, 0x34000000, 0x1a000000, 0x55000000, + 0xad000000, 0x93000000, 0x32000000, 0x30000000, + 0xf5000000, 0x8c000000, 0xb1000000, 0xe3000000, + 0x1d000000, 0xf6000000, 0xe2000000, 0x2e000000, + 0x82000000, 0x66000000, 0xca000000, 0x60000000, + 0xc0000000, 0x29000000, 0x23000000, 0xab000000, + 0x0d000000, 0x53000000, 0x4e000000, 0x6f000000, + 0xd5000000, 0xdb000000, 0x37000000, 0x45000000, + 0xde000000, 0xfd000000, 0x8e000000, 0x2f000000, + 0x03000000, 0xff000000, 0x6a000000, 0x72000000, + 0x6d000000, 0x6c000000, 0x5b000000, 0x51000000, + 0x8d000000, 0x1b000000, 0xaf000000, 0x92000000, + 0xbb000000, 0xdd000000, 0xbc000000, 0x7f000000, + 0x11000000, 0xd9000000, 0x5c000000, 0x41000000, + 0x1f000000, 0x10000000, 0x5a000000, 0xd8000000, + 0x0a000000, 0xc1000000, 0x31000000, 0x88000000, + 0xa5000000, 0xcd000000, 0x7b000000, 0xbd000000, + 0x2d000000, 0x74000000, 0xd0000000, 0x12000000, + 0xb8000000, 0xe5000000, 0xb4000000, 0xb0000000, + 0x89000000, 0x69000000, 0x97000000, 0x4a000000, + 0x0c000000, 0x96000000, 0x77000000, 0x7e000000, + 0x65000000, 0xb9000000, 0xf1000000, 0x09000000, + 0xc5000000, 0x6e000000, 0xc6000000, 0x84000000, + 0x18000000, 0xf0000000, 0x7d000000, 0xec000000, + 0x3a000000, 0xdc000000, 0x4d000000, 0x20000000, + 0x79000000, 0xee000000, 0x5f000000, 0x3e000000, + 0xd7000000, 0xcb000000, 0x39000000, 0x48000000 +}; +#endif /* __i386__ */ + +/* Non-linear transform + * A = (a0, a1, a2, a3) + * B = (b0, b1, b2, b3) + * (b0, b1, b2, b3) = tau(A) = (Sbox(a0), Sbox(a1), Sbox(a2), Sbox(a3)) + */ +static INLINE uint32 +tau(uint32 A) +{ + uint32 B; + +#if !defined(__i386__) + B = (S_box[A & 0xff] | + (S_box[(A & 0xff00) >> 8] << 8) | + (S_box[(A & 0xff0000) >> 16] << 16) | + (S_box[(A & 0xff000000) >> 24] << 24)); +#else /* __i386__ */ +/* slightly better performance on Pentium, worse performance on ARM CM3 */ + B = (S_box0[A & 0xff] | + S_box1[(A & 0xff00) >> 8] | + S_box2[(A & 0xff0000) >> 16] | + S_box3[(A & 0xff000000) >> 24]); +#endif /* __i386__ */ + + return (B); +} + +/* Linear transform + * C = L(B) = B ^ (B<<<2) ^ (B<<<10) ^ (B<<<18) ^ (B<<<24) + * where "<<<" is a circular left shift + */ +static INLINE uint32 +L(uint32 B) +{ + uint32 Ba = B ^ ROTATE(B, 24); + return (Ba ^ ROTATE((ROTATE(Ba, 16) ^ B), 2)); +} + +/* Compound Transform + * T(.) = L(tau(.)) + */ +static INLINE uint32 +T(uint32 X) +{ + return (L(tau(X))); +} + +/* Round Function + * F(X0,X1,X2,X3,RK) = X0 ^ T(X1^X2^X3^RK) + * static INLINE uint32 + * F(uint32 *X, uint32 RK) + * { + * return (X[0] ^ T(X[1] ^ X[2] ^ X[3] ^ RK)); + * } + */ + +/* Encryption/decryption algorithm + * Xi+4 = F(Xi, Xi+1, Xi+2, Xi+3, RKj) = Xi ^ T(Xi+1 ^ Xi+2 ^ Xi+3 ^ RKj) + * i=0,1,...31, j=i(enc) or j=31-i(dec) + * (Y0, Y1, Y2, Y3) = (X35, X34, X33, X32) + */ + +/* define SMS4_FULL_UNROLL to completely unroll F() - results in slightly faster but bigger code */ +#define SMS4_FULL_UNROLL + +void +sms4_enc(uint32 *Y, uint32 *X, const uint32 *RK) +{ + uint32 z0 = X[0], z1 = X[1], z2 = X[2], z3 = X[3]; +#ifndef SMS4_FULL_UNROLL + int i; + + for (i = 0; i < SMS4_RK_WORDS; i += 4) { + z0 ^= T(z1 ^ z2 ^ z3 ^ *RK++); + z1 ^= T(z2 ^ z3 ^ z0 ^ *RK++); + z2 ^= T(z3 ^ z0 ^ z1 ^ *RK++); + z3 ^= T(z0 ^ z1 ^ z2 ^ *RK++); + } +#else /* SMS4_FULL_UNROLL */ + z0 ^= T(z1 ^ z2 ^ z3 ^ *RK++); + z1 ^= T(z2 ^ z3 ^ z0 ^ *RK++); + z2 ^= T(z3 ^ z0 ^ z1 ^ *RK++); + z3 ^= T(z0 ^ z1 ^ z2 ^ *RK++); + z0 ^= T(z1 ^ z2 ^ z3 ^ *RK++); + z1 ^= T(z2 ^ z3 ^ z0 ^ *RK++); + z2 ^= T(z3 ^ z0 ^ z1 ^ *RK++); + z3 ^= T(z0 ^ z1 ^ z2 ^ *RK++); + z0 ^= T(z1 ^ z2 ^ z3 ^ *RK++); + z1 ^= T(z2 ^ z3 ^ z0 ^ *RK++); + z2 ^= T(z3 ^ z0 ^ z1 ^ *RK++); + z3 ^= T(z0 ^ z1 ^ z2 ^ *RK++); + z0 ^= T(z1 ^ z2 ^ z3 ^ *RK++); + z1 ^= T(z2 ^ z3 ^ z0 ^ *RK++); + z2 ^= T(z3 ^ z0 ^ z1 ^ *RK++); + z3 ^= T(z0 ^ z1 ^ z2 ^ *RK++); + z0 ^= T(z1 ^ z2 ^ z3 ^ *RK++); + z1 ^= T(z2 ^ z3 ^ z0 ^ *RK++); + z2 ^= T(z3 ^ z0 ^ z1 ^ *RK++); + z3 ^= T(z0 ^ z1 ^ z2 ^ *RK++); + z0 ^= T(z1 ^ z2 ^ z3 ^ *RK++); + z1 ^= T(z2 ^ z3 ^ z0 ^ *RK++); + z2 ^= T(z3 ^ z0 ^ z1 ^ *RK++); + z3 ^= T(z0 ^ z1 ^ z2 ^ *RK++); + z0 ^= T(z1 ^ z2 ^ z3 ^ *RK++); + z1 ^= T(z2 ^ z3 ^ z0 ^ *RK++); + z2 ^= T(z3 ^ z0 ^ z1 ^ *RK++); + z3 ^= T(z0 ^ z1 ^ z2 ^ *RK++); + z0 ^= T(z1 ^ z2 ^ z3 ^ *RK++); + z1 ^= T(z2 ^ z3 ^ z0 ^ *RK++); + z2 ^= T(z3 ^ z0 ^ z1 ^ *RK++); + z3 ^= T(z0 ^ z1 ^ z2 ^ *RK++); +#endif /* SMS4_FULL_UNROLL */ + + Y[0] = z3; + Y[1] = z2; + Y[2] = z1; + Y[3] = z0; +} + +void +sms4_dec(uint32 *Y, uint32 *X, uint32 *RK) +{ + uint32 z0 = X[0], z1 = X[1], z2 = X[2], z3 = X[3]; + int i; + + RK += 32; + + for (i = 0; i < SMS4_RK_WORDS; i += 4) { + z0 ^= T(z1 ^ z2 ^ z3 ^ *--RK); + z1 ^= T(z2 ^ z3 ^ z0 ^ *--RK); + z2 ^= T(z3 ^ z0 ^ z1 ^ *--RK); + z3 ^= T(z0 ^ z1 ^ z2 ^ *--RK); + } + + Y[0] = z3; + Y[1] = z2; + Y[2] = z1; + Y[3] = z0; +} + +static const uint32 CK[] = { + 0x00070e15, 0x1c232a31, 0x383f464d, 0x545b6269, + 0x70777e85, 0x8c939aa1, 0xa8afb6bd, 0xc4cbd2d9, + 0xe0e7eef5, 0xfc030a11, 0x181f262d, 0x343b4249, + 0x50575e65, 0x6c737a81, 0x888f969d, 0xa4abb2b9, + 0xc0c7ced5, 0xdce3eaf1, 0xf8ff060d, 0x141b2229, + 0x30373e45, 0x4c535a61, 0x686f767d, 0x848b9299, + 0xa0a7aeb5, 0xbcc3cad1, 0xd8dfe6ed, 0xf4fb0209, + 0x10171e25, 0x2c333a41, 0x484f565d, 0x646b7279 +}; + +static const uint32 FK[] = { + 0xA3B1BAC6, + 0x56AA3350, + 0x677D9197, + 0xB27022DC +}; + +/* Key Expansion Linear transform + * Lprime(B) = B ^ (B<<<13) ^ (B<<<23) + * where "<<<" is a circular left shift + */ +static INLINE uint32 +Lprime(uint32 B) +{ + return (B ^ ROTATE(B, 13) ^ ROTATE(B, 23)); +} + +/* Key Expansion Compound Transform + * Tprime(.) = Lprime(tau(.)) + */ +static INLINE uint32 +Tprime(uint32 X) +{ + return (Lprime(tau(X))); +} + +/* Key Expansion + * Encryption key MK = (MK0, MK1, MK2, MK3) + * (K0, K1, K2, K3) = (MK0 ^ FK0, MK1 ^ FK1, MK2 ^ FK2, MK3 ^ FK3) + * RKi = Ki+4 = Ki ^ Tprime(Ki+1 ^ Ki+2 ^ Ki+3 ^ CKi+4) + */ +void +sms4_key_exp(uint32 *MK, uint32 *RK) +{ + int i; + uint32 K[36]; + + for (i = 0; i < 4; i++) + K[i] = MK[i] ^ FK[i]; + + for (i = 0; i < SMS4_RK_WORDS; i++) { + K[i+4] = K[i] ^ Tprime(K[i+1] ^ K[i+2] ^ K[i+3] ^ CK[i]); + RK[i] = K[i+4]; + } + + return; +} + +/* SMS4-CBC-MAC mode for WPI + * - computes SMS4_WPI_CBC_MAC_LEN MAC + * - Integrity Check Key must be SMS4_KEY_LEN bytes + * - PN must be SMS4_WPI_PN_LEN bytes + * - AAD inludes Key Index, Reserved, and L (data len) fields + * - For MAC calculation purposes, the aad and data are each padded with + * NULLs to a multiple of the block size + * - ptxt must have sufficient tailroom for storing the MAC + * - returns -1 on error + * - returns SMS4_WPI_SUCCESS on success, SMS4_WPI_CBC_MAC_ERROR on error + */ +int +sms4_wpi_cbc_mac(const uint8 *ick, + const uint8 *pn, + const size_t aad_len, + const uint8 *aad, + uint8 *ptxt) +{ + int k, j, rem_len; + uint32 RK[SMS4_RK_WORDS]; + uint32 X[SMS4_BLOCK_WORDS], Y[SMS4_BLOCK_WORDS]; + uint8 tmp[SMS4_BLOCK_SZ]; + uint16 data_len = (aad[aad_len-2] << 8) | (aad[aad_len-1]); + + if (data_len > SMS4_WPI_MAX_MPDU_LEN) + return (SMS4_WPI_CBC_MAC_ERROR); + + sms4_print_bytes("MIC Key", (uchar *)ick, SMS4_WPI_CBC_MAC_LEN); + sms4_print_bytes("PN ", (uchar *)pn, SMS4_WPI_PN_LEN); + sms4_print_bytes("MIC data: PART1", (uchar *)aad, aad_len); + sms4_print_bytes("MIC data: PART 2", (uchar *)ptxt, data_len); + + /* Prepare the round key */ + for (k = 0; k < SMS4_BLOCK_WORDS; k++) + if ((uintptr)ick & 3) + X[k] = ntoh32_ua(ick + (SMS4_WORD_SZ * k)); + else + X[k] = ntoh32(*(uint32 *)(ick + (SMS4_WORD_SZ * k))); + sms4_key_exp(X, RK); + + /* First block: PN */ + for (k = 0; k < SMS4_BLOCK_WORDS; k++) + if ((uintptr)pn & 3) + X[k] = ntoh32_ua(pn + (SMS4_WORD_SZ * k)); + else + X[k] = ntoh32(*(uint32 *)(pn + (SMS4_WORD_SZ * k))); + sms4_enc(Y, X, RK); + + /* Next blocks: AAD */ + for (j = 0; j < aad_len/SMS4_BLOCK_SZ; j++) { + for (k = 0; k < SMS4_BLOCK_WORDS; k++) + if ((uintptr)aad & 3) + X[k] = Y[k] ^ ntoh32_ua(aad + (SMS4_WORD_SZ * k)); + else + X[k] = Y[k] ^ ntoh32(*(uint32 *)(aad + (SMS4_WORD_SZ * k))); + aad += SMS4_BLOCK_SZ; + sms4_enc(Y, X, RK); + } + /* If the last block is partial, pad with NULLs */ + rem_len = aad_len % SMS4_BLOCK_SZ; + if (rem_len) { + bcopy(aad, tmp, rem_len); + bzero(tmp + rem_len, SMS4_BLOCK_SZ - rem_len); + for (k = 0; k < SMS4_BLOCK_WORDS; k++) + if ((uintptr)tmp & 3) + X[k] = Y[k] ^ ntoh32_ua(tmp + (SMS4_WORD_SZ * k)); + else + X[k] = Y[k] ^ ntoh32(*(uint32 *)(tmp + (SMS4_WORD_SZ * k))); + sms4_enc(Y, X, RK); + } + + /* Then the message data */ + for (j = 0; j < (data_len / SMS4_BLOCK_SZ); j++) { + for (k = 0; k < SMS4_BLOCK_WORDS; k++) + if ((uintptr)ptxt & 3) + X[k] = Y[k] ^ ntoh32_ua(ptxt + (SMS4_WORD_SZ * k)); + else + X[k] = Y[k] ^ ntoh32(*(uint32 *)(ptxt + (SMS4_WORD_SZ * k))); + ptxt += SMS4_BLOCK_SZ; + sms4_enc(Y, X, RK); + } + /* If the last block is partial, pad with NULLs */ + rem_len = data_len % SMS4_BLOCK_SZ; + if (rem_len) { + bcopy(ptxt, tmp, rem_len); + bzero(tmp + rem_len, SMS4_BLOCK_SZ - rem_len); + for (k = 0; k < SMS4_BLOCK_WORDS; k++) + if ((uintptr)tmp & 3) + X[k] = Y[k] ^ ntoh32_ua(tmp + (SMS4_WORD_SZ * k)); + else + X[k] = Y[k] ^ ntoh32(*(uint32 *)(tmp + (SMS4_WORD_SZ * k))); + ptxt += data_len % SMS4_BLOCK_SZ; + sms4_enc(Y, X, RK); + } + + for (k = 0; k < SMS4_BLOCK_WORDS; k++) { + hton32_ua_store(Y[k], ptxt); + ptxt += SMS4_WORD_SZ; + } + + return (SMS4_WPI_SUCCESS); +} + +/* + * ick pn ptxt result + * ltoh ltoh ltoh fail + * ntoh ltoh ltoh fail + * ltoh ntoh ltoh fail + * ntoh ntoh ltoh fail + * + * ltoh ltoh ntoh fail + * ntoh ltoh ntoh fail + * ltoh ntoh ntoh fail + * ntoh ntoh ntoh fail + */ + +#define s_ick(a) ntoh32_ua(a) +#define s_pn(a) ntoh32_ua(a) +#define s_ptxt(a) ntoh32_ua(a) + +#ifdef BCMSMS4_TEST +static int sms4_cbc_mac(const uint8 *ick, const uint8 *pn, const size_t data_len, + uint8 *ptxt, uint8 *mac); +static int +sms4_cbc_mac(const uint8 *ick, + const uint8 *pn, + const size_t data_len, + uint8 *ptxt, + uint8 *mac) +{ + int k, j, rem_len; + uint32 RK[SMS4_RK_WORDS]; + uint32 X[SMS4_BLOCK_WORDS], Y[SMS4_BLOCK_WORDS]; + uint8 tmp[SMS4_BLOCK_SZ]; + + if (data_len > SMS4_WPI_MAX_MPDU_LEN) + return (SMS4_WPI_CBC_MAC_ERROR); + + /* Prepare the round key */ + for (k = 0; k < SMS4_BLOCK_WORDS; k++) + X[k] = s_ick(ick + (SMS4_WORD_SZ * k)); + sms4_key_exp(X, RK); + + /* First block: PN */ + for (k = 0; k < SMS4_BLOCK_WORDS; k++) + X[k] = s_pn(pn + (SMS4_WORD_SZ * k)); + sms4_enc(Y, X, RK); + + /* Then the message data */ + for (j = 0; j < (data_len / SMS4_BLOCK_SZ); j++) { + for (k = 0; k < SMS4_BLOCK_WORDS; k++) + X[k] = Y[k] ^ s_ptxt(ptxt + (SMS4_WORD_SZ * k)); + ptxt += SMS4_BLOCK_SZ; + sms4_enc(Y, X, RK); + } + /* If the last block is partial, pad with NULLs */ + rem_len = data_len % SMS4_BLOCK_SZ; + if (rem_len) { + bcopy(ptxt, tmp, rem_len); + bzero(tmp + rem_len, SMS4_BLOCK_SZ - rem_len); + for (k = 0; k < SMS4_BLOCK_WORDS; k++) + X[k] = Y[k] ^ s_ptxt(tmp + (SMS4_WORD_SZ * k)); + ptxt += data_len % SMS4_BLOCK_SZ; + sms4_enc(Y, X, RK); + } + + for (k = 0; k < SMS4_BLOCK_WORDS; k++) { + hton32_ua_store(Y[k], mac); + mac += SMS4_WORD_SZ; + } + + return (SMS4_WPI_SUCCESS); +} +#endif /* BCMSMS4_TEST */ + +/* SMS4-OFB mode encryption/decryption algorithm + * - PN must be SMS4_WPI_PN_LEN bytes + * - assumes PN is ready to use as-is (i.e. any + * randomization of PN is handled by the caller) + * - encrypts data in place + * - returns SMS4_WPI_SUCCESS on success, SMS4_WPI_OFB_ERROR on error + */ +int +sms4_ofb_crypt(const uint8 *ek, + const uint8 *pn, + const size_t data_len, + uint8 *ptxt) +{ + size_t j, k; + uint8 tmp[SMS4_BLOCK_SZ]; + uint32 RK[SMS4_RK_WORDS]; + uint32 X[SMS4_BLOCK_WORDS]; + + if (data_len > SMS4_WPI_MAX_MPDU_LEN) return (SMS4_WPI_OFB_ERROR); + + sms4_print_bytes("ENC Key", (uchar *)ek, SMS4_WPI_CBC_MAC_LEN); + sms4_print_bytes("PN ", (uint8 *)pn, SMS4_WPI_PN_LEN); + sms4_print_bytes("data", (uchar *)ptxt, data_len); + + /* Prepare the round key */ + for (k = 0; k < SMS4_BLOCK_WORDS; k++) + if ((uintptr)ek & 3) + X[k] = ntoh32_ua(ek + (SMS4_WORD_SZ * k)); + else + X[k] = ntoh32(*(uint32 *)(ek + (SMS4_WORD_SZ * k))); + sms4_key_exp(X, RK); + + for (k = 0; k < SMS4_BLOCK_WORDS; k++) { + if ((uintptr)pn & 3) + X[k] = ntoh32_ua(pn + (SMS4_WORD_SZ * k)); + else + X[k] = ntoh32(*(uint32 *)(pn + (SMS4_WORD_SZ * k))); + } + + for (k = 0; k < (data_len / SMS4_BLOCK_SZ); k++) { + sms4_enc(X, X, RK); + for (j = 0; j < SMS4_BLOCK_WORDS; j++) { + hton32_ua_store(X[j], &tmp[j * SMS4_WORD_SZ]); + } + xor_128bit_block(ptxt, tmp, ptxt); + ptxt += SMS4_BLOCK_SZ; + } + + /* handle partial block */ + if (data_len % SMS4_BLOCK_SZ) { + sms4_enc(X, X, RK); + for (j = 0; j < SMS4_BLOCK_WORDS; j++) { + hton32_ua_store(X[j], &tmp[j * SMS4_WORD_SZ]); + } + for (k = 0; k < (data_len % SMS4_BLOCK_SZ); k++) + ptxt[k] ^= tmp[k]; + } + + return (SMS4_WPI_SUCCESS); +} + +/* SMS4-WPI mode encryption of 802.11 packet + * - constructs aad and pn from provided frame + * - calls sms4_wpi_cbc_mac() to compute MAC + * - calls sms4_ofb_crypt() to encrypt frame + * - encrypts data in place + * - supplied packet must have sufficient tailroom for CBC-MAC MAC + * - data_len includes 802.11 header and CBC-MAC MAC + * - returns SMS4_WPI_SUCCESS on success, SMS4_WPI_ENCRYPT_ERROR on error + */ +int +sms4_wpi_pkt_encrypt(const uint8 *ek, + const uint8 *ick, + const size_t data_len, + uint8 *p) +{ + uint8 aad[SMS4_WPI_MAX_AAD_LEN]; + uint8 *paad = aad; + struct dot11_header *h = (struct dot11_header *)p; + struct wpi_iv *iv_data; + uint16 fc, seq; + uint header_len, aad_len, qos_len = 0, hdr_add_len = 0; + bool wds = FALSE; + uint8 tmp[SMS4_BLOCK_SZ]; + int k; + + bzero(aad, SMS4_WPI_MAX_AAD_LEN); + + fc = ltoh16_ua(&(h->fc)); + + /* WPI only supports protection of DATA frames */ + if (FC_TYPE(fc) != FC_TYPE_DATA) + return (SMS4_WPI_ENCRYPT_ERROR); + + /* frame must have Protected flag set */ + if (!(fc & FC_WEP)) + return (SMS4_WPI_ENCRYPT_ERROR); + + /* all QoS subtypes have the FC_SUBTYPE_QOS_DATA bit set */ + if (FC_SUBTYPE(fc) & FC_SUBTYPE_QOS_DATA) + qos_len += 2; + + /* length of A4, if using wds frames */ + wds = ((fc & (FC_TODS | FC_FROMDS)) == (FC_TODS | FC_FROMDS)); + if (wds) + hdr_add_len += ETHER_ADDR_LEN; + + /* length of MPDU header, including PN */ + header_len = DOT11_A3_HDR_LEN + SMS4_WPI_IV_LEN + hdr_add_len + qos_len; + + /* pointer to IV */ + iv_data = (struct wpi_iv *)(p + DOT11_A3_HDR_LEN + qos_len + hdr_add_len); + + /* Payload must be > 0 bytes */ + if (data_len <= (header_len + SMS4_WPI_CBC_MAC_LEN)) + return (SMS4_WPI_ENCRYPT_ERROR); + + /* aad: maskedFC || A1 || A2 || maskedSC || A3 || A4 || KeyIdx || Reserved || L */ + + fc &= SMS4_WPI_FC_MASK; + *paad++ = (uint8)(fc & 0xff); + *paad++ = (uint8)((fc >> 8) & 0xff); + + bcopy((uchar *)&h->a1, paad, 2*ETHER_ADDR_LEN); + paad += 2*ETHER_ADDR_LEN; + + seq = ltoh16_ua(&(h->seq)); + seq &= FRAGNUM_MASK; + + *paad++ = (uint8)(seq & 0xff); + *paad++ = (uint8)((seq >> 8) & 0xff); + + bcopy((uchar *)&h->a3, paad, ETHER_ADDR_LEN); + paad += ETHER_ADDR_LEN; + + if (wds) { + bcopy((uchar *)&h->a4, paad, ETHER_ADDR_LEN); + } + /* A4 for the MIC, even when there is no A4 in the packet */ + paad += ETHER_ADDR_LEN; + + if (qos_len) { + *paad++ = p[DOT11_A3_HDR_LEN + hdr_add_len]; + *paad++ = p[DOT11_A3_HDR_LEN + hdr_add_len + 1]; + } + + *paad++ = iv_data->key_idx; + *paad++ = iv_data->reserved; + + *paad++ = ((data_len - header_len - SMS4_WPI_CBC_MAC_LEN) >> 8) & 0xff; + *paad++ = (data_len - header_len - SMS4_WPI_CBC_MAC_LEN) & 0xff; + + /* length of AAD */ + aad_len = SMS4_WPI_MIN_AAD_LEN + qos_len; + + for (k = 0; k < SMS4_BLOCK_SZ; k++) + tmp[SMS4_BLOCK_SZ-(k+1)] = (iv_data->PN)[k]; + + /* calculate MAC */ + if (sms4_wpi_cbc_mac(ick, tmp, aad_len, aad, p + header_len)) + return (SMS4_WPI_ENCRYPT_ERROR); + + /* encrypt data */ + if (sms4_ofb_crypt(ek, tmp, data_len - header_len, p + header_len)) + return (SMS4_WPI_ENCRYPT_ERROR); + + return (SMS4_WPI_SUCCESS); +} + +/* SMS4-WPI mode decryption of 802.11 packet + * - constructs aad and pn from provided frame + * - calls sms4_ofb_crypt() to decrypt frame + * - calls sms4_wpi_cbc_mac() to compute MAC + * - decrypts in place + * - data_len includes 802.11 header and CBC-MAC MAC + * - returns SMS4_WPI_DECRYPT_ERROR on general error + */ +int +sms4_wpi_pkt_decrypt(const uint8 *ek, + const uint8 *ick, + const size_t data_len, + uint8 *p) +{ + uint8 aad[SMS4_WPI_MAX_AAD_LEN]; + uint8 MAC[SMS4_WPI_CBC_MAC_LEN]; + uint8 *paad = aad; + struct dot11_header *h = (struct dot11_header *)p; + struct wpi_iv *iv_data; + uint16 fc, seq; + uint header_len, aad_len, qos_len = 0, hdr_add_len = 0; + bool wds = FALSE; + uint8 tmp[SMS4_BLOCK_SZ]; + int k; + + bzero(aad, SMS4_WPI_MAX_AAD_LEN); + + fc = ltoh16_ua(&(h->fc)); + + /* WPI only supports protection of DATA frames */ + if (FC_TYPE(fc) != FC_TYPE_DATA) + return (SMS4_WPI_DECRYPT_ERROR); + + /* frame must have Protected flag set */ + if (!(fc & FC_WEP)) + return (SMS4_WPI_DECRYPT_ERROR); + + /* all QoS subtypes have the FC_SUBTYPE_QOS_DATA bit set */ + if ((FC_SUBTYPE(fc) & FC_SUBTYPE_QOS_DATA)) + qos_len += 2; + + /* length of A4, if using wds frames */ + wds = ((fc & (FC_TODS | FC_FROMDS)) == (FC_TODS | FC_FROMDS)); + if (wds) + hdr_add_len += ETHER_ADDR_LEN; + + /* length of MPDU header, including PN */ + header_len = DOT11_A3_HDR_LEN + SMS4_WPI_IV_LEN + hdr_add_len + qos_len; + + /* pointer to IV */ + iv_data = (struct wpi_iv *)(p + DOT11_A3_HDR_LEN + qos_len + hdr_add_len); + + /* Payload must be > 0 bytes plus MAC */ + if (data_len <= (header_len + SMS4_WPI_CBC_MAC_LEN)) + return (SMS4_WPI_DECRYPT_ERROR); + + /* aad: maskedFC || A1 || A2 || maskedSC || A3 || A4 || KeyIdx || Reserved || L */ + + fc &= SMS4_WPI_FC_MASK; + *paad++ = (uint8)(fc & 0xff); + *paad++ = (uint8)((fc >> 8) & 0xff); + + bcopy((uchar *)&h->a1, paad, 2*ETHER_ADDR_LEN); + paad += 2*ETHER_ADDR_LEN; + + seq = ltoh16_ua(&(h->seq)); + seq &= FRAGNUM_MASK; + + *paad++ = (uint8)(seq & 0xff); + *paad++ = (uint8)((seq >> 8) & 0xff); + + bcopy((uchar *)&h->a3, paad, ETHER_ADDR_LEN); + paad += ETHER_ADDR_LEN; + + if (wds) { + bcopy((uchar *)&h->a4, paad, ETHER_ADDR_LEN); + } + /* A4 for the MIC, even when there is no A4 in the packet */ + paad += ETHER_ADDR_LEN; + + if (qos_len) { + *paad++ = p[DOT11_A3_HDR_LEN + hdr_add_len]; + *paad++ = p[DOT11_A3_HDR_LEN + hdr_add_len + 1]; + } + + *paad++ = iv_data->key_idx; + *paad++ = iv_data->reserved; + + *paad++ = ((data_len - header_len - SMS4_WPI_CBC_MAC_LEN) >> 8) & 0xff; + *paad++ = (data_len - header_len - SMS4_WPI_CBC_MAC_LEN) & 0xff; + + /* length of AAD */ + aad_len = SMS4_WPI_MIN_AAD_LEN + qos_len; + + for (k = 0; k < SMS4_BLOCK_SZ; k++) + tmp[SMS4_BLOCK_SZ-(k+1)] = (iv_data->PN)[k]; + + /* decrypt data */ + if (sms4_ofb_crypt(ek, tmp, data_len - header_len, + p + header_len)) + return (SMS4_WPI_DECRYPT_ERROR); + + /* store MAC */ + bcopy(p + data_len - SMS4_WPI_CBC_MAC_LEN, MAC, SMS4_WPI_CBC_MAC_LEN); + + /* calculate MAC */ + if (sms4_wpi_cbc_mac(ick, tmp, aad_len, aad, p + header_len)) + return (SMS4_WPI_DECRYPT_ERROR); + + /* compare MAC */ + if (bcmp(p + data_len - SMS4_WPI_CBC_MAC_LEN, MAC, SMS4_WPI_CBC_MAC_LEN)) + return (SMS4_WPI_CBC_MAC_ERROR); + + return (SMS4_WPI_SUCCESS); +} + +#ifdef BCMSMS4_TEST +#include +#include + +#ifdef BCMSMS4_TEST_EMBED + +/* Number of iterations is sensitive to the state of the test vectors since + * encrypt and decrypt are done in place + */ +#define SMS4_TIMING_ITER 100 +#define dbg(args) +#define pres(label, len, data) + +/* returns current time in msec */ +static void +get_time(uint *t) +{ + *t = hndrte_time(); +} + +#else +#ifdef BCMDRIVER + +/* Number of iterations is sensitive to the state of the test vectors since + * encrypt and decrypt are done in place + */ +#define SMS4_TIMING_ITER 1000 +#define dbg(args) printk args +#define pres(label, len, data) + +/* returns current time in msec */ +static void +get_time(uint *t) +{ + *t = jiffies_to_msecs(jiffies); +} + +#else + +#define SMS4_TIMING_ITER 10000 +#include +#define dbg(args) printf args + +#include + +/* returns current time in msec */ +static void +get_time(uint *t) +{ + struct timeval ts; + gettimeofday(&ts, NULL); + *t = ts.tv_sec * 1000 + ts.tv_usec / 1000; +} + +void +pres(const char *label, const size_t len, const uint8 *data) +{ + int k; + printf("%s\n", label); + for (k = 0; k < len; k++) { + printf("0x%02x, ", data[k]); + if (!((k + 1) % (SMS4_BLOCK_SZ/2))) + printf("\n"); + } + printf("\n"); +} +#endif /* BCMDRIVER */ +#endif /* BCMSMS4_TEST_EMBED */ + +int +sms4_test_enc_dec() +{ + uint tstart, tend; + int i, j, k, fail = 0; + uint32 RK[32]; + uint32 X[SMS4_BLOCK_WORDS], Y[SMS4_BLOCK_WORDS]; + + for (k = 0; k < NUM_SMS4_VECTORS; k++) { + /* Note that the algorithm spec example output lists X[0] - + * X[32], but those should really be labelled X[4] - X[35] + * (they're the round output, not the input) + */ + + dbg(("sms4_test_enc_dec: Instance %d:\n", k + 1)); + dbg(("sms4_test_enc_dec: Plain Text:\n")); + for (i = 0; i < SMS4_BLOCK_WORDS; i++) + dbg(("sms4_test_enc_dec: PlainText[%02d] = 0x%08x\n", + i, sms4_vec[k].input[i])); + + dbg(("sms4_test_enc_dec: Encryption Master Key:\n")); + for (i = 0; i < SMS4_BLOCK_WORDS; i++) + dbg(("sms4_test_enc_dec: MK[%02d] = 0x%08x\n", + i, sms4_vec[k].key[i])); + + sms4_key_exp(sms4_vec[k].key, RK); + dbg(("sms4_test_enc_dec: Round Key:\n")); + for (i = 0; i < SMS4_RK_WORDS; i++) + dbg(("sms4_test_enc_dec: rk[%02d] = 0x%08x\n", + i, RK[i])); + + for (j = 0; j < SMS4_BLOCK_WORDS; j++) + Y[j] = sms4_vec[k].input[j]; + get_time(&tstart); + for (i = 0; i < *sms4_vec[k].niter; i++) { + for (j = 0; j < SMS4_BLOCK_WORDS; j++) + X[j] = Y[j]; + sms4_enc(Y, X, RK); + } + get_time(&tend); + dbg(("sms4_test_enc_dec: Cipher Text:\n")); + for (i = 0; i < SMS4_BLOCK_WORDS; i++) + dbg(("sms4_test_enc_dec: CipherText[%02d] = 0x%08x\n", + i, Y[i])); + dbg(("sms4_test_enc_dec: Time for Instance %d Encrypt: %d msec\n", + k + 1, tend - tstart)); + for (j = 0; j < SMS4_BLOCK_WORDS; j++) { + if (Y[j] != sms4_vec[k].ref[j]) { + dbg(("sms4_test_enc_dec: sms4_enc failed\n")); + fail++; + } + } + + for (j = 0; j < SMS4_BLOCK_WORDS; j++) + X[j] = sms4_vec[k].ref[j]; + get_time(&tstart); + for (i = 0; i < *sms4_vec[k].niter; i++) { + for (j = 0; j < SMS4_BLOCK_WORDS; j++) + X[j] = Y[j]; + sms4_dec(Y, X, RK); + } + get_time(&tend); + dbg(("sms4_test_enc_dec: Decrypted Plain Text:\n")); + for (i = 0; i < SMS4_BLOCK_WORDS; i++) + dbg(("sms4_test_enc_dec: PlainText[%02d] = 0x%08x\n", i, Y[i])); + dbg(("sms4_test_enc_dec: Time for Instance %d Decrypt: %d msec\n", + k + 1, tend - tstart)); + for (j = 0; j < SMS4_BLOCK_WORDS; j++) { + if (Y[j] != sms4_vec[k].input[j]) { + dbg(("sms4_test_enc_dec: sms4_dec failed\n")); + fail++; + } + } + + dbg(("\n")); + } + + return (fail); +} + +int +sms4_test_cbc_mac() +{ + int retv, k, fail = 0; + + uint8 mac[SMS4_WPI_CBC_MAC_LEN]; + + for (k = 0; k < NUM_SMS4_CBC_MAC_VECTORS; k++) { + dbg(("sms4_test_cbc_mac: SMS4-WPI-CBC-MAC vector %d\n", k)); + retv = sms4_cbc_mac(sms4_cbc_mac_vec[k].ick, + sms4_cbc_mac_vec[k].pn, + sms4_cbc_mac_vec[k].al, + sms4_cbc_mac_vec[k].input, + mac); + if (retv) { + dbg(("sms4_test_cbc_mac: sms4_wpi_cbc_mac of vector %d returned error %d\n", + k, retv)); + fail++; + } + + pres("sms4_test_cbc_mac: SMS4-WPI-CBC-MAC computed: ", SMS4_WPI_CBC_MAC_LEN, + mac); + pres("sms4_test_cbc_mac: SMS4-WPI-CBC-MAC reference: ", SMS4_WPI_CBC_MAC_LEN, + sms4_cbc_mac_vec[k].ref); + + if (bcmp(mac, sms4_cbc_mac_vec[k].ref, SMS4_WPI_CBC_MAC_LEN) != 0) { + dbg(("sms4_test_cbc_mac: sms4_wpi_cbc_mac of vector %d" + " reference mismatch\n", k)); + fail++; + } + } + + dbg(("\n")); + return (fail); +} + +int +sms4_test_ofb_crypt() +{ + int retv, k, fail = 0; + + for (k = 0; k < NUM_SMS4_OFB_VECTORS; k++) { + dbg(("sms4_test_ofb_crypt: SMS4-OFB vector %d\n", k)); + retv = sms4_ofb_crypt(sms4_ofb_vec[k].ek, + sms4_ofb_vec[k].pn, + sms4_ofb_vec[k].il, + sms4_ofb_vec[k].input); + if (retv) { + dbg(("sms4_test_ofb_crypt: encrypt of vector %d returned error %d\n", + k, retv)); + fail++; + } + + pres("sms4_test_ofb_crypt: SMS4-OFB ctxt: ", + sms4_ofb_vec[k].il, sms4_ofb_vec[k].input); + + pres("sms4_test_ofb_crypt: SMS4-OFB ref: ", + sms4_ofb_vec[k].il, sms4_ofb_vec[k].ref); + + if (bcmp(sms4_ofb_vec[k].input, sms4_ofb_vec[k].ref, + sms4_ofb_vec[k].il) != 0) { + dbg(("sms4_test_ofb_crypt: sms4_ofb_crypt of vector %d" + " reference mismatch\n", k)); + fail++; + } + + /* Run again to decrypt and restore vector */ + retv = sms4_ofb_crypt(sms4_ofb_vec[k].ek, + sms4_ofb_vec[k].pn, + sms4_ofb_vec[k].il, + sms4_ofb_vec[k].input); + if (retv) { + dbg(("sms4_test_ofb_crypt: decrypt of vector %d returned error %d\n", + k, retv)); + fail++; + } + } + + dbg(("\n")); + return (fail); +} + +int +sms4_test_wpi_pkt_encrypt_decrypt_timing(int *t) +{ + uint tstart, tend; + int retv, j, k, fail = 0; + + *t = 0; + + for (k = 0; k < NUM_SMS4_WPI_TIMING_VECTORS; k++) { + dbg(("sms4_test_wpi_pkt_encrypt_decrypt_timing: timing SMS4-WPI vector %d\n", k)); + get_time(&tstart); + for (j = 0; j < SMS4_TIMING_ITER; j++) { + retv = sms4_wpi_pkt_encrypt(sms4_wpi_tpkt_vec[k].ek, + sms4_wpi_tpkt_vec[k].ick, + sms4_wpi_tpkt_vec[k].il, + sms4_wpi_tpkt_vec[k].input); + if (retv) { + fail++; + } + + retv = sms4_wpi_pkt_decrypt(sms4_wpi_tpkt_vec[k].ek, + sms4_wpi_tpkt_vec[k].ick, + sms4_wpi_tpkt_vec[k].il, + sms4_wpi_tpkt_vec[k].input); + if (retv) { + fail++; + } + } + + get_time(&tend); + + dbg(("sms4_test_wpi_pkt_encrypt_decrypt_timing: Time for %d iterations of SMS4-WPI " + " vector %d (total MPDU length %d): %d msec\n", + SMS4_TIMING_ITER, k, sms4_wpi_tpkt_vec[k].il, tend - tstart)); + + *t += tend - tstart; + + } + + return (fail); +} + +int +sms4_test_wpi_pkt_encrypt() +{ + int retv, k, fail = 0; + + for (k = 0; k < NUM_SMS4_WPI_PKT_VECTORS; k++) { + dbg(("sms4_test_wpi_pkt_encrypt: SMS4-WPI packet vector %d\n", k)); + pres("sms4_test_wpi_pkt_encrypt: SMS4-WPI ptxt: ", + sms4_wpi_pkt_vec[k].il, + sms4_wpi_pkt_vec[k].input); + + retv = sms4_wpi_pkt_encrypt(sms4_wpi_pkt_vec[k].ek, + sms4_wpi_pkt_vec[k].ick, + sms4_wpi_pkt_vec[k].il, + sms4_wpi_pkt_vec[k].input); + if (retv) { + dbg(("sms4_test_wpi_pkt_encrypt: sms4_wpi_pkt_encrypt of vector %d" + " returned error %d\n", k, retv)); + fail++; + } + + pres("sms4_test_wpi_pkt_encrypt: SMS4-WPI ctxt: ", + sms4_wpi_pkt_vec[k].il, + sms4_wpi_pkt_vec[k].input); + + pres("sms4_test_wpi_pkt_encrypt: SMS4-WPI ref: ", + sms4_wpi_pkt_vec[k].il, + sms4_wpi_pkt_vec[k].ref); + + if (bcmp(sms4_wpi_pkt_vec[k].input, sms4_wpi_pkt_vec[k].ref, + sms4_wpi_pkt_vec[k].il) != 0) { + dbg(("sms4_test_wpi_pkt_encrypt: sms4_wpi_pkt_encrypt of vector %d" + " reference mismatch\n", k)); + fail++; + } + } + + dbg(("\n")); + return (fail); +} + +int +sms4_test_wpi_pkt_decrypt() +{ + int retv, k, fail = 0; + + for (k = 0; k < NUM_SMS4_WPI_PKT_VECTORS; k++) { + dbg(("sms4_test_wpi_pkt_decrypt: SMS4-WPI packet vector %d\n", k)); + pres("sms4_test_wpi_pkt_decrypt: SMS4-WPI ctxt: ", + sms4_wpi_pkt_vec[k].il, + sms4_wpi_pkt_vec[k].input); + + pres("sms4_test_wpi_pkt_decrypt: SMS4-WPI ref: ", + sms4_wpi_pkt_vec[k].il, + sms4_wpi_pkt_vec[k].ref); + + retv = sms4_wpi_pkt_decrypt(sms4_wpi_pkt_vec[k].ek, + sms4_wpi_pkt_vec[k].ick, + sms4_wpi_pkt_vec[k].il, + sms4_wpi_pkt_vec[k].input); + if (retv) { + dbg(("sms4_test_wpi_pkt_decrypt: sms4_wpi_pkt_decrypt of vector %d" + " returned error %d\n", k, retv)); + fail++; + } + + pres("sms4_test_wpi_pkt_decrypt: SMS4-WPI ptxt: ", + sms4_wpi_pkt_vec[k].il, + sms4_wpi_pkt_vec[k].input); + } + + dbg(("\n")); + return (fail); +} + +int +sms4_test_wpi_pkt_micfail() +{ + int retv, k, fail = 0; + uint8 *pkt; + + for (k = 0; k < NUM_SMS4_WPI_PKT_VECTORS; k++) { + /* copy the reference data, with an error in the last byte */ + pkt = malloc(sms4_wpi_pkt_vec[k].il); + if (pkt == NULL) { + dbg(("%s: out of memory\n", __FUNCTION__)); + fail++; + return (fail); + } + + bcopy(sms4_wpi_pkt_vec[k].ref, pkt, sms4_wpi_pkt_vec[k].il); + + /* create an error in the last byte of the MIC */ + pkt[sms4_wpi_pkt_vec[k].il - 1]++; + + /* decrypt */ + dbg(("sms4_test_wpi_pkt_decrypt: SMS4-WPI packet vector %d\n", k)); + retv = sms4_wpi_pkt_decrypt(sms4_wpi_pkt_vec[k].ek, + sms4_wpi_pkt_vec[k].ick, + sms4_wpi_pkt_vec[k].il, + pkt); + if (!retv) { + dbg(("sms4_test_wpi_pkt_decrypt: sms4_wpi_pkt_decrypt of vector %d" + " did not return expected error %d\n", k, retv)); + fail++; + } + + free(pkt); + } + + dbg(("\n")); + return (fail); +} + +int +sms4_test(int *t) +{ + int fail = 0; + + *t = 0; + +#ifndef BCMSMS4_TEST_EMBED + fail += sms4_test_enc_dec(); + fail += sms4_test_cbc_mac(); + fail += sms4_test_ofb_crypt(); +#endif + + /* since encrypt and decrypt are done in place, and these + * functions use the same vectors, the tests must be run in order + */ + fail += sms4_test_wpi_pkt_encrypt(); + fail += sms4_test_wpi_pkt_decrypt(); + fail += sms4_test_wpi_pkt_micfail(); + + fail += sms4_test_wpi_pkt_encrypt_decrypt_timing(t); + + return (fail); +} + +#ifdef BCMSMS4_TEST_STANDALONE +int +main(int argc, char **argv) +{ + int fail = 0, t; + + fail += sms4_test(&t); + + dbg(("%s: timing result: %d msec\n", __FUNCTION__, t)); + fprintf(stderr, "%s: %s\n", *argv, fail ? "FAILED" : "PASSED"); + return (fail); + +} +#endif /* BCMSMS4_TEST_STANDALONE */ + +#endif /* BCMSMS4_TEST */ + +#endif /* BCMWAPI_WPI */ diff --git a/release/src-rt/bcmcrypto/tkhash.c b/release/src-rt/bcmcrypto/tkhash.c new file mode 100755 index 0000000000..a58ee83238 --- /dev/null +++ b/release/src-rt/bcmcrypto/tkhash.c @@ -0,0 +1,301 @@ +/* + * tkhash.c + * Trimmed version of reference code from "Simple Security Network (SSN) for + * IEEE 802.11", v0.20, plus test routine. + * + * Copyright (C) 2010, Broadcom Corporation + * All Rights Reserved. + * + * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation; + * the contents of this file may not be disclosed to third parties, copied + * or duplicated in any form, in whole or in part, without the prior + * written permission of Broadcom Corporation. + * + * $Id: tkhash.c,v 1.11 2009-10-21 19:17:20 Exp $ + */ + +/* Reference code from: + * + * Contents: Generate 802.11 per-packet RC4 key hash test vectors + * Date: April 19, 2002 + * Authors: Doug Whiting, Hifn + * Russ Housley, RSA Labs + * Niels Ferguson, MacFergus + * Doug Smith, Cisco + * Notes: + * + * This code is released to the public domain use, built solely out of + * the goodness of our hearts for the benefit of all mankind. As such, + * there are no warranties of any kind given on the correctness or + * usefulness of this code. + * + * This code is written for pedagogical purposes, NOT for performance. + * + */ + +#include + +/* macros for extraction/creation of byte/u16b values */ +#define RotR1(v16) ((((v16) >> 1) & 0x7FFF) ^ (((v16) & 1) << 15)) +#define Lo8(v16) ((uint8)((v16) & 0x00FF)) +#define Hi8(v16) ((uint8)(((v16) >> 8) & 0x00FF)) +#define Lo16(v32) ((uint16)((v32) & 0xFFFF)) +#define Hi16(v32) ((uint16)(((v32) >>16) & 0xFFFF)) +#define Mk16(hi, lo) ((lo) ^ (((uint16)(hi)) << 8)) + +/* select the Nth 16-bit word of the temporal key byte array TK[] */ +#define TK16(N) Mk16(TK[2 * (N) + 1], TK[2 * (N)]) + +/* fixed algorithm "parameters" */ +#define PHASE1_LOOP_CNT 8 /* this needs to be "big enough" */ +#define TA_SIZE 6 /* 48-bit transmitter address */ +#define TK_SIZE 16 /* 128-bit temporal key */ +#define P1K_SIZE 10 /* 80-bit Phase1 key */ +#define RC4_KEY_SIZE 16 /* 128-bit RC4KEY (104 bits unknown) */ + +/* + * Note that the Sbox[] table below is a subset of rijndael-alg-fst.c's Te0[256] array. + * To save 1024 bytes of memory, define SHARE_RIJNDAEL_SBOX to re-use that one here. + * Can only be used if rijndael-alg-fst.c is included in the build. + */ +#ifdef SHARE_RIJNDAEL_SBOX + +extern const uint32 rijndaelTe0[256]; + +#define SBOX0(ind) (((rijndaelTe0[ind] >> 16) & 0xff00) | \ + ((rijndaelTe0[ind] >> 0) & 0x00ff)) +#define SBOX1(ind) (((rijndaelTe0[ind] >> 24) & 0x00ff) | \ + ((rijndaelTe0[ind] << 8) & 0xff00)) + +#else /* !SHARE_RIJNDAEL_SBOX */ + +/* 2-byte by 2-byte subset of the full AES S-box table */ +static const uint16 Sbox[2][256] = /* Sbox for hash (can be in ROM) */ +{ + { + 0xC6A5, 0xF884, 0xEE99, 0xF68D, 0xFF0D, 0xD6BD, 0xDEB1, 0x9154, + 0x6050, 0x0203, 0xCEA9, 0x567D, 0xE719, 0xB562, 0x4DE6, 0xEC9A, + 0x8F45, 0x1F9D, 0x8940, 0xFA87, 0xEF15, 0xB2EB, 0x8EC9, 0xFB0B, + 0x41EC, 0xB367, 0x5FFD, 0x45EA, 0x23BF, 0x53F7, 0xE496, 0x9B5B, + 0x75C2, 0xE11C, 0x3DAE, 0x4C6A, 0x6C5A, 0x7E41, 0xF502, 0x834F, + 0x685C, 0x51F4, 0xD134, 0xF908, 0xE293, 0xAB73, 0x6253, 0x2A3F, + 0x080C, 0x9552, 0x4665, 0x9D5E, 0x3028, 0x37A1, 0x0A0F, 0x2FB5, + 0x0E09, 0x2436, 0x1B9B, 0xDF3D, 0xCD26, 0x4E69, 0x7FCD, 0xEA9F, + 0x121B, 0x1D9E, 0x5874, 0x342E, 0x362D, 0xDCB2, 0xB4EE, 0x5BFB, + 0xA4F6, 0x764D, 0xB761, 0x7DCE, 0x527B, 0xDD3E, 0x5E71, 0x1397, + 0xA6F5, 0xB968, 0x0000, 0xC12C, 0x4060, 0xE31F, 0x79C8, 0xB6ED, + 0xD4BE, 0x8D46, 0x67D9, 0x724B, 0x94DE, 0x98D4, 0xB0E8, 0x854A, + 0xBB6B, 0xC52A, 0x4FE5, 0xED16, 0x86C5, 0x9AD7, 0x6655, 0x1194, + 0x8ACF, 0xE910, 0x0406, 0xFE81, 0xA0F0, 0x7844, 0x25BA, 0x4BE3, + 0xA2F3, 0x5DFE, 0x80C0, 0x058A, 0x3FAD, 0x21BC, 0x7048, 0xF104, + 0x63DF, 0x77C1, 0xAF75, 0x4263, 0x2030, 0xE51A, 0xFD0E, 0xBF6D, + 0x814C, 0x1814, 0x2635, 0xC32F, 0xBEE1, 0x35A2, 0x88CC, 0x2E39, + 0x9357, 0x55F2, 0xFC82, 0x7A47, 0xC8AC, 0xBAE7, 0x322B, 0xE695, + 0xC0A0, 0x1998, 0x9ED1, 0xA37F, 0x4466, 0x547E, 0x3BAB, 0x0B83, + 0x8CCA, 0xC729, 0x6BD3, 0x283C, 0xA779, 0xBCE2, 0x161D, 0xAD76, + 0xDB3B, 0x6456, 0x744E, 0x141E, 0x92DB, 0x0C0A, 0x486C, 0xB8E4, + 0x9F5D, 0xBD6E, 0x43EF, 0xC4A6, 0x39A8, 0x31A4, 0xD337, 0xF28B, + 0xD532, 0x8B43, 0x6E59, 0xDAB7, 0x018C, 0xB164, 0x9CD2, 0x49E0, + 0xD8B4, 0xACFA, 0xF307, 0xCF25, 0xCAAF, 0xF48E, 0x47E9, 0x1018, + 0x6FD5, 0xF088, 0x4A6F, 0x5C72, 0x3824, 0x57F1, 0x73C7, 0x9751, + 0xCB23, 0xA17C, 0xE89C, 0x3E21, 0x96DD, 0x61DC, 0x0D86, 0x0F85, + 0xE090, 0x7C42, 0x71C4, 0xCCAA, 0x90D8, 0x0605, 0xF701, 0x1C12, + 0xC2A3, 0x6A5F, 0xAEF9, 0x69D0, 0x1791, 0x9958, 0x3A27, 0x27B9, + 0xD938, 0xEB13, 0x2BB3, 0x2233, 0xD2BB, 0xA970, 0x0789, 0x33A7, + 0x2DB6, 0x3C22, 0x1592, 0xC920, 0x8749, 0xAAFF, 0x5078, 0xA57A, + 0x038F, 0x59F8, 0x0980, 0x1A17, 0x65DA, 0xD731, 0x84C6, 0xD0B8, + 0x82C3, 0x29B0, 0x5A77, 0x1E11, 0x7BCB, 0xA8FC, 0x6DD6, 0x2C3A + }, + + { /* second half of table is byte-reversed version of first! */ + 0xA5C6, 0x84F8, 0x99EE, 0x8DF6, 0x0DFF, 0xBDD6, 0xB1DE, 0x5491, + 0x5060, 0x0302, 0xA9CE, 0x7D56, 0x19E7, 0x62B5, 0xE64D, 0x9AEC, + 0x458F, 0x9D1F, 0x4089, 0x87FA, 0x15EF, 0xEBB2, 0xC98E, 0x0BFB, + 0xEC41, 0x67B3, 0xFD5F, 0xEA45, 0xBF23, 0xF753, 0x96E4, 0x5B9B, + 0xC275, 0x1CE1, 0xAE3D, 0x6A4C, 0x5A6C, 0x417E, 0x02F5, 0x4F83, + 0x5C68, 0xF451, 0x34D1, 0x08F9, 0x93E2, 0x73AB, 0x5362, 0x3F2A, + 0x0C08, 0x5295, 0x6546, 0x5E9D, 0x2830, 0xA137, 0x0F0A, 0xB52F, + 0x090E, 0x3624, 0x9B1B, 0x3DDF, 0x26CD, 0x694E, 0xCD7F, 0x9FEA, + 0x1B12, 0x9E1D, 0x7458, 0x2E34, 0x2D36, 0xB2DC, 0xEEB4, 0xFB5B, + 0xF6A4, 0x4D76, 0x61B7, 0xCE7D, 0x7B52, 0x3EDD, 0x715E, 0x9713, + 0xF5A6, 0x68B9, 0x0000, 0x2CC1, 0x6040, 0x1FE3, 0xC879, 0xEDB6, + 0xBED4, 0x468D, 0xD967, 0x4B72, 0xDE94, 0xD498, 0xE8B0, 0x4A85, + 0x6BBB, 0x2AC5, 0xE54F, 0x16ED, 0xC586, 0xD79A, 0x5566, 0x9411, + 0xCF8A, 0x10E9, 0x0604, 0x81FE, 0xF0A0, 0x4478, 0xBA25, 0xE34B, + 0xF3A2, 0xFE5D, 0xC080, 0x8A05, 0xAD3F, 0xBC21, 0x4870, 0x04F1, + 0xDF63, 0xC177, 0x75AF, 0x6342, 0x3020, 0x1AE5, 0x0EFD, 0x6DBF, + 0x4C81, 0x1418, 0x3526, 0x2FC3, 0xE1BE, 0xA235, 0xCC88, 0x392E, + 0x5793, 0xF255, 0x82FC, 0x477A, 0xACC8, 0xE7BA, 0x2B32, 0x95E6, + 0xA0C0, 0x9819, 0xD19E, 0x7FA3, 0x6644, 0x7E54, 0xAB3B, 0x830B, + 0xCA8C, 0x29C7, 0xD36B, 0x3C28, 0x79A7, 0xE2BC, 0x1D16, 0x76AD, + 0x3BDB, 0x5664, 0x4E74, 0x1E14, 0xDB92, 0x0A0C, 0x6C48, 0xE4B8, + 0x5D9F, 0x6EBD, 0xEF43, 0xA6C4, 0xA839, 0xA431, 0x37D3, 0x8BF2, + 0x32D5, 0x438B, 0x596E, 0xB7DA, 0x8C01, 0x64B1, 0xD29C, 0xE049, + 0xB4D8, 0xFAAC, 0x07F3, 0x25CF, 0xAFCA, 0x8EF4, 0xE947, 0x1810, + 0xD56F, 0x88F0, 0x6F4A, 0x725C, 0x2438, 0xF157, 0xC773, 0x5197, + 0x23CB, 0x7CA1, 0x9CE8, 0x213E, 0xDD96, 0xDC61, 0x860D, 0x850F, + 0x90E0, 0x427C, 0xC471, 0xAACC, 0xD890, 0x0506, 0x01F7, 0x121C, + 0xA3C2, 0x5F6A, 0xF9AE, 0xD069, 0x9117, 0x5899, 0x273A, 0xB927, + 0x38D9, 0x13EB, 0xB32B, 0x3322, 0xBBD2, 0x70A9, 0x8907, 0xA733, + 0xB62D, 0x223C, 0x9215, 0x20C9, 0x4987, 0xFFAA, 0x7850, 0x7AA5, + 0x8F03, 0xF859, 0x8009, 0x171A, 0xDA65, 0x31D7, 0xC684, 0xB8D0, + 0xC382, 0xB029, 0x775A, 0x111E, 0xCB7B, 0xFCA8, 0xD66D, 0x3A2C + } +}; + +#define SBOX0(ind) Sbox[0][ind] +#define SBOX1(ind) Sbox[1][ind] + +#endif /* !SHARE_RIJNDAEL_SBOX */ + +/* S-box lookup: 16 bits --> 16 bits */ +#define _S_(v16) (SBOX0(Lo8(v16)) ^ SBOX1(Hi8(v16))) + +/* + * Routine: Phase 1 -- generate P1K, given TA, TK, IV32 + * + * Inputs: + * TK[] = temporal key [128 bits] + * TA[] = transmitter's MAC address [ 48 bits] + * IV32 = upper 32 bits of IV [ 32 bits] + * Output: + * P1K[] = Phase 1 key [ 80 bits] + * + * Note: + * This function only needs to be called every 2**16 packets, + * although in theory it could be called every packet. + * + */ +void +BCMROMFN(tkhash_phase1)(uint16 *P1K, const uint8 *TK, const uint8 *TA, uint32 IV32) +{ + uint16 i; + + /* Initialize the 80 bits of P1K[] from IV32 and TA[0..5] */ + P1K[0] = Lo16(IV32); + P1K[1] = Hi16(IV32); + P1K[2] = Mk16(TA[1], TA[0]); /* use TA[] as little-endian */ + P1K[3] = Mk16(TA[3], TA[2]); + P1K[4] = Mk16(TA[5], TA[4]); + + /* Now compute an unbalanced Feistel cipher with 80-bit block */ + /* size on the 80-bit block P1K[], using the 128-bit key TK[] */ + for (i = 0; i < PHASE1_LOOP_CNT; i++) { + /* Each add operation here is mod 2**16 */ + P1K[0] += _S_(P1K[4] ^ TK16((i & 1) + 0)); + P1K[1] += _S_(P1K[0] ^ TK16((i & 1) + 2)); + P1K[2] += _S_(P1K[1] ^ TK16((i & 1) + 4)); + P1K[3] += _S_(P1K[2] ^ TK16((i & 1) + 6)); + P1K[4] += _S_(P1K[3] ^ TK16((i & 1) + 0)); + P1K[4] += i; /* avoid "slide attacks" */ + } +} + +/* + * + * Routine: Phase 2 -- generate RC4KEY, given TK, P1K, IV16 + * + * Inputs: + * TK[] = Temporal key [128 bits] + * P1K[] = Phase 1 output key [ 80 bits] + * IV16 = low 16 bits of IV counter [ 16 bits] + * Output: + * RC4KEY[] = the key used to encrypt the packet [128 bits] + * + * Note: + * The value {TA,IV32,IV16} for Phase1/Phase2 must be unique + * across all packets using the same key TK value. Then, for a + * given value of TK[], this TKIP48 construction guarantees that + * the final RC4KEY value is unique across all packets. + * + * Suggested implementation optimization: if PPK[] is "overlaid" + * appropriately on RC4KEY[], there is no need for the final + * for loop below that copies the PPK[] result into RC4KEY[]. + * + */ +void +BCMROMFN(tkhash_phase2)(uint8 *RC4KEY, const uint8 *TK, const uint16 *P1K, uint16 IV16) +{ + uint16 i; + uint16 PPK[6]; /* temporary key for mixing */ + + /* Note: all adds in the PPK[] equations below are mod 2**16 */ + for (i = 0; i < 5; i++) PPK[i]=P1K[i]; /* first, copy P1K to PPK */ + PPK[5] = P1K[4] + IV16; /* next, add in IV16 */ + + /* Bijective non-linear mixing of the 96 bits of PPK[0..5] */ + PPK[0] += _S_(PPK[5] ^ TK16(0)); /* Mix key in each "round" */ + PPK[1] += _S_(PPK[0] ^ TK16(1)); + PPK[2] += _S_(PPK[1] ^ TK16(2)); + PPK[3] += _S_(PPK[2] ^ TK16(3)); + PPK[4] += _S_(PPK[3] ^ TK16(4)); + PPK[5] += _S_(PPK[4] ^ TK16(5)); /* Total # S-box lookups == 6 */ + + /* Final sweep: bijective, "linear". Rotates kill LSB correlations */ + PPK[0] += RotR1(PPK[5] ^ TK16(6)); + PPK[1] += RotR1(PPK[0] ^ TK16(7)); /* Use all of TK[] in Phase2 */ + PPK[2] += RotR1(PPK[1]); + PPK[3] += RotR1(PPK[2]); + PPK[4] += RotR1(PPK[3]); + PPK[5] += RotR1(PPK[4]); + /* Note: At this point, for a given key TK[0..15], the 96-bit output */ + /* value PPK[0..5] is guaranteed to be unique, as a function */ + /* of the 96-bit "input" value {TA,IV32,IV16}. That is, P1K */ + /* is now a keyed permutation of {TA,IV32,IV16}. */ + + /* Set RC4KEY[0..3], which includes "cleartext" portion of RC4 key */ + RC4KEY[0] = Hi8(IV16); /* RC4KEY[0..2] is the WEP IV */ + RC4KEY[1] =(Hi8(IV16) | 0x20) & 0x7F; /* Help avoid weak (FMS) keys */ + RC4KEY[2] = Lo8(IV16); + RC4KEY[3] = Lo8((PPK[5] ^ TK16(0)) >> 1); + + /* Copy 96 bits of PPK[0..5] to RC4KEY[4..15] (little-endian) */ + for (i = 0; i < 6; i++) { + RC4KEY[4 + 2 * i] = Lo8(PPK[i]); + RC4KEY[5 + 2 * i] = Hi8(PPK[i]); + } +} + + +#ifdef BCMTKHASH_TEST +#include + +#if defined(__GNUC__) +#include +#endif + +#include "tkhash_vectors.h" +#define NUM_VECTORS (sizeof(tkhash_vec)/sizeof(tkhash_vec[0])) + +int main(int argc, char **argv) +{ + int k, fail = 0; + uint16 p1k[TKHASH_P1_KEY_SIZE / 2]; + uint8 rc4key[TKHASH_P2_KEY_SIZE]; + for (k = 0; k < NUM_VECTORS; k++) { + tkhash_phase1(p1k, tkhash_vec[k].tk, tkhash_vec[k].ta, + *(tkhash_vec[k].iv32)); + + if (bcmp(p1k, tkhash_vec[k].p1k, TKHASH_P1_KEY_SIZE) != 0) { + printf("%s: TKHash Phase1 %d failed\n", *argv, k); + fail++; + } else { + printf("%s: TKHash Phase1 %d passed\n", *argv, k); + } + + tkhash_phase2(rc4key, tkhash_vec[k].tk, p1k, + *(tkhash_vec[k].iv16)); + + if (bcmp(rc4key, tkhash_vec[k].rc4key, TKHASH_P2_KEY_SIZE) != 0) { + printf("%s: TKHash Phase2 %d failed\n", *argv, k); + fail++; + } else { + printf("%s: TKHash Phase2 %d passed\n", *argv, k); + } + + } + + printf("%s: %s\n", *argv, fail?"FAILED":"PASSED"); + return (fail); +} +#endif /* BCMTKHASH_TEST */ diff --git a/release/src-rt/bcmcrypto/tkhash_vectors.h b/release/src-rt/bcmcrypto/tkhash_vectors.h new file mode 100755 index 0000000000..ad53e9d29e --- /dev/null +++ b/release/src-rt/bcmcrypto/tkhash_vectors.h @@ -0,0 +1,171 @@ +/* + * tkhash_vectors.h + * TKIP Key Hash test vectors + * + * Copyright (C) 2010, Broadcom Corporation + * All Rights Reserved. + * + * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation; + * the contents of this file may not be disclosed to third parties, copied + * or duplicated in any form, in whole or in part, without the prior + * written permission of Broadcom Corporation. + * + * $Id: tkhash_vectors.h,v 1.3 2006-06-14 21:08:49 Exp $ + */ + +#include + +/* From 802.11i-D3.0 */ +uint8 tk_00[] = { + 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, + 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F + }; + +uint8 ta_00[] = { 0x10, 0x22, 0x33, 0x44, 0x55, 0x66 }; + +uint32 iv32_00 = 0x00000000; + +uint16 iv16_00 = 0x0000; + +uint16 p1k_00[] = { 0x3DD2, 0x016E, 0x76F4, 0x8697, 0xB2E8 }; + +uint8 rc4key_00 [] = { + 0x00, 0x20, 0x00, 0x33, 0xEA, 0x8D, 0x2F, 0x60, + 0xCA, 0x6D, 0x13, 0x74, 0x23, 0x4A, 0x66, 0x0B + }; + + +uint8 tk_01[] = { + 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, + 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F + }; + +uint8 ta_01[] = { 0x10, 0x22, 0x33, 0x44, 0x55, 0x66 }; + +uint32 iv32_01 = 0x00000000; + +uint16 iv16_01 = 0x0001; + +uint16 p1k_01[] = { 0x3DD2, 0x016E, 0x76F4, 0x8697, 0xB2E8 }; + +uint8 rc4key_01[] = { + 0x00, 0x20, 0x01, 0x90, 0xFF, 0xDC, 0x31, 0x43, + 0x89, 0xA9, 0xD9, 0xD0, 0x74, 0xFD, 0x20, 0xAA + }; + + +uint8 tk_02[] = { + 0x63, 0x89, 0x3B, 0x25, 0x08, 0x40, 0xB8, 0xAE, + 0x0B, 0xD0, 0xFA, 0x7E, 0x61, 0xD2, 0x78, 0x3E + }; + +uint8 ta_02[] = { 0x64, 0xF2, 0xEA, 0xED, 0xDC, 0x25 }; + +uint32 iv32_02 = 0x20DCFD43; + +uint16 iv16_02 = 0xFFFF; + +uint16 p1k_02[] = { 0x7C67, 0x49D7, 0x9724, 0xB5E9, 0xB4F1 }; + +uint8 rc4key_02[] = { + 0xFF, 0x7F, 0xFF, 0x93, 0x81, 0x0F, 0xC6, 0xE5, + 0x8F, 0x5D, 0xD3, 0x26, 0x25, 0x15, 0x44, 0xCE + }; + + +uint8 tk_03[] = { + 0x63, 0x89, 0x3B, 0x25, 0x08, 0x40, 0xB8, 0xAE, + 0x0B, 0xD0, 0xFA, 0x7E, 0x61, 0xD2, 0x78, 0x3E + }; + +uint8 ta_03[] = { 0x64, 0xF2, 0xEA, 0xED, 0xDC, 0x25 }; + +uint32 iv32_03 = 0x20DCFD44; + +uint16 iv16_03 = 0x0000; + +uint16 p1k_03[] = { 0x5A5D, 0x73A8, 0xA859, 0x2EC1, 0xDC8B }; + +uint8 rc4key_03[] = { + 0x00, 0x20, 0x00, 0x49, 0x8C, 0xA4, 0x71, 0xFC, + 0xFB, 0xFA, 0xA1, 0x6E, 0x36, 0x10, 0xF0, 0x05 + }; + + +uint8 tk_04[] = { + 0x98, 0x3A, 0x16, 0xEF, 0x4F, 0xAC, 0xB3, 0x51, + 0xAA, 0x9E, 0xCC, 0x27, 0x1D, 0x73, 0x09, 0xE2 + }; + +uint8 ta_04[] = { 0x50, 0x9C, 0x4B, 0x17, 0x27, 0xD9 }; + +uint32 iv32_04 = 0xF0A410FC; + +uint16 iv16_04 = 0x058C; + +uint16 p1k_04[] = { 0xF2DF, 0xEBB1, 0x88D3, 0x5923, 0xA07C }; + +uint8 rc4key_04[] = { + 0x05, 0x25, 0x8C, 0xF4, 0xD8, 0x51, 0x52, 0xF4, + 0xD9, 0xAF, 0x1A, 0x64, 0xF1, 0xD0, 0x70, 0x21 + }; + + +uint8 tk_05[] = { + 0x98, 0x3A, 0x16, 0xEF, 0x4F, 0xAC, 0xB3, 0x51, + 0xAA, 0x9E, 0xCC, 0x27, 0x1D, 0x73, 0x09, 0xE2 + }; + +uint8 ta_05[] = { 0x50, 0x9C, 0x4B, 0x17, 0x27, 0xD9 }; + +uint32 iv32_05 = 0xF0A410FC; + +uint16 iv16_05 = 0x058D; + +uint16 p1k_05[] = { 0xF2DF, 0xEBB1, 0x88D3, 0x5923, 0xA07C }; + +uint8 rc4key_05[] = { + 0x05, 0x25, 0x8D, 0x09, 0xF8, 0x15, 0x43, 0xB7, + 0x6A, 0x59, 0x6F, 0xC2, 0xC6, 0x73, 0x8B, 0x30 + }; + + +uint8 tk_06[] = { + 0xC8, 0xAD, 0xC1, 0x6A, 0x8B, 0x4D, 0xDA, 0x3B, + 0x4D, 0xD5, 0xB6, 0x54, 0x38, 0x35, 0x9B, 0x05 + }; + +uint8 ta_06[] = { 0x94, 0x5E, 0x24, 0x4E, 0x4D, 0x6E }; + +uint32 iv32_06 = 0x8B1573B7; + +uint16 iv16_06 = 0x30F8; + +uint16 p1k_06[] = { 0xEFF1, 0x3F38, 0xA364, 0x60A9, 0x76F3 }; + +uint8 rc4key_06[] = { + 0x30, 0x30, 0xF8, 0x65, 0x0D, 0xA0, 0x73, 0xEA, + 0x61, 0x4E, 0xA8, 0xF4, 0x74, 0xEE, 0x03, 0x19 + }; + +typedef struct { + uint8 *tk; + uint8 *ta; + uint32 *iv32; + uint16 *iv16; + uint16 *p1k; + uint8 *rc4key; +} tkhash_vector_t; + +#define TKHASH_VECTOR_ENTRY(x) \ + { tk_##x, ta_##x, &iv32_##x, &iv16_##x, p1k_##x, rc4key_##x } + +tkhash_vector_t tkhash_vec[] = { + TKHASH_VECTOR_ENTRY(00), + TKHASH_VECTOR_ENTRY(01), + TKHASH_VECTOR_ENTRY(02), + TKHASH_VECTOR_ENTRY(03), + TKHASH_VECTOR_ENTRY(04), + TKHASH_VECTOR_ENTRY(05), + TKHASH_VECTOR_ENTRY(06) + }; diff --git a/release/src-rt/bcmcrypto/tkmic.c b/release/src-rt/bcmcrypto/tkmic.c new file mode 100755 index 0000000000..f9f94075dd --- /dev/null +++ b/release/src-rt/bcmcrypto/tkmic.c @@ -0,0 +1,88 @@ +/* + * tkmic.c - TKIP Message Integrity Check (MIC) functions + * + * Copyright (C) 2010, Broadcom Corporation + * All Rights Reserved. + * + * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation; + * the contents of this file may not be disclosed to third parties, copied + * or duplicated in any form, in whole or in part, without the prior + * written permission of Broadcom Corporation. + * + * $Id: tkmic.c,v 1.2.540.1 2010-04-22 22:27:54 Exp $ + */ + +#include +#include +#include + +/* + * "Michael" Messge Integrity Check (MIC) algorithm + */ +static INLINE void +tkip_micblock(uint32 *left, uint32 *right) +{ + uint32 l = *left; + uint32 r = *right; + + r ^= ROTR32(l, 15); + l += r; /* mod 2^32 */ + r ^= XSWAP32(l); + l += r; /* mod 2^32 */ + r ^= ROTR32(l, 29); + l += r; /* mod 2^32 */ + r ^= ROTR32(l, 2); + l += r; /* mod 2^32 */ + + *left = l; + *right = r; +} + + +/* compute mic across message */ +/* buffer must already have terminator and padding appended */ +/* buffer length (n) specified in bytes */ +void +BCMROMFN(tkip_mic)(uint32 k0, uint32 k1, int n, uint8 *m, uint32 *left, uint32 *right) +{ + uint32 l = k0; + uint32 r = k1; + + if (((uintptr)m & 3) == 0) { + for (; n > 0; n -= 4) { + l ^= ltoh32(*(uint *)m); + m += 4; + tkip_micblock(&l, &r); + } + } else { + for (; n > 0; n -= 4) { + l ^= ltoh32_ua(m); + m += 4; + tkip_micblock(&l, &r); + } + } + *left = l; + *right = r; +} + +/* append the MIC terminator to the data buffer */ +/* terminator is 0x5a followed by 4-7 bytes of 0 */ +/* param 'o' is the current frag's offset in the frame */ +/* returns length of message plus terminator in bytes */ +int +BCMROMFN(tkip_mic_eom)(uint8 *m, uint n, uint o) +{ + uint8 *mend = m + n; + uint t = n + o; + mend[0] = 0x5a; + mend[1] = 0; + mend[2] = 0; + mend[3] = 0; + mend[4] = 0; + mend += 5; + o += n + 5; + while (o++%4) { + *mend++ = 0; + } + return (n+o-1-t); +} diff --git a/release/src-rt/bcmcrypto/wep.c b/release/src-rt/bcmcrypto/wep.c new file mode 100755 index 0000000000..c42c35fdf1 --- /dev/null +++ b/release/src-rt/bcmcrypto/wep.c @@ -0,0 +1,86 @@ +/* + * wep.c - WEP functions + * + * Copyright (C) 2010, Broadcom Corporation + * All Rights Reserved. + * + * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation; + * the contents of this file may not be disclosed to third parties, copied + * or duplicated in any form, in whole or in part, without the prior + * written permission of Broadcom Corporation. + * + * $Id: wep.c,v 1.4 2007-04-29 04:36:19 Exp $ + */ + +#include + +/* include wl driver config file if this file is compiled for driver */ +#ifdef BCMDRIVER +#include +#else +#if defined(__GNUC__) +extern void bcopy(const void *src, void *dst, int len); +extern int bcmp(const void *b1, const void *b2, int len); +extern void bzero(void *b, int len); +#else +#define bcopy(src, dst, len) memcpy((dst), (src), (len)) +#define bcmp(b1, b2, len) memcmp((b1), (b2), (len)) +#define bzero(b, len) memset((b), 0, (len)) +#endif /* defined(__GNUC__) */ +#endif /* BCMDRIVER */ + +#include +#include +#include +#include + +/* WEP-encrypt a buffer */ +/* assumes a contiguous buffer, with IV prepended, and with enough space at + * the end for the ICV + */ +void +BCMROMFN(wep_encrypt)(uint buf_len, uint8 *buf, uint sec_len, uint8 *sec_data) +{ + uint8 key_data[16]; + uint32 ICV; + rc4_ks_t ks; + uint8 *body = buf + DOT11_IV_LEN; + uint body_len = buf_len - (DOT11_IV_LEN + DOT11_ICV_LEN); + uint8 *picv = body + body_len; + + bcopy(buf, key_data, 3); + bcopy(sec_data, &key_data[3], sec_len); + + prepare_key(key_data, sec_len + 3, &ks); + + /* append ICV */ + ICV = ~hndcrc32(body, body_len, CRC32_INIT_VALUE); + picv[0] = ICV & 0xff; + picv[1] = (ICV >> 8) & 0xff; + picv[2] = (ICV >> 16) & 0xff; + picv[3] = (ICV >> 24) & 0xff; + + rc4(body, body_len + DOT11_ICV_LEN, &ks); +} + +/* WEP-decrypt + * Assumes a contigous buffer, with IV prepended. + * Returns TRUE if ICV check passes, FALSE otherwise + * + */ +bool +BCMROMFN(wep_decrypt)(uint buf_len, uint8 *buf, uint sec_len, uint8 *sec_data) +{ + uint8 key_data[16]; + rc4_ks_t ks; + + bcopy(buf, key_data, 3); + bcopy(sec_data, &key_data[3], sec_len); + + prepare_key(key_data, sec_len + 3, &ks); + + rc4(buf + DOT11_IV_LEN, buf_len - DOT11_IV_LEN, &ks); + + return (hndcrc32(buf + DOT11_IV_LEN, buf_len - DOT11_IV_LEN, CRC32_INIT_VALUE) == + CRC32_GOOD_VALUE); +} diff --git a/release/src-rt/emf/emf/emfc.c b/release/src-rt/emf/emf/emfc.c old mode 100644 new mode 100755 index 22787a097d..e8db9ab982 --- a/release/src-rt/emf/emf/emfc.c +++ b/release/src-rt/emf/emf/emfc.c @@ -34,6 +34,16 @@ #include "emfc.h" #include "emf_export.h" +/* BH-enabled helpers */ +#define EMF_RELOCK(lock) do { \ + OSL_UNLOCK(lock); \ + spin_lock(&((lock)->slock)); \ +} while (0) +#define OSL_RELOCK(lock) do { \ + spin_unlock(&((lock)->slock)); \ + OSL_LOCK(lock); \ +} while (0) + static CLIST_DECL_INIT(emfc_list_head); static osl_lock_t emfc_list_lock; @@ -187,6 +197,8 @@ emfc_unreg_frame_handle(emfc_info_t *emfc, void *sdu, void *ifp, uint8 proto, /* Flood the frame on to user specified ports */ for (ptr = emfc->iflist_head; ptr != NULL; ptr = ptr->next) { + int32 res; + /* Dont forward the frame on to the port on which it * was received. */ @@ -216,8 +228,11 @@ emfc_unreg_frame_handle(emfc_info_t *emfc, void *sdu, void *ifp, uint8 proto, return (EMF_DROP); } - if (emfc->wrapper.forward_fn(emfc->emfi, sdu_clone, dest_ip, - ptr->ifp, rt_port) != SUCCESS) + EMF_RELOCK(emfc->iflist_lock); + res = emfc->wrapper.forward_fn(emfc->emfi, sdu_clone, dest_ip, + ptr->ifp, rt_port); + OSL_RELOCK(emfc->iflist_lock); + if (res != SUCCESS) { EMF_INFO("Unable to flood the unreg frame on to %s\n", DEV_IFNAME(ptr->ifp)); @@ -346,6 +361,7 @@ emfc_input(emfc_info_t *emfc, void *sdu, void *ifp, uint8 *iph, bool rt_port) emfc_mgrp_t *mgrp; emfc_mi_t *mi; void *sdu_clone; + int32 res; EMF_DEBUG("Received frame with proto %d\n", IPV4_PROT(iph)); @@ -397,7 +413,9 @@ emfc_input(emfc_info_t *emfc, void *sdu, void *ifp, uint8 *iph, bool rt_port) return (EMF_DROP); } + EMF_RELOCK(emfc->fdb_lock); emfc->wrapper.sendup_fn(emfc->emfi, sdu_clone); + OSL_RELOCK(emfc->fdb_lock); EMFC_STATS_INCR(emfc, mcast_data_sentup); } @@ -424,9 +442,11 @@ emfc_input(emfc_info_t *emfc, void *sdu, void *ifp, uint8 *iph, bool rt_port) return (EMF_DROP); } - emfc->wrapper.forward_fn(emfc->emfi, sdu_clone, - dest_ip, mi->mi_mhif->mhif_ifp, rt_port) ? - EMFC_STATS_INCR(emfc, mcast_data_dropped) : + EMF_RELOCK(emfc->fdb_lock); + res = emfc->wrapper.forward_fn(emfc->emfi, sdu_clone, + dest_ip, mi->mi_mhif->mhif_ifp, rt_port); + OSL_RELOCK(emfc->fdb_lock); + res ? EMFC_STATS_INCR(emfc, mcast_data_dropped) : mi->mi_mhif->mhif_data_fwd++, mi->mi_data_fwd++; } @@ -439,9 +459,11 @@ emfc_input(emfc_info_t *emfc, void *sdu, void *ifp, uint8 *iph, bool rt_port) { EMF_DEBUG("Sending the original packet buffer\n"); - emfc->wrapper.forward_fn(emfc->emfi, sdu, dest_ip, - mi->mi_mhif->mhif_ifp, rt_port) ? - EMFC_STATS_INCR(emfc, mcast_data_dropped) : + EMF_RELOCK(emfc->fdb_lock); + res = emfc->wrapper.forward_fn(emfc->emfi, sdu, dest_ip, + mi->mi_mhif->mhif_ifp, rt_port); + OSL_RELOCK(emfc->fdb_lock); + res ? EMFC_STATS_INCR(emfc, mcast_data_dropped) : mi->mi_mhif->mhif_data_fwd++, mi->mi_data_fwd++; } diff --git a/release/src-rt/emf/emfconf/Makefile b/release/src-rt/emf/emfconf/Makefile old mode 100644 new mode 100755 index d1ad54b05c..b589896bdc --- a/release/src-rt/emf/emfconf/Makefile +++ b/release/src-rt/emf/emfconf/Makefile @@ -1,5 +1,5 @@ # -# $Id: Makefile,v 1.3 2008/08/12 17:43:47 Exp $ +# $Id: Makefile 241182 2011-02-17 21:50:03Z gmo $ # CROSS = diff --git a/release/src-rt/emf/emfconf/emf b/release/src-rt/emf/emfconf/emf new file mode 100755 index 0000000000000000000000000000000000000000..f7d576e74baa40da3249a59603dc445e89e00561 GIT binary patch literal 13324 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 literal 0 HcwPel00001 diff --git a/release/src-rt/emf/emfconf/emfu.c b/release/src-rt/emf/emfconf/emfu.c old mode 100644 new mode 100755 index 04f5976003..6e2c829110 --- a/release/src-rt/emf/emfconf/emfu.c +++ b/release/src-rt/emf/emfconf/emfu.c @@ -3,7 +3,7 @@ * EMF, enable/disable BSS forwarding, add/delete/list the Static * MFDB entries. * - * Copyright (C) 2009, Broadcom Corporation + * Copyright (C) 2010, Broadcom Corporation * All Rights Reserved. * * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation; @@ -11,7 +11,7 @@ * or duplicated in any form, in whole or in part, without the prior * written permission of Broadcom Corporation. * - * $Id: emfu.c,v 1.5 2007/10/13 00:54:06 Exp $ + * $Id: emfu.c 241182 2011-02-17 21:50:03Z gmo $ */ #include #include diff --git a/release/src-rt/emf/emfconf/emfu.h b/release/src-rt/emf/emfconf/emfu.h old mode 100644 new mode 100755 index 664c3cfcf4..562ffab5a1 --- a/release/src-rt/emf/emfconf/emfu.h +++ b/release/src-rt/emf/emfconf/emfu.h @@ -1,5 +1,5 @@ /* - * Copyright (C) 2009, Broadcom Corporation + * Copyright (C) 2010, Broadcom Corporation * All Rights Reserved. * * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation; @@ -7,7 +7,7 @@ * or duplicated in any form, in whole or in part, without the prior * written permission of Broadcom Corporation. * - * $Id: emfu.h,v 1.3 2007/07/11 23:23:20 Exp $ + * $Id: emfu.h 241182 2011-02-17 21:50:03Z gmo $ */ #ifndef _EMFU_H_ diff --git a/release/src-rt/emf/emfconf/emfu.o b/release/src-rt/emf/emfconf/emfu.o new file mode 100644 index 0000000000000000000000000000000000000000..af6d3b9c639d93e56a0238a3625c4181861b27fe GIT binary patch literal 13216 zcwXgOUrbwPmOr*H#>NJ&1KM?G*s0wyf7%k(FigkIvRyZED3!>Jr%kmyL;{0tKm*ug zn>Ljq6=kW!1Hz2TuF@3`QJZ!nEfO@%tazYPG|G(fkdY!S4|#|*JfKll%1Rk650SPK zd(L;xh0o?+QcZVfcCLia{hf2Z^Y6R&`_6Zxymz*@+h((Yb=klLdkEmccK|9)h<7T~ z0wz>L>DAB$u-F{j{Lm3>nL<2W1o*J%f`9|>L%RI#&KJ!s@a1v{K3@*NjpYXTY}pSh z%OovLl-(NJxjW3sbjn9^Qj1{cQ+A`Vo!uzu=u+q#ifF1e86Bu^{K2q{l zytjcb6hqvFbtE0q4Hy-nN_f>EeU6dl}s0qG5(4FF?~^h}H)sqoK=^>{ym_kHlGs?P=Z7o?3%G|rDQj%&K8&nel9 zi#@V6hWDgLwz7ENBer_c7TMr2jZLHz#4NCWMXX;D>sO>2_Zj(5YH~tOl{Bx}H z&E=T!`Et~_vD}4qj~M(6T6Onpb*DM4z*@IR-NE3xcOq^rt9t}KZ>HLtN7O$21hqF0 zsXf3yA^k`ETPRv}Q_tKy*n=|zc6<@cAiaY4j*$G}PSYI8*YU}Zwwv(X@Gq5&dBSq@?SOmZYNsr$9DO>j`T7Z`Z||cdAb({zc&G$6vQbw7&ka&j0>AKl`J|a|QG4!8~J_ zXH?4*`SMvm5`;;PzxdJ^F4mV>rl({meDBUw5G&wvGFn#7Z@- zI;5uho@=ckolm%ibZNE4y5YX}8SZ;r+xRzBTdF1TsJ>K7tFBb%KgYU$opzpTO2y6ne@@{<-wR@U%|No+P-Xm&P`zKVp zy><8 zlFXPhWR0+TNbD_Dei69Q{EV9SpNYK?@;@l)Hw`(rGB2dgtl%?YDr`bfomo%M1;gET zI)55?W+l6HCjGA+vYTr1t3B@WH)fx0f2it4Hmbnb?UQ+r+JELfyazb!S&=i-m4nVq zseS9UM>{it`X+Hg=KjXlK3mXwUj=Vy-zKd2FI|(L1^wH^`xsw(4%9PST6g*`QCj=y zS&rqoIcTTaH|?uA)q5N3&fncs&F7w`=3l{kH{dBQ?2q8tT~s^ucxPwFLSaqbsXmH2 zO5}aUp8N`Z5`_1rzB)wSV(cH^qshG$N6Q}_Bj0cyEq_>f%y`$)@-_ETpsX%Hx9SGzLiCiHN2y_kRMw7#- zSE>Tql`mwnfy0G~!esssVIrASlx2q~B~xR^D_NFC(}^L}*;T^3(e%lQ#P}gbpHzQr zG+#JK|G*$7)9I3e92dls>RUmS>mL|Iu8_^poE>M>3gSuitsu(v4-8^Fog5^p86D1L zCbK6;v&RPXb;er3m5(h^8X8L_a>ps6jyiqCIeSAw@D5`$x@Kp_*zrzVntTl58}sB@W-FZ- z9phAyPqMuTa;ZczaBgy}FiM39q%*m961n8)#IUSAH0bOPUp?J>Hm1hMUVn2J95L)v zpfL}xPrRKN8%+k(gGWzwE|n*P5*t3MsX|H%PWbfr?=tCaRW+ zH_pd@^v3y82|Y0>m0>b4YSk_u$V|vUwH^b}jIzxk1E6Ez2NeK=1GQYCoQ#tmzqA1K z=o41OrSbT*TXv}ai)!!XJ(9NhYl3M{CA?(Gos4fHUajCgn?8c93-$^o`K=1x^9+#_ zrahAI9l^9GS^7N{yvJGkglSK-^a;}*XX$U0>2H+jZNdte!GHuB=ynfwKHc<1zKMF;akrKI@>zhIsw}9?~WG|gGdWGrX$u}E;ZIx zNL?&ITM}PmXdBGui8(wvk-XfQ&~M|PTN}5D-To9ZYGgdsnOdqw!4A>8 ztJ$KDaMwyYkGc7kNgt;TY%Dk$49-WeGeN#Uxv~=2HG)S;5?kLm&a)+ zwb$~OP;yzaxZHPWdS6xS=@}v)g3`K#u+a)@4y^e4p)|fn7~hJG z8}R!b&@M;WC`XA0!UpJ?p;m*C=c6iEvUvetQszaxaifjb(}KwL%YpTX*mw=)%MGuTsJP(_V!vY#_aKgF z_#EOs4ZneSNyC4S__l^A?*?NJClGgOIE}cV;h!MBq~V{^+-dl2#8Vo+g!qbvFC$*m z@C@QR8lFRZPs0m{w>13Ehz+eiS1EoCe~P$M!%K+c8oojCYIqg#h=zYb`Ds|c9H1>A z3Ohl+9N>jp+I-PF{u>R`d;0G-ei!O(v@Y1-UYY#2W%zex_&>|AU3Z;hg8O*21>U+neWFAcbAnM%~Mmhi@8TDb){QX4Be(`$Vyb0qw7$^SfZjB`!q_D zWGjjl>OIpDreF2bt}y+4kA6Do=lk^Y68-#ueqL63N;{%%)tGiQs9lX}SHs%XxOO$L zU5#vKePy77J*iP0YE(xj^bcpLW?4vQC$X^{PmE4rkC_`9&mu`?CJPE>-`&kaPE-AK zv?7&ME{9`t*aN3wJT;!jxfq>D75Wo}jIuOAgB2ZTCqwG_sd$O^D<@KFD?C4tXBIbs z2I7C4-wo0WiQajVKZENtVWdeKht0yY&|5-pi{4$)drbHg?)f0^1im*;JMT4QpVnDr zAF1bWcs=&eS5l;IY+A0{I6him+zq_fJCUvle_izGeRpHeaEIhbw`}b90a4u3w~3Fm z0eyR3!Mu<~tb^W709=BOMVvFY!_DqUh6}NO3RPIqo}lj{BjVLmiXVre2I_ruJ8-Q$H}@+ ze58+rKSq4)LAHtC$a^@&-)eCD^i9n3cc^D@9@7Tran0cPRt%2!y1{v@8l1<5$Tto4 zLwkk0iT4O+6ZZz>$E;vKtrhHt_5kujYd!gysbD(`73^oWg8k4Li~OvLoX$VwXN@rS z*0)LC%smJB*%m*hll^o$*-x*N{fs%;&P6Bt$vWB3l#~4|iu}5h{akgjpCu>zp0cp8qAH&*Quk zAL%OL7chUqNN>sbb>ib;;STX%E~$r0>LGsoZmEZx{q(unPSVYOF1Xpxn4A4fi+tYAerDY4XTi;W z)R`0Que;gLeK-4|W}p1{iAM3gs$x6z;X=J%gj;bwkUEi`C;qEww~FIh68%-tU#a4_ z)~YzJO_4vW;<&a5pTxS7{G^I>~Eu*{cTsX zKeLAIHPo=b`Wp5Zs$qXok@wcHzgP|Xi`TF}>ha0nr5g5krH1{j)kuCs@o;*F#(fK) zPtrrWUBhv-)^Z%Zwd|*_mg9)mavTG-9LFV*&(v}pQ?(q&Y%Rw@XA6pBwU*=9sO2~w z*K!8?_>WDeC(eN zl4O5F?3*Xpe!~gYZ$V1ySu4@M#<)n1v>@_M;^QHGiug!pM1Phjp6wTjk90%y7es$k z^tVL+0m;wsnU3lasN;IX>bM>wbzG0BI?nrg9p`nkj`LoseN zTXmfGS9R={8Yp)M5~NO~J@q`!ThDRE>p9K~^&B5vbXK7L${ykGNrVT4P6@p#bY1AC zQ0kx5c%f0D145^SUKP47bWG?Xjk0d%G{H)-D(2K&K5oB7ld9B{#C)(gkBf^ir||ZwlTL`at-P1aAv{EPOR@PWfIz^_KZC1=kDp>+_2^B(z2N{{xB% BewzRQ literal 0 HcwPel00001 diff --git a/release/src-rt/emf/emfconf/emfu_linux.c b/release/src-rt/emf/emfconf/emfu_linux.c old mode 100644 new mode 100755 index 19809fadc1..3a73450214 --- a/release/src-rt/emf/emfconf/emfu_linux.c +++ b/release/src-rt/emf/emfconf/emfu_linux.c @@ -1,7 +1,7 @@ /* * EMFL Command Line Utility Linux specific code * - * Copyright (C) 2009, Broadcom Corporation + * Copyright (C) 2010, Broadcom Corporation * All Rights Reserved. * * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation; @@ -9,7 +9,7 @@ * or duplicated in any form, in whole or in part, without the prior * written permission of Broadcom Corporation. * - * $Id: emfu_linux.c,v 1.1 2007/03/17 03:14:23 Exp $ + * $Id: emfu_linux.c 241182 2011-02-17 21:50:03Z gmo $ */ #include diff --git a/release/src-rt/emf/emfconf/emfu_linux.h b/release/src-rt/emf/emfconf/emfu_linux.h old mode 100644 new mode 100755 index ba44041cdd..570072d356 --- a/release/src-rt/emf/emfconf/emfu_linux.h +++ b/release/src-rt/emf/emfconf/emfu_linux.h @@ -1,5 +1,5 @@ /* - * Copyright (C) 2009, Broadcom Corporation + * Copyright (C) 2010, Broadcom Corporation * All Rights Reserved. * * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation; @@ -7,7 +7,7 @@ * or duplicated in any form, in whole or in part, without the prior * written permission of Broadcom Corporation. * - * $Id: emfu_linux.h,v 1.1 2007/03/17 03:14:23 Exp $ + * $Id: emfu_linux.h 241182 2011-02-17 21:50:03Z gmo $ */ #ifndef _EMFU_LINUX_H_ diff --git a/release/src-rt/emf/emfconf/emfu_linux.o b/release/src-rt/emf/emfconf/emfu_linux.o new file mode 100644 index 0000000000000000000000000000000000000000..5c6b542969035685c33f6b6519c31c2a5690bed2 GIT binary patch literal 2620 zcwU88O>7%g5dOS&oHz;KGywvnu!|fVAhO&vhY$tHkc0*)Dv>IrNK|tCvv#cdXW3m> zi9m`~6{$jqEfNPJRmh6?>8VcI!ikC;IdbTMV@{kw;=m!2nc25nKQDhzdOQ2gd^0=m zy?JBrt**Zn3Wea05Qfl0z(xcZjALWoMKgFDBj_JfOTew9cCsJ7(S4A#@ngrp_nj)f z>ulqGr-*xe8>O1>iAm}_U9ilc8uoPCFQil$~1<|S~@Vfzf)yas0$_meJ1ZT&4C>t`uWnz-{c z*_Mt(5?U(*Uh6;Q$vHBQca-gyNOZdsZeHn#;@OltBH!_s#J9KT+sBHQZc~oR9p*%V zZ$y0M(*+!PIjU}sQgwNX-Q zdaYsZs<~>lQOMbqdRZ-$%4)t@D(NQEVCnT@%_=YQyQvqh`tP`~yu7H+T)6n|%j$e; zE=6}YW$o7NT%M$D3c2mSnR+#4>pM15#hjf(DsNe=ELZBKhOin%6RBEJ&o|4dT)uLC zj?@h%bF_05K2>PcYI@xcZqI)V-XrcaQ4eQmo+v$g+>_7Ij7feI1XOYy_57(lQO5$N zJskFUs{i5*Ki;bz|NnSYqMV!Ir^LKTiO1h%{5sIrFBgcX26#MPL;pJFheaN|jwpKT zcoY5cHUs(jwhixnPU3wi@gkl*>&djIe@MJD5-;SO^a-0-8L#k`N~W%(P;FSco9jSa)N+*M8p)9{aTYPUJe!Qi#T|?d0+*Rb@}_6M z#di8f^EqR$?xQ4cv;IloCzekEzp#87IQ8@sRNf<0fD0iJXC)-!EHS21TO%1IxfK%r zJ1n08+9BcpGs|b;UeFP0oTu!^eTHz9rtlist_lock); - ptr = igsc_info->rtlist_head.next; - while (ptr != &igsc_info->rtlist_head) + for (ptr = igsc_info->rtlist_head.next; + ptr != &igsc_info->rtlist_head; ptr = ptr->next) { rtl_ptr = clist_entry(ptr, igsc_rtlist_t, list); - tmp = ptr->next; osl_timer_del(rtl_ptr->rtlist_timer); emfc_rtport_del(igsc_info->emf_handle, rtl_ptr->ifp); clist_delete(ptr); MFREE(igsc_info->osh, rtl_ptr, sizeof(igsc_rtlist_t)); - ptr = tmp; } OSL_UNLOCK(igsc_info->rtlist_lock); diff --git a/release/src-rt/emf/igsconf/Makefile b/release/src-rt/emf/igsconf/Makefile old mode 100644 new mode 100755 index b2ae83e64d..aaf9b9abad --- a/release/src-rt/emf/igsconf/Makefile +++ b/release/src-rt/emf/igsconf/Makefile @@ -1,5 +1,5 @@ # -# $Id: Makefile,v 1.3 2008/08/12 17:43:48 Exp $ +# $Id: Makefile 241182 2011-02-17 21:50:03Z gmo $ # CROSS = diff --git a/release/src-rt/emf/igsconf/igs b/release/src-rt/emf/igsconf/igs new file mode 100755 index 0000000000000000000000000000000000000000..948b659a02093bd4a876ec7b9afdfb4635510b95 GIT binary patch literal 8496 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 literal 0 HcwPel00001 diff --git a/release/src-rt/emf/igsconf/igsu.c b/release/src-rt/emf/igsconf/igsu.c old mode 100644 new mode 100755 index 4e92835c3d..e10b564a8a --- a/release/src-rt/emf/igsconf/igsu.c +++ b/release/src-rt/emf/igsconf/igsu.c @@ -2,7 +2,7 @@ * IGSL Command Line Utility: This utility can be used to add/remove * snooping capability on desired bridge interface. * - * Copyright (C) 2009, Broadcom Corporation + * Copyright (C) 2010, Broadcom Corporation * All Rights Reserved. * * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation; @@ -10,7 +10,7 @@ * or duplicated in any form, in whole or in part, without the prior * written permission of Broadcom Corporation. * - * $Id: igsu.c,v 1.5 2007/10/13 00:54:08 Exp $ + * $Id: igsu.c 241182 2011-02-17 21:50:03Z gmo $ */ #include #include diff --git a/release/src-rt/emf/igsconf/igsu.h b/release/src-rt/emf/igsconf/igsu.h old mode 100644 new mode 100755 index 26cd78f105..1d4c5d8b68 --- a/release/src-rt/emf/igsconf/igsu.h +++ b/release/src-rt/emf/igsconf/igsu.h @@ -1,5 +1,5 @@ /* - * Copyright (C) 2009, Broadcom Corporation + * Copyright (C) 2010, Broadcom Corporation * All Rights Reserved. * * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation; @@ -7,7 +7,7 @@ * or duplicated in any form, in whole or in part, without the prior * written permission of Broadcom Corporation. * - * $Id: igsu.h,v 1.3 2007/07/11 23:23:32 Exp $ + * $Id: igsu.h 241182 2011-02-17 21:50:03Z gmo $ */ #ifndef _IGSU_H_ diff --git a/release/src-rt/emf/igsconf/igsu.o b/release/src-rt/emf/igsconf/igsu.o new file mode 100644 index 0000000000000000000000000000000000000000..901c2078cca8d4574dfb29e236ba52f27ee68c66 GIT binary patch literal 6188 zcwVhoZD?Fs8GdKx&YdJpcW>6%jT-e%caqHR#yH7l-E^rsw$p7EvP-s`N|Zn{A2%PE zNyeGU+CrgWZNVQgQ?zOV{ZZ?-E+|a;B}H0V#Fc`7DlF)a3jHBV#R?VsBVb{CpZlJh zIWuh<3m&-Vz3=zOIqx}l=IFkmH+()HdBaByRK{8t!+oC|R_fYDfESqElVr zJF9^^m1|vXbiHiR)iTlhC8A^etn#yOsd3#7FdkuEiDgP*i`dhhfKAuBbQ|I5B6)fZ zBsx0(7W;^@j|g2X+jODaPUp*QwC4Ks)BDjrinoSOoF@3MRDR65!;$b05GUdYE+Y%cg4eAL@%l0Wi1?R?H6tMl&_ zE{kjb`z2~=VaaqPZ0%(m-*WS28~y;r4d^o0LhethPXo(TD*lMbtdyr4$&-4;< z8lW>SznkBE)DlTBzME?d8OYj3FcP9~7?7{#uy0A$3w1aaiPM=<6TPEqqRSkMc(sIn zbR*9bN=DWPa>Hzc$XJG)#W9Sy`0-LJzmM|!Af0n-Geo~+c-FPs#ypA3t83LB=s9H* zc3^XY@iAp*mhHf{$e(rPQD?4QiECHl+PU=|H8!j7Wv=g~a>BS+jvE)sySd&2#+vE{ zsdt-JZ>%Hlw@6ggn+&OUKjYnX^&X&$U5#9G>oGO=^25FYKgKy(8?}G5u43c3s>A9= z?ZUAMH>Ss}3DHT0KPl-p!Y9bj`=V~ zu6Jo*lQp`+YZT`-s$UbVhi#aAJ}gq06W7R#my>9-b(7GoCol-^g7<%TW$>Z8t9I?(wK?k%pH*K4lrCNd)4eZ%!Has9XK zyN7i20&PAP*DIBZhuHjlo}VxBlh{PT{w#o|!7xb~2N(Z9A2p$xJ!6y<1+s)?{lV zFkmozG^Ia~XRwIWy~In&{wM zGBxYi#d*8nFgfphcfn!fjK8`6UCyw|pK_Qy?SL+J-TdF2%I1c@<2rE%@OKuR{ESoB zzz;YGw2FVTuSx+v4Ng#w6EGjo&k!p&v!)RWCPsfDSYWNPM>J|@pY7}k2(yes7r z@RFbJnVnB3XQ?O68`haC(o+odCyozO;cPZ5v_Cb&nSHyAyDg3 zctFVwYql^vdoL^bt>kddnNso%xi(D>eu00LsOGoZbVDt{P;eL3<}voXg?%C8gE#=_i1vAUa%zgz)w?cUG8opny89x#5Yd0@txxMPLRacMAi7-Be54#a)W#c zKd0&W)PrASo==Q#v)s`-IS*=K)7Y~_x0t|yc9QtTnjkjaUN<{^O)HdMGkxfEgZ@<^ zZ3ODH0yQ3h8>Ei_)ozvmN99p)m-^XWyLz`3-l_N#gjkyB%Ow3f;S)aA8~y%)!rvu1 zAMPmqNs{x!!w-|32UnE5J_2n2hc%Q&`Vo;9btCOb_ zcplO4HJ)=CewpVr4gW3AH#Ph^&v!NaBcAVR_#b(0^H=dd@f_9gKl7Z>aD4NrzfYz3k(T-ecgp!;?v%5- z@dfG2ZTNQ!I2X7Zd`o&3@`Fl#RLPA%u0{ISY>~YHxoIW00zMyBr-3v45PF@`Q-J6l zz-FJwwfaPE0670ziTlLQZs2^T4S~;a%qQ{UoM^;%0qE-PhyN9y_`d{w{;l;f;EO~L zmE8uv*u~-6$akj2&}7)I=(b=nRiQkAFPPg1&=)A%V_t zMcF$EI^P)|fX?vuO8ye)T>OtgZqRlzph591L9qlz9=c)x-JdOW83UNGgn0ex8EBMOcx`hNi`0~X!@ literal 0 HcwPel00001 diff --git a/release/src-rt/emf/igsconf/igsu_linux.c b/release/src-rt/emf/igsconf/igsu_linux.c old mode 100644 new mode 100755 index 42b31fe0d3..a9f7c021f3 --- a/release/src-rt/emf/igsconf/igsu_linux.c +++ b/release/src-rt/emf/igsconf/igsu_linux.c @@ -1,7 +1,7 @@ /* * IGSL Command Line Utility Linux specific code * - * Copyright (C) 2009, Broadcom Corporation + * Copyright (C) 2010, Broadcom Corporation * All Rights Reserved. * * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation; @@ -9,7 +9,7 @@ * or duplicated in any form, in whole or in part, without the prior * written permission of Broadcom Corporation. * - * $Id: igsu_linux.c,v 1.1 2007/03/17 03:15:10 Exp $ + * $Id: igsu_linux.c 241182 2011-02-17 21:50:03Z gmo $ */ #include diff --git a/release/src-rt/emf/igsconf/igsu_linux.h b/release/src-rt/emf/igsconf/igsu_linux.h old mode 100644 new mode 100755 index e24e58c0bd..ce802e3cf1 --- a/release/src-rt/emf/igsconf/igsu_linux.h +++ b/release/src-rt/emf/igsconf/igsu_linux.h @@ -1,5 +1,5 @@ /* - * Copyright (C) 2009, Broadcom Corporation + * Copyright (C) 2010, Broadcom Corporation * All Rights Reserved. * * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation; @@ -7,7 +7,7 @@ * or duplicated in any form, in whole or in part, without the prior * written permission of Broadcom Corporation. * - * $Id: igsu_linux.h,v 1.1 2007/03/17 03:15:10 Exp $ + * $Id: igsu_linux.h 241182 2011-02-17 21:50:03Z gmo $ */ #ifndef _IGSU_LINUX_H_ diff --git a/release/src-rt/emf/igsconf/igsu_linux.o b/release/src-rt/emf/igsconf/igsu_linux.o new file mode 100644 index 0000000000000000000000000000000000000000..1152c45fa08ca5444da00e0eb456eb2cb3edc3cc GIT binary patch literal 2620 zcwU88U1%d!6#g#iA@q*PMc`IaJJ}E4=srl=__1T)`%V?# zb+&Q8Q^dW_7VdU7an#wsVJD6sI@)0i5wzmk?KZT?!ORdc7qNy2$c?leJ*glOmufdtY{iMrLTYrnk`WcFoChiFkyX^ZK=ERh&T@(ApXF zJ=*K*?pjBsJ(l-39XZ<%j={0yIKzQB!9DQLgkwJ8oxO;)<*r%Sj+G#{7iV0o#ajy1 zrbD&qP;EL?n-0~cL$&EpZ8}t&&HzrrJ9vJ+&eqjZu2R)q`#VirZIslS zUTc`UYOY#s6moW@URDdGvYKy}O1jB3SbDu!v&swnZt8`r{yQ!%EiI_i7cag0vO1TV zP0`&=S-UkmmnUhPLT>wSre00i`i_lMF=ywH%3BsI%awYmA*@ExM5&djIe@MJhi5K$b2+sC|$FBso13X_!$AlIo{~IYE zqj$Qa?ss_)d989hgBJIdgyl8LL)J&|dl%9O2fV`Q-JI~F-S+W70LSR}OCB+df&1ba z<}+QCFyH5*gkPkmAz^vYZ&Cn9A&)Qy;Ww9u3ZFwr`j$9@6$$e`t_ASr0Ddoka{(-$ zA>&2>%XgOX2LXI7fIkl4&jNTqfWHi2RLWK}OYN_@lPVywwv^__d4A0D;{reCn3bh& zmo@eGo4RFZxz!luTVmq1v!?H`l(nsO2chRgyy^;w)lxc{Ui2i8~nU2R4~U@}_6M z#di8f^EqR$?xQ4cv;IloCzekEzp#87IQ8`7RNg~Wfb$^{XE`L|EHb82TO}DKxfK%r zJ1n08+9BcpGs|b;UeF + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +typedef u_int64_t u64; +typedef u_int32_t u32; +typedef u_int16_t u16; +typedef u_int8_t u8; +#include +#include + +static void usage(char *av0); +static void syserr(char *s); +static void et_find(int s, struct ifreq *ifr); +static int et_check(int s, struct ifreq *ifr); + + + +char buf[16 * 1024]; + +#define VECLEN 5 + +int +main(int ac, char *av[]) +{ + char *interface = NULL; + struct ifreq ifr; + char *endptr; + int arg; + int vecarg[VECLEN]; + int s; + static int optind; + et_var_t var; + + if (ac < 2) + usage(av[0]); + + optind = 1; + + if (av[1][0] == '-') { + if ((av[1][1] != 'a') && (av[1][1] != 'i')) + usage(av[0]); + if (ac < 4) + usage(av[0]); + interface = av[2]; + optind += 2; + } + + if ((s = socket(AF_INET, SOCK_DGRAM, 0)) < 0) + syserr("socket"); + + if (interface) + strncpy(ifr.ifr_name, interface, sizeof (ifr.ifr_name)); + else + et_find(s, &ifr); + + if (!*ifr.ifr_name) { + fprintf(stderr, "et interface not found\n"); + exit(1); + } + + if (strcmp(av[optind], "up") == 0) { + if (ioctl(s, SIOCSETCUP, (caddr_t)&ifr) < 0) + syserr("etcup"); + } else if (strcmp(av[optind], "down") == 0) { + if (ioctl(s, SIOCSETCDOWN, (caddr_t)&ifr) < 0) + syserr("etcdown"); + } else if (strcmp(av[optind], "loop") == 0) { + if (optind >= (ac -1)) + usage(av[0]); + arg = atoi(av[optind + 1]); + ifr.ifr_data = (caddr_t) &arg; + if (ioctl(s, SIOCSETCLOOP, (caddr_t)&ifr) < 0) + syserr("etcloop"); + } else if (strcmp(av[optind], "dump") == 0) { + ifr.ifr_data = buf; + if (ioctl(s, SIOCGETCDUMP, (caddr_t)&ifr) < 0) + syserr("etcdump"); + printf("%s\n", buf); + } else if (strcmp(av[optind], "msglevel") == 0) { + if (optind >= (ac -1)) + usage(av[0]); + arg = strtol(av[optind + 1], &endptr, 0); + ifr.ifr_data = (caddr_t) &arg; + if (ioctl(s, SIOCSETCSETMSGLEVEL, (caddr_t)&ifr) < 0) + syserr("etcsetmsglevel"); + } else if (strcmp(av[optind], "promisc") == 0) { + if (optind >= (ac -1)) + usage(av[0]); + arg = atoi(av[optind + 1]); + ifr.ifr_data = (caddr_t) &arg; + if (ioctl(s, SIOCSETCPROMISC, (caddr_t)&ifr) < 0) + syserr("etcpromisc"); + } else if (strcmp(av[optind], "qos") == 0) { + if (optind >= (ac -1)) + usage(av[0]); + arg = atoi(av[optind + 1]); + ifr.ifr_data = (caddr_t) &arg; + if (ioctl(s, SIOCSETCQOS, (caddr_t)&ifr) < 0) + syserr("etcqos"); + } else if (strcmp(av[optind], "speed") == 0) { + if (optind >= (ac -1)) + usage(av[0]); + if (strcmp(av[optind+1], "auto") == 0) + arg = -1; + else if (strcmp(av[optind+1], "10half") == 0) + arg = 0; + else if (strcmp(av[optind+1], "10full") == 0) + arg = 1; + else if (strcmp(av[optind+1], "100half") == 0) + arg = 2; + else if (strcmp(av[optind+1], "100full") == 0) + arg = 3; + else if (strcmp(av[optind+1], "1000full") == 0) + arg = 5; + else + usage(av[0]); + + ifr.ifr_data = (caddr_t) &arg; + if (ioctl(s, SIOCSETCSPEED, (caddr_t)&ifr) < 0) + syserr("etcspeed"); + } + else if (strcmp(av[optind], "phyrd") == 0) { + int cmd = -1; + + if ((ac < (optind + 2)) || (ac > (optind + 3))) { + usage(av[0]); + } else if (ac == (optind + 3)) { + /* PHY address provided */ + vecarg[0] = strtoul(av[optind + 1], NULL, 0) << 16;; + vecarg[0] |= strtoul(av[optind + 2], NULL, 0) & 0xffff; + cmd = SIOCGETCPHYRD2; + } else { + /* "My" PHY address implied */ + vecarg[0] = strtoul(av[optind + 1], NULL, 0); + cmd = SIOCGETCPHYRD; + } + ifr.ifr_data = (caddr_t) vecarg; + if (ioctl(s, cmd, (caddr_t)&ifr) < 0) + syserr("etcphyrd"); + + printf("0x%04x\n", vecarg[1]); + } else if (strcmp(av[optind], "phywr") == 0) { + int cmd = -1; + + if ((ac < (optind + 3)) || (ac > (optind + 4))) { + usage(av[0]); + } else if (ac == (optind + 4)) { + vecarg[0] = strtoul(av[optind + 1], NULL, 0) << 16;; + vecarg[0] |= strtoul(av[optind + 2], NULL, 0) & 0xffff; + vecarg[1] = strtoul(av[optind + 3], NULL, 0); + cmd = SIOCSETCPHYWR2; + } else { + vecarg[0] = strtoul(av[optind + 1], NULL, 0); + vecarg[1] = strtoul(av[optind + 2], NULL, 0); + cmd = SIOCSETCPHYWR; + } + ifr.ifr_data = (caddr_t) vecarg; + if (ioctl(s, cmd, (caddr_t)&ifr) < 0) + syserr("etcphywr"); + } else if (strcmp(av[optind], "robord") == 0) { + if (ac != (optind + 3)) + usage(av[0]); + + vecarg[0] = strtoul(av[optind + 1], NULL, 0) << 16;; + vecarg[0] |= strtoul(av[optind + 2], NULL, 0) & 0xffff; + + ifr.ifr_data = (caddr_t) vecarg; + if (ioctl(s, SIOCGETCROBORD, (caddr_t)&ifr) < 0) + syserr("etcrobord"); + + printf("0x%04x\n", vecarg[1]); + } else if (strcmp(av[optind], "robowr") == 0) { + if (ac != (optind + 4)) + usage(av[0]); + + vecarg[0] = strtoul(av[optind + 1], NULL, 0) << 16;; + vecarg[0] |= strtoul(av[optind + 2], NULL, 0) & 0xffff; + vecarg[1] = strtoul(av[optind + 3], NULL, 0); + + ifr.ifr_data = (caddr_t) vecarg; + if (ioctl(s, SIOCSETCROBOWR, (caddr_t)&ifr) < 0) + syserr("etcrobowr"); + } else if (strcmp(av[optind], "clear_dump") == 0) { + if ((ac > (optind + 2))) + usage(av[0]); + + var.set = 1; + var.cmd = IOV_ET_CLEAR_DUMP; + var.buf = NULL; + ifr.ifr_data = (caddr_t) &var; + if (ioctl(s, SIOCSETGETVAR, (caddr_t)&ifr) < 0) + syserr("etccleardump"); + } else { + if (strcmp(av[optind], "switch_mode") == 0) { + int all = 0; + + /* GET case */ + if (ac == (optind + 1)) { + var.set = 0; + vecarg[0] = VECLEN; + all = 1; + } else if (ac == (optind + 2)) { + var.set = 0; + vecarg[0] = strtoul(av[optind + 1], NULL, 0); + all = (int)(vecarg[0] == VECLEN); + } else { + if (ac != (optind + 3)) + usage(av[0]); + + vecarg[0] = strtoul(av[optind + 1], NULL, 0); + vecarg[1] = strtoul(av[optind + 2], NULL, 0); + if (vecarg[1] > 3) + usage(av[0]); + + var.set = 1; + } + + var.len = VECLEN * sizeof(int); + var.cmd = IOV_ET_POWER_SAVE_MODE; + var.buf = &vecarg; + + ifr.ifr_data = (caddr_t) &var; + if (ioctl(s, SIOCSETGETVAR, (caddr_t)&ifr) < 0) + syserr("etcswitchmode"); + + if (!var.set) { + if (all) + printf("phy power save mode for all phys:" + " %d %d %d %d %d \n", + vecarg[0], vecarg[1], vecarg[2], + vecarg[3], vecarg[4]); + else + printf("phy power save mode for phy %d mode %d\n", + vecarg[0], vecarg[1]); + } + } else { + usage(av[0]); + } + } + + return (0); +} + +static void +usage(char *av0) +{ + fprintf(stderr, "usage: %s [ [ -a | -i ] interface ] and one of:\n" + "\tup\n" + "\tdown\n" + "\tloop <0 or 1>\n" + "\tdump\n" + "\tclear_dump\n" + "\tmsglevel (error=1, trace=2, prhdr=4, prpkt=8)\n" + "\tpromisc <0 or 1>\n" + "\tqos <0 or 1>\n" + "\tspeed \n" + "\tphyrd [] \n" + "\tphywr [] \n" + "\trobord \n" + "\trobowr \n" + "\tswitch_mode (mode 0, 1, 2, 3)\n" + , + av0); + exit(1); +} + +static void +et_find(int s, struct ifreq *ifr) +{ + char proc_net_dev[] = "/proc/net/dev"; + FILE *fp; + char buf[512], *c, *name; + + ifr->ifr_name[0] = '\0'; + + /* eat first two lines */ + if (!(fp = fopen(proc_net_dev, "r")) || + !fgets(buf, sizeof(buf), fp) || + !fgets(buf, sizeof(buf), fp)) + return; + + while (fgets(buf, sizeof(buf), fp)) { + c = buf; + while (isspace(*c)) + c++; + if (!(name = strsep(&c, ":"))) + continue; + strncpy(ifr->ifr_name, name, IFNAMSIZ); + if (et_check(s, ifr) == 0) + break; + ifr->ifr_name[0] = '\0'; + } + + fclose(fp); +} + +static int +et_check(int s, struct ifreq *ifr) +{ + struct ethtool_drvinfo info; + + memset(&info, 0, sizeof(info)); + info.cmd = ETHTOOL_GDRVINFO; + ifr->ifr_data = (caddr_t)&info; + if (ioctl(s, SIOCETHTOOL, (caddr_t)ifr) < 0) { + /* print a good diagnostic if not superuser */ + if (errno == EPERM) + syserr("siocethtool"); + return (-1); + } + + if (!strncmp(info.driver, "et", 2)) + return (0); + else if (!strncmp(info.driver, "bcm57", 5)) + return (0); + + return (-1); +} + +static void +syserr(char *s) +{ + perror(s); + exit(1); +} diff --git a/release/src-rt/et/sys/et_dbg.h b/release/src-rt/et/sys/et_dbg.h index 2bb793c7c2..1ffaf06155 100644 --- a/release/src-rt/et/sys/et_dbg.h +++ b/release/src-rt/et/sys/et_dbg.h @@ -16,8 +16,6 @@ #ifndef _et_dbg_ #define _et_dbg_ -#define ET_ERROR(args) if (!(et_msg_level & 1)) ; else printf args -#define ET_TRACE(args) if (!(et_msg_level & 2)) ; else printf args #ifdef BCMDBG struct ether_header; extern void etc_prhdr(char *msg, struct ether_header *eh, uint len, int unit); @@ -29,9 +27,14 @@ extern void etc_prhex(char *msg, uchar *buf, uint nbytes, int unit); * 2 one-line frame tx/rx summary * 3 complex frame tx/rx in hex */ +#define ET_ERROR(args) if (!(et_msg_level & 1)) ; else printf args +//#define ET_TRACE(args) if (!(et_msg_level & 2)) ; else printf args +#define ET_TRACE(args) printf args #define ET_PRHDR(msg, eh, len, unit) if (!(et_msg_level & 4)) ; else etc_prhdr(msg, eh, len, unit) #define ET_PRPKT(msg, buf, len, unit) if (!(et_msg_level & 8)) ; else etc_prhex(msg, buf, len, unit) #else /* BCMDBG */ +#define ET_ERROR(args) +#define ET_TRACE(args) #define ET_PRHDR(msg, eh, len, unit) #define ET_PRPKT(msg, buf, len, unit) #endif /* BCMDBG */ diff --git a/release/src-rt/et/sys/et_linux.c b/release/src-rt/et/sys/et_linux.c index 8c3f2f6dfb..654759e983 100644 --- a/release/src-rt/et/sys/et_linux.c +++ b/release/src-rt/et/sys/et_linux.c @@ -36,7 +36,6 @@ #ifdef SIOCETHTOOL #include #endif /* SIOCETHTOOL */ -#include #include #include @@ -207,9 +206,6 @@ static void et_sendup(et_info_t *et, struct sk_buff *skb); #ifdef BCMDBG static void et_dumpet(et_info_t *et, struct bcmstrbuf *b); #endif /* BCMDBG */ -#if defined(HAVE_POLL_CONTROLLER) || defined(CONFIG_NET_POLL_CONTROLLER) -static void et_poll_controller(struct net_device *dev); -#endif /* recognized PCI IDs */ static struct pci_device_id et_id_table[] __devinitdata = { @@ -518,10 +514,6 @@ et_probe(struct pci_dev *pdev, const struct pci_device_id *ent) dev->weight = (ET_GMAC(et->etc) ? 64 : 32); #endif /* BCM_NAPI */ -#if defined(HAVE_POLL_CONTROLLER) || defined(CONFIG_NET_POLL_CONTROLLER) - dev->poll_controller = et_poll_controller; -#endif - if (register_netdev(dev)) { ET_ERROR(("et%d: register_netdev() failed\n", unit)); goto fail; @@ -852,6 +844,7 @@ et_start(struct sk_buff *skb, struct net_device *dev) ET_TRACE(("et%d: et_start: len %d\n", et->etc->unit, skb->len)); ET_LOG("et%d: et_start: len %d", et->etc->unit, skb->len); + /* put it on the tx queue and call sendnext */ ET_TXQ_LOCK(et); __skb_queue_tail(&et->txq[q], skb); @@ -1192,7 +1185,6 @@ et_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd) bool get = 0, set; et_var_t *var = NULL; void *buffer = NULL; - struct mii_ioctl_data *data = (struct mii_ioctl_data *)&ifr->ifr_data; et = ET_INFO(dev); @@ -1231,14 +1223,6 @@ et_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd) size = sizeof(et_var_t); set = TRUE; break; - case SIOCGMIIPHY: - data->phy_id = et->etc->phyaddr; - case SIOCGMIIREG: - data->val_out = (*et->etc->chops->phyrd)(et->etc->ch, data->phy_id, data->reg_num); - return 0; - case SIOCSMIIREG: - (*et->etc->chops->phywr)(et->etc->ch, data->phy_id, data->reg_num, data->val_in); - return 0; default: size = sizeof(int); get = FALSE; set = TRUE; @@ -1688,9 +1672,19 @@ et_error(et_info_t *et, struct sk_buff *skb, void *rxh) } } +#ifdef CONFIG_IP_NF_DNSMQ +typedef int (*dnsmqHitHook)(struct sk_buff *skb); +extern dnsmqHitHook dnsmq_hit_hook; +#endif + static inline int32 et_ctf_forward(et_info_t *et, struct sk_buff *skb) { +#ifdef CONFIG_IP_NF_DNSMQ + if(dnsmq_hit_hook&&dnsmq_hit_hook(skb)) + return (BCME_ERROR); +#endif + #ifdef HNDCTF /* use slow path if ctf is disabled */ if (!CTF_ENAB(et->cih)) @@ -1719,6 +1713,7 @@ et_ctf_forward(et_info_t *et, struct sk_buff *skb) return (BCME_ERROR); } + void BCMFASTPATH et_sendup(et_info_t *et, struct sk_buff *skb) { @@ -1756,26 +1751,6 @@ et_sendup(et_info_t *et, struct sk_buff *skb) if (flags) goto err; - /* check for invalid data on the unit 1, workaround hw bug */ - if (etc->chip == BCM4710_CHIP_ID && etc->unit == 1) - { - uint8 *ether_dhost = ((struct ether_header*)skb->data)->ether_dhost; - if ( !(flags & (RXF_MULT | RXF_BRDCAST)) != !ETHER_ISMULTI(ether_dhost) || - !(flags & RXF_BRDCAST) != !ETHER_ISBCAST(ether_dhost) || - ((flags & (RXF_MULT | RXF_BRDCAST | RXF_MISS)) == 0 && - ether_cmp(ether_dhost, &etc->cur_etheraddr))) - { - uchar eabuf[32]; - bcm_ether_ntoa((struct ether_addr*)ether_dhost, eabuf); - ET_ERROR(("et%d: rx: bad dest address %s [%c%c%c]\n", - etc->unit, eabuf, (flags & RXF_MULT) ? 'M' : ' ', - (flags & RXF_BRDCAST) ? 'B' : ' ', (flags & RXF_MISS) ? 'P' : ' ')); - /* schedule reset */ - et->events |= INTR_ERROR; - goto err; - } - } - skb->dev = et->dev; #ifdef PLC @@ -1910,19 +1885,3 @@ et_phywr(et_info_t *et, uint phyaddr, uint reg, uint16 val) et->etc->chops->phywr(et->etc->ch, phyaddr, reg, val); ET_UNLOCK(et); } - -#if defined(HAVE_POLL_CONTROLLER) || defined(CONFIG_NET_POLL_CONTROLLER) -static void -et_poll_controller(struct net_device *dev) -{ - et_info_t *et = ET_INFO(dev); - - disable_irq(et->pdev->irq); -#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 20) - et_isr(et->pdev->irq, et); -#else - et_isr(et->pdev->irq, et, NULL); -#endif - enable_irq(et->pdev->irq); -} -#endif diff --git a/release/src-rt/et/sys/etc.c b/release/src-rt/et/sys/etc.c index 3f5dda34ad..070443b712 100644 --- a/release/src-rt/et/sys/etc.c +++ b/release/src-rt/et/sys/etc.c @@ -391,6 +391,11 @@ etc_ioctl(etc_info_t *etc, int cmd, void *arg) if (vec) { ET_TRACE(("etc_ioctl: ETCPHYWR to reg 0x%x <= 0x%x\n", vec[0], vec[1])); (*etc->chops->phywr)(etc->ch, etc->phyaddr, vec[0], (uint16)vec[1]); +#ifdef ETROBO + /* Invalidate current robo page */ + if (etc->robo && etc->phyaddr == EPHY_NOREG && vec[0] == 0x10) + ((robo_info_t *)etc->robo)->page = -1; +#endif } break; @@ -401,6 +406,11 @@ etc_ioctl(etc_info_t *etc, int cmd, void *arg) if (phyaddr < MAXEPHY) { reg = vec[0] & 0xffff; (*etc->chops->phywr)(etc->ch, phyaddr, reg, (uint16)vec[1]); +#ifdef ETROBO + /* Invalidate current robo page */ + if (etc->robo && phyaddr == EPHY_NOREG && reg == 0x10) + ((robo_info_t *)etc->robo)->page = -1; +#endif ET_TRACE(("etc_ioctl: ETCPHYWR2 to phy 0x%x, reg 0x%x <= 0x%x\n", phyaddr, reg, vec[1])); } diff --git a/release/src-rt/et/sys/etc.h b/release/src-rt/et/sys/etc.h index bb4fc86ca2..5acd13a8e4 100644 --- a/release/src-rt/et/sys/etc.h +++ b/release/src-rt/et/sys/etc.h @@ -17,7 +17,6 @@ #define _etc_h_ #include -#include #define MAXMULTILIST 32 @@ -194,7 +193,7 @@ etc_up2tc(uint32 up) { extern uint32 up2tc[]; - return (up2tc[(up) & MAXPRIO]); + return (up2tc[up]); } static inline uint32 diff --git a/release/src-rt/et/sys/etc47xx.c b/release/src-rt/et/sys/etc47xx.c index 983500a67c..61b0ffd77b 100644 --- a/release/src-rt/et/sys/etc47xx.c +++ b/release/src-rt/et/sys/etc47xx.c @@ -101,7 +101,7 @@ static void chipdumpregs(struct bcm4xxx *ch, bcmenetregs_t *regs, struct bcmstrb #endif /* BCMDBG */ /* chip interrupt bit error summary */ -#define I_ERRORS (I_PC | I_PD | I_DE | I_RU | I_RO | I_XU | I_TO) +#define I_ERRORS (I_PC | I_PD | I_DE | I_RU | I_RO | I_XU) #define DEF_INTMASK (I_XI | I_RI | I_ERRORS) struct chops bcm47xx_et_chops = { @@ -205,10 +205,6 @@ chipattach(etc_info_t *etc, void *osh, void *regsva) etc->coreunit = si_coreunit(ch->sih); etc->boardflags = getintvar(ch->vars, "boardflags"); - /* set boardflags for 5365 and 5350 */ - if (etc->chip == BCM5365_CHIP_ID || etc->chip == BCM5350_CHIP_ID) - etc->boardflags |= BFL_ENETROBO | BFL_ENETVLAN; - boardflags = etc->boardflags; boardtype = ch->sih->boardtype; @@ -679,9 +675,6 @@ chipinit(struct bcm4xxx *ch, uint options) /* set tx watermark */ W_REG(ch->osh, ®s->txwatermark, 56); - /* set tx duplex */ - W_REG(ch->osh, ®s->txcontrol, etc->duplex ? EXC_FD : 0); - /* * Optionally, disable phy autonegotiation and force our speed/duplex * or constrain our advertised capabilities. @@ -699,9 +692,6 @@ chipinit(struct bcm4xxx *ch, uint options) /* post dma receive buffers */ dma_rxfill(ch->di); - /* setup timer interrupt */ - W_REG(ch->osh, ®s->gptimer, 0); - /* lastly, enable interrupts */ if (options & ET_INIT_INTRON) et_intrson(etc->et); @@ -814,15 +804,6 @@ chipgetintrevents(struct bcm4xxx *ch, bool in_isr) if (intstatus & I_TO) events |= INTR_TO; - /* check for rx after tx for 3 seconds on the unit 1, */ - /* schedule reset if it's missing - possible rx stuck */ - if (ch->etc->chip == BCM4710_CHIP_ID && ch->etc->unit == 1) { - if (intstatus & I_RI) - W_REG(ch->osh, ®s->gptimer, 0); - else if (!R_REG(ch->osh, ®s->gptimer)) - W_REG(ch->osh, ®s->gptimer, 3 * 125000000); - } - return (events); } @@ -884,10 +865,6 @@ chiperrors(struct bcm4xxx *ch) etc->rxoflo++; } - if (intstatus & I_TO) { - ET_ERROR(("et%d: rx stuck suspected\n", etc->unit)); - } - if (intstatus & I_XU) { ET_ERROR(("et%d: transmit fifo underflow\n", etc->unit)); etc->txuflo++; @@ -1213,17 +1190,9 @@ chipphyinit(struct bcm4xxx *ch, uint phyaddr) phyid = chipphyrd(ch, phyaddr, 0x2); phyid |= chipphyrd(ch, phyaddr, 0x3) << 16; - if (phyid == 0x55210022) { - chipphywr(ch, phyaddr, 28, (uint16) (chipphyrd(ch, phyaddr, 28) & 0x0fff)); chipphywr(ch, phyaddr, 30, (uint16) (chipphyrd(ch, phyaddr, 30) | 0x3000)); chipphywr(ch, phyaddr, 22, (uint16) (chipphyrd(ch, phyaddr, 22) & 0xffdf)); - - chipphywr(ch, phyaddr, 28, (uint16) ((chipphyrd(ch, phyaddr, 28) & 0x0fff) | 0x1000)); - chipphywr(ch, phyaddr, 29, 1); - chipphywr(ch, phyaddr, 30, 4); - - chipphywr(ch, phyaddr, 28, (uint16) (chipphyrd( ch, phyaddr, 28) & 0x0fff)); } } @@ -1264,13 +1233,6 @@ chipphyforce(struct bcm4xxx *ch, uint phyaddr) } chipphywr(ch, phyaddr, 0, ctl); - - /* force Auto MDI-X for the AC101L phy */ - if (chipphyrd(ch, phyaddr, 2) == 0x0022 && - chipphyrd(ch, phyaddr, 3) == 0x5521) - { - chipphywr(ch, phyaddr, 23, 0x8000); - } } /* set selected capability bits in autonegotiation advertisement */ diff --git a/release/src-rt/et/sys/etcgmac.c b/release/src-rt/et/sys/etcgmac.c index be0bd573f3..44116edfa0 100644 --- a/release/src-rt/et/sys/etcgmac.c +++ b/release/src-rt/et/sys/etcgmac.c @@ -225,6 +225,7 @@ chipattach(etc_info_t *etc, void *osh, void *regsva) ET_ERROR(("et%d: chipattach: getvar(%s) not found\n", etc->unit, name)); goto fail; } +ET_TRACE(("et get local ether addr: %s = %s\n", name, var));//Yau bcm_ether_atoe(var, &etc->perm_etheraddr); if (ETHER_ISNULLADDR(&etc->perm_etheraddr)) { @@ -245,6 +246,7 @@ chipattach(etc_info_t *etc, void *osh, void *regsva) ET_ERROR(("et%d: chipattach: getvar(%s) not found\n", etc->unit, name)); goto fail; } +ET_TRACE(("et get phyaddr:: %s = %s\n", name, var));//Yau etc->phyaddr = bcm_atoi(var) & EPHY_MASK; /* nvram says no phy is present */ @@ -1045,11 +1047,12 @@ gmac_mf_add(ch_t *ch, struct ether_addr *mcaddr) { uint32 hash; mflist_t *entry; +#ifdef BCMDBG + char mac[ETHER_ADDR_STR_LEN]; +#endif /* BCMDBG */ /* add multicast addresses only */ if (!ETHER_ISMULTI(mcaddr)) { - char mac[ETHER_ADDR_STR_LEN]; - ET_ERROR(("et%d: adding invalid multicast address %s\n", ch->etc->unit, bcm_ether_ntoa(mcaddr, mac))); return (FAILURE); diff --git a/release/src-rt/include/amemc_core.h b/release/src-rt/include/amemc_core.h new file mode 100755 index 0000000000..5add67d1bd --- /dev/null +++ b/release/src-rt/include/amemc_core.h @@ -0,0 +1,152 @@ +/* + * BCM47XX ARM DDR2/DDR3 memory controlers. + * + * Copyright (C) 2010, Broadcom Corporation. All Rights Reserved. + * + * Permission to use, copy, modify, and/or distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY + * SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION + * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN + * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + * + * $Id$ + */ + +#ifndef _AMEMC_H +#define _AMEMC_H + +#ifdef _LANGUAGE_ASSEMBLY + +#if defined(IL_BIGENDIAN) && defined(BCMHND74K) +/* Swapped defines for big-endian code in 74K based chips */ + +#else /* !IL_BIGENDIAN || !BCMHND74K */ + +/* + * DDR23PHY registers + */ +#define DDR23PHY_PLL_STATUS 0x010 +#define DDR23PHY_PLL_CONFIG 0x014 +#define DDR23PHY_PLL_PRE_DIVIDER 0x018 +#define DDR23PHY_PLL_DIVIDER 0x01c +#define DDR23PHY_STATIC_VDL_OVERRIDE 0x030 +#define DDR23PHY_ZQ_PVT_COMP_CTL 0x03c +#define DDR23PHY_BL3_VDL_CALIBRATE 0x104 +#define DDR23PHY_BL3_VDL_STATUS 0x108 +#define DDR23PHY_BL3_READ_CONTROL 0x130 +#define DDR23PHY_BL3_WR_PREAMBLE_MODE 0x148 +#define DDR23PHY_BL2_VDL_CALIBRATE 0x204 +#define DDR23PHY_BL2_VDL_STATUS 0x208 +#define DDR23PHY_BL2_READ_CONTROL 0x230 +#define DDR23PHY_BL2_WR_PREAMBLE_MODE 0x248 +#define DDR23PHY_BL1_VDL_CALIBRATE 0x304 +#define DDR23PHY_BL1_VDL_STATUS 0x308 +#define DDR23PHY_BL1_READ_CONTROL 0x330 +#define DDR23PHY_BL1_WR_PREAMBLE_MODE 0x348 +#define DDR23PHY_BL0_VDL_CALIBRATE 0x404 +#define DDR23PHY_BL0_VDL_STATUS 0x408 +#define DDR23PHY_BL0_READ_CONTROL 0x430 +#define DDR23PHY_BL0_WR_PREAMBLE_MODE 0x448 + +/* + * PL341 registers + */ +#define PL341_memc_status 0x000 +#define PL341_memc_cmd 0x004 +#define PL341_direct_cmd 0x008 +#define PL341_memory_cfg 0x00c +#define PL341_refresh_prd 0x010 +#define PL341_cas_latency 0x014 +#define PL341_write_latency 0x018 +#define PL341_t_mrd 0x01c +#define PL341_t_ras 0x020 +#define PL341_t_rc 0x024 +#define PL341_t_rcd 0x028 +#define PL341_t_rfc 0x02c +#define PL341_t_rp 0x030 +#define PL341_t_rrd 0x034 +#define PL341_t_wr 0x038 +#define PL341_t_wtr 0x03c +#define PL341_t_xp 0x040 +#define PL341_t_xsr 0x044 +#define PL341_t_esr 0x048 +#define PL341_memory_cfg2 0x04c +#define PL341_memory_cfg3 0x050 +#define PL341_t_faw 0x054 +#define PL341_chip_0_cfg 0x200 +#define PL341_user_config0 0x304 + +#endif /* IL_BIGENDIAN && BCMHND74K */ + +#endif /* _LANGUAGE_ASSEMBLY */ + +#define MEMC_BURST_LENGTH (4) + +#define AI_DDRPHY_BASE (0x1800f000) + +/* Default configuration from bsp_config.h of _BCM953003RSP_ */ +/* (required) PLL clock */ +#define CFG_DDR_PLL_CLOCK (331250) /* KHz */ + +/* (required) CAS Latency (NOTE: could be affected by PLL clock) */ +#define CFG_DDR_CAS_LATENCY 5 + +/* (required) t_wr (picoseconds) */ +#define CFG_DDR_T_WR 15000 + +/* (optional) Refresh period t_refi (picoseconds) */ +#define CFG_DDR_REFRESH_PRD 7800000 + +/* (optional) t_rfc (picoseconds) */ +#define CFG_DDR_T_RFC 105000 + +/* + * Convenient macros + */ +#define MEMCYCLES(psec) (((psec) * (CFG_DDR_PLL_CLOCK) + 999999999) / 1000000000) + +/* + * Convenient macros (minimum requirement and truncated decimal) + */ +#define MEMCYCLES_MIN(psec) ((psec) * (CFG_DDR_PLL_CLOCK) / 1000000000) + +/* + * PLL clock configuration + */ +#define PLL_NDIV_INT_VAL (16 * (CFG_DDR_PLL_CLOCK) / 100000) + +/* + * Values for PL341 Direct Command Register + */ +#define MCHIP_CMD_PRECHARGE_ALL (0x0 << 18) +#define MCHIP_CMD_AUTO_REFRESH (0x1 << 18) +#define MCHIP_CMD_MODE_REG (0x2 << 18) +#define MCHIP_CMD_NOP (0x3 << 18) +#define MCHIP_MODEREG_SEL(x) ((x) << 16) +#define MCHIP_MR_WRITE_RECOVERY(x) (((x) - 1) << 9) +#define MCHIP_MR_DLL_RESET(x) ((x) << 8) +#define MCHIP_MR_CAS_LATENCY(x) ((x) << 4) +#if (MEMC_BURST_LENGTH == 4) +#define MCHIP_MR_BURST_LENGTH (2) +#else +#define MCHIP_MR_BURST_LENGTH (3) +#endif +#define MCHIP_EMR1_DLL_DISABLE(x) ((x) << 0) +#define MCHIP_EMR1_RTT_ODT_DISABLED (0) +#define MCHIP_EMR1_RTT_75_OHM (1 << 2) +#define MCHIP_EMR1_RTT_150_OHM (1 << 6) +#define MCHIP_EMR1_RTT_50_OHM ((1 << 6) | (1 << 2)) +#define MCHIP_EMR1_OCD_CALI_EXIT (0x0 << 7) +#define MCHIP_EMR1_OCD_CALI_DEFAULT (0x3 << 7) + +/* PVT calibration */ +#define PVT_MAX_RETRY (120) +#define PVT_MATCHED_COUNT (3) + +#endif /* _AMEMC_H */ diff --git a/release/src-rt/include/bcm20xx.h b/release/src-rt/include/bcm20xx.h deleted file mode 100644 index a372c2723b..0000000000 --- a/release/src-rt/include/bcm20xx.h +++ /dev/null @@ -1,1460 +0,0 @@ -/* - * Broadcom 20xx Digital Radios - * Chip-specific hardware definitions. - * - * Copyright (C) 2008, Broadcom Corporation - * All Rights Reserved. - * - * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation; - * the contents of this file may not be disclosed to third parties, copied - * or duplicated in any form, in whole or in part, without the prior - * written permission of Broadcom Corporation. - * - * $Id: bcm20xx.h,v 13.44.2.1 2008/07/26 00:31:29 Exp $ - */ - -#ifndef _BCM20XX_H -#define _BCM20XX_H - -/* generic radio id ragister */ -#define RADIO_IDCODE 0x01 - -#define RADIO_DEFAULT_CORE 0 - -/* 2050 registers */ -#define RADIO_2050_READ_OFF 0x80 /* Read offset for all registers but idcode */ - -#define RADIO_2050_PLL_VAL 0x41 -#define RADIO_2050_PWR_CTL 0x43 -#define RADIO_2050_CAL_CTL 0x50 -#define RADIO_2050_TX_CTL0 0x51 -#define RADIO_2050_TX_CTL1 0x52 -#define RADIO_2050_PLL_OFFSET 0x58 -#define RADIO_2050_PLL_CTL0 0x5a -#define RADIO_2050_PLL_CTL1 0x5b -#define RADIO_2050_PLL_CTL2 0x5c -#define RADIO_2050_PLL_CTL3 0x5d -#define RADIO_2050_RX_LPF 0x60 -#define RADIO_2050_PU_OVR0 0x75 -#define RADIO_2050_PU_OVR 0x76 -#define RADIO_2050_RC_CAL_OVR 0x78 -#define RADIO_2050_RX_CTL0 0x7a - -/* New/changed registers in 2050sc: */ -#define RADIO_2050SC_TX_CTL2 0x53 -#define RADIO_2050SC_TX_CTL3 0x54 -#define RADIO_2050SC_PLL_CTL4 0x5e -#define RADIO_2050SC_RCAL_VAL0 0x60 -#define RADIO_2050SC_RCAL_VAL1 0x61 -#define RADIO_2050SC_RCAL_IND 0x62 -#define RADIO_2050SC_AGC_OVR 0x63 -#define RADIO_2050SC_FLTR_OVR 0x64 -#define RADIO_2050SC_CRY_TRIM0 0x73 -#define RADIO_2050SC_CRY_TRIM1 0x74 -#define RADIO_2050SC_RX_CTL1 0x7b -#define RADIO_2050SC_RX_CTL2 0x7c -#define RADIO_2050SC_RX_CTL3 0x7d -#define RADIO_2050SC_LNA_BIAS 0x7e -#define RADIO_2050SC_REF_SEL 0x7f - -/* Bits in RX_CTL0: */ -#define RXC0_RSSI_RST 0x80 -#define RXC0_MODE_RSSI 0x40 -#define RXC0_MODE_OFF 0x20 -#define RXC0_MODE_CM 0x10 -#define RXC0_LAN_LOAD 0x08 -#define RXC0_OFF_ADJ_MASK 0x07 - -/* Bits in TX_CTL0: */ -#define TXC0_MODE_TXLPF 0x04 -#define TXC0_PA_TSSI_EN 0x02 -#define TXC0_TSSI_EN 0x01 - -/* Bits in TX_CTL1: */ -#define TXC1_PA_GAIN_MASK 0x60 -#define TXC1_PA_GAIN_3DB 0x40 -#define TXC1_PA_GAIN_2DB 0x20 -#define TXC1_TX_MIX_GAIN 0x10 -#define TXC1_OFF_I_MASK 0x0c -#define TXC1_OFF_Q_MASK 0x03 - -/* 2055 registers */ -#define RADIO_2055_READ_OFF 0x100 /* Read offset for all registers but idcode */ - -#define RADIO_2055_GEN_SPARE 0x00 -#define RADIO_2055_SP_PIN_PD 0x02 -#define RADIO_2055_SP_RSSI_CORE1 0x03 -#define RADIO_2055_SP_PD_MISC_CORE1 0x04 -#define RADIO_2055_SP_RSSI_CORE2 0x05 -#define RADIO_2055_SP_PD_MISC_CORE2 0x06 -#define RADIO_2055_SP_RX_GC1_CORE1 0x07 -#define RADIO_2055_SP_RX_GC2_CORE1 0x08 -#define RADIO_2055_SP_RX_GC1_CORE2 0x09 -#define RADIO_2055_SP_RX_GC2_CORE2 0x0a -#define RADIO_2055_SP_LPF_BW_SELECT_CORE1 0x0b -#define RADIO_2055_SP_LPF_BW_SELECT_CORE2 0x0c -#define RADIO_2055_SP_TX_GC1_CORE1 0x0d -#define RADIO_2055_SP_TX_GC2_CORE1 0x0e -#define RADIO_2055_SP_TX_GC1_CORE2 0x0f -#define RADIO_2055_SP_TX_GC2_CORE2 0x10 -#define RADIO_2055_MASTER_CNTRL1 0x11 -#define RADIO_2055_MASTER_CNTRL2 0x12 -#define RADIO_2055_PD_LGEN 0x13 -#define RADIO_2055_PD_PLL_TS 0x14 -#define RADIO_2055_PD_CORE1_LGBUF 0x15 -#define RADIO_2055_PD_CORE1_TX 0x16 -#define RADIO_2055_PD_CORE1_RXTX 0x17 -#define RADIO_2055_PD_CORE1_RSSI_MISC 0x18 -#define RADIO_2055_PD_CORE2_LGBUF 0x19 -#define RADIO_2055_PD_CORE2_TX 0x1a -#define RADIO_2055_PD_CORE2_RXTX 0x1b -#define RADIO_2055_PD_CORE2_RSSI_MISC 0x1c -#define RADIO_2055_PWRDET_LGEN 0x1d -#define RADIO_2055_PWRDET_LGBUF_CORE1 0x1e -#define RADIO_2055_PWRDET_RXTX_CORE1 0x1f -#define RADIO_2055_PWRDET_LGBUF_CORE2 0x20 -#define RADIO_2055_PWRDET_RXTX_CORE2 0x21 -#define RADIO_2055_RRCCAL_CNTRL_SPARE 0x22 -#define RADIO_2055_RRCCAL_N_OPT_SEL 0x23 -#define RADIO_2055_CAL_MISC 0x24 -#define RADIO_2055_CAL_COUNTER_OUT 0x25 -#define RADIO_2055_CAL_COUNTER_OUT2 0x26 -#define RADIO_2055_CAL_CVAR_CNTRL 0x27 -#define RADIO_2055_CAL_RVAR_CNTRL 0x28 -#define RADIO_2055_CAL_LPO_CNTRL 0x29 -#define RADIO_2055_CAL_TS 0x2a -#define RADIO_2055_CAL_RCCAL_READ_TS 0x2b -#define RADIO_2055_CAL_RCAL_READ_TS 0x2c -#define RADIO_2055_PAD_DRIVER 0x2d -#define RADIO_2055_XO_CNTRL1 0x2e -#define RADIO_2055_XO_CNTRL2 0x2f -#define RADIO_2055_XO_REGULATOR 0x30 -#define RADIO_2055_XO_MISC 0x31 -#define RADIO_2055_PLL_LF_C1 0x32 -#define RADIO_2055_PLL_CAL_VTH 0x33 -#define RADIO_2055_PLL_LF_C2 0x34 -#define RADIO_2055_PLL_REF 0x35 -#define RADIO_2055_PLL_LF_R1 0x36 -#define RADIO_2055_PLL_PFD_CP 0x37 -#define RADIO_2055_PLL_IDAC_CPOPAMP 0x38 -#define RADIO_2055_PLL_CP_REGULATOR 0x39 -#define RADIO_2055_PLL_RCAL 0x3a -#define RADIO_2055_RF_PLL_MOD0 0x3b -#define RADIO_2055_RF_PLL_MOD1 0x3c -#define RADIO_2055_RF_MMD_IDAC1 0x3d -#define RADIO_2055_RF_MMD_IDAC0 0x3e -#define RADIO_2055_RF_MMD_SPARE 0x3f -#define RADIO_2055_VCO_CAL1 0x40 -#define RADIO_2055_VCO_CAL2 0x41 -#define RADIO_2055_VCO_CAL3 0x42 -#define RADIO_2055_VCO_CAL4 0x43 -#define RADIO_2055_VCO_CAL5 0x44 -#define RADIO_2055_VCO_CAL6 0x45 -#define RADIO_2055_VCO_CAL7 0x46 -#define RADIO_2055_VCO_CAL8 0x47 -#define RADIO_2055_VCO_CAL9 0x48 -#define RADIO_2055_VCO_CAL10 0x49 -#define RADIO_2055_VCO_CAL11 0x4a -#define RADIO_2055_VCO_CAL12 0x4b -#define RADIO_2055_VCO_CAL13 0x4c -#define RADIO_2055_VCO_CAL14 0x4d -#define RADIO_2055_VCO_CAL15 0x4e -#define RADIO_2055_VCO_CAL16 0x4f -#define RADIO_2055_VCO_KVCO 0x50 -#define RADIO_2055_VCO_CAP_TAIL 0x51 -#define RADIO_2055_VCO_IDAC_VCO 0x52 -#define RADIO_2055_VCO_REGULATOR 0x53 -#define RADIO_2055_PLL_RF_VTH 0x54 -#define RADIO_2055_LGBUF_CEN_BUF 0x55 -#define RADIO_2055_LGEN_TUNE1 0x56 -#define RADIO_2055_LGEN_TUNE2 0x57 -#define RADIO_2055_LGEN_IDAC1 0x58 -#define RADIO_2055_LGEN_IDAC2 0x59 -#define RADIO_2055_LGEN_BIAS_CNT 0x5a -#define RADIO_2055_LGEN_BIAS_IDAC 0x5b -#define RADIO_2055_LGEN_RCAL 0x5c -#define RADIO_2055_LGEN_DIV 0x5d -#define RADIO_2055_LGEN_SPARE2 0x5e -#define RADIO_2055_CORE1_LGBUF_A_TUNE 0x5f -#define RADIO_2055_CORE1_LGBUF_G_TUNE 0x60 -#define RADIO_2055_CORE1_LGBUF_DIV 0x61 -#define RADIO_2055_CORE1_LGBUF_A_IDAC 0x62 -#define RADIO_2055_CORE1_LGBUF_G_IDAC 0x63 -#define RADIO_2055_CORE1_LGBUF_IDACFIL_OVR 0x64 -#define RADIO_2055_CORE1_LGBUF_SPARE 0x65 -#define RADIO_2055_CORE1_RXRF_SPC1 0x66 -#define RADIO_2055_CORE1_RXRF_REG1 0x67 -#define RADIO_2055_CORE1_RXRF_REG2 0x68 -#define RADIO_2055_CORE1_RXRF_RCAL 0x69 -#define RADIO_2055_CORE1_RXBB_BUFI_LPFCMP 0x6a -#define RADIO_2055_CORE1_RXBB_LPF 0x6b -#define RADIO_2055_CORE1_RXBB_MIDAC_HIPAS 0x6c -#define RADIO_2055_CORE1_RXBB_VGA1_IDAC 0x6d -#define RADIO_2055_CORE1_RXBB_VGA2_IDAC 0x6e -#define RADIO_2055_CORE1_RXBB_VGA3_IDAC 0x6f -#define RADIO_2055_CORE1_RXBB_BUFO_CTRL 0x70 -#define RADIO_2055_CORE1_RXBB_RCCAL_CTRL 0x71 -#define RADIO_2055_CORE1_RXBB_RSSI_CTRL1 0x72 -#define RADIO_2055_CORE1_RXBB_RSSI_CTRL2 0x73 -#define RADIO_2055_CORE1_RXBB_RSSI_CTRL3 0x74 -#define RADIO_2055_CORE1_RXBB_RSSI_CTRL4 0x75 -#define RADIO_2055_CORE1_RXBB_RSSI_CTRL5 0x76 -#define RADIO_2055_CORE1_RXBB_REGULATOR 0x77 -#define RADIO_2055_CORE1_RXBB_SPARE1 0x78 -#define RADIO_2055_CORE1_RXTXBB_RCAL 0x79 -#define RADIO_2055_CORE1_TXRF_SGM_PGA 0x7a -#define RADIO_2055_CORE1_TXRF_SGM_PAD 0x7b -#define RADIO_2055_CORE1_TXRF_CNTR_PGA1 0x7c -#define RADIO_2055_CORE1_TXRF_CNTR_PAD1 0x7d -#define RADIO_2055_CORE1_TX_RFPGA_IDAC 0x7e -#define RADIO_2055_CORE1_TX_PGA_PAD_TN 0x7f -#define RADIO_2055_CORE1_TX_PAD_IDAC1 0x80 -#define RADIO_2055_CORE1_TX_PAD_IDAC2 0x81 -#define RADIO_2055_CORE1_TX_MX_BGTRIM 0x82 -#define RADIO_2055_CORE1_TXRF_RCAL 0x83 -#define RADIO_2055_CORE1_TXRF_PAD_TSSI1 0x84 -#define RADIO_2055_CORE1_TXRF_PAD_TSSI2 0x85 -#define RADIO_2055_CORE1_TX_RF_SPARE 0x86 -#define RADIO_2055_CORE1_TXRF_IQCAL1 0x87 -#define RADIO_2055_CORE1_TXRF_IQCAL2 0x88 -#define RADIO_2055_CORE1_TXBB_RCCAL_CTRL 0x89 -#define RADIO_2055_CORE1_TXBB_LPF1 0x8a -#define RADIO_2055_CORE1_TX_VOS_CNCL 0x8b -#define RADIO_2055_CORE1_TX_LPF_MXGM_IDAC 0x8c -#define RADIO_2055_CORE1_TX_BB_MXGM 0x8d -#define RADIO_2055_CORE2_LGBUF_A_TUNE 0x8e -#define RADIO_2055_CORE2_LGBUF_G_TUNE 0x8f -#define RADIO_2055_CORE2_LGBUF_DIV 0x90 -#define RADIO_2055_CORE2_LGBUF_A_IDAC 0x91 -#define RADIO_2055_CORE2_LGBUF_G_IDAC 0x92 -#define RADIO_2055_CORE2_LGBUF_IDACFIL_OVR 0x93 -#define RADIO_2055_CORE2_LGBUF_SPARE 0x94 -#define RADIO_2055_CORE2_RXRF_SPC1 0x95 -#define RADIO_2055_CORE2_RXRF_REG1 0x96 -#define RADIO_2055_CORE2_RXRF_REG2 0x97 -#define RADIO_2055_CORE2_RXRF_RCAL 0x98 -#define RADIO_2055_CORE2_RXBB_BUFI_LPFCMP 0x99 -#define RADIO_2055_CORE2_RXBB_LPF 0x9a -#define RADIO_2055_CORE2_RXBB_MIDAC_HIPAS 0x9b -#define RADIO_2055_CORE2_RXBB_VGA1_IDAC 0x9c -#define RADIO_2055_CORE2_RXBB_VGA2_IDAC 0x9d -#define RADIO_2055_CORE2_RXBB_VGA3_IDAC 0x9e -#define RADIO_2055_CORE2_RXBB_BUFO_CTRL 0x9f -#define RADIO_2055_CORE2_RXBB_RCCAL_CTRL 0xa0 -#define RADIO_2055_CORE2_RXBB_RSSI_CTRL1 0xa1 -#define RADIO_2055_CORE2_RXBB_RSSI_CTRL2 0xa2 -#define RADIO_2055_CORE2_RXBB_RSSI_CTRL3 0xa3 -#define RADIO_2055_CORE2_RXBB_RSSI_CTRL4 0xa4 -#define RADIO_2055_CORE2_RXBB_RSSI_CTRL5 0xa5 -#define RADIO_2055_CORE2_RXBB_REGULATOR 0xa6 -#define RADIO_2055_CORE2_RXBB_SPARE1 0xa7 -#define RADIO_2055_CORE2_RXTXBB_RCAL 0xa8 -#define RADIO_2055_CORE2_TXRF_SGM_PGA 0xa9 -#define RADIO_2055_CORE2_TXRF_SGM_PAD 0xaa -#define RADIO_2055_CORE2_TXRF_CNTR_PGA1 0xab -#define RADIO_2055_CORE2_TXRF_CNTR_PAD1 0xac -#define RADIO_2055_CORE2_TX_RFPGA_IDAC 0xad -#define RADIO_2055_CORE2_TX_PGA_PAD_TN 0xae -#define RADIO_2055_CORE2_TX_PAD_IDAC1 0xaf -#define RADIO_2055_CORE2_TX_PAD_IDAC2 0xb0 -#define RADIO_2055_CORE2_TX_MX_BGTRIM 0xb1 -#define RADIO_2055_CORE2_TXRF_RCAL 0xb2 -#define RADIO_2055_CORE2_TXRF_PAD_TSSI1 0xb3 -#define RADIO_2055_CORE2_TXRF_PAD_TSSI2 0xb4 -#define RADIO_2055_CORE2_TX_RF_SPARE 0xb5 -#define RADIO_2055_CORE2_TXRF_IQCAL1 0xb6 -#define RADIO_2055_CORE2_TXRF_IQCAL2 0xb7 -#define RADIO_2055_CORE2_TXBB_RCCAL_CTRL 0xb8 -#define RADIO_2055_CORE2_TXBB_LPF1 0xb9 -#define RADIO_2055_CORE2_TX_VOS_CNCL 0xba -#define RADIO_2055_CORE2_TX_LPF_MXGM_IDAC 0xbb -#define RADIO_2055_CORE2_TX_BB_MXGM 0xbc -#define RADIO_2055_PRG_GC_HPVGA23_21 0xbd -#define RADIO_2055_PRG_GC_HPVGA23_22 0xbe -#define RADIO_2055_PRG_GC_HPVGA23_23 0xbf -#define RADIO_2055_PRG_GC_HPVGA23_24 0xc0 -#define RADIO_2055_PRG_GC_HPVGA23_25 0xc1 -#define RADIO_2055_PRG_GC_HPVGA23_26 0xc2 -#define RADIO_2055_PRG_GC_HPVGA23_27 0xc3 -#define RADIO_2055_PRG_GC_HPVGA23_28 0xc4 -#define RADIO_2055_PRG_GC_HPVGA23_29 0xc5 -#define RADIO_2055_PRG_GC_HPVGA23_30 0xc6 -#define RADIO_2055_CORE1_LNA_GAINBST 0xcd -#define RADIO_2055_CORE1_B0_NBRSSI_VCM 0xd2 -#define RADIO_2055_CORE1_GEN_SPARE2 0xd6 -#define RADIO_2055_CORE2_LNA_GAINBST 0xd9 -#define RADIO_2055_CORE2_B0_NBRSSI_VCM 0xde -#define RADIO_2055_CORE2_GEN_SPARE2 0xe2 - -/* Gain expected from 2055 Gain boost */ -#define RADIO_2055_GAINBST_GAIN_DB 6 -#define RADIO_2055_GAINBST_CODE 0x6 - -/* 2055 bit masks */ -#define RADIO_2055_JTAGCTRL_MASK 0x04 -#define RADIO_2055_JTAGSYNC_MASK 0x08 -#define RADIO_2055_RRCAL_START 0x40 -#define RADIO_2055_RRCAL_RST_N 0x01 -#define RADIO_2055_CAL_LPO_ENABLE 0x80 -#define RADIO_2055_RCAL_DONE 0x80 -#define RADIO_2055_NBRSSI_VCM_I_MASK 0x03 -#define RADIO_2055_NBRSSI_VCM_I_SHIFT 0x00 -#define RADIO_2055_NBRSSI_VCM_Q_MASK 0x03 -#define RADIO_2055_NBRSSI_VCM_Q_SHIFT 0x00 -#define RADIO_2055_WBRSSI_VCM_IQ_MASK 0x0c -#define RADIO_2055_WBRSSI_VCM_IQ_SHIFT 0x02 -#define RADIO_2055_NBRSSI_PD 0x01 -#define RADIO_2055_WBRSSI_G1_PD 0x04 -#define RADIO_2055_WBRSSI_G2_PD 0x02 -#define RADIO_2055_NBRSSI_SEL 0x01 -#define RADIO_2055_WBRSSI_G1_SEL 0x04 -#define RADIO_2055_WBRSSI_G2_SEL 0x02 -#define RADIO_2055_COUPLE_RX_MASK 0x01 -#define RADIO_2055_COUPLE_TX_MASK 0x02 -#define RADIO_2055_GAINBST_DISABLE 0x02 -#define RADIO_2055_GAINBST_VAL_MASK 0x07 -#define RADIO_2055_RXMX_GC_MASK 0x0c - - -/* 2055 pin control */ -#define RADIO_MIMO_CORESEL_OFF 0x0 -#define RADIO_MIMO_CORESEL_CORE1 0x1 -#define RADIO_MIMO_CORESEL_CORE2 0x2 -#define RADIO_MIMO_CORESEL_CORE3 0x3 -#define RADIO_MIMO_CORESEL_CORE4 0x4 -#define RADIO_MIMO_CORESEL_ALLRX 0x5 -#define RADIO_MIMO_CORESEL_ALLTX 0x6 -#define RADIO_MIMO_CORESEL_ALLRXTX 0x7 - - -/* 2060 registers */ -#define RADIO_2060WW_READ_OFF 0x40 /* Read offset for all registers but idcode */ - -/* 2060ww registers */ -#define RADIO_2060WW_RXGAINCTL 0x02 -#define RADIO_2060WW_PWR_DYNCTL 0x04 -#define RADIO_2060WW_PWR_STACTL 0x05 -#define RADIO_2060WW_RXLNA_DACC 0x06 -#define RADIO_2060WW_RX_VFC_LNA 0x07 -#define RADIO_2060WW_RX_MXCMVFC 0x08 -#define RADIO_2060WW_RX_GM_UPDN 0x09 -#define RADIO_2060WW_SGM_TEMPCO 0x0a -#define RADIO_2060WW_RXMIX_DACC 0x0b -#define RADIO_2060WW_RXVGA_DACC 0x0c -#define RADIO_2060WW_RX_AGC_CTL 0x0d -#define RADIO_2060WW_HPVGA1_TMR 0x0e -#define RADIO_2060WW_HPVGA2_TMR 0x0f -#define RADIO_2060WW_HPVGA3_TMR 0x10 -#define RADIO_2060WW_LPFMIX_TMR 0x11 -#define RADIO_2060WW_RXRSSI_DACC 0x12 -#define RADIO_2060WW_RX_SP_REG1 0x13 -#define RADIO_2060WW_RX_SP_REG2 0x14 -#define RADIO_2060WW_RX_SP_REG3 0x15 -#define RADIO_2060WW_RX_SP_REG4 0x16 -#define RADIO_2060WW_TX_BB_GAIN 0x17 -#define RADIO_2060WW_VC_TYPE_PA 0x18 -#define RADIO_2060WW_TX_RF_GAIN 0x19 -#define RADIO_2060WW_TX_MX_DACC 0x1a -#define RADIO_2060WW_TX_PA_DACC 0x1b -#define RADIO_2060WW_TX_BB_DACC 0x1c -#define RADIO_2060WW_TX_PV_DACC 0x1d -#define RADIO_2060WW_TX_VOS_CTL 0x1e -#define RADIO_2060WW_TX_CMV_ADJ 0x1f -#define RADIO_2060WW_TX_PAPADTN 0x20 -#define RADIO_2060WW_TX_LOMIXTN 0x21 -#define RADIO_2060WW_TX_RFPGATN 0x22 -#define RADIO_2060WW_TX_GMUPFN 0x23 -#define RADIO_2060WW_TX_PAPWRDT 0x24 -#define RADIO_2060WW_TX_SP_REG1 0x25 -#define RADIO_2060WW_TX_SP_REG2 0x26 -#define RADIO_2060WW_TX_SP_REG3 0x27 -#define RADIO_2060WW_TX_SP_REG4 0x28 -#define RADIO_2060WW_PLL_TMOUT 0x29 -#define RADIO_2060WW_VFC_VCOTAL 0x2a -#define RADIO_2060WW_VFC_LGNMIX 0x2b -#define RADIO_2060WW_PLL_GM_CTL 0x2c -#define RADIO_2060WW_PLL_REFDIV 0x2d -#define RADIO_2060WW_PLL_SD_CTL 0x2e -#define RADIO_2060WW_CCCP_PSCTL 0x2f -#define RADIO_2060WW_CCCP_OPALGN 0x30 -#define RADIO_2060WW_PLL_ADCVCO 0x31 -#define RADIO_2060WW_LOGEN_CUR1 0x32 -#define RADIO_2060WW_LOGEN_CUR2 0x33 -#define RADIO_2060WW_LOGEN_CUR3 0x34 -#define RADIO_2060WW_PLL_ERRTHR 0x35 -#define RADIO_2060WW_PLL_CALTHR 0x36 -#define RADIO_2060WW_CALIB_CODE 0x37 -#define RADIO_2060WW_PLL_CTLCODE 0x38 -#define RADIO_2060WW_LOGEN_SPARE 0x39 -#define RADIO_2060WW_PLL_CALOVR 0x3a -#define RADIO_2060WW_PLL_SP_REG1 0x3b -#define RADIO_2060WW_PLL_SP_REG2 0x3c -#define RADIO_2060WW_PLL_SP_REG3 0x3d -#define RADIO_2060WW_PLL_SP_REG4 0x3e -#define RADIO_2060WW_RC_CALVAL0 0x3f -#define RADIO_2060WW_RC_CALVAL1 0x80 -#define RADIO_2060WW_RST_PLLCAL 0x81 -#define RADIO_2060WW_CRY_CONTROL 0x82 -#define RADIO_2060WW_CRYST_BIAS 0x83 -#define RADIO_2060WW_RCAL_BGVAL 0x84 -#define RADIO_2060WW_RCALIB_OVR 0x85 - -/* 2062 registers */ -#define RADIO_2062_READ_OFF 0x100 /* Read offset for all registers but idcode */ - -/* Autogenerated by 2062_regs_tcl2c.tcl */ -#define RADIO_2062_COMMON_01_NORTH 0x0 -#define RADIO_2062_IDCODE_NORTH 0x1 -#define RADIO_2062_COMMON_02_NORTH 0x2 -#define RADIO_2062_COMMON_03_NORTH 0x3 -#define RADIO_2062_COMMON_04_NORTH 0x4 -#define RADIO_2062_COMMON_05_NORTH 0x5 -#define RADIO_2062_COMMON_06_NORTH 0x6 -#define RADIO_2062_COMMON_07_NORTH 0x7 -#define RADIO_2062_COMMON_08_NORTH 0x8 -#define RADIO_2062_COMMON_09_NORTH 0x9 -#define RADIO_2062_COMMON_10_NORTH 0xa -#define RADIO_2062_COMMON_11_NORTH 0xb -#define RADIO_2062_COMMON_12_NORTH 0xc -#define RADIO_2062_COMMON_13_NORTH 0xd -#define RADIO_2062_COMMON_14_NORTH 0xe -#define RADIO_2062_COMMON_15_NORTH 0xf -#define RADIO_2062_PDN_CTRL0_NORTH 0x10 -#define RADIO_2062_PDN_CTRL1_NORTH 0x11 -#define RADIO_2062_PDN_CTRL2_NORTH 0x12 -#define RADIO_2062_PDN_CTRL3_NORTH 0x13 -#define RADIO_2062_PDN_CTRL4_NORTH 0x14 -#define RADIO_2062_GEN_CTRL0_NORTH 0x15 -#define RADIO_2062_IQCAL_NORTH 0x16 -#define RADIO_2062_LGENC_NORTH 0x17 -#define RADIO_2062_LGENA_LPF_NORTH 0x18 -#define RADIO_2062_LGENA_BIAS0_NORTH 0x19 -#define RADIO_2062_LGNEA_BIAS1_NORTH 0x1a -#define RADIO_2062_LGENA_CTRL0_NORTH 0x1b -#define RADIO_2062_LGENA_CTRL1_NORTH 0x1c -#define RADIO_2062_LGENA_CTRL2_NORTH 0x1d -#define RADIO_2062_LGENA_TUNE0_NORTH 0x1e -#define RADIO_2062_LGENA_TUNE1_NORTH 0x1f -#define RADIO_2062_LGENA_TUNE2_NORTH 0x20 -#define RADIO_2062_LGENA_TUNE3_NORTH 0x21 -#define RADIO_2062_LGENA_CTRL3_NORTH 0x22 -#define RADIO_2062_LGENA_CTRL4_NORTH 0x23 -#define RADIO_2062_LGENA_CTRL5_NORTH 0x24 -#define RADIO_2062_LGENA_CTRL6_NORTH 0x25 -#define RADIO_2062_LGENA_CTRL7_NORTH 0x26 -#define RADIO_2062_RXA_CTRL0_NORTH 0x27 -#define RADIO_2062_RXA_CTRL1_NORTH 0x28 -#define RADIO_2062_RXA_CTRL2_NORTH 0x29 -#define RADIO_2062_RXA_CTRL3_NORTH 0x2a -#define RADIO_2062_RXA_CTRL4_NORTH 0x2b -#define RADIO_2062_RXA_CTRL5_NORTH 0x2c -#define RADIO_2062_RXA_CTRL6_NORTH 0x2d -#define RADIO_2062_RXA_CTRL7_NORTH 0x2e -#define RADIO_2062_RXBB_CTRL0_NORTH 0x2f -#define RADIO_2062_RXBB_CTRL1_NORTH 0x30 -#define RADIO_2062_RXBB_CTRL2_NORTH 0x31 -#define RADIO_2062_RXBB_GAIN0_NORTH 0x32 -#define RADIO_2062_RXBB_GAIN1_NORTH 0x33 -#define RADIO_2062_RXBB_GAIN2_NORTH 0x34 -#define RADIO_2062_RXBB_GAIN3_NORTH 0x35 -#define RADIO_2062_RXBB_RSSI0_NORTH 0x36 -#define RADIO_2062_RXBB_RSSI1_NORTH 0x37 -#define RADIO_2062_RXBB_CAL0_NORTH 0x38 -#define RADIO_2062_RXBB_CAL1_NORTH 0x39 -#define RADIO_2062_RXBB_CAL2_NORTH 0x3a -#define RADIO_2062_RXBB_BIAS0_NORTH 0x3b -#define RADIO_2062_RXBB_BIAS1_NORTH 0x3c -#define RADIO_2062_RXBB_BIAS2_NORTH 0x3d -#define RADIO_2062_RXBB_BIAS3_NORTH 0x3e -#define RADIO_2062_RXBB_BIAS4_NORTH 0x3f -#define RADIO_2062_RXBB_BIAS5_NORTH 0x40 -#define RADIO_2062_RXBB_RSSI2_NORTH 0x41 -#define RADIO_2062_RXBB_RSSI3_NORTH 0x42 -#define RADIO_2062_RXBB_RSSI4_NORTH 0x43 -#define RADIO_2062_RXBB_RSSI5_NORTH 0x44 -#define RADIO_2062_TX_CTRL0_NORTH 0x45 -#define RADIO_2062_TX_CTRL1_NORTH 0x46 -#define RADIO_2062_TX_CTRL2_NORTH 0x47 -#define RADIO_2062_TX_CTRL3_NORTH 0x48 -#define RADIO_2062_TX_CTRL4_NORTH 0x49 -#define RADIO_2062_TX_CTRL5_NORTH 0x4a -#define RADIO_2062_TX_CTRL6_NORTH 0x4b -#define RADIO_2062_TX_CTRL7_NORTH 0x4c -#define RADIO_2062_TX_CTRL8_NORTH 0x4d -#define RADIO_2062_TX_CTRL9_NORTH 0x4e -#define RADIO_2062_TX_CTRLA_NORTH 0x4f -#define RADIO_2062_TX_GC2G_NORTH 0x50 -#define RADIO_2062_TX_GC5G_NORTH 0x51 -#define RADIO_2062_TX_TUNE_NORTH 0x52 -#define RADIO_2062_TX_PAD_NORTH 0x53 -#define RADIO_2062_TX_PGA_NORTH 0x54 -#define RADIO_2062_TX_PADAUX_NORTH 0x55 -#define RADIO_2062_TX_PGAAUX_NORTH 0x56 -#define RADIO_2062_TSSI_CTRL0_NORTH 0x57 -#define RADIO_2062_TSSI_CTRL1_NORTH 0x58 -#define RADIO_2062_TSSI_CTRL2_NORTH 0x59 -#define RADIO_2062_IQCAL_CTRL0_NORTH 0x5a -#define RADIO_2062_IQCAL_CTRL1_NORTH 0x5b -#define RADIO_2062_IQCAL_CTRL2_NORTH 0x5c -#define RADIO_2062_CAL_TS_NORTH 0x5d -#define RADIO_2062_CAL_CTRL0_NORTH 0x5e -#define RADIO_2062_CAL_CTRL1_NORTH 0x5f -#define RADIO_2062_CAL_CTRL2_NORTH 0x60 -#define RADIO_2062_CAL_CTRL3_NORTH 0x61 -#define RADIO_2062_CAL_CTRL4_NORTH 0x62 -#define RADIO_2062_CAL_DBG0_NORTH 0x63 -#define RADIO_2062_CAL_DBG1_NORTH 0x64 -#define RADIO_2062_CAL_DBG2_NORTH 0x65 -#define RADIO_2062_CAL_DBG3_NORTH 0x66 -#define RADIO_2062_PSENSE_CTRL0_NORTH 0x69 -#define RADIO_2062_PSENSE_CTRL1_NORTH 0x6a -#define RADIO_2062_PSENSE_CTRL2_NORTH 0x6b -#define RADIO_2062_TEST_BUF0_NORTH 0x6c -#define RADIO_2062_COMMON_01_SOUTH 0x4000 -#define RADIO_2062_IDCODE_SOUTH 0x4001 -#define RADIO_2062_COMMON_02_SOUTH 0x4002 -#define RADIO_2062_COMMON_03_SOUTH 0x4003 -#define RADIO_2062_COMMON_04_SOUTH 0x4004 -#define RADIO_2062_COMMON_05_SOUTH 0x4005 -#define RADIO_2062_COMMON_06_SOUTH 0x4006 -#define RADIO_2062_COMMON_07_SOUTH 0x4007 -#define RADIO_2062_COMMON_08_SOUTH 0x4008 -#define RADIO_2062_COMMON_09_SOUTH 0x4009 -#define RADIO_2062_COMMON_10_SOUTH 0x400a -#define RADIO_2062_COMMON_11_SOUTH 0x400b -#define RADIO_2062_COMMON_12_SOUTH 0x400c -#define RADIO_2062_COMMON_13_SOUTH 0x400d -#define RADIO_2062_COMMON_14_SOUTH 0x400e -#define RADIO_2062_COMMON_15_SOUTH 0x400f -#define RADIO_2062_PDS_CTRL0_SOUTH 0x4010 -#define RADIO_2062_PDS_CTRL1_SOUTH 0x4011 -#define RADIO_2062_PDS_CTRL2_SOUTH 0x4012 -#define RADIO_2062_PDS_CTRL3_SOUTH 0x4013 -#define RADIO_2062_BG_CTRL0_SOUTH 0x4014 -#define RADIO_2062_BG_CTRL1_SOUTH 0x4015 -#define RADIO_2062_BG_CTRL2_SOUTH 0x4016 -#define RADIO_2062_LGENG_CTRL00_SOUTH 0x4017 -#define RADIO_2062_LGENG_CTRL01_SOUTH 0x4018 -#define RADIO_2062_LGENG_CTRL02_SOUTH 0x4019 -#define RADIO_2062_LGENG_CTRL03_SOUTH 0x401a -#define RADIO_2062_LGENG_CTRL04_SOUTH 0x401b -#define RADIO_2062_LGENG_CTRL05_SOUTH 0x401c -#define RADIO_2062_LGENG_CTRL06_SOUTH 0x401d -#define RADIO_2062_LGENG_CTRL07_SOUTH 0x401e -#define RADIO_2062_LGENG_CTRL08_SOUTH 0x401f -#define RADIO_2062_LGENG_CTRL09_SOUTH 0x4020 -#define RADIO_2062_LGENG_CTRL10_SOUTH 0x4021 -#define RADIO_2062_LGENG_CTRL11_SOUTH 0x4022 -#define RADIO_2062_REFPLL_CTRL00_SOUTH 0x4023 -#define RADIO_2062_REFPLL_CTRL01_SOUTH 0x4024 -#define RADIO_2062_REFPLL_CTRL02_SOUTH 0x4025 -#define RADIO_2062_REFPLL_CTRL03_SOUTH 0x4026 -#define RADIO_2062_REFPLL_CTRL04_SOUTH 0x4027 -#define RADIO_2062_REFPLL_CTRL05_SOUTH 0x4028 -#define RADIO_2062_REFPLL_CTRL06_SOUTH 0x4029 -#define RADIO_2062_REFPLL_CTRL07_SOUTH 0x402a -#define RADIO_2062_REFPLL_CTRL08_SOUTH 0x402b -#define RADIO_2062_REFPLL_CTRL09_SOUTH 0x402c -#define RADIO_2062_REFPLL_CTRL10_SOUTH 0x402d -#define RADIO_2062_REFPLL_CTRL11_SOUTH 0x402e -#define RADIO_2062_REFPLL_CTRL12_SOUTH 0x402f -#define RADIO_2062_REFPLL_CTRL13_SOUTH 0x4030 -#define RADIO_2062_REFPLL_CTRL14_SOUTH 0x4031 -#define RADIO_2062_REFPLL_CTRL15_SOUTH 0x4032 -#define RADIO_2062_REFPLL_CTRL16_SOUTH 0x4033 -#define RADIO_2062_RFPLL_CTRL00_SOUTH 0x4034 -#define RADIO_2062_RFPLL_CTRL01_SOUTH 0x4035 -#define RADIO_2062_RFPLL_CTRL02_SOUTH 0x4036 -#define RADIO_2062_RFPLL_CTRL03_SOUTH 0x4037 -#define RADIO_2062_RFPLL_CTRL04_SOUTH 0x4038 -#define RADIO_2062_RFPLL_CTRL05_SOUTH 0x4039 -#define RADIO_2062_RFPLL_CTRL06_SOUTH 0x403a -#define RADIO_2062_RFPLL_CTRL07_SOUTH 0x403b -#define RADIO_2062_RFPLL_CTRL08_SOUTH 0x403c -#define RADIO_2062_RFPLL_CTRL09_SOUTH 0x403d -#define RADIO_2062_RFPLL_CTRL10_SOUTH 0x403e -#define RADIO_2062_RFPLL_CTRL11_SOUTH 0x403f -#define RADIO_2062_RFPLL_CTRL12_SOUTH 0x4040 -#define RADIO_2062_RFPLL_CTRL13_SOUTH 0x4041 -#define RADIO_2062_RFPLL_CTRL14_SOUTH 0x4042 -#define RADIO_2062_RFPLL_CTRL15_SOUTH 0x4043 -#define RADIO_2062_RFPLL_CTRL16_SOUTH 0x4044 -#define RADIO_2062_RFPLL_CTRL17_SOUTH 0x4045 -#define RADIO_2062_RFPLL_CTRL18_SOUTH 0x4046 -#define RADIO_2062_RFPLL_CTRL19_SOUTH 0x4047 -#define RADIO_2062_RFPLL_CTRL20_SOUTH 0x4048 -#define RADIO_2062_RFPLL_CTRL21_SOUTH 0x4049 -#define RADIO_2062_RFPLL_CTRL22_SOUTH 0x404a -#define RADIO_2062_RFPLL_CTRL23_SOUTH 0x404b -#define RADIO_2062_RFPLL_CTRL24_SOUTH 0x404c -#define RADIO_2062_RFPLL_CTRL25_SOUTH 0x404d -#define RADIO_2062_RFPLL_CTRL26_SOUTH 0x404e -#define RADIO_2062_RFPLL_CTRL27_SOUTH 0x404f -#define RADIO_2062_RFPLL_CTRL28_SOUTH 0x4050 -#define RADIO_2062_RFPLL_CTRL29_SOUTH 0x4051 -#define RADIO_2062_RFPLL_CTRL30_SOUTH 0x4052 -#define RADIO_2062_RFPLL_CTRL31_SOUTH 0x4053 -#define RADIO_2062_RFPLL_CTRL32_SOUTH 0x4054 -#define RADIO_2062_RFPLL_CTRL33_SOUTH 0x4055 -#define RADIO_2062_RFPLL_CTRL34_SOUTH 0x4056 -#define RADIO_2062_RXG_CTR00_SOUTH 0x4057 -#define RADIO_2062_RXG_CTR01_SOUTH 0x4058 -#define RADIO_2062_RXG_CTR02_SOUTH 0x4059 -#define RADIO_2062_RXG_CTR03_SOUTH 0x405a -#define RADIO_2062_RXG_CTR04_SOUTH 0x405b -#define RADIO_2062_RXG_CTR05_SOUTH 0x405c -#define RADIO_2062_RXG_CTR06_SOUTH 0x405d -#define RADIO_2062_RXG_CTR07_SOUTH 0x405e -#define RADIO_2062_RXG_CTR08_SOUTH 0x405f -#define RADIO_2062_RXG_CTR09_SOUTH 0x4060 -#define RADIO_2062_RXG_CTR10_SOUTH 0x4061 -#define RADIO_2062_RXG_CTR11_SOUTH 0x4062 -#define RADIO_2062_RXG_CTR12_SOUTH 0x4063 -#define RADIO_2062_RXG_CTR13_SOUTH 0x4064 -#define RADIO_2062_RXG_CTR14_SOUTH 0x4065 -#define RADIO_2062_RXG_CTR15_SOUTH 0x4066 -#define RADIO_2062_RXG_CTR16_SOUTH 0x4067 -#define RADIO_2062_RXG_CTR17_SOUTH 0x4068 -#define RADIO_2063_COMMON_01 0x0 - -/* 2063 registers */ -#define RADIO_2063_READ_OFF 0x200 /* Read offset for all registers but idcode */ - -/* Autogenerated by 2063_regs_tcl2c.tcl */ -#define RADIO_2063_COMMON_01 0x0 -#define RADIO_2063_IDCODE 0x1 -#define RADIO_2063_COMMON_02 0x2 -#define RADIO_2063_COMMON_03 0x3 -#define RADIO_2063_COMMON_04 0x4 -#define RADIO_2063_COMMON_05 0x5 -#define RADIO_2063_COMMON_06 0x6 -#define RADIO_2063_COMMON_07 0x7 -#define RADIO_2063_COMMON_08 0x8 -#define RADIO_2063_COMMON_09 0x9 -#define RADIO_2063_COMMON_10 0xa -#define RADIO_2063_COMMON_11 0xb -#define RADIO_2063_COMMON_12 0xc -#define RADIO_2063_COMMON_13 0xd -#define RADIO_2063_COMMON_14 0xe -#define RADIO_2063_COMMON_15 0xf -#define RADIO_2063_COMMON_16 0x10 -#define RADIO_2063_COMMON_17 0x11 -#define RADIO_2063_COMMON_18 0x12 -#define RADIO_2063_COMMON_19 0x13 -#define RADIO_2063_COMMON_20 0x14 -#define RADIO_2063_COMMON_21 0x15 -#define RADIO_2063_COMMON_22 0x16 -#define RADIO_2063_COMMON_23 0x17 -#define RADIO_2063_COMMON_24 0x18 -#define RADIO_2063_POWER_SWITCH_CTRL 0x19 -#define RADIO_2063_PLL_SP_1 0x1a -#define RADIO_2063_PLL_SP_2 0x1b -#define RADIO_2063_LOGEN_SP_1 0x1c -#define RADIO_2063_LOGEN_SP_2 0x1d -#define RADIO_2063_LOGEN_SP_3 0x1e -#define RADIO_2063_LOGEN_SP_4 0x1f -#define RADIO_2063_LOGEN_SP_5 0x20 -#define RADIO_2063_GRX_SP_1 0x21 -#define RADIO_2063_GRX_SP_2 0x22 -#define RADIO_2063_GRX_SP_3 0x23 -#define RADIO_2063_GRX_SP_4 0x24 -#define RADIO_2063_GRX_SP_5 0x25 -#define RADIO_2063_GRX_SP_6 0x26 -#define RADIO_2063_GRX_SP_7 0x27 -#define RADIO_2063_GRX_SP_8 0x28 -#define RADIO_2063_GRX_SP_9 0x29 -#define RADIO_2063_GRX_SP_10 0x2a -#define RADIO_2063_GRX_SP_11 0x2b -#define RADIO_2063_ARX_SP_1 0x2c -#define RADIO_2063_ARX_SP_2 0x2d -#define RADIO_2063_ARX_SP_3 0x2e -#define RADIO_2063_ARX_SP_4 0x2f -#define RADIO_2063_ARX_SP_5 0x30 -#define RADIO_2063_ARX_SP_6 0x31 -#define RADIO_2063_ARX_SP_7 0x32 -#define RADIO_2063_RXBB_SP_1 0x33 -#define RADIO_2063_RXBB_SP_2 0x34 -#define RADIO_2063_RXBB_SP_3 0x35 -#define RADIO_2063_RXBB_SP_4 0x36 -#define RADIO_2063_RXBB_SP_5 0x37 -#define RADIO_2063_RXBB_SP_6 0x38 -#define RADIO_2063_RXBB_SP_7 0x39 -#define RADIO_2063_RXBB_SP_8 0x3a -#define RADIO_2063_TXRF_SP_1 0x3b -#define RADIO_2063_TXRF_SP_2 0x3c -#define RADIO_2063_TXRF_SP_3 0x3d -#define RADIO_2063_TXRF_SP_4 0x3e -#define RADIO_2063_TXRF_SP_5 0x3f -#define RADIO_2063_TXRF_SP_6 0x40 -#define RADIO_2063_TXRF_SP_7 0x41 -#define RADIO_2063_TXRF_SP_8 0x42 -#define RADIO_2063_TXRF_SP_9 0x43 -#define RADIO_2063_TXRF_SP_10 0x44 -#define RADIO_2063_TXRF_SP_11 0x45 -#define RADIO_2063_TXRF_SP_12 0x46 -#define RADIO_2063_TXRF_SP_13 0x47 -#define RADIO_2063_TXRF_SP_14 0x48 -#define RADIO_2063_TXRF_SP_15 0x49 -#define RADIO_2063_TXRF_SP_16 0x4a -#define RADIO_2063_TXRF_SP_17 0x4b -#define RADIO_2063_PA_SP_1 0x4c -#define RADIO_2063_PA_SP_2 0x4d -#define RADIO_2063_PA_SP_3 0x4e -#define RADIO_2063_PA_SP_4 0x4f -#define RADIO_2063_PA_SP_5 0x50 -#define RADIO_2063_PA_SP_6 0x51 -#define RADIO_2063_PA_SP_7 0x52 -#define RADIO_2063_TXBB_SP_1 0x53 -#define RADIO_2063_TXBB_SP_2 0x54 -#define RADIO_2063_TXBB_SP_3 0x55 -#define RADIO_2063_REG_SP_1 0x56 -#define RADIO_2063_BANDGAP_CTRL_1 0x57 -#define RADIO_2063_BANDGAP_CTRL_2 0x58 -#define RADIO_2063_LPO_CTRL_1 0x59 -#define RADIO_2063_RCCAL_CTRL_1 0x5a -#define RADIO_2063_RCCAL_CTRL_2 0x5b -#define RADIO_2063_RCCAL_CTRL_3 0x5c -#define RADIO_2063_RCCAL_CTRL_4 0x5d -#define RADIO_2063_RCCAL_CTRL_5 0x5e -#define RADIO_2063_RCCAL_CTRL_6 0x5f -#define RADIO_2063_RCCAL_CTRL_7 0x60 -#define RADIO_2063_RCCAL_CTRL_8 0x61 -#define RADIO_2063_RCCAL_CTRL_9 0x62 -#define RADIO_2063_RCCAL_CTRL_10 0x63 -#define RADIO_2063_PLL_JTAG_CALNRST 0x64 -#define RADIO_2063_PLL_JTAGIN_PLL_1 0x65 -#define RADIO_2063_PLL_JTAGIN_PLL_2 0x66 -#define RADIO_2063_PLL_JTAG_PLL_CP_1 0x67 -#define RADIO_2063_PLL_JTAG_PLL_CP_2 0x68 -#define RADIO_2063_PLL_JTAG_PLL_CP_3 0x69 -#define RADIO_2063_PLL_JTAG_PLL_CP_4 0x6a -#define RADIO_2063_PLL_JTAG_PLL_CTL_1 0x6b -#define RADIO_2063_PLL_JTAG_PLL_LF_1 0x6c -#define RADIO_2063_PLL_JTAG_PLL_LF_2 0x6d -#define RADIO_2063_PLL_JTAG_PLL_LF_3 0x6e -#define RADIO_2063_PLL_JTAG_PLL_LF_4 0x6f -#define RADIO_2063_PLL_JTAG_PLL_SG_1 0x70 -#define RADIO_2063_PLL_JTAG_PLL_SG_2 0x71 -#define RADIO_2063_PLL_JTAG_PLL_SG_3 0x72 -#define RADIO_2063_PLL_JTAG_PLL_SG_4 0x73 -#define RADIO_2063_PLL_JTAG_PLL_SG_5 0x74 -#define RADIO_2063_PLL_JTAG_PLL_VCO_1 0x75 -#define RADIO_2063_PLL_JTAG_PLL_VCO_2 0x76 -#define RADIO_2063_PLL_JTAG_PLL_VCOCAL_1 0x77 -#define RADIO_2063_PLL_JTAG_PLL_VCOCAL_2 0x78 -#define RADIO_2063_PLL_JTAG_PLL_VCOCAL_3 0x79 -#define RADIO_2063_PLL_JTAG_PLL_VCOCAL_4 0x7a -#define RADIO_2063_PLL_JTAG_PLL_VCOCAL_5 0x7b -#define RADIO_2063_PLL_JTAG_PLL_VCOCAL_6 0x7c -#define RADIO_2063_PLL_JTAG_PLL_VCOCAL_7 0x7d -#define RADIO_2063_PLL_JTAG_PLL_VCOCAL_8 0x7e -#define RADIO_2063_PLL_JTAG_PLL_VCOCAL_9 0x7f -#define RADIO_2063_PLL_JTAG_PLL_VCOCAL_10 0x80 -#define RADIO_2063_PLL_JTAG_PLL_XTAL_1_2 0x81 -#define RADIO_2063_PLL_JTAG_PLL_XTAL_3 0x82 -#define RADIO_2063_LOGEN_ACL_1 0x83 -#define RADIO_2063_LOGEN_ACL_2 0x84 -#define RADIO_2063_LOGEN_ACL_3 0x85 -#define RADIO_2063_LOGEN_ACL_4 0x86 -#define RADIO_2063_LOGEN_ACL_5 0x87 -#define RADIO_2063_LOCAL_INPUTS 0x88 -#define RADIO_2063_LOCAL_CTRL_1 0x89 -#define RADIO_2063_LOCAL_CTRL_2 0x8a -#define RADIO_2063_LOCAL_CTRL_3 0x8b -#define RADIO_2063_LOCAL_WAITCNT 0x8c -#define RADIO_2063_LOCAL_OVR_1 0x8d -#define RADIO_2063_LOCAL_OVR_2 0x8e -#define RADIO_2063_LOCAL_OVAL_1 0x8f -#define RADIO_2063_LOCAL_OVAL_2 0x90 -#define RADIO_2063_LOCAL_OVAL_3 0x91 -#define RADIO_2063_LOCAL_OVAL_4 0x92 -#define RADIO_2063_LOCAL_OVAL_5 0x93 -#define RADIO_2063_LOCAL_OVAL_6 0x94 -#define RADIO_2063_LOCAL_OVAL_7 0x95 -#define RADIO_2063_LOCAL_CALVLD_1 0x96 -#define RADIO_2063_LOCAL_CALVLD_2 0x97 -#define RADIO_2063_LOCAL_CVAL_1 0x98 -#define RADIO_2063_LOCAL_CVAL_2 0x99 -#define RADIO_2063_LOCAL_CVAL_3 0x9a -#define RADIO_2063_LOCAL_CVAL_4 0x9b -#define RADIO_2063_LOCAL_CVAL_5 0x9c -#define RADIO_2063_LOCAL_CVAL_6 0x9d -#define RADIO_2063_LOCAL_CVAL_7 0x9e -#define RADIO_2063_LOGEN_CAL_EN 0x9f -#define RADIO_2063_LOGEN_PEAKDET_1 0xa0 -#define RADIO_2063_LOGEN_RCCR_1 0xa1 -#define RADIO_2063_LOGEN_VCOBUF_1 0xa2 -#define RADIO_2063_LOGEN_MIXER_1 0xa3 -#define RADIO_2063_LOGEN_MIXER_2 0xa4 -#define RADIO_2063_LOGEN_BUF_1 0xa5 -#define RADIO_2063_LOGEN_BUF_2 0xa6 -#define RADIO_2063_LOGEN_DIV_1 0xa7 -#define RADIO_2063_LOGEN_DIV_2 0xa8 -#define RADIO_2063_LOGEN_DIV_3 0xa9 -#define RADIO_2063_LOGEN_CBUFRX_1 0xaa -#define RADIO_2063_LOGEN_CBUFRX_2 0xab -#define RADIO_2063_LOGEN_CBUFTX_1 0xac -#define RADIO_2063_LOGEN_CBUFTX_2 0xad -#define RADIO_2063_LOGEN_IDAC_1 0xae -#define RADIO_2063_LOGEN_SPARE_1 0xaf -#define RADIO_2063_LOGEN_SPARE_2 0xb0 -#define RADIO_2063_LOGEN_SPARE_3 0xb1 -#define RADIO_2063_GRX_1ST_1 0xb2 -#define RADIO_2063_GRX_1ST_2 0xb3 -#define RADIO_2063_GRX_1ST_3 0xb4 -#define RADIO_2063_GRX_2ND_1 0xb5 -#define RADIO_2063_GRX_2ND_2 0xb6 -#define RADIO_2063_GRX_2ND_3 0xb7 -#define RADIO_2063_GRX_2ND_4 0xb8 -#define RADIO_2063_GRX_2ND_5 0xb9 -#define RADIO_2063_GRX_2ND_6 0xba -#define RADIO_2063_GRX_2ND_7 0xbb -#define RADIO_2063_GRX_2ND_8 0xbc -#define RADIO_2063_GRX_PS_1 0xbd -#define RADIO_2063_GRX_PS_2 0xbe -#define RADIO_2063_GRX_PS_3 0xbf -#define RADIO_2063_GRX_PS_4 0xc0 -#define RADIO_2063_GRX_PS_5 0xc1 -#define RADIO_2063_GRX_MIX_1 0xc2 -#define RADIO_2063_GRX_MIX_2 0xc3 -#define RADIO_2063_GRX_MIX_3 0xc4 -#define RADIO_2063_GRX_MIX_4 0xc5 -#define RADIO_2063_GRX_MIX_5 0xc6 -#define RADIO_2063_GRX_MIX_6 0xc7 -#define RADIO_2063_GRX_MIX_7 0xc8 -#define RADIO_2063_GRX_MIX_8 0xc9 -#define RADIO_2063_GRX_PDET_1 0xca -#define RADIO_2063_GRX_SPARES_1 0xcb -#define RADIO_2063_GRX_SPARES_2 0xcc -#define RADIO_2063_GRX_SPARES_3 0xcd -#define RADIO_2063_ARX_1ST_1 0xce -#define RADIO_2063_ARX_1ST_2 0xcf -#define RADIO_2063_ARX_1ST_3 0xd0 -#define RADIO_2063_ARX_1ST_4 0xd1 -#define RADIO_2063_ARX_1ST_5 0xd2 -#define RADIO_2063_ARX_2ND_1 0xd3 -#define RADIO_2063_ARX_2ND_2 0xd4 -#define RADIO_2063_ARX_2ND_3 0xd5 -#define RADIO_2063_ARX_2ND_4 0xd6 -#define RADIO_2063_ARX_2ND_5 0xd7 -#define RADIO_2063_ARX_2ND_6 0xd8 -#define RADIO_2063_ARX_2ND_7 0xd9 -#define RADIO_2063_ARX_PS_1 0xda -#define RADIO_2063_ARX_PS_2 0xdb -#define RADIO_2063_ARX_PS_3 0xdc -#define RADIO_2063_ARX_PS_4 0xdd -#define RADIO_2063_ARX_PS_5 0xde -#define RADIO_2063_ARX_PS_6 0xdf -#define RADIO_2063_ARX_MIX_1 0xe0 -#define RADIO_2063_ARX_MIX_2 0xe1 -#define RADIO_2063_ARX_MIX_3 0xe2 -#define RADIO_2063_ARX_MIX_4 0xe3 -#define RADIO_2063_ARX_MIX_5 0xe4 -#define RADIO_2063_ARX_MIX_6 0xe5 -#define RADIO_2063_ARX_MIX_7 0xe6 -#define RADIO_2063_ARX_MIX_8 0xe7 -#define RADIO_2063_ARX_PWRDET_1 0xe8 -#define RADIO_2063_ARX_SPARE_1 0xe9 -#define RADIO_2063_ARX_SPARE_2 0xea -#define RADIO_2063_ARX_SPARE_3 0xeb -#define RADIO_2063_RXTIA_CTRL_1 0xec -#define RADIO_2063_RXTIA_CTRL_2 0xed -#define RADIO_2063_RXTIA_CTRL_3 0xee -#define RADIO_2063_RXTIA_CTRL_4 0xef -#define RADIO_2063_RXTIA_CTRL_5 0xf0 -#define RADIO_2063_RXTIA_CTRL_6 0xf1 -#define RADIO_2063_RXBB_CTRL_1 0xf2 -#define RADIO_2063_RXBB_CTRL_2 0xf3 -#define RADIO_2063_RXBB_CTRL_3 0xf4 -#define RADIO_2063_RXBB_CTRL_4 0xf5 -#define RADIO_2063_RXBB_CTRL_5 0xf6 -#define RADIO_2063_RXBB_CTRL_6 0xf7 -#define RADIO_2063_RXBB_CTRL_7 0xf8 -#define RADIO_2063_RXBB_CTRL_8 0xf9 -#define RADIO_2063_RXBB_CTRL_9 0xfa -#define RADIO_2063_TXRF_CTRL_1 0xfb -#define RADIO_2063_TXRF_IDAC_LO_RF_I 0xfc -#define RADIO_2063_TXRF_IDAC_LO_RF_Q 0xfd -#define RADIO_2063_TXRF_IDAC_LO_BB_I 0xfe -#define RADIO_2063_TXRF_IDAC_LO_BB_Q 0xff -#define RADIO_2063_TXRF_CTRL_2 0x100 -#define RADIO_2063_TXRF_CTRL_3 0x101 -#define RADIO_2063_TXRF_CTRL_4 0x102 -#define RADIO_2063_TXRF_CTRL_5 0x103 -#define RADIO_2063_TXRF_CTRL_6 0x104 -#define RADIO_2063_TXRF_CTRL_7 0x105 -#define RADIO_2063_TXRF_CTRL_8 0x106 -#define RADIO_2063_TXRF_CTRL_9 0x107 -#define RADIO_2063_TXRF_CTRL_10 0x108 -#define RADIO_2063_TXRF_CTRL_14 0x109 -#define RADIO_2063_TXRF_CTRL_15 0x10a -#define RADIO_2063_PA_CTRL_1 0x10b -#define RADIO_2063_PA_CTRL_2 0x10c -#define RADIO_2063_PA_CTRL_3 0x10d -#define RADIO_2063_PA_CTRL_4 0x10e -#define RADIO_2063_PA_CTRL_5 0x10f -#define RADIO_2063_PA_CTRL_6 0x110 -#define RADIO_2063_PA_CTRL_7 0x111 -#define RADIO_2063_PA_CTRL_8 0x112 -#define RADIO_2063_PA_CTRL_9 0x113 -#define RADIO_2063_PA_CTRL_10 0x114 -#define RADIO_2063_PA_CTRL_11 0x115 -#define RADIO_2063_PA_CTRL_12 0x116 -#define RADIO_2063_PA_CTRL_13 0x117 -#define RADIO_2063_TXBB_CTRL_1 0x118 -#define RADIO_2063_TXBB_CTRL_2 0x119 -#define RADIO_2063_TXBB_CTRL_3 0x11a -#define RADIO_2063_TXBB_CTRL_4 0x11b -#define RADIO_2063_GPIO_CTRL_1 0x11c -#define RADIO_2063_VREG_CTRL_1 0x11d -#define RADIO_2063_AMUX_CTRL_1 0x11e -#define RADIO_2063_IQCAL_GVAR 0x11f -#define RADIO_2063_IQCAL_CTRL_1 0x120 -#define RADIO_2063_IQCAL_CTRL_2 0x121 -#define RADIO_2063_TEMPSENSE_CTRL_1 0x122 -#define RADIO_2063_TEMPSENSE_CTRL_2 0x123 -#define RADIO_2063_TXRX_LOOPBACK_1 0x124 -#define RADIO_2063_TXRX_LOOPBACK_2 0x125 -#define RADIO_2063_EXTTSSI_CTRL_1 0x126 -#define RADIO_2063_EXTTSSI_CTRL_2 0x127 -#define RADIO_2063_AFE_CTRL 0x128 -#define RADIO_2063_TXBB_CTRL_6 0x129 -#define RADIO_2063_TXBB_CTRL_7 0x12a -#define RADIO_2063_TXBB_CTRL_8 0x12b -#define RADIO_2063_TXBB_CTRL_9 0x12c -#define RADIO_2063_TXBB_CTRL_10 0x12d -#define RADIO_2063_TXBB_CTRL_11 0x12e -#define RADIO_2063_TXBB_CTRL_12 0x12f -#define RADIO_2063_TXBB_CTRL_13 0x130 -#define RADIO_2063_TXBB_CTRL_14 0x131 -#define RADIO_2063_TXBB_CTRL_15 0x132 -#define RADIO_2063_TXBB_CTRL_16 0x133 -#define RADIO_2063_TXBB_CTRL_17 0x134 -#define RADIO_2063_TXBB_CTRL_18 0x135 -#define RADIO_2063_TXBB_CTRL_19 0x136 -#define RADIO_2063_AFE_LOOPBACK_CTRL_1 0x137 -#define RADIO_2063_PA_CTRL_14 0x138 -#define RADIO_2063_PA_CTRL_15 0x139 - -/* Auto-generated 2056 register definitions */ -#define RADIO_2056_SYN (0x0 << 12) -#define RADIO_2056_TX0 (0x2 << 12) -#define RADIO_2056_TX1 (0x3 << 12) -#define RADIO_2056_RX0 (0x6 << 12) -#define RADIO_2056_RX1 (0x7 << 12) -#define RADIO_2056_ALLTX (0xe << 12) -#define RADIO_2056_ALLRX (0xf << 12) - -#define RADIO_2056_SYN_RESERVED_ADDR0 0x0 -#define RADIO_2056_SYN_IDCODE 0x1 -#define RADIO_2056_SYN_RESERVED_ADDR2 0x2 -#define RADIO_2056_SYN_RESERVED_ADDR3 0x3 -#define RADIO_2056_SYN_RESERVED_ADDR4 0x4 -#define RADIO_2056_SYN_RESERVED_ADDR5 0x5 -#define RADIO_2056_SYN_RESERVED_ADDR6 0x6 -#define RADIO_2056_SYN_RESERVED_ADDR7 0x7 -#define RADIO_2056_SYN_COM_CTRL 0x8 -#define RADIO_2056_SYN_COM_PU 0x9 -#define RADIO_2056_SYN_COM_OVR 0xa -#define RADIO_2056_SYN_COM_RESET 0xb -#define RADIO_2056_SYN_COM_RCAL 0xc -#define RADIO_2056_SYN_COM_RC_RXLPF 0xd -#define RADIO_2056_SYN_COM_RC_TXLPF 0xe -#define RADIO_2056_SYN_COM_RC_RXHPF 0xf -#define RADIO_2056_SYN_RESERVED_ADDR16 0x10 -#define RADIO_2056_SYN_RESERVED_ADDR17 0x11 -#define RADIO_2056_SYN_RESERVED_ADDR18 0x12 -#define RADIO_2056_SYN_RESERVED_ADDR19 0x13 -#define RADIO_2056_SYN_RESERVED_ADDR20 0x14 -#define RADIO_2056_SYN_RESERVED_ADDR21 0x15 -#define RADIO_2056_SYN_RESERVED_ADDR22 0x16 -#define RADIO_2056_SYN_RESERVED_ADDR23 0x17 -#define RADIO_2056_SYN_RESERVED_ADDR24 0x18 -#define RADIO_2056_SYN_RESERVED_ADDR25 0x19 -#define RADIO_2056_SYN_RESERVED_ADDR26 0x1a -#define RADIO_2056_SYN_RESERVED_ADDR27 0x1b -#define RADIO_2056_SYN_RESERVED_ADDR28 0x1c -#define RADIO_2056_SYN_RESERVED_ADDR29 0x1d -#define RADIO_2056_SYN_RESERVED_ADDR30 0x1e -#define RADIO_2056_SYN_RESERVED_ADDR31 0x1f -#define RADIO_2056_SYN_GPIO_MASTER1 0x20 -#define RADIO_2056_SYN_GPIO_MASTER2 0x21 -#define RADIO_2056_SYN_TOPBIAS_MASTER 0x22 -#define RADIO_2056_SYN_TOPBIAS_RCAL 0x23 -#define RADIO_2056_SYN_AFEREG 0x24 -#define RADIO_2056_SYN_TEMPPROCSENSE 0x25 -#define RADIO_2056_SYN_TEMPPROCSENSEIDAC 0x26 -#define RADIO_2056_SYN_TEMPPROCSENSERCAL 0x27 -#define RADIO_2056_SYN_LPO 0x28 -#define RADIO_2056_SYN_VDDCAL_MASTER 0x29 -#define RADIO_2056_SYN_VDDCAL_IDAC 0x2a -#define RADIO_2056_SYN_VDDCAL_STATUS 0x2b -#define RADIO_2056_SYN_RCAL_MASTER 0x2c -#define RADIO_2056_SYN_RCAL_CODE_OUT 0x2d -#define RADIO_2056_SYN_RCCAL_CTRL0 0x2e -#define RADIO_2056_SYN_RCCAL_CTRL1 0x2f -#define RADIO_2056_SYN_RCCAL_CTRL2 0x30 -#define RADIO_2056_SYN_RCCAL_CTRL3 0x31 -#define RADIO_2056_SYN_RCCAL_CTRL4 0x32 -#define RADIO_2056_SYN_RCCAL_CTRL5 0x33 -#define RADIO_2056_SYN_RCCAL_CTRL6 0x34 -#define RADIO_2056_SYN_RCCAL_CTRL7 0x35 -#define RADIO_2056_SYN_RCCAL_CTRL8 0x36 -#define RADIO_2056_SYN_RCCAL_CTRL9 0x37 -#define RADIO_2056_SYN_RCCAL_CTRL10 0x38 -#define RADIO_2056_SYN_RCCAL_CTRL11 0x39 -#define RADIO_2056_SYN_ZCAL_SPARE1 0x3a -#define RADIO_2056_SYN_ZCAL_SPARE2 0x3b -#define RADIO_2056_SYN_PLL_MAST1 0x3c -#define RADIO_2056_SYN_PLL_MAST2 0x3d -#define RADIO_2056_SYN_PLL_MAST3 0x3e -#define RADIO_2056_SYN_PLL_BIAS_RESET 0x3f -#define RADIO_2056_SYN_PLL_XTAL0 0x40 -#define RADIO_2056_SYN_PLL_XTAL1 0x41 -#define RADIO_2056_SYN_PLL_XTAL3 0x42 -#define RADIO_2056_SYN_PLL_XTAL4 0x43 -#define RADIO_2056_SYN_PLL_XTAL5 0x44 -#define RADIO_2056_SYN_PLL_XTAL6 0x45 -#define RADIO_2056_SYN_PLL_REFDIV 0x46 -#define RADIO_2056_SYN_PLL_PFD 0x47 -#define RADIO_2056_SYN_PLL_CP1 0x48 -#define RADIO_2056_SYN_PLL_CP2 0x49 -#define RADIO_2056_SYN_PLL_CP3 0x4a -#define RADIO_2056_SYN_PLL_LOOPFILTER1 0x4b -#define RADIO_2056_SYN_PLL_LOOPFILTER2 0x4c -#define RADIO_2056_SYN_PLL_LOOPFILTER3 0x4d -#define RADIO_2056_SYN_PLL_LOOPFILTER4 0x4e -#define RADIO_2056_SYN_PLL_LOOPFILTER5 0x4f -#define RADIO_2056_SYN_PLL_MMD1 0x50 -#define RADIO_2056_SYN_PLL_MMD2 0x51 -#define RADIO_2056_SYN_PLL_VCO1 0x52 -#define RADIO_2056_SYN_PLL_VCO2 0x53 -#define RADIO_2056_SYN_PLL_MONITOR1 0x54 -#define RADIO_2056_SYN_PLL_MONITOR2 0x55 -#define RADIO_2056_SYN_PLL_VCOCAL1 0x56 -#define RADIO_2056_SYN_PLL_VCOCAL2 0x57 -#define RADIO_2056_SYN_PLL_VCOCAL4 0x58 -#define RADIO_2056_SYN_PLL_VCOCAL5 0x59 -#define RADIO_2056_SYN_PLL_VCOCAL6 0x5a -#define RADIO_2056_SYN_PLL_VCOCAL7 0x5b -#define RADIO_2056_SYN_PLL_VCOCAL8 0x5c -#define RADIO_2056_SYN_PLL_VCOCAL9 0x5d -#define RADIO_2056_SYN_PLL_VCOCAL10 0x5e -#define RADIO_2056_SYN_PLL_VCOCAL11 0x5f -#define RADIO_2056_SYN_PLL_VCOCAL12 0x60 -#define RADIO_2056_SYN_PLL_VCOCAL13 0x61 -#define RADIO_2056_SYN_PLL_VREG 0x62 -#define RADIO_2056_SYN_PLL_STATUS1 0x63 -#define RADIO_2056_SYN_PLL_STATUS2 0x64 -#define RADIO_2056_SYN_PLL_STATUS3 0x65 -#define RADIO_2056_SYN_LOGEN_PU0 0x66 -#define RADIO_2056_SYN_LOGEN_PU1 0x67 -#define RADIO_2056_SYN_LOGEN_PU2 0x68 -#define RADIO_2056_SYN_LOGEN_PU3 0x69 -#define RADIO_2056_SYN_LOGEN_PU5 0x6a -#define RADIO_2056_SYN_LOGEN_PU6 0x6b -#define RADIO_2056_SYN_LOGEN_PU7 0x6c -#define RADIO_2056_SYN_LOGEN_PU8 0x6d -#define RADIO_2056_SYN_LOGEN_BIAS_RESET 0x6e -#define RADIO_2056_SYN_LOGEN_RCCR1 0x6f -#define RADIO_2056_SYN_LOGEN_VCOBUF1 0x70 -#define RADIO_2056_SYN_LOGEN_MIXER1 0x71 -#define RADIO_2056_SYN_LOGEN_MIXER2 0x72 -#define RADIO_2056_SYN_LOGEN_BUF1 0x73 -#define RADIO_2056_SYN_LOGENBUF2 0x74 -#define RADIO_2056_SYN_LOGEN_BUF3 0x75 -#define RADIO_2056_SYN_LOGEN_BUF4 0x76 -#define RADIO_2056_SYN_LOGEN_DIV1 0x77 -#define RADIO_2056_SYN_LOGEN_DIV2 0x78 -#define RADIO_2056_SYN_LOGEN_DIV3 0x79 -#define RADIO_2056_SYN_LOGEN_ACL1 0x7a -#define RADIO_2056_SYN_LOGEN_ACL2 0x7b -#define RADIO_2056_SYN_LOGEN_ACL3 0x7c -#define RADIO_2056_SYN_LOGEN_ACL4 0x7d -#define RADIO_2056_SYN_LOGEN_ACL5 0x7e -#define RADIO_2056_SYN_LOGEN_ACL6 0x7f -#define RADIO_2056_SYN_LOGEN_ACLOUT 0x80 -#define RADIO_2056_SYN_LOGEN_ACLCAL1 0x81 -#define RADIO_2056_SYN_LOGEN_ACLCAL2 0x82 -#define RADIO_2056_SYN_LOGEN_ACLCAL3 0x83 -#define RADIO_2056_SYN_CALEN 0x84 -#define RADIO_2056_SYN_LOGEN_PEAKDET1 0x85 -#define RADIO_2056_SYN_LOGEN_CORE_ACL_OVR 0x86 -#define RADIO_2056_SYN_LOGEN_RX_DIFF_ACL_OVR 0x87 -#define RADIO_2056_SYN_LOGEN_TX_DIFF_ACL_OVR 0x88 -#define RADIO_2056_SYN_LOGEN_RX_CMOS_ACL_OVR 0x89 -#define RADIO_2056_SYN_LOGEN_TX_CMOS_ACL_OVR 0x8a -#define RADIO_2056_SYN_LOGEN_VCOBUF2 0x8b -#define RADIO_2056_SYN_LOGEN_MIXER3 0x8c -#define RADIO_2056_SYN_LOGEN_BUF5 0x8d -#define RADIO_2056_SYN_LOGEN_BUF6 0x8e -#define RADIO_2056_SYN_LOGEN_CBUFRX1 0x8f -#define RADIO_2056_SYN_LOGEN_CBUFRX2 0x90 -#define RADIO_2056_SYN_LOGEN_CBUFRX3 0x91 -#define RADIO_2056_SYN_LOGEN_CBUFRX4 0x92 -#define RADIO_2056_SYN_LOGEN_CBUFTX1 0x93 -#define RADIO_2056_SYN_LOGEN_CBUFTX2 0x94 -#define RADIO_2056_SYN_LOGEN_CBUFTX3 0x95 -#define RADIO_2056_SYN_LOGEN_CBUFTX4 0x96 -#define RADIO_2056_SYN_LOGEN_CMOSRX1 0x97 -#define RADIO_2056_SYN_LOGEN_CMOSRX2 0x98 -#define RADIO_2056_SYN_LOGEN_CMOSRX3 0x99 -#define RADIO_2056_SYN_LOGEN_CMOSRX4 0x9a -#define RADIO_2056_SYN_LOGEN_CMOSTX1 0x9b -#define RADIO_2056_SYN_LOGEN_CMOSTX2 0x9c -#define RADIO_2056_SYN_LOGEN_CMOSTX3 0x9d -#define RADIO_2056_SYN_LOGEN_CMOSTX4 0x9e -#define RADIO_2056_SYN_LOGEN_VCOBUF2_OVRVAL 0x9f -#define RADIO_2056_SYN_LOGEN_MIXER3_OVRVAL 0xa0 -#define RADIO_2056_SYN_LOGEN_BUF5_OVRVAL 0xa1 -#define RADIO_2056_SYN_LOGEN_BUF6_OVRVAL 0xa2 -#define RADIO_2056_SYN_LOGEN_CBUFRX1_OVRVAL 0xa3 -#define RADIO_2056_SYN_LOGEN_CBUFRX2_OVRVAL 0xa4 -#define RADIO_2056_SYN_LOGEN_CBUFRX3_OVRVAL 0xa5 -#define RADIO_2056_SYN_LOGEN_CBUFRX4_OVRVAL 0xa6 -#define RADIO_2056_SYN_LOGEN_CBUFTX1_OVRVAL 0xa7 -#define RADIO_2056_SYN_LOGEN_CBUFTX2_OVRVAL 0xa8 -#define RADIO_2056_SYN_LOGEN_CBUFTX3_OVRVAL 0xa9 -#define RADIO_2056_SYN_LOGEN_CBUFTX4_OVRVAL 0xaa -#define RADIO_2056_SYN_LOGEN_CMOSRX1_OVRVAL 0xab -#define RADIO_2056_SYN_LOGEN_CMOSRX2_OVRVAL 0xac -#define RADIO_2056_SYN_LOGEN_CMOSRX3_OVRVAL 0xad -#define RADIO_2056_SYN_LOGEN_CMOSRX4_OVRVAL 0xae -#define RADIO_2056_SYN_LOGEN_CMOSTX1_OVRVAL 0xaf -#define RADIO_2056_SYN_LOGEN_CMOSTX2_OVRVAL 0xb0 -#define RADIO_2056_SYN_LOGEN_CMOSTX3_OVRVAL 0xb1 -#define RADIO_2056_SYN_LOGEN_CMOSTX4_OVRVAL 0xb2 -#define RADIO_2056_SYN_LOGEN_ACL_WAITCNT 0xb3 -#define RADIO_2056_SYN_LOGEN_CORE_CALVALID 0xb4 -#define RADIO_2056_SYN_LOGEN_RX_CMOS_CALVALID 0xb5 -#define RADIO_2056_SYN_LOGEN_TX_CMOS_VALID 0xb6 - -#define RADIO_2056_TX_RESERVED_ADDR0 0x0 -#define RADIO_2056_TX_IDCODE 0x1 -#define RADIO_2056_TX_RESERVED_ADDR2 0x2 -#define RADIO_2056_TX_RESERVED_ADDR3 0x3 -#define RADIO_2056_TX_RESERVED_ADDR4 0x4 -#define RADIO_2056_TX_RESERVED_ADDR5 0x5 -#define RADIO_2056_TX_RESERVED_ADDR6 0x6 -#define RADIO_2056_TX_RESERVED_ADDR7 0x7 -#define RADIO_2056_TX_COM_CTRL 0x8 -#define RADIO_2056_TX_COM_PU 0x9 -#define RADIO_2056_TX_COM_OVR 0xa -#define RADIO_2056_TX_COM_RESET 0xb -#define RADIO_2056_TX_COM_RCAL 0xc -#define RADIO_2056_TX_COM_RC_RXLPF 0xd -#define RADIO_2056_TX_COM_RC_TXLPF 0xe -#define RADIO_2056_TX_COM_RC_RXHPF 0xf -#define RADIO_2056_TX_RESERVED_ADDR16 0x10 -#define RADIO_2056_TX_RESERVED_ADDR17 0x11 -#define RADIO_2056_TX_RESERVED_ADDR18 0x12 -#define RADIO_2056_TX_RESERVED_ADDR19 0x13 -#define RADIO_2056_TX_RESERVED_ADDR20 0x14 -#define RADIO_2056_TX_RESERVED_ADDR21 0x15 -#define RADIO_2056_TX_RESERVED_ADDR22 0x16 -#define RADIO_2056_TX_RESERVED_ADDR23 0x17 -#define RADIO_2056_TX_RESERVED_ADDR24 0x18 -#define RADIO_2056_TX_RESERVED_ADDR25 0x19 -#define RADIO_2056_TX_RESERVED_ADDR26 0x1a -#define RADIO_2056_TX_RESERVED_ADDR27 0x1b -#define RADIO_2056_TX_RESERVED_ADDR28 0x1c -#define RADIO_2056_TX_RESERVED_ADDR29 0x1d -#define RADIO_2056_TX_RESERVED_ADDR30 0x1e -#define RADIO_2056_TX_RESERVED_ADDR31 0x1f -#define RADIO_2056_TX_IQCAL_GAIN_BW 0x20 -#define RADIO_2056_TX_LOFT_FINE_I 0x21 -#define RADIO_2056_TX_LOFT_FINE_Q 0x22 -#define RADIO_2056_TX_LOFT_COARSE_I 0x23 -#define RADIO_2056_TX_LOFT_COARSE_Q 0x24 -#define RADIO_2056_TX_TX_COM_MASTER1 0x25 -#define RADIO_2056_TX_TX_COM_MASTER2 0x26 -#define RADIO_2056_TX_RXIQCAL_TXMUX 0x27 -#define RADIO_2056_TX_TX_SSI_MASTER 0x28 -#define RADIO_2056_TX_IQCAL_VCM_HG 0x29 -#define RADIO_2056_TX_IQCAL_IDAC 0x2a -#define RADIO_2056_TX_TSSI_VCM 0x2b -#define RADIO_2056_TX_TX_AMP_DET 0x2c -#define RADIO_2056_TX_TX_SSI_MUX 0x2d -#define RADIO_2056_TX_TSSIA 0x2e -#define RADIO_2056_TX_TSSIG 0x2f -#define RADIO_2056_TX_TSSI_MISC1 0x30 -#define RADIO_2056_TX_TSSI_MISC2 0x31 -#define RADIO_2056_TX_TSSI_MISC3 0x32 -#define RADIO_2056_TX_PA_SPARE1 0x33 -#define RADIO_2056_TX_PA_SPARE2 0x34 -#define RADIO_2056_TX_INTPAA_MASTER 0x35 -#define RADIO_2056_TX_INTPAA_GAIN 0x36 -#define RADIO_2056_TX_INTPAA_BOOST_TUNE 0x37 -#define RADIO_2056_TX_INTPAA_IAUX_STAT 0x38 -#define RADIO_2056_TX_INTPAA_IAUX_DYN 0x39 -#define RADIO_2056_TX_INTPAA_IMAIN_STAT 0x3a -#define RADIO_2056_TX_INTPAA_IMAIN_DYN 0x3b -#define RADIO_2056_TX_INTPAA_CASCBIAS 0x3c -#define RADIO_2056_TX_INTPAA_PASLOPE 0x3d -#define RADIO_2056_TX_INTPAA_PA_MISC 0x3e -#define RADIO_2056_TX_INTPAG_MASTER 0x3f -#define RADIO_2056_TX_INTPAG_GAIN 0x40 -#define RADIO_2056_TX_INTPAG_BOOST_TUNE 0x41 -#define RADIO_2056_TX_INTPAG_IAUX_STAT 0x42 -#define RADIO_2056_TX_INTPAG_IAUX_DYN 0x43 -#define RADIO_2056_TX_INTPAG_IMAIN_STAT 0x44 -#define RADIO_2056_TX_INTPAG_IMAIN_DYN 0x45 -#define RADIO_2056_TX_INTPAG_CASCBIAS 0x46 -#define RADIO_2056_TX_INTPAG_PASLOPE 0x47 -#define RADIO_2056_TX_INTPAG_PA_MISC 0x48 -#define RADIO_2056_TX_PADA_MASTER 0x49 -#define RADIO_2056_TX_PADA_IDAC 0x4a -#define RADIO_2056_TX_PADA_CASCBIAS 0x4b -#define RADIO_2056_TX_PADA_GAIN 0x4c -#define RADIO_2056_TX_PADA_BOOST_TUNE 0x4d -#define RADIO_2056_TX_PADA_SLOPE 0x4e -#define RADIO_2056_TX_PADG_MASTER 0x4f -#define RADIO_2056_TX_PADG_IDAC 0x50 -#define RADIO_2056_TX_PADG_CASCBIAS 0x51 -#define RADIO_2056_TX_PADG_GAIN 0x52 -#define RADIO_2056_TX_PADG_BOOST_TUNE 0x53 -#define RADIO_2056_TX_PADG_SLOPE 0x54 -#define RADIO_2056_TX_PGAA_MASTER 0x55 -#define RADIO_2056_TX_PGAA_IDAC 0x56 -#define RADIO_2056_TX_PGAA_GAIN 0x57 -#define RADIO_2056_TX_PGAA_BOOST_TUNE 0x58 -#define RADIO_2056_TX_PGAA_SLOPE 0x59 -#define RADIO_2056_TX_PGAA_MISC 0x5a -#define RADIO_2056_TX_PGAG_MASTER 0x5b -#define RADIO_2056_TX_PGAG_IDAC 0x5c -#define RADIO_2056_TX_PGAG_GAIN 0x5d -#define RADIO_2056_TX_PGAG_BOOST_TUNE 0x5e -#define RADIO_2056_TX_PGAG_SLOPE 0x5f -#define RADIO_2056_TX_PGAG_MISC 0x60 -#define RADIO_2056_TX_MIXA_MASTER 0x61 -#define RADIO_2056_TX_MIXA_BOOST_TUNE 0x62 -#define RADIO_2056_TX_MIXG 0x63 -#define RADIO_2056_TX_MIXG_BOOST_TUNE 0x64 -#define RADIO_2056_TX_BB_GM_MASTER 0x65 -#define RADIO_2056_TX_GMBB_GM 0x66 -#define RADIO_2056_TX_GMBB_IDAC 0x67 -#define RADIO_2056_TX_TXLPF_MASTER 0x68 -#define RADIO_2056_TX_TXLPF_RCCAL 0x69 -#define RADIO_2056_TX_TXLPF_RCCAL_OFF0 0x6a -#define RADIO_2056_TX_TXLPF_RCCAL_OFF1 0x6b -#define RADIO_2056_TX_TXLPF_RCCAL_OFF2 0x6c -#define RADIO_2056_TX_TXLPF_RCCAL_OFF3 0x6d -#define RADIO_2056_TX_TXLPF_RCCAL_OFF4 0x6e -#define RADIO_2056_TX_TXLPF_RCCAL_OFF5 0x6f -#define RADIO_2056_TX_TXLPF_RCCAL_OFF6 0x70 -#define RADIO_2056_TX_TXLPF_BW 0x71 -#define RADIO_2056_TX_TXLPF_GAIN 0x72 -#define RADIO_2056_TX_TXLPF_IDAC 0x73 -#define RADIO_2056_TX_TXLPF_IDAC_0 0x74 -#define RADIO_2056_TX_TXLPF_IDAC_1 0x75 -#define RADIO_2056_TX_TXLPF_IDAC_2 0x76 -#define RADIO_2056_TX_TXLPF_IDAC_3 0x77 -#define RADIO_2056_TX_TXLPF_IDAC_4 0x78 -#define RADIO_2056_TX_TXLPF_IDAC_5 0x79 -#define RADIO_2056_TX_TXLPF_IDAC_6 0x7a -#define RADIO_2056_TX_TXLPF_OPAMP_IDAC 0x7b -#define RADIO_2056_TX_TXLPF_MISC 0x7c -#define RADIO_2056_TX_TXSPARE1 0x7d -#define RADIO_2056_TX_TXSPARE2 0x7e -#define RADIO_2056_TX_TXSPARE3 0x7f -#define RADIO_2056_TX_TXSPARE4 0x80 -#define RADIO_2056_TX_TXSPARE5 0x81 -#define RADIO_2056_TX_TXSPARE6 0x82 -#define RADIO_2056_TX_TXSPARE7 0x83 -#define RADIO_2056_TX_TXSPARE8 0x84 -#define RADIO_2056_TX_TXSPARE9 0x85 -#define RADIO_2056_TX_TXSPARE10 0x86 -#define RADIO_2056_TX_TXSPARE11 0x87 -#define RADIO_2056_TX_TXSPARE12 0x88 -#define RADIO_2056_TX_TXSPARE13 0x89 -#define RADIO_2056_TX_TXSPARE14 0x8a -#define RADIO_2056_TX_TXSPARE15 0x8b -#define RADIO_2056_TX_TXSPARE16 0x8c -#define RADIO_2056_TX_STATUS_INTPA_GAIN 0x8d -#define RADIO_2056_TX_STATUS_PAD_GAIN 0x8e -#define RADIO_2056_TX_STATUS_PGA_GAIN 0x8f -#define RADIO_2056_TX_STATUS_GM_TXLPF_GAIN 0x90 -#define RADIO_2056_TX_STATUS_TXLPF_BW 0x91 -#define RADIO_2056_TX_STATUS_TXLPF_RC 0x92 -#define RADIO_2056_TX_GMBB_IDAC0 0x93 -#define RADIO_2056_TX_GMBB_IDAC1 0x94 -#define RADIO_2056_TX_GMBB_IDAC2 0x95 -#define RADIO_2056_TX_GMBB_IDAC3 0x96 -#define RADIO_2056_TX_GMBB_IDAC4 0x97 -#define RADIO_2056_TX_GMBB_IDAC5 0x98 -#define RADIO_2056_TX_GMBB_IDAC6 0x99 -#define RADIO_2056_TX_GMBB_IDAC7 0x9a - -#define RADIO_2056_RX_RESERVED_ADDR0 0x0 -#define RADIO_2056_RX_IDCODE 0x1 -#define RADIO_2056_RX_RESERVED_ADDR2 0x2 -#define RADIO_2056_RX_RESERVED_ADDR3 0x3 -#define RADIO_2056_RX_RESERVED_ADDR4 0x4 -#define RADIO_2056_RX_RESERVED_ADDR5 0x5 -#define RADIO_2056_RX_RESERVED_ADDR6 0x6 -#define RADIO_2056_RX_RESERVED_ADDR7 0x7 -#define RADIO_2056_RX_COM_CTRL 0x8 -#define RADIO_2056_RX_COM_PU 0x9 -#define RADIO_2056_RX_COM_OVR 0xa -#define RADIO_2056_RX_COM_RESET 0xb -#define RADIO_2056_RX_COM_RCAL 0xc -#define RADIO_2056_RX_COM_RC_RXLPF 0xd -#define RADIO_2056_RX_COM_RC_TXLPF 0xe -#define RADIO_2056_RX_COM_RC_RXHPF 0xf -#define RADIO_2056_RX_RESERVED_ADDR16 0x10 -#define RADIO_2056_RX_RESERVED_ADDR17 0x11 -#define RADIO_2056_RX_RESERVED_ADDR18 0x12 -#define RADIO_2056_RX_RESERVED_ADDR19 0x13 -#define RADIO_2056_RX_RESERVED_ADDR20 0x14 -#define RADIO_2056_RX_RESERVED_ADDR21 0x15 -#define RADIO_2056_RX_RESERVED_ADDR22 0x16 -#define RADIO_2056_RX_RESERVED_ADDR23 0x17 -#define RADIO_2056_RX_RESERVED_ADDR24 0x18 -#define RADIO_2056_RX_RESERVED_ADDR25 0x19 -#define RADIO_2056_RX_RESERVED_ADDR26 0x1a -#define RADIO_2056_RX_RESERVED_ADDR27 0x1b -#define RADIO_2056_RX_RESERVED_ADDR28 0x1c -#define RADIO_2056_RX_RESERVED_ADDR29 0x1d -#define RADIO_2056_RX_RESERVED_ADDR30 0x1e -#define RADIO_2056_RX_RESERVED_ADDR31 0x1f -#define RADIO_2056_RX_RXIQCAL_RXMUX 0x20 -#define RADIO_2056_RX_RSSI_PU 0x21 -#define RADIO_2056_RX_RSSI_SEL 0x22 -#define RADIO_2056_RX_RSSI_GAIN 0x23 -#define RADIO_2056_RX_RSSI_NB_IDAC 0x24 -#define RADIO_2056_RX_RSSI_WB2I_IDAC_1 0x25 -#define RADIO_2056_RX_RSSI_WB2I_IDAC_2 0x26 -#define RADIO_2056_RX_RSSI_WB2Q_IDAC_1 0x27 -#define RADIO_2056_RX_RSSI_WB2Q_IDAC_2 0x28 -#define RADIO_2056_RX_RSSI_POLE 0x29 -#define RADIO_2056_RX_RSSI_WB1_IDAC 0x2a -#define RADIO_2056_RX_RSSI_MISC 0x2b -#define RADIO_2056_RX_LNAA_MASTER 0x2c -#define RADIO_2056_RX_LNAA_TUNE 0x2d -#define RADIO_2056_RX_LNAA_GAIN 0x2e -#define RADIO_2056_RX_LNA_A_SLOPE 0x2f -#define RADIO_2056_RX_BIASPOLE_LNAA1_IDAC 0x30 -#define RADIO_2056_RX_LNAA2_IDAC 0x31 -#define RADIO_2056_RX_LNA1A_MISC 0x32 -#define RADIO_2056_RX_LNAG_MASTER 0x33 -#define RADIO_2056_RX_LNAG_TUNE 0x34 -#define RADIO_2056_RX_LNAG_GAIN 0x35 -#define RADIO_2056_RX_LNA_G_SLOPE 0x36 -#define RADIO_2056_RX_BIASPOLE_LNAG1_IDAC 0x37 -#define RADIO_2056_RX_LNAG2_IDAC 0x38 -#define RADIO_2056_RX_LNA1G_MISC 0x39 -#define RADIO_2056_RX_MIXA_MASTER 0x3a -#define RADIO_2056_RX_MIXA_VCM 0x3b -#define RADIO_2056_RX_MIXA_CTRLPTAT 0x3c -#define RADIO_2056_RX_MIXA_LOB_BIAS 0x3d -#define RADIO_2056_RX_MIXA_CORE_IDAC 0x3e -#define RADIO_2056_RX_MIXA_CMFB_IDAC 0x3f -#define RADIO_2056_RX_MIXA_BIAS_AUX 0x40 -#define RADIO_2056_RX_MIXA_BIAS_MAIN 0x41 -#define RADIO_2056_RX_MIXA_BIAS_MISC 0x42 -#define RADIO_2056_RX_MIXA_MAST_BIAS 0x43 -#define RADIO_2056_RX_MIXG_MASTER 0x44 -#define RADIO_2056_RX_MIXG_VCM 0x45 -#define RADIO_2056_RX_MIXG_CTRLPTAT 0x46 -#define RADIO_2056_RX_MIXG_LOB_BIAS 0x47 -#define RADIO_2056_RX_MIXG_CORE_IDAC 0x48 -#define RADIO_2056_RX_MIXG_CMFB_IDAC 0x49 -#define RADIO_2056_RX_MIXG_BIAS_AUX 0x4a -#define RADIO_2056_RX_MIXG_BIAS_MAIN 0x4b -#define RADIO_2056_RX_MIXG_BIAS_MISC 0x4c -#define RADIO_2056_RX_MIXG_MAST_BIAS 0x4d -#define RADIO_2056_RX_TIA_MASTER 0x4e -#define RADIO_2056_RX_TIA_IOPAMP 0x4f -#define RADIO_2056_RX_TIA_QOPAMP 0x50 -#define RADIO_2056_RX_TIA_IMISC 0x51 -#define RADIO_2056_RX_TIA_QMISC 0x52 -#define RADIO_2056_RX_TIA_GAIN 0x53 -#define RADIO_2056_RX_TIA_SPARE1 0x54 -#define RADIO_2056_RX_TIA_SPARE2 0x55 -#define RADIO_2056_RX_BB_LPF_MASTER 0x56 -#define RADIO_2056_RX_AACI_MASTER 0x57 -#define RADIO_2056_RX_RXLPF_IDAC 0x58 -#define RADIO_2056_RX_RXLPF_OPAMPBIAS_LOWQ 0x59 -#define RADIO_2056_RX_RXLPF_OPAMPBIAS_HIGHQ 0x5a -#define RADIO_2056_RX_RXLPF_BIAS_DCCANCEL 0x5b -#define RADIO_2056_RX_RXLPF_OUTVCM 0x5c -#define RADIO_2056_RX_RXLPF_INVCM_BODY 0x5d -#define RADIO_2056_RX_RXLPF_CC_OP 0x5e -#define RADIO_2056_RX_RXLPF_GAIN 0x5f -#define RADIO_2056_RX_RXLPF_Q_BW 0x60 -#define RADIO_2056_RX_RXLPF_HP_CORNER_BW 0x61 -#define RADIO_2056_RX_RXLPF_RCCAL_HPC 0x62 -#define RADIO_2056_RX_RXHPF_OFF0 0x63 -#define RADIO_2056_RX_RXHPF_OFF1 0x64 -#define RADIO_2056_RX_RXHPF_OFF2 0x65 -#define RADIO_2056_RX_RXHPF_OFF3 0x66 -#define RADIO_2056_RX_RXHPF_OFF4 0x67 -#define RADIO_2056_RX_RXHPF_OFF5 0x68 -#define RADIO_2056_RX_RXHPF_OFF6 0x69 -#define RADIO_2056_RX_RXHPF_OFF7 0x6a -#define RADIO_2056_RX_RXLPF_RCCAL_LPC 0x6b -#define RADIO_2056_RX_RXLPF_OFF_0 0x6c -#define RADIO_2056_RX_RXLPF_OFF_1 0x6d -#define RADIO_2056_RX_RXLPF_OFF_2 0x6e -#define RADIO_2056_RX_RXLPF_OFF_3 0x6f -#define RADIO_2056_RX_RXLPF_OFF_4 0x70 -#define RADIO_2056_RX_UNUSED 0x71 -#define RADIO_2056_RX_VGA_MASTER 0x72 -#define RADIO_2056_RX_VGA_BIAS 0x73 -#define RADIO_2056_RX_VGA_BIAS_DCCANCEL 0x74 -#define RADIO_2056_RX_VGA_GAIN 0x75 -#define RADIO_2056_RX_VGA_HP_CORNER_BW 0x76 -#define RADIO_2056_RX_VGABUF_BIAS 0x77 -#define RADIO_2056_RX_VGABUF_GAIN_BW 0x78 -#define RADIO_2056_RX_TXFBMIX_A 0x79 -#define RADIO_2056_RX_TXFBMIX_G 0x7a -#define RADIO_2056_RX_RXSPARE1 0x7b -#define RADIO_2056_RX_RXSPARE2 0x7c -#define RADIO_2056_RX_RXSPARE3 0x7d -#define RADIO_2056_RX_RXSPARE4 0x7e -#define RADIO_2056_RX_RXSPARE5 0x7f -#define RADIO_2056_RX_RXSPARE6 0x80 -#define RADIO_2056_RX_RXSPARE7 0x81 -#define RADIO_2056_RX_RXSPARE8 0x82 -#define RADIO_2056_RX_RXSPARE9 0x83 -#define RADIO_2056_RX_RXSPARE10 0x84 -#define RADIO_2056_RX_RXSPARE11 0x85 -#define RADIO_2056_RX_RXSPARE12 0x86 -#define RADIO_2056_RX_RXSPARE13 0x87 -#define RADIO_2056_RX_RXSPARE14 0x88 -#define RADIO_2056_RX_RXSPARE15 0x89 -#define RADIO_2056_RX_RXSPARE16 0x8a -#define RADIO_2056_RX_STATUS_LNAA_GAIN 0x8b -#define RADIO_2056_RX_STATUS_LNAG_GAIN 0x8c -#define RADIO_2056_RX_STATUS_MIXTIA_GAIN 0x8d -#define RADIO_2056_RX_STATUS_RXLPF_GAIN 0x8e -#define RADIO_2056_RX_STATUS_VGA_BUF_GAIN 0x8f -#define RADIO_2056_RX_STATUS_RXLPF_Q 0x90 -#define RADIO_2056_RX_STATUS_RXLPF_BUF_BW 0x91 -#define RADIO_2056_RX_STATUS_RXLPF_VGA_HPC 0x92 -#define RADIO_2056_RX_STATUS_RXLPF_RC 0x93 -#define RADIO_2056_RX_STATUS_HPC_RC 0x94 - -/* 2056 bit masks */ -#define RADIO_2056_LNA1_A_PU 0x01 -#define RADIO_2056_LNA2_A_PU 0x02 -#define RADIO_2056_LNA1_G_PU 0x01 -#define RADIO_2056_LNA2_G_PU 0x02 -#define RADIO_2056_MIXA_PU_I 0x01 -#define RADIO_2056_MIXA_PU_Q 0x02 -#define RADIO_2056_MIXA_PU_GM 0x10 -#define RADIO_2056_MIXG_PU_I 0x01 -#define RADIO_2056_MIXG_PU_Q 0x02 -#define RADIO_2056_MIXG_PU_GM 0x10 -#define RADIO_2056_TIA_PU 0x01 -#define RADIO_2056_BB_LPF_PU 0x20 -#define RADIO_2056_W1_PU 0x02 -#define RADIO_2056_W2_PU 0x04 -#define RADIO_2056_NB_PU 0x08 -#define RADIO_2056_RSSI_W1_SEL 0x02 -#define RADIO_2056_RSSI_W2_SEL 0x04 -#define RADIO_2056_RSSI_NB_SEL 0x08 -#define RADIO_2056_VCM_MASK 0x1c -#define RADIO_2056_RSSI_VCM_SHIFT 0x02 - -#endif /* _BCM20XX_H */ diff --git a/release/src-rt/include/bcmdefs.h b/release/src-rt/include/bcmdefs.h old mode 100644 new mode 100755 index 8a87c1da69..f506af988c --- a/release/src-rt/include/bcmdefs.h +++ b/release/src-rt/include/bcmdefs.h @@ -283,6 +283,8 @@ typedef struct { * will result in failure of dma map */ #define MAX_DMA_SEGS 8 +#elif defined(__NetBSD__) +#define MAX_DMA_SEGS 16 #else #define MAX_DMA_SEGS 4 #endif @@ -305,9 +307,13 @@ typedef struct { #if defined(BCM_RPC_NOCOPY) || defined(BCM_RCP_TXNOCOPY) /* add 40 bytes to allow for extra RPC header and info */ #define BCMEXTRAHDROOM 220 -#else +#else /* BCM_RPC_NOCOPY || BCM_RPC_TXNOCOPY */ +#ifdef CTFMAP +#define BCMEXTRAHDROOM 176 +#else /* CTFMAP */ #define BCMEXTRAHDROOM 172 -#endif +#endif /* CTFMAP */ +#endif /* BCM_RPC_NOCOPY || BCM_RPC_TXNOCOPY */ /* Packet alignment for most efficient SDIO (can change based on platform) */ #ifndef SDALIGN diff --git a/release/src-rt/include/bcmdevs.h b/release/src-rt/include/bcmdevs.h old mode 100644 new mode 100755 index aefd64767e..2b119168e5 --- a/release/src-rt/include/bcmdevs.h +++ b/release/src-rt/include/bcmdevs.h @@ -128,9 +128,12 @@ #define BCM43237_D11N5G_ID 0x4356 /* 43237 802.11n 5GHz device */ #define BCM43227_D11N2G_ID 0x4358 /* 43228 802.11n 2.4GHz device */ #define BCM43228_D11N_ID 0x4359 /* 43228 802.11n DualBand device */ -#define BCM43228_D11N5G_ID 0x435a /* 43228 802.11n 5GHz device */ +#define BCM43228_D11N5G_ID 0x435a /* 43228 802.11n 5GHz device */ #define BCM43362_D11N_ID 0x4363 /* 43362 802.11n 2.4GHz device */ #define BCM43239_D11N_ID 0x4370 /* 43239 802.11n dualband device */ +#define BCM4324_D11N_ID 0x4374 /* 4324 802.11n dualband device */ +#define BCM43217_D11N2G_ID 0x43a9 /* 43217 802.11n 2.4GHz device */ +#define BCM43131_D11N2G_ID 0x43aa /* 43131 802.11n 2.4GHz device */ #define BCM4314_D11N2G_ID 0x4364 /* 4314 802.11n 2.4G device */ #define BCM43142_D11N2G_ID 0x4365 /* 43142 802.11n 2.4G device */ @@ -189,6 +192,7 @@ #define BCM43112_CHIP_ID 43112 /* 43112 chipcommon chipid (OTP chipid) */ #define BCM4312_CHIP_ID 0x4312 /* 4312 chipcommon chipid */ #define BCM4313_CHIP_ID 0x4313 /* 4313 chip id */ +#define BCM43131_CHIP_ID 43131 /* 43131 chip id (OTP chipid) */ #define BCM4315_CHIP_ID 0x4315 /* 4315 chip id */ #define BCM4318_CHIP_ID 0x4318 /* 4318 chipcommon chipid */ #define BCM4319_CHIP_ID 0x4319 /* 4319 chip id */ @@ -221,9 +225,13 @@ #define BCM43362_CHIP_ID 43362 /* 43362 chipcommon chipid */ #define BCM4330_CHIP_ID 0x4330 /* 4330 chipcommon chipid */ #define BCM6362_CHIP_ID 0x6362 /* 6362 chipcommon chipid */ +#define BCM4334_CHIP_ID 0x4334 /* 4334 chipcommon chipid */ +#define BCM4334_D11N_ID 0x4380 /* 4334 802.11n dualband device */ +#define BCM4334_D11N2G_ID 0x4381 /* 4334 802.11n 2.4G device */ +#define BCM4334_D11N5G_ID 0x4382 /* 4334 802.11n 5G device */ #define BCM4314_CHIP_ID 0x4314 /* 4314 chipcommon chipid */ #define BCM43142_CHIP_ID 43142 /* 43142 chipcommon chipid */ - +#define BCM4324_CHIP_ID 0x4324 /* 4324 chipcommon chipid */ #define BCM4342_CHIP_ID 4342 /* 4342 chipcommon chipid (OTP, RBBU) */ #define BCM4402_CHIP_ID 0x4402 /* 4402 chipid */ #define BCM4704_CHIP_ID 0x4704 /* 4704 chipcommon chipid */ @@ -266,7 +274,10 @@ #define BCM5357_PKG_ID 11 /* 5357 package id */ #define BCM5356U_PKG_ID 12 /* 5356U package id */ #define BCM53572_PKG_ID 8 /* 53572 package id */ +#define BCM5357C0_PKG_ID 8 /* 5357c0 package id (the same as 53572) */ #define BCM47188_PKG_ID 9 /* 47188 package id */ +#define BCM5358C0_PKG_ID 0xa /* 5358c0 package id */ +#define BCM5356C0_PKG_ID 0xb /* 5356c0 package id */ #define BCM4331TT_PKG_ID 8 /* 4331 12x12 package id */ #define BCM4331TN_PKG_ID 9 /* 4331 12x9 package id */ #define BCM4331TNA0_PKG_ID 0xb /* 4331 12x9 package id */ @@ -340,7 +351,7 @@ #define BFL2_CAESERS_BRD 0x00000040 /* Board is Caesers brd (unused by sw) */ #define BFL2_BTC3WIRE 0x00000080 /* Board support legacy 3 wire or 4 wire */ #define BFL2_BTCLEGACY 0x00000080 /* Board support legacy 3/4 wire, to replace - * BFL2_BTC3WIRE + * BFL2_BTC3WIRE */ #define BFL2_SKWRKFEM_BRD 0x00000100 /* 4321mcm93 board uses Skyworks FEM */ #define BFL2_SPUR_WAR 0x00000200 /* Board has a WAR for clock-harmonic spurs */ @@ -370,7 +381,8 @@ #define BFL2_PWR_NOMINAL 0x04000000 /* 0: power reduction on, 1: no power reduction */ #define BFL2_EXTLNA_TX 0x08000000 /* Temp boardflag to indicate to */ /* ucode control of eLNA during Tx */ - +#define BFL2_4313_RADIOREG 0x10000000 + /* board rework */ /* board specific GPIO assignment, gpio 0-3 are also customer-configurable led */ #define BOARD_GPIO_BTC3W_IN 0x850 /* bit 4 is RF_ACTIVE, bit 6 is STATUS, bit 11 is PRI */ @@ -629,6 +641,7 @@ #define BCM94319BHEMU3_SSID 0x0563 #define BCM94319SDHMB_SSID 0x058c #define BCM94319SDBREF_SSID 0x05a1 +#define BCM94319USBSDB_SSID 0x05a2 /* 4329 boards */ #define BCM94329AGB_SSID 0X04b9 @@ -681,6 +694,10 @@ #define BCM943228HM4L_SSID 0x0545 #define BCM943228SD_SSID 0x0573 +/* 43239 Boards */ +#define BCM943239MOD_SSID 0x05ac +#define BCM943239REF_SSID 0x05aa + /* 4331 boards */ #define BCM94331X19 0x00D6 /* X19B */ #define BCM94331PCIEBT3Ax_SSID 0x00E4 /* X28 */ @@ -696,6 +713,8 @@ #define BCM94331PCIEDUAL_SSID 0x059B #define BCM94331MCH5_SSID 0x05A9 #define BCM94331PCIEDUALV2_SSID 0x05B7 +#define BCM94331CS_SSID 0x05C6 +#define BCM94331CSAX_SSID 0x00EF /* 53572 Boards */ #define BCM953572BU_SSID 0x058D diff --git a/release/src-rt/include/bcmenetphy.h b/release/src-rt/include/bcmenetphy.h old mode 100644 new mode 100755 index c4fd212a53..4a83c182d0 --- a/release/src-rt/include/bcmenetphy.h +++ b/release/src-rt/include/bcmenetphy.h @@ -47,9 +47,7 @@ #define LPA_100HALF 0x0080 /* can do 100mbps half-duplex */ #define LPA_100FULL 0x0100 /* can do 100mbps full-duplex */ #define LPA_100BASE4 0x0200 /* can do 100mbps 4k packets */ -#ifndef LPA_RESV #define LPA_RESV 0x1c00 /* unused */ -#endif #define LPA_RFAULT 0x2000 /* link partner faulted */ #define LPA_LPACK 0x4000 /* link partner acked us */ #define LPA_NPAGE 0x8000 /* next page bit */ diff --git a/release/src-rt/include/bcmnvram.h b/release/src-rt/include/bcmnvram.h old mode 100644 new mode 100755 index e3aa19f9d6..b33cccd596 --- a/release/src-rt/include/bcmnvram.h +++ b/release/src-rt/include/bcmnvram.h @@ -169,9 +169,13 @@ uint8 nvram_calc_crc(struct nvram_header * nvh); #define NVRAM_VERSION 1 #define NVRAM_HEADER_SIZE 20 #if CONFIG_NVRAM_SIZE -#define NVRAM_SPACE CONFIG_NVRAM_SIZE * 0x0400 +#define NVRAM_SPACE CONFIG_NVRAM_SIZE * 0x0400 #else -#define NVRAM_SPACE 0x8000 +#if (defined(TCONFIG_NVRAM_64K) || defined(CONFIG_NVRAM_64K)) + #define NVRAM_SPACE 0x10000 +#else + #define NVRAM_SPACE 0x8000 +#endif #endif #define NVRAM_MAX_VALUE_LEN 255 diff --git a/release/src-rt/include/bcmparams.h b/release/src-rt/include/bcmparams.h old mode 100644 new mode 100755 index 9fe18d12e3..c9ed9a32be --- a/release/src-rt/include/bcmparams.h +++ b/release/src-rt/include/bcmparams.h @@ -20,7 +20,7 @@ #ifndef _bcmparams_h_ #define _bcmparams_h_ -#define VLAN_MAXVID 501 /* Max. VLAN ID supported/allowed */ +#define VLAN_MAXVID 15 /* Max. VLAN ID supported/allowed */ #define VLAN_NUMPRIS 8 /* # of prio, start from 0 */ diff --git a/release/src-rt/include/bcmsrom_fmt.h b/release/src-rt/include/bcmsrom_fmt.h old mode 100644 new mode 100755 index ae8e718055..6892155091 --- a/release/src-rt/include/bcmsrom_fmt.h +++ b/release/src-rt/include/bcmsrom_fmt.h @@ -373,6 +373,7 @@ #define SROM8_RXGAINERR_5GM 207 #define SROM8_RXGAINERR_5GH 208 #define SROM8_RXGAINERR_5GU 209 +#define SROM8_SUBBAND_PPR 210 #define SROM8_PCIEINGRESS_WAR 211 #define SROM9_SAR 212 diff --git a/release/src-rt/include/bcmsrom_tbl.h b/release/src-rt/include/bcmsrom_tbl.h old mode 100644 new mode 100755 index 004ad59e87..9af58b28a8 --- a/release/src-rt/include/bcmsrom_tbl.h +++ b/release/src-rt/include/bcmsrom_tbl.h @@ -421,6 +421,7 @@ static const sromvar_t pci_sromvars[] = { {"noiselvl5gua0", 0xffffff00, 0, SROM8_NOISELVL_5GU, 0x001f}, {"noiselvl5gua1", 0xffffff00, 0, SROM8_NOISELVL_5GU, 0x03e0}, {"noiselvl5gua2", 0xffffff00, 0, SROM8_NOISELVL_5GU, 0x7c00}, + {"subband5gver", 0xffffff00, 0, SROM8_SUBBAND_PPR, 0x7}, {NULL, 0, 0, 0, 0} }; @@ -499,21 +500,21 @@ static const pavars_t pavars[] = { {PHY_TYPE_HT, WL_CHAN_FREQ_RANGE_5GH, 1, "pa5ghw0a1 pa5ghw1a1 pa5ghw2a1"}, {PHY_TYPE_HT, WL_CHAN_FREQ_RANGE_5GH, 2, "pa5ghw0a2 pa5ghw1a2 pa5ghw2a2"}, /* HTPHY PPR_SUBBAND */ - {PHY_TYPE_HT, WL_CHAN_FREQ_RANGE_5GLL_VER2, 0, "pa5gllw0a0 pa5gllw1a0 pa5gllw2a0"}, - {PHY_TYPE_HT, WL_CHAN_FREQ_RANGE_5GLL_VER2, 1, "pa5gllw0a1 pa5gllw1a1 pa5gllw2a1"}, - {PHY_TYPE_HT, WL_CHAN_FREQ_RANGE_5GLL_VER2, 2, "pa5gllw0a2 pa5gllw1a2 pa5gllw2a2"}, - {PHY_TYPE_HT, WL_CHAN_FREQ_RANGE_5GLH_VER2, 0, "pa5glhw0a0 pa5glhw1a0 pa5glhw2a0"}, - {PHY_TYPE_HT, WL_CHAN_FREQ_RANGE_5GLH_VER2, 1, "pa5glhw0a1 pa5glhw1a1 pa5glhw2a1"}, - {PHY_TYPE_HT, WL_CHAN_FREQ_RANGE_5GLH_VER2, 2, "pa5glhw0a2 pa5glhw1a2 pa5glhw2a2"}, - {PHY_TYPE_HT, WL_CHAN_FREQ_RANGE_5GML_VER2, 0, "pa5gmlw0a0 pa5gmlw1a0 pa5gmlw2a0"}, - {PHY_TYPE_HT, WL_CHAN_FREQ_RANGE_5GML_VER2, 1, "pa5gmlw0a1 pa5gmlw1a1 pa5gmlw2a1"}, - {PHY_TYPE_HT, WL_CHAN_FREQ_RANGE_5GML_VER2, 2, "pa5gmlw0a2 pa5gmlw1a2 pa5gmlw2a2"}, - {PHY_TYPE_HT, WL_CHAN_FREQ_RANGE_5GMH_VER2, 0, "pa5gmhw0a0 pa5gmhw1a0 pa5gmhw2a0"}, - {PHY_TYPE_HT, WL_CHAN_FREQ_RANGE_5GMH_VER2, 1, "pa5gmhw0a1 pa5gmhw1a1 pa5gmhw2a1"}, - {PHY_TYPE_HT, WL_CHAN_FREQ_RANGE_5GMH_VER2, 2, "pa5gmhw0a2 pa5gmhw1a2 pa5gmhw2a2"}, - {PHY_TYPE_HT, WL_CHAN_FREQ_RANGE_5GH_VER2, 0, "pa5ghw0a0 pa5ghw1a0 pa5ghw2a0"}, - {PHY_TYPE_HT, WL_CHAN_FREQ_RANGE_5GH_VER2, 1, "pa5ghw0a1 pa5ghw1a1 pa5ghw2a1"}, - {PHY_TYPE_HT, WL_CHAN_FREQ_RANGE_5GH_VER2, 2, "pa5ghw0a2 pa5ghw1a2 pa5ghw2a2"}, + {PHY_TYPE_HT, WL_CHAN_FREQ_RANGE_5GLL_5BAND, 0, "pa5gllw0a0 pa5gllw1a0 pa5gllw2a0"}, + {PHY_TYPE_HT, WL_CHAN_FREQ_RANGE_5GLL_5BAND, 1, "pa5gllw0a1 pa5gllw1a1 pa5gllw2a1"}, + {PHY_TYPE_HT, WL_CHAN_FREQ_RANGE_5GLL_5BAND, 2, "pa5gllw0a2 pa5gllw1a2 pa5gllw2a2"}, + {PHY_TYPE_HT, WL_CHAN_FREQ_RANGE_5GLH_5BAND, 0, "pa5glhw0a0 pa5glhw1a0 pa5glhw2a0"}, + {PHY_TYPE_HT, WL_CHAN_FREQ_RANGE_5GLH_5BAND, 1, "pa5glhw0a1 pa5glhw1a1 pa5glhw2a1"}, + {PHY_TYPE_HT, WL_CHAN_FREQ_RANGE_5GLH_5BAND, 2, "pa5glhw0a2 pa5glhw1a2 pa5glhw2a2"}, + {PHY_TYPE_HT, WL_CHAN_FREQ_RANGE_5GML_5BAND, 0, "pa5gmlw0a0 pa5gmlw1a0 pa5gmlw2a0"}, + {PHY_TYPE_HT, WL_CHAN_FREQ_RANGE_5GML_5BAND, 1, "pa5gmlw0a1 pa5gmlw1a1 pa5gmlw2a1"}, + {PHY_TYPE_HT, WL_CHAN_FREQ_RANGE_5GML_5BAND, 2, "pa5gmlw0a2 pa5gmlw1a2 pa5gmlw2a2"}, + {PHY_TYPE_HT, WL_CHAN_FREQ_RANGE_5GMH_5BAND, 0, "pa5gmhw0a0 pa5gmhw1a0 pa5gmhw2a0"}, + {PHY_TYPE_HT, WL_CHAN_FREQ_RANGE_5GMH_5BAND, 1, "pa5gmhw0a1 pa5gmhw1a1 pa5gmhw2a1"}, + {PHY_TYPE_HT, WL_CHAN_FREQ_RANGE_5GMH_5BAND, 2, "pa5gmhw0a2 pa5gmhw1a2 pa5gmhw2a2"}, + {PHY_TYPE_HT, WL_CHAN_FREQ_RANGE_5GH_5BAND, 0, "pa5ghw0a0 pa5ghw1a0 pa5ghw2a0"}, + {PHY_TYPE_HT, WL_CHAN_FREQ_RANGE_5GH_5BAND, 1, "pa5ghw0a1 pa5ghw1a1 pa5ghw2a1"}, + {PHY_TYPE_HT, WL_CHAN_FREQ_RANGE_5GH_5BAND, 2, "pa5ghw0a2 pa5ghw1a2 pa5ghw2a2"}, /* NPHY */ {PHY_TYPE_N, WL_CHAN_FREQ_RANGE_2G, 0, "pa2gw0a0 pa2gw1a0 pa2gw2a0"}, {PHY_TYPE_N, WL_CHAN_FREQ_RANGE_2G, 1, "pa2gw0a1 pa2gw1a1 pa2gw2a1"}, @@ -524,16 +525,16 @@ static const pavars_t pavars[] = { {PHY_TYPE_N, WL_CHAN_FREQ_RANGE_5GH, 0, "pa5ghw0a0 pa5ghw1a0 pa5ghw2a0"}, {PHY_TYPE_N, WL_CHAN_FREQ_RANGE_5GH, 1, "pa5ghw0a1 pa5ghw1a1 pa5ghw2a1"}, /* NPHY PPR_SUBBAND */ - {PHY_TYPE_N, WL_CHAN_FREQ_RANGE_5GLL_VER2, 0, "pa5gllw0a0 pa5gllw1a0 pa5gllw2a0"}, - {PHY_TYPE_N, WL_CHAN_FREQ_RANGE_5GLL_VER2, 1, "pa5gllw0a1 pa5gllw1a1 pa5gllw2a1"}, - {PHY_TYPE_N, WL_CHAN_FREQ_RANGE_5GLH_VER2, 0, "pa5glhw0a0 pa5glhw1a0 pa5glhw2a0"}, - {PHY_TYPE_N, WL_CHAN_FREQ_RANGE_5GLH_VER2, 1, "pa5glhw0a1 pa5glhw1a1 pa5glhw2a1"}, - {PHY_TYPE_N, WL_CHAN_FREQ_RANGE_5GML_VER2, 0, "pa5gmlw0a0 pa5gmlw1a0 pa5gmlw2a0"}, - {PHY_TYPE_N, WL_CHAN_FREQ_RANGE_5GML_VER2, 1, "pa5gmlw0a1 pa5gmlw1a1 pa5gmlw2a1"}, - {PHY_TYPE_N, WL_CHAN_FREQ_RANGE_5GMH_VER2, 0, "pa5gmhw0a0 pa5gmhw1a0 pa5gmhw2a0"}, - {PHY_TYPE_N, WL_CHAN_FREQ_RANGE_5GMH_VER2, 1, "pa5gmhw0a1 pa5gmhw1a1 pa5gmhw2a1"}, - {PHY_TYPE_N, WL_CHAN_FREQ_RANGE_5GH_VER2, 0, "pa5ghw0a0 pa5ghw1a0 pa5ghw2a0"}, - {PHY_TYPE_N, WL_CHAN_FREQ_RANGE_5GH_VER2, 1, "pa5ghw0a1 pa5ghw1a1 pa5ghw2a1"}, + {PHY_TYPE_N, WL_CHAN_FREQ_RANGE_5GLL_5BAND, 0, "pa5gllw0a0 pa5gllw1a0 pa5gllw2a0"}, + {PHY_TYPE_N, WL_CHAN_FREQ_RANGE_5GLL_5BAND, 1, "pa5gllw0a1 pa5gllw1a1 pa5gllw2a1"}, + {PHY_TYPE_N, WL_CHAN_FREQ_RANGE_5GLH_5BAND, 0, "pa5glhw0a0 pa5glhw1a0 pa5glhw2a0"}, + {PHY_TYPE_N, WL_CHAN_FREQ_RANGE_5GLH_5BAND, 1, "pa5glhw0a1 pa5glhw1a1 pa5glhw2a1"}, + {PHY_TYPE_N, WL_CHAN_FREQ_RANGE_5GML_5BAND, 0, "pa5gmlw0a0 pa5gmlw1a0 pa5gmlw2a0"}, + {PHY_TYPE_N, WL_CHAN_FREQ_RANGE_5GML_5BAND, 1, "pa5gmlw0a1 pa5gmlw1a1 pa5gmlw2a1"}, + {PHY_TYPE_N, WL_CHAN_FREQ_RANGE_5GMH_5BAND, 0, "pa5gmhw0a0 pa5gmhw1a0 pa5gmhw2a0"}, + {PHY_TYPE_N, WL_CHAN_FREQ_RANGE_5GMH_5BAND, 1, "pa5gmhw0a1 pa5gmhw1a1 pa5gmhw2a1"}, + {PHY_TYPE_N, WL_CHAN_FREQ_RANGE_5GH_5BAND, 0, "pa5ghw0a0 pa5ghw1a0 pa5ghw2a0"}, + {PHY_TYPE_N, WL_CHAN_FREQ_RANGE_5GH_5BAND, 1, "pa5ghw0a1 pa5ghw1a1 pa5ghw2a1"}, /* LPPHY */ {PHY_TYPE_LP, WL_CHAN_FREQ_RANGE_2G, 0, "pa0b0 pa0b1 pa0b2"}, {PHY_TYPE_LP, WL_CHAN_FREQ_RANGE_5GL, 0, "pa1lob0 pa1lob1 pa1lob2"}, diff --git a/release/src-rt/include/bcmutils.h b/release/src-rt/include/bcmutils.h old mode 100644 new mode 100755 index 9644a3ec02..cca37db3c6 --- a/release/src-rt/include/bcmutils.h +++ b/release/src-rt/include/bcmutils.h @@ -89,6 +89,9 @@ struct bcmstrbuf { /* osl multi-precedence packet queue */ +#ifndef PKTQ_LEN_DEFAULT +#define PKTQ_LEN_DEFAULT 128 /* Max 128 packets */ +#endif #ifndef PKTQ_MAX_PREC #define PKTQ_MAX_PREC 16 /* Maximum precedence levels */ #endif diff --git a/release/src-rt/include/code_pattern.h b/release/src-rt/include/code_pattern.h deleted file mode 100644 index fd543c536d..0000000000 --- a/release/src-rt/include/code_pattern.h +++ /dev/null @@ -1 +0,0 @@ -#define MODEL_NAME "WRT54G" diff --git a/release/src-rt/include/cyutils.h b/release/src-rt/include/cyutils.h deleted file mode 100644 index 931817d459..0000000000 --- a/release/src-rt/include/cyutils.h +++ /dev/null @@ -1,7 +0,0 @@ -#include "code_pattern.h" - -#define PPTP_VENDOR "Linksys" -#define PPTP_HOSTNAME "" - -#define L2TP_VENDOR "Linksys" -#define L2TP_HOSTNAME MODEL_NAME diff --git a/release/src-rt/include/epivers.h b/release/src-rt/include/epivers.h old mode 100644 new mode 100755 index b38c6110a9..70d29da2b8 --- a/release/src-rt/include/epivers.h +++ b/release/src-rt/include/epivers.h @@ -26,21 +26,21 @@ #define EPI_RC_NUMBER 138 -#define EPI_INCREMENTAL_NUMBER 9 +#define EPI_INCREMENTAL_NUMBER 20 #define EPI_BUILD_NUMBER 0 -#define EPI_VERSION 5, 100, 138, 9 +#define EPI_VERSION 5, 100, 138, 20 -#define EPI_VERSION_NUM 0x05648a09 +#define EPI_VERSION_NUM 0x05648a89 //0x05648a14 #define EPI_VERSION_DEV 5.100.138 /* Driver Version String, ASCII, 32 chars max */ #ifdef WLTEST -#define EPI_VERSION_STR "5.100.138.9 (WLTEST)" +#define EPI_VERSION_STR "5.100.138.20 (WLTEST)" #else -#define EPI_VERSION_STR "5.100.138.9" +#define EPI_VERSION_STR "5.100.138.20" #endif #endif /* _epivers_h_ */ diff --git a/release/src-rt/include/etioctl.h b/release/src-rt/include/etioctl.h old mode 100644 new mode 100755 index e0716f2e75..5cc773f1b0 --- a/release/src-rt/include/etioctl.h +++ b/release/src-rt/include/etioctl.h @@ -53,6 +53,7 @@ */ #define IOV_ET_POWER_SAVE_MODE 1 #define IOV_ET_CLEAR_DUMP 2 +#define IOV_ET_ROBO_DEVID 3 #if defined(linux) || defined(__ECOS) #define SIOCSETCUP (SIOCDEVPRIVATE + ETCUP) @@ -90,6 +91,33 @@ struct txg { #endif /* linux */ +#if defined(__NetBSD__) +#define SIOCSETCUP _IOW('e', 0, struct ifreq) +#define SIOCSETCDOWN _IOW('e', 1, struct ifreq) +#define SIOCSETCLOOP _IOW('e', 2, struct ifreq) +#define SIOCGETCDUMP _IOWR('e', 3, struct ifreq) +#define SIOCSETCSETMSGLEVEL _IOW('e', 4, struct ifreq) +#define SIOCSETCPROMISC _IOW('e', 5, struct ifreq) +#define SIOCSETCTXDOWN _IOW('e', 6, struct ifreq) /* obsolete */ +#define SIOCSETCSPEED _IOW('e', 7, struct ifreq) +#define SIOCTXGEN _IOW('e', 8, struct ifreq) +#define SIOCGETCPHYRD _IOWR('e', 9, struct ifreq) +#define SIOCSETCPHYWR _IOW('e', 10, struct ifreq) +#define SIOCSETCQOS _IOW('e', 11, struct ifreq) +#define SIOCGETCPHYRD2 _IOWR('e', 12, struct ifreq) +#define SIOCSETCPHYWR2 _IOW('e', 13, struct ifreq) +#define SIOCGETCROBORD _IOWR('e', 14, struct ifreq) +#define SIOCSETCROBOWR _IOW('e', 15, struct ifreq) + +/* arg to SIOCTXGEN */ +struct txg { + uint32 num; /* number of frames to send */ + uint32 delay; /* delay in microseconds between sending each */ + uint32 size; /* size of ether frame to send */ + uchar buf[1514]; /* starting ether frame data */ +}; +#endif /* __NetBSD__ */ + /* * custom OID support * diff --git a/release/src-rt/include/hndpci.h b/release/src-rt/include/hndpci.h old mode 100644 new mode 100755 index b75a12bf15..fe222664f0 --- a/release/src-rt/include/hndpci.h +++ b/release/src-rt/include/hndpci.h @@ -39,6 +39,8 @@ extern void hndpci_init_cores(si_t *sih); extern void hndpci_arb_park(si_t *sih, uint parkid); extern bool hndpci_is_hostbridge(uint bus, uint dev); extern uint32 hndpci_get_membase(uint bus); +extern void hndpci_deinit(si_t *sih); +extern int hndpci_deinit_pci(si_t *sih, uint coreunit); #define PCI_PARK_NVRAM 0xff diff --git a/release/src-rt/include/libsmbclient.h b/release/src-rt/include/libsmbclient.h new file mode 100755 index 0000000000..81df7f5865 --- /dev/null +++ b/release/src-rt/include/libsmbclient.h @@ -0,0 +1,3170 @@ +/*===================================================================== + Unix SMB/Netbios implementation. + SMB client library API definitions + Copyright (C) Andrew Tridgell 1998 + Copyright (C) Richard Sharpe 2000 + Copyright (C) John Terpsra 2000 + Copyright (C) Tom Jansen (Ninja ISD) 2002 + Copyright (C) Derrell Lipman 2003-2008 + + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, see . + =====================================================================*/ + +#ifndef SMBCLIENT_H_INCLUDED +#define SMBCLIENT_H_INCLUDED + +#undef DEPRECATED_SMBC_INTERFACE +#if ! defined(__LIBSMBCLIENT_INTERNAL__) && defined(__GNUC__) +# define DEPRECATED_SMBC_INTERFACE __attribute__ ((deprecated)) +#else +# define DEPRECATED_SMBC_INTERFACE +#endif + +#ifdef __cplusplus +extern "C" { +#endif + +/*-------------------------------------------------------------------*/ +/* The following are special comments to instruct DOXYGEN (automated + * documentation tool: +*/ +/** \defgroup libsmbclient +*/ +/** \defgroup structure Data Structures Type and Constants +* \ingroup libsmbclient +* Data structures, types, and constants +*/ +/** \defgroup callback Callback function types +* \ingroup libsmbclient +* Callback functions +*/ +/** \defgroup file File Functions +* \ingroup libsmbclient +* Functions used to access individual file contents +*/ +/** \defgroup directory Directory Functions +* \ingroup libsmbclient +* Functions used to access directory entries +*/ +/** \defgroup attribute Attributes Functions +* \ingroup libsmbclient +* Functions used to view or change file and directory attributes +*/ +/** \defgroup print Print Functions +* \ingroup libsmbclient +* Functions used to access printing functionality +*/ +/** \defgroup misc Miscellaneous Functions +* \ingroup libsmbclient +* Functions that don't fit in to other categories +*/ +/*-------------------------------------------------------------------*/ + +/* Make sure we have the following includes for now ... */ +#include +#include +#include +#include +#include + +#define SMBC_BASE_FD 10000 /* smallest file descriptor returned */ + +#define SMBC_WORKGROUP 1 +#define SMBC_SERVER 2 +#define SMBC_FILE_SHARE 3 +#define SMBC_PRINTER_SHARE 4 +#define SMBC_COMMS_SHARE 5 +#define SMBC_IPC_SHARE 6 +#define SMBC_DIR 7 +#define SMBC_FILE 8 +#define SMBC_LINK 9 + +/**@ingroup structure + * Structure that represents a directory entry. + * + */ +struct smbc_dirent +{ + /** Type of entity. + SMBC_WORKGROUP=1, + SMBC_SERVER=2, + SMBC_FILE_SHARE=3, + SMBC_PRINTER_SHARE=4, + SMBC_COMMS_SHARE=5, + SMBC_IPC_SHARE=6, + SMBC_DIR=7, + SMBC_FILE=8, + SMBC_LINK=9,*/ + unsigned int smbc_type; + + /** Length of this smbc_dirent in bytes + */ + unsigned int dirlen; + /** The length of the comment string in bytes (does not include + * null terminator) + */ + unsigned int commentlen; + /** Points to the null terminated comment string + */ + char *comment; + /** The length of the name string in bytes (does not include + * null terminator) + */ + unsigned int namelen; + /** Points to the null terminated name string + */ + char name[1]; +}; + +/* + * Flags for smbc_setxattr() + * Specify a bitwise OR of these, or 0 to add or replace as necessary + */ +#define SMBC_XATTR_FLAG_CREATE 0x1 /* fail if attr already exists */ +#define SMBC_XATTR_FLAG_REPLACE 0x2 /* fail if attr does not exist */ + + +/* + * Mappings of the DOS mode bits, as returned by smbc_getxattr() when the + * attribute name "system.dos_attr.mode" (or "system.dos_attr.*" or + * "system.*") is specified. + */ +#define SMBC_DOS_MODE_READONLY 0x01 +#define SMBC_DOS_MODE_HIDDEN 0x02 +#define SMBC_DOS_MODE_SYSTEM 0x04 +#define SMBC_DOS_MODE_VOLUME_ID 0x08 +#define SMBC_DOS_MODE_DIRECTORY 0x10 +#define SMBC_DOS_MODE_ARCHIVE 0x20 + +/* + * Valid values for the option "open_share_mode", when calling + * smbc_setOptionOpenShareMode() + */ +typedef enum smbc_share_mode +{ + SMBC_SHAREMODE_DENY_DOS = 0, + SMBC_SHAREMODE_DENY_ALL = 1, + SMBC_SHAREMODE_DENY_WRITE = 2, + SMBC_SHAREMODE_DENY_READ = 3, + SMBC_SHAREMODE_DENY_NONE = 4, + SMBC_SHAREMODE_DENY_FCB = 7 +} smbc_share_mode; + + +/** + * Values for option SMB Encryption Level, as set and retrieved with + * smbc_setOptionSmbEncryptionLevel() and smbc_getOptionSmbEncryptionLevel() + */ +typedef enum smbc_smb_encrypt_level +{ + SMBC_ENCRYPTLEVEL_NONE = 0, + SMBC_ENCRYPTLEVEL_REQUEST = 1, + SMBC_ENCRYPTLEVEL_REQUIRE = 2 +} smbc_smb_encrypt_level; + + +/** + * Capabilities set in the f_flag field of struct statvfs, from + * smbc_statvfs(). These may be OR-ed together to reflect a full set of + * available capabilities. + */ +typedef enum smbc_vfs_feature +{ + /* Defined by POSIX or in Linux include files (low-order bits) */ + SMBC_VFS_FEATURE_RDONLY = (1 << 0), + + /* Specific to libsmbclient (high-order bits) */ + SMBC_VFS_FEATURE_DFS = (1 << 28), + SMBC_VFS_FEATURE_CASE_INSENSITIVE = (1 << 29), + SMBC_VFS_FEATURE_NO_UNIXCIFS = (1 << 30) +} smbc_vfs_feature; + +typedef int smbc_bool; + + +#ifndef ENOATTR +# define ENOATTR ENOENT /* No such attribute */ +#endif + + + + +/**@ingroup structure + * Structure that represents a print job. + * + */ +#ifndef _CLIENT_H +struct print_job_info +{ + /** numeric ID of the print job + */ + unsigned short id; + + /** represents print job priority (lower numbers mean higher priority) + */ + unsigned short priority; + + /** Size of the print job + */ + size_t size; + + /** Name of the user that owns the print job + */ + char user[128]; + + /** Name of the print job. This will have no name if an anonymous print + * file was opened. Ie smb://server/printer + */ + char name[128]; + + /** Time the print job was spooled + */ + time_t t; +}; + +typedef struct file_info { + struct cli_state *cli; + uint64_t size; + uint16_t mode; + uid_t uid; + gid_t gid; + /* these times are normally kept in GMT */ + struct timespec mtime_ts; + struct timespec atime_ts; + struct timespec ctime_ts; + char *name; + char short_name[13*3]; /* the *3 is to cope with multi-byte */ +} file_info; + +#endif /* _CLIENT_H */ + + +/**@ingroup structure + * Server handle + */ +typedef struct _SMBCSRV SMBCSRV; + +/**@ingroup structure + * File or directory handle + */ +typedef struct _SMBCFILE SMBCFILE; + +/**@ingroup structure + * File or directory handle + */ +typedef struct _SMBCCTX SMBCCTX; + + +/* + * Flags for SMBCCTX->flags + * + * NEW CODE SHOULD NOT DIRECTLY MANIPULATE THE CONTEXT STRUCTURE. + * Instead, use: + * smbc_setOptionUseKerberos() + * smbc_getOptionUseKerberos() + * smbc_setOptionFallbackAfterKerberos() + * smbc_getOptionFallbackAFterKerberos() + * smbc_setOptionNoAutoAnonymousLogin() + * smbc_getOptionNoAutoAnonymousLogin() + * smbc_setOptionUseCCache() + * smbc_getOptionUseCCache() + */ +# define SMB_CTX_FLAG_USE_KERBEROS (1 << 0) +# define SMB_CTX_FLAG_FALLBACK_AFTER_KERBEROS (1 << 1) +# define SMBCCTX_FLAG_NO_AUTO_ANONYMOUS_LOGON (1 << 2) +# define SMB_CTX_FLAG_USE_CCACHE (1 << 3) + + + +/**@ingroup callback + * Authentication callback function type (traditional method) + * + * Type for the the authentication function called by the library to + * obtain authentication credentals + * + * For kerberos support the function should just be called without + * prompting the user for credentials. Which means a simple 'return' + * should work. Take a look at examples/libsmbclient/get_auth_data_fn.h + * and examples/libsmbclient/testbrowse.c. + * + * @param srv Server being authenticated to + * + * @param shr Share being authenticated to + * + * @param wg Pointer to buffer containing a "hint" for the + * workgroup to be authenticated. Should be filled in + * with the correct workgroup if the hint is wrong. + * + * @param wglen The size of the workgroup buffer in bytes + * + * @param un Pointer to buffer containing a "hint" for the + * user name to be use for authentication. Should be + * filled in with the correct workgroup if the hint is + * wrong. + * + * @param unlen The size of the username buffer in bytes + * + * @param pw Pointer to buffer containing to which password + * copied + * + * @param pwlen The size of the password buffer in bytes + * + */ +typedef void (*smbc_get_auth_data_fn)(const char *srv, + const char *shr, + char *wg, int wglen, + char *un, int unlen, + char *pw, int pwlen); +/**@ingroup callback + * Authentication callback function type (method that includes context) + * + * Type for the the authentication function called by the library to + * obtain authentication credentals + * + * For kerberos support the function should just be called without + * prompting the user for credentials. Which means a simple 'return' + * should work. Take a look at examples/libsmbclient/get_auth_data_fn.h + * and examples/libsmbclient/testbrowse.c. + * + * @param c Pointer to the smb context + * + * @param srv Server being authenticated to + * + * @param shr Share being authenticated to + * + * @param wg Pointer to buffer containing a "hint" for the + * workgroup to be authenticated. Should be filled in + * with the correct workgroup if the hint is wrong. + * + * @param wglen The size of the workgroup buffer in bytes + * + * @param un Pointer to buffer containing a "hint" for the + * user name to be use for authentication. Should be + * filled in with the correct workgroup if the hint is + * wrong. + * + * @param unlen The size of the username buffer in bytes + * + * @param pw Pointer to buffer containing to which password + * copied + * + * @param pwlen The size of the password buffer in bytes + * + */ +typedef void (*smbc_get_auth_data_with_context_fn)(SMBCCTX *c, + const char *srv, + const char *shr, + char *wg, int wglen, + char *un, int unlen, + char *pw, int pwlen); + + +/**@ingroup callback + * Print job info callback function type. + * + * @param i pointer to print job information structure + * + */ +typedef void (*smbc_list_print_job_fn)(struct print_job_info *i); + + +/**@ingroup callback + * Check if a server is still good + * + * @param c pointer to smb context + * + * @param srv pointer to server to check + * + * @return 0 when connection is good. 1 on error. + * + */ +typedef int (*smbc_check_server_fn)(SMBCCTX * c, SMBCSRV *srv); + +/**@ingroup callback + * Remove a server if unused + * + * @param c pointer to smb context + * + * @param srv pointer to server to remove + * + * @return 0 on success. 1 on failure. + * + */ +typedef int (*smbc_remove_unused_server_fn)(SMBCCTX * c, SMBCSRV *srv); + + +/**@ingroup callback + * Add a server to the cache system + * + * @param c pointer to smb context + * + * @param srv pointer to server to add + * + * @param server server name + * + * @param share share name + * + * @param workgroup workgroup used to connect + * + * @param username username used to connect + * + * @return 0 on success. 1 on failure. + * + */ +typedef int (*smbc_add_cached_srv_fn) (SMBCCTX * c, SMBCSRV *srv, + const char * server, const char * share, + const char * workgroup, const char * username); + +/**@ingroup callback + * Look up a server in the cache system + * + * @param c pointer to smb context + * + * @param server server name to match + * + * @param share share name to match + * + * @param workgroup workgroup to match + * + * @param username username to match + * + * @return pointer to SMBCSRV on success. NULL on failure. + * + */ +typedef SMBCSRV * (*smbc_get_cached_srv_fn) (SMBCCTX * c, const char * server, + const char * share, const char * workgroup, + const char * username); + +/**@ingroup callback + * Check if a server is still good + * + * @param c pointer to smb context + * + * @param srv pointer to server to remove + * + * @return 0 when found and removed. 1 on failure. + * + */ +typedef int (*smbc_remove_cached_srv_fn)(SMBCCTX * c, SMBCSRV *srv); + + +/**@ingroup callback + * Try to remove all servers from the cache system and disconnect + * + * @param c pointer to smb context + * + * @return 0 when found and removed. 1 on failure. + * + */ +typedef int (*smbc_purge_cached_fn) (SMBCCTX * c); + + + +/***************************************** + * Getters and setters for CONFIGURATION * + *****************************************/ + +/** Get the debug level */ +int +smbc_getDebug(SMBCCTX *c); + +/** Set the debug level */ +void +smbc_setDebug(SMBCCTX *c, int debug); + +/** Get the netbios name used for making connections */ +char * +smbc_getNetbiosName(SMBCCTX *c); + +/** Set the netbios name used for making connections */ +void +smbc_setNetbiosName(SMBCCTX *c, char * netbios_name); + +/** Get the workgroup used for making connections */ +char * +smbc_getWorkgroup(SMBCCTX *c); + +/** Set the workgroup used for making connections */ +void smbc_setWorkgroup(SMBCCTX *c, char * workgroup); + +/** Get the username used for making connections */ +char * +smbc_getUser(SMBCCTX *c); + +/** Set the username used for making connections */ +void +smbc_setUser(SMBCCTX *c, char * user); + +/** + * Get the timeout used for waiting on connections and response data + * (in milliseconds) + */ +int +smbc_getTimeout(SMBCCTX *c); + +/** + * Set the timeout used for waiting on connections and response data + * (in milliseconds) + */ +void +smbc_setTimeout(SMBCCTX *c, int timeout); + + + +/*********************************** + * Getters and setters for OPTIONS * + ***********************************/ + +/** Get whether to log to standard error instead of standard output */ +smbc_bool +smbc_getOptionDebugToStderr(SMBCCTX *c); + +/** Set whether to log to standard error instead of standard output */ +void +smbc_setOptionDebugToStderr(SMBCCTX *c, smbc_bool b); + +/** + * Get whether to use new-style time attribute names, e.g. WRITE_TIME rather + * than the old-style names such as M_TIME. This allows also setting/getting + * CREATE_TIME which was previously unimplemented. (Note that the old C_TIME + * was supposed to be CHANGE_TIME but was confused and sometimes referred to + * CREATE_TIME.) + */ +smbc_bool +smbc_getOptionFullTimeNames(SMBCCTX *c); + +/** + * Set whether to use new-style time attribute names, e.g. WRITE_TIME rather + * than the old-style names such as M_TIME. This allows also setting/getting + * CREATE_TIME which was previously unimplemented. (Note that the old C_TIME + * was supposed to be CHANGE_TIME but was confused and sometimes referred to + * CREATE_TIME.) + */ +void +smbc_setOptionFullTimeNames(SMBCCTX *c, smbc_bool b); + +/** + * Get the share mode to use for files opened with SMBC_open_ctx(). The + * default is SMBC_SHAREMODE_DENY_NONE. + */ +smbc_share_mode +smbc_getOptionOpenShareMode(SMBCCTX *c); + +/** + * Set the share mode to use for files opened with SMBC_open_ctx(). The + * default is SMBC_SHAREMODE_DENY_NONE. + */ +void +smbc_setOptionOpenShareMode(SMBCCTX *c, smbc_share_mode share_mode); + +/** Retrieve a previously saved user data handle */ +void * +smbc_getOptionUserData(SMBCCTX *c); + +/** Save a user data handle */ +void +smbc_setOptionUserData(SMBCCTX *c, void *user_data); + +/** Get the encoded value for encryption level. */ +smbc_smb_encrypt_level +smbc_getOptionSmbEncryptionLevel(SMBCCTX *c); + +/** Set the encoded value for encryption level. */ +void +smbc_setOptionSmbEncryptionLevel(SMBCCTX *c, smbc_smb_encrypt_level level); + +/** + * Get whether to treat file names as case-sensitive if we can't determine + * when connecting to the remote share whether the file system is case + * sensitive. This defaults to FALSE since it's most likely that if we can't + * retrieve the file system attributes, it's a very old file system that does + * not support case sensitivity. + */ +smbc_bool +smbc_getOptionCaseSensitive(SMBCCTX *c); + +/** + * Set whether to treat file names as case-sensitive if we can't determine + * when connecting to the remote share whether the file system is case + * sensitive. This defaults to FALSE since it's most likely that if we can't + * retrieve the file system attributes, it's a very old file system that does + * not support case sensitivity. + */ +void +smbc_setOptionCaseSensitive(SMBCCTX *c, smbc_bool b); + + +/** + * Get from how many local master browsers should the list of workgroups be + * retrieved. It can take up to 12 minutes or longer after a server becomes a + * local master browser, for it to have the entire browse list (the list of + * workgroups/domains) from an entire network. Since a client never knows + * which local master browser will be found first, the one which is found + * first and used to retrieve a browse list may have an incomplete or empty + * browse list. By requesting the browse list from multiple local master + * browsers, a more complete list can be generated. For small networks (few + * workgroups), it is recommended that this value be set to 0, causing the + * browse lists from all found local master browsers to be retrieved and + * merged. For networks with many workgroups, a suitable value for this + * variable is probably somewhere around 3. (Default: 3). + */ +int +smbc_getOptionBrowseMaxLmbCount(SMBCCTX *c); + +/** + * Set from how many local master browsers should the list of workgroups be + * retrieved. It can take up to 12 minutes or longer after a server becomes a + * local master browser, for it to have the entire browse list (the list of + * workgroups/domains) from an entire network. Since a client never knows + * which local master browser will be found first, the one which is found + * first and used to retrieve a browse list may have an incomplete or empty + * browse list. By requesting the browse list from multiple local master + * browsers, a more complete list can be generated. For small networks (few + * workgroups), it is recommended that this value be set to 0, causing the + * browse lists from all found local master browsers to be retrieved and + * merged. For networks with many workgroups, a suitable value for this + * variable is probably somewhere around 3. (Default: 3). + */ +void +smbc_setOptionBrowseMaxLmbCount(SMBCCTX *c, int count); + +/** + * Get whether to url-encode readdir entries. + * + * There is a difference in the desired return strings from + * smbc_readdir() depending upon whether the filenames are to + * be displayed to the user, or whether they are to be + * appended to the path name passed to smbc_opendir() to call + * a further smbc_ function (e.g. open the file with + * smbc_open()). In the former case, the filename should be + * in "human readable" form. In the latter case, the smbc_ + * functions expect a URL which must be url-encoded. Those + * functions decode the URL. If, for example, smbc_readdir() + * returned a file name of "abc%20def.txt", passing a path + * with this file name attached to smbc_open() would cause + * smbc_open to attempt to open the file "abc def.txt" since + * the %20 is decoded into a space. + * + * Set this option to True if the names returned by + * smbc_readdir() should be url-encoded such that they can be + * passed back to another smbc_ call. Set it to False if the + * names returned by smbc_readdir() are to be presented to the + * user. + * + * For backwards compatibility, this option defaults to False. + */ +smbc_bool +smbc_getOptionUrlEncodeReaddirEntries(SMBCCTX *c); + +/** + * Set whether to url-encode readdir entries. + * + * There is a difference in the desired return strings from + * smbc_readdir() depending upon whether the filenames are to + * be displayed to the user, or whether they are to be + * appended to the path name passed to smbc_opendir() to call + * a further smbc_ function (e.g. open the file with + * smbc_open()). In the former case, the filename should be + * in "human readable" form. In the latter case, the smbc_ + * functions expect a URL which must be url-encoded. Those + * functions decode the URL. If, for example, smbc_readdir() + * returned a file name of "abc%20def.txt", passing a path + * with this file name attached to smbc_open() would cause + * smbc_open to attempt to open the file "abc def.txt" since + * the %20 is decoded into a space. + * + * Set this option to True if the names returned by + * smbc_readdir() should be url-encoded such that they can be + * passed back to another smbc_ call. Set it to False if the + * names returned by smbc_readdir() are to be presented to the + * user. + * + * For backwards compatibility, this option defaults to False. + */ +void +smbc_setOptionUrlEncodeReaddirEntries(SMBCCTX *c, smbc_bool b); + +/** + * Get whether to use the same connection for all shares on a server. + * + * Some Windows versions appear to have a limit to the number + * of concurrent SESSIONs and/or TREE CONNECTions. In + * one-shot programs (i.e. the program runs and then quickly + * ends, thereby shutting down all connections), it is + * probably reasonable to establish a new connection for each + * share. In long-running applications, the limitation can be + * avoided by using only a single connection to each server, + * and issuing a new TREE CONNECT when the share is accessed. + */ +smbc_bool +smbc_getOptionOneSharePerServer(SMBCCTX *c); + +/** + * Set whether to use the same connection for all shares on a server. + * + * Some Windows versions appear to have a limit to the number + * of concurrent SESSIONs and/or TREE CONNECTions. In + * one-shot programs (i.e. the program runs and then quickly + * ends, thereby shutting down all connections), it is + * probably reasonable to establish a new connection for each + * share. In long-running applications, the limitation can be + * avoided by using only a single connection to each server, + * and issuing a new TREE CONNECT when the share is accessed. + */ +void +smbc_setOptionOneSharePerServer(SMBCCTX *c, smbc_bool b); + +/** Get whether to enable use of kerberos */ +smbc_bool +smbc_getOptionUseKerberos(SMBCCTX *c); + +/** Set whether to enable use of kerberos */ +void +smbc_setOptionUseKerberos(SMBCCTX *c, smbc_bool b); + +/** Get whether to fallback after kerberos */ +smbc_bool +smbc_getOptionFallbackAfterKerberos(SMBCCTX *c); + +/** Set whether to fallback after kerberos */ +void +smbc_setOptionFallbackAfterKerberos(SMBCCTX *c, smbc_bool b); + +/** Get whether to automatically select anonymous login */ +smbc_bool +smbc_getOptionNoAutoAnonymousLogin(SMBCCTX *c); + +/** Set whether to automatically select anonymous login */ +void +smbc_setOptionNoAutoAnonymousLogin(SMBCCTX *c, smbc_bool b); + +/** Get whether to enable use of the winbind ccache */ +smbc_bool +smbc_getOptionUseCCache(SMBCCTX *c); + +/** Set whether to enable use of the winbind ccache */ +void +smbc_setOptionUseCCache(SMBCCTX *c, smbc_bool b); + + + +/************************************* + * Getters and setters for FUNCTIONS * + *************************************/ + +/** Get the function for obtaining authentication data */ +smbc_get_auth_data_fn smbc_getFunctionAuthData(SMBCCTX *c); + +/** Set the function for obtaining authentication data */ +void smbc_setFunctionAuthData(SMBCCTX *c, smbc_get_auth_data_fn fn); + +/** Get the new-style authentication function which includes the context. */ +smbc_get_auth_data_with_context_fn +smbc_getFunctionAuthDataWithContext(SMBCCTX *c); + +/** Set the new-style authentication function which includes the context. */ +void +smbc_setFunctionAuthDataWithContext(SMBCCTX *c, + smbc_get_auth_data_with_context_fn fn); + +/** Get the function for checking if a server is still good */ +smbc_check_server_fn smbc_getFunctionCheckServer(SMBCCTX *c); + +/** Set the function for checking if a server is still good */ +void smbc_setFunctionCheckServer(SMBCCTX *c, smbc_check_server_fn fn); + +/** Get the function for removing a server if unused */ +smbc_remove_unused_server_fn smbc_getFunctionRemoveUnusedServer(SMBCCTX *c); + +/** Set the function for removing a server if unused */ +void smbc_setFunctionRemoveUnusedServer(SMBCCTX *c, + smbc_remove_unused_server_fn fn); + +/** Get the function for adding a cached server */ +smbc_add_cached_srv_fn smbc_getFunctionAddCachedServer(SMBCCTX *c); + +/** Set the function for adding a cached server */ +void smbc_setFunctionAddCachedServer(SMBCCTX *c, smbc_add_cached_srv_fn fn); + +/** Get the function for server cache lookup */ +smbc_get_cached_srv_fn smbc_getFunctionGetCachedServer(SMBCCTX *c); + +/** Set the function for server cache lookup */ +void smbc_setFunctionGetCachedServer(SMBCCTX *c, smbc_get_cached_srv_fn fn); + +/** Get the function for server cache removal */ +smbc_remove_cached_srv_fn smbc_getFunctionRemoveCachedServer(SMBCCTX *c); + +/** Set the function for server cache removal */ +void smbc_setFunctionRemoveCachedServer(SMBCCTX *c, + smbc_remove_cached_srv_fn fn); + +/** + * Get the function for server cache purging. This function tries to + * remove all cached servers (e.g. on disconnect) + */ +smbc_purge_cached_fn smbc_getFunctionPurgeCachedServers(SMBCCTX *c); + +/** + * Set the function for server cache purging. This function tries to + * remove all cached servers (e.g. on disconnect) + */ +void smbc_setFunctionPurgeCachedServers(SMBCCTX *c, + smbc_purge_cached_fn fn); + +/** Get the function to store private data of the server cache */ +struct smbc_server_cache * smbc_getServerCacheData(SMBCCTX *c); + +/** Set the function to store private data of the server cache */ +void smbc_setServerCacheData(SMBCCTX *c, struct smbc_server_cache * cache); + + + +/***************************************************************** + * Callable functions for files. * + * Each callable has a function signature typedef, a declaration * + * for the getter, and a declaration for the setter. * + *****************************************************************/ + +typedef SMBCFILE * (*smbc_open_fn)(SMBCCTX *c, + const char *fname, + int flags, + mode_t mode); +smbc_open_fn smbc_getFunctionOpen(SMBCCTX *c); +void smbc_setFunctionOpen(SMBCCTX *c, smbc_open_fn fn); + +typedef SMBCFILE * (*smbc_creat_fn)(SMBCCTX *c, + const char *path, + mode_t mode); +smbc_creat_fn smbc_getFunctionCreat(SMBCCTX *c); +void smbc_setFunctionCreat(SMBCCTX *c, smbc_creat_fn); + +typedef ssize_t (*smbc_read_fn)(SMBCCTX *c, + SMBCFILE *file, + void *buf, + size_t count); +smbc_read_fn smbc_getFunctionRead(SMBCCTX *c); +void smbc_setFunctionRead(SMBCCTX *c, smbc_read_fn fn); + +typedef ssize_t (*smbc_write_fn)(SMBCCTX *c, + SMBCFILE *file, + const void *buf, + size_t count); +smbc_write_fn smbc_getFunctionWrite(SMBCCTX *c); +void smbc_setFunctionWrite(SMBCCTX *c, smbc_write_fn fn); + +typedef int (*smbc_unlink_fn)(SMBCCTX *c, + const char *fname); +smbc_unlink_fn smbc_getFunctionUnlink(SMBCCTX *c); +void smbc_setFunctionUnlink(SMBCCTX *c, smbc_unlink_fn fn); + +typedef int (*smbc_rename_fn)(SMBCCTX *ocontext, + const char *oname, + SMBCCTX *ncontext, + const char *nname); +smbc_rename_fn smbc_getFunctionRename(SMBCCTX *c); +void smbc_setFunctionRename(SMBCCTX *c, smbc_rename_fn fn); + +typedef off_t (*smbc_lseek_fn)(SMBCCTX *c, + SMBCFILE * file, + off_t offset, + int whence); +smbc_lseek_fn smbc_getFunctionLseek(SMBCCTX *c); +void smbc_setFunctionLseek(SMBCCTX *c, smbc_lseek_fn fn); + +typedef int (*smbc_stat_fn)(SMBCCTX *c, + const char *fname, + struct stat *st); +smbc_stat_fn smbc_getFunctionStat(SMBCCTX *c); +void smbc_setFunctionStat(SMBCCTX *c, smbc_stat_fn fn); + +typedef int (*smbc_fstat_fn)(SMBCCTX *c, + SMBCFILE *file, + struct stat *st); +smbc_fstat_fn smbc_getFunctionFstat(SMBCCTX *c); +void smbc_setFunctionFstat(SMBCCTX *c, smbc_fstat_fn fn); + +typedef int (*smbc_statvfs_fn)(SMBCCTX *c, + char *path, + struct statvfs *st); +smbc_statvfs_fn smbc_getFunctionStatVFS(SMBCCTX *c); +void smbc_setFunctionStatVFS(SMBCCTX *c, smbc_statvfs_fn fn); + +typedef int (*smbc_fstatvfs_fn)(SMBCCTX *c, + SMBCFILE *file, + struct statvfs *st); +smbc_fstatvfs_fn smbc_getFunctionFstatVFS(SMBCCTX *c); +void smbc_setFunctionFstatVFS(SMBCCTX *c, smbc_fstatvfs_fn fn); + +typedef int (*smbc_ftruncate_fn)(SMBCCTX *c, + SMBCFILE *f, + off_t size); +smbc_ftruncate_fn smbc_getFunctionFtruncate(SMBCCTX *c); +void smbc_setFunctionFtruncate(SMBCCTX *c, smbc_ftruncate_fn fn); + +typedef int (*smbc_close_fn)(SMBCCTX *c, + SMBCFILE *file); +smbc_close_fn smbc_getFunctionClose(SMBCCTX *c); +void smbc_setFunctionClose(SMBCCTX *c, smbc_close_fn fn); + + + +/***************************************************************** + * Callable functions for directories. * + * Each callable has a function signature typedef, a declaration * + * for the getter, and a declaration for the setter. * + *****************************************************************/ + +typedef SMBCFILE * (*smbc_opendir_fn)(SMBCCTX *c, + const char *fname); +smbc_opendir_fn smbc_getFunctionOpendir(SMBCCTX *c); +void smbc_setFunctionOpendir(SMBCCTX *c, smbc_opendir_fn fn); + +typedef int (*smbc_closedir_fn)(SMBCCTX *c, + SMBCFILE *dir); +smbc_closedir_fn smbc_getFunctionClosedir(SMBCCTX *c); +void smbc_setFunctionClosedir(SMBCCTX *c, smbc_closedir_fn fn); + +typedef struct smbc_dirent * (*smbc_readdir_fn)(SMBCCTX *c, + SMBCFILE *dir); +smbc_readdir_fn smbc_getFunctionReaddir(SMBCCTX *c); +void smbc_setFunctionReaddir(SMBCCTX *c, smbc_readdir_fn fn); + +typedef int (*smbc_getdents_fn)(SMBCCTX *c, + SMBCFILE *dir, + struct smbc_dirent *dirp, + int count); +smbc_getdents_fn smbc_getFunctionGetdents(SMBCCTX *c); +void smbc_setFunctionGetdents(SMBCCTX *c, smbc_getdents_fn fn); + +typedef int (*smbc_mkdir_fn)(SMBCCTX *c, + const char *fname, + mode_t mode); +smbc_mkdir_fn smbc_getFunctionMkdir(SMBCCTX *c); +void smbc_setFunctionMkdir(SMBCCTX *c, smbc_mkdir_fn fn); + +typedef int (*smbc_rmdir_fn)(SMBCCTX *c, + const char *fname); +smbc_rmdir_fn smbc_getFunctionRmdir(SMBCCTX *c); +void smbc_setFunctionRmdir(SMBCCTX *c, smbc_rmdir_fn fn); + +typedef off_t (*smbc_telldir_fn)(SMBCCTX *c, + SMBCFILE *dir); +smbc_telldir_fn smbc_getFunctionTelldir(SMBCCTX *c); +void smbc_setFunctionTelldir(SMBCCTX *c, smbc_telldir_fn fn); + +typedef int (*smbc_lseekdir_fn)(SMBCCTX *c, + SMBCFILE *dir, + off_t offset); +smbc_lseekdir_fn smbc_getFunctionLseekdir(SMBCCTX *c); +void smbc_setFunctionLseekdir(SMBCCTX *c, smbc_lseekdir_fn fn); + +typedef int (*smbc_fstatdir_fn)(SMBCCTX *c, + SMBCFILE *dir, + struct stat *st); +smbc_fstatdir_fn smbc_getFunctionFstatdir(SMBCCTX *c); +void smbc_setFunctionFstatdir(SMBCCTX *c, smbc_fstatdir_fn fn); + + + +/***************************************************************** + * Callable functions applicable to both files and directories. * + * Each callable has a function signature typedef, a declaration * + * for the getter, and a declaration for the setter. * + *****************************************************************/ + +typedef int (*smbc_chmod_fn)(SMBCCTX *c, + const char *fname, + mode_t mode); +smbc_chmod_fn smbc_getFunctionChmod(SMBCCTX *c); +void smbc_setFunctionChmod(SMBCCTX *c, smbc_chmod_fn fn); + +typedef int (*smbc_utimes_fn)(SMBCCTX *c, + const char *fname, + struct timeval *tbuf); +smbc_utimes_fn smbc_getFunctionUtimes(SMBCCTX *c); +void smbc_setFunctionUtimes(SMBCCTX *c, smbc_utimes_fn fn); + +typedef int (*smbc_setxattr_fn)(SMBCCTX *context, + const char *fname, + const char *name, + const void *value, + size_t size, + int flags); +smbc_setxattr_fn smbc_getFunctionSetxattr(SMBCCTX *c); +void smbc_setFunctionSetxattr(SMBCCTX *c, smbc_setxattr_fn fn); + +typedef int (*smbc_getxattr_fn)(SMBCCTX *context, + const char *fname, + const char *name, + const void *value, + size_t size); +smbc_getxattr_fn smbc_getFunctionGetxattr(SMBCCTX *c); +void smbc_setFunctionGetxattr(SMBCCTX *c, smbc_getxattr_fn fn); + +typedef int (*smbc_removexattr_fn)(SMBCCTX *context, + const char *fname, + const char *name); +smbc_removexattr_fn smbc_getFunctionRemovexattr(SMBCCTX *c); +void smbc_setFunctionRemovexattr(SMBCCTX *c, smbc_removexattr_fn fn); + +typedef int (*smbc_listxattr_fn)(SMBCCTX *context, + const char *fname, + char *list, + size_t size); +smbc_listxattr_fn smbc_getFunctionListxattr(SMBCCTX *c); +void smbc_setFunctionListxattr(SMBCCTX *c, smbc_listxattr_fn fn); + + + +/***************************************************************** + * Callable functions for printing. * + * Each callable has a function signature typedef, a declaration * + * for the getter, and a declaration for the setter. * + *****************************************************************/ + +typedef int (*smbc_print_file_fn)(SMBCCTX *c_file, + const char *fname, + SMBCCTX *c_print, + const char *printq); +smbc_print_file_fn smbc_getFunctionPrintFile(SMBCCTX *c); +void smbc_setFunctionPrintFile(SMBCCTX *c, smbc_print_file_fn fn); + +typedef SMBCFILE * (*smbc_open_print_job_fn)(SMBCCTX *c, + const char *fname); +smbc_open_print_job_fn smbc_getFunctionOpenPrintJob(SMBCCTX *c); +void smbc_setFunctionOpenPrintJob(SMBCCTX *c, + smbc_open_print_job_fn fn); + +typedef int (*smbc_list_print_jobs_fn)(SMBCCTX *c, + const char *fname, + smbc_list_print_job_fn fn); +smbc_list_print_jobs_fn smbc_getFunctionListPrintJobs(SMBCCTX *c); +void smbc_setFunctionListPrintJobs(SMBCCTX *c, + smbc_list_print_jobs_fn fn); + +typedef int (*smbc_unlink_print_job_fn)(SMBCCTX *c, + const char *fname, + int id); +smbc_unlink_print_job_fn smbc_getFunctionUnlinkPrintJob(SMBCCTX *c); +void smbc_setFunctionUnlinkPrintJob(SMBCCTX *c, + smbc_unlink_print_job_fn fn); + + +/**@ingroup misc + * Create a new SBMCCTX (a context). + * + * Must be called before the context is passed to smbc_context_init() + * + * @return The given SMBCCTX pointer on success, NULL on error with errno set: + * - ENOMEM Out of memory + * + * @see smbc_free_context(), smbc_init_context() + * + * @note Do not forget to smbc_init_context() the returned SMBCCTX pointer ! + */ +SMBCCTX * smbc_new_context(void); + +/**@ingroup misc + * Delete a SBMCCTX (a context) acquired from smbc_new_context(). + * + * The context will be deleted if possible. + * + * @param context A pointer to a SMBCCTX obtained from smbc_new_context() + * + * @param shutdown_ctx If 1, all connections and files will be closed even if they are busy. + * + * + * @return Returns 0 on succes. Returns 1 on failure with errno set: + * - EBUSY Server connections are still used, Files are open or cache + * could not be purged + * - EBADF context == NULL + * + * @see smbc_new_context() + * + * @note It is advised to clean up all the contexts with shutdown_ctx set to 1 + * just before exit()'ing. When shutdown_ctx is 0, this function can be + * use in periodical cleanup functions for example. + */ +int smbc_free_context(SMBCCTX * context, int shutdown_ctx); + + +/**@ingroup misc + * + * @deprecated. Use smbc_setOption*() functions instead. + */ +void +smbc_option_set(SMBCCTX *context, + char *option_name, + ... /* option_value */); + +/* + * @deprecated. Use smbc_getOption*() functions instead. + */ +void * +smbc_option_get(SMBCCTX *context, + char *option_name); + +/**@ingroup misc + * Initialize a SBMCCTX (a context). + * + * Must be called before using any SMBCCTX API function + * + * @param context A pointer to a SMBCCTX obtained from smbc_new_context() + * + * @return A pointer to the given SMBCCTX on success, + * NULL on error with errno set: + * - EBADF NULL context given + * - ENOMEM Out of memory + * - ENOENT The smb.conf file would not load + * + * @see smbc_new_context() + * + * @note my_context = smbc_init_context(smbc_new_context()) + * is perfectly safe, but it might leak memory on + * smbc_context_init() failure. Avoid this. + * You'll have to call smbc_free_context() yourself + * on failure. + */ + +SMBCCTX * smbc_init_context(SMBCCTX * context); + +/**@ingroup misc + * Initialize the samba client library. + * + * Must be called before using any of the smbclient API function + * + * @param fn The function that will be called to obtaion + * authentication credentials. + * + * @param debug Allows caller to set the debug level. Can be + * changed in smb.conf file. Allows caller to set + * debugging if no smb.conf. + * + * @return 0 on success, < 0 on error with errno set: + * - ENOMEM Out of memory + * - ENOENT The smb.conf file would not load + * + */ + +int smbc_init(smbc_get_auth_data_fn fn, int debug); + +/**@ingroup misc + * Set or retrieve the compatibility library's context pointer + * + * @param context New context to use, or NULL. If a new context is provided, + * it must have allocated with smbc_new_context() and + * initialized with smbc_init_context(), followed, optionally, + * by some manual changes to some of the non-internal fields. + * + * @return The old context. + * + * @see smbc_new_context(), smbc_init_context(), smbc_init() + * + * @note This function may be called prior to smbc_init() to force + * use of the next context without any internal calls to + * smbc_new_context() or smbc_init_context(). It may also + * be called after smbc_init() has already called those two + * functions, to replace the existing context with a new one. + * Care should be taken, in this latter case, to ensure that + * the server cache and any data allocated by the + * authentication functions have been freed, if necessary. + */ + +SMBCCTX * smbc_set_context(SMBCCTX * new_context); + +/**@ingroup file + * Open a file on an SMB server. + * + * @param furl The smb url of the file to be opened. + * + * @param flags Is one of O_RDONLY, O_WRONLY or O_RDWR which + * request opening the file read-only,write-only + * or read/write. flags may also be bitwise-or'd with + * one or more of the following: + * O_CREAT - If the file does not exist it will be + * created. + * O_EXCL - When used with O_CREAT, if the file + * already exists it is an error and the open will + * fail. + * O_TRUNC - If the file already exists it will be + * truncated. + * O_APPEND The file is opened in append mode + * + * @param mode mode specifies the permissions to use if a new + * file is created. It is modified by the + * process's umask in the usual way: the permissions + * of the created file are (mode & ~umask) + * + * Not currently use, but there for future use. + * We will map this to SYSTEM, HIDDEN, etc bits + * that reverses the mapping that smbc_fstat does. + * + * @return Valid file handle, < 0 on error with errno set: + * - ENOMEM Out of memory + * - EINVAL if an invalid parameter passed, like no + * file, or smbc_init not called. + * - EEXIST pathname already exists and O_CREAT and + * O_EXCL were used. + * - EISDIR pathname refers to a directory and + * the access requested involved writing. + * - EACCES The requested access to the file is not + * allowed + * - ENODEV The requested share does not exist + * - ENOTDIR A file on the path is not a directory + * - ENOENT A directory component in pathname does + * not exist. + * + * @see smbc_creat() + * + * @note This call uses an underlying routine that may create + * a new connection to the server specified in the URL. + * If the credentials supplied in the URL, or via the + * auth_fn in the smbc_init call, fail, this call will + * try again with an empty username and password. This + * often gets mapped to the guest account on some machines. + */ + +int smbc_open(const char *furl, int flags, mode_t mode); + +/**@ingroup file + * Create a file on an SMB server. + * + * Same as calling smbc_open() with flags = O_CREAT|O_WRONLY|O_TRUNC + * + * @param furl The smb url of the file to be created + * + * @param mode mode specifies the permissions to use if a new + * file is created. It is modified by the + * process's umask in the usual way: the permissions + * of the created file are (mode & ~umask) + * + * NOTE, the above is not true. We are dealing with + * an SMB server, which has no concept of a umask! + * + * @return Valid file handle, < 0 on error with errno set: + * - ENOMEM Out of memory + * - EINVAL if an invalid parameter passed, like no + * file, or smbc_init not called. + * - EEXIST pathname already exists and O_CREAT and + * O_EXCL were used. + * - EISDIR pathname refers to a directory and + * the access requested involved writing. + * - EACCES The requested access to the file is not + * allowed + * - ENOENT A directory component in pathname does + * not exist. + * - ENODEV The requested share does not exist. + * @see smbc_open() + * + */ + +int smbc_creat(const char *furl, mode_t mode); + +/**@ingroup file + * Read from a file using an opened file handle. + * + * @param fd Open file handle from smbc_open() or smbc_creat() + * + * @param buf Pointer to buffer to recieve read data + * + * @param bufsize Size of buf in bytes + * + * @return Number of bytes read; + * 0 upon EOF; + * < 0 on error, with errno set: + * - EISDIR fd refers to a directory + * - EBADF fd is not a valid file descriptor or + * is not open for reading. + * - EINVAL fd is attached to an object which is + * unsuitable for reading, or no buffer passed or + * smbc_init not called. + * + * @see smbc_open(), smbc_write() + * + */ +ssize_t smbc_read(int fd, void *buf, size_t bufsize); + + +/**@ingroup file + * Write to a file using an opened file handle. + * + * @param fd Open file handle from smbc_open() or smbc_creat() + * + * @param buf Pointer to buffer to recieve read data + * + * @param bufsize Size of buf in bytes + * + * @return Number of bytes written, < 0 on error with errno set: + * - EISDIR fd refers to a directory. + * - EBADF fd is not a valid file descriptor or + * is not open for reading. + * - EINVAL fd is attached to an object which is + * unsuitable for reading, or no buffer passed or + * smbc_init not called. + * + * @see smbc_open(), smbc_read() + * + */ +ssize_t smbc_write(int fd, const void *buf, size_t bufsize); + + +/**@ingroup file + * Seek to a specific location in a file. + * + * @param fd Open file handle from smbc_open() or smbc_creat() + * + * @param offset Offset in bytes from whence + * + * @param whence A location in the file: + * - SEEK_SET The offset is set to offset bytes from + * the beginning of the file + * - SEEK_CUR The offset is set to current location + * plus offset bytes. + * - SEEK_END The offset is set to the size of the + * file plus offset bytes. + * + * @return Upon successful completion, lseek returns the + * resulting offset location as measured in bytes + * from the beginning of the file. Otherwise, a value + * of (off_t)-1 is returned and errno is set to + * indicate the error: + * - EBADF Fildes is not an open file descriptor. + * - EINVAL Whence is not a proper value or smbc_init + * not called. + * + * @todo Are all the whence values really supported? + * + * @todo Are errno values complete and correct? + */ +off_t smbc_lseek(int fd, off_t offset, int whence); + + +/**@ingroup file + * Close an open file handle. + * + * @param fd The file handle to close + * + * @return 0 on success, < 0 on error with errno set: + * - EBADF fd isn't a valid open file descriptor + * - EINVAL smbc_init() failed or has not been called + * + * @see smbc_open(), smbc_creat() + */ +int smbc_close(int fd); + + +/**@ingroup directory + * Unlink (delete) a file or directory. + * + * @param furl The smb url of the file to delete + * + * @return 0 on success, < 0 on error with errno set: + * - EACCES or EPERM Write access to the directory + * containing pathname is not allowed or one + * of the directories in pathname did not allow + * search (execute) permission + * - ENOENT A directory component in pathname does + * not exist + * - EINVAL NULL was passed in the file param or + * smbc_init not called. + * - EACCES You do not have access to the file + * - ENOMEM Insufficient kernel memory was available + * + * @see smbc_rmdir()s + * + * @todo Are errno values complete and correct? + */ +int smbc_unlink(const char *furl); + + +/**@ingroup directory + * Rename or move a file or directory. + * + * @param ourl The original smb url (source url) of file or + * directory to be moved + * + * @param nurl The new smb url (destination url) of the file + * or directory after the move. Currently nurl must + * be on the same share as ourl. + * + * @return 0 on success, < 0 on error with errno set: + * - EISDIR nurl is an existing directory, but ourl is + * not a directory. + * - EEXIST nurl is a non-empty directory, + * i.e., contains entries other than "." and ".." + * - EINVAL The new url contained a path prefix + * of the old, or, more generally, an attempt was + * made to make a directory a subdirectory of itself + * or smbc_init not called. + * - ENOTDIR A component used as a directory in ourl + * or nurl path is not, in fact, a directory. Or, + * ourl is a directory, and newpath exists but is not + * a directory. + * - EACCES or EPERM Write access to the directory + * containing ourl or nurl is not allowed for the + * process's effective uid, or one of the + * directories in ourl or nurl did not allow search + * (execute) permission, or ourl was a directory + * and did not allow write permission. + * - ENOENT A directory component in ourl or nurl + * does not exist. + * - EXDEV Rename across shares not supported. + * - ENOMEM Insufficient kernel memory was available. + * - EEXIST The target file, nurl, already exists. + * + * + * @todo Are we going to support copying when urls are not on the same + * share? I say no... NOTE. I agree for the moment. + * + */ +int smbc_rename(const char *ourl, const char *nurl); + + +/**@ingroup directory + * Open a directory used to obtain directory entries. + * + * @param durl The smb url of the directory to open + * + * @return Valid directory handle. < 0 on error with errno set: + * - EACCES Permission denied. + * - EINVAL A NULL file/URL was passed, or the URL would + * not parse, or was of incorrect form or smbc_init not + * called. + * - ENOENT durl does not exist, or name is an + * - ENOMEM Insufficient memory to complete the + * operation. + * - ENOTDIR name is not a directory. + * - EPERM the workgroup could not be found. + * - ENODEV the workgroup or server could not be found. + * + * @see smbc_getdents(), smbc_readdir(), smbc_closedir() + * + */ +int smbc_opendir(const char *durl); + + +/**@ingroup directory + * Close a directory handle opened by smbc_opendir(). + * + * @param dh Directory handle to close + * + * @return 0 on success, < 0 on error with errno set: + * - EBADF dh is an invalid directory handle + * + * @see smbc_opendir() + */ +int smbc_closedir(int dh); + + +/**@ingroup directory + * Get multiple directory entries. + * + * smbc_getdents() reads as many dirent structures from the an open + * directory handle into a specified memory area as will fit. + * + * @param dh Valid directory as returned by smbc_opendir() + * + * @param dirp pointer to buffer that will receive the directory + * entries. + * + * @param count The size of the dirp buffer in bytes + * + * @returns If any dirents returned, return will indicate the + * total size. If there were no more dirents available, + * 0 is returned. < 0 indicates an error. + * - EBADF Invalid directory handle + * - EINVAL Result buffer is too small or smbc_init + * not called. + * - ENOENT No such directory. + * @see , smbc_dirent, smbc_readdir(), smbc_open() + * + * @todo Are errno values complete and correct? + * + * @todo Add example code so people know how to parse buffers. + */ +int smbc_getdents(unsigned int dh, struct smbc_dirent *dirp, int count); + + +/**@ingroup directory + * Get a single directory entry. + * + * @param dh Valid directory as returned by smbc_opendir() + * + * @return A pointer to a smbc_dirent structure, or NULL if an + * error occurs or end-of-directory is reached: + * - EBADF Invalid directory handle + * - EINVAL smbc_init() failed or has not been called + * + * @see smbc_dirent, smbc_getdents(), smbc_open() + */ +struct smbc_dirent* smbc_readdir(unsigned int dh); + + +/**@ingroup directory + * Get the current directory offset. + * + * smbc_telldir() may be used in conjunction with smbc_readdir() and + * smbc_lseekdir(). + * + * @param dh Valid directory as returned by smbc_opendir() + * + * @return The current location in the directory stream or -1 + * if an error occur. The current location is not + * an offset. Becuase of the implementation, it is a + * handle that allows the library to find the entry + * later. + * - EBADF dh is not a valid directory handle + * - EINVAL smbc_init() failed or has not been called + * - ENOTDIR if dh is not a directory + * + * @see smbc_readdir() + * + */ +off_t smbc_telldir(int dh); + + +/**@ingroup directory + * lseek on directories. + * + * smbc_lseekdir() may be used in conjunction with smbc_readdir() and + * smbc_telldir(). (rewind by smbc_lseekdir(fd, NULL)) + * + * @param fd Valid directory as returned by smbc_opendir() + * + * @param offset The offset (as returned by smbc_telldir). Can be + * NULL, in which case we will rewind + * + * @return 0 on success, -1 on failure + * - EBADF dh is not a valid directory handle + * - ENOTDIR if dh is not a directory + * - EINVAL offset did not refer to a valid dirent or + * smbc_init not called. + * + * @see smbc_telldir() + * + * + * @todo In what does the reture and errno values mean? + */ +int smbc_lseekdir(int fd, off_t offset); + +/**@ingroup directory + * Create a directory. + * + * @param durl The url of the directory to create + * + * @param mode Specifies the permissions to use. It is modified + * by the process's umask in the usual way: the + * permissions of the created file are (mode & ~umask). + * + * @return 0 on success, < 0 on error with errno set: + * - EEXIST directory url already exists + * - EACCES The parent directory does not allow write + * permission to the process, or one of the directories + * - ENOENT A directory component in pathname does not + * exist. + * - EINVAL NULL durl passed or smbc_init not called. + * - ENOMEM Insufficient memory was available. + * + * @see smbc_rmdir() + * + */ +int smbc_mkdir(const char *durl, mode_t mode); + + +/**@ingroup directory + * Remove a directory. + * + * @param durl The smb url of the directory to remove + * + * @return 0 on success, < 0 on error with errno set: + * - EACCES or EPERM Write access to the directory + * containing pathname was not allowed. + * - EINVAL durl is NULL or smbc_init not called. + * - ENOENT A directory component in pathname does not + * exist. + * - ENOTEMPTY directory contains entries. + * - ENOMEM Insufficient kernel memory was available. + * + * @see smbc_mkdir(), smbc_unlink() + * + * @todo Are errno values complete and correct? + */ +int smbc_rmdir(const char *durl); + + +/**@ingroup attribute + * Get information about a file or directory. + * + * @param url The smb url to get information for + * + * @param st pointer to a buffer that will be filled with + * standard Unix struct stat information. + * + * @return 0 on success, < 0 on error with errno set: + * - ENOENT A component of the path file_name does not + * exist. + * - EINVAL a NULL url was passed or smbc_init not called. + * - EACCES Permission denied. + * - ENOMEM Out of memory + * - ENOTDIR The target dir, url, is not a directory. + * + * @see Unix stat() + * + */ +int smbc_stat(const char *url, struct stat *st); + + +/**@ingroup attribute + * Get file information via an file descriptor. + * + * @param fd Open file handle from smbc_open() or smbc_creat() + * + * @param st pointer to a buffer that will be filled with + * standard Unix struct stat information. + * + * @return 0 on success, < 0 on error with errno set: + * - EBADF filedes is bad. + * - EACCES Permission denied. + * - EBADF fd is not a valid file descriptor + * - EINVAL Problems occurred in the underlying routines + * or smbc_init not called. + * - ENOMEM Out of memory + * + * @see smbc_stat(), Unix stat() + * + */ +int smbc_fstat(int fd, struct stat *st); + + +/**@ingroup attribute + * Get file system information for a specified path. + * + * @param url The smb url to get information for + * + * @param st pointer to a buffer that will be filled with + * standard Unix struct statvfs information. + * + * @return 0 on success, < 0 on error with errno set: + * - EBADF filedes is bad. + * - EACCES Permission denied. + * - EBADF fd is not a valid file descriptor + * - EINVAL Problems occurred in the underlying routines + * or smbc_init not called. + * - ENOMEM Out of memory + * + * @see Unix fstatvfs() + * + */ +int +smbc_statvfs(char *url, + struct statvfs *st); + +/**@ingroup attribute + * Get file system information via an file descriptor. + * + * @param fd Open file handle from smbc_open(), smbc_creat(), + * or smbc_opendir() + * + * @param st pointer to a buffer that will be filled with + * standard Unix struct statvfs information. + * + * @return 0 on success, < 0 on error with errno set: + * - EBADF filedes is bad. + * - EACCES Permission denied. + * - EBADF fd is not a valid file descriptor + * - EINVAL Problems occurred in the underlying routines + * or smbc_init not called. + * - ENOMEM Out of memory + * + * @see Unix fstatvfs() + * + */ +int +smbc_fstatvfs(int fd, + struct statvfs *st); + + +/**@ingroup attribute + * Truncate a file given a file descriptor + * + * @param fd Open file handle from smbc_open() or smbc_creat() + * + * @param size size to truncate the file to + * + * @return 0 on success, < 0 on error with errno set: + * - EBADF filedes is bad. + * - EACCES Permission denied. + * - EBADF fd is not a valid file descriptor + * - EINVAL Problems occurred in the underlying routines + * or smbc_init not called. + * - ENOMEM Out of memory + * + * @see , Unix ftruncate() + * + */ +int smbc_ftruncate(int fd, off_t size); + + +/**@ingroup attribute + * Change the permissions of a file. + * + * @param url The smb url of the file or directory to change + * permissions of + * + * @param mode The permissions to set: + * - Put good explaination of permissions here! + * + * @return 0 on success, < 0 on error with errno set: + * - EPERM The effective UID does not match the owner + * of the file, and is not zero + * - ENOENT The file does not exist. + * - ENOMEM Insufficient was available. + * - ENOENT file or directory does not exist + * + * @todo Actually implement this fuction? + * + * @todo Are errno values complete and correct? + */ +int smbc_chmod(const char *url, mode_t mode); + +/** + * @ingroup attribute + * Change the last modification time on a file + * + * @param url The smb url of the file or directory to change + * the modification time of + * + * @param tbuf An array of two timeval structures which contains, + * respectively, the desired access and modification times. + * NOTE: Only the tv_sec field off each timeval structure is + * used. The tv_usec (microseconds) portion is ignored. + * + * @return 0 on success, < 0 on error with errno set: + * - EINVAL The client library is not properly initialized + * - EPERM Permission was denied. + * + */ +int smbc_utimes(const char *url, struct timeval *tbuf); + +#ifdef HAVE_UTIME_H +/** + * @ingroup attribute + * Change the last modification time on a file + * + * @param url The smb url of the file or directory to change + * the modification time of + * + * @param utbuf A pointer to a utimebuf structure which contains the + * desired access and modification times. + * + * @return 0 on success, < 0 on error with errno set: + * - EINVAL The client library is not properly initialized + * - ENOMEM No memory was available for internal needs + * - EPERM Permission was denied. + * + */ +int smbc_utime(const char *fname, struct utimbuf *utbuf); +#endif + +/**@ingroup attribute + * Set extended attributes for a file. This is used for modifying a file's + * security descriptor (i.e. owner, group, and access control list) + * + * @param url The smb url of the file or directory to set extended + * attributes for. + * + * @param name The name of an attribute to be changed. Names are of + * one of the following forms: + * + * system.nt_sec_desc. + * system.nt_sec_desc.* + * system.nt_sec_desc.*+ + * + * where is one of: + * + * revision + * owner + * owner+ + * group + * group+ + * acl: + * acl+: + * + * In the forms "system.nt_sec_desc.*" and + * "system.nt_sec_desc.*+", the asterisk and plus signs are + * literal, i.e. the string is provided exactly as shown, and + * the value parameter should contain a complete security + * descriptor with name:value pairs separated by tabs, + * commas, or newlines (not spaces!). + * + * The plus sign ('+') indicates that SIDs should be mapped + * to names. Without the plus sign, SIDs are not mapped; + * rather they are simply converted to a string format. + * + * @param value The value to be assigned to the specified attribute name. + * This buffer should contain only the attribute value if the + * name was of the "system.nt_sec_desc." + * form. If the name was of the "system.nt_sec_desc.*" form + * then a complete security descriptor, with name:value pairs + * separated by tabs, commas, or newlines (not spaces!), + * should be provided in this value buffer. A complete + * security descriptor will contain one or more entries + * selected from the following: + * + * REVISION: + * OWNER: + * GROUP: + * ACL::// + * + * The revision of the ACL specifies the internal Windows NT + * ACL revision for the security descriptor. If not specified + * it defaults to 1. Using values other than 1 may cause + * strange behaviour. + * + * The owner and group specify the owner and group sids for + * the object. If the attribute name (either '*+' with a + * complete security descriptor, or individual 'owner+' or + * 'group+' attribute names) ended with a plus sign, the + * specified name is resolved to a SID value, using the + * server on which the file or directory resides. Otherwise, + * the value should be provided in SID-printable format as + * S-1-x-y-z, and is used directly. The + * associated with the ACL: attribute should be provided + * similarly. + * + * @param size The number of the bytes of data in the value buffer + * + * @param flags A bit-wise OR of zero or more of the following: + * SMBC_XATTR_FLAG_CREATE - + * fail if the named attribute already exists + * SMBC_XATTR_FLAG_REPLACE - + * fail if the attribute does not already exist + * + * If neither flag is specified, the specified attributes + * will be added or replace existing attributes of the same + * name, as necessary. + * + * @return 0 on success, < 0 on error with errno set: + * - EINVAL The client library is not properly initialized + * or one of the parameters is not of a correct + * form + * - ENOMEM No memory was available for internal needs + * - EEXIST If the attribute already exists and the flag + * SMBC_XATTR_FLAG_CREAT was specified + * - ENOATTR If the attribute does not exist and the flag + * SMBC_XATTR_FLAG_REPLACE was specified + * - EPERM Permission was denied. + * - ENOTSUP The referenced file system does not support + * extended attributes + * + * @note Attribute names are compared in a case-insensitive + * fashion. All of the following are equivalent, although + * the all-lower-case name is the preferred format: + * system.nt_sec_desc.owner + * SYSTEM.NT_SEC_DESC.OWNER + * sYsTeM.nt_sEc_desc.owNER + * + */ +int smbc_setxattr(const char *url, + const char *name, + const void *value, + size_t size, + int flags); + + +/**@ingroup attribute + * Set extended attributes for a file. This is used for modifying a file's + * security descriptor (i.e. owner, group, and access control list). The + * POSIX function which this maps to would act on a symbolic link rather than + * acting on what the symbolic link points to, but with no symbolic links in + * SMB file systems, this function is functionally identical to + * smbc_setxattr(). + * + * @param url The smb url of the file or directory to set extended + * attributes for. + * + * @param name The name of an attribute to be changed. Names are of + * one of the following forms: + * + * system.nt_sec_desc. + * system.nt_sec_desc.* + * system.nt_sec_desc.*+ + * + * where is one of: + * + * revision + * owner + * owner+ + * group + * group+ + * acl: + * acl+: + * + * In the forms "system.nt_sec_desc.*" and + * "system.nt_sec_desc.*+", the asterisk and plus signs are + * literal, i.e. the string is provided exactly as shown, and + * the value parameter should contain a complete security + * descriptor with name:value pairs separated by tabs, + * commas, or newlines (not spaces!). + * + * The plus sign ('+') indicates that SIDs should be mapped + * to names. Without the plus sign, SIDs are not mapped; + * rather they are simply converted to a string format. + * + * @param value The value to be assigned to the specified attribute name. + * This buffer should contain only the attribute value if the + * name was of the "system.nt_sec_desc." + * form. If the name was of the "system.nt_sec_desc.*" form + * then a complete security descriptor, with name:value pairs + * separated by tabs, commas, or newlines (not spaces!), + * should be provided in this value buffer. A complete + * security descriptor will contain one or more entries + * selected from the following: + * + * REVISION: + * OWNER: + * GROUP: + * ACL::// + * + * The revision of the ACL specifies the internal Windows NT + * ACL revision for the security descriptor. If not specified + * it defaults to 1. Using values other than 1 may cause + * strange behaviour. + * + * The owner and group specify the owner and group sids for + * the object. If the attribute name (either '*+' with a + * complete security descriptor, or individual 'owner+' or + * 'group+' attribute names) ended with a plus sign, the + * specified name is resolved to a SID value, using the + * server on which the file or directory resides. Otherwise, + * the value should be provided in SID-printable format as + * S-1-x-y-z, and is used directly. The + * associated with the ACL: attribute should be provided + * similarly. + * + * @param size The number of the bytes of data in the value buffer + * + * @param flags A bit-wise OR of zero or more of the following: + * SMBC_XATTR_FLAG_CREATE - + * fail if the named attribute already exists + * SMBC_XATTR_FLAG_REPLACE - + * fail if the attribute does not already exist + * + * If neither flag is specified, the specified attributes + * will be added or replace existing attributes of the same + * name, as necessary. + * + * @return 0 on success, < 0 on error with errno set: + * - EINVAL The client library is not properly initialized + * or one of the parameters is not of a correct + * form + * - ENOMEM No memory was available for internal needs + * - EEXIST If the attribute already exists and the flag + * SMBC_XATTR_FLAG_CREAT was specified + * - ENOATTR If the attribute does not exist and the flag + * SMBC_XATTR_FLAG_REPLACE was specified + * - EPERM Permission was denied. + * - ENOTSUP The referenced file system does not support + * extended attributes + * + * @note Attribute names are compared in a case-insensitive + * fashion. All of the following are equivalent, although + * the all-lower-case name is the preferred format: + * system.nt_sec_desc.owner + * SYSTEM.NT_SEC_DESC.OWNER + * sYsTeM.nt_sEc_desc.owNER + * + */ +int smbc_lsetxattr(const char *url, + const char *name, + const void *value, + size_t size, + int flags); + + +/**@ingroup attribute + * Set extended attributes for a file. This is used for modifying a file's + * security descriptor (i.e. owner, group, and access control list) + * + * @param fd A file descriptor associated with an open file (as + * previously returned by smbc_open(), to get extended + * attributes for. + * + * @param name The name of an attribute to be changed. Names are of + * one of the following forms: + * + * system.nt_sec_desc. + * system.nt_sec_desc.* + * system.nt_sec_desc.*+ + * + * where is one of: + * + * revision + * owner + * owner+ + * group + * group+ + * acl: + * acl+: + * + * In the forms "system.nt_sec_desc.*" and + * "system.nt_sec_desc.*+", the asterisk and plus signs are + * literal, i.e. the string is provided exactly as shown, and + * the value parameter should contain a complete security + * descriptor with name:value pairs separated by tabs, + * commas, or newlines (not spaces!). + * + * The plus sign ('+') indicates that SIDs should be mapped + * to names. Without the plus sign, SIDs are not mapped; + * rather they are simply converted to a string format. + * + * @param value The value to be assigned to the specified attribute name. + * This buffer should contain only the attribute value if the + * name was of the "system.nt_sec_desc." + * form. If the name was of the "system.nt_sec_desc.*" form + * then a complete security descriptor, with name:value pairs + * separated by tabs, commas, or newlines (not spaces!), + * should be provided in this value buffer. A complete + * security descriptor will contain one or more entries + * selected from the following: + * + * REVISION: + * OWNER: + * GROUP: + * ACL::// + * + * The revision of the ACL specifies the internal Windows NT + * ACL revision for the security descriptor. If not specified + * it defaults to 1. Using values other than 1 may cause + * strange behaviour. + * + * The owner and group specify the owner and group sids for + * the object. If the attribute name (either '*+' with a + * complete security descriptor, or individual 'owner+' or + * 'group+' attribute names) ended with a plus sign, the + * specified name is resolved to a SID value, using the + * server on which the file or directory resides. Otherwise, + * the value should be provided in SID-printable format as + * S-1-x-y-z, and is used directly. The + * associated with the ACL: attribute should be provided + * similarly. + * + * @param size The number of the bytes of data in the value buffer + * + * @param flags A bit-wise OR of zero or more of the following: + * SMBC_XATTR_FLAG_CREATE - + * fail if the named attribute already exists + * SMBC_XATTR_FLAG_REPLACE - + * fail if the attribute does not already exist + * + * If neither flag is specified, the specified attributes + * will be added or replace existing attributes of the same + * name, as necessary. + * + * @return 0 on success, < 0 on error with errno set: + * - EINVAL The client library is not properly initialized + * or one of the parameters is not of a correct + * form + * - ENOMEM No memory was available for internal needs + * - EEXIST If the attribute already exists and the flag + * SMBC_XATTR_FLAG_CREAT was specified + * - ENOATTR If the attribute does not exist and the flag + * SMBC_XATTR_FLAG_REPLACE was specified + * - EPERM Permission was denied. + * - ENOTSUP The referenced file system does not support + * extended attributes + * + * @note Attribute names are compared in a case-insensitive + * fashion. All of the following are equivalent, although + * the all-lower-case name is the preferred format: + * system.nt_sec_desc.owner + * SYSTEM.NT_SEC_DESC.OWNER + * sYsTeM.nt_sEc_desc.owNER + * + */ +int smbc_fsetxattr(int fd, + const char *name, + const void *value, + size_t size, + int flags); + + +/**@ingroup attribute + * Get extended attributes for a file. + * + * @param url The smb url of the file or directory to get extended + * attributes for. + * + * @param name The name of an attribute to be retrieved. Names are of + * one of the following forms: + * + * system.nt_sec_desc. + * system.nt_sec_desc.* + * system.nt_sec_desc.*+ + * + * where is one of: + * + * revision + * owner + * owner+ + * group + * group+ + * acl: + * acl+: + * + * In the forms "system.nt_sec_desc.*" and + * "system.nt_sec_desc.*+", the asterisk and plus signs are + * literal, i.e. the string is provided exactly as shown, and + * the value parameter will return a complete security + * descriptor with name:value pairs separated by tabs, + * commas, or newlines (not spaces!). + * + * The plus sign ('+') indicates that SIDs should be mapped + * to names. Without the plus sign, SIDs are not mapped; + * rather they are simply converted to a string format. + * + * @param value A pointer to a buffer in which the value of the specified + * attribute will be placed (unless size is zero). + * + * @param size The size of the buffer pointed to by value. This parameter + * may also be zero, in which case the size of the buffer + * required to hold the attribute value will be returned, + * but nothing will be placed into the value buffer. + * + * @return 0 on success, < 0 on error with errno set: + * - EINVAL The client library is not properly initialized + * or one of the parameters is not of a correct + * form + * - ENOMEM No memory was available for internal needs + * - EEXIST If the attribute already exists and the flag + * SMBC_XATTR_FLAG_CREAT was specified + * - ENOATTR If the attribute does not exist and the flag + * SMBC_XATTR_FLAG_REPLACE was specified + * - EPERM Permission was denied. + * - ENOTSUP The referenced file system does not support + * extended attributes + * + */ +int smbc_getxattr(const char *url, + const char *name, + const void *value, + size_t size); + + +/**@ingroup attribute + * Get extended attributes for a file. The POSIX function which this maps to + * would act on a symbolic link rather than acting on what the symbolic link + * points to, but with no symbolic links in SMB file systems, this function + * is functionally identical to smbc_getxattr(). + * + * @param url The smb url of the file or directory to get extended + * attributes for. + * + * @param name The name of an attribute to be retrieved. Names are of + * one of the following forms: + * + * system.nt_sec_desc. + * system.nt_sec_desc.* + * system.nt_sec_desc.*+ + * + * where is one of: + * + * revision + * owner + * owner+ + * group + * group+ + * acl: + * acl+: + * + * In the forms "system.nt_sec_desc.*" and + * "system.nt_sec_desc.*+", the asterisk and plus signs are + * literal, i.e. the string is provided exactly as shown, and + * the value parameter will return a complete security + * descriptor with name:value pairs separated by tabs, + * commas, or newlines (not spaces!). + * + * The plus sign ('+') indicates that SIDs should be mapped + * to names. Without the plus sign, SIDs are not mapped; + * rather they are simply converted to a string format. + * + * @param value A pointer to a buffer in which the value of the specified + * attribute will be placed (unless size is zero). + * + * @param size The size of the buffer pointed to by value. This parameter + * may also be zero, in which case the size of the buffer + * required to hold the attribute value will be returned, + * but nothing will be placed into the value buffer. + * + * @return 0 on success, < 0 on error with errno set: + * - EINVAL The client library is not properly initialized + * or one of the parameters is not of a correct + * form + * - ENOMEM No memory was available for internal needs + * - EEXIST If the attribute already exists and the flag + * SMBC_XATTR_FLAG_CREAT was specified + * - ENOATTR If the attribute does not exist and the flag + * SMBC_XATTR_FLAG_REPLACE was specified + * - EPERM Permission was denied. + * - ENOTSUP The referenced file system does not support + * extended attributes + * + */ +int smbc_lgetxattr(const char *url, + const char *name, + const void *value, + size_t size); + + +/**@ingroup attribute + * Get extended attributes for a file. + * + * @param fd A file descriptor associated with an open file (as + * previously returned by smbc_open(), to get extended + * attributes for. + * + * @param name The name of an attribute to be retrieved. Names are of + * one of the following forms: + * + * system.nt_sec_desc. + * system.nt_sec_desc.* + * system.nt_sec_desc.*+ + * + * where is one of: + * + * revision + * owner + * owner+ + * group + * group+ + * acl: + * acl+: + * + * In the forms "system.nt_sec_desc.*" and + * "system.nt_sec_desc.*+", the asterisk and plus signs are + * literal, i.e. the string is provided exactly as shown, and + * the value parameter will return a complete security + * descriptor with name:value pairs separated by tabs, + * commas, or newlines (not spaces!). + * + * The plus sign ('+') indicates that SIDs should be mapped + * to names. Without the plus sign, SIDs are not mapped; + * rather they are simply converted to a string format. + * + * @param value A pointer to a buffer in which the value of the specified + * attribute will be placed (unless size is zero). + * + * @param size The size of the buffer pointed to by value. This parameter + * may also be zero, in which case the size of the buffer + * required to hold the attribute value will be returned, + * but nothing will be placed into the value buffer. + * + * @return 0 on success, < 0 on error with errno set: + * - EINVAL The client library is not properly initialized + * or one of the parameters is not of a correct + * form + * - ENOMEM No memory was available for internal needs + * - EEXIST If the attribute already exists and the flag + * SMBC_XATTR_FLAG_CREAT was specified + * - ENOATTR If the attribute does not exist and the flag + * SMBC_XATTR_FLAG_REPLACE was specified + * - EPERM Permission was denied. + * - ENOTSUP The referenced file system does not support + * extended attributes + * + */ +int smbc_fgetxattr(int fd, + const char *name, + const void *value, + size_t size); + + +/**@ingroup attribute + * Remove extended attributes for a file. This is used for modifying a file's + * security descriptor (i.e. owner, group, and access control list) + * + * @param url The smb url of the file or directory to remove the extended + * attributes for. + * + * @param name The name of an attribute to be removed. Names are of + * one of the following forms: + * + * system.nt_sec_desc. + * system.nt_sec_desc.* + * system.nt_sec_desc.*+ + * + * where is one of: + * + * revision + * owner + * owner+ + * group + * group+ + * acl: + * acl+: + * + * In the forms "system.nt_sec_desc.*" and + * "system.nt_sec_desc.*+", the asterisk and plus signs are + * literal, i.e. the string is provided exactly as shown, and + * the value parameter will return a complete security + * descriptor with name:value pairs separated by tabs, + * commas, or newlines (not spaces!). + * + * The plus sign ('+') indicates that SIDs should be mapped + * to names. Without the plus sign, SIDs are not mapped; + * rather they are simply converted to a string format. + * + * @return 0 on success, < 0 on error with errno set: + * - EINVAL The client library is not properly initialized + * - ENOMEM No memory was available for internal needs + * - EPERM Permission was denied. + * - ENOTSUP The referenced file system does not support + * extended attributes + * + */ +int smbc_removexattr(const char *url, + const char *name); + + +/**@ingroup attribute + * Remove extended attributes for a file. This is used for modifying a file's + * security descriptor (i.e. owner, group, and access control list) The POSIX + * function which this maps to would act on a symbolic link rather than acting + * on what the symbolic link points to, but with no symbolic links in SMB file + * systems, this function is functionally identical to smbc_removexattr(). + * + * @param url The smb url of the file or directory to remove the extended + * attributes for. + * + * @param name The name of an attribute to be removed. Names are of + * one of the following forms: + * + * system.nt_sec_desc. + * system.nt_sec_desc.* + * system.nt_sec_desc.*+ + * + * where is one of: + * + * revision + * owner + * owner+ + * group + * group+ + * acl: + * acl+: + * + * In the forms "system.nt_sec_desc.*" and + * "system.nt_sec_desc.*+", the asterisk and plus signs are + * literal, i.e. the string is provided exactly as shown, and + * the value parameter will return a complete security + * descriptor with name:value pairs separated by tabs, + * commas, or newlines (not spaces!). + * + * The plus sign ('+') indicates that SIDs should be mapped + * to names. Without the plus sign, SIDs are not mapped; + * rather they are simply converted to a string format. + * + * @return 0 on success, < 0 on error with errno set: + * - EINVAL The client library is not properly initialized + * - ENOMEM No memory was available for internal needs + * - EPERM Permission was denied. + * - ENOTSUP The referenced file system does not support + * extended attributes + * + */ +int smbc_lremovexattr(const char *url, + const char *name); + + +/**@ingroup attribute + * Remove extended attributes for a file. This is used for modifying a file's + * security descriptor (i.e. owner, group, and access control list) + * + * @param fd A file descriptor associated with an open file (as + * previously returned by smbc_open(), to get extended + * attributes for. + * + * @param name The name of an attribute to be removed. Names are of + * one of the following forms: + * + * system.nt_sec_desc. + * system.nt_sec_desc.* + * system.nt_sec_desc.*+ + * + * where is one of: + * + * revision + * owner + * owner+ + * group + * group+ + * acl: + * acl+: + * + * In the forms "system.nt_sec_desc.*" and + * "system.nt_sec_desc.*+", the asterisk and plus signs are + * literal, i.e. the string is provided exactly as shown, and + * the value parameter will return a complete security + * descriptor with name:value pairs separated by tabs, + * commas, or newlines (not spaces!). + * + * The plus sign ('+') indicates that SIDs should be mapped + * to names. Without the plus sign, SIDs are not mapped; + * rather they are simply converted to a string format. + * + * @return 0 on success, < 0 on error with errno set: + * - EINVAL The client library is not properly initialized + * - ENOMEM No memory was available for internal needs + * - EPERM Permission was denied. + * - ENOTSUP The referenced file system does not support + * extended attributes + * + */ +int smbc_fremovexattr(int fd, + const char *name); + + +/**@ingroup attribute + * List the supported extended attribute names associated with a file + * + * @param url The smb url of the file or directory to list the extended + * attributes for. + * + * @param list A pointer to a buffer in which the list of attributes for + * the specified file or directory will be placed (unless + * size is zero). + * + * @param size The size of the buffer pointed to by list. This parameter + * may also be zero, in which case the size of the buffer + * required to hold all of the attribute names will be + * returned, but nothing will be placed into the list buffer. + * + * @return 0 on success, < 0 on error with errno set: + * - EINVAL The client library is not properly initialized + * - ENOMEM No memory was available for internal needs + * - EPERM Permission was denied. + * - ENOTSUP The referenced file system does not support + * extended attributes + * + * @note This function always returns all attribute names supported + * by NT file systems, regardless of whether the referenced + * file system supports extended attributes (e.g. a Windows + * 2000 machine supports extended attributes if NTFS is used, + * but not if FAT is used, and Windows 98 doesn't support + * extended attributes at all. Whether this is a feature or + * a bug is yet to be decided. + */ +int smbc_listxattr(const char *url, + char *list, + size_t size); + +/**@ingroup attribute + * List the supported extended attribute names associated with a file The + * POSIX function which this maps to would act on a symbolic link rather than + * acting on what the symbolic link points to, but with no symbolic links in + * SMB file systems, this function is functionally identical to + * smbc_listxattr(). + * + * @param url The smb url of the file or directory to list the extended + * attributes for. + * + * @param list A pointer to a buffer in which the list of attributes for + * the specified file or directory will be placed (unless + * size is zero). + * + * @param size The size of the buffer pointed to by list. This parameter + * may also be zero, in which case the size of the buffer + * required to hold all of the attribute names will be + * returned, but nothing will be placed into the list buffer. + * + * @return 0 on success, < 0 on error with errno set: + * - EINVAL The client library is not properly initialized + * - ENOMEM No memory was available for internal needs + * - EPERM Permission was denied. + * - ENOTSUP The referenced file system does not support + * extended attributes + * + * @note This function always returns all attribute names supported + * by NT file systems, regardless of wether the referenced + * file system supports extended attributes (e.g. a Windows + * 2000 machine supports extended attributes if NTFS is used, + * but not if FAT is used, and Windows 98 doesn't support + * extended attributes at all. Whether this is a feature or + * a bug is yet to be decided. + */ +int smbc_llistxattr(const char *url, + char *list, + size_t size); + +/**@ingroup attribute + * List the supported extended attribute names associated with a file + * + * @param fd A file descriptor associated with an open file (as + * previously returned by smbc_open(), to get extended + * attributes for. + * + * @param list A pointer to a buffer in which the list of attributes for + * the specified file or directory will be placed (unless + * size is zero). + * + * @param size The size of the buffer pointed to by list. This parameter + * may also be zero, in which case the size of the buffer + * required to hold all of the attribute names will be + * returned, but nothing will be placed into the list buffer. + * + * @return 0 on success, < 0 on error with errno set: + * - EINVAL The client library is not properly initialized + * - ENOMEM No memory was available for internal needs + * - EPERM Permission was denied. + * - ENOTSUP The referenced file system does not support + * extended attributes + * + * @note This function always returns all attribute names supported + * by NT file systems, regardless of wether the referenced + * file system supports extended attributes (e.g. a Windows + * 2000 machine supports extended attributes if NTFS is used, + * but not if FAT is used, and Windows 98 doesn't support + * extended attributes at all. Whether this is a feature or + * a bug is yet to be decided. + */ +int smbc_flistxattr(int fd, + char *list, + size_t size); + +/**@ingroup print + * Print a file given the name in fname. It would be a URL ... + * + * @param fname The URL of a file on a remote SMB server that the + * caller wants printed + * + * @param printq The URL of the print share to print the file to. + * + * @return 0 on success, < 0 on error with errno set: + * + * - EINVAL fname or printq was NULL or smbc_init not + * not called. + * and errors returned by smbc_open + * + */ +int smbc_print_file(const char *fname, const char *printq); + +/**@ingroup print + * Open a print file that can be written to by other calls. This simply + * does an smbc_open call after checking if there is a file name on the + * URI. If not, a temporary name is added ... + * + * @param fname The URL of the print share to print to? + * + * @returns A file handle for the print file if successful. + * Returns -1 if an error ocurred and errno has the values + * - EINVAL fname was NULL or smbc_init not called. + * - all errors returned by smbc_open + * + */ +int smbc_open_print_job(const char *fname); + +/**@ingroup print + * List the print jobs on a print share, for the moment, pass a callback + * + * @param purl The url of the print share to list the jobs of + * + * @param fn Callback function the receives printjob info + * + * @return 0 on success, < 0 on error with errno set: + * - EINVAL fname was NULL or smbc_init not called + * - EACCES ??? + */ +int smbc_list_print_jobs(const char *purl, smbc_list_print_job_fn fn); + +/**@ingroup print + * Delete a print job + * + * @param purl Url of the print share + * + * @param id The id of the job to delete + * + * @return 0 on success, < 0 on error with errno set: + * - EINVAL fname was NULL or smbc_init not called + * + * @todo what errno values are possible here? + */ +int smbc_unlink_print_job(const char *purl, int id); + +/**@ingroup callback + * Remove a server from the cached server list it's unused. + * + * @param context pointer to smb context + * + * @param srv pointer to server to remove + * + * @return On success, 0 is returned. 1 is returned if the server could not + * be removed. Also useable outside libsmbclient. + */ +int smbc_remove_unused_server(SMBCCTX * context, SMBCSRV * srv); + +int smbc_parse_path(const char *purl, char *pWorkgroup, char *pServer, char *pShare, char *pPath); +int smbc_check_connectivity(char *puri); +int smbc_server_check_creds( + const char *server, + const char *share, + char *workgroup, + char *username, + char *password); +#ifdef __cplusplus +} +#endif + +/**@ingroup directory + * Convert strings of %xx to their single character equivalent. + * + * @param dest A pointer to a buffer in which the resulting decoded + * string should be placed. This may be a pointer to the + * same buffer as src_segment. + * + * @param src A pointer to the buffer containing the URL to be decoded. + * Any %xx sequences herein are converted to their single + * character equivalent. Each 'x' must be a valid hexadecimal + * digit, or that % sequence is left undecoded. + * + * @param max_dest_len + * The size of the buffer pointed to by dest_segment. + * + * @return The number of % sequences which could not be converted + * due to lack of two following hexadecimal digits. + */ +#ifdef __cplusplus +extern "C" { +#endif +int +smbc_urldecode(char *dest, char * src, size_t max_dest_len); +#ifdef __cplusplus +} +#endif + + +/* + * Convert any characters not specifically allowed in a URL into their %xx + * equivalent. + * + * @param dest A pointer to a buffer in which the resulting encoded + * string should be placed. Unlike smbc_urldecode(), this + * must be a buffer unique from src. + * + * @param src A pointer to the buffer containing the string to be encoded. + * Any character not specifically allowed in a URL is converted + * into its hexadecimal value and encoded as %xx. + * + * @param max_dest_len + * The size of the buffer pointed to by dest_segment. + * + * @returns The remaining buffer length. + */ +#ifdef __cplusplus +extern "C" { +#endif +int +smbc_urlencode(char * dest, char * src, int max_dest_len); +#ifdef __cplusplus +} +#endif + + +/**@ingroup directory + * Return the version of the linked Samba code, and thus the version of the + * libsmbclient code. + * + * @return The version string. + */ +#ifdef __cplusplus +extern "C" { +#endif +const char * +smbc_version(void); +#ifdef __cplusplus +} +#endif + +/**@ingroup misc + * Set the users credentials globally so they can be used for DFS + * referrals. Probably best to use this function in the smbc_get_auth_data_fn + * callback. + * + * @param workgroup Workgroup of the user. + * + * @param user Username of user. + * + * @param password Password of user. + * + * @param use_kerberos Whether to use Kerberos + * + * @param signing_state One of these strings (all equivalents on same line): + * "off", "no", "false" + * "on", "yes", "true", "auto" + * "force", "required", "forced" + */ + +void +smbc_set_credentials(const char *workgroup, + const char *user, + const char *password, + smbc_bool use_kerberos, + const char *signing_state); + +/* + * Wrapper around smbc_set_credentials. + * Used to set correct credentials that will + * be used to connect to DFS target share + * in libsmbclient + */ + +void +smbc_set_credentials_with_fallback(SMBCCTX *ctx, + const char *workgroup, + const char *user, + const char *password); + + +/** + * @ingroup threads + * + * Initialize for threads using the Posix Threads (pthread) + * implementation. This is a built-in implementation, avoiding the need to + * implement the component functions of the thread interface. If this function + * is used, it is not necessary to call smbc_thread_impl(). + * + * @return {void} + */ +void +smbc_thread_posix(void); + +/** + * @ingroup threads + * + * Initialize for an arbitrary thread implementation. The caller should + * provide, as parameters, pointers to functions to implement the requisite + * low-level thread functionality. A function must be provided for each + * parameter; none may be null. + * + * If the thread implementation is POSIX Threads (pthreads), then the much + * simpler smbc_thread_pthread() function may be used instead of this one. + * + * @param create_mutex + * Create a mutex. This function should expect three parameters: lockname, + * pplock, and location. It should create a unique mutex for each unique + * lockname it is provided, and return the mutex identifier in *pplock. The + * location parameter can be used for debugging, as it contains the + * compiler-provided __location__ of the call. + * + * @param destroy_mutex + * Destroy a mutex. This function should expect two parameters: plock and + * location. It should destroy the mutex associated with the identifier + * plock. The location parameter can be used for debugging, as it contains + * the compiler-provided __location__ of the call. + * + * @param lock_mutex + * Lock a mutex. This function should expect three parameters: plock, + * lock_type, and location. The mutex aassociated with identifier plock + * should be locked if lock_type is 1, and unlocked if lock_type is 2. The + * location parameter can be used for debugging, as it contains the + * compiler-provided __location__ of the call. + * + * @param create_tls + * Create thread local storage. This function should expect three + * parameters: keyname, ppkey, and location. It should allocate an + * implementation-specific amount of memory and assign the pointer to that + * allocated memory to *ppkey. The location parameter can be used for + * debugging, as it contains the compiler-provided __location__ of the + * call. This function should return 0 upon success, non-zero upon failure. + * + * @param destroy_tls + * Destroy thread local storage. This function should expect two parameters: + * ppkey and location. The ppkey parameter points to a variable containing a + * thread local storage key previously provided by the create_tls + * function. The location parameter can be used for debugging, as it + * contains the compiler-provided __location__ of the call. + * + * @param set_tls + * Set a thread local storage variable's value. This function should expect + * three parameters: pkey, pval, and location. The pkey parameter is a + * thread local storage key previously provided by the create_tls + * function. The (void *) pval parameter contains the value to be placed in + * the thread local storage variable identified by pkey. The location + * parameter can be used for debugging, as it contains the compiler-provided + * __location__ of the call. This function should return 0 upon success; + * non-zero otherwise. + * + * @param get_tls + * Retrieve a thread local storage variable's value. This function should + * expect two parameters: pkey and location. The pkey parameter is a thread + * local storage key previously provided by the create_tls function, and + * which has previously been used in a call to the set_tls function to + * initialize a thread local storage variable. The location parameter can be + * used for debugging, as it contains the compiler-provided __location__ of + * the call. This function should return the (void *) value stored in the + * variable identified by pkey. + * + * @return {void} + */ +void +smbc_thread_impl( + /* Mutex functions. */ + int (*create_mutex)(const char *lockname, + void **pplock, + const char *location), + void (*destroy_mutex)(void *plock, + const char *location), + int (*lock_mutex)(void *plock, + int lock_type, + const char *location), + + /* Thread local storage. */ + int (*create_tls)(const char *keyname, + void **ppkey, + const char *location), + void (*destroy_tls)(void **ppkey, + const char *location), + int (*set_tls)(void *pkey, + const void *pval, + const char *location), + void *(*get_tls)(void *pkey, + const char *location) + ); + + + +/** + * @ingroup structure + * Structure that contains a client context information + * This structure is known as SMBCCTX + * + * DO NOT DIRECTLY MANIPULATE THE CONTEXT STRUCTURE! The data in the context + * structure should all be considered private to the library. It remains here + * only for backward compatibility. + * + * See the comments herein for use of the setter and getter functions which + * should now be used for manipulating these values. New features, functions, + * etc., are not added here but rather in _internal where they are not + * directly visible to applications. This makes it much easier to maintain + * ABI compatibility. + */ +struct _SMBCCTX +{ + /** + * debug level + * + * DEPRECATED: + * Use smbc_getDebug() and smbc_setDebug() + */ + int debug DEPRECATED_SMBC_INTERFACE; + + /** + * netbios name used for making connections + * + * DEPRECATED: + * Use smbc_getNetbiosName() and smbc_setNetbiosName() + */ + char * netbios_name DEPRECATED_SMBC_INTERFACE; + + /** + * workgroup name used for making connections + * + * DEPRECATED: + * Use smbc_getWorkgroup() and smbc_setWorkgroup() + */ + char * workgroup DEPRECATED_SMBC_INTERFACE; + + /** + * username used for making connections + * + * DEPRECATED: + * Use smbc_getUser() and smbc_setUser() + */ + char * user DEPRECATED_SMBC_INTERFACE; + + /** + * timeout used for waiting on connections / response data (in + * milliseconds) + * + * DEPRECATED: + * Use smbc_getTimeout() and smbc_setTimeout() + */ + int timeout DEPRECATED_SMBC_INTERFACE; + + /** + * callable functions for files: + * For usage and return values see the SMBC_* functions + * + * DEPRECATED: + * + * Use smbc_getFunction*() and smbc_setFunction*(), e.g. + * smbc_getFunctionOpen(), smbc_setFunctionUnlink(), etc. + */ + smbc_open_fn open DEPRECATED_SMBC_INTERFACE; + smbc_creat_fn creat DEPRECATED_SMBC_INTERFACE; + smbc_read_fn read DEPRECATED_SMBC_INTERFACE; + smbc_write_fn write DEPRECATED_SMBC_INTERFACE; + smbc_unlink_fn unlink DEPRECATED_SMBC_INTERFACE; + smbc_rename_fn rename DEPRECATED_SMBC_INTERFACE; + smbc_lseek_fn lseek DEPRECATED_SMBC_INTERFACE; + smbc_stat_fn stat DEPRECATED_SMBC_INTERFACE; + smbc_fstat_fn fstat DEPRECATED_SMBC_INTERFACE; +#if 0 /* internal */ + smbc_ftruncate_fn ftruncate_fn; +#endif + smbc_close_fn close_fn DEPRECATED_SMBC_INTERFACE; + smbc_opendir_fn opendir DEPRECATED_SMBC_INTERFACE; + smbc_closedir_fn closedir DEPRECATED_SMBC_INTERFACE; + smbc_readdir_fn readdir DEPRECATED_SMBC_INTERFACE; + smbc_getdents_fn getdents DEPRECATED_SMBC_INTERFACE; + smbc_mkdir_fn mkdir DEPRECATED_SMBC_INTERFACE; + smbc_rmdir_fn rmdir DEPRECATED_SMBC_INTERFACE; + smbc_telldir_fn telldir DEPRECATED_SMBC_INTERFACE; + smbc_lseekdir_fn lseekdir DEPRECATED_SMBC_INTERFACE; + smbc_fstatdir_fn fstatdir DEPRECATED_SMBC_INTERFACE; + smbc_chmod_fn chmod DEPRECATED_SMBC_INTERFACE; + smbc_utimes_fn utimes DEPRECATED_SMBC_INTERFACE; + smbc_setxattr_fn setxattr DEPRECATED_SMBC_INTERFACE; + smbc_getxattr_fn getxattr DEPRECATED_SMBC_INTERFACE; + smbc_removexattr_fn removexattr DEPRECATED_SMBC_INTERFACE; + smbc_listxattr_fn listxattr DEPRECATED_SMBC_INTERFACE; + + /* Printing-related functions */ + smbc_print_file_fn print_file DEPRECATED_SMBC_INTERFACE; + smbc_open_print_job_fn open_print_job DEPRECATED_SMBC_INTERFACE; + smbc_list_print_jobs_fn list_print_jobs DEPRECATED_SMBC_INTERFACE; + smbc_unlink_print_job_fn unlink_print_job DEPRECATED_SMBC_INTERFACE; + + /* + ** Callbacks + * + * DEPRECATED: + * + * See the comment above each field, for the getter and setter + * functions that should now be used. + */ + struct _smbc_callbacks + { + /** + * authentication function callback: called upon auth requests + * + * DEPRECATED: + * Use smbc_getFunctionAuthData(), smbc_setFunctionAuthData() + */ + smbc_get_auth_data_fn auth_fn DEPRECATED_SMBC_INTERFACE; + + /** + * check if a server is still good + * + * DEPRECATED: + * Use smbc_getFunctionCheckServer(), + * smbc_setFunctionCheckServer() + */ + smbc_check_server_fn check_server_fn DEPRECATED_SMBC_INTERFACE; + + /** + * remove a server if unused + * + * DEPRECATED: + * Use smbc_getFunctionRemoveUnusedServer(), + * smbc_setFunctionCheckServer() + */ + smbc_remove_unused_server_fn remove_unused_server_fn DEPRECATED_SMBC_INTERFACE; + + /** Cache subsystem + * + * For an example cache system see + * samba/source/libsmb/libsmb_cache.c + * + * Cache subsystem * functions follow. + */ + + /** + * server cache addition + * + * DEPRECATED: + * Use smbc_getFunctionAddCachedServer(), + * smbc_setFunctionAddCachedServer() + */ + smbc_add_cached_srv_fn add_cached_srv_fn DEPRECATED_SMBC_INTERFACE; + + /** + * server cache lookup + * + * DEPRECATED: + * Use smbc_getFunctionGetCachedServer(), + * smbc_setFunctionGetCachedServer() + */ + smbc_get_cached_srv_fn get_cached_srv_fn DEPRECATED_SMBC_INTERFACE; + + /** + * server cache removal + * + * DEPRECATED: + * Use smbc_getFunctionRemoveCachedServer(), + * smbc_setFunctionRemoveCachedServer() + */ + smbc_remove_cached_srv_fn remove_cached_srv_fn DEPRECATED_SMBC_INTERFACE; + + /** + * server cache purging, try to remove all cached servers + * (disconnect) + * + * DEPRECATED: + * Use smbc_getFunctionPurgeCachedServers(), + * smbc_setFunctionPurgeCachedServers() + */ + smbc_purge_cached_fn purge_cached_fn DEPRECATED_SMBC_INTERFACE; + } callbacks; + + /** + * Space where the private data of the server cache used to be + * + * DEPRECATED: + * Use smbc_getServerCacheData(), smbc_setServerCacheData() + */ + void * reserved DEPRECATED_SMBC_INTERFACE; + + /* + * Very old configuration options. + * + * DEPRECATED: + * Use one of the following functions instead: + * smbc_setOptionUseKerberos() + * smbc_getOptionUseKerberos() + * smbc_setOptionFallbackAfterKerberos() + * smbc_getOptionFallbackAfterKerberos() + * smbc_setOptionNoAutoAnonymousLogin() + * smbc_getOptionNoAutoAnonymousLogin() + */ + int flags DEPRECATED_SMBC_INTERFACE; + + /** + * user options selections that apply to this session + * + * NEW OPTIONS ARE NOT ADDED HERE! + * + * DEPRECATED: + * To set and retrieve options, use the smbc_setOption*() and + * smbc_getOption*() functions. + */ + struct _smbc_options { + int browse_max_lmb_count DEPRECATED_SMBC_INTERFACE; + int urlencode_readdir_entries DEPRECATED_SMBC_INTERFACE; + int one_share_per_server DEPRECATED_SMBC_INTERFACE; + } options DEPRECATED_SMBC_INTERFACE; + + /** INTERNAL DATA + * do _NOT_ touch this from your program ! + */ + struct SMBC_internal_data * internal; +}; + +#if 1 +/*============================================================*/ +//#ifdef LIGHTTPD_INCLUDE +//#ifdef HAVE_LIBSMBCLIENT_H +#if defined(LIGHTTPD_INCLUDE)||defined(HAVE_LIBSMBCLIENT_H) + +#define HAVE_IMMEDIATE_STRUCTURES +#if defined(HAVE_IMMEDIATE_STRUCTURES) +typedef struct {uint32_t v;} NTSTATUS; +#define NT_STATUS(x) ((NTSTATUS) { x }) +#define NT_STATUS_V(x) ((x).v) +#else +typedef uint32_t NTSTATUS; +#define NT_STATUS(x) (x) +#define NT_STATUS_V(x) (x) +#endif + +#define NT_STATUS_OK NT_STATUS(0x0000) +#define NT_STATUS_ACCESS_DENIED NT_STATUS(0xC0000000 | 0x0022) +#define NT_STATUS_LOGON_FAILURE NT_STATUS(0xC0000000 | 0x006d) +#endif + +typedef struct smb_file_s { + int fnum; + int offset; + int whence; + char *fname; +}smb_file_t; + + +#ifdef __cplusplus +extern "C" { +#endif +struct cli_state *smbc_cli_initialize(); +uint32_t smbc_cli_connect(struct cli_state *cli, const char *desthost, int port); +void smbc_cli_shutdown(struct cli_state *cli); +int smbc_cli_get_smb_secblob(struct cli_state *cli, unsigned char *blob); +uint32_t smbc_cli_get_smb_challenge(struct cli_state *cli, char *blob); +uint32_t smbc_cli_send_negprot(struct cli_state *cli); +uint32_t smbc_cli_send_negprot_done(struct cli_state *cli); +int smbc_cli_get_protocol(struct cli_state *cli); +int smbc_cli_get_socket(struct cli_state *cli); +uint32_t smbc_cli_get_capabilities(struct cli_state *cli); +uint32_t smbc_cli_tree_connect(struct cli_state *cli, char *fname); +int smbc_cli_parse_path(const char *fname, + char *pWorkgroup, + char *pServer, + char *pShare, + char *pPath); +int smbc_cli_stat(struct cli_state *cli, const char *fname, struct stat *st); +SMBCFILE *smbc_cli_opendir2(const char *fname); +SMBCFILE *smbc_cli_opendir(struct cli_state *cli, const char *fname); +SMBCFILE *smbc_cli_open_share(struct cli_state *cli, const char *fname); +uint32_t smbc_cli_rmdir(struct cli_state *cli, const char *dname); +uint32_t smbc_cli_mkdir(struct cli_state *cli, const char *fname); +uint32_t smbc_cli_rename(struct cli_state *cli, char *src, char *dst); +struct smbc_dirent *smbc_cli_readdir(SMBCFILE *dir); +int smbc_cli_closedir(SMBCFILE *dir); +int smbc_cli_list(struct cli_state *cli,const char *mask, unsigned short attribute, + void (*fn)(const char *, file_info *, const char *, void *), void *state); +void* smbc_cli_ntlmssp_state_alloc(); +void smbc_cli_ntlmssp_state_free(void *state); +int smbc_cli_send_session_setup_nego(struct cli_state *cli, void *state, char *ntlm_msg, int ntlm_len); +uint32_t smbc_cli_session_setup_ntlmssp_nego(struct cli_state *cli, void *state, char *ntlm_msg, int ntlm_msg_len); +uint32_t smbc_cli_session_setup_ntlmssp_auth(struct cli_state *cli, void *state, char *ntlm_msg, int ntlm_msg_len); +uint32_t smbc_cli_session_setup_lanman2(struct cli_state *cli, char *ntlm_msg, int ntlm_msg_len); +smb_file_t *smbc_cli_ntcreate(struct cli_state *cli, char *fname, + uint32_t desired_access, + uint32_t create_disposition, + uint32_t create_options); + +uint32_t smbc_cli_get(struct cli_state *cli, char *pathname, + NTSTATUS (*sink)(char *buf, size_t n, void *priv), + void *priv); +uint32_t smbc_cli_put(struct cli_state *cli, char *rname, int reput, + size_t (*push_source)(uint8_t *buf, size_t n, void *priv), + void *priv); +smb_file_t* smbc_cli_open(struct cli_state *cli, char *rname, int flags); +uint32_t smbc_cli_lseek(struct cli_state *cli, smb_file_t *smbf, off_t offset, int whence); +size_t smbc_cli_write(struct cli_state *cli, smb_file_t *smbf, uint16_t write_mode, const char *buf, size_t size); +size_t smbc_cli_read(struct cli_state *cli, smb_file_t *smbf, char *buf, size_t size); +uint32_t smbc_cli_close(struct cli_state *cli, smb_file_t *smbf); +uint32_t smbc_cli_unlink(struct cli_state *cli, const char *fname, uint16_t mayhave_attrs); +void *smbc_cli_nmb_lookup( void *priv ); +void smbc_cli_nmb_terminate(int term); + +//- Jerry add +const char* smbc_nmblookup(const char* ip); +#ifdef __cplusplus +} +#endif + + +#endif //#if 0 + +#endif /* SMBCLIENT_H_INCLUDED */ diff --git a/release/src-rt/include/linux_osl.h b/release/src-rt/include/linux_osl.h old mode 100644 new mode 100755 index f3d887ecff..b4ec0742a8 --- a/release/src-rt/include/linux_osl.h +++ b/release/src-rt/include/linux_osl.h @@ -163,8 +163,6 @@ extern void osl_dma_free_consistent(osl_t *osh, void *va, uint size, ulong pa); #define DMA_RX 2 /* RX direction for DMA */ /* map/unmap shared (dma-able) memory */ -#define DMA_MAP(osh, va, size, direction, p, dmah) \ - osl_dma_map((osh), (va), (size), (direction)) #define DMA_UNMAP(osh, pa, size, direction, p, dmah) \ osl_dma_unmap((osh), (pa), (size), (direction)) extern uint osl_dma_map(osl_t *osh, void *va, uint size, int direction); @@ -207,10 +205,7 @@ extern int osl_error(int bcmerror); #include /* for mem*, str* */ #define OSL_SYSUPTIME() ((uint32)jiffies * (1000 / HZ)) - -#ifndef printf #define printf(fmt, args...) printk(fmt , ## args) -#endif /* bcopy's: Linux kernel doesn't provide these (anymore) */ #define bcopy(src, dst, len) memcpy((dst), (src), (len)) @@ -436,7 +431,7 @@ typedef struct ctfpool { #define PKTCLRCTF(osh, skb) ((((struct sk_buff*)(skb))->ctf_mac_len) &= (~CTFBUF)) #define PKTISFAST(osh, skb) ((((struct sk_buff*)(skb))->ctf_mac_len) & FASTBUF) #define PKTISCTF(osh, skb) ((((struct sk_buff*)(skb))->ctf_mac_len) & CTFBUF) -#define PKTFAST(osh, skb) (((struct sk_buff*)(skb))->ctf_mac_len) +#define PKTFAST(osh, skb) (((struct sk_buff*)(skb))->ctf_mac_len) #else #define FASTBUF (1 << 0) #define CTFBUF (1 << 1) @@ -459,6 +454,31 @@ extern void osl_ctfpool_cleanup(osl_t *osh); extern void osl_ctfpool_stats(osl_t *osh, void *b); #endif /* CTFPOOL */ +#ifdef CTFMAP +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 14) +#define CTFMAPPTR(osh, skb) (((struct sk_buff*)(skb))->sp) +#else /* 2.6.14 */ +#define CTFMAPPTR(osh, skb) (((struct sk_buff*)(skb))->list) +#endif /* 2.6.14 */ + +#define PKTCTFMAP(osh, p) \ +do { \ + if (PKTISCTF(osh, p)) { \ + int32 sz; \ + sz = (uint32)(((struct sk_buff *)p)->end) - \ + (uint32)CTFMAPPTR(osh, p); \ + /* map the remaining unmapped area */ \ + if (sz > 0) { \ + _DMA_MAP(osh, (void *)CTFMAPPTR(osh, p), \ + sz, DMA_RX, p, NULL); \ + } \ + /* clear ctf buf flag */ \ + PKTCLRCTF(osh, p); \ + CTFMAPPTR(osh, p) = NULL; \ + } \ +} while (0) +#endif /* CTFMAP */ + #ifdef HNDCTF #if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 22) #define SKIPCT (1 << 6) @@ -793,6 +813,25 @@ extern void osl_pktlist_remove(osl_t *osh, void *p); #endif /* BINOSL */ +#ifdef CTFMAP +#include +#define CTFMAPSZ 320 +#define DMA_MAP(osh, va, size, direction, p, dmah) \ +({ \ + typeof(size) sz = (size); \ + if (PKTISCTF((osh), (p))) { \ + sz = CTFMAPSZ; \ + CTFMAPPTR((osh), (p)) = (void *)(((uint8 *)(va)) + CTFMAPSZ); \ + } \ + osl_dma_map((osh), (va), sz, (direction)); \ +}) +#define _DMA_MAP(osh, va, size, direction, p, dmah) \ + dma_cache_inv((uint)(va), (size)) +#else /* CTFMAP */ +#define DMA_MAP(osh, va, size, direction, p, dmah) \ + osl_dma_map((osh), (va), (size), (direction)) +#endif /* CTFMAP */ + #else /* ! BCMDRIVER */ diff --git a/release/src-rt/include/proto/802.11.h b/release/src-rt/include/proto/802.11.h index 813dcd8396..317e370ea9 100644 --- a/release/src-rt/include/proto/802.11.h +++ b/release/src-rt/include/proto/802.11.h @@ -443,10 +443,14 @@ typedef struct dot11_obss_chanlist dot11_obss_chanlist_t; BWL_PRE_PACKED_STRUCT struct dot11_extcap_ie { uint8 id; uint8 len; - uint8 cap; + uint8 cap[1]; } BWL_POST_PACKED_STRUCT; typedef struct dot11_extcap_ie dot11_extcap_ie_t; -#define DOT11_EXTCAP_LEN 1 + +#define DOT11_EXTCAP_LEN_MAX 5 +#define DOT11_EXTCAP_LEN_COEX 1 +#define DOT11_EXTCAP_LEN_BT 4 +#define DOT11_EXTCAP_LEN_IW 4 /* 802.11h/802.11k Measurement Request/Report IEs */ /* Measurement Type field */ @@ -1104,10 +1108,23 @@ BWL_PRE_PACKED_STRUCT struct dot11_management_notification { #define DOT11_MNG_EXT_CHANNEL_OFFSET 62 /* d11 mgmt ext channel offset */ +#define DOT11_MNG_TIME_ADVERTISE_ID 69 /* 11p time advertisement */ #define DOT11_MNG_RRM_CAP_ID 70 /* 11k radio measurement capability */ #define DOT11_MNG_HT_BSS_COEXINFO_ID 72 /* d11 mgmt OBSS Coexistence INFO */ #define DOT11_MNG_HT_BSS_CHANNEL_REPORT_ID 73 /* d11 mgmt OBSS Intolerant Channel list */ #define DOT11_MNG_HT_OBSS_ID 74 /* d11 mgmt OBSS HT info */ +#define DOT11_MNG_TIME_ZONE_ID 98 /* 11v time zone */ +#define DOT11_MNG_LINK_IDENTIFIER_ID 101 /* 11z TDLS Link Identifier IE */ +#define DOT11_MNG_WAKEUP_SCHEDULE_ID 102 /* 11z TDLS Wakeup Schedule IE */ +#define DOT11_MNG_CHANNEL_SWITCH_TIMING_ID 104 /* 11z TDLS Channel Switch Timing IE */ +#define DOT11_MNG_PTI_CONTROL_ID 105 /* 11z TDLS PTI Control IE */ +#define DOT11_MNG_PU_BUFFER_STATUS_ID 106 /* 11z TDLS PU Buffer Status IE */ +#define DOT11_MNG_INTERWORKING_ID 107 /* 11u interworking */ +#define DOT11_MNG_ADVERTISEMENT_ID 108 /* 11u advertisement protocol */ +#define DOT11_MNG_EXP_BW_REQ_ID 109 /* 11u expedited bandwith request */ +#define DOT11_MNG_QOS_MAP_ID 110 /* 11u QoS map set */ +#define DOT11_MNG_ROAM_CONSORT_ID 111 /* 11u roaming consortium */ +#define DOT11_MNG_EMERGCY_ALERT_ID 112 /* 11u emergency alert identifier */ #define DOT11_MNG_EXT_CAP_ID 127 /* d11 mgmt ext capability */ #define DOT11_MNG_WPA_ID 221 /* d11 management WPA id */ #define DOT11_MNG_PROPR_ID 221 /* d11 management proprietary id */ @@ -1147,8 +1164,13 @@ BWL_PRE_PACKED_STRUCT struct dot11_management_notification { #define DOT11_CAP_RRM 0x1000 /* d11 cap. 11k radio measurement */ #define DOT11_CAP_CCK_OFDM 0x2000 /* d11 cap. CCK/OFDM */ -/* Extended Capability Information Field */ -#define DOT11_OBSS_COEX_MNG_SUPPORT 0x01 /* 20/40 BSS Coexistence Management support */ +/* Extended capabilities IE bitfields */ +/* 20/40 BSS Coexistence Management support bit position */ +#define DOT11_EXT_CAP_OBSS_COEX_MGMT 0 +/* BSS Transition Management support bit position */ +#define DOT11_EXT_CAP_BSS_TRANSITION_MGMT 19 +/* Interworking support bit position */ +#define DOT11_EXT_CAP_IW 31 /* * Action Frame Constants @@ -1417,17 +1439,6 @@ typedef struct dot11_rrm_cap_ie dot11_rrm_cap_ie_t; #define DOT11_RRM_CAP_AP_CHANREP 16 -/* Extended capabilities IE */ - -#define DOT11_EXT_CAP_LEN 4 /* length of ext cap bitmap */ -BWL_PRE_PACKED_STRUCT struct dot11_ext_cap_ie { - uint8 cap[DOT11_EXT_CAP_LEN]; -} BWL_POST_PACKED_STRUCT; -typedef struct dot11_ext_cap_ie dot11_ext_cap_ie_t; - -/* Extended capabilities IE bitfields */ -#define DOT11_EXT_CAP_BSS_TRANSITION_MGMT 19 - /* Operating Class (formerly "Regulatory Class") definitions */ #define DOT11_OP_CLASS_NONE 255 diff --git a/release/src-rt/include/proto/bcmip.h b/release/src-rt/include/proto/bcmip.h old mode 100644 new mode 100755 index 6ebbcacf52..2da19c52b6 --- a/release/src-rt/include/proto/bcmip.h +++ b/release/src-rt/include/proto/bcmip.h @@ -42,6 +42,7 @@ #define IP_PROT_ICMP 0x1 /* ICMP protocol */ #define IP_PROT_TCP 0x6 /* TCP protocol */ #define IP_PROT_UDP 0x11 /* UDP protocol type */ +#define IP_PROT_IGMP 0x02 /* IGMP protocol */ /* IPV4 field offsets */ #define IPV4_VER_HL_OFFSET 0 /* version and ihl byte offset */ diff --git a/release/src-rt/include/sbchipc.h b/release/src-rt/include/sbchipc.h old mode 100644 new mode 100755 index dff21be65c..c05880582c --- a/release/src-rt/include/sbchipc.h +++ b/release/src-rt/include/sbchipc.h @@ -1213,10 +1213,10 @@ typedef volatile struct { /* 4706 PMU */ #define PMU4706_MAINPLL_PLL0 0 #define PMU6_4706_PROCPLL_OFF 4 /* The CPU PLL */ -#define PMU6_4706_PROC_P1DIV_MASK 0x000f0000 -#define PMU6_4706_PROC_P1DIV_SHIFT 16 -#define PMU6_4706_PROC_P2DIV_MASK 0x0000f000 -#define PMU6_4706_PROC_P2DIV_SHIFT 12 +#define PMU6_4706_PROC_P2DIV_MASK 0x000f0000 +#define PMU6_4706_PROC_P2DIV_SHIFT 16 +#define PMU6_4706_PROC_P1DIV_MASK 0x0000f000 +#define PMU6_4706_PROC_P1DIV_SHIFT 12 #define PMU6_4706_PROC_NDIV_INT_MASK 0x00000ff8 #define PMU6_4706_PROC_NDIV_INT_SHIFT 3 #define PMU6_4706_PROC_NDIV_MODE_MASK 0x00000007 diff --git a/release/src-rt/include/siutils.h b/release/src-rt/include/siutils.h old mode 100644 new mode 100755 index b6d15df8d9..c0769a767f --- a/release/src-rt/include/siutils.h +++ b/release/src-rt/include/siutils.h @@ -174,6 +174,7 @@ extern void si_restore_core(si_t *sih, uint coreid, uint intr_val); extern int si_numaddrspaces(si_t *sih); extern uint32 si_addrspace(si_t *sih, uint asidx); extern uint32 si_addrspacesize(si_t *sih, uint asidx); +extern void si_coreaddrspaceX(si_t *sih, uint asidx, uint32 *addr, uint32 *size); extern int si_corebist(si_t *sih); extern void si_core_reset(si_t *sih, uint32 bits, uint32 resetbits); extern void si_core_disable(si_t *sih, uint32 bits); diff --git a/release/src-rt/include/typedefs.h b/release/src-rt/include/typedefs.h old mode 100644 new mode 100755 index d64125a6d8..fb3152eab0 --- a/release/src-rt/include/typedefs.h +++ b/release/src-rt/include/typedefs.h @@ -120,11 +120,17 @@ typedef unsigned __int64 uint64; #endif #endif /* KERNEL */ #define TYPEDEF_BOOL -#endif +#endif /* MAXOSX */ #if defined(__NetBSD__) -#define TYPEDEF_ULONG +#ifndef _KERNEL +#include #endif +#define TYPEDEF_BOOL +#define TYPEDEF_UINT +#define TYPEDEF_USHORT +#define TYPEDEF_ULONG +#endif /* NetBSD */ #if defined(__sparc__) #define TYPEDEF_ULONG diff --git a/release/src-rt/include/wlioctl.h b/release/src-rt/include/wlioctl.h old mode 100644 new mode 100755 index 20a58555b8..a37b7deb95 --- a/release/src-rt/include/wlioctl.h +++ b/release/src-rt/include/wlioctl.h @@ -1576,11 +1576,11 @@ typedef struct wl_po { #define WL_CHAN_FREQ_RANGE_5GM 2 #define WL_CHAN_FREQ_RANGE_5GH 3 -#define WL_CHAN_FREQ_RANGE_5GLL_VER2 4 -#define WL_CHAN_FREQ_RANGE_5GLH_VER2 5 -#define WL_CHAN_FREQ_RANGE_5GML_VER2 6 -#define WL_CHAN_FREQ_RANGE_5GMH_VER2 7 -#define WL_CHAN_FREQ_RANGE_5GH_VER2 8 +#define WL_CHAN_FREQ_RANGE_5GLL_5BAND 4 +#define WL_CHAN_FREQ_RANGE_5GLH_5BAND 5 +#define WL_CHAN_FREQ_RANGE_5GML_5BAND 6 +#define WL_CHAN_FREQ_RANGE_5GMH_5BAND 7 +#define WL_CHAN_FREQ_RANGE_5GH_5BAND 8 /* phy types (returned by WLC_GET_PHYTPE) */ #define WLC_PHY_TYPE_A 0 @@ -1673,6 +1673,9 @@ typedef struct wl_po { #define WLC_N_SGI_20 0x01 #define WLC_N_SGI_40 0x02 +/* when sgi_tx==WLC_SGI_ALL, bypass rate selection, enable sgi for all mcs */ +#define WLC_SGI_ALL 0x02 + /* Values for PM */ #define PM_OFF 0 #define PM_MAX 1 @@ -3354,6 +3357,7 @@ typedef enum { #define VNDR_IE_AUTHRSP_FLAG 0x8 #define VNDR_IE_PRBREQ_FLAG 0x10 #define VNDR_IE_ASSOCREQ_FLAG 0x20 +#define VNDR_IE_IWAPID_FLAG 0x40 /* vendor IE in IW advertisement protocol ID field */ #define VNDR_IE_CUSTOM_FLAG 0x100 /* allow custom IE id */ #define VNDR_IE_INFO_HDR_LEN (sizeof(uint32)) @@ -3373,6 +3377,28 @@ typedef BWL_PRE_PACKED_STRUCT struct { vndr_ie_buf_t vndr_ie_buffer; /* buffer containing Vendor IE list information */ } BWL_POST_PACKED_STRUCT vndr_ie_setbuf_t; +typedef BWL_PRE_PACKED_STRUCT struct { + uint8 id; /* IE type */ + uint8 len; /* IE length */ + uint8 data[1]; /* IE data */ +} BWL_POST_PACKED_STRUCT ie_info_t; + +typedef BWL_PRE_PACKED_STRUCT struct { + int iecount; /* number of entries in the ie_list[] array */ + uint32 pktflag; /* bitmask indicating which packet(s) contain this IE */ + ie_info_t ie_list[1]; /* variable size list of ie_info_t structs */ +} BWL_POST_PACKED_STRUCT ie_buf_t; + +typedef BWL_PRE_PACKED_STRUCT struct { + char cmd[VNDR_IE_CMD_LEN]; /* ie IOVar set command : "add" + NUL */ + ie_buf_t ie_buffer; /* buffer containing IE list information */ +} BWL_POST_PACKED_STRUCT ie_setbuf_t; + +typedef BWL_PRE_PACKED_STRUCT struct { + uint32 pktflag; /* bitmask indicating which packet(s) contain this IE */ + uint8 id; /* IE type */ +} BWL_POST_PACKED_STRUCT ie_getbuf_t; + /* structures used to define format of wps ie data from probe requests */ /* passed up to applications via iovar "prbreq_wpsie" */ typedef BWL_PRE_PACKED_STRUCT struct sta_prbreq_wps_ie_hdr { diff --git a/release/src-rt/linux/linux-2.6/.config b/release/src-rt/linux/linux-2.6/.config new file mode 100644 index 0000000000..ae46a6f086 --- /dev/null +++ b/release/src-rt/linux/linux-2.6/.config @@ -0,0 +1,1783 @@ +# +# Automatically generated make config: don't edit +# Linux kernel version: 2.6.22.19 +# Sun Jun 9 17:47:01 2013 +# +CONFIG_MIPS=y + +# +# Machine selection +# +CONFIG_MIPS_BRCM=y +# CONFIG_MACH_ALCHEMY is not set +# CONFIG_BASLER_EXCITE is not set +# CONFIG_MIPS_COBALT is not set +# CONFIG_MACH_DECSTATION is not set +# CONFIG_MIPS_EV64120 is not set +# CONFIG_MACH_JAZZ is not set +# CONFIG_LASAT is not set +# CONFIG_MIPS_ATLAS is not set +# CONFIG_MIPS_MALTA is not set +# CONFIG_MIPS_SEAD is not set +# CONFIG_WR_PPMC is not set +# CONFIG_MIPS_SIM is not set +# CONFIG_MOMENCO_OCELOT is not set +# CONFIG_MOMENCO_OCELOT_3 is not set +# CONFIG_MOMENCO_OCELOT_C is not set +# CONFIG_PNX8550_JBS is not set +# CONFIG_PNX8550_STB810 is not set +# CONFIG_DDB5477 is not set +# CONFIG_MACH_VR41XX is not set +# CONFIG_PMC_YOSEMITE is not set +# CONFIG_QEMU is not set +# CONFIG_MARKEINS is not set +# CONFIG_SGI_IP22 is not set +# CONFIG_SGI_IP27 is not set +# CONFIG_SGI_IP32 is not set +# CONFIG_SIBYTE_BIGSUR is not set +# CONFIG_SIBYTE_SWARM is not set +# CONFIG_SIBYTE_SENTOSA is not set +# CONFIG_SIBYTE_RHONE is not set +# CONFIG_SIBYTE_CARMEL is not set +# CONFIG_SIBYTE_LITTLESUR is not set +# CONFIG_SIBYTE_CRHINE is not set +# CONFIG_SIBYTE_CRHONE is not set +# CONFIG_SNI_RM is not set +# CONFIG_TOSHIBA_JMR3927 is not set +# CONFIG_TOSHIBA_RBTX4927 is not set +# CONFIG_TOSHIBA_RBTX4938 is not set + +# +# Support for Broadcom MIPS based boards +# +CONFIG_BCM947XX=y +CONFIG_BCM47XX=y +CONFIG_BCMIPDSCP=y +# CONFIG_HND_BMIPS3300_PROF is not set +CONFIG_RAM_SIZE=0 +CONFIG_NVRAM_SIZE=0 +# CONFIG_SHRINKMEM is not set +# CONFIG_GENERIC_GPIO is not set +# CONFIG_NVRAM_64K is not set +CONFIG_RWSEM_GENERIC_SPINLOCK=y +# CONFIG_ARCH_HAS_ILOG2_U32 is not set +# CONFIG_ARCH_HAS_ILOG2_U64 is not set +CONFIG_GENERIC_FIND_NEXT_BIT=y +CONFIG_GENERIC_HWEIGHT=y +CONFIG_GENERIC_CALIBRATE_DELAY=y +CONFIG_GENERIC_TIME=y +CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y +# CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ is not set +CONFIG_DMA_NONCOHERENT=y +CONFIG_DMA_NEED_PCI_MAP_STATE=y +# CONFIG_CPU_BIG_ENDIAN is not set +CONFIG_CPU_LITTLE_ENDIAN=y +CONFIG_SYS_SUPPORTS_LITTLE_ENDIAN=y +CONFIG_IRQ_CPU=y +CONFIG_MIPS_L1_CACHE_SHIFT=5 + +# +# CPU selection +# +# CONFIG_CPU_MIPS32_R1 is not set +CONFIG_CPU_MIPS32_R2=y +# CONFIG_CPU_MIPS64_R1 is not set +# CONFIG_CPU_MIPS64_R2 is not set +# CONFIG_CPU_R3000 is not set +# CONFIG_CPU_TX39XX is not set +# CONFIG_CPU_VR41XX is not set +# CONFIG_CPU_R4300 is not set +# CONFIG_CPU_R4X00 is not set +# CONFIG_CPU_TX49XX is not set +# CONFIG_CPU_R5000 is not set +# CONFIG_CPU_R5432 is not set +# CONFIG_CPU_R6000 is not set +# CONFIG_CPU_NEVADA is not set +# CONFIG_CPU_R8000 is not set +# CONFIG_CPU_R10000 is not set +# CONFIG_CPU_RM7000 is not set +# CONFIG_CPU_RM9000 is not set +# CONFIG_CPU_SB1 is not set +CONFIG_SYS_HAS_CPU_MIPS32_R1=y +CONFIG_SYS_HAS_CPU_MIPS32_R2=y +CONFIG_CPU_MIPS32=y +CONFIG_CPU_MIPSR2=y +CONFIG_SYS_SUPPORTS_32BIT_KERNEL=y +CONFIG_CPU_SUPPORTS_32BIT_KERNEL=y + +# +# Kernel type +# +CONFIG_32BIT=y +# CONFIG_64BIT is not set +CONFIG_PAGE_SIZE_4KB=y +# CONFIG_PAGE_SIZE_8KB is not set +# CONFIG_PAGE_SIZE_16KB is not set +# CONFIG_PAGE_SIZE_64KB is not set +CONFIG_CPU_HAS_PREFETCH=y +CONFIG_MIPS_MT_DISABLED=y +# CONFIG_MIPS_MT_SMP is not set +# CONFIG_MIPS_MT_SMTC is not set +# CONFIG_MIPS_VPE_LOADER is not set +# CONFIG_64BIT_PHYS_ADDR is not set +CONFIG_CPU_HAS_LLSC=y +CONFIG_CPU_HAS_SYNC=y +CONFIG_GENERIC_HARDIRQS=y +CONFIG_GENERIC_IRQ_PROBE=y +CONFIG_HIGHMEM=y +CONFIG_CPU_SUPPORTS_HIGHMEM=y +CONFIG_SYS_SUPPORTS_HIGHMEM=y +CONFIG_ARCH_FLATMEM_ENABLE=y +CONFIG_ARCH_POPULATES_NODE_MAP=y +CONFIG_ARCH_SELECT_MEMORY_MODEL=y +CONFIG_ARCH_SPARSEMEM_ENABLE=y +CONFIG_SELECT_MEMORY_MODEL=y +# CONFIG_FLATMEM_MANUAL is not set +# CONFIG_DISCONTIGMEM_MANUAL is not set +CONFIG_SPARSEMEM_MANUAL=y +CONFIG_SPARSEMEM=y +CONFIG_HAVE_MEMORY_PRESENT=y +# CONFIG_SPARSEMEM_STATIC is not set +CONFIG_SPARSEMEM_EXTREME=y +CONFIG_SPLIT_PTLOCK_CPUS=4 +# CONFIG_RESOURCES_64BIT is not set +CONFIG_ZONE_DMA_FLAG=0 +# CONFIG_HZ_48 is not set +CONFIG_HZ_100=y +# CONFIG_HZ_128 is not set +# CONFIG_HZ_250 is not set +# CONFIG_HZ_256 is not set +# CONFIG_HZ_1000 is not set +# CONFIG_HZ_1024 is not set +CONFIG_SYS_SUPPORTS_ARBIT_HZ=y +CONFIG_HZ=100 +CONFIG_PREEMPT_NONE=y +# CONFIG_PREEMPT_VOLUNTARY is not set +# CONFIG_PREEMPT is not set +# CONFIG_KEXEC is not set +CONFIG_LOCKDEP_SUPPORT=y +CONFIG_STACKTRACE_SUPPORT=y +CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" + +# +# Code maturity level options +# +CONFIG_EXPERIMENTAL=y +CONFIG_BROKEN_ON_SMP=y +CONFIG_INIT_ENV_ARG_LIMIT=32 + +# +# General setup +# +CONFIG_LOCALVERSION="" +# CONFIG_LOCALVERSION_AUTO is not set +CONFIG_SWAP=y +CONFIG_SYSVIPC=y +# CONFIG_IPC_NS is not set +CONFIG_SYSVIPC_SYSCTL=y +# CONFIG_POSIX_MQUEUE is not set +# CONFIG_BSD_PROCESS_ACCT is not set +# CONFIG_TASKSTATS is not set +# CONFIG_UTS_NS is not set +# CONFIG_AUDIT is not set +CONFIG_IKCONFIG=y +# CONFIG_IKCONFIG_PROC is not set +CONFIG_LOG_BUF_SHIFT=14 +CONFIG_SYSFS_DEPRECATED=y +# CONFIG_RELAY is not set +# CONFIG_BLK_DEV_INITRD is not set +# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set +CONFIG_SYSCTL=y +CONFIG_EMBEDDED=y +CONFIG_SYSCTL_SYSCALL=y +# CONFIG_KALLSYMS is not set +CONFIG_HOTPLUG=y +CONFIG_PRINTK=y +CONFIG_BUG=y +# CONFIG_ELF_CORE is not set +CONFIG_BASE_FULL=y +CONFIG_FUTEX=y +CONFIG_ANON_INODES=y +CONFIG_EPOLL=y +CONFIG_SIGNALFD=y +CONFIG_TIMERFD=y +CONFIG_EVENTFD=y +CONFIG_SHMEM=y +# CONFIG_VM_EVENT_COUNTERS is not set +CONFIG_SLAB=y +# CONFIG_SLUB is not set +# CONFIG_SLOB is not set +CONFIG_RT_MUTEXES=y +# CONFIG_TINY_SHMEM is not set +CONFIG_BASE_SMALL=0 + +# +# Loadable module support +# +CONFIG_MODULES=y +CONFIG_MODULE_UNLOAD=y +# CONFIG_MODULE_FORCE_UNLOAD is not set +# CONFIG_MODVERSIONS is not set +# CONFIG_MODULE_SRCVERSION_ALL is not set +CONFIG_KMOD=y + +# +# Block layer +# +CONFIG_BLOCK=y +CONFIG_LBD=y +# CONFIG_BLK_DEV_IO_TRACE is not set +# CONFIG_LSF is not set + +# +# IO Schedulers +# +CONFIG_IOSCHED_NOOP=y +# CONFIG_IOSCHED_AS is not set +# CONFIG_IOSCHED_DEADLINE is not set +# CONFIG_IOSCHED_CFQ is not set +# CONFIG_DEFAULT_AS is not set +# CONFIG_DEFAULT_DEADLINE is not set +# CONFIG_DEFAULT_CFQ is not set +CONFIG_DEFAULT_NOOP=y +CONFIG_DEFAULT_IOSCHED="noop" + +# +# Bus options (PCI, PCMCIA, EISA, ISA, TC) +# +CONFIG_HW_HAS_PCI=y +CONFIG_PCI=y +# CONFIG_ARCH_SUPPORTS_MSI is not set +CONFIG_MMU=y + +# +# PCCARD (PCMCIA/CardBus) support +# +# CONFIG_PCCARD is not set +# CONFIG_HOTPLUG_PCI is not set + +# +# Executable file formats +# +CONFIG_BINFMT_ELF=y +# CONFIG_BINFMT_MISC is not set +CONFIG_TRAD_SIGNALS=y + +# +# Power management options +# +# CONFIG_PM is not set + +# +# Networking +# +CONFIG_NET=y + +# +# Networking options +# +CONFIG_PACKET=y +CONFIG_PACKET_MMAP=y +CONFIG_UNIX=y +# CONFIG_NET_KEY is not set +CONFIG_INET=y +CONFIG_IP_MULTICAST=y +CONFIG_IP_ADVANCED_ROUTER=y +CONFIG_ASK_IP_FIB_HASH=y +# CONFIG_IP_FIB_TRIE is not set +CONFIG_IP_FIB_HASH=y +CONFIG_IP_MULTIPLE_TABLES=y +CONFIG_IP_ROUTE_MULTIPATH=y +# CONFIG_IP_ROUTE_VERBOSE is not set +# CONFIG_IP_PNP is not set +# CONFIG_NET_IPIP is not set +# CONFIG_NET_IPGRE_DEMUX is not set +CONFIG_IPSEC_NAT_TRAVERSAL=y +CONFIG_IP_MROUTE=y +# CONFIG_IP_PIMSM_V1 is not set +# CONFIG_IP_PIMSM_V2 is not set +# CONFIG_ARPD is not set +CONFIG_SYN_COOKIES=y +# CONFIG_INET_AH is not set +# CONFIG_INET_ESP is not set +# CONFIG_INET_IPCOMP is not set +# CONFIG_INET_XFRM_TUNNEL is not set +CONFIG_INET_TUNNEL=m +# CONFIG_INET_XFRM_MODE_TRANSPORT is not set +# CONFIG_INET_XFRM_MODE_TUNNEL is not set +# CONFIG_INET_XFRM_MODE_BEET is not set +# CONFIG_INET_DIAG is not set +CONFIG_TCP_CONG_ADVANCED=y +# CONFIG_TCP_CONG_BIC is not set +# CONFIG_TCP_CONG_CUBIC is not set +# CONFIG_TCP_CONG_WESTWOOD is not set +# CONFIG_TCP_CONG_HTCP is not set +# CONFIG_TCP_CONG_HSTCP is not set +# CONFIG_TCP_CONG_HYBLA is not set +CONFIG_TCP_CONG_VEGAS=m +# CONFIG_TCP_CONG_SCALABLE is not set +# CONFIG_TCP_CONG_LP is not set +# CONFIG_TCP_CONG_VENO is not set +# CONFIG_TCP_CONG_YEAH is not set +# CONFIG_TCP_CONG_ILLINOIS is not set +# CONFIG_DEFAULT_BIC is not set +# CONFIG_DEFAULT_CUBIC is not set +# CONFIG_DEFAULT_HTCP is not set +# CONFIG_DEFAULT_VEGAS is not set +# CONFIG_DEFAULT_WESTWOOD is not set +CONFIG_DEFAULT_RENO=y +CONFIG_DEFAULT_TCP_CONG="reno" +# CONFIG_TCP_MD5SIG is not set +# CONFIG_IP_VS is not set +CONFIG_IPV6=y +# CONFIG_IPV6_PRIVACY is not set +CONFIG_IPV6_ROUTER_PREF=y +# CONFIG_IPV6_ROUTE_INFO is not set +CONFIG_IPV6_OPTIMISTIC_DAD=y +# CONFIG_INET6_AH is not set +# CONFIG_INET6_ESP is not set +# CONFIG_INET6_IPCOMP is not set +# CONFIG_IPV6_MIP6 is not set +# CONFIG_INET6_XFRM_TUNNEL is not set +# CONFIG_INET6_TUNNEL is not set +# CONFIG_INET6_XFRM_MODE_TRANSPORT is not set +# CONFIG_INET6_XFRM_MODE_TUNNEL is not set +# CONFIG_INET6_XFRM_MODE_BEET is not set +# CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION is not set +CONFIG_IPV6_SIT=m +CONFIG_IPV6_SIT_6RD=y +# CONFIG_IPV6_TUNNEL is not set +CONFIG_IPV6_MULTIPLE_TABLES=y +# CONFIG_IPV6_SUBTREES is not set +CONFIG_IPV6_MROUTE=y +# CONFIG_IPV6_PIMSM_V2 is not set +# CONFIG_INET_GRO is not set +CONFIG_INET_GSO=y +# CONFIG_NETWORK_SECMARK is not set +CONFIG_NETFILTER=y +# CONFIG_NETFILTER_DEBUG is not set +# CONFIG_BRIDGE_NETFILTER is not set + +# +# Core Netfilter Configuration +# +CONFIG_NETFILTER_NETLINK=y +# CONFIG_NETFILTER_NETLINK_QUEUE is not set +# CONFIG_NETFILTER_NETLINK_LOG is not set +CONFIG_NF_CONNTRACK_ENABLED=y +CONFIG_NF_CONNTRACK=y +CONFIG_NF_CT_ACCT=y +CONFIG_IP_NF_MATCH_ACCOUNT=y +CONFIG_NF_CONNTRACK_MARK=y +# CONFIG_NF_CONNTRACK_EVENTS is not set +CONFIG_NF_CT_PROTO_GRE=m +# CONFIG_NF_CT_PROTO_SCTP is not set +# CONFIG_NF_CONNTRACK_AMANDA is not set +CONFIG_NF_CONNTRACK_FTP=m +CONFIG_NF_CONNTRACK_H323=m +# CONFIG_NF_CONNTRACK_IRC is not set +# CONFIG_NF_CONNTRACK_NETBIOS_NS is not set +CONFIG_NF_CONNTRACK_PPTP=m +# CONFIG_NF_CONNTRACK_SANE is not set +CONFIG_NF_CONNTRACK_SIP=m +CONFIG_NF_CONNTRACK_TFTP=y +CONFIG_NF_CONNTRACK_RTSP=m +# CONFIG_NF_CT_NETLINK is not set +CONFIG_NETFILTER_XTABLES=y +CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m +CONFIG_NETFILTER_XT_TARGET_CONNMARK=y +CONFIG_NETFILTER_XT_TARGET_DSCP=m +CONFIG_NETFILTER_XT_TARGET_HL=m +CONFIG_NETFILTER_XT_TARGET_IMQ=m +CONFIG_NETFILTER_XT_TARGET_MARK=y +CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m +# CONFIG_NETFILTER_XT_TARGET_NFLOG is not set +CONFIG_NETFILTER_XT_TARGET_NOTRACK=m +CONFIG_NETFILTER_XT_TARGET_TCPMSS=y +# CONFIG_NETFILTER_XT_MATCH_COMMENT is not set +CONFIG_NETFILTER_XT_MATCH_CONNBYTES=y +CONFIG_NETFILTER_XT_MATCH_CONNLIMIT=y +CONFIG_NETFILTER_XT_MATCH_CONNMARK=y +# CONFIG_NETFILTER_XT_MATCH_CONNTRACK is not set +# CONFIG_NETFILTER_XT_MATCH_DCCP is not set +CONFIG_NETFILTER_XT_MATCH_DSCP=m +# CONFIG_NETFILTER_XT_MATCH_ESP is not set +# CONFIG_NETFILTER_XT_MATCH_HELPER is not set +CONFIG_NETFILTER_XT_MATCH_HL=m +CONFIG_NETFILTER_XT_MATCH_IPRANGE=y +CONFIG_NETFILTER_XT_MATCH_LENGTH=m +CONFIG_NETFILTER_XT_MATCH_LIMIT=y +CONFIG_NETFILTER_XT_MATCH_MAC=y +CONFIG_NETFILTER_XT_MATCH_MARK=y +CONFIG_NETFILTER_XT_MATCH_MULTIPORT=y +# CONFIG_NETFILTER_XT_MATCH_PKTTYPE is not set +CONFIG_NETFILTER_XT_MATCH_QUOTA=m +# CONFIG_NETFILTER_XT_MATCH_REALM is not set +CONFIG_NETFILTER_XT_MATCH_RECENT=m +# CONFIG_NETFILTER_XT_MATCH_RECENT_PROC_COMPAT is not set +# CONFIG_NETFILTER_XT_MATCH_SCTP is not set +CONFIG_NETFILTER_XT_MATCH_STATE=y +CONFIG_NETFILTER_XT_MATCH_LAYER7=m +# CONFIG_NETFILTER_XT_MATCH_LAYER7_DEBUG is not set +# CONFIG_NETFILTER_XT_MATCH_STATISTIC is not set +# CONFIG_NETFILTER_XT_MATCH_TIME is not set +CONFIG_NETFILTER_XT_MATCH_STRING=y +# CONFIG_NETFILTER_XT_MATCH_WEBSTR is not set +CONFIG_NETFILTER_XT_MATCH_WEB=m +CONFIG_NETFILTER_XT_MATCH_WEBMON=m +CONFIG_NETFILTER_XT_MATCH_TCPMSS=y +CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m +CONFIG_NETFILTER_XT_MATCH_CONDITION=m +CONFIG_NETFILTER_XT_MATCH_GEOIP=m + +# +# IP: Netfilter Configuration +# +CONFIG_NF_CONNTRACK_IPV4=y +CONFIG_NF_CONNTRACK_PROC_COMPAT=y +# CONFIG_IP_NF_QUEUE is not set +# CONFIG_BCM_NAT is not set +CONFIG_IP_NF_IPTABLES=y +CONFIG_IP_NF_MATCH_TOS=m +CONFIG_IP_NF_MATCH_TIME=m +# CONFIG_IP_NF_MATCH_ECN is not set +# CONFIG_IP_NF_MATCH_AH is not set +# CONFIG_IP_NF_MATCH_OWNER is not set +# CONFIG_IP_NF_MATCH_ADDRTYPE is not set +# CONFIG_IP_NF_MATCH_MPORT is not set +CONFIG_IP_NF_FILTER=y +CONFIG_IP_NF_TARGET_REJECT=y +CONFIG_IP_NF_TARGET_LOG=y +# CONFIG_IP_NF_TARGET_ULOG is not set +CONFIG_NF_NAT=y +CONFIG_NF_NAT_NEEDED=y +CONFIG_IP_NF_TARGET_MASQUERADE=y +CONFIG_IP_NF_TARGET_REDIRECT=m +CONFIG_IP_NF_TARGET_NETMAP=m +# CONFIG_IP_NF_TARGET_SAME is not set +CONFIG_IP_NF_TARGET_TRIGGER=y +# CONFIG_NF_NAT_SNMP_BASIC is not set +# CONFIG_NF_NAT_AUTOFW is not set +CONFIG_NF_NAT_PROTO_GRE=m +CONFIG_NF_NAT_FTP=m +# CONFIG_NF_NAT_IRC is not set +CONFIG_NF_NAT_RTSP=m +CONFIG_NF_NAT_TFTP=y +# CONFIG_NF_NAT_AMANDA is not set +CONFIG_NF_NAT_PPTP=m +CONFIG_NF_NAT_H323=m +CONFIG_NF_NAT_SIP=m +CONFIG_IP_NF_MANGLE=y +CONFIG_IP_NF_TARGET_TOS=m +# CONFIG_IP_NF_TARGET_ECN is not set +# CONFIG_IP_NF_TARGET_CLUSTERIP is not set +CONFIG_IP_NF_RAW=m +# CONFIG_IP_NF_ARPTABLES is not set +CONFIG_IP_NF_MATCH_U32=y +CONFIG_IP_NF_TARGET_ROUTE=m +# CONFIG_IP_NF_TARGET_TARPIT is not set +CONFIG_IP_NF_MATCH_IPP2P=m +# CONFIG_IP_NF_MATCH_IPV4OPTIONS is not set +# CONFIG_IP_NF_TARGET_BCOUNT is not set +# CONFIG_IP_NF_TARGET_MACSAVE is not set +# CONFIG_IP_NF_MATCH_EXP is not set +CONFIG_IP_NF_TOMATOCT=y +CONFIG_IP_NF_DNSMQ=m + +# +# IPv6: Netfilter Configuration (EXPERIMENTAL) +# +CONFIG_NF_CONNTRACK_IPV6=m +# CONFIG_IP6_NF_QUEUE is not set +CONFIG_IP6_NF_IPTABLES=y +CONFIG_IP6_NF_MATCH_RT=y +# CONFIG_IP6_NF_MATCH_OPTS is not set +# CONFIG_IP6_NF_MATCH_FRAG is not set +# CONFIG_IP6_NF_MATCH_OWNER is not set +# CONFIG_IP6_NF_MATCH_IPV6HEADER is not set +# CONFIG_IP6_NF_MATCH_AH is not set +# CONFIG_IP6_NF_MATCH_MH is not set +# CONFIG_IP6_NF_MATCH_EUI64 is not set +CONFIG_IP6_NF_FILTER=m +CONFIG_IP6_NF_TARGET_LOG=m +CONFIG_IP6_NF_TARGET_REJECT=m +CONFIG_IP6_NF_MANGLE=m +CONFIG_IP6_NF_RAW=m +CONFIG_IP6_NF_TARGET_ROUTE=m + +# +# Bridge: Netfilter Configuration +# +CONFIG_BRIDGE_NF_EBTABLES=m +CONFIG_BRIDGE_EBT_BROUTE=m +CONFIG_BRIDGE_EBT_T_FILTER=m +CONFIG_BRIDGE_EBT_T_NAT=m +# CONFIG_BRIDGE_EBT_802_3 is not set +# CONFIG_BRIDGE_EBT_AMONG is not set +CONFIG_BRIDGE_EBT_ARP=m +CONFIG_BRIDGE_EBT_IP=m +CONFIG_BRIDGE_EBT_IP6=m +CONFIG_BRIDGE_EBT_LIMIT=m +# CONFIG_BRIDGE_EBT_MARK is not set +CONFIG_BRIDGE_EBT_PKTTYPE=m +CONFIG_BRIDGE_EBT_STP=m +CONFIG_BRIDGE_EBT_VLAN=m +CONFIG_BRIDGE_EBT_ARPREPLY=m +CONFIG_BRIDGE_EBT_DNAT=m +CONFIG_BRIDGE_EBT_MARK_T=m +CONFIG_BRIDGE_EBT_REDIRECT=m +CONFIG_BRIDGE_EBT_SNAT=m +CONFIG_BRIDGE_EBT_LOG=m +# CONFIG_BRIDGE_EBT_ULOG is not set +# CONFIG_IP_DCCP is not set +# CONFIG_IP_SCTP is not set +# CONFIG_TIPC is not set +# CONFIG_ATM is not set +CONFIG_BRIDGE=y +CONFIG_VLAN_8021Q=y +# CONFIG_DECNET is not set +CONFIG_LLC=y +# CONFIG_LLC2 is not set +# CONFIG_IPX is not set +# CONFIG_ATALK is not set +# CONFIG_X25 is not set +# CONFIG_LAPB is not set +# CONFIG_ECONET is not set +# CONFIG_WAN_ROUTER is not set + +# +# QoS and/or fair queueing +# +CONFIG_NET_SCHED=y +CONFIG_NET_SCH_FIFO=y + +# +# Queueing/Scheduling +# +# CONFIG_NET_SCH_CBQ is not set +CONFIG_NET_SCH_HTB=y +CONFIG_NET_SCH_HFSC=m +CONFIG_NET_SCH_PRIO=y +CONFIG_NET_SCH_RED=m +CONFIG_NET_SCH_SFQ=y +CONFIG_NET_SCH_ESFQ=m +CONFIG_NET_SCH_ESFQ_NFCT=y +# CONFIG_NET_SCH_TEQL is not set +CONFIG_NET_SCH_TBF=m +# CONFIG_NET_SCH_GRED is not set +# CONFIG_NET_SCH_DSMARK is not set +# CONFIG_NET_SCH_NETEM is not set +CONFIG_NET_SCH_INGRESS=y + +# +# Classification +# +CONFIG_NET_CLS=y +CONFIG_NET_CLS_BASIC=y +CONFIG_NET_CLS_TCINDEX=y +CONFIG_NET_CLS_ROUTE4=y +CONFIG_NET_CLS_ROUTE=y +CONFIG_NET_CLS_FW=y +CONFIG_NET_CLS_U32=y +# CONFIG_CLS_U32_PERF is not set +CONFIG_CLS_U32_MARK=y +# CONFIG_NET_CLS_RSVP is not set +# CONFIG_NET_CLS_RSVP6 is not set +# CONFIG_NET_EMATCH is not set +# CONFIG_NET_CLS_ACT is not set +CONFIG_NET_CLS_POLICE=y +# CONFIG_NET_CLS_IND is not set +CONFIG_NET_ESTIMATOR=y + +# +# Network testing +# +# CONFIG_NET_PKTGEN is not set +# CONFIG_HAMRADIO is not set +# CONFIG_IRDA is not set +# CONFIG_BT is not set +# CONFIG_AF_RXRPC is not set +CONFIG_FIB_RULES=y + +# +# Wireless +# +# CONFIG_CFG80211 is not set +# CONFIG_WIRELESS_EXT is not set +# CONFIG_MAC80211 is not set +# CONFIG_IEEE80211 is not set +# CONFIG_RFKILL is not set + +# +# Device Drivers +# + +# +# Generic Driver Options +# +CONFIG_STANDALONE=y +CONFIG_PREVENT_FIRMWARE_BUILD=y +# CONFIG_FW_LOADER is not set +# CONFIG_SYS_HYPERVISOR is not set + +# +# Connector - unified userspace <-> kernelspace linker +# +CONFIG_CONNECTOR=m +CONFIG_MTD=y +# CONFIG_MTD_DEBUG is not set +# CONFIG_MTD_CONCAT is not set +CONFIG_MTD_PARTITIONS=y +# CONFIG_MTD_REDBOOT_PARTS is not set +# CONFIG_MTD_CMDLINE_PARTS is not set + +# +# User Modules And Translation Layers +# +CONFIG_MTD_CHAR=y +CONFIG_MTD_BLKDEVS=y +CONFIG_MTD_BLOCK=y +# CONFIG_FTL is not set +# CONFIG_NFTL is not set +# CONFIG_INFTL is not set +# CONFIG_RFD_FTL is not set +# CONFIG_SSFDC is not set + +# +# RAM/ROM/Flash chip drivers +# +CONFIG_MTD_CFI=y +# CONFIG_MTD_JEDECPROBE is not set +CONFIG_MTD_GEN_PROBE=y +CONFIG_MTD_CFI_ADV_OPTIONS=y +CONFIG_MTD_CFI_NOSWAP=y +# CONFIG_MTD_CFI_BE_BYTE_SWAP is not set +# CONFIG_MTD_CFI_LE_BYTE_SWAP is not set +CONFIG_MTD_CFI_GEOMETRY=y +CONFIG_MTD_MAP_BANK_WIDTH_1=y +CONFIG_MTD_MAP_BANK_WIDTH_2=y +CONFIG_MTD_MAP_BANK_WIDTH_4=y +# CONFIG_MTD_MAP_BANK_WIDTH_8 is not set +# CONFIG_MTD_MAP_BANK_WIDTH_16 is not set +# CONFIG_MTD_MAP_BANK_WIDTH_32 is not set +CONFIG_MTD_CFI_I1=y +CONFIG_MTD_CFI_I2=y +# CONFIG_MTD_CFI_I4 is not set +# CONFIG_MTD_CFI_I8 is not set +# CONFIG_MTD_OTP is not set +CONFIG_MTD_CFI_INTELEXT=y +CONFIG_MTD_CFI_AMDSTD=y +CONFIG_MTD_CFI_STAA=y +CONFIG_MTD_CFI_UTIL=y +# CONFIG_MTD_RAM is not set +# CONFIG_MTD_ROM is not set +# CONFIG_MTD_ABSENT is not set + +# +# Mapping drivers for chip access +# +# CONFIG_MTD_COMPLEX_MAPPINGS is not set +# CONFIG_MTD_PHYSMAP is not set +# CONFIG_MTD_PLATRAM is not set +CONFIG_MTD_BCM947XX=y + +# +# Self-contained MTD device drivers +# +CONFIG_MTD_SFLASH=y +# CONFIG_MTD_NFLASH is not set +# CONFIG_MTD_PMC551 is not set +# CONFIG_MTD_SLRAM is not set +# CONFIG_MTD_PHRAM is not set +# CONFIG_MTD_MTDRAM is not set +# CONFIG_MTD_BLOCK2MTD is not set + +# +# Disk-On-Chip Device Drivers +# +# CONFIG_MTD_DOC2000 is not set +# CONFIG_MTD_DOC2001 is not set +# CONFIG_MTD_DOC2001PLUS is not set +# CONFIG_MTD_NAND is not set +# CONFIG_MTD_ONENAND is not set + +# +# UBI - Unsorted block images +# +# CONFIG_MTD_UBI is not set + +# +# Parallel port support +# +# CONFIG_PARPORT is not set + +# +# Plug and Play support +# +# CONFIG_PNPACPI is not set + +# +# Block devices +# +# CONFIG_BLK_CPQ_DA is not set +# CONFIG_BLK_CPQ_CISS_DA is not set +# CONFIG_BLK_DEV_DAC960 is not set +# CONFIG_BLK_DEV_UMEM is not set +# CONFIG_BLK_DEV_COW_COMMON is not set +CONFIG_BLK_DEV_LOOP=m +# CONFIG_BLK_DEV_CRYPTOLOOP is not set +# CONFIG_BLK_DEV_NBD is not set +# CONFIG_BLK_DEV_SX8 is not set +# CONFIG_BLK_DEV_UB is not set +# CONFIG_BLK_DEV_RAM is not set +# CONFIG_CDROM_PKTCDVD is not set +# CONFIG_ATA_OVER_ETH is not set + +# +# Misc devices +# +# CONFIG_PHANTOM is not set +# CONFIG_SGI_IOC4 is not set +# CONFIG_TIFM_CORE is not set +# CONFIG_IDE is not set + +# +# SCSI device support +# +# CONFIG_RAID_ATTRS is not set +CONFIG_SCSI=m +# CONFIG_SCSI_TGT is not set +# CONFIG_SCSI_NETLINK is not set +CONFIG_SCSI_PROC_FS=y + +# +# SCSI support type (disk, tape, CD-ROM) +# +CONFIG_BLK_DEV_SD=m +# CONFIG_CHR_DEV_ST is not set +# CONFIG_CHR_DEV_OSST is not set +# CONFIG_BLK_DEV_SR is not set +# CONFIG_CHR_DEV_SG is not set +# CONFIG_CHR_DEV_SCH is not set + +# +# Some SCSI devices (e.g. CD jukebox) support multiple LUNs +# +CONFIG_SCSI_MULTI_LUN=y +# CONFIG_SCSI_CONSTANTS is not set +# CONFIG_SCSI_LOGGING is not set +# CONFIG_SCSI_SCAN_ASYNC is not set +CONFIG_SCSI_WAIT_SCAN=m + +# +# SCSI Transports +# +# CONFIG_SCSI_SPI_ATTRS is not set +# CONFIG_SCSI_FC_ATTRS is not set +# CONFIG_SCSI_ISCSI_ATTRS is not set +# CONFIG_SCSI_SAS_ATTRS is not set +# CONFIG_SCSI_SAS_LIBSAS is not set + +# +# SCSI low-level drivers +# +# CONFIG_ISCSI_TCP is not set +# CONFIG_BLK_DEV_3W_XXXX_RAID is not set +# CONFIG_SCSI_3W_9XXX is not set +# CONFIG_SCSI_ACARD is not set +# CONFIG_SCSI_AACRAID is not set +# CONFIG_SCSI_AIC7XXX is not set +# CONFIG_SCSI_AIC7XXX_OLD is not set +# CONFIG_SCSI_AIC79XX is not set +# CONFIG_SCSI_AIC94XX is not set +# CONFIG_SCSI_DPT_I2O is not set +# CONFIG_SCSI_ARCMSR is not set +# CONFIG_MEGARAID_NEWGEN is not set +# CONFIG_MEGARAID_LEGACY is not set +# CONFIG_MEGARAID_SAS is not set +# CONFIG_SCSI_HPTIOP is not set +# CONFIG_SCSI_DMX3191D is not set +# CONFIG_SCSI_FUTURE_DOMAIN is not set +# CONFIG_SCSI_IPS is not set +# CONFIG_SCSI_INITIO is not set +# CONFIG_SCSI_INIA100 is not set +# CONFIG_SCSI_STEX is not set +# CONFIG_SCSI_SYM53C8XX_2 is not set +# CONFIG_SCSI_QLOGIC_1280 is not set +# CONFIG_SCSI_QLA_FC is not set +# CONFIG_SCSI_QLA_ISCSI is not set +# CONFIG_SCSI_LPFC is not set +# CONFIG_SCSI_DC395x is not set +# CONFIG_SCSI_DC390T is not set +# CONFIG_SCSI_NSP32 is not set +# CONFIG_SCSI_DEBUG is not set +# CONFIG_SCSI_SRP is not set +# CONFIG_ATA is not set + +# +# Multi-device support (RAID and LVM) +# +# CONFIG_MD is not set + +# +# Fusion MPT device support +# +# CONFIG_FUSION is not set +# CONFIG_FUSION_SPI is not set +# CONFIG_FUSION_FC is not set +# CONFIG_FUSION_SAS is not set + +# +# IEEE 1394 (FireWire) support +# +# CONFIG_FIREWIRE is not set +# CONFIG_IEEE1394 is not set + +# +# I2O device support +# +# CONFIG_I2O is not set + +# +# Network device support +# +CONFIG_NETDEVICES=y + +# +# Broadcom HND network devices +# +CONFIG_HND=y +CONFIG_ET=m +CONFIG_ET_47XX=y +CONFIG_BCM_CTF=m +# CONFIG_WL_USBAP is not set +# CONFIG_WL_EMULATOR is not set +# CONFIG_BCM57XX is not set +CONFIG_WL=m +# CONFIG_WAPI is not set +# CONFIG_WL_USE_AP is not set +# CONFIG_WL_USE_AP_SDSTD is not set +# CONFIG_WL_USE_STA is not set +CONFIG_WL_USE_APSTA=y +# CONFIG_WL_USE_AP_ONCHIP_G is not set +# CONFIG_WL_USE_STA_ONCHIP_G is not set +# CONFIG_WL_USE_APSTA_ONCHIP_G is not set +CONFIG_WL_AP="wlconfig_lx_router_ap" +CONFIG_WL_AP_SDSTD="wlconfig_lx_router_ap_sdstd" +CONFIG_WL_STA="wlconfig_lx_router_sta" +CONFIG_WL_APSTA="wlconfig_lx_router_apsta" +CONFIG_WL_AP_ONCHIP_G="wlconfig_lx_router_ap_1chipG" +CONFIG_WL_STA_ONCHIP_G="wlconfig_lx_router_sta_1chipG" +CONFIG_WL_HIGH="wlconfig_lx_router_high" +CONFIG_EMF=m +# CONFIG_PLC is not set +# CONFIG_DUMMY is not set +# CONFIG_BONDING is not set +# CONFIG_EQUALIZER is not set +CONFIG_IMQ=m +# CONFIG_IMQ_BEHAVIOR_AA is not set +CONFIG_IMQ_BEHAVIOR_AB=y +# CONFIG_IMQ_BEHAVIOR_BA is not set +# CONFIG_IMQ_BEHAVIOR_BB is not set +CONFIG_IMQ_NUM_DEVS=3 +CONFIG_TUN=m +# CONFIG_ARCNET is not set +# CONFIG_PHYLIB is not set + +# +# Ethernet (10 or 100Mbit) +# +CONFIG_NET_ETHERNET=y +CONFIG_MII=m +# CONFIG_HAPPYMEAL is not set +# CONFIG_SUNGEM is not set +# CONFIG_CASSINI is not set +# CONFIG_NET_VENDOR_3COM is not set +# CONFIG_DM9000 is not set + +# +# Tulip family network device support +# +# CONFIG_NET_TULIP is not set +# CONFIG_HP100 is not set +# CONFIG_NET_PCI is not set +# CONFIG_NETDEV_1000 is not set +# CONFIG_NETDEV_10000 is not set +# CONFIG_TR is not set + +# +# Wireless LAN +# +# CONFIG_WLAN_PRE80211 is not set +# CONFIG_WLAN_80211 is not set + +# +# USB Network Adapters +# +# CONFIG_USB_CATC is not set +# CONFIG_USB_KAWETH is not set +# CONFIG_USB_PEGASUS is not set +# CONFIG_USB_RTL8150 is not set +# CONFIG_USB_USBNET_MII is not set +CONFIG_USB_USBNET=m +# CONFIG_USB_NET_AX8817X is not set +CONFIG_USB_NET_CDCETHER=m +# CONFIG_USB_NET_DM9601 is not set +# CONFIG_USB_NET_GL620A is not set +# CONFIG_USB_NET_NET1080 is not set +# CONFIG_USB_NET_PLUSB is not set +# CONFIG_USB_NET_MCS7830 is not set +CONFIG_USB_NET_RNDIS_HOST=m +# CONFIG_USB_NET_CDC_SUBSET is not set +# CONFIG_USB_NET_ZAURUS is not set +# CONFIG_WAN is not set +# CONFIG_FDDI is not set +# CONFIG_HIPPI is not set +CONFIG_PPP=y +CONFIG_PPP_MULTILINK=y +# CONFIG_PPP_FILTER is not set +CONFIG_PPP_ASYNC=y +CONFIG_PPP_SYNC_TTY=y +CONFIG_PPP_DEFLATE=m +# CONFIG_PPP_BSDCOMP is not set +CONFIG_PPP_MPPE_MPPC=y +CONFIG_PPPOE=y +CONFIG_PPTP=y +CONFIG_PPPOL2TP=y +# CONFIG_SLIP is not set +CONFIG_SLHC=y +# CONFIG_NET_FC is not set +# CONFIG_SHAPER is not set +# CONFIG_NETCONSOLE is not set +# CONFIG_NETPOLL is not set +# CONFIG_NET_POLL_CONTROLLER is not set + +# +# ISDN subsystem +# +# CONFIG_ISDN is not set + +# +# Telephony Support +# +# CONFIG_PHONE is not set + +# +# Input device support +# +CONFIG_INPUT=m +# CONFIG_INPUT_FF_MEMLESS is not set +# CONFIG_INPUT_POLLDEV is not set + +# +# Userland interfaces +# +CONFIG_INPUT_MOUSEDEV=m +CONFIG_INPUT_MOUSEDEV_PSAUX=y +CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024 +CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 +CONFIG_INPUT_JOYDEV=m +# CONFIG_INPUT_TSDEV is not set +CONFIG_INPUT_EVDEV=m +# CONFIG_INPUT_EVBUG is not set + +# +# Input Device Drivers +# +# CONFIG_INPUT_KEYBOARD is not set +# CONFIG_INPUT_MOUSE is not set +# CONFIG_INPUT_JOYSTICK is not set +# CONFIG_INPUT_TABLET is not set +# CONFIG_INPUT_TOUCHSCREEN is not set +# CONFIG_INPUT_MISC is not set + +# +# Hardware I/O ports +# +# CONFIG_SERIO is not set +# CONFIG_GAMEPORT is not set + +# +# Character devices +# +# CONFIG_VT is not set +CONFIG_SERIAL_NONSTANDARD=y +# CONFIG_COMPUTONE is not set +# CONFIG_ROCKETPORT is not set +# CONFIG_CYCLADES is not set +# CONFIG_DIGIEPCA is not set +# CONFIG_MOXA_INTELLIO is not set +# CONFIG_MOXA_SMARTIO is not set +# CONFIG_MOXA_SMARTIO_NEW is not set +# CONFIG_ISI is not set +# CONFIG_SYNCLINKMP is not set +# CONFIG_SYNCLINK_GT is not set +CONFIG_N_HDLC=y +# CONFIG_RISCOM8 is not set +# CONFIG_SPECIALIX is not set +# CONFIG_SX is not set +# CONFIG_RIO is not set +# CONFIG_STALDRV is not set + +# +# Serial drivers +# +CONFIG_SERIAL_8250=y +CONFIG_SERIAL_8250_CONSOLE=y +CONFIG_SERIAL_8250_PCI=y +CONFIG_SERIAL_8250_NR_UARTS=4 +CONFIG_SERIAL_8250_RUNTIME_UARTS=2 +# CONFIG_SERIAL_8250_EXTENDED is not set + +# +# Non-8250 serial port support +# +CONFIG_SERIAL_CORE=y +CONFIG_SERIAL_CORE_CONSOLE=y +# CONFIG_SERIAL_JSM is not set +CONFIG_UNIX98_PTYS=y +CONFIG_LEGACY_PTYS=y +CONFIG_LEGACY_PTY_COUNT=16 + +# +# IPMI +# +# CONFIG_IPMI_HANDLER is not set +# CONFIG_WATCHDOG is not set +# CONFIG_HW_RANDOM is not set +# CONFIG_RTC is not set +# CONFIG_GEN_RTC is not set +# CONFIG_R3964 is not set +# CONFIG_APPLICOM is not set +# CONFIG_DRM is not set +# CONFIG_RAW_DRIVER is not set + +# +# TPM devices +# +# CONFIG_TCG_TPM is not set +CONFIG_DEVPORT=y +# CONFIG_I2C is not set + +# +# SPI support +# +# CONFIG_SPI is not set +# CONFIG_SPI_MASTER is not set + +# +# Dallas's 1-wire bus +# +# CONFIG_W1 is not set +# CONFIG_HWMON is not set + +# +# Multifunction device drivers +# +# CONFIG_MFD_SM501 is not set + +# +# Multimedia devices +# +CONFIG_VIDEO_DEV=m +# CONFIG_VIDEO_V4L1 is not set +# CONFIG_VIDEO_V4L1_COMPAT is not set +CONFIG_VIDEO_V4L2=y +CONFIG_VIDEO_CAPTURE_DRIVERS=y +# CONFIG_VIDEO_ADV_DEBUG is not set +CONFIG_VIDEO_HELPER_CHIPS_AUTO=y +# CONFIG_VIDEO_VIVI is not set +CONFIG_V4L_USB_DRIVERS=y +CONFIG_USB_GSPCA=m +CONFIG_USB_M5602=m +CONFIG_USB_STV06XX=m +CONFIG_USB_GL860=m +CONFIG_USB_GSPCA_CONEX=m +CONFIG_USB_GSPCA_ETOMS=m +CONFIG_USB_GSPCA_FINEPIX=m +CONFIG_USB_GSPCA_JEILINJ=m +CONFIG_USB_GSPCA_MARS=m +CONFIG_USB_GSPCA_MR97310A=m +CONFIG_USB_GSPCA_OV519=m +CONFIG_USB_GSPCA_OV534=m +CONFIG_USB_GSPCA_PAC207=m +CONFIG_USB_GSPCA_PAC7311=m +CONFIG_USB_GSPCA_SN9C20X=m +CONFIG_USB_GSPCA_SN9C20X_EVDEV=y +CONFIG_USB_GSPCA_SONIXB=m +CONFIG_USB_GSPCA_SONIXJ=m +CONFIG_USB_GSPCA_SPCA500=m +CONFIG_USB_GSPCA_SPCA501=m +CONFIG_USB_GSPCA_SPCA505=m +CONFIG_USB_GSPCA_SPCA506=m +CONFIG_USB_GSPCA_SPCA508=m +CONFIG_USB_GSPCA_SPCA561=m +CONFIG_USB_GSPCA_SQ905=m +CONFIG_USB_GSPCA_SQ905C=m +CONFIG_USB_GSPCA_STK014=m +CONFIG_USB_GSPCA_SUNPLUS=m +CONFIG_USB_GSPCA_T613=m +CONFIG_USB_GSPCA_TV8532=m +CONFIG_USB_GSPCA_VC032X=m +CONFIG_USB_GSPCA_ZC3XX=m +# CONFIG_USB_SN9C102 is not set +CONFIG_USB_PWC=m +# CONFIG_USB_PWC_DEBUG is not set +CONFIG_USB_PWC_INPUT_EVDEV=y +# CONFIG_USB_ZR364XX is not set +CONFIG_USB_VIDEO_CLASS=m +CONFIG_USB_VIDEO_CLASS_INPUT_EVDEV=y +# CONFIG_RADIO_ADAPTERS is not set +# CONFIG_DVB_CORE is not set +# CONFIG_DAB is not set + +# +# Graphics support +# +# CONFIG_BACKLIGHT_LCD_SUPPORT is not set + +# +# Display device support +# +# CONFIG_DISPLAY_SUPPORT is not set +# CONFIG_VGASTATE is not set +# CONFIG_FB is not set + +# +# Sound +# +CONFIG_SOUND=m + +# +# Advanced Linux Sound Architecture +# +CONFIG_SND=m +CONFIG_SND_TIMER=m +CONFIG_SND_PCM=m +CONFIG_SND_HWDEP=m +CONFIG_SND_RAWMIDI=m +CONFIG_SND_SEQUENCER=m +# CONFIG_SND_SEQ_DUMMY is not set +CONFIG_SND_OSSEMUL=y +CONFIG_SND_MIXER_OSS=m +CONFIG_SND_PCM_OSS=m +CONFIG_SND_PCM_OSS_PLUGINS=y +# CONFIG_SND_SEQUENCER_OSS is not set +# CONFIG_SND_DYNAMIC_MINORS is not set +CONFIG_SND_SUPPORT_OLD_API=y +# CONFIG_SND_VERBOSE_PROCFS is not set +# CONFIG_SND_VERBOSE_PRINTK is not set +# CONFIG_SND_DEBUG is not set + +# +# Generic devices +# +# CONFIG_SND_DUMMY is not set +# CONFIG_SND_VIRMIDI is not set +# CONFIG_SND_MTPAV is not set +# CONFIG_SND_SERIAL_U16550 is not set +# CONFIG_SND_MPU401 is not set + +# +# PCI devices +# +# CONFIG_SND_AD1889 is not set +# CONFIG_SND_ALS300 is not set +# CONFIG_SND_ALI5451 is not set +# CONFIG_SND_ATIIXP is not set +# CONFIG_SND_ATIIXP_MODEM is not set +# CONFIG_SND_AU8810 is not set +# CONFIG_SND_AU8820 is not set +# CONFIG_SND_AU8830 is not set +# CONFIG_SND_AZT3328 is not set +# CONFIG_SND_BT87X is not set +# CONFIG_SND_CA0106 is not set +# CONFIG_SND_CMIPCI is not set +# CONFIG_SND_CS4281 is not set +# CONFIG_SND_CS46XX is not set +# CONFIG_SND_DARLA20 is not set +# CONFIG_SND_GINA20 is not set +# CONFIG_SND_LAYLA20 is not set +# CONFIG_SND_DARLA24 is not set +# CONFIG_SND_GINA24 is not set +# CONFIG_SND_LAYLA24 is not set +# CONFIG_SND_MONA is not set +# CONFIG_SND_MIA is not set +# CONFIG_SND_ECHO3G is not set +# CONFIG_SND_INDIGO is not set +# CONFIG_SND_INDIGOIO is not set +# CONFIG_SND_INDIGODJ is not set +# CONFIG_SND_EMU10K1 is not set +# CONFIG_SND_EMU10K1X is not set +# CONFIG_SND_ENS1370 is not set +# CONFIG_SND_ENS1371 is not set +# CONFIG_SND_ES1938 is not set +# CONFIG_SND_ES1968 is not set +# CONFIG_SND_FM801 is not set +# CONFIG_SND_HDA_INTEL is not set +# CONFIG_SND_HDSP is not set +# CONFIG_SND_HDSPM is not set +# CONFIG_SND_ICE1712 is not set +# CONFIG_SND_ICE1724 is not set +# CONFIG_SND_INTEL8X0 is not set +# CONFIG_SND_INTEL8X0M is not set +# CONFIG_SND_KORG1212 is not set +# CONFIG_SND_MAESTRO3 is not set +# CONFIG_SND_MIXART is not set +# CONFIG_SND_NM256 is not set +# CONFIG_SND_PCXHR is not set +# CONFIG_SND_RIPTIDE is not set +# CONFIG_SND_RME32 is not set +# CONFIG_SND_RME96 is not set +# CONFIG_SND_RME9652 is not set +# CONFIG_SND_SONICVIBES is not set +# CONFIG_SND_TRIDENT is not set +# CONFIG_SND_VIA82XX is not set +# CONFIG_SND_VIA82XX_MODEM is not set +# CONFIG_SND_VX222 is not set +# CONFIG_SND_YMFPCI is not set + +# +# ALSA MIPS devices +# + +# +# USB devices +# +CONFIG_SND_USB_AUDIO=m +# CONFIG_SND_USB_CAIAQ is not set + +# +# System on Chip audio support +# +# CONFIG_SND_SOC is not set + +# +# Open Sound System +# +# CONFIG_SOUND_PRIME is not set + +# +# HID Devices +# +CONFIG_HID=m +# CONFIG_HID_DEBUG is not set + +# +# USB Input Devices +# +CONFIG_USB_HID=m +# CONFIG_USB_HIDINPUT_POWERBOOK is not set +# CONFIG_HID_FF is not set +CONFIG_USB_HIDDEV=y + +# +# USB HID Boot Protocol drivers +# +CONFIG_USB_KBD=m +CONFIG_USB_MOUSE=m +CONFIG_USB_SUPPORT=y +CONFIG_USB_ARCH_HAS_HCD=y +CONFIG_USB_ARCH_HAS_OHCI=y +CONFIG_USB_ARCH_HAS_EHCI=y +CONFIG_USB=m +# CONFIG_USB_DEBUG is not set +# CONFIG_USB_ANNOUNCE_NEW_DEVICES is not set + +# +# Miscellaneous USB options +# +CONFIG_USB_DEVICEFS=y +CONFIG_USB_DEVICE_CLASS=y +# CONFIG_USB_DYNAMIC_MINORS is not set +# CONFIG_USB_OTG is not set + +# +# USB Host Controller Drivers +# +CONFIG_USB_EHCI_HCD=m +CONFIG_USB_EHCI_ROOT_HUB_TT=y +CONFIG_USB_EHCI_TT_NEWSCHED=y +# CONFIG_USB_ISP116X_HCD is not set +CONFIG_USB_OHCI_HCD=m +# CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set +# CONFIG_USB_OHCI_BIG_ENDIAN_MMIO is not set +CONFIG_USB_OHCI_LITTLE_ENDIAN=y +CONFIG_USB_UHCI_HCD=m +# CONFIG_USB_SL811_HCD is not set +# CONFIG_USB_R8A66597_HCD is not set + +# +# USB Device Class drivers +# +CONFIG_USB_ACM=m +CONFIG_USB_PRINTER=m + +# +# NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' +# + +# +# may also be needed; see USB_STORAGE Help for more information +# +CONFIG_USB_STORAGE=m +# CONFIG_USB_STORAGE_DEBUG is not set +# CONFIG_USB_STORAGE_DATAFAB is not set +# CONFIG_USB_STORAGE_FREECOM is not set +# CONFIG_USB_STORAGE_DPCM is not set +# CONFIG_USB_STORAGE_USBAT is not set +# CONFIG_USB_STORAGE_SDDR09 is not set +# CONFIG_USB_STORAGE_SDDR55 is not set +# CONFIG_USB_STORAGE_JUMPSHOT is not set +# CONFIG_USB_STORAGE_ALAUDA is not set +# CONFIG_USB_STORAGE_ONETOUCH is not set +# CONFIG_USB_STORAGE_KARMA is not set +# CONFIG_USB_LIBUSUAL is not set + +# +# USB Imaging devices +# +# CONFIG_USB_MDC800 is not set +# CONFIG_USB_MICROTEK is not set +# CONFIG_USB_MON is not set + +# +# USB port drivers +# +CONFIG_USB_SERIAL=m +# CONFIG_USB_EZUSB is not set +CONFIG_USB_SERIAL_GENERIC=y +# CONFIG_USB_SERIAL_AIRCABLE is not set +# CONFIG_USB_SERIAL_AIRPRIME is not set +# CONFIG_USB_SERIAL_ARK3116 is not set +# CONFIG_USB_SERIAL_BELKIN is not set +# CONFIG_USB_SERIAL_WHITEHEAT is not set +# CONFIG_USB_SERIAL_DIGI_ACCELEPORT is not set +# CONFIG_USB_SERIAL_CP2101 is not set +# CONFIG_USB_SERIAL_CYPRESS_M8 is not set +# CONFIG_USB_SERIAL_EMPEG is not set +CONFIG_USB_SERIAL_FTDI_SIO=m +# CONFIG_USB_SERIAL_FUNSOFT is not set +# CONFIG_USB_SERIAL_VISOR is not set +# CONFIG_USB_SERIAL_IPAQ is not set +# CONFIG_USB_SERIAL_IR is not set +# CONFIG_USB_SERIAL_EDGEPORT is not set +# CONFIG_USB_SERIAL_EDGEPORT_TI is not set +# CONFIG_USB_SERIAL_GARMIN is not set +# CONFIG_USB_SERIAL_IPW is not set +# CONFIG_USB_SERIAL_KEYSPAN_PDA is not set +# CONFIG_USB_SERIAL_KEYSPAN is not set +# CONFIG_USB_SERIAL_KLSI is not set +# CONFIG_USB_SERIAL_KOBIL_SCT is not set +# CONFIG_USB_SERIAL_MCT_U232 is not set +# CONFIG_USB_SERIAL_MOS7720 is not set +# CONFIG_USB_SERIAL_MOS7840 is not set +# CONFIG_USB_SERIAL_NAVMAN is not set +CONFIG_USB_SERIAL_PL2303=m +# CONFIG_USB_SERIAL_OTI6858 is not set +# CONFIG_USB_SERIAL_HP4X is not set +# CONFIG_USB_SERIAL_SAFE is not set +CONFIG_USB_SERIAL_SIERRAWIRELESS=m +# CONFIG_USB_SERIAL_TI is not set +# CONFIG_USB_SERIAL_CYBERJACK is not set +# CONFIG_USB_SERIAL_XIRCOM is not set +CONFIG_USB_SERIAL_OPTION=m +# CONFIG_USB_SERIAL_OMNINET is not set +# CONFIG_USB_SERIAL_DEBUG is not set + +# +# USB Miscellaneous drivers +# +# CONFIG_USB_EMI62 is not set +# CONFIG_USB_EMI26 is not set +# CONFIG_USB_ADUTUX is not set +# CONFIG_USB_AUERSWALD is not set +# CONFIG_USB_RIO500 is not set +# CONFIG_USB_LEGOTOWER is not set +# CONFIG_USB_LCD is not set +# CONFIG_USB_LED is not set +# CONFIG_USB_CYPRESS_CY7C63 is not set +# CONFIG_USB_CYTHERM is not set +# CONFIG_USB_PHIDGET is not set +# CONFIG_USB_IDMOUSE is not set +# CONFIG_USB_FTDI_ELAN is not set +# CONFIG_USB_APPLEDISPLAY is not set +# CONFIG_USB_SISUSBVGA is not set +# CONFIG_USB_LD is not set +# CONFIG_USB_TRANCEVIBRATOR is not set +# CONFIG_USB_IOWARRIOR is not set +# CONFIG_USB_TEST is not set +# CONFIG_USB_GADGET is not set +CONFIG_USB_IP_COMMON=m +# CONFIG_USB_IP_VHCI_HCD is not set +CONFIG_USB_IP_HOST=m +# CONFIG_USB_IP_DEBUG_ENABLE is not set +CONFIG_MMC=m +# CONFIG_MMC_DEBUG is not set +# CONFIG_MMC_UNSAFE_RESUME is not set + +# +# MMC/SD Card Drivers +# +CONFIG_MMC_BLOCK=m + +# +# MMC/SD Host Controller Drivers +# +CONFIG_MMC_SDHCI=m +# CONFIG_MMC_TIFM_SD is not set + +# +# LED devices +# +CONFIG_NEW_LEDS=y +CONFIG_LEDS_CLASS=m + +# +# LED drivers +# +CONFIG_LEDS_USBGPIO=m + +# +# LED Triggers +# +CONFIG_LEDS_TRIGGERS=y +# CONFIG_LEDS_TRIGGER_TIMER is not set +# CONFIG_LEDS_TRIGGER_HEARTBEAT is not set +CONFIG_LEDS_TRIGGER_USBDEV=m + +# +# InfiniBand support +# +# CONFIG_INFINIBAND is not set + +# +# EDAC - error detection and reporting (RAS) (EXPERIMENTAL) +# + +# +# Real Time Clock +# +# CONFIG_RTC_CLASS is not set + +# +# DMA Engine support +# +# CONFIG_DMA_ENGINE is not set + +# +# DMA Clients +# + +# +# DMA Devices +# + +# +# File systems +# +CONFIG_EXT2_FS=m +CONFIG_EXT2_FS_XATTR=y +# CONFIG_EXT2_FS_POSIX_ACL is not set +# CONFIG_EXT2_FS_SECURITY is not set +# CONFIG_EXT2_FS_XIP is not set +CONFIG_EXT3_FS=m +CONFIG_EXT3_FS_XATTR=y +# CONFIG_EXT3_FS_POSIX_ACL is not set +# CONFIG_EXT3_FS_SECURITY is not set +# CONFIG_EXT4DEV_FS is not set +CONFIG_JBD=m +# CONFIG_JBD_DEBUG is not set +CONFIG_FS_MBCACHE=m +CONFIG_REISERFS_FS=m +# CONFIG_REISERFS_CHECK is not set +CONFIG_REISERFS_PROC_INFO=y +CONFIG_REISERFS_FS_XATTR=y +# CONFIG_REISERFS_FS_POSIX_ACL is not set +# CONFIG_REISERFS_FS_SECURITY is not set +CONFIG_JFS_FS=m +# CONFIG_JFS_POSIX_ACL is not set +# CONFIG_JFS_SECURITY is not set +# CONFIG_JFS_DEBUG is not set +CONFIG_JFS_STATISTICS=y +# CONFIG_FS_POSIX_ACL is not set +CONFIG_XFS_FS=m +# CONFIG_XFS_QUOTA is not set +# CONFIG_XFS_SECURITY is not set +# CONFIG_XFS_POSIX_ACL is not set +# CONFIG_XFS_RT is not set +# CONFIG_GFS2_FS is not set +# CONFIG_OCFS2_FS is not set +# CONFIG_MINIX_FS is not set +# CONFIG_ROMFS_FS is not set +CONFIG_INOTIFY=y +CONFIG_INOTIFY_USER=y +# CONFIG_QUOTA is not set +CONFIG_DNOTIFY=y +# CONFIG_AUTOFS_FS is not set +# CONFIG_AUTOFS4_FS is not set +CONFIG_FUSE_FS=m + +# +# CD-ROM/DVD Filesystems +# +# CONFIG_ISO9660_FS is not set +# CONFIG_UDF_FS is not set + +# +# DOS/FAT/NT Filesystems +# +CONFIG_FAT_FS=m +# CONFIG_MSDOS_FS is not set +CONFIG_VFAT_FS=m +CONFIG_FAT_DEFAULT_CODEPAGE=437 +CONFIG_FAT_DEFAULT_IOCHARSET="utf8" +# CONFIG_NTFS_FS is not set + +# +# Pseudo filesystems +# +CONFIG_PROC_FS=y +# CONFIG_PROC_KCORE is not set +CONFIG_PROC_SYSCTL=y +CONFIG_SYSFS=y +CONFIG_TMPFS=y +# CONFIG_TMPFS_POSIX_ACL is not set +# CONFIG_HUGETLB_PAGE is not set +CONFIG_RAMFS=y +CONFIG_CONFIGFS_FS=y + +# +# Miscellaneous filesystems +# +# CONFIG_ADFS_FS is not set +# CONFIG_AFFS_FS is not set +CONFIG_HFS_FS=m +CONFIG_HFSPLUS_FS=m +# CONFIG_BEFS_FS is not set +# CONFIG_BFS_FS is not set +# CONFIG_EFS_FS is not set +CONFIG_JFFS_FS=m +CONFIG_JFFS_FS_VERBOSE=0 +# CONFIG_JFFS_PROC_FS is not set +CONFIG_JFFS2_FS=m +CONFIG_JFFS2_FS_DEBUG=0 +CONFIG_JFFS2_FS_WRITEBUFFER=y +# CONFIG_JFFS2_SUMMARY is not set +# CONFIG_JFFS2_FS_XATTR is not set +CONFIG_JFFS2_COMPRESSION_OPTIONS=y +CONFIG_JFFS2_ZLIB=y +# CONFIG_JFFS2_LZO is not set +# CONFIG_JFFS2_RTIME is not set +# CONFIG_JFFS2_RUBIN is not set +# CONFIG_JFFS2_CMODE_NONE is not set +CONFIG_JFFS2_CMODE_PRIORITY=y +# CONFIG_JFFS2_CMODE_SIZE is not set +# CONFIG_CRAMFS is not set +CONFIG_SQUASHFS=y +# CONFIG_SQUASHFS_EMBEDDED is not set +CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE=3 +# CONFIG_SQUASHFS_VMALLOC is not set +# CONFIG_VXFS_FS is not set +# CONFIG_HPFS_FS is not set +# CONFIG_QNX4FS_FS is not set +# CONFIG_SYSV_FS is not set +# CONFIG_UFS_FS is not set + +# +# Network File Systems +# +CONFIG_NFS_FS=m +CONFIG_NFS_V3=y +# CONFIG_NFS_V3_ACL is not set +# CONFIG_NFS_V4 is not set +# CONFIG_NFS_DIRECTIO is not set +CONFIG_NFSD=m +CONFIG_NFSD_V3=y +# CONFIG_NFSD_V3_ACL is not set +# CONFIG_NFSD_V4 is not set +CONFIG_NFSD_TCP=y +CONFIG_LOCKD=m +CONFIG_LOCKD_V4=y +CONFIG_EXPORTFS=m +CONFIG_NFS_COMMON=y +CONFIG_SUNRPC=m +CONFIG_SUNRPC_BIND34=y +# CONFIG_RPCSEC_GSS_KRB5 is not set +# CONFIG_RPCSEC_GSS_SPKM3 is not set +# CONFIG_SMB_FS is not set +CONFIG_CIFS=m +# CONFIG_CIFS_STATS is not set +CONFIG_CIFS_WEAK_PW_HASH=y +# CONFIG_CIFS_XATTR is not set +# CONFIG_CIFS_DEBUG2 is not set +# CONFIG_CIFS_EXPERIMENTAL is not set +# CONFIG_NCP_FS is not set +# CONFIG_CODA_FS is not set +# CONFIG_AFS_FS is not set +# CONFIG_9P_FS is not set + +# +# Partition Types +# +CONFIG_PARTITION_ADVANCED=y +# CONFIG_ACORN_PARTITION is not set +# CONFIG_OSF_PARTITION is not set +# CONFIG_AMIGA_PARTITION is not set +# CONFIG_ATARI_PARTITION is not set +# CONFIG_MAC_PARTITION is not set +CONFIG_MSDOS_PARTITION=y +# CONFIG_BSD_DISKLABEL is not set +# CONFIG_MINIX_SUBPARTITION is not set +# CONFIG_SOLARIS_X86_PARTITION is not set +# CONFIG_UNIXWARE_DISKLABEL is not set +# CONFIG_LDM_PARTITION is not set +# CONFIG_SGI_PARTITION is not set +# CONFIG_ULTRIX_PARTITION is not set +# CONFIG_SUN_PARTITION is not set +# CONFIG_KARMA_PARTITION is not set +CONFIG_EFI_PARTITION=y +# CONFIG_SYSV68_PARTITION is not set + +# +# Native Language Support +# +CONFIG_NLS=y +CONFIG_NLS_DEFAULT="utf8" +CONFIG_NLS_CODEPAGE_437=m +# CONFIG_NLS_CODEPAGE_737 is not set +# CONFIG_NLS_CODEPAGE_775 is not set +CONFIG_NLS_CODEPAGE_850=m +CONFIG_NLS_CODEPAGE_852=m +# CONFIG_NLS_CODEPAGE_855 is not set +# CONFIG_NLS_CODEPAGE_857 is not set +# CONFIG_NLS_CODEPAGE_860 is not set +# CONFIG_NLS_CODEPAGE_861 is not set +# CONFIG_NLS_CODEPAGE_862 is not set +# CONFIG_NLS_CODEPAGE_863 is not set +# CONFIG_NLS_CODEPAGE_864 is not set +# CONFIG_NLS_CODEPAGE_865 is not set +CONFIG_NLS_CODEPAGE_866=m +# CONFIG_NLS_CODEPAGE_869 is not set +CONFIG_NLS_CODEPAGE_936=m +CONFIG_NLS_CODEPAGE_950=m +CONFIG_NLS_CODEPAGE_932=m +CONFIG_NLS_CODEPAGE_949=m +# CONFIG_NLS_CODEPAGE_874 is not set +# CONFIG_NLS_ISO8859_8 is not set +# CONFIG_NLS_CODEPAGE_1250 is not set +# CONFIG_NLS_CODEPAGE_1251 is not set +# CONFIG_NLS_ASCII is not set +# CONFIG_NLS_ISO8859_1 is not set +# CONFIG_NLS_ISO8859_2 is not set +# CONFIG_NLS_ISO8859_3 is not set +# CONFIG_NLS_ISO8859_4 is not set +# CONFIG_NLS_ISO8859_5 is not set +# CONFIG_NLS_ISO8859_6 is not set +# CONFIG_NLS_ISO8859_7 is not set +# CONFIG_NLS_ISO8859_9 is not set +# CONFIG_NLS_ISO8859_13 is not set +# CONFIG_NLS_ISO8859_14 is not set +# CONFIG_NLS_ISO8859_15 is not set +# CONFIG_NLS_KOI8_R is not set +# CONFIG_NLS_KOI8_U is not set +CONFIG_NLS_UTF8=y + +# +# Distributed Lock Manager +# +# CONFIG_DLM is not set + +# +# Profiling support +# +# CONFIG_PROFILING is not set + +# +# Kernel hacking +# +CONFIG_TRACE_IRQFLAGS_SUPPORT=y +# CONFIG_PRINTK_TIME is not set +CONFIG_ENABLE_MUST_CHECK=y +CONFIG_MAGIC_SYSRQ=y +# CONFIG_UNUSED_SYMBOLS is not set +# CONFIG_DEBUG_FS is not set +# CONFIG_HEADERS_CHECK is not set +# CONFIG_DEBUG_KERNEL is not set +# CONFIG_HWSIM is not set +CONFIG_CROSSCOMPILE=y +CONFIG_CMDLINE="root=/dev/mtdblock2 noinitrd console=ttyS0,115200" +CONFIG_SYS_SUPPORTS_KGDB=y + +# +# Security options +# +# CONFIG_KEYS is not set +# CONFIG_SECURITY is not set + +# +# Cryptographic options +# +CONFIG_CRYPTO=y +CONFIG_CRYPTO_ALGAPI=y +CONFIG_CRYPTO_BLKCIPHER=y +CONFIG_CRYPTO_HASH=y +CONFIG_CRYPTO_MANAGER=y +CONFIG_CRYPTO_HMAC=y +CONFIG_CRYPTO_XCBC=m +CONFIG_CRYPTO_NULL=m +CONFIG_CRYPTO_MD4=m +CONFIG_CRYPTO_MD5=m +CONFIG_CRYPTO_SHA1=y +CONFIG_CRYPTO_SHA256=m +CONFIG_CRYPTO_SHA512=m +# CONFIG_CRYPTO_WP512 is not set +# CONFIG_CRYPTO_TGR192 is not set +# CONFIG_CRYPTO_GF128MUL is not set +CONFIG_CRYPTO_ECB=y +CONFIG_CRYPTO_CBC=y +# CONFIG_CRYPTO_PCBC is not set +# CONFIG_CRYPTO_LRW is not set +# CONFIG_CRYPTO_CRYPTD is not set +CONFIG_CRYPTO_DES=m +# CONFIG_CRYPTO_FCRYPT is not set +CONFIG_CRYPTO_BLOWFISH=m +CONFIG_CRYPTO_TWOFISH=m +CONFIG_CRYPTO_TWOFISH_COMMON=m +CONFIG_CRYPTO_SERPENT=m +CONFIG_CRYPTO_AES=m +CONFIG_CRYPTO_CAST5=m +CONFIG_CRYPTO_CAST6=m +CONFIG_CRYPTO_TEA=m +CONFIG_CRYPTO_ARC4=y +# CONFIG_CRYPTO_KHAZAD is not set +# CONFIG_CRYPTO_ANUBIS is not set +CONFIG_CRYPTO_DEFLATE=m +# CONFIG_CRYPTO_MICHAEL_MIC is not set +# CONFIG_CRYPTO_CRC32C is not set +# CONFIG_CRYPTO_CAMELLIA is not set +# CONFIG_CRYPTO_TEST is not set + +# +# Hardware crypto devices +# + +# +# Library routines +# +CONFIG_BITREVERSE=y +CONFIG_CRC_CCITT=y +# CONFIG_CRC16 is not set +# CONFIG_CRC_ITU_T is not set +CONFIG_CRC32=y +# CONFIG_LIBCRC32C is not set +CONFIG_ZLIB_INFLATE=m +CONFIG_ZLIB_DEFLATE=m +CONFIG_TEXTSEARCH=y +CONFIG_TEXTSEARCH_KMP=y +CONFIG_TEXTSEARCH_BM=y +CONFIG_TEXTSEARCH_FSM=y +CONFIG_PLIST=y +CONFIG_HAS_IOMEM=y +CONFIG_HAS_IOPORT=y +CONFIG_HAS_DMA=y diff --git a/release/src-rt/linux/linux-2.6/Makefile b/release/src-rt/linux/linux-2.6/Makefile index 22e3786a9e..30accc817e 100644 --- a/release/src-rt/linux/linux-2.6/Makefile +++ b/release/src-rt/linux/linux-2.6/Makefile @@ -542,11 +542,9 @@ CFLAGS += $(call cc-option,-fno-strict-overflow) CFLAGS += $(call cc-option,-fno-dwarf2-cfi-asm) ifneq ($(CONFIG_BCM_CTF),) -CFLAGS += -DHNDCTF +CFLAGS += -DHNDCTF -DCTFPOOL -DCTFMAP ifneq ($(CONFIG_WL_USBAP),) CFLAGS += -DCTFPOOL_SPINLOCK -else -CFLAGS += -DCTFPOOL -DCTFMAP endif endif @@ -554,6 +552,15 @@ ifdef CONFIG_PLC CFLAGS += -DPLC endif +#netgear 3500v2 +ifeq ($(CONFIG_MTD_NFLASH),y) +CFLAGS += -DNFLASH_SUPPORT +endif + +ifeq ($(CONFIG_NVRAM_64K),y) +CFLAGS += -DNVRAM_64K_SUPPORT +endif + # Default kernel image to build when no specific target is given. # KBUILD_IMAGE may be overruled on the command line or # set in the environment diff --git a/release/src-rt/linux/linux-2.6/arch/mips/Kconfig b/release/src-rt/linux/linux-2.6/arch/mips/Kconfig index cf901e5479..15758a1cc7 100644 --- a/release/src-rt/linux/linux-2.6/arch/mips/Kconfig +++ b/release/src-rt/linux/linux-2.6/arch/mips/Kconfig @@ -717,6 +717,10 @@ config GENERIC_GPIO bool "Generic GPIO" default n +config NVRAM_64K + bool "Support nvram 64K" + default n + endmenu diff --git a/release/src-rt/linux/linux-2.6/arch/mips/brcm-boards/bcm947xx/Makefile b/release/src-rt/linux/linux-2.6/arch/mips/brcm-boards/bcm947xx/Makefile index 3f01069dd5..088a31a105 100644 --- a/release/src-rt/linux/linux-2.6/arch/mips/brcm-boards/bcm947xx/Makefile +++ b/release/src-rt/linux/linux-2.6/arch/mips/brcm-boards/bcm947xx/Makefile @@ -17,6 +17,10 @@ SHARED := ../../../../../../shared BCM947XX_OBJS = $(addprefix $(SHARED)/, hndmips.o hndchipc.o linux_gpio.o sflash.o) BCM947XX_OBJS += $(addprefix $(SHARED)/nvram/, nvram.o) +ifeq ($(CONFIG_MTD_NFLASH),y) +BCM947XX_OBJS += $(addprefix $(SHARED)/, nflash.o) +endif + EXTRA_CFLAGS += -DLINUX_HYBRID_POSTPROCESSING_REMOVAL ifeq ($(CONFIG_PCI),y) diff --git a/release/src-rt/linux/linux-2.6/arch/mips/brcm-boards/bcm947xx/nvram_linux.c b/release/src-rt/linux/linux-2.6/arch/mips/brcm-boards/bcm947xx/nvram_linux.c index ed4477a70b..2965f1972d 100644 --- a/release/src-rt/linux/linux-2.6/arch/mips/brcm-boards/bcm947xx/nvram_linux.c +++ b/release/src-rt/linux/linux-2.6/arch/mips/brcm-boards/bcm947xx/nvram_linux.c @@ -23,6 +23,7 @@ #include #include #include +//#include #include #include #include @@ -37,11 +38,46 @@ #include #include #include +#include +#ifdef NFLASH_SUPPORT +#include +#endif /* In BSS to minimize text size and page aligned so it can be mmap()-ed */ static char nvram_buf[NVRAM_SPACE] __attribute__((aligned(PAGE_SIZE))); static char *nvram_commit_buf = NULL; +//#define CFE_UPDATE // added by Chen-I for mac/regulation update +#ifdef CFE_UPDATE +//#include + +extern void bcm947xx_watchdog_disable(void); + +#define CFE_SPACE 256*1024 +#define CFE_NVRAM_START 0x00000 +#define CFE_NVRAM_END 0x01fff +#define CFE_NVRAM_SPACE 64*1024 +static struct mtd_info *cfe_mtd = NULL; +static char *CFE_NVRAM_PREFIX="asuscfe"; +static char *CFE_NVRAM_COMMIT="asuscfecommit"; +static char *CFE_NVRAM_WATCHDOG="asuscfewatchdog"; +char *cfe_buf;// = NULL; +struct nvram_header *cfe_nvram_header; // = NULL; + +static u_int32_t cfe_offset; +static u_int32_t cfe_embedded_size; +static int get_embedded_block(struct mtd_info *mtd, char *buf, size_t erasesize, + u_int32_t *offset, struct nvram_header **header, u_int32_t *emb_size); + +static int cfe_init(void); +static int cfe_update(const char *keyword, const char *value); +static int cfe_dump(void); +static int cfe_commit(void); +#endif + + +#define WPS 0 + #ifdef MODULE #define early_nvram_get(name) nvram_get(name) @@ -49,7 +85,7 @@ static char *nvram_commit_buf = NULL; #else /* !MODULE */ /* Global SB handle */ -extern void *bcm947xx_sih; +extern si_t *bcm947xx_sih; extern spinlock_t bcm947xx_sih_lock; /* Convenience */ @@ -58,6 +94,214 @@ extern spinlock_t bcm947xx_sih_lock; #define KB * 1024 #define MB * 1024 * 1024 +//#define NLS_XFR 1 /* added by Jiahao for WL500gP */ +#ifdef NLS_XFR + +#include + +static char *NLS_NVRAM_U2C="asusnlsu2c"; +static char *NLS_NVRAM_C2U="asusnlsc2u"; +__u16 unibuf[1024]; +char codebuf[1024]; +char tmpbuf[1024]; + +void +asusnls_u2c(char *name) +{ + char *codepage; + char *xfrstr; + struct nls_table *nls; + int ret, len; + + strcpy(codebuf, name); + codepage=codebuf+strlen(NLS_NVRAM_U2C); + if((xfrstr=strchr(codepage, '_'))) + { + *xfrstr=NULL; + xfrstr++; + /* debug message, start */ +/* + printk("%s, xfr from utf8 to %s\n", xfrstr, codepage); + int j; + printk("utf8: %d, ", strlen(xfrstr)); + for(j=0;juni2char(unibuf[i], &name[len], NLS_MAX_CHARSET_SIZE); + if (charlen > 0) { + len += charlen; + } + else { + //name[len++] = '?'; + strcpy(name, ""); + unload_nls(nls); + return; + } + } + name[len] = 0; + } + unload_nls(nls); + /* debug message, start */ +/* + int i; + printk("unicode: %d, ", ret); + for (i=0;ichar2uni(xfrstr, len, &unibuf[i]); + if (charlen < 1) { + //unibuf[i] = 0x003f; /* a question mark */ + //charlen = 1; + strcpy(name ,""); + unload_nls(nls); + return; + } + } + unibuf[i] = 0; + ret=utf8_wcstombs(name, unibuf, 1024); /* unicode to utf-8, 1024 is size of array unibuf */ + name[ret]=0; + unload_nls(nls); + /* debug message, start */ +/* + int k; + printk("unicode: %d, ", i); + for(k=0;kccrev >= 38) && ((sih->chipst & (1 << 4)) != 0)) { + fltype = NFLASH; + base = KSEG1ADDR(SI_FLASH1); + } else { + fltype = readl(&cc->capabilities) & CC_CAP_FLASH_MASK; + base = KSEG1ADDR(SI_FLASH2); + } + switch (fltype) +#else base = KSEG1ADDR(SI_FLASH2); + switch (readl(&cc->capabilities) & CC_CAP_FLASH_MASK) +#endif switch (readl(&cc->capabilities) & CC_CAP_FLASH_MASK) { case PFLASH: lim = SI_FLASH2_SZ; @@ -93,7 +354,13 @@ early_nvram_init(void) return -1; lim = info->size; break; - +#ifdef NFLASH_SUPPORT + case NFLASH: + if ((nfl_info = nflash_init(sih, cc)) == NULL) + return -1; + lim = SI_FLASH1_SZ; + break; +#endif case FLASH_NONE: default: return -1; @@ -103,15 +370,46 @@ early_nvram_init(void) base = KSEG1ADDR(SI_FLASH1); lim = SI_FLASH1_SZ; } +#ifdef NFLASH_SUPPORT + if (nfl_info != NULL) { + blocksize = nfl_info->blocksize; + off = blocksize; + while (off <= lim) { + if (nflash_checkbadb(sih, cc, off) != 0) { + off += blocksize; + continue; + } + header = (struct nvram_header *) KSEG1ADDR(base + off); + if (header->magic == NVRAM_MAGIC) + if (nvram_calc_crc(header) == (uint8) header->crc_ver_init) { + goto found; + } + off += blocksize; + } + } else { +#endif - off = FLASH_MIN; - while (off <= lim) { - /* Windowed flash access */ - header = (struct nvram_header *) KSEG1ADDR(base + off - NVRAM_SPACE); - if (nvram_valid(header)) - goto found; - off <<= 1; - } + off = FLASH_MIN; + +#ifdef NVRAM_64K_SUPPORT + header = (struct nvram_header *) KSEG1ADDR(base + lim - 0x8000); + if(header->magic==0xffffffff) { + header = (struct nvram_header *) KSEG1ADDR(base + 1 KB); + if (nvram_valid(header)) + goto found; + } +#endif + + while (off <= lim) { + /* Windowed flash access */ + header = (struct nvram_header *) KSEG1ADDR(base + off - NVRAM_SPACE); + if (nvram_valid(header)) + goto found; + off <<= 1; + } +#ifdef NFLASH_SUPPORT + } +#endif /* Try embedded NVRAM at 4 KB and 1 KB as last resorts */ header = (struct nvram_header *) KSEG1ADDR(base + 4 KB); @@ -223,6 +521,22 @@ _nvram_read(char *buf) struct nvram_header *header = (struct nvram_header *) buf; size_t len; +#ifdef NFLASH_SUPPORT + int offset = 0; + if (nvram_mtd) { + if (nvram_mtd->type == MTD_NANDFLASH) + offset = 0; + else + offset = nvram_mtd->size - NVRAM_SPACE; + } + if (!nvram_mtd || + nvram_mtd->read(nvram_mtd, offset, NVRAM_SPACE, &len, buf) || + len != NVRAM_SPACE || + !nvram_valid(header)) { + /* Maybe we can recover some data from early initialization */ + memcpy(buf, nvram_buf, NVRAM_SPACE); + } +#else if (!nvram_mtd || nvram_mtd->read(nvram_mtd, nvram_mtd->size - NVRAM_SPACE, NVRAM_SPACE, &len, buf) || len != NVRAM_SPACE || @@ -230,6 +544,7 @@ _nvram_read(char *buf) /* Maybe we can recover some data from early initialization */ memcpy(buf, nvram_buf, NVRAM_SPACE); } +#endif return 0; } @@ -282,8 +597,174 @@ nvram_set(const char *name, const char *value) unsigned long flags; int ret; struct nvram_header *header; +#if WPS + char wps_name[32]; + int wep_len; +#endif spin_lock_irqsave(&nvram_lock, flags); + + //printk("nvram_set: name = %s, value = %s!\n", name, value); +#ifdef CFE_UPDATE //write back to default sector as well, Chen-I + if(strncmp(name, CFE_NVRAM_PREFIX, strlen(CFE_NVRAM_PREFIX))==0) + { + if(strcmp(name, CFE_NVRAM_COMMIT)==0) + cfe_commit(); + else if(strcmp(name, "asuscfe_dump") == 0) + ret = cfe_dump(); + else if(strcmp(name, CFE_NVRAM_WATCHDOG)==0) + { + bcm947xx_watchdog_disable(); + } + else + { + cfe_update(name+strlen(CFE_NVRAM_PREFIX), value); + _nvram_set(name+strlen(CFE_NVRAM_PREFIX), value); + } + } + else +#endif + +#if WPS + if (strncmp(name, "wlx_", 4) == 0) { + memset(wps_name, 0, sizeof(wps_name)); + sprintf(wps_name, "wl0_%s", name+4); + ret = _nvram_set(wps_name, value); + spin_unlock_irqrestore(&nvram_lock, flags); + return ret; + } + + if (strncmp(name, "wl0_", 4) == 0) + { + /* Authentication mode */ + if (strncmp(name, "wl0_akm", 7) == 0) { + if (strncmp(value, "psk2", 4) == 0) { // WPA2-Personal + _nvram_set("wl_auth_mode", "psk"); + _nvram_set("wl_wpa_mode", "2"); + } + else if (strncmp(value, "psk ", 4) == 0) { // WPA-Auto-Personal + _nvram_set("wl_auth_mode", "psk"); + _nvram_set("wl_wpa_mode", "0"); + } + else if (strncmp(value, "psk", 3) == 0) { // WPA-Personal + _nvram_set("wl_auth_mode", "psk"); + _nvram_set("wl_wpa_mode", "1"); + } + else if (strncmp(value, "wpa2", 4) == 0) { // WPA2-Enterprise + _nvram_set("wl_auth_mode", "wpa2"); + } + else if (strncmp(value, "wpa ", 4) == 0) { // WPA-Auto-Enterprise + _nvram_set("wl_wpa_mode", "4"); + _nvram_set("wl_auth_mode", "wpa"); + } + else if (strncmp(value, "wpa", 3) == 0) { // WPA-Enterprise + _nvram_set("wl_wpa_mode", "3"); + _nvram_set("wl_auth_mode", "wpa"); + } + _nvram_set("wl_akm", value); + } + /* WPS KEY*/ + else if (strcmp(name, "wl0_wpa_psk") == 0) { + _nvram_set("wl_wpa_psk", value); + } + /* WEP type */ +#if 1 + else if ((strncmp(name, "wl0_key", 7) == 0 )) { + + wep_len = strlen (value); + memset(wps_name, 0, sizeof(wps_name)); + + if ((wep_len == 5) || (wep_len == 10)) { /* wl0_key1~4*/ +// _nvram_set ("wl0_wep_x", "1"); + _nvram_set ("wl_wep_x", "1"); + sprintf(wps_name, "wl_%s", name+4); + } + else if ((wep_len == 13) || (wep_len == 26)) { +// _nvram_set ("wl0_wep_x", "2"); + _nvram_set ("wl_wep_x", "2"); + sprintf(wps_name, "wl_%s", name+4); + } + else { /* wl0_key index */ + sprintf(wps_name, "wl_%s", name+4); + } + _nvram_set(wps_name, value); + } +#endif + else if (strcmp(name, "wl0_ssid") == 0) { + // _nvram_set("wl0_ssid2", value); + // _nvram_set("wl_ssid2", value); + _nvram_set("wl_ssid", value); + } + else if (strcmp(name, "wl0_crypto") == 0) { + _nvram_set("wl_crypto", value); + } + else if (strncmp(name, "wl0_wps", 7) == 0) { + memset(wps_name, 0, sizeof(wps_name)); + sprintf(wps_name, "wl_%s", name+4); + _nvram_set(wps_name, value); + } + + } + else if (strncmp(name, "wps_random_ssid_prefix", 22) == 0) { + memset(wps_name, 0, sizeof(wps_name)); + sprintf(wps_name, "ASUS_"); + ret = _nvram_set("wps_random_ssid_prefix", wps_name); + spin_unlock_irqrestore(&nvram_lock, flags); + return ret; + } + + if (strcmp(name, "lan_wps_oob") == 0) { + if (strcmp(value, "disabled") == 0) { + _nvram_set("wps_config_state", "1"); + _nvram_set("wl_wps_config_state", "1"); + _nvram_set("wl0_wps_config_state", "1"); + } else if (strcmp(value, "enabled") == 0) { + _nvram_set("wps_config_state", "0"); + _nvram_set("wl_wps_config_state", "0"); + _nvram_set("wl0_wps_config_state", "0"); + } + } + + if (strcmp(name, "wps_config_state") == 0) { + if (strcmp(value, "0") == 0) + _nvram_set("lan_wps_oob", "enabled"); + else if (strcmp(value, "1") == 0) + _nvram_set("lan_wps_oob", "disabled"); + } + + if ((strcmp(name, "wl_wps_config_state") == 0) || (strcmp(name, "wl0_wps_config_state") == 0)) + _nvram_set("wps_config_state", value); + + +// else if ((strncmp(name, "wps_proc_status", 15) == 0 ) && (strcmp(value, "4"))) /* WPS success*/ +// _nvram_set("wps_config_state", "1"); + +#if 0 + if(!strcmp(name, "wl0_ssid")) + _nvram_set("wl_ssid", value); + if(!strcmp(name, "wl0_ssid")) + _nvram_set("wl_ssid", value); + /* Set Wireless encryption */ + if (!strcmp(name, "wl0_akm")) { + _nvram_set("wl_auth_mode", "psk"); + _nvram_set("wl_wpa_mode", "1"); + } + else if (!strcmp("wl0_akm", "psk2")) { + _nvram_set("wl_auth_mode", "psk"); + _nvram_set("wl_wpa_mode", "2"); + } + else if (nvram_match("wl0_akm", "wpa")) { + _nvram_set("wl_auth_mode", "wpa"); + _nvram_set("wl_wpa_mode", "3"); + } + else if (nvram_match("wl0_akm", "wpa2")) { + _nvram_set("wl_auth_mode", "wpa2"); + } + else + _nvram_set("wl_auth_mode", nvram_get("wl0_auth_mode")); +#endif +#endif + if ((ret = _nvram_set(name, value))) { /* Consolidate space and try again */ if ((header = kmalloc(NVRAM_SPACE, GFP_ATOMIC))) { @@ -326,6 +807,16 @@ nvram_unset(const char *name) int ret; spin_lock_irqsave(&nvram_lock, flags); +#ifdef CFE_UPDATE //unset variable in embedded nvram + if(strncmp(name, CFE_NVRAM_PREFIX, strlen(CFE_NVRAM_PREFIX))==0) + { + if((ret = cfe_update(name+strlen(CFE_NVRAM_PREFIX), NULL)) == 0) + { + ret = _nvram_unset(name+strlen(CFE_NVRAM_PREFIX)); + } + } + else +#endif ret = _nvram_unset(name); spin_unlock_irqrestore(&nvram_lock, flags); @@ -339,6 +830,74 @@ erase_callback(struct erase_info *done) wake_up(wait_q); } +#ifdef NFLASH_SUPPORT +int +nvram_nflash_commit(void) +{ + char *buf; + size_t len, magic_len; + unsigned int i; + int ret; + struct nvram_header *header; + unsigned long flags; + u_int32_t offset; + struct erase_info erase; + + if (!(buf = kmalloc(NVRAM_SPACE, GFP_KERNEL))) { + printk("nvram_commit: out of memory\n"); + return -ENOMEM; + } + + down(&nvram_sem); + + /* read header for checking */ + offset = 0; + i = sizeof(struct nvram_header); + ret = nvram_mtd->read(nvram_mtd, offset, i, &len, buf); + if (ret || len != i) { + printk("nvram_commit: read error ret = %d, len = %d/%d\n", ret, len, i); + ret = -EIO; + goto done; + } + + header = (struct nvram_header *)buf; + /* do NOT commit after loaddefault */ + if (header->magic == NVRAM_INVALID_MAGIC) { + printk(KERN_EMERG "nvram_commit: NOT allow commit, magic = 0x%x\n", + header->magic); + ret = -EPERM; + goto done; + } + + offset = 0; + header = (struct nvram_header *)buf; + header->magic = NVRAM_MAGIC; + /* reset MAGIC before we regenerate the NVRAM, + * otherwise we'll have an incorrect CRC + */ + /* Regenerate NVRAM */ + spin_lock_irqsave(&nvram_lock, flags); + ret = _nvram_commit(header); + spin_unlock_irqrestore(&nvram_lock, flags); + if (ret) + goto done; + + /* Write partition up to end of data area */ + i = header->len; + ret = nvram_mtd->write(nvram_mtd, offset, i, &len, buf); + if (ret || len != i) { + printk("nvram_commit: write error\n"); + ret = -EIO; + goto done; + } + +done: + up(&nvram_sem); + kfree(buf); + return ret; +} +#endif + int nvram_commit(void) { @@ -366,6 +925,10 @@ nvram_commit(void) return -EINVAL; } +#ifdef NFLASH_SUPPORT + if (nvram_mtd->type == MTD_NANDFLASH) + return nvram_nflash_commit(); +#endif /* Backup sector blocks to be erased */ erasesize = ROUNDUP(NVRAM_SPACE, nvram_mtd->erasesize); #if 0 @@ -475,6 +1038,18 @@ nvram_commit(void) offset = nvram_mtd->size - erasesize; ret = nvram_mtd->read(nvram_mtd, offset, 4, &len, nvram_commit_buf); +#ifdef NVRAM_64K_SUPPORT /*Only for RT-N66U upgrade from nvram 32K -> 64K*/ + if(header->len < 0x8001){ + char *log_buf; + u_int32_t offset_t; + size_t log_len; + + offset_t = 0x18000; + log_buf =0x01020304; + ret = nvram_mtd->write(nvram_mtd, offset_t, sizeof(log_buf), &log_len, &log_buf); + } +#endif + done: up(&nvram_sem); #if 0 @@ -597,7 +1172,14 @@ dev_nvram_ioctl(struct inode *inode, struct file *file, unsigned int cmd, unsign if (cmd != NVRAM_MAGIC) return -EINVAL; +#ifndef NLS_XFR return nvram_commit(); +#else + if(arg == 0) + return nvram_commit(); + else + return nvram_xfr((char *)arg); +#endif // NLS_XFR } static int @@ -693,6 +1275,45 @@ dev_nvram_init(void) nvram_mtd = NULL; #endif +#ifdef NVRAM_64K_SUPPORT + int ret32; + char *log_buf; + u_int32_t offset_t; + size_t log_len; + DECLARE_WAITQUEUE(wait, current); + wait_queue_head_t wait_q; + struct erase_info erase; + + offset_t = 0x18000; + ret32 = nvram_mtd->read(nvram_mtd, offset_t, 4, &log_len, &log_buf); + if(log_buf==0xffffffff) { + /* Erase sector blocks */ + init_waitqueue_head(&wait_q); + + erase.mtd = nvram_mtd; + erase.addr = 0; + erase.len = nvram_mtd->erasesize; + erase.callback = erase_callback; + erase.priv = (u_long) &wait_q; + set_current_state(TASK_INTERRUPTIBLE); + add_wait_queue(&wait_q, &wait); + + /* Unlock sector blocks */ + if (nvram_mtd->unlock) + nvram_mtd->unlock(nvram_mtd, 0, nvram_mtd->erasesize); + + if ((ret = nvram_mtd->erase(nvram_mtd, &erase))) { + set_current_state(TASK_RUNNING); + remove_wait_queue(&wait_q, &wait); + printk("nvram mtd erase error\n"); + } + + /* Wait for erase to finish */ + schedule(); + remove_wait_queue(&wait_q, &wait); + } +#endif + /* Initialize hash table lock */ spin_lock_init(&nvram_lock); @@ -754,5 +1375,517 @@ err: return ret; } +#ifdef CFE_UPDATE +int get_embedded_block(struct mtd_info *mtd, char *buf, size_t erasesize, + u_int32_t *offset, struct nvram_header **header, u_int32_t *emb_size) +{ + size_t len; + struct nvram_header *nvh; + +#ifdef CONFIG_RTAN23 /*for AMCC RTAN23 */ + *offset = mtd->size - erasesize; /*/at the end of mtd */ + *emb_size = 8*1024 - 16; /*/8K - 16 byte */ + printk("get_embedded_block: mtd->size(%08x) erasesize(%08x) offset(%08x) emb_size(%08x)\n", mtd->size, erasesize, *offset, *emb_size); + cfe_mtd->read(mtd, *offset, erasesize, &len, buf); + if(len != erasesize) + return -EIO; + + /* find nvram header */ + nvh = (struct nvram_header *)(buf + erasesize - 8*1024); + if (nvh->magic == NVRAM_MAGIC) + { + *header = nvh; + return 0; + } + +#else /* for Broadcom WL500 serials */ + *offset = 0; /* from the mtd start */ + *emb_size = 4096; /* 1K byte */ + printk("get_embedded_block: mtd->size(%08x) erasesize(%08x) offset(%08x) emb_size(%08x)\n", mtd->size, erasesize, *offset, *emb_size); + cfe_mtd->read(mtd, *offset, erasesize, &len, buf); + if(len != erasesize) + return -EIO; + + /* find nvram header */ + nvh = (struct nvram_header *)(buf + (4 * 1024)); + if (nvh->magic == NVRAM_MAGIC) + { + *header = nvh; + return 0; + } + nvh = (struct nvram_header *)(buf + (1 * 1024)); + if (nvh->magic == NVRAM_MAGIC) + { + *header = nvh; + return 0; + } +#endif + printk("get_embedded_block: no nvram magic found\n"); + return -ENXIO; +} +static int cfe_init(void) +{ + size_t erasesize; + int i; + int ret = 0; + + /* Find associated MTD device */ + for (i = 0; i < MAX_MTD_DEVICES; i++) { + cfe_mtd = get_mtd_device(NULL, i); + if (cfe_mtd != NULL) { + printk("cfe_init: CFE MTD %x %s %x\n", i, cfe_mtd->name, cfe_mtd->size); + if (!strcmp(cfe_mtd->name, "boot")) + break; + put_mtd_device(cfe_mtd); + } + } + if (i >= MAX_MTD_DEVICES) + { + printk("cfe_init: No CFE MTD\n"); + cfe_mtd = NULL; + ret = -ENODEV; + } + + if(cfe_mtd == NULL) goto fail; + + /* sector blocks to be erased and backup */ + erasesize = ROUNDUP(CFE_NVRAM_SPACE, cfe_mtd->erasesize); + + //printk("cfe_init: block size %d\n", erasesize); + cfe_buf = kmalloc(erasesize, GFP_KERNEL); + + if(cfe_buf == NULL) + { + //printk("cfe_init: No CFE Memory\n"); + ret = -ENOMEM; + goto fail; + } + if((ret = get_embedded_block(cfe_mtd, cfe_buf, erasesize, &cfe_offset, &cfe_nvram_header, &cfe_embedded_size))) + goto fail; + + printk("cfe_init: cfe_nvram_header(%08x)\n", (unsigned int) cfe_nvram_header); + bcm947xx_watchdog_disable(); + + return 0; + +fail: + if (cfe_mtd != NULL) + { + put_mtd_device(cfe_mtd); + cfe_mtd=NULL; + } + if(cfe_buf != NULL) + { + kfree(cfe_buf); + cfe_buf=NULL; + } + return ret; +} +static int cfe_update(const char *keyword, const char *value) +{ + struct nvram_header *header; + uint8 crc; + int ret; + int found = 0; + char *str, *end, *mv_target = NULL, *mv_start = NULL; + + if(keyword == NULL || *keyword == 0) + return 0; + + if(cfe_buf == NULL||cfe_mtd == NULL) + if((ret = cfe_init())) + return ret; + + header = cfe_nvram_header; + + //printk("cfe_update: before %x %x\n", header->len, cfe_nvram_header->crc_ver_init&0xff); + str = (char *) &header[1]; + end = (char *) header + cfe_embedded_size - 2; + end[0] = end[1] = '\0'; + for (; *str; str += strlen(str) + 1) + { + if(!found) + { + if(strncmp(str, keyword, strlen(keyword)) == 0 && str[strlen(keyword)] == '=') + { + printk("cfe_update: !!!! found !!!!\n"); + found = 1; + if(value != NULL && strlen(str) == strlen(keyword) + 1 + strlen(value)) + {//string length is the same + strcpy(str+strlen(keyword)+1, value); + } + else + { + mv_target = str; + mv_start = str + strlen(str) + 1; + } + } + } + } + /* str point to the end of all embedded nvram settings */ + + if(mv_target != NULL) + { /* need to move string */ + int str_len = strlen(mv_target); + printk("cfe_update: mv_target(%08x) mv_start(%08x) str(%08x) str_len(%d)\n", (unsigned int)mv_target, (unsigned int)mv_start, (unsigned int)str, str_len); + if(value != NULL && (str + strlen(keyword) + 1 + strlen(value) + 1 - (str_len + 1)) > end) + return -ENOSPC; + memmove(mv_target, mv_start, str - mv_start); + printk("cfe_update: memmove done\n"); + str -= (str_len + 1); /* /set str to the end for placing incoming keyword and value there */ + } + + if(value == NULL) + { + printk("cfe_update: do unset\n"); + } + else if(!found || mv_target != NULL) /*new or movement */ + { /* append the keyword and value here */ + printk("cfe_update: str(%08x)\n", (unsigned int) str); + if((str + strlen(keyword) + 1 + strlen(value) + 1) > end) + return -ENOSPC; + str += sprintf(str, "%s=%s", keyword, value) + 1; + printk("cfe_update: append string\n"); + } +/* calc length */ + memset(str, 0, cfe_embedded_size+(char *)header - str); + str += 2; + header->len = ROUNDUP(str - (char *) header, 4); + printk("cfe_update: header len: %x\n", header->len); +/*/calc crc */ + crc = nvram_calc_crc(header); + printk("cfe_update: nvram_calc_crc(header) = 0x%02x\n", crc); + header->crc_ver_init = (header->crc_ver_init & NVRAM_CRC_VER_MASK)|crc; + /*/printk("cfe_update: after %x %x\n", header->crc_ver_init&0xFF, crc); */ + return 0; +} +static int cfe_dump(void) +{ + unsigned int i; + int ret; + unsigned char *ptr; + + if(cfe_buf == NULL||cfe_mtd == NULL) + if((ret = cfe_init())) + return ret; + + printk("cfe_dump: cfe_buf(%08x), dump 1024 byte\n", (unsigned int)cfe_buf); + for(i=0, ptr=(unsigned char *)cfe_nvram_header - 1024; ptr < (unsigned char *)cfe_nvram_header; i++, ptr++) + { + if(i%16==0) printk("%04x: %02x ", i, *ptr); + else if(i%16==15) printk("%02x\n", *ptr); + else if(i%16==7) printk("%02x - ", *ptr); + else printk("%02x ", *ptr); + } + + printk("\ncfe_dump: cfe_nvram_header(%08x)\n", (unsigned int)cfe_nvram_header); + printk("cfe_dump: cfe_nvram_header->len(0x%08x)\n", cfe_nvram_header->len); + + printk("\n####################\n"); + for(i=0, ptr=(unsigned char *)cfe_nvram_header; i< cfe_embedded_size; i++, ptr++) + { + if(i%16==0) printk("%04x: %02x ", i, *ptr); + else if(i%16==15) printk("%02x\n", *ptr); + else if(i%16==7) printk("%02x - ", *ptr); + else printk("%02x ", *ptr); + } + printk("\n####################\n"); + ptr = (unsigned char *)&cfe_nvram_header[1]; + while(*ptr) + { + printk("%s\n", ptr); + ptr += strlen(ptr) + 1; + } + printk("\n####################\n"); + for(i=0, ptr=((unsigned char *)cfe_nvram_header) + cfe_embedded_size; i<16; i++, ptr++) + { + if(i%16==0) printk("%04x: %02x ", i, *ptr); + else if(i%16==15) printk("%02x\n", *ptr); + else if(i%16==7) printk("%02x - ", *ptr); + else printk("%02x ", *ptr); + } + return 0; +} + +static int cfe_commit(void) +{ + DECLARE_WAITQUEUE(wait, current); + wait_queue_head_t wait_q; + struct erase_info erase; + int ret = 0; + size_t erasesize, len=0; + u_int32_t offset; + + if(cfe_mtd == NULL||cfe_buf == NULL) + { + printk("cfe_commit: do nothing\n"); + return 0; + } + +#if 0 + ret = cfe_dump(); + return ret; +#endif +#if 1 + /* Backup sector blocks to be erased */ + erasesize = ROUNDUP(CFE_NVRAM_SPACE, cfe_mtd->erasesize); + printk("cfe_commit: erasesize(%08x) cfe_offset(%08x)\n", erasesize, cfe_offset); + + /* Erase sector blocks */ + init_waitqueue_head(&wait_q); + for (offset=cfe_offset;offset < cfe_offset+erasesize;offset += cfe_mtd->erasesize) { + printk("cfe_commit: ERASE sector block offset(%08x) cfe_mtd->erasesize(%08x)\n", offset, cfe_mtd->erasesize); + erase.mtd = cfe_mtd; + erase.addr = offset; + erase.len = cfe_mtd->erasesize; + erase.callback = erase_callback; + erase.priv = (u_long) &wait_q; + + set_current_state(TASK_INTERRUPTIBLE); + add_wait_queue(&wait_q, &wait); + /* Unlock sector blocks */ + if (cfe_mtd->unlock) + cfe_mtd->unlock(cfe_mtd, offset, cfe_mtd->erasesize); + + if ((ret = cfe_mtd->erase(cfe_mtd, &erase))) { + set_current_state(TASK_RUNNING); + remove_wait_queue(&wait_q, &wait); + printk("cfe_commit: erase error\n"); + ret = -EIO; + goto done; + } + + /* Wait for erase to finish */ + schedule(); + remove_wait_queue(&wait_q, &wait); + } + + ret = cfe_mtd->write(cfe_mtd, cfe_offset, erasesize, &len, cfe_buf); + printk("cfe_commit: MTD_WRITE cfe_offset(%08x) erasesize(%08x) len(%08x) ret(%08x)\n", cfe_offset, erasesize, len, ret); + + if (ret || len != erasesize) { + printk("cfe_commit: write error\n"); + ret = -EIO; + } + +done: + if (cfe_mtd != NULL) + { + put_mtd_device(cfe_mtd); + cfe_mtd=NULL; + } + if(cfe_buf != NULL) + { + kfree(cfe_buf); + cfe_buf=NULL; + } + //printk("commit: %d\n", ret); + return ret; +#endif +} +#endif + + +//#ifdef CFE_UPDATE +#if 0 +void cfe_init(void) +{ + size_t erasesize, len; + int i; + + /* Find associated MTD device */ + for (i = 0; i < MAX_MTD_DEVICES; i++) { + cfe_mtd = get_mtd_device(NULL, i); + if (cfe_mtd) { + printk("CFE MTD: %x %s %x\n", i, cfe_mtd->name, cfe_mtd->size); + if (!strcmp(cfe_mtd->name, "boot")) + break; + put_mtd_device(cfe_mtd); + } + } + if (i >= MAX_MTD_DEVICES) + { + printk("No CFE MTD\n"); + cfe_mtd = NULL; + } + + if(!cfe_mtd) goto fail; + + /* sector blocks to be erased and backup */ + erasesize = ROUNDUP(CFE_NVRAM_SPACE, cfe_mtd->erasesize); + + /* printk("block size %d\n", erasesize); */ + + cfe_buf = kmalloc(erasesize, GFP_KERNEL); + + if(!cfe_buf) + { + /* printk("No CFE Memory\n"); */ + goto fail; + } + cfe_mtd->read(cfe_mtd, CFE_NVRAM_START, erasesize, &len, cfe_buf); + + /* find nvram header */ + for(i=0;imagic==NVRAM_MAGIC) break; + } + + bcm947xx_watchdog_disable(); /*disable watchdog as well */ + +#if 0 + printf("read from nvram %d %s\n", i, cfe_buf); + for(i=0;ilen, cfe_nvram_header->crc_ver_init&0xff); + + for(i=CFE_NVRAM_START;i<=CFE_NVRAM_END;i++) + { + if(strncmp(&cfe_buf[i], keyword, strlen(keyword))==0) + { + printk("before: %s\n", cfe_buf+i); + offset=strlen(keyword); + memcpy(cfe_buf+i+offset+1, value, strlen(value)); + printk("after: %s\n", cfe_buf+i); + found = 1; + } + } + + if(!found) + { + char *tmp_buf = (char *)cfe_nvram_header; + + /* printk("header len: %x\n", header->len); */ + sprintf(tmp_buf+header->len, "%s=%s", keyword, value); + header->len = header->len + strlen(keyword) + strlen(value) + 2; + /* printk("header len: %x\n", header->len); */ + } + + tmp.crc_ver_init = htol32(header->crc_ver_init); + tmp.config_refresh = htol32(header->config_refresh); + tmp.config_ncdl = htol32(header->config_ncdl); + crc = hndcrc8((char *) &tmp + 9, sizeof(struct nvram_header) - 9, CRC8_INIT_VALUE); + + /* Continue CRC8 over data bytes */ + crc = hndcrc8((char *) &header[1], header->len - sizeof(struct nvram_header), crc); + header->crc_ver_init = (header->crc_ver_init&0xFFFFFF00)|crc; + printk("after: %x %x\n", header->crc_ver_init&0xFF, crc); +} + +int cfe_commit(void) +{ + DECLARE_WAITQUEUE(wait, current); + wait_queue_head_t wait_q; + struct erase_info erase; +// unsigned int i; + int ret; + size_t erasesize, len; + u_int32_t offset; +// char *buf; + + if(!cfe_buf||!cfe_mtd) cfe_init(); + + if(!cfe_mtd||!cfe_buf) + { + ret = - ENOMEM; + goto done; + } + + /* Backup sector blocks to be erased */ + erasesize = ROUNDUP(CFE_NVRAM_SPACE, cfe_mtd->erasesize); + + down(&nvram_sem); + + /* Erase sector blocks */ + init_waitqueue_head(&wait_q); + + + for (offset=CFE_NVRAM_START;offset <= CFE_NVRAM_END;offset += cfe_mtd->erasesize) { + erase.mtd = cfe_mtd; + erase.addr = offset; + erase.len = cfe_mtd->erasesize; + erase.callback = erase_callback; + erase.priv = (u_long) &wait_q; + + set_current_state(TASK_INTERRUPTIBLE); + add_wait_queue(&wait_q, &wait); + /* Unlock sector blocks */ + if (cfe_mtd->unlock) + cfe_mtd->unlock(cfe_mtd, offset, cfe_mtd->erasesize); + + if ((ret = cfe_mtd->erase(cfe_mtd, &erase))) { + set_current_state(TASK_RUNNING); + remove_wait_queue(&wait_q, &wait); + printk("cfe_commit: erase error\n"); + goto done; + } + + /* Wait for erase to finish */ + schedule(); + remove_wait_queue(&wait_q, &wait); + } + + ret = cfe_mtd->write(cfe_mtd, CFE_NVRAM_START, erasesize, &len, cfe_buf); + /* printk("Write offset: %x %x %x\n", ret, len, erasesize); */ + + if (ret || len != erasesize) { + printk("cfe_commit: write error\n"); + ret = -EIO; + } + +done: + up(&nvram_sem); + if (cfe_mtd) + { + put_mtd_device(cfe_mtd); + cfe_mtd=NULL; + } + if(cfe_buf) + { + kfree(cfe_buf); + cfe_buf=NULL; + } + /* printk("commit: %d\n", ret); */ + return ret; + +} +#endif + + module_init(dev_nvram_init); module_exit(dev_nvram_exit); diff --git a/release/src-rt/linux/linux-2.6/arch/mips/brcm-boards/bcm947xx/setup.c b/release/src-rt/linux/linux-2.6/arch/mips/brcm-boards/bcm947xx/setup.c index 1cd4cb5e30..fe7f72e83f 100644 --- a/release/src-rt/linux/linux-2.6/arch/mips/brcm-boards/bcm947xx/setup.c +++ b/release/src-rt/linux/linux-2.6/arch/mips/brcm-boards/bcm947xx/setup.c @@ -52,6 +52,9 @@ #include #endif /* HNDCTF */ #include "bcm947xx.h" +#ifdef NFLASH_SUPPORT +#include "nflash.h" +#endif extern void bcm947xx_time_init(void); extern void bcm947xx_timer_setup(struct irqaction *irq); @@ -72,6 +75,10 @@ spinlock_t bcm947xx_sih_lock = SPIN_LOCK_UNLOCKED; EXPORT_SYMBOL(bcm947xx_sih); EXPORT_SYMBOL(bcm947xx_sih_lock); +/* CPU freq Tomato RAF features */ +int bcm947xx_cpu_clk; +EXPORT_SYMBOL(bcm947xx_cpu_clk); + /* Convenience */ #define sih bcm947xx_sih #define sih_lock bcm947xx_sih_lock @@ -88,12 +95,11 @@ extern char arcs_cmdline[CL_SIZE]; static int lanports_enable = 0; static int wombo_reset = GPIO_PIN_NOTDEFINED; -static void +static void bcm947xx_reboot_handler(void) { if (lanports_enable) { uint lp = 1 << lanports_enable; - si_gpioout(sih, lp, 0, GPIO_DRV_PRIORITY); si_gpioouten(sih, lp, lp, GPIO_DRV_PRIORITY); bcm_mdelay(1); @@ -109,7 +115,6 @@ bcm947xx_reboot_handler(void) } } - void bcm947xx_machine_restart(char *command) { @@ -128,8 +133,8 @@ bcm947xx_machine_halt(void) /* Disable interrupts and watchdog and spin forever */ local_irq_disable(); - si_watchdog(sih, 0); bcm947xx_reboot_handler(); + si_watchdog(sih, 0); while (1); } @@ -202,6 +207,12 @@ brcm_setup(void) ide_ops = &std_ide_ops; #endif +#ifdef NFLASH_SUPPORT + if ((sih->ccrev >= 38) && ((sih->chipst & (1 << 4)) != 0)) { + if (strncmp(arcs_cmdline, "root=/dev/mtdblock", strlen("root=/dev/mtdblock")) == 0) + strcpy(arcs_cmdline, "root=/dev/mtdblock15 console=ttyS0,115200"); + } +#endif /* Override default command line arguments */ value = nvram_get("kernel_args"); if (value && strlen(value) && strncmp(value, "empty", 5)) @@ -269,7 +280,7 @@ enum { RT_DIR320, // D-Link DIR-320 RT_WNR3500L, // Netgear WNR3500v2/U/L RT_WNR2000V2, // Netgear WNR2000v2 - RT_BELKIN_F7D // Belkin F7D3301, F7D3302, F7D4302, F7D8235V3 + RT_BELKIN_F7D // Belkin F7D3301, F7D3302, F7D4302, F7D8235V3 }; static int get_router(void) @@ -292,7 +303,6 @@ static int get_router(void) else if (boardtype == 0xA4CF && (boardrev == 0x1102 || boardrev == 0x1100)) { return RT_BELKIN_F7D; } - return RT_UNKNOWN; } @@ -434,10 +444,10 @@ init_mtd_partitions(struct mtd_info *mtd, size_t size) continue; // fall through case TRX_MAGIC: - trxsize = ROUNDUP(le32_to_cpu(trx->len), mtd->erasesize); // kernel + rootfs + trxsize = ROUNDUP(le32_to_cpu(trx->len), mtd->erasesize); // kernel + rootfs break; + } - if (trxsize) { /* Size pmon */ bcm947xx_parts[PART_BOOT].size = off; @@ -482,16 +492,85 @@ init_mtd_partitions(struct mtd_info *mtd, size_t size) return bcm947xx_parts; } -#if 0 -static struct mtd_partition bcm947xx_parts[] = +EXPORT_SYMBOL(init_mtd_partitions); + +#ifdef NFLASH_SUPPORT +static struct mtd_partition bcm947xx_nflash_parts[] = { { .name = "boot", .size = 0, .offset = 0, - // .mask_flags = MTD_WRITEABLE + .mask_flags = MTD_WRITEABLE }, { + .name = "nvram", + .size = 0, + .offset = 0 + }, +#if 1 + { + .name = "board_data", + .offset = 0, + .size = 0, + }, + { + .name = "POT1", + .offset = 0, + .size = 0, + }, + { + .name = "POT2", + .offset = 0, + .size = 0, + }, + { + .name = "T_Meter1", + .offset = 0, + .size = 0, + }, + { + .name = "T_Meter2", + .offset = 0, + .size = 0, + }, + { + .name = "ML1", + .offset = 0, + .size = 0, + }, + { + .name = "ML2", + .offset = 0, + .size = 0, + }, + { + .name = "ML3", + .offset = 0, + .size = 0, + }, + { + .name = "ML4", + .offset = 0, + .size = 0, + }, + { + .name = "ML5", + .offset = 0, + .size = 0, + }, + { + .name = "ML6", + .offset = 0, + .size = 0, + }, + { + .name = "ML7", + .offset = 0, + .size = 0, + }, +#endif + { .name = "linux", .size = 0, .offset = 0 @@ -503,58 +582,56 @@ static struct mtd_partition bcm947xx_parts[] = .mask_flags = MTD_WRITEABLE }, { - .name = "nvram", - .size = 0, - .offset = 0 - }, - { .name = 0, .size = 0, .offset = 0 } }; -struct mtd_partition * -init_mtd_partitions(struct mtd_info *mtd, size_t size) +struct mtd_partition * init_nflash_mtd_partitions(struct mtd_info *mtd, size_t size) { struct romfs_super_block *romfsb; struct cramfs_super *cramfsb; struct squashfs_super_block *squashfsb; struct trx_header *trx; - unsigned char buf[512]; - int off; - size_t len; - int i; + unsigned char buf[NFL_SECTOR_SIZE]; + uint blocksize, mask, blk_offset, off, shift = 0; + chipcregs_t *cc; + uint32 bootsz, *bisz; + int ret, i; + uint32 top; + int idx; romfsb = (struct romfs_super_block *) buf; cramfsb = (struct cramfs_super *) buf; squashfsb = (struct squashfs_super_block *) buf; trx = (struct trx_header *) buf; - /* Look at every 64 KB boundary */ - for (off = 0; off < size; off += (64 * 1024)) { - memset(buf, 0xe5, sizeof(buf)); + if ((cc = (chipcregs_t *)si_setcoreidx(sih, SI_CC_IDX)) == NULL) + return NULL; - /* - * Read block 0 to test for romfs and cramfs superblock - */ - if (mtd->read(mtd, off, sizeof(buf), &len, buf) || - len != sizeof(buf)) + /* Look at every block boundary till 16MB; higher space is reserved for application data. */ + blocksize = mtd->erasesize; + for (off = NFL_BOOT_SIZE; off < NFL_BOOT_OS_SIZE; off += blocksize) { + mask = blocksize - 1; + blk_offset = off & ~mask; + if (nflash_checkbadb(sih, cc, blk_offset) != 0) continue; + memset(buf, 0xe5, sizeof(buf)); + if ((ret = nflash_read(sih, cc, off, sizeof(buf), buf)) != sizeof(buf)) { + printk(KERN_NOTICE + "%s: nflash_read return %d\n", mtd->name, ret); + continue; + } /* Try looking at TRX header for rootfs offset */ - if (le32_to_cpu(trx->magic) == TRX_MAGIC) { - bcm947xx_parts[1].offset = off; -// if (le32_to_cpu(trx->offsets[1]) > off) - if (le32_to_cpu(trx->offsets[2]) > off) - off = le32_to_cpu(trx->offsets[2]); - else if (le32_to_cpu(trx->offsets[1]) > off) - off = le32_to_cpu(trx->offsets[1]); - /* In case where CFE boots from ROM, we expect - * Linux to fit in first flash partition. - */ - if (bcm947xx_parts[1].offset == 0 && off) - off -= (64 * 1024); + if (le32_to_cpu(trx->magic) == TRX_MAGIC && off >= 0x500000) { + mask = NFL_SECTOR_SIZE - 1; + off = off + (le32_to_cpu(trx->offsets[1]) & ~mask) - blocksize; + shift = (le32_to_cpu(trx->offsets[1]) & mask); + romfsb = (unsigned char *)romfsb + shift; + cramfsb = (unsigned char *)cramfsb + shift; + squashfsb = (unsigned char *)squashfsb + shift; continue; } @@ -567,16 +644,6 @@ init_mtd_partitions(struct mtd_info *mtd, size_t size) goto done; } - /* squashfs is at block zero too */ - if (squashfsb->s_magic == SQUASHFS_MAGIC - || squashfsb->s_magic == SQUASHFS_MAGIC_LZMA) { - printk(KERN_NOTICE - "%s: squashfs filesystem found at block %d\n", - mtd->name, off / BLOCK_SIZE); - goto done; - } - - /* so is cramfs */ if (cramfsb->magic == CRAMFS_MAGIC) { printk(KERN_NOTICE @@ -585,35 +652,102 @@ init_mtd_partitions(struct mtd_info *mtd, size_t size) goto done; } + if (squashfsb->s_magic == SQUASHFS_MAGIC) { + printk(KERN_NOTICE + "%s: squash filesystem with lzma found at block %d\n", + mtd->name, off / BLOCK_SIZE); + goto done; + } } printk(KERN_NOTICE "%s: Couldn't find valid ROM disk image\n", mtd->name); - done: +done: + + /* Default is 256K boot partition */ + bootsz = 256 * 1024; + + /* Do we have a self-describing binary image? */ + bisz = (uint32 *)KSEG1ADDR(SI_FLASH1 + BISZ_OFFSET); + if (bisz[BISZ_MAGIC_IDX] == BISZ_MAGIC) { + int isz = bisz[BISZ_DATAEND_IDX] - bisz[BISZ_TXTST_IDX]; + + if (isz > (1024 * 1024)) + bootsz = 2048 * 1024; + else if (isz > (512 * 1024)) + bootsz = 1024 * 1024; + else if (isz > (256 * 1024)) + bootsz = 512 * 1024; + else if (isz <= (128 * 1024)) + bootsz = 128 * 1024; + } + if (bootsz > mtd->erasesize) { + /* Prepare double space in case of bad blocks */ + bootsz = (bootsz << 1); + } else { + /* CFE occupies at least one block */ + bootsz = mtd->erasesize; + } + + printf("Boot partition size = %d(0x%x)\n", bootsz, bootsz); + + /* Size pmon */ + bcm947xx_nflash_parts[0].size = bootsz; + /* Setup NVRAM MTD partition */ - i = (sizeof(bcm947xx_parts)/sizeof(struct mtd_partition)) - 2; + bcm947xx_nflash_parts[1].offset = bootsz; + bcm947xx_nflash_parts[1].size = NFL_BOOT_SIZE - bootsz; - bcm947xx_parts[i].size = ROUNDUP(NVRAM_SPACE, mtd->erasesize); - bcm947xx_parts[i].offset = size - bcm947xx_parts[i].size; + i = (sizeof(bcm947xx_nflash_parts)/sizeof(struct mtd_partition)) - 2; + top = NFL_BOOT_OS_SIZE; + +#if 1 + for (idx = 2; idx <= i - 2; idx++) + { + if (strncmp(bcm947xx_nflash_parts[idx].name, "board_data", 10) == 0) + bcm947xx_nflash_parts[idx].size = 0x40000; /* 256K */ + else if (strncmp(bcm947xx_nflash_parts[idx].name, "POT", 3) == 0) + bcm947xx_nflash_parts[idx].size = 0x40000; /* 256K */ + else if (strncmp(bcm947xx_nflash_parts[idx].name, "T_Meter", 7) == 0) + bcm947xx_nflash_parts[idx].size = 0x40000; /* 256K */ + else if (strncmp(bcm947xx_nflash_parts[idx].name, "ML", 2) == 0) + bcm947xx_nflash_parts[idx].size = 0x40000; /* 256K */ + else if (strncmp(bcm947xx_nflash_parts[idx].name, "linux", 5) == 0) + break; + else if (strncmp(bcm947xx_nflash_parts[idx].name, "rootfs", 6) == 0) + break; + else + { + printk(KERN_ERR "%s: Unknow MTD name %s\n", + __FUNCTION__, bcm947xx_nflash_parts[idx].name); + break; + } + + bcm947xx_nflash_parts[idx].offset = bcm947xx_nflash_parts[idx - 1].offset + + bcm947xx_nflash_parts[idx - 1].size; + } +#endif /* Find and size rootfs */ if (off < size) { - bcm947xx_parts[2].offset = off; - bcm947xx_parts[2].size = bcm947xx_parts[3].offset - bcm947xx_parts[2].offset; + bcm947xx_nflash_parts[i].offset = off + shift; + bcm947xx_nflash_parts[i].size = + top - bcm947xx_nflash_parts[i].offset; } /* Size linux (kernel and rootfs) */ - bcm947xx_parts[1].size = bcm947xx_parts[3].offset - bcm947xx_parts[1].offset; + bcm947xx_nflash_parts[i - 1].offset = + bcm947xx_nflash_parts[i - 2].offset + bcm947xx_nflash_parts[i - 2].size; + bcm947xx_nflash_parts[i - 1].size = + top - bcm947xx_nflash_parts[i - 1].offset; - /* Size pmon */ - bcm947xx_parts[0].size = bcm947xx_parts[1].offset - bcm947xx_parts[0].offset; - - return bcm947xx_parts; + return bcm947xx_nflash_parts; } -#endif // 0 -EXPORT_SYMBOL(init_mtd_partitions); +EXPORT_SYMBOL(init_nflash_mtd_partitions); +#endif /* NFLASH_SUPPORT */ + #endif diff --git a/release/src-rt/linux/linux-2.6/arch/mips/brcm-boards/bcm947xx/time.c b/release/src-rt/linux/linux-2.6/arch/mips/brcm-boards/bcm947xx/time.c index b080067c59..871ddd98fd 100644 --- a/release/src-rt/linux/linux-2.6/arch/mips/brcm-boards/bcm947xx/time.c +++ b/release/src-rt/linux/linux-2.6/arch/mips/brcm-boards/bcm947xx/time.c @@ -42,6 +42,7 @@ extern spinlock_t bcm947xx_sih_lock; #define WATCHDOG_MIN 3000 /* milliseconds */ extern int panic_timeout; static int watchdog = 0; +extern int bcm947xx_cpu_clk; //Tomato RAF features #ifndef CONFIG_HWSIM static u8 *mcr = NULL; @@ -70,6 +71,7 @@ bcm947xx_time_init(void) bcm_chipname(sih->chip, cn, 8); printk("CPU: BCM%s rev %d pkg %d at %d MHz\n", cn, sih->chiprev, sih->chippkg, (hz + 500000) / 1000000); + bcm947xx_cpu_clk = (hz + 500000) / 1000000; //Tomato RAF feature /* Set MIPS counter frequency for fixed_rate_gettimeoffset() */ if (sih->chip == BCM5354_CHIP_ID && diff --git a/release/src-rt/linux/linux-2.6/arch/mips/kernel/proc.c b/release/src-rt/linux/linux-2.6/arch/mips/kernel/proc.c index 7fd480d506..4b4e65f279 100644 --- a/release/src-rt/linux/linux-2.6/arch/mips/kernel/proc.c +++ b/release/src-rt/linux/linux-2.6/arch/mips/kernel/proc.c @@ -17,6 +17,8 @@ unsigned int vced_count, vcei_count; +extern int bcm947xx_cpu_clk; + static const char *cpu_name[] = { [CPU_UNKNOWN] = "unknown", [CPU_R2000] = "R2000", @@ -117,6 +119,7 @@ static int show_cpuinfo(struct seq_file *m, void *v) seq_printf(m, "BogoMIPS\t\t: %u.%02u\n", cpu_data[n].udelay_val / (500000/HZ), (cpu_data[n].udelay_val / (5000/HZ)) % 100); + seq_printf(m, "cpu MHz \t\t: %d\n", bcm947xx_cpu_clk); seq_printf(m, "wait instruction\t: %s\n", cpu_wait ? "yes" : "no"); seq_printf(m, "microsecond timers\t: %s\n", cpu_has_counter ? "yes" : "no"); diff --git a/release/src-rt/linux/linux-2.6/arch/mips/kernel/syscall.c b/release/src-rt/linux/linux-2.6/arch/mips/kernel/syscall.c index a0a3771095..54cbf54b3d 100644 --- a/release/src-rt/linux/linux-2.6/arch/mips/kernel/syscall.c +++ b/release/src-rt/linux/linux-2.6/arch/mips/kernel/syscall.c @@ -56,8 +56,10 @@ out: } unsigned long shm_align_mask = PAGE_SIZE - 1; /* Sane caches */ +unsigned char shm_align_shift = PAGE_SHIFT; /* Sane caches */ EXPORT_SYMBOL(shm_align_mask); +EXPORT_SYMBOL(shm_align_shift); #define COLOUR_ALIGN(addr,pgoff) \ ((((addr) + shm_align_mask) & ~shm_align_mask) + \ diff --git a/release/src-rt/linux/linux-2.6/arch/mips/mm/c-r4k.c b/release/src-rt/linux/linux-2.6/arch/mips/mm/c-r4k.c index 23e8fe3cd9..67a7171ca1 100644 --- a/release/src-rt/linux/linux-2.6/arch/mips/mm/c-r4k.c +++ b/release/src-rt/linux/linux-2.6/arch/mips/mm/c-r4k.c @@ -994,6 +994,30 @@ static void __cpuinit probe_pcache(void) dcache_size >> 10, way_string[c->dcache.ways], c->dcache.linesz); } +void __init r4k_probe_cache(void) +{ + unsigned long config1 = read_c0_config1(); + unsigned int dcache_size, lsize, ways, sets; + + if ((lsize = ((config1 >> 10) & 7))) + lsize = 2 << lsize; + + sets = 64 << ((config1 >> 13) & 7); + ways = 1 + ((config1 >> 7) & 7); + + if (lsize) { + shm_align_mask = max_t( unsigned long, + sets * lsize - 1, + PAGE_SIZE - 1); + + if (shm_align_mask != (PAGE_SIZE - 1)) + shm_align_shift = ffs((shm_align_mask + 1)) - 1; + } else + shm_align_mask = PAGE_SIZE-1; + + +} + /* * If you even _breathe_ on this function, look at the gcc output and make sure * it does not pop things on and off the stack for the cache sizing loop that @@ -1262,12 +1286,7 @@ void __cpuinit r4k_cache_init(void) * This code supports virtually indexed processors and will be * unnecessarily inefficient on physically indexed processors. */ - if (c->dcache.linesz) - shm_align_mask = max_t( unsigned long, - c->dcache.sets * c->dcache.linesz - 1, - PAGE_SIZE - 1); - else - shm_align_mask = PAGE_SIZE-1; + flush_cache_all = r4k_flush_cache_all; __flush_cache_all = r4k___flush_cache_all; flush_cache_mm = r4k_flush_cache_mm; diff --git a/release/src-rt/linux/linux-2.6/arch/mips/mm/cache.c b/release/src-rt/linux/linux-2.6/arch/mips/mm/cache.c index cc26edbc1f..3acb137556 100644 --- a/release/src-rt/linux/linux-2.6/arch/mips/mm/cache.c +++ b/release/src-rt/linux/linux-2.6/arch/mips/mm/cache.c @@ -148,6 +148,15 @@ void __update_cache(struct vm_area_struct *vma, unsigned long address, static char cache_panic[] __cpuinitdata = "Yeee, unsupported cache architecture."; +void __init cpu_early_probe_cache(void) +{ + if (cpu_has_4k_cache) { + extern void __weak r4k_probe_cache(void); + + return r4k_probe_cache(); + } +} + void __cpuinit cpu_cache_init(void) { if (cpu_has_3k_cache) { diff --git a/release/src-rt/linux/linux-2.6/arch/mips/mm/highmem.c b/release/src-rt/linux/linux-2.6/arch/mips/mm/highmem.c index e2e3c6bae3..2feb5b7a63 100644 --- a/release/src-rt/linux/linux-2.6/arch/mips/mm/highmem.c +++ b/release/src-rt/linux/linux-2.6/arch/mips/mm/highmem.c @@ -39,6 +39,7 @@ void __kunmap(struct page *page) struct kmap_map { struct page *page; void *vaddr; + unsigned long pfn; }; struct { @@ -61,8 +62,9 @@ kmap_atomic_page_address(struct page *page) void *__kmap_atomic(struct page *page, enum km_type type) { - enum fixed_addresses idx; + unsigned int idx; unsigned long vaddr; + unsigned long pfn; /* even !CONFIG_PREEMPT needs this, for in_atomic in do_page_fault */ pagefault_disable(); @@ -70,31 +72,38 @@ void *__kmap_atomic(struct page *page, enum km_type type) return page_address(page); idx = type + KM_TYPE_NR*smp_processor_id(); - vaddr = __fix_to_virt(FIX_KMAP_BEGIN + idx); + pfn = page_to_pfn(page); + vaddr = fix_to_virt_noalias(VALIAS_IDX(FIX_KMAP_BEGIN + idx), pfn); #ifdef CONFIG_DEBUG_HIGHMEM - if (!pte_none(*(kmap_pte-idx))) + if (!pte_none(*(kmap_pte-(virt_to_fix(vaddr) - VALIAS_IDX(FIX_KMAP_BEGIN))))) BUG(); #endif - set_pte(kmap_pte-idx, mk_pte(page, kmap_prot)); + /* Vaddr could have been adjusted to avoid virt aliasing, + * recalculate the idx from vaddr. + */ + set_pte(kmap_pte-(virt_to_fix(vaddr) - VALIAS_IDX(FIX_KMAP_BEGIN)), \ + mk_pte(page, kmap_prot)); local_flush_tlb_one((unsigned long)vaddr); kmap_atomic_maps[smp_processor_id()].map[type].page = page; kmap_atomic_maps[smp_processor_id()].map[type].vaddr = (void *)vaddr; - + kmap_atomic_maps[smp_processor_id()].map[type].pfn = pfn; + return (void*) vaddr; } void __kunmap_atomic(void *kvaddr, enum km_type type) { unsigned long vaddr = (unsigned long) kvaddr & PAGE_MASK; - enum fixed_addresses idx = type + KM_TYPE_NR*smp_processor_id(); + unsigned int idx = type + KM_TYPE_NR*smp_processor_id(); + unsigned long pfn = kmap_atomic_maps[smp_processor_id()].map[type].pfn; if (vaddr < FIXADDR_START) { // FIXME pagefault_enable(); return; } - if (vaddr != __fix_to_virt(FIX_KMAP_BEGIN+idx)) + if (vaddr != fix_to_virt_noalias(VALIAS_IDX(FIX_KMAP_BEGIN + idx), pfn)) BUG(); /* @@ -104,7 +113,8 @@ void __kunmap_atomic(void *kvaddr, enum km_type type) if ( kmap_atomic_maps[smp_processor_id()].map[type].vaddr ) { kmap_atomic_maps[smp_processor_id()].map[type].page = (struct page *)0; kmap_atomic_maps[smp_processor_id()].map[type].vaddr = (void *) 0; - + kmap_atomic_maps[smp_processor_id()].map[type].pfn = 0; + flush_data_cache_page((unsigned long)vaddr); } @@ -113,7 +123,7 @@ void __kunmap_atomic(void *kvaddr, enum km_type type) * force other mappings to Oops if they'll try to access * this pte without first remap it */ - pte_clear(&init_mm, vaddr, kmap_pte-idx); + pte_clear(&init_mm, vaddr, kmap_pte-(virt_to_fix(vaddr) - VALIAS_IDX(FIX_KMAP_BEGIN))); local_flush_tlb_one(vaddr); #endif @@ -126,14 +136,23 @@ void __kunmap_atomic(void *kvaddr, enum km_type type) */ void *kmap_atomic_pfn(unsigned long pfn, enum km_type type) { - enum fixed_addresses idx; + unsigned int idx; unsigned long vaddr; pagefault_disable(); idx = type + KM_TYPE_NR*smp_processor_id(); - vaddr = __fix_to_virt(FIX_KMAP_BEGIN + idx); - set_pte(kmap_pte-idx, pfn_pte(pfn, kmap_prot)); + vaddr = fix_to_virt_noalias(VALIAS_IDX(FIX_KMAP_BEGIN + idx), pfn); + /* Vaddr could have been adjusted to avoid virt aliasing, + * recalculate the idx from vaddr. + */ + set_pte(kmap_pte-(virt_to_fix(vaddr) - VALIAS_IDX(FIX_KMAP_BEGIN)), \ + pfn_pte(pfn, kmap_prot)); + + kmap_atomic_maps[smp_processor_id()].map[type].page = (struct page *)0; + kmap_atomic_maps[smp_processor_id()].map[type].vaddr = (void *) vaddr; + kmap_atomic_maps[smp_processor_id()].map[type].pfn = pfn; + flush_tlb_one(vaddr); return (void*) vaddr; @@ -141,14 +160,13 @@ void *kmap_atomic_pfn(unsigned long pfn, enum km_type type) struct page *__kmap_atomic_to_page(void *ptr) { - unsigned long idx, vaddr = (unsigned long)ptr; + unsigned long vaddr = (unsigned long)ptr; pte_t *pte; if (vaddr < FIXADDR_START) return virt_to_page(ptr); - idx = virt_to_fix(vaddr); - pte = kmap_pte - (idx - FIX_KMAP_BEGIN); + pte = kmap_pte - (virt_to_fix(vaddr) - VALIAS_IDX(FIX_KMAP_BEGIN)); return pte_page(*pte); } diff --git a/release/src-rt/linux/linux-2.6/arch/mips/mm/init.c b/release/src-rt/linux/linux-2.6/arch/mips/mm/init.c index 12793c912a..528a6ee0f2 100644 --- a/release/src-rt/linux/linux-2.6/arch/mips/mm/init.c +++ b/release/src-rt/linux/linux-2.6/arch/mips/mm/init.c @@ -62,6 +62,7 @@ #endif /* CONFIG_MIPS_MT_SMTC */ DEFINE_PER_CPU(struct mmu_gather, mmu_gathers); +extern void cpu_early_probe_cache(); /* * We have up to 8 empty zeroed pages so we can map one of the right colour @@ -286,7 +287,7 @@ static void __init kmap_init(void) unsigned long kmap_vstart; /* cache the first kmap pte */ - kmap_vstart = __fix_to_virt(FIX_KMAP_BEGIN); + kmap_vstart = __fix_to_virt(VALIAS_IDX(FIX_KMAP_BEGIN)); kmap_pte = kmap_get_fixmap_pte(kmap_vstart); kmap_prot = PAGE_KERNEL; @@ -362,6 +363,8 @@ void __init paging_init(void) unsigned long lastpfn; #endif /* CONFIG_FLATMEM */ + cpu_early_probe_cache(); + pagetable_init(); #ifdef CONFIG_HIGHMEM diff --git a/release/src-rt/linux/linux-2.6/arch/mips/mm/pgtable-32.c b/release/src-rt/linux/linux-2.6/arch/mips/mm/pgtable-32.c index adc6911ba7..7a89f48cc9 100644 --- a/release/src-rt/linux/linux-2.6/arch/mips/mm/pgtable-32.c +++ b/release/src-rt/linux/linux-2.6/arch/mips/mm/pgtable-32.c @@ -51,7 +51,7 @@ void __init pagetable_init(void) /* * Fixed mappings: */ - vaddr = __fix_to_virt(__end_of_fixed_addresses - 1) & PMD_MASK; + vaddr = __fix_to_virt(VALIAS_IDX(__end_of_fixed_addresses - 1)) & PMD_MASK; fixrange_init(vaddr, vaddr + FIXADDR_SIZE, pgd_base); #ifdef CONFIG_HIGHMEM diff --git a/release/src-rt/linux/linux-2.6/config_base b/release/src-rt/linux/linux-2.6/config_base index afeb584114..4f673d645a 100644 --- a/release/src-rt/linux/linux-2.6/config_base +++ b/release/src-rt/linux/linux-2.6/config_base @@ -373,6 +373,7 @@ CONFIG_NETFILTER_NETLINK=y CONFIG_NF_CONNTRACK_ENABLED=y CONFIG_NF_CONNTRACK=y CONFIG_NF_CT_ACCT=y +CONFIG_IP_NF_MATCH_ACCOUNT=y CONFIG_NF_CONNTRACK_MARK=y # CONFIG_NF_CONNTRACK_EVENTS is not set CONFIG_NF_CT_PROTO_GRE=m @@ -426,7 +427,7 @@ CONFIG_NETFILTER_XT_MATCH_LAYER7=m # CONFIG_NETFILTER_XT_MATCH_LAYER7_DEBUG is not set # CONFIG_NETFILTER_XT_MATCH_STATISTIC is not set # CONFIG_NETFILTER_XT_MATCH_TIME is not set -# CONFIG_NETFILTER_XT_MATCH_STRING is not set +CONFIG_NETFILTER_XT_MATCH_STRING=y # CONFIG_NETFILTER_XT_MATCH_WEBSTR is not set CONFIG_NETFILTER_XT_MATCH_WEB=m CONFIG_NETFILTER_XT_MATCH_WEBMON=m @@ -441,7 +442,7 @@ CONFIG_NETFILTER_XT_MATCH_GEOIP=m CONFIG_NF_CONNTRACK_IPV4=y CONFIG_NF_CONNTRACK_PROC_COMPAT=y # CONFIG_IP_NF_QUEUE is not set -CONFIG_BCM_NAT=y +# CONFIG_BCM_NAT is not set CONFIG_IP_NF_IPTABLES=y CONFIG_IP_NF_MATCH_TOS=m CONFIG_IP_NF_MATCH_TIME=m @@ -488,6 +489,7 @@ CONFIG_IP_NF_MATCH_IPP2P=m # CONFIG_IP_NF_TARGET_MACSAVE is not set # CONFIG_IP_NF_MATCH_EXP is not set CONFIG_IP_NF_TOMATOCT=y +CONFIG_IP_NF_DNSMQ=m # # IPv6: Netfilter Configuration (EXPERIMENTAL) @@ -876,12 +878,9 @@ CONFIG_WL_USE_APSTA=y # CONFIG_WL_USE_AP_ONCHIP_G is not set # CONFIG_WL_USE_STA_ONCHIP_G is not set # CONFIG_WL_USE_APSTA_ONCHIP_G is not set -# CONFIG_WL_USE_HIGH is not set -# CONFIG_WL_USBAP is not set CONFIG_WL_AP="wlconfig_lx_router_ap" CONFIG_WL_AP_SDSTD="wlconfig_lx_router_ap_sdstd" CONFIG_WL_STA="wlconfig_lx_router_sta" -CONFIG_WL_APSTA="wlconfig_lx_router_apsta" CONFIG_WL_AP_ONCHIP_G="wlconfig_lx_router_ap_1chipG" CONFIG_WL_STA_ONCHIP_G="wlconfig_lx_router_sta_1chipG" CONFIG_WL_HIGH="wlconfig_lx_router_high" @@ -895,7 +894,8 @@ CONFIG_IMQ=m CONFIG_IMQ_BEHAVIOR_AB=y # CONFIG_IMQ_BEHAVIOR_BA is not set # CONFIG_IMQ_BEHAVIOR_BB is not set -CONFIG_IMQ_NUM_DEVS=2 +CONFIG_IMQ_NUM_DEVS=3 + CONFIG_TUN=m # CONFIG_ARCNET is not set # CONFIG_PHYLIB is not set @@ -1614,7 +1614,7 @@ CONFIG_CONFIGFS_FS=y # # CONFIG_ADFS_FS is not set # CONFIG_AFFS_FS is not set -# CONFIG_HFS_FS is not set +CONFIG_HFS_FS=m CONFIG_HFSPLUS_FS=m # CONFIG_BEFS_FS is not set # CONFIG_BFS_FS is not set @@ -1788,13 +1788,13 @@ CONFIG_CRYPTO_BLKCIPHER=y CONFIG_CRYPTO_HASH=y CONFIG_CRYPTO_MANAGER=y CONFIG_CRYPTO_HMAC=y -# CONFIG_CRYPTO_XCBC is not set -# CONFIG_CRYPTO_NULL is not set -# CONFIG_CRYPTO_MD4 is not set +CONFIG_CRYPTO_XCBC=m +CONFIG_CRYPTO_NULL=m +CONFIG_CRYPTO_MD4=m CONFIG_CRYPTO_MD5=m CONFIG_CRYPTO_SHA1=y -# CONFIG_CRYPTO_SHA256 is not set -# CONFIG_CRYPTO_SHA512 is not set +CONFIG_CRYPTO_SHA256=m +CONFIG_CRYPTO_SHA512=m # CONFIG_CRYPTO_WP512 is not set # CONFIG_CRYPTO_TGR192 is not set # CONFIG_CRYPTO_GF128MUL is not set @@ -1805,13 +1805,13 @@ CONFIG_CRYPTO_CBC=y # CONFIG_CRYPTO_CRYPTD is not set CONFIG_CRYPTO_DES=m # CONFIG_CRYPTO_FCRYPT is not set -# CONFIG_CRYPTO_BLOWFISH is not set -# CONFIG_CRYPTO_TWOFISH is not set -# CONFIG_CRYPTO_SERPENT is not set +CONFIG_CRYPTO_BLOWFISH=m +CONFIG_CRYPTO_TWOFISH=m +CONFIG_CRYPTO_SERPENT=m CONFIG_CRYPTO_AES=m -# CONFIG_CRYPTO_CAST5 is not set -# CONFIG_CRYPTO_CAST6 is not set -# CONFIG_CRYPTO_TEA is not set +CONFIG_CRYPTO_CAST5=m +CONFIG_CRYPTO_CAST6=m +CONFIG_CRYPTO_TEA=m CONFIG_CRYPTO_ARC4=y # CONFIG_CRYPTO_KHAZAD is not set # CONFIG_CRYPTO_ANUBIS is not set diff --git a/release/src-rt/linux/linux-2.6/config_current b/release/src-rt/linux/linux-2.6/config_current new file mode 120000 index 0000000000..0281a9249d --- /dev/null +++ b/release/src-rt/linux/linux-2.6/config_current @@ -0,0 +1 @@ +config_nc \ No newline at end of file diff --git a/release/src-rt/linux/linux-2.6/config_nc b/release/src-rt/linux/linux-2.6/config_nc new file mode 100644 index 0000000000..a5706ed5ba --- /dev/null +++ b/release/src-rt/linux/linux-2.6/config_nc @@ -0,0 +1,1847 @@ +# +# Automatically generated make config: don't edit +# Linux kernel version: 2.6.22.19 +# Sun Jan 3 17:18:01 2010 +# +CONFIG_MIPS=y + +# +# Machine selection +# +CONFIG_MIPS_BRCM=y +# CONFIG_MACH_ALCHEMY is not set +# CONFIG_BASLER_EXCITE is not set +# CONFIG_MIPS_COBALT is not set +# CONFIG_MACH_DECSTATION is not set +# CONFIG_MIPS_EV64120 is not set +# CONFIG_MACH_JAZZ is not set +# CONFIG_LASAT is not set +# CONFIG_MIPS_ATLAS is not set +# CONFIG_MIPS_MALTA is not set +# CONFIG_MIPS_SEAD is not set +# CONFIG_WR_PPMC is not set +# CONFIG_MIPS_SIM is not set +# CONFIG_MOMENCO_OCELOT is not set +# CONFIG_MOMENCO_OCELOT_3 is not set +# CONFIG_MOMENCO_OCELOT_C is not set +# CONFIG_PNX8550_JBS is not set +# CONFIG_PNX8550_STB810 is not set +# CONFIG_DDB5477 is not set +# CONFIG_MACH_VR41XX is not set +# CONFIG_PMC_YOSEMITE is not set +# CONFIG_QEMU is not set +# CONFIG_MARKEINS is not set +# CONFIG_SGI_IP22 is not set +# CONFIG_SGI_IP27 is not set +# CONFIG_SGI_IP32 is not set +# CONFIG_SIBYTE_BIGSUR is not set +# CONFIG_SIBYTE_SWARM is not set +# CONFIG_SIBYTE_SENTOSA is not set +# CONFIG_SIBYTE_RHONE is not set +# CONFIG_SIBYTE_CARMEL is not set +# CONFIG_SIBYTE_LITTLESUR is not set +# CONFIG_SIBYTE_CRHINE is not set +# CONFIG_SIBYTE_CRHONE is not set +# CONFIG_SNI_RM is not set +# CONFIG_TOSHIBA_JMR3927 is not set +# CONFIG_TOSHIBA_RBTX4927 is not set +# CONFIG_TOSHIBA_RBTX4938 is not set + +# +# Support for Broadcom MIPS based boards +# +CONFIG_BCM947XX=y +CONFIG_BCM47XX=y +CONFIG_BCMIPDSCP=y +# CONFIG_HND_BMIPS3300_PROF is not set +CONFIG_RAM_SIZE=0 +# CONFIG_SHRINKMEM is not set +# CONFIG_GENERIC_GPIO is not set +CONFIG_RWSEM_GENERIC_SPINLOCK=y +# CONFIG_ARCH_HAS_ILOG2_U32 is not set +# CONFIG_ARCH_HAS_ILOG2_U64 is not set +CONFIG_GENERIC_FIND_NEXT_BIT=y +CONFIG_GENERIC_HWEIGHT=y +CONFIG_GENERIC_CALIBRATE_DELAY=y +CONFIG_GENERIC_TIME=y +CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y +# CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ is not set +CONFIG_DMA_NONCOHERENT=y +CONFIG_DMA_NEED_PCI_MAP_STATE=y +# CONFIG_CPU_BIG_ENDIAN is not set +CONFIG_CPU_LITTLE_ENDIAN=y +CONFIG_SYS_SUPPORTS_LITTLE_ENDIAN=y +CONFIG_IRQ_CPU=y +CONFIG_MIPS_L1_CACHE_SHIFT=5 + +# +# CPU selection +# +# CONFIG_CPU_MIPS64_R1 is not set +# CONFIG_CPU_MIPS64_R2 is not set +# CONFIG_CPU_R3000 is not set +# CONFIG_CPU_TX39XX is not set +# CONFIG_CPU_VR41XX is not set +# CONFIG_CPU_R4300 is not set +# CONFIG_CPU_R4X00 is not set +# CONFIG_CPU_TX49XX is not set +# CONFIG_CPU_R5000 is not set +# CONFIG_CPU_R5432 is not set +# CONFIG_CPU_R6000 is not set +# CONFIG_CPU_NEVADA is not set +# CONFIG_CPU_R8000 is not set +# CONFIG_CPU_R10000 is not set +# CONFIG_CPU_RM7000 is not set +# CONFIG_CPU_RM9000 is not set +# CONFIG_CPU_SB1 is not set +CONFIG_SYS_HAS_CPU_MIPS32_R1=y +CONFIG_SYS_HAS_CPU_MIPS32_R2=y +CONFIG_CPU_MIPS32=y +CONFIG_SYS_SUPPORTS_32BIT_KERNEL=y +CONFIG_CPU_SUPPORTS_32BIT_KERNEL=y + +# +# Kernel type +# +CONFIG_32BIT=y +# CONFIG_64BIT is not set +CONFIG_PAGE_SIZE_4KB=y +# CONFIG_PAGE_SIZE_8KB is not set +# CONFIG_PAGE_SIZE_16KB is not set +# CONFIG_PAGE_SIZE_64KB is not set +CONFIG_CPU_HAS_PREFETCH=y +CONFIG_MIPS_MT_DISABLED=y +# CONFIG_MIPS_MT_SMP is not set +# CONFIG_MIPS_MT_SMTC is not set +# CONFIG_MIPS_VPE_LOADER is not set +# CONFIG_64BIT_PHYS_ADDR is not set +CONFIG_CPU_HAS_LLSC=y +CONFIG_CPU_HAS_SYNC=y +CONFIG_GENERIC_HARDIRQS=y +CONFIG_GENERIC_IRQ_PROBE=y +CONFIG_HIGHMEM=y +CONFIG_CPU_SUPPORTS_HIGHMEM=y +CONFIG_SYS_SUPPORTS_HIGHMEM=y +CONFIG_ARCH_FLATMEM_ENABLE=y +CONFIG_ARCH_POPULATES_NODE_MAP=y +CONFIG_ARCH_SELECT_MEMORY_MODEL=y +CONFIG_ARCH_SPARSEMEM_ENABLE=y +CONFIG_SELECT_MEMORY_MODEL=y +# CONFIG_FLATMEM_MANUAL is not set +# CONFIG_DISCONTIGMEM_MANUAL is not set +CONFIG_SPARSEMEM_MANUAL=y +CONFIG_SPARSEMEM=y +CONFIG_HAVE_MEMORY_PRESENT=y +# CONFIG_SPARSEMEM_STATIC is not set +CONFIG_SPARSEMEM_EXTREME=y +# CONFIG_FLATMEM is not set +# CONFIG_FLAT_NODE_MEM_MAP is not set +CONFIG_SPLIT_PTLOCK_CPUS=4 +# CONFIG_RESOURCES_64BIT is not set +CONFIG_ZONE_DMA_FLAG=0 +# CONFIG_HZ_48 is not set +CONFIG_HZ_100=y +# CONFIG_HZ_128 is not set +# CONFIG_HZ_250 is not set +# CONFIG_HZ_256 is not set +# CONFIG_HZ_1000 is not set +# CONFIG_HZ_1024 is not set +CONFIG_SYS_SUPPORTS_ARBIT_HZ=y +CONFIG_HZ=100 +CONFIG_PREEMPT_NONE=y +# CONFIG_PREEMPT_VOLUNTARY is not set +# CONFIG_PREEMPT is not set +CONFIG_PREEMPT_BKL=y +# CONFIG_KEXEC is not set +CONFIG_LOCKDEP_SUPPORT=y +CONFIG_STACKTRACE_SUPPORT=y +CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" + +# +# Code maturity level options +# +CONFIG_EXPERIMENTAL=y +CONFIG_BROKEN_ON_SMP=y +CONFIG_INIT_ENV_ARG_LIMIT=32 + +# +# General setup +# +CONFIG_LOCALVERSION="" +# CONFIG_LOCALVERSION_AUTO is not set +CONFIG_SWAP=y +CONFIG_SYSVIPC=y +# CONFIG_IPC_NS is not set +CONFIG_SYSVIPC_SYSCTL=y +# CONFIG_POSIX_MQUEUE is not set +# CONFIG_BSD_PROCESS_ACCT is not set +# CONFIG_TASKSTATS is not set +# CONFIG_UTS_NS is not set +# CONFIG_AUDIT is not set +CONFIG_IKCONFIG=y +# CONFIG_IKCONFIG_PROC is not set +CONFIG_LOG_BUF_SHIFT=14 +CONFIG_SYSFS_DEPRECATED=y +# CONFIG_RELAY is not set +# CONFIG_BLK_DEV_INITRD is not set +CONFIG_SYSCTL=y +CONFIG_EMBEDDED=y +CONFIG_SYSCTL_SYSCALL=y +# CONFIG_KALLSYMS is not set +# CONFIG_KALLSYMS_EXTRA_PASS is not set +CONFIG_HOTPLUG=y +CONFIG_PRINTK=y +CONFIG_BUG=y +# CONFIG_ELF_CORE is not set +CONFIG_BASE_FULL=y +CONFIG_FUTEX=y +CONFIG_ANON_INODES=y +CONFIG_EPOLL=y +CONFIG_SIGNALFD=y +CONFIG_TIMERFD=y +CONFIG_EVENTFD=y +CONFIG_SHMEM=y +# CONFIG_VM_EVENT_COUNTERS is not set +CONFIG_SLAB=y +# CONFIG_SLUB is not set +# CONFIG_SLUB_DEBUG is not set +# CONFIG_SLOB is not set +CONFIG_RT_MUTEXES=y +# CONFIG_TINY_SHMEM is not set +CONFIG_BASE_SMALL=0 + +# +# Loadable module support +# +CONFIG_MODULES=y +CONFIG_MODULE_UNLOAD=y +# CONFIG_MODULE_FORCE_UNLOAD is not set +# CONFIG_MODVERSIONS is not set +# CONFIG_MODULE_SRCVERSION_ALL is not set +CONFIG_KMOD=y + +# +# Block layer +# +CONFIG_BLOCK=y +CONFIG_LBD=y +# CONFIG_BLK_DEV_IO_TRACE is not set +# CONFIG_LSF is not set + +# +# IO Schedulers +# +CONFIG_IOSCHED_NOOP=y +# CONFIG_IOSCHED_AS is not set +# CONFIG_IOSCHED_DEADLINE is not set +# CONFIG_IOSCHED_CFQ is not set +# CONFIG_DEFAULT_AS is not set +# CONFIG_DEFAULT_DEADLINE is not set +# CONFIG_DEFAULT_CFQ is not set +CONFIG_DEFAULT_NOOP=y +CONFIG_DEFAULT_IOSCHED="noop" + +# +# Bus options (PCI, PCMCIA, EISA, ISA, TC) +# +CONFIG_HW_HAS_PCI=y +CONFIG_PCI=y +# CONFIG_ARCH_SUPPORTS_MSI is not set +CONFIG_MMU=y + +# +# PCCARD (PCMCIA/CardBus) support +# +# CONFIG_PCCARD is not set +# CONFIG_HOTPLUG_PCI is not set + +# +# Executable file formats +# +CONFIG_BINFMT_ELF=y +# CONFIG_BINFMT_MISC is not set +CONFIG_TRAD_SIGNALS=y + +# +# Power management options +# +# CONFIG_PM is not set + +# +# Networking +# +CONFIG_NET=y + +# +# Networking options +# +CONFIG_PACKET=y +CONFIG_PACKET_MMAP=y +CONFIG_UNIX=y +# CONFIG_NET_KEY is not set +CONFIG_INET=y +CONFIG_IP_MULTICAST=y +CONFIG_IP_ADVANCED_ROUTER=y +CONFIG_ASK_IP_FIB_HASH=y +# CONFIG_IP_FIB_TRIE is not set +CONFIG_IP_FIB_HASH=y +CONFIG_IP_MULTIPLE_TABLES=y +CONFIG_IP_ROUTE_MULTIPATH=y +# CONFIG_IP_ROUTE_VERBOSE is not set +# CONFIG_IP_PNP is not set +# CONFIG_NET_IPIP is not set +# CONFIG_NET_IPGRE_DEMUX is not set +CONFIG_NET_IPGRE=m +CONFIG_NET_IPGRE_BROADCAST=y +CONFIG_IPSEC_NAT_TRAVERSAL=y +CONFIG_IP_MROUTE=y +# CONFIG_IP_PIMSM_V1 is not set +# CONFIG_IP_PIMSM_V2 is not set +# CONFIG_ARPD is not set +CONFIG_SYN_COOKIES=y +# CONFIG_INET_AH is not set +# CONFIG_INET_ESP is not set +# CONFIG_INET_IPCOMP is not set +# CONFIG_INET_XFRM_TUNNEL is not set +# CONFIG_INET_TUNNEL is not set +# CONFIG_INET_XFRM_MODE_TRANSPORT is not set +# CONFIG_INET_XFRM_MODE_TUNNEL is not set +# CONFIG_INET_XFRM_MODE_BEET is not set +# CONFIG_INET_DIAG is not set +CONFIG_TCP_CONG_ADVANCED=y +# CONFIG_TCP_CONG_BIC is not set +# CONFIG_TCP_CONG_CUBIC is not set +# CONFIG_TCP_CONG_WESTWOOD is not set +# CONFIG_TCP_CONG_HTCP is not set +# CONFIG_TCP_CONG_HSTCP is not set +# CONFIG_TCP_CONG_HYBLA is not set +CONFIG_TCP_CONG_VEGAS=m +# CONFIG_TCP_CONG_SCALABLE is not set +# CONFIG_TCP_CONG_LP is not set +# CONFIG_TCP_CONG_VENO is not set +# CONFIG_TCP_CONG_YEAH is not set +# CONFIG_TCP_CONG_ILLINOIS is not set +# CONFIG_DEFAULT_BIC is not set +# CONFIG_DEFAULT_CUBIC is not set +# CONFIG_DEFAULT_HTCP is not set +# CONFIG_DEFAULT_VEGAS is not set +# CONFIG_DEFAULT_WESTWOOD is not set +CONFIG_DEFAULT_RENO=y +CONFIG_DEFAULT_TCP_CONG="reno" +# CONFIG_TCP_MD5SIG is not set +# CONFIG_IP_VS is not set +# CONFIG_IPV6_PRIVACY is not set +# CONFIG_IPV6_ROUTE_INFO is not set +# CONFIG_INET6_AH is not set +# CONFIG_INET6_ESP is not set +# CONFIG_INET6_IPCOMP is not set +# CONFIG_IPV6_MIP6 is not set +# CONFIG_INET6_XFRM_TUNNEL is not set +# CONFIG_INET6_TUNNEL is not set +# CONFIG_INET6_XFRM_MODE_TRANSPORT is not set +# CONFIG_INET6_XFRM_MODE_TUNNEL is not set +# CONFIG_INET6_XFRM_MODE_BEET is not set +# CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION is not set +# CONFIG_IPV6_TUNNEL is not set +# CONFIG_IPV6_SUBTREES is not set +# CONFIG_IPV6_PIMSM_V2 is not set +# CONFIG_INET_GRO is not set +CONFIG_INET_GSO=y +# CONFIG_NETWORK_SECMARK is not set +CONFIG_NETFILTER=y +# CONFIG_NETFILTER_DEBUG is not set +# CONFIG_BRIDGE_NETFILTER is not set + +# +# Core Netfilter Configuration +# +CONFIG_NETFILTER_NETLINK=y +# CONFIG_NETFILTER_NETLINK_QUEUE is not set +# CONFIG_NETFILTER_NETLINK_LOG is not set +CONFIG_NF_CONNTRACK_ENABLED=y +CONFIG_NF_CONNTRACK=y +CONFIG_NF_CT_ACCT=y +CONFIG_IP_NF_MATCH_ACCOUNT=y +CONFIG_NF_CONNTRACK_MARK=y +# CONFIG_NF_CONNTRACK_EVENTS is not set +CONFIG_NF_CT_PROTO_GRE=m +# CONFIG_NF_CT_PROTO_SCTP is not set +# CONFIG_NF_CONNTRACK_AMANDA is not set +CONFIG_NF_CONNTRACK_FTP=m +CONFIG_NF_CONNTRACK_H323=m +# CONFIG_NF_CONNTRACK_IRC is not set +# CONFIG_NF_CONNTRACK_NETBIOS_NS is not set +CONFIG_NF_CONNTRACK_PPTP=m +# CONFIG_NF_CONNTRACK_SANE is not set +CONFIG_NF_CONNTRACK_SIP=m +CONFIG_NF_CONNTRACK_TFTP=y +CONFIG_NF_CONNTRACK_RTSP=m +# CONFIG_NF_CT_NETLINK is not set +CONFIG_NETFILTER_XTABLES=y +CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m +CONFIG_NETFILTER_XT_TARGET_CONNMARK=y +CONFIG_NETFILTER_XT_TARGET_DSCP=m +CONFIG_NETFILTER_XT_TARGET_HL=m +CONFIG_NETFILTER_XT_TARGET_IMQ=m +CONFIG_NETFILTER_XT_TARGET_MARK=y +CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m +# CONFIG_NETFILTER_XT_TARGET_NFLOG is not set +CONFIG_NETFILTER_XT_TARGET_NOTRACK=m +CONFIG_NETFILTER_XT_TARGET_TCPMSS=y +# CONFIG_NETFILTER_XT_MATCH_COMMENT is not set +CONFIG_NETFILTER_XT_MATCH_CONNBYTES=y +CONFIG_NETFILTER_XT_MATCH_CONNLIMIT=y +CONFIG_NETFILTER_XT_MATCH_CONNMARK=y +# CONFIG_NETFILTER_XT_MATCH_CONNTRACK is not set +# CONFIG_NETFILTER_XT_MATCH_DCCP is not set +CONFIG_NETFILTER_XT_MATCH_DSCP=m +# CONFIG_NETFILTER_XT_MATCH_ESP is not set +# CONFIG_NETFILTER_XT_MATCH_HELPER is not set +CONFIG_NETFILTER_XT_MATCH_IPRANGE=y +CONFIG_NETFILTER_XT_MATCH_LENGTH=m +CONFIG_NETFILTER_XT_MATCH_LIMIT=y +CONFIG_NETFILTER_XT_MATCH_MAC=y +CONFIG_NETFILTER_XT_MATCH_MARK=y +CONFIG_NETFILTER_XT_MATCH_MULTIPORT=y +# CONFIG_NETFILTER_XT_MATCH_PKTTYPE is not set +CONFIG_NETFILTER_XT_MATCH_QUOTA=m +# CONFIG_NETFILTER_XT_MATCH_REALM is not set +CONFIG_NETFILTER_XT_MATCH_RECENT=m +# CONFIG_NETFILTER_XT_MATCH_RECENT_PROC_COMPAT is not set +# CONFIG_NETFILTER_XT_MATCH_SCTP is not set +CONFIG_NETFILTER_XT_MATCH_STATE=y +CONFIG_NETFILTER_XT_MATCH_LAYER7=m +# CONFIG_NETFILTER_XT_MATCH_LAYER7_DEBUG is not set +# CONFIG_NETFILTER_XT_MATCH_STATISTIC is not set +# CONFIG_NETFILTER_XT_MATCH_TIME is not set +CONFIG_NETFILTER_XT_MATCH_STRING=y +# CONFIG_NETFILTER_XT_MATCH_WEBSTR is not set +CONFIG_NETFILTER_XT_MATCH_WEB=m +CONFIG_NETFILTER_XT_MATCH_WEBMON=m +CONFIG_NETFILTER_XT_MATCH_TCPMSS=y +CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m +CONFIG_NETFILTER_XT_MATCH_CONDITION=m +CONFIG_NETFILTER_XT_MATCH_GEOIP=m + +# +# IP: Netfilter Configuration +# +CONFIG_NF_CONNTRACK_IPV4=y +CONFIG_NF_CONNTRACK_PROC_COMPAT=y +# CONFIG_IP_NF_QUEUE is not set +# CONFIG_BCM_NAT is not set +CONFIG_IP_NF_IPTABLES=y +CONFIG_IP_NF_MATCH_TOS=m +CONFIG_IP_NF_MATCH_TIME=m +# CONFIG_IP_NF_MATCH_ECN is not set +# CONFIG_IP_NF_MATCH_AH is not set +# CONFIG_IP_NF_MATCH_OWNER is not set +# CONFIG_IP_NF_MATCH_ADDRTYPE is not set +# CONFIG_IP_NF_MATCH_MPORT is not set +CONFIG_IP_NF_FILTER=y +CONFIG_IP_NF_TARGET_REJECT=y +CONFIG_IP_NF_TARGET_LOG=y +# CONFIG_IP_NF_TARGET_ULOG is not set +CONFIG_NF_NAT=y +CONFIG_NF_NAT_NEEDED=y +CONFIG_IP_NF_TARGET_MASQUERADE=y +CONFIG_IP_NF_TARGET_REDIRECT=m +CONFIG_IP_NF_TARGET_NETMAP=m +# CONFIG_IP_NF_TARGET_SAME is not set +CONFIG_IP_NF_TARGET_TRIGGER=y +# CONFIG_NF_NAT_SNMP_BASIC is not set +CONFIG_NF_NAT_PROTO_GRE=m +CONFIG_NF_NAT_FTP=m +# CONFIG_NF_NAT_IRC is not set +CONFIG_NF_NAT_RTSP=m +CONFIG_NF_NAT_TFTP=y +# CONFIG_NF_NAT_AMANDA is not set +CONFIG_NF_NAT_PPTP=m +CONFIG_NF_NAT_H323=m +# CONFIG_NF_NAT_AUTOFW is not set +CONFIG_NF_NAT_SIP=m +CONFIG_IP_NF_MANGLE=y +CONFIG_IP_NF_TARGET_TOS=m +# CONFIG_IP_NF_TARGET_ECN is not set +# CONFIG_IP_NF_TARGET_CLUSTERIP is not set +CONFIG_IP_NF_RAW=m +# CONFIG_IP_NF_ARPTABLES is not set +CONFIG_IP_NF_MATCH_U32=y +CONFIG_IP_NF_TARGET_ROUTE=m +# CONFIG_IP_NF_TARGET_TARPIT is not set +CONFIG_IP_NF_MATCH_IPP2P=m +# CONFIG_IP_NF_MATCH_IPV4OPTIONS is not set +# CONFIG_IP_NF_TARGET_BCOUNT is not set +# CONFIG_IP_NF_MATCH_BCOUNT is not set +# CONFIG_IP_NF_TARGET_MACSAVE is not set +# CONFIG_IP_NF_MATCH_EXP is not set +CONFIG_IP_NF_TOMATOCT=y +CONFIG_IP_NF_DNSMQ=m + +# +# IPv6: Netfilter Configuration (EXPERIMENTAL) +# +# CONFIG_IP6_NF_QUEUE is not set +# CONFIG_IP6_NF_MATCH_OPTS is not set +# CONFIG_IP6_NF_MATCH_FRAG is not set +# CONFIG_IP6_NF_MATCH_OWNER is not set +# CONFIG_IP6_NF_MATCH_IPV6HEADER is not set +# CONFIG_IP6_NF_MATCH_AH is not set +# CONFIG_IP6_NF_MATCH_MH is not set +# CONFIG_IP6_NF_MATCH_EUI64 is not set + +# +# Bridge: Netfilter Configuration +# +CONFIG_BRIDGE_EBT_BROUTE=m +CONFIG_BRIDGE_EBT_T_FILTER=m +CONFIG_BRIDGE_EBT_T_NAT=m +# CONFIG_BRIDGE_EBT_802_3 is not set +# CONFIG_BRIDGE_EBT_AMONG is not set +CONFIG_BRIDGE_EBT_ARP=m +CONFIG_BRIDGE_EBT_IP=m +CONFIG_BRIDGE_EBT_LIMIT=m +# CONFIG_BRIDGE_EBT_MARK is not set +CONFIG_BRIDGE_EBT_PKTTYPE=m +CONFIG_BRIDGE_EBT_STP=m +CONFIG_BRIDGE_EBT_VLAN=m +CONFIG_BRIDGE_EBT_ARPREPLY=m +CONFIG_BRIDGE_EBT_DNAT=m +CONFIG_BRIDGE_EBT_MARK_T=m +CONFIG_BRIDGE_EBT_REDIRECT=m +CONFIG_BRIDGE_EBT_SNAT=m +CONFIG_BRIDGE_EBT_LOG=m +# CONFIG_BRIDGE_EBT_ULOG is not set +# CONFIG_IP_DCCP is not set +# CONFIG_IP_SCTP is not set +# CONFIG_TIPC is not set +# CONFIG_ATM is not set +CONFIG_BRIDGE=y +CONFIG_VLAN_8021Q=y +# CONFIG_DECNET is not set +CONFIG_LLC=y +# CONFIG_LLC2 is not set +# CONFIG_IPX is not set +# CONFIG_ATALK is not set +# CONFIG_X25 is not set +# CONFIG_LAPB is not set +# CONFIG_ECONET is not set +# CONFIG_WAN_ROUTER is not set + +# +# QoS and/or fair queueing +# +CONFIG_NET_SCHED=y +CONFIG_NET_SCH_FIFO=y + +# +# Queueing/Scheduling +# +# CONFIG_NET_SCH_CBQ is not set +CONFIG_NET_SCH_HTB=y +CONFIG_NET_SCH_HFSC=m +CONFIG_NET_SCH_PRIO=y +CONFIG_NET_SCH_RED=m +CONFIG_NET_SCH_SFQ=y +CONFIG_NET_SCH_ESFQ=m +CONFIG_NET_SCH_ESFQ_NFCT=y +# CONFIG_NET_SCH_TEQL is not set +CONFIG_NET_SCH_TBF=m +# CONFIG_NET_SCH_GRED is not set +# CONFIG_NET_SCH_DSMARK is not set +# CONFIG_NET_SCH_NETEM is not set +CONFIG_NET_SCH_INGRESS=y + +# +# Classification +# +CONFIG_NET_CLS=y +CONFIG_NET_CLS_BASIC=y +CONFIG_NET_CLS_TCINDEX=y +CONFIG_NET_CLS_ROUTE4=y +CONFIG_NET_CLS_ROUTE=y +CONFIG_NET_CLS_FW=y +CONFIG_NET_CLS_U32=y +# CONFIG_CLS_U32_PERF is not set +CONFIG_CLS_U32_MARK=y +# CONFIG_NET_CLS_RSVP is not set +# CONFIG_NET_CLS_RSVP6 is not set +# CONFIG_NET_EMATCH is not set +# CONFIG_NET_CLS_ACT is not set +# CONFIG_NET_ACT_POLICE is not set +# CONFIG_NET_ACT_GACT is not set +# CONFIG_GACT_PROB is not set +# CONFIG_NET_ACT_MIRRED is not set +# CONFIG_NET_ACT_IPT is not set +# CONFIG_NET_ACT_PEDIT is not set +# CONFIG_NET_ACT_SIMP is not set +CONFIG_NET_CLS_POLICE=y +# CONFIG_NET_CLS_IND is not set +CONFIG_NET_ESTIMATOR=y + +# +# Network testing +# +# CONFIG_NET_PKTGEN is not set +# CONFIG_HAMRADIO is not set +# CONFIG_IRDA is not set +# CONFIG_BT is not set +# CONFIG_AF_RXRPC is not set +CONFIG_FIB_RULES=y + +# +# Wireless +# +# CONFIG_CFG80211 is not set +# CONFIG_WIRELESS_EXT is not set +# CONFIG_MAC80211 is not set +# CONFIG_IEEE80211 is not set +# CONFIG_RFKILL is not set + +# +# Device Drivers +# + +# +# Generic Driver Options +# +CONFIG_STANDALONE=y +CONFIG_PREVENT_FIRMWARE_BUILD=y +# CONFIG_FW_LOADER is not set +# CONFIG_SYS_HYPERVISOR is not set + +# +# Connector - unified userspace <-> kernelspace linker +# +CONFIG_CONNECTOR=m +# CONFIG_PROC_EVENTS is not set +CONFIG_MTD=y +# CONFIG_MTD_DEBUG is not set +# CONFIG_MTD_CONCAT is not set +CONFIG_MTD_PARTITIONS=y +# CONFIG_MTD_REDBOOT_PARTS is not set +# CONFIG_MTD_CMDLINE_PARTS is not set + +# +# User Modules And Translation Layers +# +CONFIG_MTD_CHAR=y +CONFIG_MTD_BLKDEVS=y +CONFIG_MTD_BLOCK=y +# CONFIG_FTL is not set +# CONFIG_NFTL is not set +# CONFIG_INFTL is not set +# CONFIG_RFD_FTL is not set +# CONFIG_SSFDC is not set + +# +# RAM/ROM/Flash chip drivers +# +CONFIG_MTD_CFI=y +# CONFIG_MTD_JEDECPROBE is not set +CONFIG_MTD_GEN_PROBE=y +CONFIG_MTD_CFI_ADV_OPTIONS=y +CONFIG_MTD_CFI_NOSWAP=y +# CONFIG_MTD_CFI_BE_BYTE_SWAP is not set +# CONFIG_MTD_CFI_LE_BYTE_SWAP is not set +CONFIG_MTD_CFI_GEOMETRY=y +CONFIG_MTD_MAP_BANK_WIDTH_1=y +CONFIG_MTD_MAP_BANK_WIDTH_2=y +CONFIG_MTD_MAP_BANK_WIDTH_4=y +# CONFIG_MTD_MAP_BANK_WIDTH_8 is not set +# CONFIG_MTD_MAP_BANK_WIDTH_16 is not set +# CONFIG_MTD_MAP_BANK_WIDTH_32 is not set +CONFIG_MTD_CFI_I1=y +CONFIG_MTD_CFI_I2=y +# CONFIG_MTD_CFI_I4 is not set +# CONFIG_MTD_CFI_I8 is not set +# CONFIG_MTD_OTP is not set +CONFIG_MTD_CFI_INTELEXT=y +CONFIG_MTD_CFI_AMDSTD=y +CONFIG_MTD_CFI_STAA=y +CONFIG_MTD_CFI_UTIL=y +# CONFIG_MTD_RAM is not set +# CONFIG_MTD_ROM is not set +# CONFIG_MTD_ABSENT is not set + +# +# Mapping drivers for chip access +# +# CONFIG_MTD_COMPLEX_MAPPINGS is not set +# CONFIG_MTD_PHYSMAP is not set +# CONFIG_MTD_PLATRAM is not set +CONFIG_MTD_BCM947XX=y + +# +# Self-contained MTD device drivers +# +CONFIG_MTD_SFLASH=y +# CONFIG_MTD_NFLASH is not set +# CONFIG_MTD_PMC551 is not set +# CONFIG_MTD_SLRAM is not set +# CONFIG_MTD_PHRAM is not set +# CONFIG_MTD_MTDRAM is not set +# CONFIG_MTD_BLOCK2MTD is not set + +# +# Disk-On-Chip Device Drivers +# +# CONFIG_MTD_DOC2000 is not set +# CONFIG_MTD_DOC2001 is not set +# CONFIG_MTD_DOC2001PLUS is not set +# CONFIG_MTD_NAND is not set +# CONFIG_MTD_ONENAND is not set + +# +# UBI - Unsorted block images +# +# CONFIG_MTD_UBI is not set + +# +# Parallel port support +# +# CONFIG_PARPORT is not set + +# +# Plug and Play support +# +# CONFIG_PNPACPI is not set + +# +# Block devices +# +# CONFIG_BLK_CPQ_DA is not set +# CONFIG_BLK_CPQ_CISS_DA is not set +# CONFIG_BLK_DEV_DAC960 is not set +# CONFIG_BLK_DEV_UMEM is not set +# CONFIG_BLK_DEV_COW_COMMON is not set +CONFIG_BLK_DEV_LOOP=m +# CONFIG_BLK_DEV_CRYPTOLOOP is not set +# CONFIG_BLK_DEV_NBD is not set +# CONFIG_BLK_DEV_SX8 is not set +# CONFIG_BLK_DEV_UB is not set +# CONFIG_BLK_DEV_RAM is not set +# CONFIG_CDROM_PKTCDVD is not set +# CONFIG_ATA_OVER_ETH is not set + +# +# Misc devices +# +# CONFIG_PHANTOM is not set +# CONFIG_SGI_IOC4 is not set +# CONFIG_TIFM_CORE is not set +# CONFIG_IDE is not set + +# +# SCSI device support +# +# CONFIG_RAID_ATTRS is not set +CONFIG_SCSI=m +# CONFIG_SCSI_TGT is not set +# CONFIG_SCSI_NETLINK is not set +CONFIG_SCSI_PROC_FS=y + +# +# SCSI support type (disk, tape, CD-ROM) +# +CONFIG_BLK_DEV_SD=m +# CONFIG_CHR_DEV_ST is not set +# CONFIG_CHR_DEV_OSST is not set +# CONFIG_BLK_DEV_SR is not set +# CONFIG_BLK_DEV_SR_VENDOR is not set +# CONFIG_CHR_DEV_SG is not set +# CONFIG_CHR_DEV_SCH is not set + +# +# Some SCSI devices (e.g. CD jukebox) support multiple LUNs +# +CONFIG_SCSI_MULTI_LUN=y +# CONFIG_SCSI_CONSTANTS is not set +# CONFIG_SCSI_LOGGING is not set +# CONFIG_SCSI_SCAN_ASYNC is not set +CONFIG_SCSI_WAIT_SCAN=m + +# +# SCSI Transports +# +# CONFIG_SCSI_SPI_ATTRS is not set +# CONFIG_SCSI_FC_ATTRS is not set +# CONFIG_SCSI_ISCSI_ATTRS is not set +# CONFIG_SCSI_SAS_ATTRS is not set +# CONFIG_SCSI_SAS_LIBSAS is not set + +# +# SCSI low-level drivers +# +# CONFIG_ISCSI_TCP is not set +# CONFIG_BLK_DEV_3W_XXXX_RAID is not set +# CONFIG_SCSI_3W_9XXX is not set +# CONFIG_SCSI_ACARD is not set +# CONFIG_SCSI_AACRAID is not set +# CONFIG_SCSI_AIC7XXX is not set +# CONFIG_SCSI_AIC7XXX_OLD is not set +# CONFIG_SCSI_AIC79XX is not set +# CONFIG_SCSI_AIC94XX is not set +# CONFIG_SCSI_DPT_I2O is not set +# CONFIG_SCSI_ARCMSR is not set +# CONFIG_MEGARAID_NEWGEN is not set +# CONFIG_MEGARAID_LEGACY is not set +# CONFIG_MEGARAID_SAS is not set +# CONFIG_SCSI_HPTIOP is not set +# CONFIG_SCSI_DMX3191D is not set +# CONFIG_SCSI_FUTURE_DOMAIN is not set +# CONFIG_SCSI_IPS is not set +# CONFIG_SCSI_INITIO is not set +# CONFIG_SCSI_INIA100 is not set +# CONFIG_SCSI_STEX is not set +# CONFIG_SCSI_SYM53C8XX_2 is not set +# CONFIG_SCSI_QLOGIC_1280 is not set +# CONFIG_SCSI_QLA_FC is not set +# CONFIG_SCSI_QLA_ISCSI is not set +# CONFIG_SCSI_LPFC is not set +# CONFIG_SCSI_DC395x is not set +# CONFIG_SCSI_DC390T is not set +# CONFIG_SCSI_NSP32 is not set +# CONFIG_SCSI_DEBUG is not set +# CONFIG_SCSI_SRP is not set +# CONFIG_ATA is not set + +# +# Multi-device support (RAID and LVM) +# +# CONFIG_MD is not set + +# +# Fusion MPT device support +# +# CONFIG_FUSION is not set +# CONFIG_FUSION_SPI is not set +# CONFIG_FUSION_FC is not set +# CONFIG_FUSION_SAS is not set + +# +# IEEE 1394 (FireWire) support +# +# CONFIG_FIREWIRE is not set +# CONFIG_IEEE1394 is not set + +# +# I2O device support +# +# CONFIG_I2O is not set + +# +# Network device support +# +CONFIG_NETDEVICES=y + +# +# Broadcom HND network devices +# +CONFIG_HND=y +CONFIG_ET=m +CONFIG_ET_47XX=y +CONFIG_BCM_CTF=m +# CONFIG_PLC is not set +# CONFIG_WL_EMULATOR is not set +CONFIG_WL=m +# CONFIG_WAPI is not set +# CONFIG_WL_USE_AP is not set +# CONFIG_WL_USE_AP_SDSTD is not set +# CONFIG_WL_USE_STA is not set +CONFIG_WL_USE_APSTA=y +# CONFIG_WL_USE_AP_ONCHIP_G is not set +# CONFIG_WL_USE_STA_ONCHIP_G is not set +# CONFIG_WL_USE_APSTA_ONCHIP_G is not set +CONFIG_WL_AP="wlconfig_lx_router_ap" +CONFIG_WL_AP_SDSTD="wlconfig_lx_router_ap_sdstd" +CONFIG_WL_STA="wlconfig_lx_router_sta" +CONFIG_WL_AP_ONCHIP_G="wlconfig_lx_router_ap_1chipG" +CONFIG_WL_STA_ONCHIP_G="wlconfig_lx_router_sta_1chipG" +CONFIG_WL_HIGH="wlconfig_lx_router_high" +CONFIG_EMF=m +CONFIG_IFB=m +# CONFIG_DUMMY is not set +# CONFIG_BONDING is not set +# CONFIG_EQUALIZER is not set +CONFIG_IMQ=m +# CONFIG_IMQ_BEHAVIOR_AA is not set +CONFIG_IMQ_BEHAVIOR_AB=y +# CONFIG_IMQ_BEHAVIOR_BA is not set +# CONFIG_IMQ_BEHAVIOR_BB is not set +CONFIG_IMQ_NUM_DEVS=3 + +CONFIG_TUN=m +# CONFIG_ARCNET is not set +# CONFIG_PHYLIB is not set + +# +# Ethernet (10 or 100Mbit) +# +CONFIG_NET_ETHERNET=y +CONFIG_MII=m +# CONFIG_HAPPYMEAL is not set +# CONFIG_SUNGEM is not set +# CONFIG_CASSINI is not set +# CONFIG_NET_VENDOR_3COM is not set +# CONFIG_DM9000 is not set + +# +# Tulip family network device support +# +# CONFIG_NET_TULIP is not set +# CONFIG_HP100 is not set +# CONFIG_NET_PCI is not set +# CONFIG_NETDEV_1000 is not set +# CONFIG_NETDEV_10000 is not set +# CONFIG_TR is not set + +# +# Wireless LAN +# +# CONFIG_WLAN_PRE80211 is not set +# CONFIG_WLAN_80211 is not set + +# +# USB Network Adapters +# +# CONFIG_USB_CATC is not set +# CONFIG_USB_KAWETH is not set +# CONFIG_USB_PEGASUS is not set +# CONFIG_USB_RTL8150 is not set +# CONFIG_USB_USBNET_MII is not set +CONFIG_USB_USBNET=m +# CONFIG_USB_NET_AX8817X is not set +CONFIG_USB_NET_CDCETHER=m +# CONFIG_USB_NET_DM9601 is not set +# CONFIG_USB_NET_GL620A is not set +# CONFIG_USB_NET_NET1080 is not set +# CONFIG_USB_NET_PLUSB is not set +# CONFIG_USB_NET_MCS7830 is not set +CONFIG_USB_NET_RNDIS_HOST=m +# CONFIG_USB_NET_CDC_SUBSET is not set +# CONFIG_USB_ALI_M5632 is not set +# CONFIG_USB_AN2720 is not set +# CONFIG_USB_BELKIN is not set +# CONFIG_USB_ARMLINUX is not set +# CONFIG_USB_EPSON2888 is not set +# CONFIG_USB_KC2190 is not set +# CONFIG_USB_NET_ZAURUS is not set +# CONFIG_WAN is not set +# CONFIG_FDDI is not set +# CONFIG_HIPPI is not set +CONFIG_PPP=y +CONFIG_PPP_MULTILINK=y +# CONFIG_PPP_FILTER is not set +CONFIG_PPP_ASYNC=y +CONFIG_PPP_SYNC_TTY=y +CONFIG_PPP_DEFLATE=m +# CONFIG_PPP_BSDCOMP is not set +CONFIG_PPP_MPPE_MPPC=y +CONFIG_PPPOE=y +CONFIG_PPPOL2TP=y +CONFIG_PPTP=y +# CONFIG_SLIP is not set +CONFIG_SLHC=y +# CONFIG_NET_FC is not set +# CONFIG_SHAPER is not set +# CONFIG_NETCONSOLE is not set +# CONFIG_NETPOLL is not set +# CONFIG_NET_POLL_CONTROLLER is not set + +# +# ISDN subsystem +# +# CONFIG_ISDN is not set + +# +# Telephony Support +# +# CONFIG_PHONE is not set + +# +# Input device support +# +CONFIG_INPUT=m +# CONFIG_INPUT_FF_MEMLESS is not set +# CONFIG_INPUT_POLLDEV is not set + +# +# Userland interfaces +# +CONFIG_INPUT_MOUSEDEV=m +CONFIG_INPUT_MOUSEDEV_PSAUX=y +CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024 +CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 +CONFIG_INPUT_JOYDEV=m +# CONFIG_INPUT_TSDEV is not set +CONFIG_INPUT_EVDEV=m +# CONFIG_INPUT_EVBUG is not set + +# +# Input Device Drivers +# +# CONFIG_INPUT_KEYBOARD is not set +# CONFIG_INPUT_MOUSE is not set +# CONFIG_INPUT_JOYSTICK is not set +# CONFIG_INPUT_TABLET is not set +# CONFIG_INPUT_TOUCHSCREEN is not set +# CONFIG_INPUT_MISC is not set + +# +# Hardware I/O ports +# +# CONFIG_SERIO is not set +# CONFIG_GAMEPORT is not set + +# +# Character devices +# +# CONFIG_VT is not set +CONFIG_SERIAL_NONSTANDARD=y +# CONFIG_COMPUTONE is not set +# CONFIG_ROCKETPORT is not set +# CONFIG_CYCLADES is not set +# CONFIG_DIGIEPCA is not set +# CONFIG_MOXA_INTELLIO is not set +# CONFIG_MOXA_SMARTIO is not set +# CONFIG_MOXA_SMARTIO_NEW is not set +# CONFIG_ISI is not set +# CONFIG_SYNCLINKMP is not set +# CONFIG_SYNCLINK_GT is not set +CONFIG_N_HDLC=y +# CONFIG_RISCOM8 is not set +# CONFIG_SPECIALIX is not set +# CONFIG_SX is not set +# CONFIG_RIO is not set +# CONFIG_STALDRV is not set + +# +# Serial drivers +# +CONFIG_SERIAL_8250=y +CONFIG_SERIAL_8250_CONSOLE=y +CONFIG_SERIAL_8250_PCI=y +CONFIG_SERIAL_8250_NR_UARTS=4 +CONFIG_SERIAL_8250_RUNTIME_UARTS=2 +# CONFIG_SERIAL_8250_EXTENDED is not set +# CONFIG_SERIAL_8250_MANY_PORTS is not set +# CONFIG_SERIAL_8250_SHARE_IRQ is not set +# CONFIG_SERIAL_8250_DETECT_IRQ is not set +# CONFIG_SERIAL_8250_RSA is not set + +# +# Non-8250 serial port support +# +CONFIG_SERIAL_CORE=y +CONFIG_SERIAL_CORE_CONSOLE=y +# CONFIG_SERIAL_JSM is not set +CONFIG_UNIX98_PTYS=y +CONFIG_LEGACY_PTYS=y +CONFIG_LEGACY_PTY_COUNT=16 + +# +# IPMI +# +# CONFIG_IPMI_HANDLER is not set +# CONFIG_WATCHDOG is not set +# CONFIG_HW_RANDOM is not set +# CONFIG_RTC is not set +# CONFIG_GEN_RTC is not set +# CONFIG_R3964 is not set +# CONFIG_APPLICOM is not set +# CONFIG_DRM is not set +# CONFIG_RAW_DRIVER is not set + +# +# TPM devices +# +# CONFIG_TCG_TPM is not set +CONFIG_DEVPORT=y +# CONFIG_I2C is not set + +# +# SPI support +# +# CONFIG_SPI is not set +# CONFIG_SPI_MASTER is not set + +# +# Dallas's 1-wire bus +# +# CONFIG_W1 is not set +# CONFIG_HWMON is not set + +# +# Multifunction device drivers +# +# CONFIG_MFD_SM501 is not set + +# +# Multimedia devices +# +CONFIG_VIDEO_DEV=m +# CONFIG_VIDEO_V4L1 is not set +# CONFIG_VIDEO_V4L1_COMPAT is not set +CONFIG_VIDEO_V4L2=y +CONFIG_VIDEO_CAPTURE_DRIVERS=y +# CONFIG_VIDEO_ADV_DEBUG is not set +CONFIG_VIDEO_HELPER_CHIPS_AUTO=y +# CONFIG_VIDEO_VIVI is not set +# CONFIG_VIDEO_CPIA is not set +# CONFIG_VIDEO_CPIA2 is not set +# CONFIG_VIDEO_STRADIS is not set +CONFIG_V4L_USB_DRIVERS=y +CONFIG_USB_GSPCA=m +CONFIG_USB_M5602=m +CONFIG_USB_STV06XX=m +CONFIG_USB_GL860=m +CONFIG_USB_GSPCA_CONEX=m +CONFIG_USB_GSPCA_ETOMS=m +CONFIG_USB_GSPCA_FINEPIX=m +CONFIG_USB_GSPCA_JEILINJ=m +CONFIG_USB_GSPCA_MARS=m +CONFIG_USB_GSPCA_MR97310A=m +CONFIG_USB_GSPCA_OV519=m +CONFIG_USB_GSPCA_OV534=m +CONFIG_USB_GSPCA_PAC207=m +CONFIG_USB_GSPCA_PAC7311=m +CONFIG_USB_GSPCA_SN9C20X=m +CONFIG_USB_GSPCA_SN9C20X_EVDEV=y +CONFIG_USB_GSPCA_SONIXB=m +CONFIG_USB_GSPCA_SONIXJ=m +CONFIG_USB_GSPCA_SPCA500=m +CONFIG_USB_GSPCA_SPCA501=m +CONFIG_USB_GSPCA_SPCA505=m +CONFIG_USB_GSPCA_SPCA506=m +CONFIG_USB_GSPCA_SPCA508=m +CONFIG_USB_GSPCA_SPCA561=m +CONFIG_USB_GSPCA_SQ905=m +CONFIG_USB_GSPCA_SQ905C=m +CONFIG_USB_GSPCA_STK014=m +CONFIG_USB_GSPCA_SUNPLUS=m +CONFIG_USB_GSPCA_T613=m +CONFIG_USB_GSPCA_TV8532=m +CONFIG_USB_GSPCA_VC032X=m +CONFIG_USB_GSPCA_ZC3XX=m +# CONFIG_USB_VICAM is not set +# CONFIG_USB_IBMCAM is not set +# CONFIG_USB_KONICAWC is not set +# CONFIG_USB_QUICKCAM_MESSENGER is not set +# CONFIG_USB_ET61X251 is not set +# CONFIG_USB_OV511 is not set +# CONFIG_USB_SE401 is not set +# CONFIG_USB_SN9C102 is not set +# CONFIG_USB_STV680 is not set +# CONFIG_USB_ZC0301 is not set +CONFIG_USB_PWC=m +# CONFIG_USB_PWC_DEBUG is not set +CONFIG_USB_PWC_INPUT_EVDEV=y +# CONFIG_USB_ZR364XX is not set +CONFIG_USB_VIDEO_CLASS=m +CONFIG_USB_VIDEO_CLASS_INPUT_EVDEV=y +# CONFIG_RADIO_ADAPTERS is not set +# CONFIG_RADIO_GEMTEK_PCI is not set +# CONFIG_RADIO_MAXIRADIO is not set +# CONFIG_RADIO_MAESTRO is not set +# CONFIG_USB_DSBR is not set +# CONFIG_DVB_CORE is not set +# CONFIG_DAB is not set + +# +# Graphics support +# +# CONFIG_BACKLIGHT_LCD_SUPPORT is not set + +# +# Display device support +# +# CONFIG_DISPLAY_SUPPORT is not set +# CONFIG_VGASTATE is not set +# CONFIG_FB is not set + +# +# Sound +# +CONFIG_SOUND=m + +# +# Advanced Linux Sound Architecture +# +CONFIG_SND=m +CONFIG_SND_TIMER=m +CONFIG_SND_PCM=m +CONFIG_SND_HWDEP=m +CONFIG_SND_RAWMIDI=m +CONFIG_SND_SEQUENCER=m +# CONFIG_SND_SEQ_DUMMY is not set +# CONFIG_SND_SEQUENCER_OSS is not set +# CONFIG_SND_VIRMIDI is not set +CONFIG_SND_OSSEMUL=y +CONFIG_SND_MIXER_OSS=m +CONFIG_SND_PCM_OSS=m +CONFIG_SND_PCM_OSS_PLUGINS=y +# CONFIG_SND_DYNAMIC_MINORS is not set +CONFIG_SND_SUPPORT_OLD_API=y +# CONFIG_SND_VERBOSE_PROCFS is not set +# CONFIG_SND_VERBOSE_PRINTK is not set +# CONFIG_SND_DEBUG is not set + +# +# Generic devices +# +# CONFIG_SND_DUMMY is not set +# CONFIG_SND_MTPAV is not set +# CONFIG_SND_SERIAL_U16550 is not set +# CONFIG_SND_MPU401 is not set + +# +# PCI devices +# +# CONFIG_SND_AD1889 is not set +# CONFIG_SND_ALS300 is not set +# CONFIG_SND_ALI5451 is not set +# CONFIG_SND_ATIIXP is not set +# CONFIG_SND_ATIIXP_MODEM is not set +# CONFIG_SND_AU8810 is not set +# CONFIG_SND_AU8820 is not set +# CONFIG_SND_AU8830 is not set +# CONFIG_SND_AZT3328 is not set +# CONFIG_SND_BT87X is not set +# CONFIG_SND_CA0106 is not set +# CONFIG_SND_CMIPCI is not set +# CONFIG_SND_CS4281 is not set +# CONFIG_SND_CS46XX is not set +# CONFIG_SND_DARLA20 is not set +# CONFIG_SND_GINA20 is not set +# CONFIG_SND_LAYLA20 is not set +# CONFIG_SND_DARLA24 is not set +# CONFIG_SND_GINA24 is not set +# CONFIG_SND_LAYLA24 is not set +# CONFIG_SND_MONA is not set +# CONFIG_SND_MIA is not set +# CONFIG_SND_ECHO3G is not set +# CONFIG_SND_INDIGO is not set +# CONFIG_SND_INDIGOIO is not set +# CONFIG_SND_INDIGODJ is not set +# CONFIG_SND_EMU10K1 is not set +# CONFIG_SND_EMU10K1X is not set +# CONFIG_SND_ENS1370 is not set +# CONFIG_SND_ENS1371 is not set +# CONFIG_SND_ES1938 is not set +# CONFIG_SND_ES1968 is not set +# CONFIG_SND_FM801 is not set +# CONFIG_SND_HDA_INTEL is not set +# CONFIG_SND_HDSP is not set +# CONFIG_SND_HDSPM is not set +# CONFIG_SND_ICE1712 is not set +# CONFIG_SND_ICE1724 is not set +# CONFIG_SND_INTEL8X0 is not set +# CONFIG_SND_INTEL8X0M is not set +# CONFIG_SND_KORG1212 is not set +# CONFIG_SND_MAESTRO3 is not set +# CONFIG_SND_MIXART is not set +# CONFIG_SND_NM256 is not set +# CONFIG_SND_PCXHR is not set +# CONFIG_SND_RIPTIDE is not set +# CONFIG_SND_RME32 is not set +# CONFIG_SND_RME96 is not set +# CONFIG_SND_RME9652 is not set +# CONFIG_SND_SONICVIBES is not set +# CONFIG_SND_TRIDENT is not set +# CONFIG_SND_VIA82XX is not set +# CONFIG_SND_VIA82XX_MODEM is not set +# CONFIG_SND_VX222 is not set +# CONFIG_SND_YMFPCI is not set + +# +# ALSA MIPS devices +# + +# +# USB devices +# +CONFIG_SND_USB_AUDIO=m +# CONFIG_SND_USB_CAIAQ is not set + +# +# System on Chip audio support +# +# CONFIG_SND_SOC is not set + +# +# Open Sound System +# +# CONFIG_SOUND_PRIME is not set + +# +# HID Devices +# +CONFIG_HID=m +# CONFIG_HID_DEBUG is not set + +# +# USB Input Devices +# +CONFIG_USB_HID=m +# CONFIG_USB_HIDINPUT_POWERBOOK is not set +# CONFIG_HID_FF is not set +CONFIG_USB_HIDDEV=y + +# +# USB HID Boot Protocol drivers +# +CONFIG_USB_KBD=m +CONFIG_USB_MOUSE=m + +# +# USB support +# +CONFIG_USB_SUPPORT=y +CONFIG_USB_ARCH_HAS_HCD=y +CONFIG_USB_ARCH_HAS_OHCI=y +CONFIG_USB_ARCH_HAS_EHCI=y +CONFIG_USB=m +# CONFIG_USB_DEBUG is not set +# CONFIG_USB_ANNOUNCE_NEW_DEVICES is not set + +# +# Miscellaneous USB options +# +CONFIG_USB_DEVICEFS=y +CONFIG_USB_DEVICE_CLASS=y +# CONFIG_USB_DYNAMIC_MINORS is not set +# CONFIG_USB_OTG is not set + +# +# USB Host Controller Drivers +# +CONFIG_USB_EHCI_HCD=m +CONFIG_USB_EHCI_ROOT_HUB_TT=y +CONFIG_USB_EHCI_TT_NEWSCHED=y +# CONFIG_USB_EHCI_BIG_ENDIAN_MMIO is not set +# CONFIG_USB_ISP116X_HCD is not set +CONFIG_USB_OHCI_HCD=m +# CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set +# CONFIG_USB_OHCI_BIG_ENDIAN_MMIO is not set +CONFIG_USB_OHCI_LITTLE_ENDIAN=y +CONFIG_USB_UHCI_HCD=m +# CONFIG_USB_SL811_HCD is not set +# CONFIG_USB_R8A66597_HCD is not set + +# +# USB Device Class drivers +# +CONFIG_USB_ACM=m +CONFIG_USB_PRINTER=m + +# +# NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' +# + +# +# may also be needed; see USB_STORAGE Help for more information +# +CONFIG_USB_STORAGE=m +# CONFIG_USB_STORAGE_DEBUG is not set +# CONFIG_USB_STORAGE_DATAFAB is not set +# CONFIG_USB_STORAGE_FREECOM is not set +# CONFIG_USB_STORAGE_DPCM is not set +# CONFIG_USB_STORAGE_USBAT is not set +# CONFIG_USB_STORAGE_SDDR09 is not set +# CONFIG_USB_STORAGE_SDDR55 is not set +# CONFIG_USB_STORAGE_JUMPSHOT is not set +# CONFIG_USB_STORAGE_ALAUDA is not set +# CONFIG_USB_STORAGE_ONETOUCH is not set +# CONFIG_USB_STORAGE_KARMA is not set +# CONFIG_USB_LIBUSUAL is not set + +# +# USB Imaging devices +# +# CONFIG_USB_MDC800 is not set +# CONFIG_USB_MICROTEK is not set +# CONFIG_USB_MON is not set + +# +# USB port drivers +# + +# +# USB Serial Converter support +# +CONFIG_USB_SERIAL=m +# CONFIG_USB_EZUSB is not set +CONFIG_USB_SERIAL_GENERIC=y +# CONFIG_USB_SERIAL_AIRCABLE is not set +# CONFIG_USB_SERIAL_AIRPRIME is not set +# CONFIG_USB_SERIAL_ARK3116 is not set +# CONFIG_USB_SERIAL_BELKIN is not set +# CONFIG_USB_SERIAL_WHITEHEAT is not set +# CONFIG_USB_SERIAL_DIGI_ACCELEPORT is not set +# CONFIG_USB_SERIAL_CP2101 is not set +# CONFIG_USB_SERIAL_CYPRESS_M8 is not set +# CONFIG_USB_SERIAL_EMPEG is not set +CONFIG_USB_SERIAL_FTDI_SIO=m +# CONFIG_USB_SERIAL_FUNSOFT is not set +# CONFIG_USB_SERIAL_VISOR is not set +# CONFIG_USB_SERIAL_IPAQ is not set +# CONFIG_USB_SERIAL_IR is not set +# CONFIG_USB_SERIAL_EDGEPORT is not set +# CONFIG_USB_SERIAL_EDGEPORT_TI is not set +# CONFIG_USB_SERIAL_GARMIN is not set +# CONFIG_USB_SERIAL_IPW is not set +# CONFIG_USB_SERIAL_KEYSPAN_PDA is not set +# CONFIG_USB_SERIAL_KEYSPAN is not set +# CONFIG_USB_SERIAL_KLSI is not set +# CONFIG_USB_SERIAL_KOBIL_SCT is not set +# CONFIG_USB_SERIAL_MCT_U232 is not set +# CONFIG_USB_SERIAL_MOS7720 is not set +# CONFIG_USB_SERIAL_MOS7840 is not set +# CONFIG_USB_SERIAL_NAVMAN is not set +CONFIG_USB_SERIAL_PL2303=m +# CONFIG_USB_SERIAL_OTI6858 is not set +# CONFIG_USB_SERIAL_HP4X is not set +# CONFIG_USB_SERIAL_SAFE is not set +CONFIG_USB_SERIAL_SIERRAWIRELESS=m +# CONFIG_USB_SERIAL_TI is not set +# CONFIG_USB_SERIAL_CYBERJACK is not set +# CONFIG_USB_SERIAL_XIRCOM is not set +CONFIG_USB_SERIAL_OPTION=m +# CONFIG_USB_SERIAL_OMNINET is not set +# CONFIG_USB_SERIAL_DEBUG is not set + +# +# USB Miscellaneous drivers +# +# CONFIG_USB_EMI62 is not set +# CONFIG_USB_EMI26 is not set +# CONFIG_USB_ADUTUX is not set +# CONFIG_USB_AUERSWALD is not set +# CONFIG_USB_RIO500 is not set +# CONFIG_USB_LEGOTOWER is not set +# CONFIG_USB_LCD is not set +# CONFIG_USB_LED is not set +# CONFIG_USB_CYPRESS_CY7C63 is not set +# CONFIG_USB_CYTHERM is not set +# CONFIG_USB_PHIDGET is not set +# CONFIG_USB_IDMOUSE is not set +# CONFIG_USB_FTDI_ELAN is not set +# CONFIG_USB_APPLEDISPLAY is not set +# CONFIG_USB_SISUSBVGA is not set +# CONFIG_USB_LD is not set +# CONFIG_USB_TRANCEVIBRATOR is not set +# CONFIG_USB_IOWARRIOR is not set +# CONFIG_USB_TEST is not set +CONFIG_USB_IP_COMMON=m +# CONFIG_USB_IP_VHCI_HCD is not set +CONFIG_USB_IP_HOST=m +# CONFIG_USB_IP_DEBUG_ENABLE is not set + +# +# USB DSL modem support +# + +# +# USB Gadget Support +# +# CONFIG_USB_GADGET is not set +CONFIG_MMC=m +# CONFIG_MMC_DEBUG is not set +# CONFIG_MMC_UNSAFE_RESUME is not set + +# +# MMC/SD Card Drivers +# +CONFIG_MMC_BLOCK=m + +# +# MMC/SD Host Controller Drivers +# +CONFIG_MMC_SDHCI=m +# CONFIG_MMC_TIFM_SD is not set + +# +# LED devices +# +CONFIG_NEW_LEDS=y +CONFIG_LEDS_CLASS=m + +# +# LED drivers +# +CONFIG_LEDS_USBGPIO=m + +# +# LED Triggers +# +CONFIG_LEDS_TRIGGERS=y +# CONFIG_LEDS_TRIGGER_TIMER is not set +# CONFIG_LEDS_TRIGGER_HEARTBEAT is not set +CONFIG_LEDS_TRIGGER_USBDEV=m + +# +# InfiniBand support +# +# CONFIG_INFINIBAND is not set + +# +# EDAC - error detection and reporting (RAS) (EXPERIMENTAL) +# + +# +# Real Time Clock +# +# CONFIG_RTC_CLASS is not set + +# +# DMA Engine support +# +# CONFIG_DMA_ENGINE is not set + +# +# DMA Clients +# + +# +# DMA Devices +# + +# +# File systems +# +CONFIG_EXT2_FS=m +CONFIG_EXT2_FS_XATTR=y +# CONFIG_EXT2_FS_POSIX_ACL is not set +# CONFIG_EXT2_FS_SECURITY is not set +# CONFIG_EXT2_FS_XIP is not set +CONFIG_EXT3_FS=m +CONFIG_EXT3_FS_XATTR=y +# CONFIG_EXT3_FS_POSIX_ACL is not set +# CONFIG_EXT3_FS_SECURITY is not set +# CONFIG_EXT4DEV_FS is not set +CONFIG_JBD=m +# CONFIG_JBD_DEBUG is not set +CONFIG_FS_MBCACHE=m +CONFIG_REISERFS_FS=m +# CONFIG_REISERFS_CHECK is not set +CONFIG_REISERFS_PROC_INFO=y +CONFIG_REISERFS_FS_XATTR=y +# CONFIG_REISERFS_FS_POSIX_ACL is not set +# CONFIG_REISERFS_FS_SECURITY is not set +CONFIG_JFS_FS=m +# CONFIG_JFS_POSIX_ACL is not set +# CONFIG_JFS_SECURITY is not set +# CONFIG_JFS_DEBUG is not set +CONFIG_JFS_STATISTICS=y +# CONFIG_FS_POSIX_ACL is not set +CONFIG_XFS_FS=m +# CONFIG_XFS_QUOTA is not set +# CONFIG_XFS_SECURITY is not set +# CONFIG_XFS_POSIX_ACL is not set +# CONFIG_XFS_RT is not set +# CONFIG_GFS2_FS is not set +# CONFIG_OCFS2_FS is not set +# CONFIG_MINIX_FS is not set +# CONFIG_ROMFS_FS is not set +CONFIG_INOTIFY=y +CONFIG_INOTIFY_USER=y +# CONFIG_QUOTA is not set +CONFIG_DNOTIFY=y +# CONFIG_AUTOFS_FS is not set +# CONFIG_AUTOFS4_FS is not set +CONFIG_FUSE_FS=m +CONFIG_GENERIC_ACL=y + +# +# CD-ROM/DVD Filesystems +# +# CONFIG_ISO9660_FS is not set +# CONFIG_UDF_FS is not set + +# +# DOS/FAT/NT Filesystems +# +CONFIG_FAT_FS=m +# CONFIG_MSDOS_FS is not set +CONFIG_VFAT_FS=m +CONFIG_FAT_DEFAULT_CODEPAGE=437 +CONFIG_FAT_DEFAULT_IOCHARSET="utf8" +# CONFIG_NTFS_FS is not set +# CONFIG_NTFS_DEBUG is not set +# CONFIG_NTFS_RW is not set + +# +# Pseudo filesystems +# +CONFIG_PROC_FS=y +# CONFIG_PROC_KCORE is not set +CONFIG_PROC_SYSCTL=y +CONFIG_SYSFS=y +CONFIG_TMPFS=y +# CONFIG_TMPFS_POSIX_ACL is not set +# CONFIG_HUGETLB_PAGE is not set +CONFIG_RAMFS=y +CONFIG_CONFIGFS_FS=y + +# +# Miscellaneous filesystems +# +# CONFIG_ADFS_FS is not set +# CONFIG_AFFS_FS is not set +CONFIG_HFS_FS=m +CONFIG_HFSPLUS_FS=m +# CONFIG_BEFS_FS is not set +# CONFIG_BFS_FS is not set +# CONFIG_EFS_FS is not set +CONFIG_JFFS_FS=m +CONFIG_JFFS_FS_VERBOSE=0 +# CONFIG_JFFS_PROC_FS is not set +CONFIG_JFFS2_FS=m +CONFIG_JFFS2_FS_DEBUG=0 +CONFIG_JFFS2_FS_WRITEBUFFER=y +# CONFIG_JFFS2_SUMMARY is not set +# CONFIG_JFFS2_FS_XATTR is not set +# CONFIG_JFFS2_FS_POSIX_ACL is not set +CONFIG_JFFS2_COMPRESSION_OPTIONS=y +CONFIG_JFFS2_ZLIB=y +# CONFIG_JFFS2_LZO is not set +# CONFIG_JFFS2_RTIME is not set +# CONFIG_JFFS2_RUBIN is not set +# CONFIG_JFFS2_CMODE_NONE is not set +CONFIG_JFFS2_CMODE_PRIORITY=y +# CONFIG_JFFS2_CMODE_SIZE is not set +# CONFIG_CRAMFS is not set +CONFIG_SQUASHFS=y +# CONFIG_SQUASHFS_EMBEDDED is not set +CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE=3 +# CONFIG_SQUASHFS_VMALLOC is not set +# CONFIG_VXFS_FS is not set +# CONFIG_HPFS_FS is not set +# CONFIG_QNX4FS_FS is not set +# CONFIG_SYSV_FS is not set +# CONFIG_UFS_FS is not set + +# +# Network File Systems +# +CONFIG_NFS_FS=m +CONFIG_NFS_V3=y +# CONFIG_NFS_V3_ACL is not set +# CONFIG_NFS_V4 is not set +# CONFIG_NFS_DIRECTIO is not set +CONFIG_NFSD=m +CONFIG_NFSD_V3=y +# CONFIG_NFSD_V3_ACL is not set +# CONFIG_NFSD_V4 is not set +CONFIG_NFSD_TCP=y +CONFIG_LOCKD=m +CONFIG_LOCKD_V4=y +CONFIG_EXPORTFS=m +CONFIG_NFS_COMMON=y +CONFIG_SUNRPC=m +CONFIG_SUNRPC_GSS=m +CONFIG_SUNRPC_BIND34=y +# CONFIG_RPCSEC_GSS_KRB5 is not set +# CONFIG_RPCSEC_GSS_SPKM3 is not set +# CONFIG_SMB_FS is not set +CONFIG_CIFS=m +# CONFIG_CIFS_STATS is not set +CONFIG_CIFS_WEAK_PW_HASH=y +# CONFIG_CIFS_XATTR is not set +# CONFIG_CIFS_DEBUG2 is not set +# CONFIG_CIFS_EXPERIMENTAL is not set +# CONFIG_NCP_FS is not set +# CONFIG_CODA_FS is not set +# CONFIG_AFS_FS is not set +# CONFIG_9P_FS is not set + +# +# Partition Types +# +CONFIG_PARTITION_ADVANCED=y +# CONFIG_ACORN_PARTITION is not set +# CONFIG_OSF_PARTITION is not set +# CONFIG_AMIGA_PARTITION is not set +# CONFIG_ATARI_PARTITION is not set +# CONFIG_MAC_PARTITION is not set +CONFIG_MSDOS_PARTITION=y +# CONFIG_BSD_DISKLABEL is not set +# CONFIG_MINIX_SUBPARTITION is not set +# CONFIG_SOLARIS_X86_PARTITION is not set +# CONFIG_UNIXWARE_DISKLABEL is not set +# CONFIG_LDM_PARTITION is not set +# CONFIG_SGI_PARTITION is not set +# CONFIG_ULTRIX_PARTITION is not set +# CONFIG_SUN_PARTITION is not set +# CONFIG_KARMA_PARTITION is not set +CONFIG_EFI_PARTITION=y +# CONFIG_SYSV68_PARTITION is not set + +# +# Native Language Support +# +CONFIG_NLS=y +CONFIG_NLS_DEFAULT="utf8" +CONFIG_NLS_CODEPAGE_437=m +# CONFIG_NLS_CODEPAGE_737 is not set +# CONFIG_NLS_CODEPAGE_775 is not set +CONFIG_NLS_CODEPAGE_850=m +CONFIG_NLS_CODEPAGE_852=m +# CONFIG_NLS_CODEPAGE_855 is not set +# CONFIG_NLS_CODEPAGE_857 is not set +# CONFIG_NLS_CODEPAGE_860 is not set +# CONFIG_NLS_CODEPAGE_861 is not set +# CONFIG_NLS_CODEPAGE_862 is not set +# CONFIG_NLS_CODEPAGE_863 is not set +# CONFIG_NLS_CODEPAGE_864 is not set +# CONFIG_NLS_CODEPAGE_865 is not set +CONFIG_NLS_CODEPAGE_866=m +# CONFIG_NLS_CODEPAGE_869 is not set +CONFIG_NLS_CODEPAGE_936=m +CONFIG_NLS_CODEPAGE_950=m +CONFIG_NLS_CODEPAGE_932=m +CONFIG_NLS_CODEPAGE_949=m +# CONFIG_NLS_CODEPAGE_874 is not set +# CONFIG_NLS_ISO8859_8 is not set +# CONFIG_NLS_CODEPAGE_1250 is not set +# CONFIG_NLS_CODEPAGE_1251 is not set +# CONFIG_NLS_ASCII is not set +# CONFIG_NLS_ISO8859_1 is not set +# CONFIG_NLS_ISO8859_2 is not set +# CONFIG_NLS_ISO8859_3 is not set +# CONFIG_NLS_ISO8859_4 is not set +# CONFIG_NLS_ISO8859_5 is not set +# CONFIG_NLS_ISO8859_6 is not set +# CONFIG_NLS_ISO8859_7 is not set +# CONFIG_NLS_ISO8859_9 is not set +# CONFIG_NLS_ISO8859_13 is not set +# CONFIG_NLS_ISO8859_14 is not set +# CONFIG_NLS_ISO8859_15 is not set +# CONFIG_NLS_KOI8_R is not set +# CONFIG_NLS_KOI8_U is not set +CONFIG_NLS_UTF8=y + +# +# Distributed Lock Manager +# +# CONFIG_DLM is not set + +# +# Profiling support +# +# CONFIG_PROFILING is not set + +# +# Kernel hacking +# +CONFIG_TRACE_IRQFLAGS_SUPPORT=y +# CONFIG_PRINTK_TIME is not set +CONFIG_ENABLE_MUST_CHECK=y +CONFIG_MAGIC_SYSRQ=y +# CONFIG_UNUSED_SYMBOLS is not set +# CONFIG_DEBUG_FS is not set +# CONFIG_HEADERS_CHECK is not set +# CONFIG_DEBUG_KERNEL is not set +# CONFIG_HWSIM is not set +CONFIG_CROSSCOMPILE=y +CONFIG_CMDLINE="root=/dev/mtdblock2 noinitrd console=ttyS0,115200" +CONFIG_SYS_SUPPORTS_KGDB=y + +# +# Security options +# +# CONFIG_KEYS is not set +# CONFIG_SECURITY is not set + +# +# Cryptographic options +# +CONFIG_CRYPTO=y +CONFIG_CRYPTO_ALGAPI=y +CONFIG_CRYPTO_BLKCIPHER=y +CONFIG_CRYPTO_HASH=y +CONFIG_CRYPTO_MANAGER=y +CONFIG_CRYPTO_HMAC=y +CONFIG_CRYPTO_XCBC=m +CONFIG_CRYPTO_NULL=m +CONFIG_CRYPTO_MD4=m +CONFIG_CRYPTO_MD5=m +CONFIG_CRYPTO_SHA1=y +CONFIG_CRYPTO_SHA256=m +CONFIG_CRYPTO_SHA512=m +# CONFIG_CRYPTO_WP512 is not set +# CONFIG_CRYPTO_TGR192 is not set +# CONFIG_CRYPTO_GF128MUL is not set +CONFIG_CRYPTO_ECB=y +CONFIG_CRYPTO_CBC=y +# CONFIG_CRYPTO_PCBC is not set +# CONFIG_CRYPTO_LRW is not set +# CONFIG_CRYPTO_CRYPTD is not set +CONFIG_CRYPTO_DES=m +# CONFIG_CRYPTO_FCRYPT is not set +CONFIG_CRYPTO_BLOWFISH=m +CONFIG_CRYPTO_TWOFISH=m +CONFIG_CRYPTO_SERPENT=m +CONFIG_CRYPTO_AES=m +CONFIG_CRYPTO_CAST5=m +CONFIG_CRYPTO_CAST6=m +CONFIG_CRYPTO_TEA=m +CONFIG_CRYPTO_ARC4=y +# CONFIG_CRYPTO_KHAZAD is not set +# CONFIG_CRYPTO_ANUBIS is not set +CONFIG_CRYPTO_DEFLATE=m +# CONFIG_CRYPTO_MICHAEL_MIC is not set +# CONFIG_CRYPTO_CRC32C is not set +# CONFIG_CRYPTO_CAMELLIA is not set +# CONFIG_CRYPTO_TEST is not set + +# +# Hardware crypto devices +# + +# +# Library routines +# +CONFIG_BITREVERSE=y +CONFIG_CRC_CCITT=y +# CONFIG_CRC16 is not set +# CONFIG_CRC_ITU_T is not set +CONFIG_CRC32=y +# CONFIG_LIBCRC32C is not set +CONFIG_ZLIB_INFLATE=m +CONFIG_ZLIB_DEFLATE=m +# CONFIG_LZO_COMPRESS is not set +# CONFIG_LZO_DECOMPRESS is not set +CONFIG_PLIST=y +CONFIG_HAS_IOMEM=y +CONFIG_HAS_IOPORT=y +CONFIG_HAS_DMA=y +CONFIG_NVRAM_SIZE=0 +# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set +# CONFIG_CPU_MIPS32_R1 is not set +CONFIG_CPU_MIPS32_R2=y +CONFIG_CPU_MIPSR2=y +CONFIG_IPV6=y +CONFIG_IP6_NF_IPTABLES=y +CONFIG_IP6_NF_MATCH_RT=y +CONFIG_IP6_NF_FILTER=m +CONFIG_IP6_NF_TARGET_LOG=m +CONFIG_IP6_NF_TARGET_REJECT=m +CONFIG_IP6_NF_MANGLE=m +CONFIG_NF_CONNTRACK_IPV6=m +CONFIG_NETFILTER_XT_MATCH_HL=m +CONFIG_IPV6_ROUTER_PREF=y +CONFIG_IPV6_SIT=m +CONFIG_IPV6_SIT_6RD=y +CONFIG_IPV6_MULTIPLE_TABLES=y +CONFIG_IP6_NF_RAW=m +CONFIG_IPV6_OPTIMISTIC_DAD=y +CONFIG_IPV6_MROUTE=y +CONFIG_IP6_NF_TARGET_ROUTE=m +# CONFIG_BCM57XX is not set +# CONFIG_WL_USBAP is not set +CONFIG_WL_APSTA="wlconfig_lx_router_apsta" +CONFIG_BRIDGE_NF_EBTABLES=m +CONFIG_BRIDGE_EBT_IP6=m +# CONFIG_NVRAM_64K is not set diff --git a/release/src-rt/linux/linux-2.6/drivers/base/core.c b/release/src-rt/linux/linux-2.6/drivers/base/core.c index 2bcd83798d..44718eaffb 100644 --- a/release/src-rt/linux/linux-2.6/drivers/base/core.c +++ b/release/src-rt/linux/linux-2.6/drivers/base/core.c @@ -1110,8 +1110,8 @@ EXPORT_SYMBOL_GPL(device_unregister); EXPORT_SYMBOL_GPL(get_device); EXPORT_SYMBOL_GPL(put_device); -EXPORT_SYMBOL_GPL(device_create_file); -EXPORT_SYMBOL_GPL(device_remove_file); +EXPORT_SYMBOL(device_create_file); +EXPORT_SYMBOL(device_remove_file); static void device_create_release(struct device *dev) diff --git a/release/src-rt/linux/linux-2.6/drivers/mtd/devices/Kconfig b/release/src-rt/linux/linux-2.6/drivers/mtd/devices/Kconfig index 5fa3d100af..6447055512 100644 --- a/release/src-rt/linux/linux-2.6/drivers/mtd/devices/Kconfig +++ b/release/src-rt/linux/linux-2.6/drivers/mtd/devices/Kconfig @@ -7,6 +7,9 @@ menu "Self-contained MTD device drivers" config MTD_SFLASH bool "Broadcom Chipcommon Serial Flash support" +config MTD_NFLASH + bool "Broadcom Chipcommon NAND Flash support" + config MTD_PMC551 tristate "Ramix PMC551 PCI Mezzanine RAM card support" depends on PCI diff --git a/release/src-rt/linux/linux-2.6/drivers/mtd/devices/Makefile b/release/src-rt/linux/linux-2.6/drivers/mtd/devices/Makefile index dddc356069..562ec6228c 100644 --- a/release/src-rt/linux/linux-2.6/drivers/mtd/devices/Makefile +++ b/release/src-rt/linux/linux-2.6/drivers/mtd/devices/Makefile @@ -19,3 +19,4 @@ obj-$(CONFIG_MTD_DATAFLASH) += mtd_dataflash.o obj-$(CONFIG_MTD_DATAFLASH26) += at91_dataflash26.o obj-$(CONFIG_MTD_M25P80) += m25p80.o obj-$(CONFIG_MTD_SFLASH) += sflash.o +obj-$(CONFIG_MTD_NFLASH) += bcm_nflash.o diff --git a/release/src-rt/linux/linux-2.6/drivers/mtd/devices/bcm_nflash.c b/release/src-rt/linux/linux-2.6/drivers/mtd/devices/bcm_nflash.c new file mode 100644 index 0000000000..a964bf5108 --- /dev/null +++ b/release/src-rt/linux/linux-2.6/drivers/mtd/devices/bcm_nflash.c @@ -0,0 +1,445 @@ +/* + * Broadcom SiliconBackplane chipcommon serial flash interface + * + * Copyright (C) 2009, Broadcom Corporation + * All Rights Reserved. + * + * THIS SOFTWARE IS OFFERED "AS IS", AND BROADCOM GRANTS NO WARRANTIES OF ANY + * KIND, EXPRESS OR IMPLIED, BY STATUTE, COMMUNICATION OR OTHERWISE. BROADCOM + * SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS + * FOR A SPECIFIC PURPOSE OR NONINFRINGEMENT CONCERNING THIS SOFTWARE. + * + * $Id $ + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#ifdef CONFIG_MTD_PARTITIONS +extern struct mtd_partition * init_nflash_mtd_partitions(struct mtd_info *mtd, size_t size); + +struct mtd_partition *nflash_parts; +#endif + + +struct nflash_mtd { + si_t *sih; + chipcregs_t *cc; + struct mtd_info mtd; + struct mtd_erase_region_info region; + unsigned char *map; +}; + +/* Private global state */ +static struct nflash_mtd nflash; + +static int +nflash_mtd_read(struct mtd_info *mtd, loff_t from, size_t len, size_t *retlen, u_char *buf) +{ + struct nflash_mtd *nflash = (struct nflash_mtd *) mtd->priv; + int bytes, ret = 0; + struct mtd_partition *part = NULL; + uint extra = 0; + uchar *tmpbuf = NULL; + int size; + uint offset, blocksize, mask, blk_offset, off; + uint skip_bytes = 0, good_bytes = 0; + int blk_idx, i; + int need_copy = 0; + uchar *ptr = NULL; + + /* Locate the part */ + for (i = 0; nflash_parts[i].name; i++) { + if (from >= nflash_parts[i].offset && + ((nflash_parts[i+1].name == NULL) || (from < nflash_parts[i+1].offset))) { + part = &nflash_parts[i]; + break; + } + } + if (!part) + return -EINVAL; + /* Check address range */ + if (!len) + return 0; + if ((from + len) > mtd->size) + return -EINVAL; + offset = from; + if ((offset & (NFL_SECTOR_SIZE - 1)) != 0) { + extra = offset & (NFL_SECTOR_SIZE - 1); + offset -= extra; + len += extra; + need_copy = 1; + } + size = (len + (NFL_SECTOR_SIZE - 1)) & ~(NFL_SECTOR_SIZE - 1); + if (size != len) + need_copy = 1; + if (!need_copy) { + ptr = buf; + } else { + tmpbuf = (uchar *)kmalloc(size, GFP_KERNEL); + ptr = tmpbuf; + } + + blocksize = mtd->erasesize; + mask = blocksize - 1; + blk_offset = offset & ~mask; + good_bytes = part->offset & ~mask; + /* Check and skip bad blocks */ + for (blk_idx = good_bytes/blocksize; blk_idx < mtd->eraseregions->numblocks; blk_idx++) { + if ((nflash->map[blk_idx] != 0) || + (nflash_checkbadb(nflash->sih, nflash->cc, (blocksize*blk_idx)) != 0)) { + skip_bytes += blocksize; + nflash->map[blk_idx] = 1; + } else { + if (good_bytes == blk_offset) + break; + good_bytes += blocksize; + } + } + if (blk_idx == mtd->eraseregions->numblocks) { + ret = -EINVAL; + goto done; + } + blk_offset = blocksize * blk_idx; + *retlen = 0; + while (len > 0) { + off = offset + skip_bytes; + + /* Check and skip bad blocks */ + if (off >= (blk_offset + blocksize)) { + blk_offset += blocksize; + blk_idx++; + while (((nflash->map[blk_idx] != 0) || + (nflash_checkbadb(nflash->sih, nflash->cc, blk_offset) != 0)) && + (blk_offset < mtd->size)) { + skip_bytes += blocksize; + nflash->map[blk_idx] = 1; + blk_offset += blocksize; + blk_idx++; + } + if (blk_offset >= mtd->size) { + ret = -EINVAL; + goto done; + } + off = offset + skip_bytes; + } + + if ((bytes = nflash_read(nflash->sih, nflash->cc, off, NFL_SECTOR_SIZE, ptr)) < 0) { + ret = bytes; + goto done; + } + if (bytes > len) + bytes = len; + offset += bytes; + len -= bytes; + ptr += bytes; + *retlen += bytes; + } + +done: + if (tmpbuf) { + *retlen -= extra; + memcpy(buf, tmpbuf+extra, *retlen); + kfree(tmpbuf); + } + return ret; +} + +static int +nflash_mtd_write(struct mtd_info *mtd, loff_t to, size_t len, size_t *retlen, const u_char *buf) +{ + struct nflash_mtd *nflash = (struct nflash_mtd *) mtd->priv; + int bytes, ret = 0; + struct mtd_partition *part = NULL; + u_char *block = NULL; + u_char *ptr = buf; + uint offset, blocksize, mask, blk_offset, off; + uint skip_bytes = 0, good_bytes = 0; + int blk_idx, i; + int read_len, write_len, copy_len; + loff_t from; + u_char *write_ptr; + + /* Locate the part */ + for (i = 0; nflash_parts[i].name; i++) { + if (to >= nflash_parts[i].offset && + ((nflash_parts[i+1].name == NULL) || (to < nflash_parts[i+1].offset))) { + part = &nflash_parts[i]; + break; + } + } + if (!part) + return -EINVAL; + /* Check address range */ + if (!len) + return 0; + if ((to + len) > (part->offset + part->size)) + return -EINVAL; + offset = to; + blocksize = mtd->erasesize; + if (!(block = kmalloc(blocksize, GFP_KERNEL))) + return -ENOMEM; + mask = blocksize - 1; + /* Check and skip bad blocks */ + blk_offset = offset & ~mask; + good_bytes = part->offset & ~mask; + for (blk_idx = good_bytes/blocksize; blk_idx < (part->offset+part->size)/blocksize; blk_idx++) { + if ((nflash->map[blk_idx] != 0) || + (nflash_checkbadb(nflash->sih, nflash->cc, (blocksize*blk_idx)) != 0)) { + skip_bytes += blocksize; + nflash->map[blk_idx] = 1; + } else { + if (good_bytes == blk_offset) + break; + good_bytes += blocksize; + } + } + if (blk_idx == (part->offset+part->size)/blocksize) { + ret = -EINVAL; + goto done; + } + blk_offset = blocksize * blk_idx; + /* Backup and erase one block at a time */ + *retlen = 0; + while (len) { + /* Align offset */ + from = offset & ~mask; + /* Copy existing data into holding block if necessary */ + if (((offset & (blocksize-1)) != 0) || (len < blocksize)) { + if ((ret = nflash_mtd_read(mtd, from, blocksize, &read_len, block))) + goto done; + if (read_len != blocksize) { + ret = -EINVAL; + goto done; + } + } + /* Copy input data into holding block */ + copy_len = min(len, blocksize - (offset & mask)); + memcpy(block + (offset & mask), ptr, copy_len); + off = (uint) from + skip_bytes; + /* Erase block */ + if ((ret = nflash_erase(nflash->sih, nflash->cc, off)) < 0) { + goto done; + } + /* Write holding block */ + write_ptr = block; + write_len = blocksize; + while (write_len) { + if ((bytes = nflash_write(nflash->sih, nflash->cc, + (uint) from + skip_bytes, + (uint) write_len, + (uchar *) write_ptr)) < 0) { + ret = bytes; + goto done; + } + from += bytes; + write_len -= bytes; + write_ptr += bytes; + } + offset += copy_len; + len -= copy_len; + ptr += copy_len; + *retlen += copy_len; + /* Check and skip bad blocks */ + if (len) { + blk_offset += blocksize; + blk_idx++; + while (((nflash->map[blk_idx] != 0) || + (nflash_checkbadb(nflash->sih, nflash->cc, blk_offset) != 0)) && + (blk_offset < (part->offset+part->size))) { + skip_bytes += blocksize; + nflash->map[blk_idx] = 1; + blk_offset += blocksize; + blk_idx++; + } + if (blk_offset >= (part->offset+part->size)) { + ret = -EINVAL; + goto done; + } + } + } +done: + if (block) + kfree(block); + return ret; +} + +static int +nflash_mtd_erase(struct mtd_info *mtd, struct erase_info *erase) +{ + struct nflash_mtd *nflash = (struct nflash_mtd *) mtd->priv; + int i, j, ret = 0; + unsigned int addr, len; + + /* Check address range */ + if (!erase->len) + return 0; + if ((erase->addr + erase->len) > mtd->size) + return -EINVAL; + + addr = erase->addr; + len = erase->len; + + /* Ensure that requested region is aligned */ + for (i = 0; i < mtd->numeraseregions; i++) { + for (j = 0; j < mtd->eraseregions[i].numblocks; j++) { + if (addr == mtd->eraseregions[i].offset + + mtd->eraseregions[i].erasesize * j && + len >= mtd->eraseregions[i].erasesize) { + if ((ret = nflash_erase(nflash->sih, nflash->cc, addr)) < 0) + break; + addr += mtd->eraseregions[i].erasesize; + len -= mtd->eraseregions[i].erasesize; + } + } + if (ret) + break; + } + + /* Set erase status */ + if (ret) + erase->state = MTD_ERASE_FAILED; + else + erase->state = MTD_ERASE_DONE; + + /* Call erase callback */ + if (erase->callback) + erase->callback(erase); + + return ret; +} + +#if LINUX_VERSION_CODE < 0x20212 && defined(MODULE) +#define nflash_mtd_init init_module +#define nflash_mtd_exit cleanup_module +#endif + +static int __init +nflash_mtd_init(void) +{ + int ret = 0; + struct nflash *info; + struct pci_dev *dev = NULL; +#ifdef CONFIG_MTD_PARTITIONS + struct mtd_partition *parts; + int i; +#endif + + list_for_each_entry(dev, &((pci_find_bus(0, 0))->devices), bus_list) { + if ((dev != NULL) && (dev->device == CC_CORE_ID)) + break; + } + + if (dev == NULL) { + printk(KERN_ERR "nflash: chipcommon not found\n"); + return -ENODEV; + } + + memset(&nflash, 0, sizeof(struct nflash_mtd)); + + /* attach to the backplane */ + if (!(nflash.sih = si_kattach(SI_OSH))) { + printk(KERN_ERR "nflash: error attaching to backplane\n"); + ret = -EIO; + goto fail; + } + + /* Map registers and flash base */ + if (!(nflash.cc = ioremap_nocache( + pci_resource_start(dev, 0), + pci_resource_len(dev, 0)))) { + printk(KERN_ERR "nflash: error mapping registers\n"); + ret = -EIO; + goto fail; + } + + /* Initialize serial flash access */ + if (!(info = nflash_init(nflash.sih, nflash.cc))) { + printk(KERN_ERR "nflash: found no supported devices\n"); + ret = -ENODEV; + goto fail; + } + + /* Setup region info */ + nflash.region.offset = 0; + nflash.region.erasesize = info->blocksize; + nflash.region.numblocks = info->numblocks; + if (nflash.region.erasesize > nflash.mtd.erasesize) + nflash.mtd.erasesize = nflash.region.erasesize; + /* At most 2GB is supported */ + nflash.mtd.size = (info->size >= (1 << 11)) ? (1 << 31) : (info->size << 20); + nflash.mtd.numeraseregions = 1; + nflash.map = (unsigned char *)kmalloc(info->numblocks, GFP_KERNEL); + if (nflash.map) + memset(nflash.map, 0, info->numblocks); + + /* Register with MTD */ + nflash.mtd.name = "nflash"; + nflash.mtd.type = MTD_NANDFLASH; + nflash.mtd.flags = MTD_CAP_NANDFLASH; + nflash.mtd.eraseregions = &nflash.region; + nflash.mtd.erase = nflash_mtd_erase; + nflash.mtd.read = nflash_mtd_read; + nflash.mtd.write = nflash_mtd_write; + nflash.mtd.writesize = NFL_SECTOR_SIZE; + nflash.mtd.priv = &nflash; + nflash.mtd.owner = THIS_MODULE; + + +#ifdef CONFIG_MTD_PARTITIONS + parts = init_nflash_mtd_partitions(&nflash.mtd, nflash.mtd.size); + if (!parts) + goto fail; + for (i = 0; parts[i].name; i++); + ret = add_mtd_partitions(&nflash.mtd, parts, i); + if (ret) { + printk(KERN_ERR "nflash: add_mtd failed\n"); + goto fail; + } + nflash_parts = parts; +#endif + return 0; + +fail: + if (nflash.cc) + iounmap((void *) nflash.cc); + if (nflash.sih) + si_detach(nflash.sih); + return ret; +} + +static void __exit +nflash_mtd_exit(void) +{ +#ifdef CONFIG_MTD_PARTITIONS + del_mtd_partitions(&nflash.mtd); +#else + del_mtd_device(&nflash.mtd); +#endif + iounmap((void *) nflash.cc); + si_detach(nflash.sih); +} + +module_init(nflash_mtd_init); +module_exit(nflash_mtd_exit); diff --git a/release/src-rt/linux/linux-2.6/drivers/net/hnd/Kconfig b/release/src-rt/linux/linux-2.6/drivers/net/hnd/Kconfig index bed0654e83..4184370a40 100644 --- a/release/src-rt/linux/linux-2.6/drivers/net/hnd/Kconfig +++ b/release/src-rt/linux/linux-2.6/drivers/net/hnd/Kconfig @@ -25,6 +25,8 @@ config ET_47XX config BCM_CTF tristate "BCMCTF support" depends on HND +config WL_USBAP + bool "USB/HSIC Wireless Access Point support" config WL_EMULATOR bool "WL emulation using Gigabit ethernet" depends on HND @@ -61,9 +63,9 @@ config WL_USE_STA_ONCHIP_G bool "Config file for STA 1chipG variant" config WL_USE_APSTA_ONCHIP_G bool "Config file for APSTA 1chipG variant" +#config WL_USE_HIGH +# bool "Config file for high/bmac split variant" endchoice -config WL_USBAP - bool "USB/HSIC Wireless Access Point support" #if defined(WLSRC) || defined(PREBUILD) config WL_AP string "Config file for basic AP variant" diff --git a/release/src-rt/linux/linux-2.6/drivers/net/pppol2tp.c b/release/src-rt/linux/linux-2.6/drivers/net/pppol2tp.c index a404e533fb..efd8b55335 100644 --- a/release/src-rt/linux/linux-2.6/drivers/net/pppol2tp.c +++ b/release/src-rt/linux/linux-2.6/drivers/net/pppol2tp.c @@ -5,9 +5,8 @@ * PPPoL2TP --- PPP over L2TP (RFC 2661) * * - * Version: 0.18.3 + * Version: 0.17.1 * - * 230411 : Added ASUS backports from 2.6.3x. * 251003 : Copied from pppoe.c version 0.6.9. * * Authors: Martijn van Oosterhout @@ -98,25 +97,14 @@ #include #include -#define PPPOL2TP_DRV_VERSION "V0.18.3" + +#define PPPOL2TP_DRV_VERSION "V0.17" /* Developer debug code. */ #if 0 #define DEBUG /* Define to compile in very verbose developer debug */ #endif -/* Old L2TP daemons semi-compatibility */ -//#define PPPOL2TP_UDP_CONNECT - -/* Pre 2.6.22 kernels compatibility */ -#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,22) -#define udp_hdr(skb) (struct udphdr *) (skb)->h.raw -#define skb_network_header(skb) skb->nh.raw -#define skb_transport_header(skb) skb->h.raw -#define skb_reset_network_header(skb) (skb)->nh.raw = (skb)->data -#define skb_reset_transport_header(skb) (skb)->h.raw = (skb)->data -#endif - /* Timeouts are specified in milliseconds to/from userspace */ #define JIFFIES_TO_MS(t) ((t) * 1000 / HZ) #define MS_TO_JIFFIES(j) ((j * HZ) / 1000) @@ -187,6 +175,20 @@ #define PPPOL2TP_L2TP_HDR_SIZE_SEQ 10 #define PPPOL2TP_L2TP_HDR_SIZE_NOSEQ 6 +struct pppol2tp_send { + struct pppol2tp_session *session; + struct pppol2tp_tunnel *tunnel; + struct msghdr *msg; + struct sk_buff *skb; + struct sock *tunnel_sock; + struct iovec *iov; + struct work_struct send_task; + int total_len; + struct kiocb iocb; + struct sock_iocb siocb; + u8 hdr[PPPOL2TP_L2TP_HDR_SIZE_SEQ]; +}; + struct pppol2tp_tunnel; /* Describes a session. It is the sk_user_data field in the PPPoL2TP @@ -215,11 +217,11 @@ struct pppol2tp_session int mru; int flags; /* accessed by PPPIOCGFLAGS. * Unused. */ - unsigned recv_seq:1; /* expect receive packets with + int recv_seq:1; /* expect receive packets with * sequence numbers? */ - unsigned send_seq:1; /* send packets with sequence + int send_seq:1; /* send packets with sequence * numbers? */ - unsigned lns_mode:1; /* behave as LNS? LAC enables + int lns_mode:1; /* behave as LNS? LAC enables * sequence numbers under * control of LNS. */ int debug; /* bitmask of debug message @@ -240,6 +242,10 @@ struct pppol2tp_tunnel { int magic; /* Should be L2TP_TUNNEL_MAGIC */ + struct workqueue_struct *wq; /* Per-tunnel work queue */ + + struct proto *old_proto; /* original proto */ + struct proto l2tp_proto; /* L2TP proto */ rwlock_t hlist_lock; /* protect session_hlist */ struct hlist_head session_hlist[PPPOL2TP_HASH_SIZE]; /* hashed list of sessions, @@ -266,8 +272,8 @@ struct pppol2tp_tunnel struct pppol2tp_skb_cb { u16 ns; u16 nr; - u16 has_seq; - u16 length; + int has_seq; + int length; unsigned long expires; }; @@ -328,16 +334,12 @@ pppol2tp_session_find(struct pppol2tp_tunnel *tunnel, u16 session_id) struct hlist_node *walk; struct pppol2tp_session *session; - //TODO: Switch to RCU - read_lock_bh(&tunnel->hlist_lock); hlist_for_each_safe(walk, tmp, session_list) { session = hlist_entry(walk, struct pppol2tp_session, hlist); if (session->tunnel_addr.s_session == session_id) { - read_unlock_bh(&tunnel->hlist_lock); return session; } } - read_unlock_bh(&tunnel->hlist_lock); return NULL; } @@ -346,28 +348,32 @@ pppol2tp_session_find(struct pppol2tp_tunnel *tunnel, u16 session_id) * Receive data handling *****************************************************************************/ -/* Queue a skb in order. We come here only if the skb has an L2TP sequence - * number. +/* Queue a skb in order. If the skb has no sequence number, queue it + * at the tail. */ static void pppol2tp_recv_queue_skb(struct pppol2tp_session *session, struct sk_buff *skb) { - struct sk_buff *skbp; - struct sk_buff *tmp; + struct sk_buff *next; + struct sk_buff *prev; u16 ns = PPPOL2TP_SKB_CB(skb)->ns; ENTER_FUNCTION; spin_lock(&session->reorder_q.lock); - skb_queue_walk_safe(&session->reorder_q, skbp, tmp) { - if (PPPOL2TP_SKB_CB(skbp)->ns > ns) { - __skb_insert(skb, skbp->prev, skbp, &session->reorder_q); + + prev = (struct sk_buff *) &session->reorder_q; + next = prev->next; + while (next != prev) { + if (PPPOL2TP_SKB_CB(next)->ns > ns) { + __skb_insert(skb, next->prev, next, &session->reorder_q); PRINTK(session->debug, PPPOL2TP_MSG_SEQ, KERN_DEBUG, "%s: pkt %hu, inserted before %hu, reorder_q len=%d\n", - session->name, ns, PPPOL2TP_SKB_CB(skbp)->ns, + session->name, ns, PPPOL2TP_SKB_CB(next)->ns, skb_queue_len(&session->reorder_q)); session->stats.rx_oos_packets++; goto out; } + next = next->next; } __skb_queue_tail(&session->reorder_q, skb); @@ -387,9 +393,10 @@ static void pppol2tp_recv_dequeue_skb(struct pppol2tp_session *session, struct s ENTER_FUNCTION; - /* We're about to requeue the skb, so return resources + /* We're about to requeue the skb, so unlink it and return resources * to its current owner (a socket receive buffer). */ + skb_unlink(skb, &session->reorder_q); skb_orphan(skb); tunnel->stats.rx_packets++; @@ -404,7 +411,7 @@ static void pppol2tp_recv_dequeue_skb(struct pppol2tp_session *session, struct s "%s: updated nr to %hu\n", session->name, session->nr); } - /* If the socket is bound, send it in to PPP's input queue. Otherwise + /* If the socket is bound, send it in to PPP's input queue. Otherwise * queue it on the session socket. */ session_sock = session->sock; @@ -456,55 +463,55 @@ static void pppol2tp_recv_dequeue_skb(struct pppol2tp_session *session, struct s */ static void pppol2tp_recv_dequeue(struct pppol2tp_session *session) { - struct sk_buff *skb; - struct sk_buff *tmp; + struct sk_buff *next; + struct sk_buff *prev; ENTER_FUNCTION; + prev = (struct sk_buff *) &session->reorder_q; + spin_lock(&session->reorder_q.lock); + next = prev->next; + /* If the pkt at the head of the queue has the nr that we * expect to send up next, dequeue it and any other * in-sequence packets behind it. */ - spin_lock(&session->reorder_q.lock); - skb_queue_walk_safe(&session->reorder_q, skb, tmp) { + while (next != prev) { + struct sk_buff *skb = next; + next = next->next; + spin_unlock(&session->reorder_q.lock); + if (time_after(jiffies, PPPOL2TP_SKB_CB(skb)->expires)) { session->stats.rx_seq_discards++; session->stats.rx_errors++; PRINTK(session->debug, PPPOL2TP_MSG_SEQ, KERN_DEBUG, - "%s: oos pkt %hu len %d discarded (too old), " - "waiting for %hu, reorder_q_len=%d\n", + "%s: oos pkt %hu len %d discarded (too old), waiting for %hu, reorder_q_len=%d\n", session->name, PPPOL2TP_SKB_CB(skb)->ns, PPPOL2TP_SKB_CB(skb)->length, session->nr, skb_queue_len(&session->reorder_q)); - __skb_unlink(skb, &session->reorder_q); + skb_unlink(skb, &session->reorder_q); kfree_skb(skb); sock_put(session->sock); - continue; + goto again; } if (PPPOL2TP_SKB_CB(skb)->has_seq) { if (PPPOL2TP_SKB_CB(skb)->ns != session->nr) { PRINTK(session->debug, PPPOL2TP_MSG_SEQ, KERN_DEBUG, - "%s: holding oos pkt %hu len %d, " - "waiting for %hu, reorder_q_len=%d\n", - session->name, PPPOL2TP_SKB_CB(skb)->ns, - PPPOL2TP_SKB_CB(skb)->length, session->nr, - skb_queue_len(&session->reorder_q)); + "%s: holding oos pkt %hu len %d, waiting for %hu, reorder_q_len=%d\n", + session->name, PPPOL2TP_SKB_CB(skb)->ns, + PPPOL2TP_SKB_CB(skb)->length, session->nr, + skb_queue_len(&session->reorder_q)); goto out; } } - __skb_unlink(skb, &session->reorder_q); - - /* Process the skb. We release the queue lock while we - * do so to let other contexts process the queue. - */ - spin_unlock(&session->reorder_q.lock); pppol2tp_recv_dequeue_skb(session, skb); +again: spin_lock(&session->reorder_q.lock); } -out: spin_unlock(&session->reorder_q.lock); +out: EXIT_FUNCTION; } @@ -517,53 +524,48 @@ out: static int pppol2tp_recv_core(struct sock *sock, struct sk_buff *skb) { struct pppol2tp_session *session = NULL; + int error = 0; struct pppol2tp_tunnel *tunnel; - int error; - unsigned char *ptr, *optr; + unsigned char *ptr; u16 hdrflags; u16 tunnel_id, session_id; - int length; - int offset; + int length, i; + struct udphdr *uh; ENTER_FUNCTION; - SOCK_2_TUNNEL(sock, tunnel, error, 1, error, 0); - - if (skb->pkt_type != PACKET_HOST) - goto error; - - /* UDP always verifies the packet length. */ - __skb_pull(skb, sizeof(struct udphdr)); + SOCK_2_TUNNEL(sock, tunnel, error, 1, end, 0); /* Short packet? */ - if (!pskb_may_pull(skb, 12)) { + if (skb->len < sizeof(struct udphdr)) { PRINTK(tunnel->debug, PPPOL2TP_MSG_DATA, KERN_INFO, "%s: recv short packet (len=%d)\n", tunnel->name, skb->len); goto end; } - /* Point to L2TP header */ - optr = ptr = skb->data; - /* Get length of L2TP packet */ - length = skb->len; + uh = (struct udphdr *) skb_transport_header(skb); + length = ntohs(uh->len) - sizeof(struct udphdr); + + /* Point to L2TP header */ + ptr = skb->data + sizeof(struct udphdr); /* Trace packet contents, if enabled */ if (tunnel->debug & PPPOL2TP_MSG_DATA) { - int i; - unsigned char *datap = skb->data; + printk(KERN_DEBUG "%s: recv: ", tunnel->name); - printk(KERN_DEBUG "%s: recv:", tunnel->name); - for (i = 0; i < length; i++) { - printk(" %02X", *datap++); - if (i == 15) { - printk(" ..."); - break; - } - } + for (i = 0; i < length && i < 16; i++) + printk(" %02X", ptr[i]); printk("\n"); } + /* Too short? */ + if (length < 12) { + PRINTK(tunnel->debug, PPPOL2TP_MSG_DATA, KERN_INFO, + "%s: recv short L2TP packet (len=%d)\n", tunnel->name, length); + goto end; + } + /* Get L2TP header flags */ hdrflags = ntohs(*(u16*)ptr); @@ -646,6 +648,7 @@ static int pppol2tp_recv_core(struct sock *sock, struct sk_buff *skb) "%s: recv data has no seq numbers when required. " "Discarding\n", session->name); session->stats.rx_seq_discards++; + session->stats.rx_errors++; goto discard; } @@ -664,6 +667,7 @@ static int pppol2tp_recv_core(struct sock *sock, struct sk_buff *skb) "%s: recv data has no seq numbers when required. " "Discarding\n", session->name); session->stats.rx_seq_discards++; + session->stats.rx_errors++; goto discard; } @@ -675,11 +679,7 @@ static int pppol2tp_recv_core(struct sock *sock, struct sk_buff *skb) if (hdrflags & L2TP_HDRFLAG_O) ptr += 2 + ntohs(*(u16 *) ptr); - offset = ptr - optr; - if (!pskb_may_pull(skb, offset)) - goto discard; - - __skb_pull(skb, offset); + skb_pull(skb, ptr - skb->data); /* Skip PPP header, if present. In testing, Microsoft L2TP clients * don't send the PPP header (PPP header compression enabled), but @@ -689,11 +689,8 @@ static int pppol2tp_recv_core(struct sock *sock, struct sk_buff *skb) * Note that skb->data[] isn't dereferenced from a u16 ptr here since * the field may be unaligned. */ - if (!pskb_may_pull(skb, 2)) - goto discard; - if ((skb->data[0] == 0xff) && (skb->data[1] == 0x03)) - __skb_pull(skb, 2); + skb_pull(skb, 2); /* Prepare skb for adding to the session's reorder_q. Hold * packets for max reorder_timeout or 1 second if not @@ -718,9 +715,9 @@ static int pppol2tp_recv_core(struct sock *sock, struct sk_buff *skb) */ if (PPPOL2TP_SKB_CB(skb)->ns != session->nr) { session->stats.rx_seq_discards++; + session->stats.rx_errors++; PRINTK(session->debug, PPPOL2TP_MSG_SEQ, KERN_DEBUG, - "%s: oos pkt %hu len %d discarded, " - "waiting for %hu, reorder_q_len=%d\n", + "%s: oos pkt %hu len %d discarded, waiting for %hu, reorder_q_len=%d\n", session->name, PPPOL2TP_SKB_CB(skb)->ns, PPPOL2TP_SKB_CB(skb)->length, session->nr, skb_queue_len(&session->reorder_q)); @@ -744,21 +741,15 @@ static int pppol2tp_recv_core(struct sock *sock, struct sk_buff *skb) discard: DPRINTK(session->debug, "discarding skb, len=%d\n", skb->len); - session->stats.rx_errors++; kfree_skb(skb); DPRINTK(session->debug, "calling sock_put; refcnt=%d\n", session->sock->sk_refcnt.counter); sock_put(session->sock); - EXIT_FUNCTION; return 0; end: - /* Put UDP header back */ - __skb_push(skb, sizeof(struct udphdr)); - -error: EXIT_FUNCTION; return 1; } @@ -832,21 +823,20 @@ static int pppol2tp_recvmsg(struct kiocb *iocb, struct socket *sock, struct msghdr *msg, size_t len, int flags) { - int err; - struct sk_buff *skb; + int err = 0; + struct sk_buff *skb = NULL; struct sock *sk = sock->sk; ENTER_FUNCTION; err = -EIO; - if (sk->sk_state & PPPOX_BOUND) + if (sock->state & PPPOX_BOUND) goto error; msg->msg_namelen = 0; - err = 0; - skb = skb_recv_datagram(sk, flags & ~MSG_DONTWAIT, - flags & MSG_DONTWAIT, &err); + skb=skb_recv_datagram(sk, flags & ~MSG_DONTWAIT, + flags & MSG_DONTWAIT, &err); if (!skb) goto error; @@ -861,7 +851,6 @@ static int pppol2tp_recvmsg(struct kiocb *iocb, struct socket *sock, if (skb) kfree_skb(skb); - error: EXIT_FUNCTION; return err; @@ -871,20 +860,76 @@ error: * Transmit handling ***********************************************************************/ -/* Tell how big L2TP headers are for a particular session. This - * depends on whether sequence numbers are being used. +/* Internal UDP socket transmission */ -static inline int pppol2tp_l2tp_header_len(struct pppol2tp_session *session) +static int pppol2tp_udp_sock_send(struct kiocb *iocb, + struct pppol2tp_session *session, + struct pppol2tp_tunnel *tunnel, + struct msghdr *msg, int total_len) { - if (session->send_seq) - return PPPOL2TP_L2TP_HDR_SIZE_SEQ; + mm_segment_t fs; + int error; + + ENTER_FUNCTION; + + DPRINTK(session->debug, "%s: udp_sendmsg call...\n", session->name); +#ifdef DEBUG + /* Catch bad socket parameter errors */ + if (msg->msg_name) { + struct sockaddr_in * usin = (struct sockaddr_in*)msg->msg_name; + if (msg->msg_namelen < sizeof(*usin)) { + printk(KERN_ERR "msg->msg_namelen wrong, %d\n", msg->msg_namelen); + return -EINVAL; + } + if (usin->sin_family != AF_INET) { + if (usin->sin_family != AF_UNSPEC) { + printk(KERN_ERR "addr family wrong: %d\n", usin->sin_family); + return -EINVAL; + } + } + if ((usin->sin_addr.s_addr == 0) || (usin->sin_port == 0)) { + printk(KERN_ERR "udp addr=%x/%hu\n", usin->sin_addr.s_addr, usin->sin_port); + return -EINVAL; + } + } +#endif /* DEBUG */ + + /* Set to userspace data segment while we do a sendmsg() call. We're + * actually calling a userspace API from the kernel here... + */ + fs = get_fs(); + set_fs(get_ds()); + + /* The actual sendmsg() call... */ + error = tunnel->old_proto->sendmsg(iocb, session->tunnel_sock, msg, total_len); + if (error == -EIOCBQUEUED) + error = wait_on_sync_kiocb(iocb); + + /* Back to kernel space */ + set_fs(fs); - return PPPOL2TP_L2TP_HDR_SIZE_NOSEQ; + if (error >= 0) { + tunnel->stats.tx_packets++; + tunnel->stats.tx_bytes += error; + session->stats.tx_packets++; + session->stats.tx_bytes += error; + } else { + tunnel->stats.tx_errors++; + session->stats.tx_errors++; + } + + DPRINTK(session->debug, "%s: %s: returning result %d\n", __FUNCTION__, + session->name, error); + kfree(msg->msg_iov); + kfree(msg); + + EXIT_FUNCTION; + return error; } /* Build an L2TP header for the session into the buffer provided. */ -static void pppol2tp_build_l2tp_header(struct pppol2tp_session *session, +static int pppol2tp_build_l2tp_header(struct pppol2tp_session *session, void *buf) { u16 *bufp = buf; @@ -908,6 +953,10 @@ static void pppol2tp_build_l2tp_header(struct pppol2tp_session *session, PRINTK(session->debug, PPPOL2TP_MSG_SEQ, KERN_DEBUG, "%s: updated ns to %hu\n", session->name, session->ns); } + /* This is the PPP header really */ + *bufp = htons(0xff03); + + return ((void *) bufp) - buf; } /* This is the sendmsg for the PPPoL2TP pppol2tp_session socket. We come here @@ -917,18 +966,14 @@ static void pppol2tp_build_l2tp_header(struct pppol2tp_session *session, static int pppol2tp_sendmsg(struct kiocb *iocb, struct socket *sock, struct msghdr *m, size_t total_len) { - static const u8 ppph[2] = { 0xff, 0x03 }; + static unsigned char ppph[2] = { 0xff, 0x03 }; struct sock *sk = sock->sk; - struct sock *sk_tun; - struct sk_buff *skb; - int error; + int error = 0; + u8 hdr[PPPOL2TP_L2TP_HDR_SIZE_SEQ]; int hdr_len; - u16 udp_len; + struct msghdr *msg; struct pppol2tp_session *session; struct pppol2tp_tunnel *tunnel; - struct inet_sock *inet; - struct udphdr *uh; - unsigned int len; ENTER_FUNCTION; @@ -939,57 +984,10 @@ static int pppol2tp_sendmsg(struct kiocb *iocb, struct socket *sock, struct msgh /* Get session and tunnel contexts */ SOCK_2_SESSION(sk, session, error, -EBADF, end, 0); - sk_tun = session->tunnel_sock; - SOCK_2_TUNNEL(sk_tun, tunnel, error, -EBADF, end, 0); - - /* What header length is configured for this session? */ - hdr_len = pppol2tp_l2tp_header_len(session); - - /* Allocate a socket buffer */ - skb = sock_wmalloc(sk_tun, NET_SKB_PAD + sizeof(struct iphdr) + - sizeof(struct udphdr) + hdr_len + - sizeof(ppph) + total_len, - 0, GFP_KERNEL); - if (!skb) { - error = -ENOMEM; - goto end; - } - - /* Reserve space for headers. */ - skb_reserve(skb, NET_SKB_PAD); - skb_reset_network_header(skb); - skb_reserve(skb, sizeof(struct iphdr)); - skb_reset_transport_header(skb); - - /* Build UDP header */ - inet = inet_sk(sk_tun); - udp_len = hdr_len + sizeof(ppph) + total_len; - uh = (struct udphdr *) skb->data; - uh->source = inet->sport; - uh->dest = inet->dport; - uh->len = htons(udp_len); - uh->check = 0; - skb_put(skb, sizeof(struct udphdr)); - - /* Build L2TP header */ - pppol2tp_build_l2tp_header(session, skb->data); - skb_put(skb, hdr_len); - - /* Add PPP header */ - skb->data[0] = ppph[0]; - skb->data[1] = ppph[1]; - skb_put(skb, 2); - - /* Copy user data into skb */ - error = memcpy_fromiovec(skb->data, m->msg_iov, total_len); - if (error < 0) { - kfree_skb(skb); - goto end; - } - skb_put(skb, total_len); + SOCK_2_TUNNEL(session->tunnel_sock, tunnel, error, -EBADF, end, 0); - /* Calculate UDP checksum if configured to do so */ - skb->ip_summed = CHECKSUM_NONE; + /* Setup L2TP header */ + hdr_len = pppol2tp_build_l2tp_header(session, &hdr); if (session->send_seq) PRINTK(session->debug, PPPOL2TP_MSG_DATA, KERN_DEBUG, @@ -1000,89 +998,128 @@ static int pppol2tp_sendmsg(struct kiocb *iocb, struct socket *sock, struct msgh "%s: send %d bytes\n", session->name, total_len); if (session->debug & PPPOL2TP_MSG_DATA) { - int i; - unsigned char *datap = skb->data - hdr_len - 2; + int i, j, count; printk(KERN_DEBUG "%s: xmit:", session->name); - for (i = 0; i < total_len; i++) { - printk(" %02X", *datap++); - if (i == 15) { - printk(" ..."); - break; + count = 0; + for (i = 0; i < m->msg_iovlen; i++) { + for (j = 0; j < m->msg_iov[i].iov_len; j++) { + printk(" %02X", ((unsigned char *) m->msg_iov[i].iov_base)[j]); + count++; + if (count == 15) { + printk(" ..."); + break; + } } } printk("\n"); } - /* Queue the packet to IP for output */ - len = skb->len; - error = ip_queue_xmit(skb, 1); - error = net_xmit_eval(error); + /* Unfortunately, there is no direct way for us to pass an skb to the + * UDP layer, we have to pretend to be sending ordinary data and use + * sendmsg. + * + * We add the L2TP and PPP headers here. To do so, we create a new + * struct msghdr and insert the headers as the first iovecs. + */ + msg = kmalloc(sizeof(struct msghdr), GFP_ATOMIC); + if (msg == NULL) { + error = -ENOBUFS; + tunnel->stats.tx_errors++; + session->stats.tx_errors++; + goto end; + } - /* Update stats */ - if (error >= 0) { - tunnel->stats.tx_packets++; - tunnel->stats.tx_bytes += len; - session->stats.tx_packets++; - session->stats.tx_bytes += len; - } else { + msg->msg_iov = kmalloc((m->msg_iovlen + 2) * sizeof(struct iovec), + GFP_ATOMIC); + if (msg->msg_iov == NULL) { + error = -ENOBUFS; tunnel->stats.tx_errors++; session->stats.tx_errors++; + kfree(msg); + goto end; } + msg->msg_iov[0].iov_base = &hdr; + msg->msg_iov[0].iov_len = hdr_len; + msg->msg_iov[1].iov_base = &ppph; + msg->msg_iov[1].iov_len = sizeof(ppph); + memcpy(&msg->msg_iov[2], &m->msg_iov[0], + m->msg_iovlen * sizeof(struct iovec)); + msg->msg_iovlen = m->msg_iovlen + 2; + + /* If the user calls sendto() that's just too bad */ + msg->msg_name = &session->tunnel_addr.addr; + msg->msg_namelen = sizeof(session->tunnel_addr.addr); + + msg->msg_control = m->msg_control; + msg->msg_controllen = m->msg_controllen; + msg->msg_flags = m->msg_flags; + + /* Do the real work. This always frees msg, regardless of whether + * there was an error + */ + error = pppol2tp_udp_sock_send(iocb, session, tunnel, msg, + total_len + hdr_len + sizeof(ppph)); + end: EXIT_FUNCTION; return error; } -/* Automatically called when the skb is freed. +/* Work queue handler for pppol2tp_xmit(). */ -static void pppol2tp_sock_wfree(struct sk_buff *skb) +static void pppol2tp_wq_send(struct work_struct *work) { - sock_put(skb->sk); -} + struct pppol2tp_send *send = container_of(work, struct pppol2tp_send, send_task); + int error; + mm_segment_t oldfs; -/* For data skbs that we transmit, we associate with the tunnel socket - * but don't do accounting. - */ -static inline void pppol2tp_skb_set_owner_w(struct sk_buff *skb, struct sock *sk) -{ - sock_hold(sk); - skb->sk = sk; - skb->destructor = pppol2tp_sock_wfree; + oldfs = get_fs(); + set_fs(KERNEL_DS); + + error = send->tunnel->old_proto->sendmsg(&send->iocb, + send->session->tunnel_sock, + send->msg, send->total_len); + if (error == -EIOCBQUEUED) + error = wait_on_sync_kiocb(&send->iocb); + + set_fs(oldfs); + + if (error >= 0) { + send->tunnel->stats.tx_packets++; + send->tunnel->stats.tx_bytes += error; + send->session->stats.tx_packets++; + send->session->stats.tx_bytes += error; + } else { + send->tunnel->stats.tx_errors++; + send->session->stats.tx_errors++; + } + + kfree(send->iov); + kfree(send->msg); + kfree_skb(send->skb); + kfree(send); } -/* Transmit function called by generic PPP driver. Sends PPP frame - * over PPPoL2TP socket. - * - * This is almost the same as pppol2tp_sendmsg(), but rather than - * being called with a msghdr from userspace, it is called with a skb - * from the kernel. +/* Transmit function called by generic PPP driver. Sends PPP frame over + * PPPoL2TP socket. * - * The supplied skb from ppp doesn't have enough headroom for the - * insertion of L2TP, UDP and IP headers so we need to allocate more - * headroom in the skb. This will create a cloned skb. But we must be - * careful in the error case because the caller will expect to free - * the skb it supplied, not our cloned skb. So we take care to always - * leave the original skb unfreed if we return an error. + * This is almost the same as pppol2tp_sendmsg(), but rather than being called + * with a msghdr from userspace, it is called with a skb from the kernel. + * Since this function cannot block, we must queue up the actual socket send + * on a work queue. */ static int pppol2tp_xmit(struct ppp_channel *chan, struct sk_buff *skb) { - static const u8 ppph[2] = { 0xff, 0x03 }; + static unsigned char ppph[2] = { 0xff, 0x03 }; struct sock *sk = (struct sock *) chan->private; - struct sock *sk_tun; - int error; - u16 udp_len; + int error = 0; int hdr_len; - int headroom; - int data_len = skb->len; + struct msghdr *msg = NULL; struct pppol2tp_session *session; struct pppol2tp_tunnel *tunnel; - struct inet_sock *inet; - struct udphdr *uh; - unsigned int len; - int old_headroom; - int new_headroom; + struct pppol2tp_send *send = NULL; ENTER_FUNCTION; @@ -1094,64 +1131,33 @@ static int pppol2tp_xmit(struct ppp_channel *chan, struct sk_buff *skb) /* Get session and tunnel contexts from the socket */ SOCK_2_SESSION(sk, session, error, -EBADF, end, 0); - sk_tun = session->tunnel_sock; - SOCK_2_TUNNEL(sk_tun, tunnel, error, -EBADF, end, 0); - - /* What header length is configured for this session? */ - hdr_len = pppol2tp_l2tp_header_len(session); + SOCK_2_TUNNEL(session->tunnel_sock, tunnel, error, -EBADF, end, 0); - /* Check that there's enough headroom in the skb to insert IP, - * UDP and L2TP and PPP headers. If not enough, expand it to - * make room. Adjust truesize. - */ - headroom = NET_SKB_PAD + sizeof(struct iphdr) + - sizeof(struct udphdr) + hdr_len + sizeof(ppph); - old_headroom = skb_headroom(skb); - if (skb_cow_head(skb, headroom)) { - error = -ENOMEM; + send = kmalloc(sizeof(struct pppol2tp_send), GFP_ATOMIC); + if (send == NULL) { + error = -ENOBUFS; + tunnel->stats.tx_errors++; + session->stats.tx_errors++; goto end; } - new_headroom = skb_headroom(skb); - skb_orphan(skb); - skb->truesize += new_headroom - old_headroom; - - /* Setup PPP header */ - __skb_push(skb, sizeof(ppph)); - skb->data[0] = ppph[0]; - skb->data[1] = ppph[1]; /* Setup L2TP header */ - pppol2tp_build_l2tp_header(session, __skb_push(skb, hdr_len)); - - /* Build UDP header */ - inet = inet_sk(sk_tun); - udp_len = sizeof(struct udphdr) + hdr_len + sizeof(ppph) + data_len; - __skb_push(skb, sizeof(*uh)); - skb_reset_transport_header(skb); - uh = udp_hdr(skb); - uh->source = inet->sport; - uh->dest = inet->dport; - uh->len = htons(udp_len); - uh->check = 0; - - /* Calculate UDP checksum if configured to do so */ - skb->ip_summed = CHECKSUM_NONE; + hdr_len = pppol2tp_build_l2tp_header(session, &send->hdr); if (session->send_seq) PRINTK(session->debug, PPPOL2TP_MSG_DATA, KERN_DEBUG, "%s: send %d bytes, ns=%hu\n", - session->name, data_len, session->ns - 1); + session->name, skb->len, session->ns - 1); else PRINTK(session->debug, PPPOL2TP_MSG_DATA, KERN_DEBUG, - "%s: send %d bytes\n", session->name, data_len); + "%s: send %d bytes\n", session->name, skb->len); if (session->debug & PPPOL2TP_MSG_DATA) { int i; - unsigned char *datap = skb->data + sizeof(struct udphdr); printk(KERN_DEBUG "%s: xmit:", session->name); - for (i = 0; i < data_len; i++) { - printk(" %02X", *datap++); + for (i = 0; i < skb->len; i++) { + printk(" %02X", skb->data[i]); if (i == 15) { printk(" ..."); break; @@ -1160,42 +1166,64 @@ static int pppol2tp_xmit(struct ppp_channel *chan, struct sk_buff *skb) printk("\n"); } - /* Reset skb netfilter state */ - memset(&(IPCB(skb)->opt), 0, sizeof(IPCB(skb)->opt)); - IPCB(skb)->flags &= ~(IPSKB_XFRM_TUNNEL_SIZE | IPSKB_XFRM_TRANSFORMED | - IPSKB_REROUTED); - nf_reset(skb); - - /* Get routing info from the tunnel socket */ - dst_release(skb->dst); - skb->dst = dst_clone(__sk_dst_get(sk_tun)); - pppol2tp_skb_set_owner_w(skb, sk_tun); - - /* Queue the packet to IP for output */ - len = skb->len; - error = ip_queue_xmit(skb, 1); - error = net_xmit_eval(error); - - /* Update stats */ - if (error >= 0) { - tunnel->stats.tx_packets++; - tunnel->stats.tx_bytes += len; - session->stats.tx_packets++; - session->stats.tx_bytes += len; - } else { + /* Unfortunately there doesn't appear to be a way for us to pass an skb + * to the UDP layer, we have to pretend to be sending ordinary data + * and use sendmsg + */ + msg = kmalloc(sizeof(struct msghdr), GFP_ATOMIC); + if (msg == NULL) { + error = -ENOBUFS; tunnel->stats.tx_errors++; session->stats.tx_errors++; + goto end; } - EXIT_FUNCTION; + msg->msg_iov = kmalloc(3 * sizeof(struct iovec), GFP_ATOMIC); + if (msg->msg_iov == NULL) { + error = -ENOBUFS; + tunnel->stats.tx_errors++; + session->stats.tx_errors++; + goto end; + } + msg->msg_iov[0].iov_base = &send->hdr; + msg->msg_iov[0].iov_len = hdr_len; + /* FIXME: do we need to handle skb fragments here? */ + msg->msg_iov[1].iov_base = &ppph; + msg->msg_iov[1].iov_len = sizeof(ppph); + msg->msg_iov[2].iov_base = skb->data; + msg->msg_iov[2].iov_len = skb->len; + msg->msg_iovlen = 3; + + /* If the user calls sendto() that's just too bad */ + msg->msg_name = &session->tunnel_addr.addr; + msg->msg_namelen = sizeof(session->tunnel_addr.addr); + + msg->msg_control = NULL; + msg->msg_controllen = 0; + msg->msg_flags = MSG_DONTWAIT; /* Need this to prevent blocking */ + + send->session = session; + send->tunnel = tunnel; + send->msg = msg; + send->skb = skb; + send->tunnel_sock = session->tunnel_sock; + send->iov = msg->msg_iov; + send->total_len = skb->len + hdr_len + sizeof(ppph); + init_sync_kiocb(&send->iocb, NULL); + send->iocb.private = &send->siocb; + + INIT_WORK(&send->send_task, pppol2tp_wq_send); + queue_work(tunnel->wq, &send->send_task); return 1; end: - /* Free the original skb */ - kfree_skb(skb); + if (msg != NULL) + kfree(msg); + if (send != NULL) + kfree(send); EXIT_FUNCTION; - return 1; + return error; } /***************************************************************************** @@ -1221,28 +1249,23 @@ static void pppol2tp_tunnel_closeall(struct pppol2tp_tunnel *tunnel) PRINTK(tunnel->debug, PPPOL2TP_MSG_CONTROL, KERN_INFO, "%s: closing all sessions...\n", tunnel->name); - write_lock_bh(&tunnel->hlist_lock); for (hash = 0; hash < PPPOL2TP_HASH_SIZE; hash++) { -again: hlist_for_each_safe(walk, tmp, &tunnel->session_hlist[hash]) { struct sk_buff *skb; session = hlist_entry(walk, struct pppol2tp_session, hlist); + sk = session->sock; PRINTK(session->debug, PPPOL2TP_MSG_CONTROL, KERN_INFO, "%s: closing session\n", session->name); + write_lock_bh(&tunnel->hlist_lock); hlist_del_init(&session->hlist); + write_unlock_bh(&tunnel->hlist_lock); - /* Since we should hold the sock lock while - * doing any unbinding, we need to release the - * lock we're holding before taking that lock. - * Hold a reference to the sock so it doesn't - * disappear as we're jumping between locks. - */ sock_hold(sk); - write_unlock_bh(&tunnel->hlist_lock); + lock_sock(sk); if (sk->sk_state & (PPPOX_CONNECTED | PPPOX_BOUND)) { @@ -1264,17 +1287,8 @@ again: DPRINTK(session->debug, "calling sock_put; refcnt=%d\n", sk->sk_refcnt.counter); sock_put(sk); - - /* Now restart from the beginning of this hash - * chain. We always remove a session from the - * list so we are guaranteed to make forward - * progress. - */ - write_lock_bh(&tunnel->hlist_lock); - goto again; } } - write_unlock_bh(&tunnel->hlist_lock); EXIT_FUNCTION; } @@ -1285,30 +1299,26 @@ again: static void pppol2tp_tunnel_free(struct pppol2tp_tunnel *tunnel) { struct sock *sk = tunnel->sock; -#ifdef PPPOL2TP_UDP_CONNECT - struct sockaddr any = { .sa_family = AF_UNSPEC }; -#endif ENTER_FUNCTION; -#ifdef PPPOL2TP_UDP_CONNECT - /* Disconnect the tunnel socket */ - kernel_connect(sk->sk_socket, &any, sizeof(any), 0); -#endif - /* Remove from socket list */ list_del_init(&tunnel->list); + sk->sk_prot = tunnel->old_proto; #ifndef UDP_ENCAP_L2TPINUDP - sk->sk_data_ready = tunnel->old_data_ready; + sk->sk_data_ready = tunnel->old_data_ready; #else /* No longer an encapsulation socket. See net/ipv4/udp.c */ (udp_sk(sk))->encap_type = 0; (udp_sk(sk))->encap_rcv = NULL; -#endif +#endif sk->sk_destruct = tunnel->old_sk_destruct; sk->sk_user_data = NULL; + flush_workqueue(tunnel->wq); + destroy_workqueue(tunnel->wq); + DPRINTK(tunnel->debug, "%s: MOD_DEC_USE_COUNT\n", tunnel->name); kfree(tunnel); @@ -1516,9 +1526,6 @@ static struct socket *pppol2tp_sockfd_lookup(pid_t pid, int fd, int *err) * attached to it */ static struct sock *pppol2tp_prepare_tunnel_socket(pid_t pid, int fd, -#ifdef PPPOL2TP_UDP_CONNECT - struct sockaddr_in *addr, -#endif u16 tunnel_id, int *error) { int err; @@ -1539,18 +1546,16 @@ static struct sock *pppol2tp_prepare_tunnel_socket(pid_t pid, int fd, goto err; } - sk = sock->sk; - /* Quick sanity checks */ - err = -EPROTONOSUPPORT; - if (sk->sk_protocol != IPPROTO_UDP) { + err = -ESOCKTNOSUPPORT; + if (sock->type != SOCK_DGRAM) { PRINTK(-1, PPPOL2TP_MSG_CONTROL, KERN_ERR, - "tunl %hu: fd %d wrong protocol, got %d, expected %d\n", - tunnel_id, fd, sk->sk_protocol, IPPROTO_UDP); + "tunl %hu: fd %d wrong type, got %d, expected %d\n", + tunnel_id, fd, sock->type, SOCK_DGRAM); goto err; } err = -EAFNOSUPPORT; - if (sock->ops->family != AF_INET) { + if (sock->ops->family!=AF_INET) { PRINTK(-1, PPPOL2TP_MSG_CONTROL, KERN_ERR, "tunl %hu: fd %d wrong family, got %d, expected %d\n", tunnel_id, fd, sock->ops->family, AF_INET); @@ -1558,6 +1563,7 @@ static struct sock *pppol2tp_prepare_tunnel_socket(pid_t pid, int fd, } err = -ENOTCONN; + sk = sock->sk; /* Check if this socket has already been prepped */ tunnel = (struct pppol2tp_tunnel *)sk->sk_user_data; @@ -1574,20 +1580,6 @@ static struct sock *pppol2tp_prepare_tunnel_socket(pid_t pid, int fd, /* This socket has already been prepped */ ret = tunnel->sock; -#ifdef PPPOL2TP_UDP_CONNECT - } - - /* (Re)connect tunnel socket to the peer */ - err = kernel_connect(sock, (struct sockaddr *) addr, sizeof(*addr), 0); - DPRINTK(-1, "tunl %hu: fd %d connect to %x/%hu returns %d\n", - tunnel_id, fd, - ntohl(addr->sin_addr.s_addr), ntohs(addr->sin_port), err); - if (err < 0 && err != -EALREADY) - goto err; - - /* This socket has already been prepped */ - if (tunnel != NULL) { -#endif goto out; } @@ -1612,10 +1604,21 @@ static struct sock *pppol2tp_prepare_tunnel_socket(pid_t pid, int fd, DPRINTK(tunnel->debug, "tunl %hu: allocated tunnel=%p, sk=%p, sock=%p\n", tunnel_id, tunnel, sk, sock); + tunnel->wq = create_workqueue("kl2tpd"); + if (!tunnel->wq) { + err = -ENOMEM; + goto err_free_tunnel; + } + /* Setup the new protocol stuff */ + tunnel->old_proto = sk->sk_prot; + tunnel->l2tp_proto = *sk->sk_prot; + + sk->sk_prot = &tunnel->l2tp_proto; + #ifndef UDP_ENCAP_L2TPINUDP tunnel->old_data_ready = sk->sk_data_ready; - sk->sk_data_ready = pppol2tp_data_ready; + sk->sk_data_ready = &pppol2tp_data_ready; #else /* Mark socket as an encapsulation socket. See net/ipv4/udp.c */ (udp_sk(sk))->encap_type = UDP_ENCAP_L2TPINUDP; @@ -1623,7 +1626,7 @@ static struct sock *pppol2tp_prepare_tunnel_socket(pid_t pid, int fd, #endif tunnel->old_sk_destruct = sk->sk_destruct; - sk->sk_destruct = pppol2tp_tunnel_destruct; + sk->sk_destruct = &pppol2tp_tunnel_destruct; tunnel->sock = sk; sk->sk_allocation = GFP_ATOMIC; @@ -1644,6 +1647,8 @@ out: return ret; +err_free_tunnel: + kfree(tunnel); err: *error = err; goto out; @@ -1734,14 +1739,10 @@ int pppol2tp_connect(struct socket *sock, struct sockaddr *uservaddr, /* Look up the tunnel socket and configure it if necessary */ tunnel_sock = pppol2tp_prepare_tunnel_socket(sp->pppol2tp.pid, sp->pppol2tp.fd, -#ifdef PPPOL2TP_UDP_CONNECT - &sp->pppol2tp.addr, -#endif sp->pppol2tp.s_tunnel, &error); if (tunnel_sock == NULL) goto end; - tunnel = tunnel_sock->sk_user_data; /* Allocate and initialize a new session context. @@ -1777,9 +1778,9 @@ int pppol2tp_connect(struct socket *sock, struct sockaddr *uservaddr, session->mtu = session->mru = 1500 - PPPOL2TP_HEADER_OVERHEAD; /* If PMTU discovery was enabled, use the MTU that was discovered */ - dst = sk_dst_get(tunnel_sock); + dst = sk_dst_get(sk); if (dst != NULL) { - u32 pmtu = dst_mtu(__sk_dst_get(tunnel_sock)); + u32 pmtu = dst_mtu(__sk_dst_get(sk)); if (pmtu != 0) { session->mtu = session->mru = pmtu - PPPOL2TP_HEADER_OVERHEAD; @@ -1825,8 +1826,6 @@ int pppol2tp_connect(struct socket *sock, struct sockaddr *uservaddr, * whether sequence numbers are enabled for the data channel. */ po->chan.hdrlen = PPPOL2TP_L2TP_HDR_SIZE_NOSEQ; - po->chan.hdrlen += NET_SKB_PAD + sizeof(struct iphdr) + - sizeof(struct udphdr) + 2; po->chan.private = sk; po->chan.ops = &pppol2tp_chan_ops; @@ -1942,7 +1941,7 @@ static int pppol2tp_session_ioctl(struct pppol2tp_session *session, break; session->mtu = ifr.ifr_mtu; - +; PRINTK(session->debug, PPPOL2TP_MSG_CONTROL, KERN_INFO, "%s: set mtu=%d\n", session->name, session->mtu); err = 0; @@ -2197,8 +2196,6 @@ static int pppol2tp_session_setsockopt(struct sock *sk, struct pppox_sock *po = pppox_sk(sk); po->chan.hdrlen = val ? PPPOL2TP_L2TP_HDR_SIZE_SEQ : PPPOL2TP_L2TP_HDR_SIZE_NOSEQ; - po->chan.hdrlen += NET_SKB_PAD + sizeof(struct iphdr) + - sizeof(struct udphdr) + 2; } PRINTK(session->debug, PPPOL2TP_MSG_CONTROL, KERN_INFO, "%s: set send_seq=%d\n", session->name, session->send_seq); @@ -2638,12 +2635,12 @@ static struct proto_ops pppol2tp_ops = { .ioctl = pppox_ioctl, }; -static struct pppox_proto pppol2tp_proto = { +struct pppox_proto pppol2tp_proto = { .create = pppol2tp_create, .ioctl = pppol2tp_ioctl }; -static int __init pppol2tp_init(void) +int __init pppol2tp_init(void) { int err; @@ -2670,13 +2667,12 @@ out: out_unregister_pppox_proto: unregister_pppox_proto(PX_PROTO_OL2TP); - out_unregister_pppol2tp_proto: proto_unregister(&pppol2tp_sk_proto); goto out; } -static void __exit pppol2tp_exit(void) +void __exit pppol2tp_exit(void) { unregister_pppox_proto(PX_PROTO_OL2TP); @@ -2689,8 +2685,7 @@ static void __exit pppol2tp_exit(void) module_init(pppol2tp_init); module_exit(pppol2tp_exit); -MODULE_AUTHOR("Martijn van Oosterhout , " - "James Chapman "); +MODULE_AUTHOR("Martijn van Oosterhout "); MODULE_DESCRIPTION("PPP over L2TP over UDP"); MODULE_LICENSE("GPL"); MODULE_VERSION(PPPOL2TP_DRV_VERSION); diff --git a/release/src-rt/linux/linux-2.6/drivers/net/wl/Makefile b/release/src-rt/linux/linux-2.6/drivers/net/wl/Makefile index 4d3bed9394..0a79064430 100644 --- a/release/src-rt/linux/linux-2.6/drivers/net/wl/Makefile +++ b/release/src-rt/linux/linux-2.6/drivers/net/wl/Makefile @@ -1,15 +1,21 @@ # # Makefile for the Broadcom wl driver # -# Copyright (C) 2009, Broadcom Corporation -# All Rights Reserved. +# Copyright (C) 2011, Broadcom Corporation. All Rights Reserved. # -# THIS SOFTWARE IS OFFERED "AS IS", AND BROADCOM GRANTS NO WARRANTIES OF ANY -# KIND, EXPRESS OR IMPLIED, BY STATUTE, COMMUNICATION OR OTHERWISE. BROADCOM -# SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS -# FOR A SPECIFIC PURPOSE OR NONINFRINGEMENT CONCERNING THIS SOFTWARE. +# Permission to use, copy, modify, and/or distribute this software for any +# purpose with or without fee is hereby granted, provided that the above +# copyright notice and this permission notice appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY +# SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION +# OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN +# CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. # -# $Id: Makefile,v 1.11 2010/02/23 07:32:54 Exp $ +# $Id: Makefile,v 1.13 2010-12-13 20:23:49 $ # SRCBASE := ../../../../.. @@ -18,16 +24,6 @@ TARGET := wl WLCONF_H := wlconf.h WLCONF_O := wlconf.o -WL_PARTIAL_REBUILD := 0 - -CONFIG_WL_AP := "wlconfig_lx_router_ap" -CONFIG_WL_APSTA := "wlconfig_lx_router_apsta" -CONFIG_WL_STA := "wlconfig_lx_router_sta" -CONFIG_WL_AP_SDSTD := "wlconfig_lx_router_ap_sdstd" -CONFIG_WL_AP_ONCHIP_G := "wlconfig_lx_router_ap_1chipG" -CONFIG_WL_STA_ONCHIP_G := "wlconfig_lx_router_sta_1chipG" -CONFIG_WL_HIGH := "wlconfig_lx_router_high" - # Generate list of supported variants VLIST_BASE := AP STA APSTA ifeq ($(CONFIG_WL_USE_AP_SDSTD),y) @@ -59,11 +55,12 @@ wl_suffix := $(shell echo "$(WL_SUFFIX)" | tr A-Z a-z) # For PREBUILD and postbuild w/WLSRC, compile variants in subdirs # Subdir names use lowercase versions of the variant suffixes -wlsubdirs := $(addprefix wl_,$(foreach v,$(VLIST),$(shell echo "$(v)/" | tr A-Z a-z))) +#wlsubdirs := $(addprefix wl_,$(foreach v,$(VLIST),$(shell echo "$(v)/" | tr A-Z a-z))) +wlsubdirs := $(addprefix wl_,$(foreach v,$(VLIST),$(shell echo "$(v)" | tr A-Z a-z))) #subdir-y += $(wlsubdirs) #subdir-m += $(wlsubdirs) - +.NOTPARALLEL: include $(src)/wl_generic.mk diff --git a/release/src-rt/linux/linux-2.6/drivers/net/wl/wl_apsta/Makefile b/release/src-rt/linux/linux-2.6/drivers/net/wl/wl_apsta/Makefile index f3af0a4c67..052fdafc4c 100644 --- a/release/src-rt/linux/linux-2.6/drivers/net/wl/wl_apsta/Makefile +++ b/release/src-rt/linux/linux-2.6/drivers/net/wl/wl_apsta/Makefile @@ -1,15 +1,21 @@ # # Makefile for the Broadcom wl driver # -# Copyright (C) 2009, Broadcom Corporation -# All Rights Reserved. +# Copyright (C) 2010, Broadcom Corporation. All Rights Reserved. # -# THIS SOFTWARE IS OFFERED "AS IS", AND BROADCOM GRANTS NO WARRANTIES OF ANY -# KIND, EXPRESS OR IMPLIED, BY STATUTE, COMMUNICATION OR OTHERWISE. BROADCOM -# SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS -# FOR A SPECIFIC PURPOSE OR NONINFRINGEMENT CONCERNING THIS SOFTWARE. +# Permission to use, copy, modify, and/or distribute this software for any +# purpose with or without fee is hereby granted, provided that the above +# copyright notice and this permission notice appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY +# SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION +# OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN +# CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. # -# $Id: Makefile,v 1.2 2007/11/17 01:37:38 Exp $ +# $Id: Makefile,v 1.2 2007-11-17 01:37:38 Exp $ # SRCBASE := ../../../../../.. diff --git a/release/src-rt/linux/linux-2.6/drivers/net/wl/wl_generic.mk b/release/src-rt/linux/linux-2.6/drivers/net/wl/wl_generic.mk index d071e1e4dd..7bffd34158 100644 --- a/release/src-rt/linux/linux-2.6/drivers/net/wl/wl_generic.mk +++ b/release/src-rt/linux/linux-2.6/drivers/net/wl/wl_generic.mk @@ -4,10 +4,11 @@ # input: O_TARGET, CONFIG_WL_CONF and wl_suffix # output: obj-m, obj-y # -# $Id: wl_generic.mk,v 1.6 2009/05/19 01:39:54 Exp $ +# $Id: wl_generic.mk,v 1.10 2011-01-21 22:12:09 $ # -REBUILD_WL_MODULE=$(shell if [ -d "$(src)/$(SRCBASE)/wl/sys" -a "$(REUSE_PREBUILT_WL)" != "1" ]; then echo 1; else echo 0; fi) +#REBUILD_WL_MODULE=$(shell if [ -d "$(src)/$(SRCBASE)/wl/sys" -a "$(REUSE_PREBUILT_WL)" != "1" ]; then echo 1; else echo 0; fi) +REBUILD_WL_MODULE=0 # If source directory (src/wl/sys) exists and REUSE_PREBUILT_WL is undefined, # then build inside $(SRCBASE)/wl/sys, otherwise use pre-builts @@ -19,80 +20,75 @@ ifeq ($(REBUILD_WL_MODULE),1) $(error var_vlist($(VLIST)) var_config_wl_use($(shell env|grep CONFIG_WL_USE))) $(error CONFIG_WL_CONF is undefined) endif - + WLCONFFILE := $(strip $(subst ",,$(CONFIG_WL_CONF))) WLCFGDIR := $(src)/$(SRCBASE)/wl/config - + # define OS flag to pick up wl osl file from wl.mk WLLX=1 ifdef CONFIG_PLC - PLC=1 + PLC=1 endif + ifdef CONFIG_DPSTA + DPSTA=1 + endif + PKTC=1 include $(WLCFGDIR)/$(WLCONFFILE) include $(WLCFGDIR)/wl.mk - - ifeq ($(WLFILES),) - $(error WLFILES is undefined in $(WLCFGDIR)/$(WLCONFFILE)) + + ifeq ($(WLCLMAPI),1) + WLAN_ComponentsInUse := bcmwifi clm + include $(src)/$(SRCBASE)/makefiles/WLAN_Common.mk endif - ifeq ("$(CONFIG_WL_EMULATOR)","y") - WLFILES += wl_bcm57emu.c + ifeq ($(WLFILES_SRC),) + $(error WLFILES_SRC is undefined in $(WLCFGDIR)/$(WLCONFFILE)) endif - - ifeq ($(WL_PARTIAL_REBUILD),1) - WL_SOURCE := wl_iw.c wl_linux.c - else - WL_SOURCE := $(WLFILES) + + ifeq ($(WLCLMAPI),1) + $(call WLAN_GenClmCompilerRule,$(src)/$(SRCBASE)/wl/clm/src,$(src)/$(SRCBASE),--ccrev all) + clean-files += $(SRCBASE)/wl/clm/src/wlc_clm_data.c endif - - WL_DFLAGS := $(WLFLAGS) - # If source directory (src/wl/sys) exists, use sources to build objects - WL_OBJS := $(foreach file, $(WL_SOURCE), \ - $(if $(wildcard $(src)/$(SRCBASE)/wl/sys/$(file)), \ - $(addprefix $(SRCBASE)/wl/sys/, $(patsubst %.c,%.o,$(file))))) - WL_OBJS += $(foreach file, $(WL_SOURCE), \ - $(if $(wildcard $(src)/$(SRCBASE)/bcmcrypto/$(file)), \ - $(addprefix $(SRCBASE)/bcmcrypto/, $(patsubst %.c,%.o,$(file))))) - WL_OBJS += $(foreach file, $(WL_SOURCE), \ - $(if $(wildcard $(src)/$(SRCBASE)/shared/$(file)), \ - $(addprefix $(SRCBASE)/shared/, $(patsubst %.c,%.o,$(file))))) - WL_OBJS += $(foreach file, $(WL_SOURCE), \ - $(if $(wildcard $(src)/$(SRCBASE)/bcmsdio/sys/$(file)), \ - $(addprefix $(SRCBASE)/bcmsdio/sys/, $(patsubst %.c,%.o,$(file))))) # need -I. to pick up wlconf.h in build directory + ifeq ($(CONFIG_WL_ALL_PASSIVE_ON),y) + EXTRA_CFLAGS += -DWL_ALL_PASSIVE_ON -DWL_ALL_PASSIVE + else + ifeq ($(CONFIG_WL_ALL_PASSIVE_RUNTIME),y) EXTRA_CFLAGS += -DWL_ALL_PASSIVE - - EXTRA_CFLAGS += -DDMA $(WL_DFLAGS) -I$(src) -I$(src)/.. -I$(src)/$(SRCBASE)/wl/linux \ - -I$(src)/$(SRCBASE)/wl/sys -Werror + endif + endif + EXTRA_CFLAGS += -DDMA $(WLFLAGS) -I$(src) -I$(src)/.. -I$(src)/$(SRCBASE)/wl/linux \ + -I$(src)/$(SRCBASE)/wl/sys $(WLAN_ComponentIncPath) -Werror ifneq ("$(CONFIG_CC_OPTIMIZE_FOR_SIZE)","y") EXTRA_CFLAGS += -finline-limit=2048 endif - # If the PHY_HAL flag is defined we look in directory wl/phy for the - # phy source files. - ifneq ($(findstring PHY_HAL,$(WL_DFLAGS)),) - WL_OBJS += $(foreach file, $(WL_SOURCE), \ - $(if $(wildcard $(src)/$(SRCBASE)/wl/phy/$(file)), \ - $(addprefix $(SRCBASE)/wl/phy/, $(patsubst %.c,%.o,$(file))))) + # include path for dpsta.h + EXTRA_CFLAGS += -I$(src)/$(SRCBASE)/router/dpsta + + # Build the phy source files iff -DPHY_HAL is present. + ifneq ($(findstring PHY_HAL,$(WLFLAGS)),) EXTRA_CFLAGS += -I$(src)/$(SRCBASE)/wl/phy + else + WLFILES_SRC := $(filter-out src/wl/phy/%,$(WLFILES_SRC)) endif + # The paths in WLFILES_SRC need a bit of adjustment. + WL_OBJS := $(sort $(patsubst %.c,%.o,$(addprefix $(SRCBASE)/,$(patsubst src/%,%,$(WLFILES_SRC))))) + # wl-objs is for linking to wl.o - $(TARGET)-objs := $(WL_OBJS) - ifeq ($(WL_PARTIAL_REBUILD),1) - $(TARGET)-objs += $(SRCBASE)/wl/linux/wl_prebuilt.o - else - $(TARGET)-objs += $(WLCONF_O) - endif + $(TARGET)-objs := $(WLCONF_O) $(WL_OBJS) + obj-$(CONFIG_WL) := $(TARGET).o else # SRCBASE/wl/sys doesn't exist # Otherwise, assume prebuilt object module(s) in src/wl/linux directory prebuilt := wl_$(wl_suffix).o $(TARGET)-objs := $(SRCBASE)/wl/linux/$(prebuilt) + obj-$(CONFIG_WL) := $(TARGET).o ifeq ("$(CONFIG_WL_USBAP)","y") wl_high-objs := $(SRCBASE)/wl/linux/wl_high.o @@ -100,6 +96,24 @@ else # SRCBASE/wl/sys doesn't exist endif endif -obj-$(CONFIG_WL) := $(TARGET).o -clean-files += $(SRCBASE)/wl/sys/*.o $(SRCBASE)/wl/phy/*.o $(SRCBASE)/wl/sys/.*.*.cmd $(SRCBASE)/wl/phy/.*.*.cmd $(WLCONF_O) +#WL_CONF_H: wlconf.h + +UPDATESH := $(WLCFGDIR)/diffupdate.sh + +WLTUNEFILE ?= wltunable_lx_router.h + +$(obj)/$(WLCONF_O): $(obj)/$(WLCONF_H) FORCE + +$(obj)/$(WLCONF_H): $(WLCFGDIR)/$(WLTUNEFILE) FORCE + [ ! -f $@ ] || chmod +w $@ + @echo "check and update config file" + @echo $(if $(VLIST),"VLIST = $(VLIST)") + @echo "CONFIG_WL_CONF = $(CONFIG_WL_CONF)" + @echo "WLTUNEFILE = $(WLTUNEFILE)" + cp $< wltemp + $(UPDATESH) wltemp $@ + +FORCE: + +clean-files += $(SRCBASE)/wl/sys/*.o $(SRCBASE)/wl/phy/*.o $(SRCBASE)/wl/sys/.*.*.cmd $(SRCBASE)/wl/phy/.*.*.cmd $(WLCONF_H) $(WLCONF_O) diff --git a/release/src-rt/linux/linux-2.6/drivers/net/wl/wl_high/Makefile b/release/src-rt/linux/linux-2.6/drivers/net/wl/wl_high/Makefile index 6850de5681..0122560d22 100644 --- a/release/src-rt/linux/linux-2.6/drivers/net/wl/wl_high/Makefile +++ b/release/src-rt/linux/linux-2.6/drivers/net/wl/wl_high/Makefile @@ -1,15 +1,21 @@ # # Makefile for the Broadcom wl driver # -# Copyright (C) 2009, Broadcom Corporation -# All Rights Reserved. +# Copyright (C) 2010, Broadcom Corporation. All Rights Reserved. # -# THIS SOFTWARE IS OFFERED "AS IS", AND BROADCOM GRANTS NO WARRANTIES OF ANY -# KIND, EXPRESS OR IMPLIED, BY STATUTE, COMMUNICATION OR OTHERWISE. BROADCOM -# SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS -# FOR A SPECIFIC PURPOSE OR NONINFRINGEMENT CONCERNING THIS SOFTWARE. +# Permission to use, copy, modify, and/or distribute this software for any +# purpose with or without fee is hereby granted, provided that the above +# copyright notice and this permission notice appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY +# SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION +# OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN +# CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. # -# $Id: Makefile,v 1.2 2010/01/28 10:28:08 Exp $ +# $Id: Makefile,v 1.4 2010-10-07 09:29:27 Exp $ # SRCBASE := ../../../../../.. diff --git a/release/src-rt/linux/linux-2.6/drivers/net/wl/wlconf.h b/release/src-rt/linux/linux-2.6/drivers/net/wl/wlconf.h deleted file mode 100755 index e33c746e86..0000000000 --- a/release/src-rt/linux/linux-2.6/drivers/net/wl/wlconf.h +++ /dev/null @@ -1,32 +0,0 @@ -/* - * Broadcom 802.11abg Networking Device Driver Configuration file - * - * Copyright (C) 2009, Broadcom Corporation - * All Rights Reserved. - * - * THIS SOFTWARE IS OFFERED "AS IS", AND BROADCOM GRANTS NO WARRANTIES OF ANY - * KIND, EXPRESS OR IMPLIED, BY STATUTE, COMMUNICATION OR OTHERWISE. BROADCOM - * SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS - * FOR A SPECIFIC PURPOSE OR NONINFRINGEMENT CONCERNING THIS SOFTWARE. - * - * $Id: wltunable_lx_router.h,v 1.3.98.3 2009/11/10 01:05:41 Exp $ - * - * wl driver tunables - */ - -#if 0 -#define D11CONF 0x00a7bab0 /* D11 Core Rev 4, 5 (4306C0), 7 (4712), 9 (4318b0, 5352), - * 11 (4321a1), 12 (4321b/c), 13 (5354), 15(4312), - * 16 (4322), 17 (4716), 18 (43224a0), 21 (5356), - * 23 (43224b0). - */ -#endif - -#define NRXBUFPOST 56 /* # rx buffers posted */ - -#define RXBND 24 /* max # rx frames to process */ - -#define CTFPOOLSZ 64 /* max buffers in ctfpool */ - -#define WME_PER_AC_TX_PARAMS 1 -#define WME_PER_AC_TUNING 1 diff --git a/release/src-rt/linux/linux-2.6/drivers/usb/core/driver.c b/release/src-rt/linux/linux-2.6/drivers/usb/core/driver.c index b3107df367..7097ae88bc 100644 --- a/release/src-rt/linux/linux-2.6/drivers/usb/core/driver.c +++ b/release/src-rt/linux/linux-2.6/drivers/usb/core/driver.c @@ -775,7 +775,7 @@ int usb_register_driver(struct usb_driver *new_driver, struct module *owner, return retval; } -EXPORT_SYMBOL_GPL(usb_register_driver); +EXPORT_SYMBOL(usb_register_driver); /** * usb_deregister - unregister a USB interface driver @@ -799,7 +799,7 @@ void usb_deregister(struct usb_driver *driver) usbfs_update_special(); } -EXPORT_SYMBOL_GPL(usb_deregister); +EXPORT_SYMBOL(usb_deregister); /* Forced unbinding of a USB interface driver, either because * it doesn't support pre_reset/post_reset/reset_resume or diff --git a/release/src-rt/linux/linux-2.6/drivers/usb/core/hub.c b/release/src-rt/linux/linux-2.6/drivers/usb/core/hub.c index f00852c4e6..cbcc4168b9 100644 --- a/release/src-rt/linux/linux-2.6/drivers/usb/core/hub.c +++ b/release/src-rt/linux/linux-2.6/drivers/usb/core/hub.c @@ -117,7 +117,7 @@ MODULE_PARM_DESC (blinkenlights, "true to cycle leds on hubs"); * otherwise the new scheme is used. If that fails and "use_both_schemes" * is set, then the driver will make another attempt, using the other scheme. */ -static int old_scheme_first = 0; +static int old_scheme_first = 1; module_param(old_scheme_first, bool, S_IRUGO | S_IWUSR); MODULE_PARM_DESC(old_scheme_first, "start with the old device initialization scheme"); diff --git a/release/src-rt/linux/linux-2.6/drivers/usb/core/urb.c b/release/src-rt/linux/linux-2.6/drivers/usb/core/urb.c index 107f5df864..a8a38d65f4 100644 --- a/release/src-rt/linux/linux-2.6/drivers/usb/core/urb.c +++ b/release/src-rt/linux/linux-2.6/drivers/usb/core/urb.c @@ -75,7 +75,7 @@ struct urb *usb_alloc_urb(int iso_packets, gfp_t mem_flags) usb_init_urb(urb); return urb; } -EXPORT_SYMBOL_GPL(usb_alloc_urb); +EXPORT_SYMBOL(usb_alloc_urb); /** * usb_free_urb - frees the memory used by a urb when all users of it are finished @@ -92,7 +92,7 @@ void usb_free_urb(struct urb *urb) if (urb) kref_put(&urb->kref, urb_destroy); } -EXPORT_SYMBOL_GPL(usb_free_urb); +EXPORT_SYMBOL(usb_free_urb); /** * usb_get_urb - increments the reference count of the urb @@ -462,7 +462,7 @@ int usb_submit_urb(struct urb *urb, gfp_t mem_flags) return usb_hcd_submit_urb(urb, mem_flags); } -EXPORT_SYMBOL_GPL(usb_submit_urb); +EXPORT_SYMBOL(usb_submit_urb); /*-------------------------------------------------------------------*/ @@ -576,7 +576,7 @@ void usb_kill_urb(struct urb *urb) atomic_dec(&urb->reject); } -EXPORT_SYMBOL_GPL(usb_kill_urb); +EXPORT_SYMBOL(usb_kill_urb); /** * usb_poison_urb - reliably kill a transfer and prevent further use of an URB diff --git a/release/src-rt/linux/linux-2.6/drivers/usb/serial/sierra.c b/release/src-rt/linux/linux-2.6/drivers/usb/serial/sierra.c index 29bb874c7f..1c5983f7dc 100755 --- a/release/src-rt/linux/linux-2.6/drivers/usb/serial/sierra.c +++ b/release/src-rt/linux/linux-2.6/drivers/usb/serial/sierra.c @@ -3,7 +3,7 @@ Copyright (C) 2006, 2007, 2008 Kevin Lloyd - Copyright (C) 2008, 2009 Elina Pasheva, Matthew Safar, Rory Filer + Copyright (C) 2008 - 2011 Elina Pasheva, Matthew Safar, Rory Filer IMPORTANT DISCLAIMER: This driver is not commercially supported by @@ -19,8 +19,8 @@ Back ported to kernel 2.6.23 */ /* Uncomment to log function calls */ -/*#define DEBUG*/ -#define DRIVER_VERSION "v.1.7.0" +/* #define DEBUG */ +#define DRIVER_VERSION "v.1.7.40" #define DRIVER_AUTHOR "Kevin Lloyd, Elina Pasheva, Matthew Safar, Rory Filer" #define DRIVER_DESC "USB Driver for Sierra Wireless USB modems" @@ -37,9 +37,13 @@ #define SWIMS_USB_REQUEST_SetNmea 0x07 #define SWIMS_USB_REQUEST_SetMode 0x0B #define SWIMS_SET_MODE_Modem 0x0001 +#define USB_REQUEST_TYPE_CLASS 0xA1 +#define USB_REQUEST_IFACE 0x20 -#define N_IN_URB 8 -#define N_OUT_URB 64 +#define N_IN_URB_HM 8 +#define N_OUT_URB_HM 64 +#define N_IN_URB 4 +#define N_OUT_URB 4 #define IN_BUFLEN 4096 #define MAX_TRANSFER (PAGE_SIZE - 512) @@ -47,6 +51,9 @@ allocations > PAGE_SIZE and the number of packets in a page is an integer 512 is the largest possible packet on EHCI */ +/* PORTION_LEN defines the length of device attribute buffer */ +#define PORTION_LEN 4096 + static int debug; static int nmea; static int truinstall = 1; @@ -57,16 +64,20 @@ enum devicetype { DEVICE_INSTALLER = 1, }; -/* list of interface numbers - used for constructing interface blacklists */ -struct list { - const u32 listlen; /* number of interface numbers on list */ - const u8 *list; /* pointer to the array holding the numbers */ +/* sysfs attributes */ +static int sierra_create_sysfs_attrs(struct usb_serial_port *port); +static int sierra_remove_sysfs_attrs(struct usb_serial_port *port); + +/* Used in interface blacklisting */ +struct sierra_iface_info { + const u32 infolen; /* number of interface numbers on blacklist */ + const u8 *ifaceinfo; /* pointer to the array holding the numbers */ }; /* static device type specific data */ struct sierra_device_static_info { - const enum devicetype dev_type; - const struct list iface_blacklist; + const enum devicetype dev_type; + const struct sierra_iface_info iface_blacklist; }; static int sierra_set_power_state(struct usb_device *udev, __u16 swiState) @@ -134,16 +145,34 @@ static int sierra_calc_num_ports(struct usb_serial *serial) return num_ports; } -static int is_blacklisted(const u8 ifnum, const struct list *blacklist) +static int is_blacklisted(const u8 ifnum, + const struct sierra_iface_info *blacklist) { - const u8 *list; + const u8 *info; int i; - + if (blacklist) { - list = blacklist->list; - - for (i=0; i < blacklist->listlen; i++) { - if (list[i] == ifnum) + info = blacklist->ifaceinfo; + + for (i = 0; i < blacklist->infolen; i++) { + if (info[i] == ifnum) + return 1; + } + } + return 0; +} + +static int is_himemory(const u8 ifnum, + const struct sierra_iface_info *himemorylist) +{ + const u8 *info; + int i; + + if (himemorylist) { + info = himemorylist->ifaceinfo; + + for (i=0; i < himemorylist->infolen; i++) { + if (info[i] == ifnum) return 1; } } @@ -174,7 +203,7 @@ static int sierra_calc_interface(struct usb_serial *serial) static int sierra_probe(struct usb_serial *serial, const struct usb_device_id *id) { - const struct sierra_device_static_info * info; + const struct sierra_device_static_info *info; int result = 0; struct usb_device *udev; u8 ifnum, ifclass; @@ -223,51 +252,79 @@ static const struct sierra_device_static_info tru_inst_info = { .dev_type = DEVICE_INSTALLER, }; +/* interfaces with higher memory requirements */ +static const u8 hi_memory_typeA_ifaces[] = { 0, 2 }; +static const struct sierra_iface_info typeA_interface_list = { + .infolen = ARRAY_SIZE(hi_memory_typeA_ifaces), + .ifaceinfo = hi_memory_typeA_ifaces, +}; + +static const u8 hi_memory_typeB_ifaces[] = { 3, 4, 5, 6 }; +static const struct sierra_iface_info typeB_interface_list = { + .infolen = ARRAY_SIZE(hi_memory_typeB_ifaces), + .ifaceinfo = hi_memory_typeB_ifaces, +}; + +/* 'blacklist' of interfaces not served by this driver */ static const u8 direct_ip_non_serial_ifaces[] = { 7, 8, 9, 10, 11 }; static const struct sierra_device_static_info direct_ip_interface_blacklist = { .dev_type = DEVICE_MODEM, .iface_blacklist = { - .listlen = ARRAY_SIZE( direct_ip_non_serial_ifaces ), - .list = direct_ip_non_serial_ifaces, + .infolen = ARRAY_SIZE( direct_ip_non_serial_ifaces ), + .ifaceinfo = direct_ip_non_serial_ifaces, }, }; -static struct usb_device_id id_table [] = { +static const struct usb_device_id id_table [] = { { USB_DEVICE(0x0F3D, 0x0112) }, /* Airprime/Sierra PC 5220 */ - { USB_DEVICE(0x03f0, 0x1B1D) }, /* HP ev2200 a.k.a MC5720 */ + { USB_DEVICE(0x03F0, 0x1B1D) }, /* HP ev2200 a.k.a MC5720 */ + { USB_DEVICE(0x03F0, 0x1E1D) }, /* HP hs2300 a.k.a MC8775 */ { USB_DEVICE(0x03F0, 0x211D) }, /* HP ev2210 a.k.a MC5725 */ - { USB_DEVICE(0x03F0, 0x1E1D) }, /* HP hs2300 a.k.a MC8775 */ { USB_DEVICE(0x1199, 0x0017) }, /* Sierra Wireless EM5625 */ { USB_DEVICE(0x1199, 0x0018) }, /* Sierra Wireless MC5720 */ { USB_DEVICE(0x1199, 0x0218) }, /* Sierra Wireless MC5720 */ { USB_DEVICE(0x1199, 0x0020) }, /* Sierra Wireless MC5725 */ - { USB_DEVICE(0x1199, 0x0024) }, /* Sierra Wireless MC5727 */ { USB_DEVICE(0x1199, 0x0220) }, /* Sierra Wireless MC5725 */ + { USB_DEVICE(0x1199, 0x0022) }, /* Sierra Wireless EM5725 */ + { USB_DEVICE(0x1199, 0x0024) }, /* Sierra Wireless MC5727 */ + { USB_DEVICE(0x1199, 0x0224) }, /* Sierra Wireless MC5727 */ { USB_DEVICE(0x1199, 0x0019) }, /* Sierra Wireless AirCard 595 */ { USB_DEVICE(0x1199, 0x0021) }, /* Sierra Wireless AirCard 597E */ { USB_DEVICE(0x1199, 0x0112) }, /* Sierra Wireless AirCard 580 */ { USB_DEVICE(0x1199, 0x0120) }, /* Sierra Wireless USB Dongle 595U */ - { USB_DEVICE(0x1199, 0x0301) }, /* Sierra Wireless USB Dongle 250U */ - /* Sierra Wireless C597 */ + { USB_DEVICE(0x1199, 0x0301) }, /* Sierra Wireless USB Dongle 250U/3G */ + /* Sierra Wireless MC5728 */ + { USB_DEVICE_AND_INTERFACE_INFO(0x1199, 0x0400, 0xFF, 0xFF, 0xFF) }, + + /* Sierra Wireless C597 */ { USB_DEVICE_AND_INTERFACE_INFO(0x1199, 0x0023, 0xFF, 0xFF, 0xFF) }, - /* Sierra Wireless Device */ + /* Sierra Wireless T598 */ { USB_DEVICE_AND_INTERFACE_INFO(0x1199, 0x0025, 0xFF, 0xFF, 0xFF) }, - { USB_DEVICE(0x1199, 0x0026) }, /* Sierra Wireless Device */ - { USB_DEVICE(0x1199, 0x0027) }, /* Sierra Wireless Device */ - { USB_DEVICE(0x1199, 0x0028) }, /* Sierra Wireless Device */ + { USB_DEVICE(0x1199, 0x0026) }, /* Sierra Wireless T11 */ + { USB_DEVICE(0x1199, 0x0027) }, /* Sierra Wireless AC402 */ + { USB_DEVICE(0x1199, 0x0028) }, /* Sierra Wireless MC5728 */ + { USB_DEVICE(0x114F, 0x6000) }, /* Sierra Wireless Q26 Elite */ { USB_DEVICE(0x1199, 0x6802) }, /* Sierra Wireless MC8755 */ - { USB_DEVICE(0x1199, 0x6804) }, /* Sierra Wireless MC8755 */ { USB_DEVICE(0x1199, 0x6803) }, /* Sierra Wireless MC8765 */ + { USB_DEVICE(0x1199, 0x6804) }, /* Sierra Wireless MC8755 */ + { USB_DEVICE(0x1199, 0x6805) }, /* Sierra Wireless MC8765 */ + { USB_DEVICE(0x1199, 0x6808) }, /* Sierra Wireless MC8755 */ + { USB_DEVICE(0x1199, 0x6809) }, /* Sierra Wireless MC8765 */ { USB_DEVICE(0x1199, 0x6812) }, /* Sierra Wireless MC8775 & AC 875U */ - { USB_DEVICE(0x1199, 0x6813) }, /* Sierra Wireless MC8775 (Lenovo) */ + { USB_DEVICE(0x1199, 0x6813) }, /* Sierra Wireless MC8775 */ { USB_DEVICE(0x1199, 0x6815) }, /* Sierra Wireless MC8775 */ - { USB_DEVICE(0x03f0, 0x1e1d) }, /* HP hs2300 a.k.a MC8775 */ + { USB_DEVICE(0x1199, 0x6816) }, /* Sierra Wireless MC8775 */ { USB_DEVICE(0x1199, 0x6820) }, /* Sierra Wireless AirCard 875 */ { USB_DEVICE(0x1199, 0x6821) }, /* Sierra Wireless AirCard 875U */ + { USB_DEVICE(0x1199, 0x6822) }, /* Sierra Wireless AirCard 875E */ { USB_DEVICE(0x1199, 0x6832) }, /* Sierra Wireless MC8780 */ { USB_DEVICE(0x1199, 0x6833) }, /* Sierra Wireless MC8781 */ + { USB_DEVICE(0x1199, 0x6834) }, /* Sierra Wireless MC8780 */ + { USB_DEVICE(0x1199, 0x6835) }, /* Sierra Wireless MC8781 */ + { USB_DEVICE(0x1199, 0x6838) }, /* Sierra Wireless MC8780 */ + { USB_DEVICE(0x1199, 0x6839) }, /* Sierra Wireless MC8781 */ { USB_DEVICE(0x1199, 0x683A) }, /* Sierra Wireless MC8785 */ { USB_DEVICE(0x1199, 0x683B) }, /* Sierra Wireless MC8785 Composite */ /* Sierra Wireless MC8790, MC8791, MC8792 Composite */ @@ -285,24 +342,35 @@ static struct usb_device_id id_table [] = { { USB_DEVICE(0x1199, 0x685A) }, /* Sierra Wireless AirCard 885 E */ /* Sierra Wireless C885 */ { USB_DEVICE_AND_INTERFACE_INFO(0x1199, 0x6880, 0xFF, 0xFF, 0xFF)}, - /* Sierra Wireless Device */ + /* Sierra Wireless C888, Air Card 501, USB 303, USB 304 */ { USB_DEVICE_AND_INTERFACE_INFO(0x1199, 0x6890, 0xFF, 0xFF, 0xFF)}, - /* Sierra Wireless Device */ + /* Sierra Wireless C22/C33 */ { USB_DEVICE_AND_INTERFACE_INFO(0x1199, 0x6891, 0xFF, 0xFF, 0xFF)}, - /* Sierra Wireless Device */ + /* Sierra Wireless HSPA Non-Composite Device */ { USB_DEVICE_AND_INTERFACE_INFO(0x1199, 0x6892, 0xFF, 0xFF, 0xFF)}, - - { USB_DEVICE(0x1199, 0x0FFF), - .driver_info = (kernel_ulong_t)&tru_inst_info + { USB_DEVICE(0x1199, 0x6893) }, /* Sierra Wireless Device */ + /* Sierra Wireless Direct IP modems */ + { USB_DEVICE_AND_INTERFACE_INFO(0x1199, 0x68A3, 0xFF, 0xFF, 0xFF), + .driver_info = (kernel_ulong_t)&direct_ip_interface_blacklist }, - - { USB_DEVICE(0x1199, 0x68A3), /* Sierra Wireless Direct IP modems */ - .driver_info = (kernel_ulong_t)&direct_ip_interface_blacklist + /* AT&T Direct IP modems */ + { USB_DEVICE_AND_INTERFACE_INFO(0x0F3D, 0x68A3, 0xFF, 0xFF, 0xFF), + .driver_info = (kernel_ulong_t)&direct_ip_interface_blacklist + }, + /* Sierra Wireless Direct IP LTE modems */ + { USB_DEVICE_AND_INTERFACE_INFO(0x1199, 0x68AA, 0xFF, 0xFF, 0xFF), + .driver_info = (kernel_ulong_t)&direct_ip_interface_blacklist }, - { USB_DEVICE(0x0f3d, 0x68A3), /* Airprime/Sierra Wireless Direct IP modems */ - .driver_info = (kernel_ulong_t)&direct_ip_interface_blacklist + /* AT&T Direct IP LTE modems */ + { USB_DEVICE_AND_INTERFACE_INFO(0x0F3D, 0x68AA, 0xFF, 0xFF, 0xFF), + .driver_info = (kernel_ulong_t)&direct_ip_interface_blacklist }, - { USB_DEVICE(0x413C, 0x08133) }, /* Dell Computer Corp. Wireless 5720 VZW Mobile Broadband (EVDO Rev-A) Minicard GPS Port */ + /* Sierra Wireless TRU install devices */ + { USB_DEVICE_AND_INTERFACE_INFO(0x1199, 0xFFF, 0x08, 0x06, 0x50), + .driver_info = (kernel_ulong_t)&tru_inst_info + }, + /* Wireless 5720 VZW Mobile Broadband (EVDO Rev-A) Minicard GPS Port */ + { USB_DEVICE(0x413C, 0x8133) }, { } }; @@ -312,9 +380,14 @@ MODULE_DEVICE_TABLE(usb, id_table); struct sierra_port_private { spinlock_t lock; /* lock the structure */ int outstanding_urbs; /* number of out urbs in flight */ - + struct usb_anchor submitted; /* in case we need to retract our + * submissions */ + int suspend_status; /* indicates whether device power has been + * suspended */ + int num_out_urbs; + int num_in_urbs; /* Input endpoints and buffers for this port */ - struct urb *in_urbs[N_IN_URB]; + struct urb *in_urbs[N_IN_URB_HM]; /* Settings for the port */ int rts_state; /* Handshaking pins (outputs) */ @@ -382,7 +455,6 @@ static void sierra_set_termios(struct usb_serial_port *port, struct ktermios *old_termios) { dev_dbg(&port->dev, "%s\n", __func__); - tty_termios_copy_hw(port->tty->termios, old_termios); sierra_send_setup(port); } @@ -434,6 +506,34 @@ static void sierra_release_urb(struct urb *urb) } } +/* Sysfs Attributes */ + +static ssize_t show_suspend_status(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct usb_serial_port *port; + struct sierra_port_private *portdata; + + port = to_usb_serial_port(dev); + portdata = usb_get_serial_port_data(port); + + return snprintf(buf, PORTION_LEN, "%i\n", portdata->suspend_status); +} + +static DEVICE_ATTR(suspend_status, S_IWUSR | S_IRUGO, show_suspend_status, + NULL); + +static int sierra_create_sysfs_attrs(struct usb_serial_port *port) +{ + return device_create_file(&port->dev, &dev_attr_suspend_status); +} + +static int sierra_remove_sysfs_attrs(struct usb_serial_port *port) +{ + device_remove_file(&port->dev, &dev_attr_suspend_status); + return 0; +} + static void sierra_outdat_callback(struct urb *urb) { struct usb_serial_port *port = urb->context; @@ -473,12 +573,10 @@ static int sierra_write(struct usb_serial_port *port, if (count == 0) return 0; - portdata = usb_get_serial_port_data(port); - - dev_dbg(&port->dev, "%s: write (%d bytes)\n", __func__, writesize); + dev_dbg(&port->dev, "%s: write (%zu bytes)\n", __func__, writesize); spin_lock_irqsave(&portdata->lock, flags); - if (portdata->outstanding_urbs > N_OUT_URB) { + if (portdata->outstanding_urbs > portdata->num_out_urbs) { spin_unlock_irqrestore(&portdata->lock, flags); dev_dbg(&port->dev, "%s - write limit hit\n", __func__); return 0; @@ -509,23 +607,26 @@ static int sierra_write(struct usb_serial_port *port, port->bulk_out_endpointAddress), buffer, writesize, sierra_outdat_callback, port); - /* Handle the need to send a zero length packet */ - urb->transfer_flags |= URB_ZERO_PACKET; + /* Handle the need to send a zero length packet */ + urb->transfer_flags |= URB_ZERO_PACKET; + usb_anchor_urb(urb, &portdata->submitted); /* send it down the pipe */ retval = usb_submit_urb(urb, GFP_ATOMIC); if (retval) { dev_err(&port->dev, "%s - usb_submit_urb(write bulk) failed " "with status = %d\n", __func__, retval); - goto error; + goto error_anchor; } - /* we are done with this urb, so let the host driver - * really free it when it is finished with it */ - usb_free_urb(urb); - + /* release our reference to this urb, the USB core will eventually + * free it entirely */ + usb_free_urb(urb); + return writesize; -error: + +error_anchor: + usb_unanchor_urb(urb); usb_free_urb(urb); error_no_urb: kfree(buffer); @@ -540,14 +641,13 @@ static void sierra_indat_callback(struct urb *urb) { int err; int endpoint; - struct usb_serial_port *port; + struct usb_serial_port *port = urb->context; struct tty_struct *tty; unsigned char *data = urb->transfer_buffer; int status = urb->status; endpoint = usb_pipeendpoint(urb->pipe); - port = urb->context; - + dev_dbg(&port->dev, "%s: %p\n", __func__, urb); if (status) { @@ -555,15 +655,19 @@ static void sierra_indat_callback(struct urb *urb) " endpoint %02x\n", __func__, status, endpoint); } else { tty = port->tty; - if (urb->actual_length) { - tty_buffer_request_room(tty, urb->actual_length); - tty_insert_flip_string(tty, data, urb->actual_length); - tty_flip_buffer_push(tty); - usb_serial_debug_data(debug, &port->dev, __func__, - urb->actual_length, data); - } else { - dev_dbg(&port->dev, "%s: empty read urb" - " received\n", __func__); + if (tty) { + if (urb->actual_length) { + tty_buffer_request_room(tty, + urb->actual_length); + tty_insert_flip_string(tty, data, + urb->actual_length); + tty_flip_buffer_push(tty); + usb_serial_debug_data(debug,&port->dev, + __func__, urb->actual_length, data); + } else { + dev_dbg(&port->dev, "%s: empty read urb" + " received\n", __func__); + } } } @@ -593,13 +697,13 @@ static void sierra_instat_callback(struct urb *urb) struct usb_ctrlrequest *req_pkt = (struct usb_ctrlrequest *)urb->transfer_buffer; - if (!req_pkt) { - dev_dbg(&port->dev, "%s: NULL req_pkt\n", - __func__); - return; - } - if ((req_pkt->bRequestType == 0xA1) && - (req_pkt->bRequest == 0x20)) { + const u16 *sigp = (u16 *)(req_pkt + 1); + /* usb_ctrlrequest we parsed is followed by two bytes of data + * make sure we received that many bytes + */ + if (urb->actual_length >= sizeof(*req_pkt) + sizeof(*sigp) && + req_pkt->bRequestType == USB_REQUEST_TYPE_CLASS && + req_pkt->bRequest == USB_REQUEST_IFACE) { int old_dcd_state; unsigned char signals = *((unsigned char *) urb->transfer_buffer + @@ -609,7 +713,8 @@ static void sierra_instat_callback(struct urb *urb) signals); old_dcd_state = portdata->dcd_state; - portdata->cts_state = 1; + /* Note: CTS from modem is in reverse logic! */ + portdata->cts_state = ((signals & 0x100) ? 0 : 1); portdata->dcd_state = ((signals & 0x01) ? 1 : 0); portdata->dsr_state = ((signals & 0x02) ? 1 : 0); portdata->ri_state = ((signals & 0x08) ? 1 : 0); @@ -618,18 +723,19 @@ static void sierra_instat_callback(struct urb *urb) old_dcd_state && !portdata->dcd_state) tty_hangup(port->tty); } else { - dev_dbg(&port->dev, "%s: type %x req %x\n", - __func__, req_pkt->bRequestType, - req_pkt->bRequest); + /* dump the data we don't understand to log */ + usb_serial_debug_data(1, &port->dev, __func__, + urb->actual_length, urb->transfer_buffer); } } else dev_dbg(&port->dev, "%s: error %d\n", __func__, status); /* Resubmit urb so we continue receiving IRQ data */ - if (port->open_count && status != -ESHUTDOWN && status != -ENOENT) { + if (port->open_count && + status != -ESHUTDOWN && status != -ENOENT && status != -ENODEV) { urb->dev = serial->dev; err = usb_submit_urb(urb, GFP_ATOMIC); - if (err) + if (err && err != -ENODEV) dev_err(&port->dev, "%s: resubmit intr urb " "failed. (%d)\n", __func__, err); } @@ -639,20 +745,21 @@ static int sierra_write_room(struct usb_serial_port *port) { struct sierra_port_private *portdata = usb_get_serial_port_data(port); unsigned long flags; + int retval; dev_dbg(&port->dev, "%s - port %d\n", __func__, port->number); /* try to give a good number back based on if we have any free urbs at * this point in time */ + retval = MAX_TRANSFER; + spin_lock_irqsave(&portdata->lock, flags); - if (portdata->outstanding_urbs > N_OUT_URB * 2 / 3) { - spin_unlock_irqrestore(&portdata->lock, flags); - dev_dbg(&port->dev, "%s - write limit hit\n", __func__); - return 0; + if (portdata->outstanding_urbs >= portdata->num_out_urbs) { + retval = 0; } spin_unlock_irqrestore(&portdata->lock, flags); - return 2048; + return retval; } static void sierra_stop_rx_urbs(struct usb_serial_port *port) @@ -660,7 +767,7 @@ static void sierra_stop_rx_urbs(struct usb_serial_port *port) int i; struct sierra_port_private *portdata = usb_get_serial_port_data(port); - for (i = 0; i < ARRAY_SIZE(portdata->in_urbs); i++) { + for (i = 0; i < portdata->num_in_urbs; i++) { usb_kill_urb(portdata->in_urbs[i]); } usb_kill_urb(port->interrupt_in_urb); @@ -675,7 +782,7 @@ static int sierra_submit_rx_urbs(struct usb_serial_port *port) struct sierra_port_private *portdata = usb_get_serial_port_data(port); ok_cnt = 0; - for (i = 0; i < ARRAY_SIZE(portdata->in_urbs); i++) { + for (i = 0; i < portdata->num_in_urbs; i++) { urb = portdata->in_urbs[i]; if (!urb) continue; @@ -746,6 +853,7 @@ static void sierra_close(struct usb_serial_port *port, struct file *filp) int i; struct usb_serial *serial = port->serial; struct sierra_port_private *portdata; + int time; dev_dbg(&port->dev, "%s\n", __func__); portdata = usb_get_serial_port_data(port); @@ -754,18 +862,20 @@ static void sierra_close(struct usb_serial_port *port, struct file *filp) portdata->dtr_state = 0; if (serial->dev) { - mutex_lock(&serial->disc_mutex); - if (!serial->disconnected) - sierra_send_setup(port); - mutex_unlock(&serial->disc_mutex); + sierra_send_setup(port); /* Stop reading urbs */ sierra_stop_rx_urbs(port); /* .. and release them */ - for (i = 0; i < N_IN_URB; i++) { + for (i = 0; i < portdata->num_in_urbs; i++) { sierra_release_urb(portdata->in_urbs[i]); portdata->in_urbs[i] = NULL; } + + time = usb_wait_anchor_empty_timeout(&portdata->submitted,1000); + if (!time) { + usb_kill_anchored_urbs(&portdata->submitted); + } } port->tty = NULL; @@ -787,13 +897,10 @@ static int sierra_open(struct usb_serial_port *port, struct file *filp) /* Set some sane defaults */ portdata->rts_state = 1; portdata->dtr_state = 1; - - - spin_lock_init(&portdata->lock); - + endpoint = port->bulk_in_endpointAddress; - for (i = 0; i < ARRAY_SIZE(portdata->in_urbs); i++) { + for (i = 0; i < portdata->num_in_urbs; i++) { urb = sierra_setup_urb(serial, endpoint, USB_DIR_IN, port, IN_BUFLEN, sierra_indat_callback); portdata->in_urbs[i] = urb; @@ -815,9 +922,11 @@ static int sierra_open(struct usb_serial_port *port, struct file *filp) static int sierra_startup(struct usb_serial *serial) { - struct usb_serial_port *port; - struct sierra_port_private *portdata; + struct usb_serial_port *port = NULL; + struct sierra_port_private *portdata = NULL; + struct sierra_iface_info *himemoryp = NULL; int i; + u8 ifnum; dev_dbg(&serial->dev->dev, "%s\n", __func__); @@ -828,20 +937,61 @@ static int sierra_startup(struct usb_serial *serial) if (nmea) sierra_vsc_set_nmea(serial->dev, 1); - /* Now setup per port private data */ - for (i = 0; i < serial->num_ports; i++) { - port = serial->port[i]; - portdata = kzalloc(sizeof(*portdata), GFP_KERNEL); + if (serial->num_ports) { + /* Note: One big piece of memory is allocated for all ports + * private data in one shot. This memory is split into equal + * pieces for each port. + */ + portdata = (struct sierra_port_private *)kzalloc + (sizeof(*portdata) * serial->num_ports, GFP_KERNEL); if (!portdata) { - dev_dbg(&port->dev, "%s: kmalloc for " - "sierra_port_private (%d) failed!\n", - __func__, i); + dev_dbg(&serial->dev->dev, "%s: No memory!\n", __func__); return -ENOMEM; } + } + + /* Now setup per port private data */ + /* Note that the private space for each port is accessed by + * advancing the private data pointer accordingly + */ + for (i = 0; i < serial->num_ports; i++, portdata++) { + port = serial->port[i]; + /* initialize selected members of private data because these + * may be referred to right away */ + spin_lock_init(&portdata->lock); + init_usb_anchor(&portdata->submitted); + portdata->suspend_status = 0; + portdata->cts_state = 1; + ifnum = i; + /* Assume low memory requirements */ + portdata->num_out_urbs = N_OUT_URB; + portdata->num_in_urbs = N_IN_URB; + + /* Determine actual memory requirements */ + if (serial->num_ports == 1) { + /* Get interface number for composite device */ + ifnum = sierra_calc_interface(serial); + himemoryp = + (struct sierra_iface_info *)&typeB_interface_list; + if (is_himemory(ifnum, himemoryp)) { + portdata->num_out_urbs = N_OUT_URB_HM; + portdata->num_in_urbs = N_IN_URB_HM; + } + } + else { + himemoryp = + (struct sierra_iface_info *)&typeA_interface_list; + if (is_himemory(i, himemoryp)) { + portdata->num_out_urbs = N_OUT_URB_HM; + portdata->num_in_urbs = N_IN_URB_HM; + } + } + dev_dbg(&serial->dev->dev, + "Memory usage (urbs) interface #%d, in=%d, out=%d\n", + ifnum,portdata->num_in_urbs, portdata->num_out_urbs ); /* Set the port private data pointer */ usb_set_serial_port_data(port, portdata); } - return 0; } @@ -849,53 +999,87 @@ static void sierra_shutdown(struct usb_serial *serial) { int i; struct usb_serial_port *port; - struct sierra_port_private *portdata; dev_dbg(&serial->dev->dev, "%s\n", __func__); + if (serial->num_ports > 0) { + port = serial->port[0]; + if (port) + /* Note: The entire piece of memory that was allocated + * in the startup routine can be released by passing + * a pointer to the beginning of the piece. + * This address corresponds to the address of the chunk + * that was given to port 0. + */ + kfree(usb_get_serial_port_data(port)); + } for (i = 0; i < serial->num_ports; ++i) { port = serial->port[i]; if (!port) continue; - portdata = usb_get_serial_port_data(port); - if (!portdata) - continue; - kfree(portdata); usb_set_serial_port_data(port, NULL); } } +#ifdef CONFIG_PM int sierra_suspend(struct usb_serial *serial, pm_message_t message) { int i; + struct usb_serial_port *port; + struct sierra_port_private *portdata; + unsigned long flags; + int time; dev_dbg(&serial->dev->dev, "%s\n", __func__); - /* The dummy interface doesn't prevent suspended state */ - if (serial->num_ports == 0) - return 0; - - if (!suspend_support) - return -EOPNOTSUPP; - - for (i=0; i < serial->num_ports ; i++) { - sierra_stop_rx_urbs(serial->port[i]); - } + for (i = 0; i < serial->num_ports; ++i) { + port = serial->port[i]; + if (!port) + continue; + portdata = usb_get_serial_port_data(port); + if (!portdata) + continue; + /* indicate suspended power mode */ + portdata->suspend_status = 1; + sierra_stop_rx_urbs(port); + /* release tx urbs */ + time = usb_wait_anchor_empty_timeout(&portdata->submitted,1000); + if (!time) { + usb_kill_anchored_urbs(&portdata->submitted); + spin_lock_irqsave(&portdata->lock, flags); + /* set outstanding tx urbs counter to 0 */ + portdata->outstanding_urbs = 0; + spin_unlock_irqrestore(&portdata->lock, flags); + } + } /* end for loop */ return 0; } int sierra_resume(struct usb_serial *serial) { int i; - + struct usb_serial_port *port; + struct sierra_port_private *portdata; + dev_dbg(&serial->dev->dev, "%s\n", __func__); - + for (i=0; i < serial->num_ports ; i++) { - sierra_submit_rx_urbs(serial->port[i]); + port = serial->port[i]; + if (!port) + continue; + portdata = usb_get_serial_port_data(port); + if (!portdata) + continue; + sierra_submit_rx_urbs(port); + /* indicate non-suspended power mode */ + portdata->suspend_status = 0; } - return 0; } +#else +#define sierra_suspend NULL +#define sierra_resume NULL +#endif static struct usb_driver sierra_driver = { .name = "sierra", @@ -931,6 +1115,8 @@ static struct usb_serial_driver sierra_device = { .tiocmset = sierra_tiocmset, .attach = sierra_startup, .shutdown = sierra_shutdown, + .port_probe = sierra_create_sysfs_attrs, + .port_remove = sierra_remove_sysfs_attrs, .read_int_callback = sierra_instat_callback, .suspend = sierra_suspend, .resume = sierra_resume, @@ -981,6 +1167,3 @@ MODULE_PARM_DESC(nmea, "NMEA streaming"); module_param(debug, bool, S_IRUGO | S_IWUSR); MODULE_PARM_DESC(debug, "Debug messages"); - -module_param(suspend_support, bool, S_IRUGO | S_IWUSR); -MODULE_PARM_DESC(suspend_support, "Selective Suspend support"); diff --git a/release/src-rt/linux/linux-2.6/fs/ext3/balloc.c b/release/src-rt/linux/linux-2.6/fs/ext3/balloc.c index bc8551d5fe..aaf0ae2278 100644 --- a/release/src-rt/linux/linux-2.6/fs/ext3/balloc.c +++ b/release/src-rt/linux/linux-2.6/fs/ext3/balloc.c @@ -1572,6 +1572,7 @@ retry_alloc: /* * Now search the rest of the groups. We assume that * i and gdp correctly point to the last group visited. + * Patched: Victek, 2013 .. http://marc.info/?l=linux-ext4&m=126972886125212 */ for (bgi = 0; bgi < ngroups; bgi++) { group_no++; @@ -1579,9 +1580,17 @@ retry_alloc: group_no = 0; gdp = ext3_get_group_desc(sb, group_no, &gdp_bh); if (!gdp) - goto io_error; + goto io_error; + if (!gdp->bg_free_blocks_count) + continue; free_blocks = le16_to_cpu(gdp->bg_free_blocks_count); /* + * skip this group (and avoid loading bitmap) if there + * are no free blocks + */ + if (!free_blocks) + continue; + /* * skip this group if the number of * free blocks is less than half of the reservation * window size. diff --git a/release/src-rt/linux/linux-2.6/fs/partitions/efi.c b/release/src-rt/linux/linux-2.6/fs/partitions/efi.c index e7b07006bc..545714b687 100644 --- a/release/src-rt/linux/linux-2.6/fs/partitions/efi.c +++ b/release/src-rt/linux/linux-2.6/fs/partitions/efi.c @@ -92,6 +92,7 @@ * ************************************************************/ #include +#include #include "check.h" #include "efi.h" @@ -148,7 +149,7 @@ last_lba(struct block_device *bdev) { if (!bdev || !bdev->bd_inode) return 0; - return (bdev->bd_inode->i_size >> 9) - 1ULL; + return div64_64(bdev->bd_inode->i_size, bdev_hardsect_size(bdev)) - 1ULL; } static inline int @@ -195,6 +196,7 @@ static size_t read_lba(struct block_device *bdev, u64 lba, u8 * buffer, size_t count) { size_t totalreadcount = 0; + sector_t n = lba * (bdev_hardsect_size(bdev) >> 9); if (!bdev || !buffer || lba > last_lba(bdev)) return 0; @@ -202,7 +204,7 @@ read_lba(struct block_device *bdev, u64 lba, u8 * buffer, size_t count) while (count) { int copied = 512; Sector sect; - unsigned char *data = read_dev_sector(bdev, lba++, §); + unsigned char *data = read_dev_sector(bdev, n++, §); if (!data) break; if (copied > count) @@ -264,15 +266,16 @@ static gpt_header * alloc_read_gpt_header(struct block_device *bdev, u64 lba) { gpt_header *gpt; + int sectsize = bdev_hardsect_size(bdev); + if (!bdev) return NULL; - gpt = kzalloc(sizeof (gpt_header), GFP_KERNEL); + gpt = kzalloc(sectsize, GFP_KERNEL); if (!gpt) return NULL; - if (read_lba(bdev, lba, (u8 *) gpt, - sizeof (gpt_header)) < sizeof (gpt_header)) { + if (read_lba(bdev, lba, (u8 *) gpt, sectsize) < sectsize) { kfree(gpt); gpt=NULL; return NULL; @@ -609,6 +612,7 @@ efi_partition(struct parsed_partitions *state, struct block_device *bdev) gpt_header *gpt = NULL; gpt_entry *ptes = NULL; u32 i; + int n =(bdev_hardsect_size(bdev) >> 9); if (!find_valid_gpt(bdev, &gpt, &ptes) || !gpt || !ptes) { kfree(gpt); @@ -622,10 +626,10 @@ efi_partition(struct parsed_partitions *state, struct block_device *bdev) if (!is_pte_valid(&ptes[i], last_lba(bdev))) continue; - put_partition(state, i+1, le64_to_cpu(ptes[i].starting_lba), + put_partition(state, i+1, le64_to_cpu(ptes[i].starting_lba)*n, (le64_to_cpu(ptes[i].ending_lba) - le64_to_cpu(ptes[i].starting_lba) + - 1ULL)); + 1ULL)*n); /* If this is a RAID volume, tell md */ if (!efi_guidcmp(ptes[i].partition_type_guid, diff --git a/release/src-rt/linux/linux-2.6/fs/partitions/efi.h b/release/src-rt/linux/linux-2.6/fs/partitions/efi.h index 2cc89d0475..07b2a68441 100644 --- a/release/src-rt/linux/linux-2.6/fs/partitions/efi.h +++ b/release/src-rt/linux/linux-2.6/fs/partitions/efi.h @@ -37,7 +37,6 @@ #define EFI_PMBR_OSTYPE_EFI 0xEF #define EFI_PMBR_OSTYPE_EFI_GPT 0xEE -#define GPT_BLOCK_SIZE 512 #define GPT_HEADER_SIGNATURE 0x5452415020494645ULL #define GPT_HEADER_REVISION_V1 0x00010000 #define GPT_PRIMARY_PARTITION_TABLE_LBA 1 @@ -79,7 +78,6 @@ typedef struct _gpt_header { __le32 num_partition_entries; __le32 sizeof_partition_entry; __le32 partition_entry_array_crc32; - u8 reserved2[GPT_BLOCK_SIZE - 92]; } __attribute__ ((packed)) gpt_header; typedef struct _gpt_entry_attributes { diff --git a/release/src-rt/linux/linux-2.6/include/asm-mips/fixmap.h b/release/src-rt/linux/linux-2.6/include/asm-mips/fixmap.h index 4c239473c2..a6761c6067 100644 --- a/release/src-rt/linux/linux-2.6/include/asm-mips/fixmap.h +++ b/release/src-rt/linux/linux-2.6/include/asm-mips/fixmap.h @@ -84,12 +84,21 @@ extern void __set_fixmap (enum fixed_addresses idx, #else #define FIXADDR_TOP ((unsigned long)(long)(int)0xfffe0000) #endif -#define FIXADDR_SIZE (__end_of_fixed_addresses << PAGE_SHIFT) +#define FIXADDR_SIZE (__end_of_fixed_addresses << (VALIAS_PAGE_SHIFT)) #define FIXADDR_START (FIXADDR_TOP - FIXADDR_SIZE) #define __fix_to_virt(x) (FIXADDR_TOP - ((x) << PAGE_SHIFT)) #define __virt_to_fix(x) ((FIXADDR_TOP - ((x)&PAGE_MASK)) >> PAGE_SHIFT) +static inline unsigned long fix_to_virt_noalias(const unsigned int x, unsigned long pfn) +{ + unsigned long vaddr = __fix_to_virt(x); + unsigned long poffset = (pfn << PAGE_SHIFT) & VALIAS_PAGE_OFFSET_MASK; + unsigned long voffset = vaddr & VALIAS_PAGE_OFFSET_MASK; + + return ((!voffset || (poffset >= voffset)) ? (vaddr | poffset):(vaddr | poffset | VALIAS_PAGE_SIZE)); +} + extern void __this_fixmap_does_not_exist(void); /* diff --git a/release/src-rt/linux/linux-2.6/include/asm-mips/page.h b/release/src-rt/linux/linux-2.6/include/asm-mips/page.h index fa7289f530..96f5245334 100644 --- a/release/src-rt/linux/linux-2.6/include/asm-mips/page.h +++ b/release/src-rt/linux/linux-2.6/include/asm-mips/page.h @@ -56,6 +56,14 @@ extern void clear_page(void * page); extern void copy_page(void * to, void * from); extern unsigned long shm_align_mask; +extern unsigned char shm_align_shift; + +#define VALIAS_PAGE_OFFSET_MASK (shm_align_mask) +#define VALIAS_PAGE_MASK (~VALIAS_PAGE_OFFSET_MASK) +#define VALIAS_PAGE_SHIFT (shm_align_shift) +#define VALIAS_SHIFT (VALIAS_PAGE_SHIFT - PAGE_SHIFT) +#define VALIAS_PAGE_SIZE (1UL << VALIAS_PAGE_SHIFT) +#define VALIAS_IDX(x) ((x) << VALIAS_SHIFT) static inline unsigned long pages_do_alias(unsigned long addr1, unsigned long addr2) diff --git a/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ipt_account.h b/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ipt_account.h new file mode 100644 index 0000000000..382b173784 --- /dev/null +++ b/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ipt_account.h @@ -0,0 +1,24 @@ +/* Copyright (c) 2004-2011 Piotr 'QuakeR' Gasidlo + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + */ + +#ifndef _IPT_ACCOUNT_H_ +#define _IPT_ACCOUNT_H_ + +#define IPT_ACCOUNT_NAME_LEN 64 + +struct t_ipt_account_table; + +struct t_ipt_account_info { + char name[IPT_ACCOUNT_NAME_LEN + 1]; + u_int32_t network, netmask; + int shortlisting:1; + /* pointer to the table for fast matching */ + struct t_ipt_account_table *table; +}; + +#endif /* _IPT_ACCOUNT_H */ + diff --git a/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ipt_ipp2p.h b/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ipt_ipp2p.h index 7033a495dd..e3ceff3cab 100644 --- a/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ipt_ipp2p.h +++ b/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ipt_ipp2p.h @@ -1,6 +1,6 @@ #ifndef __IPT_IPP2P_H #define __IPT_IPP2P_H -#define IPP2P_VERSION "0.8.2-pomng" +#define IPP2P_VERSION "0.99.16" struct ipt_p2p_info { int cmd; @@ -10,15 +10,10 @@ struct ipt_p2p_info { #endif //__IPT_IPP2P_H #define SHORT_HAND_IPP2P 1 /* --ipp2p switch*/ -//#define SHORT_HAND_DATA 4 /* --ipp2p-data switch*/ #define SHORT_HAND_NONE 5 /* no short hand*/ #define IPP2P_EDK (1 << 1) -#define IPP2P_DATA_KAZAA (1 << 2) -#define IPP2P_DATA_EDK (1 << 3) -#define IPP2P_DATA_DC (1 << 4) #define IPP2P_DC (1 << 5) -#define IPP2P_DATA_GNU (1 << 6) #define IPP2P_GNU (1 << 7) #define IPP2P_KAZAA (1 << 8) #define IPP2P_BIT (1 << 9) @@ -29,3 +24,5 @@ struct ipt_p2p_info { #define IPP2P_MUTE (1 << 14) #define IPP2P_WASTE (1 << 15) #define IPP2P_XDCC (1 << 16) +#define IPP2P_PP (1 << 17) +#define IPP2P_XUNLEI (1 << 18) diff --git a/release/src-rt/linux/linux-2.6/include/linux/pkt_sched.h b/release/src-rt/linux/linux-2.6/include/linux/pkt_sched.h index 827a216da7..f5d02c6022 100644 --- a/release/src-rt/linux/linux-2.6/include/linux/pkt_sched.h +++ b/release/src-rt/linux/linux-2.6/include/linux/pkt_sched.h @@ -77,8 +77,9 @@ struct tc_ratespec { unsigned char cell_log; unsigned char __reserved; - unsigned short feature; - short addend; + unsigned short feature; /* Always 0 in pre-atm patch kernels */ + char cell_align; /* Always 0 in pre-atm patch kernels */ + unsigned char __unused; unsigned short mpu; __u32 rate; }; @@ -256,9 +257,9 @@ struct tc_gred_sopt }; /* HTB section */ -#define TC_HTB_NUMPRIO 8 -#define TC_HTB_MAXDEPTH 8 -#define TC_HTB_PROTOVER 3 /* the same as HTB and TC's major */ +#define TC_HTB_NUMPRIO 11 /* Toastman */ +#define TC_HTB_MAXDEPTH 8 +#define TC_HTB_PROTOVER 3 /* the same as HTB and TC's major */ struct tc_htb_opt { @@ -337,7 +338,7 @@ enum /* CBQ section */ -#define TC_CBQ_MAXPRIO 8 +#define TC_CBQ_MAXPRIO 11 /* Toastman */ #define TC_CBQ_MAXLEVEL 8 #define TC_CBQ_DEF_EWMA 5 diff --git a/release/src-rt/linux/linux-2.6/include/linux/version.h b/release/src-rt/linux/linux-2.6/include/linux/version.h deleted file mode 100644 index aae96e2008..0000000000 --- a/release/src-rt/linux/linux-2.6/include/linux/version.h +++ /dev/null @@ -1,2 +0,0 @@ -#define LINUX_VERSION_CODE 132630 -#define KERNEL_VERSION(a,b,c) (((a) << 16) + ((b) << 8) + (c)) diff --git a/release/src-rt/linux/linux-2.6/include/net/netfilter/nf_conntrack.h b/release/src-rt/linux/linux-2.6/include/net/netfilter/nf_conntrack.h index f2176c848b..3f1876503d 100644 --- a/release/src-rt/linux/linux-2.6/include/net/netfilter/nf_conntrack.h +++ b/release/src-rt/linux/linux-2.6/include/net/netfilter/nf_conntrack.h @@ -171,6 +171,7 @@ struct nf_conn u_int32_t ctf_flags; #endif /* HNDCTF */ + u_int32_t ipp2p; /* Storage reserved for other modules: */ union nf_conntrack_proto proto; diff --git a/release/src-rt/linux/linux-2.6/include/net/sch_generic.h b/release/src-rt/linux/linux-2.6/include/net/sch_generic.h index 9d23d3021b..58a793b775 100644 --- a/release/src-rt/linux/linux-2.6/include/net/sch_generic.h +++ b/release/src-rt/linux/linux-2.6/include/net/sch_generic.h @@ -301,6 +301,19 @@ drop: kfree_skb(skb); return NET_XMIT_DROP; } +/* Lookup a qdisc_rate_table to determine how long it will take to send a + packet given its size. + */ +static inline u32 qdisc_l2t(struct qdisc_rate_table* rtab, int pktlen) +{ + int slot = pktlen + rtab->rate.cell_align; + if (slot < 0) + slot = 0; + slot >>= rtab->rate.cell_log; + if (slot > 255) + return rtab->data[255] + 1; + return rtab->data[slot]; +} #ifdef CONFIG_NET_CLS_ACT static inline struct sk_buff *skb_act_clone(struct sk_buff *skb, gfp_t gfp_mask) diff --git a/release/src-rt/linux/linux-2.6/include/net/tcp.h b/release/src-rt/linux/linux-2.6/include/net/tcp.h index 8e98da664b..0b6a4d8025 100644 --- a/release/src-rt/linux/linux-2.6/include/net/tcp.h +++ b/release/src-rt/linux/linux-2.6/include/net/tcp.h @@ -997,27 +997,11 @@ static inline int tcp_fin_time(const struct sock *sk) return fin_timeout; } -static inline int tcp_paws_check(const struct tcp_options_received *rx_opt, - int paws_win) +static inline int tcp_paws_check(const struct tcp_options_received *rx_opt, int rst) { - if ((s32)(rx_opt->ts_recent - rx_opt->rcv_tsval) <= paws_win) - return 1; - if (unlikely(get_seconds() >= rx_opt->ts_recent_stamp + TCP_PAWS_24DAYS)) - return 1; - /* - * Some OSes send SYN and SYNACK messages with tsval=0 tsecr=0, - * then following tcp messages have valid values. Ignore 0 value, - * or else 'negative' tsval might forbid us to accept their packets. - */ - if (!rx_opt->ts_recent) - return 1; - return 0; -} - -static inline int tcp_paws_reject(const struct tcp_options_received *rx_opt, - int rst) -{ - if (tcp_paws_check(rx_opt, 0)) + if ((s32)(rx_opt->rcv_tsval - rx_opt->ts_recent) >= 0) + return 0; + if (get_seconds() >= rx_opt->ts_recent_stamp + TCP_PAWS_24DAYS) return 0; /* RST segments are not recommended to carry timestamp, diff --git a/release/src-rt/linux/linux-2.6/net/ipv4/netfilter/Kconfig b/release/src-rt/linux/linux-2.6/net/ipv4/netfilter/Kconfig index c7ecdebd31..d5b92f734f 100644 --- a/release/src-rt/linux/linux-2.6/net/ipv4/netfilter/Kconfig +++ b/release/src-rt/linux/linux-2.6/net/ipv4/netfilter/Kconfig @@ -498,5 +498,29 @@ config IP_NF_TOMATOCT tristate 'tomato_ct' depends on NF_CONNTRACK_MARK && EXPERIMENTAL +config IP_NF_MATCH_ACCOUNT + tristate "account match support" + depends on IP_NF_IPTABLES + help + This patch adds the account match + + The account match provides simple traffic accounting for continuous networks. + --aaddr subnet for which enable traffic accounting + --aname table name with traffic counters, it can be accessed by reading + /proc/net/ipt_account/ + --ashort do simple statistics (no tcp/udp/icmp counters) + + More options can be found on project homepage. + + Project homepage: + http://www.svn.barbara.eu.org/ipt_account/ + + To compile it as a module, choose M here. If unsure, say N. + +config IP_NF_DNSMQ + tristate 'dnsmq' + depends on NF_CONNTRACK + default n + endmenu diff --git a/release/src-rt/linux/linux-2.6/net/ipv4/netfilter/Makefile b/release/src-rt/linux/linux-2.6/net/ipv4/netfilter/Makefile index 9ef77f9774..c868e09a85 100644 --- a/release/src-rt/linux/linux-2.6/net/ipv4/netfilter/Makefile +++ b/release/src-rt/linux/linux-2.6/net/ipv4/netfilter/Makefile @@ -56,6 +56,7 @@ obj-$(CONFIG_IP_NF_MATCH_ADDRTYPE) += ipt_addrtype.o obj-$(CONFIG_IP_NF_MATCH_MACSAVE) += ipt_macsave.o obj-$(CONFIG_IP_NF_MATCH_EXP) += ipt_exp.o obj-$(CONFIG_IP_NF_MATCH_BCOUNT) += ipt_bcount.o +obj-$(CONFIG_IP_NF_MATCH_ACCOUNT) += ipt_account.o # targets obj-$(CONFIG_IP_NF_TARGET_REJECT) += ipt_REJECT.o @@ -88,3 +89,5 @@ obj-$(CONFIG_BCM_NAT) += bcm_nat.o obj-$(CONFIG_IP_NF_TOMATOCT) += tomato_ct.o +# DNSMQ +obj-$(CONFIG_IP_NF_DNSMQ) += dnsmq.o diff --git a/release/src-rt/linux/linux-2.6/net/ipv4/netfilter/dnsmq.c b/release/src-rt/linux/linux-2.6/net/ipv4/netfilter/dnsmq.c new file mode 100644 index 0000000000..52bb8e0bc0 --- /dev/null +++ b/release/src-rt/linux/linux-2.6/net/ipv4/netfilter/dnsmq.c @@ -0,0 +1,264 @@ +/* + * Packet matching code. + * + * Copyright (C) 1999 Paul `Rusty' Russell & Michael J. Neuling + * Copyright (C) 2009-2002 Netfilter core team + * + * 19 Jan 2002 Harald Welte + * - increase module usage count as soon as we have rules inside + * a table + */ +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#define DEBUGP(format, args...) + +unsigned int dnsmq_ip=0; +char dnsmq_name[32]; +unsigned char dnsmq_mac[ETH_ALEN] = { 0x00, 0xe0, 0x11, 0x22, 0x33, 0x44 }; +typedef int (*dnsmqHitHook)(struct sk_buff *skb); +dnsmqHitHook dnsmq_hit_hook = NULL; + +static inline void dnsmq_hit_hook_func(dnsmqHitHook hook_func) +{ + dnsmq_hit_hook = hook_func; +} + +void dump_packet(struct sk_buff *skb, char *title) +{ + int i; + + if(nvram_match("dnsmq_debug", "1")) { + printk("dump packet[%s] %x %x %x", title, skb->len, skb->mac_len, skb->data_len); + if(skb->dev) printk("%s\n", skb->dev->name); + else printk("\n"); + + if(skb && skb->data) { + for(i=0;ilen&&i<120;i++) { + if(i%16==0) printk("\n"); + printk("%x ", skb->data[i]); + } + } + printk("\n\n\n"); + } +} + +EXPORT_SYMBOL(dump_packet); + +#define MAXDNSNAME 256 +#pragma pack(1) // let struct be neat by byte + +typedef struct Flags_Pack { + uint16_t reply_1:4, + non_auth_ok:1, + answer_auth:1, + reserved:1, + recur_avail:1, + recur_desired:1, + truncated:1, + authori:1, + opcode:4, + response:1; +} flag_pack; + +typedef struct DNS_HEADER { + uint16_t tid; + union { + uint16_t flag_num; + flag_pack flags; + } flag_set; + uint16_t questions; + uint16_t answer_rrs; + uint16_t auth_rrs; + uint16_t additional_rss; +} dns_header; + +typedef struct DNS_QUERIES { + char name[MAXDNSNAME]; + uint16_t type; + uint16_t ip_class; +} dns_queries; + +typedef struct DNS_REQUEST { + dns_header header; + dns_queries queries; +} dns_query_packet; + +static inline int dnschar_cmp(char a, char b) +{ + char a1; + + if(a==b) return 0; + + if(a>='a'&&a<='z') a1 = 'A' + a - 'a'; + else if(a>='A'&&a<='Z') a1 = 'a' + a - 'A'; + else return 1; + + if(a1==b) return 0; + + return 1; +} + +static inline int dnsmq_hit(struct udphdr *udph) +{ + dns_query_packet *dns_query; + int i, j; + + dns_query = (dns_query_packet *)((unsigned char *)udph + sizeof(struct udphdr)); + + j = 0; + //printk("dns hit\n"); + for(i=0;dns_query->queries.name[i]!=0;i++) { + //printk("%x %x %x\n", i, dns_query->queries.name[i], dnsmq_name[i]); + if(dnschar_cmp(dns_query->queries.name[i],dnsmq_name[j])) return 0; + j++; + } + return 1; +} + +static inline int dnsmq_func(struct sk_buff *skb) +{ + struct ethhdr *ethh; + struct vlan_ethhdr *vethh; + struct iphdr *iph; + struct udphdr *udph; + struct tcphdr *tcph; + u32 hlen; + u16 proto; + + if(dnsmq_ip==0) return 0; + + if(!skb || !skb->data) return 0; + + ethh = (struct ethhdr *)skb->data; + + proto = ntohs(ethh->h_proto); + + if(proto == ETH_P_IP) hlen = ETH_HLEN; + else if (proto == ETH_P_8021Q) { + vethh = (struct vlan_ethhdr *)skb->data; + if(vethh->h_vlan_encapsulated_proto == htons(ETH_P_IP)) + hlen = VLAN_ETH_HLEN; + else return 0; + } + else return 0; + + iph = (struct iphdr *)(skb->data+hlen); + + // IP & DNS & Looking for my host name + if(iph->protocol==IPPROTO_UDP) { + udph = (struct udphdr *)(skb->data+hlen+(iph->ihl<<2)); + if(ntohs(udph->dest)==53) { + if(dnsmq_hit(udph)) { + memcpy(ethh->h_dest, dnsmq_mac, ETH_ALEN); + //dump_packet(skb, "dnshit"); + return 1; + } + } + } + // IP & HTTP & Original Locol IP & Looking for my host name + else if(iph->protocol==IPPROTO_TCP) { + tcph = (struct tcphdr *)(skb->data+hlen+(iph->ihl<<2)); + if(iph->daddr==dnsmq_ip && ntohs(tcph->dest)==80) { + memcpy(ethh->h_dest, dnsmq_mac, ETH_ALEN); + //dump_packet(skb, "httphit"); + return 1; + } + } + return 0; +} + +static int dnsmq_ctrl(struct file *file, const char *buffer, unsigned long length, void *data) +{ + char s[32]; + char str[32]; + char *ptr; + int i, j; + + // "[dnsmq ip] [dnsmq name] + if ((length > 0) && (length < 32)) { + memcpy(s, buffer, length); + s[length] = 0; + for(i=0;iowner = THIS_MODULE; + p->write_proc = dnsmq_ctrl; + } +#endif + // it will be enabled later + dnsmq_hit_hook_func (NULL); + return 0; +} + +static void __exit fini(void) +{ + dnsmq_hit_hook_func (NULL); +} + +EXPORT_SYMBOL(dnsmq_hit_hook); + +module_init(init); +module_exit(fini); +MODULE_LICENSE("Proprietary"); + diff --git a/release/src-rt/linux/linux-2.6/net/ipv4/netfilter/ipt_account.c b/release/src-rt/linux/linux-2.6/net/ipv4/netfilter/ipt_account.c new file mode 100644 index 0000000000..786f6cf2c6 --- /dev/null +++ b/release/src-rt/linux/linux-2.6/net/ipv4/netfilter/ipt_account.c @@ -0,0 +1,1128 @@ +/* Copyright (c) 2004-2011 Piotr 'QuakeR' Gasidlo + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#define IPT_ACCOUNT_VERSION "0.1.21" + +//#define DEBUG_IPT_ACCOUNT + +MODULE_AUTHOR("Piotr Gasidlo "); +MODULE_DESCRIPTION("Traffic accounting module"); +MODULE_LICENSE("GPL"); + +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,21) +#include +#else +#include +#endif +#include + +/* Compatibility, should replace all HIPQUAD with %pI4 and use network byte order not host byte order */ +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,30) +#define HIPQUAD(addr) \ + ((unsigned char *)&addr)[3], \ + ((unsigned char *)&addr)[2], \ + ((unsigned char *)&addr)[1], \ + ((unsigned char *)&addr)[0] +#endif + +/* defaults, can be overriden */ +static unsigned int netmask = 16; /* Safe netmask, if you try to create table + for larger netblock you will get error. + Increase by command line only when you + known what are you doing. */ + +#ifdef DEBUG_IPT_ACCOUNT +static int debug = 0; +#endif +module_param(netmask, uint, 0400); + +MODULE_PARM_DESC(netmask,"maximum *save* netmask"); +#ifdef DEBUG_IPT_ACCOUNT +module_param(debug, bool, 0600); +MODULE_PARM_DESC(debug,"enable debugging output"); +#endif + +/* structure with statistics counter, used when table is created without --ashort switch */ +struct t_ipt_account_stat_long { + u_int64_t b_all, b_tcp, b_udp, b_icmp, b_other; + u_int64_t p_all, p_tcp, p_udp, p_icmp, p_other; +}; + +/* same as above, for tables created with --ashort switch */ +struct t_ipt_account_stat_short { + u_int64_t b_all; + u_int64_t p_all; +}; + +/* structure holding to/from statistics for single ip when table is created without --ashort switch */ +struct t_ipt_account_stats_long { + struct t_ipt_account_stat_long src, dst; + struct timespec time; /* time, when statistics was last modified */ +}; + +/* same as above, for tables created with --ashort switch */ +struct t_ipt_account_stats_short { + struct t_ipt_account_stat_short src, dst; + struct timespec time; +}; + +/* defines for "show" table option */ +#define SHOW_ANY 0 +#define SHOW_SRC 1 +#define SHOW_DST 2 +#define SHOW_SRC_OR_DST 3 +#define SHOW_SRC_AND_DST 4 + +/* structure describing single table */ +struct t_ipt_account_table { + struct list_head list; + atomic_t use; /* use counter, the number of rules which points to this table */ + + char name[IPT_ACCOUNT_NAME_LEN + 1]; /* table name ( = filename in /proc/net/ipt_account/) */ + u_int32_t network, netmask, count; /* network/netmask/hosts count coverted by table */ + + int shortlisting:1; /* gather only total statistics (set for tables created with --ashort switch) */ + int timesrc:1; /* update time when accounting outgoing traffic */ + int timedst:1; /* update time when accounting incomming traffic */ + int resetonread:1; /* reset statistics after reading it via proc */ + int show; /* show with entries */ + + /* FIXME: why int show:3 results in 'warning: comparison is always 0 due to width of bit-field' in ipt_account_seq_show + * gcc -v: gcc version 3.4.6 */ + + union { /* statistics for each ip in network/netmask */ + struct t_ipt_account_stats_long *l; + struct t_ipt_account_stats_short *s; + } stats; + rwlock_t stats_lock; /* lock, to assure that above union can be safely modified */ + + struct proc_dir_entry *pde; /* handle to proc entry */ +}; + +static LIST_HEAD(ipt_account_tables); +static rwlock_t ipt_account_lock = RW_LOCK_UNLOCKED; /* lock, to assure that table list can be safely modified */ +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,28) +static DEFINE_MUTEX(ipt_account_mutex); /* additional checkentry protection */ +#else +static DECLARE_MUTEX(ipt_account_mutex); /* additional checkentry protection */ +#endif + +static struct file_operations ipt_account_proc_fops; +static struct proc_dir_entry *ipt_account_procdir; + +/* + * Function creates new table and inserts it into linked list. + */ +static struct t_ipt_account_table * +ipt_account_table_init(struct t_ipt_account_info *info) +{ + struct t_ipt_account_table *table; + +#ifdef DEBUG_IPT_ACCOUNT + if (debug) printk(KERN_DEBUG "ipt_account [ipt_account_table_init]: name = %s\n", info->name); +#endif + + /* + * Allocate memory for table. + */ + table = vmalloc(sizeof(struct t_ipt_account_table)); + if (!table) { + printk(KERN_ERR "ipt_account [ipt_account_table_init]: table = vmalloc(sizeof(struct t_ipt_account_table)) failed.\n"); + goto cleanup_none; + } + memset(table, 0, sizeof(struct t_ipt_account_table)); + + /* + * Table attributes. + */ + strncpy(table->name, info->name, IPT_ACCOUNT_NAME_LEN); + table->name[IPT_ACCOUNT_NAME_LEN] = '\0'; + + table->network = info->network; + table->netmask = info->netmask; + table->count = (0xffffffff ^ table->netmask) + 1; + + /* + * Table properties. + */ + table->shortlisting = info->shortlisting; + table->timesrc = 1; + table->timedst = 1; + table->resetonread = 0; + table->show = SHOW_ANY; + + /* + * Initialize use counter. + */ + atomic_set(&table->use, 1); + + /* + * Allocate memory for statistic counters. + */ + if (table->shortlisting) { + table->stats.s = vmalloc(sizeof(struct t_ipt_account_stats_short) * table->count); + if (!table->stats.s) { + printk(KERN_ERR "ipt_account [ipt_account_table_init]: table->stats.s = vmalloc(sizeof(struct t_ipt_account_stats_short) * table->count) failed.\n"); + goto cleanup_table; + } + memset(table->stats.s, 0, sizeof(struct t_ipt_account_stats_short) * table->count); + } else { + table->stats.l = vmalloc(sizeof(struct t_ipt_account_stats_long) * table->count); + if (!table->stats.l) { + printk(KERN_ERR "ipt_account [ipt_account_table_init]: table->stats.l = vmalloc(sizeof(struct t_ipt_account_stats_long) * table->count) failed.\n"); + goto cleanup_table; + } + memset(table->stats.l, 0, sizeof(struct t_ipt_account_stats_long) * table->count); + } + + /* + * Reset locks. + */ + table->stats_lock = RW_LOCK_UNLOCKED; + + /* + * Create /proc/ipt_account/name entry. + */ + table->pde = create_proc_entry(table->name, S_IWUSR | S_IRUSR, ipt_account_procdir); + if (!table->pde) { + goto cleanup_stats; + } + table->pde->proc_fops = &ipt_account_proc_fops; + table->pde->data = table; + + /* + * Insert table into list. + */ + write_lock_bh(&ipt_account_lock); + list_add(&table->list, &ipt_account_tables); + write_unlock_bh(&ipt_account_lock); + + return table; + + /* + * If something goes wrong we end here. + */ +cleanup_stats: + if (table->shortlisting) + vfree(table->stats.s); + else + vfree(table->stats.l); + +cleanup_table: + vfree(table); +cleanup_none: + return NULL; + +} + +/* + * Function destroys table. Table *must* be already unlinked. + */ +static void +ipt_account_table_destroy(struct t_ipt_account_table *table) +{ +#ifdef DEBUG_IPT_ACCOUNT + if (debug) printk(KERN_DEBUG "ipt_account [ipt_account_table_destory]: name = %s\n", table->name); +#endif + remove_proc_entry(table->pde->name, table->pde->parent); + if (table->shortlisting) + vfree(table->stats.s); + else + vfree(table->stats.l); + vfree(table); +} + +/* + * Function increments use counter for table. + */ +static inline void +ipt_account_table_get(struct t_ipt_account_table *table) +{ +#ifdef DEBUG_IPT_ACCOUNT + if (debug) printk(KERN_DEBUG "ipt_account [ipt_account_table_get]: name = %s\n", table->name); +#endif + atomic_inc(&table->use); +} + +/* + * Function decrements use counter for table. If use counter drops to zero, + * table is removed from linked list and destroyed. + */ +static inline void +ipt_account_table_put(struct t_ipt_account_table *table) +{ +#ifdef DEBUG_IPT_ACCOUNT + if (debug) printk(KERN_DEBUG "ipt_account [ipt_account_table_put]: name = %s\n", table->name); +#endif + if (atomic_dec_and_test(&table->use)) { + write_lock_bh(&ipt_account_lock); + list_del(&table->list); + write_unlock_bh(&ipt_account_lock); + ipt_account_table_destroy(table); + } +} + +/* + * Helper function, which returns a structure pointer to a table with + * specified name. + */ +static struct t_ipt_account_table * +__ipt_account_table_find(char *name) +{ + struct list_head *pos; + list_for_each(pos, &ipt_account_tables) { + struct t_ipt_account_table *table = list_entry(pos, + struct t_ipt_account_table, list); + if (!strncmp(table->name, name, IPT_ACCOUNT_NAME_LEN)) + return table; + } + return NULL; +} + +/* + * Function, which returns a structure pointer to a table with + * specified name. When such table is found its use coutner + * is incremented. + */ +static inline struct t_ipt_account_table * +ipt_account_table_find_get(char *name) +{ + struct t_ipt_account_table *table; + +#ifdef DEBUG_IPT_ACCOUNT + if (debug) printk(KERN_DEBUG "ipt_account [ipt_account_table_find_get]: name = %s\n", name); +#endif + read_lock_bh(&ipt_account_lock); + table = __ipt_account_table_find(name); + if (!table) { + read_unlock_bh(&ipt_account_lock); + return NULL; + } + atomic_inc(&table->use); + read_unlock_bh(&ipt_account_lock); + return table; +} + +/* + * Helper function, with updates statistics for specified IP. It's only + * used for tables created without --ashort switch. + */ +static inline void +__account_long(struct t_ipt_account_stat_long *stat, const struct sk_buff *skb) +{ + stat->b_all += skb->len; + stat->p_all++; + +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,22) + switch (ip_hdr(skb)->protocol) { +#else + switch (skb->nh.iph->protocol) { +#endif + case IPPROTO_TCP: + stat->b_tcp += skb->len; + stat->p_tcp++; + break; + case IPPROTO_UDP: + stat->b_udp += skb->len; + stat->p_udp++; + break; + case IPPROTO_ICMP: + stat->b_icmp += skb->len; + stat->p_icmp++; + break; + default: + stat->b_other += skb->len; + stat->p_other++; + } +} + +/* + * Same as above, but used for tables created with --ashort switch. + */ +static inline void +__account_short(struct t_ipt_account_stat_short *stat, const struct sk_buff *skb) +{ + stat->b_all += skb->len; + stat->p_all++; +} + +/* + * Match function. Here we do accounting stuff. + */ +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,23) +static bool +#else +static int +#endif +match(const struct sk_buff *skb, +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,35) + struct xt_action_param *par +#elif LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,29) + const struct xt_match_param *par +#else + const struct net_device *in, + const struct net_device *out, +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,17) + const struct xt_match *match, +#endif + const void *matchinfo, + int offset, + unsigned int protoff, +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,23) + bool *hotdrop +#else + int *hotdrop +#endif +#endif +) +{ +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,29) + struct t_ipt_account_info *info = (struct t_ipt_account_info *)(par->matchinfo); +#else + struct t_ipt_account_info *info = (struct t_ipt_account_info *)matchinfo; +#endif + struct t_ipt_account_table *table = info->table; + u_int32_t address; + /* Get current time. */ + struct timespec now = CURRENT_TIME_SEC; + /* Default we assume no match. */ +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,23) + bool ret = false; +#else + int ret = 0; +#endif + +#ifdef DEBUG_IPT_ACCOUNT + if (debug) printk(KERN_DEBUG "ipt_account [match]: name = %s\n", table->name); +#endif + /* Check whether traffic from source ip address ... */ +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,22) + address = ntohl(ip_hdr(skb)->saddr); +#else + address = ntohl(skb->nh.iph->saddr); +#endif + /* ... is being accounted by this table. */ + if (address && ((u_int32_t)(address & table->netmask) == (u_int32_t)table->network)) { + write_lock_bh(&table->stats_lock); + /* Yes, account this packet. */ +#ifdef DEBUG_IPT_ACCOUNT +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,22) + if (debug) printk(KERN_DEBUG "ipt_account: [match]: accounting packet src = %u.%u.%u.%u, proto = %u.\n", HIPQUAD(address), ip_hdr(skb)->protocol); +#else + if (debug) printk(KERN_DEBUG "ipt_account: [match]: accounting packet src = %u.%u.%u.%u, proto = %u.\n", HIPQUAD(address), skb->nh.iph->protocol); +#endif +#endif + /* Update counters this host. */ + if (!table->shortlisting) { + __account_long(&table->stats.l[address - table->network].src, skb); + if (table->timesrc) + table->stats.l[address - table->network].time = now; + /* Update also counters for all hosts in this table (network address) */ + if (table->count > 1) { + __account_long(&table->stats.l[0].src, skb); + table->stats.l[0].time = now; + } + } else { + __account_short(&table->stats.s[address - table->network].src, skb); + if (table->timedst) + table->stats.s[address - table->network].time = now; + if (table->count > 1) { + __account_short(&table->stats.s[0].src, skb); + table->stats.s[0].time = now; + } + } + write_unlock_bh(&table->stats_lock); + /* Yes, it's a match. */ +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,23) + ret = true; +#else + ret = 1; +#endif + + } + + /* Do the same thing with destination ip address. */ +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,22) + address = ntohl(ip_hdr(skb)->daddr); +#else + address = ntohl(skb->nh.iph->daddr); +#endif + if (address && ((u_int32_t)(address & table->netmask) == (u_int32_t)table->network)) { + write_lock_bh(&table->stats_lock); +#ifdef DEBUG_IPT_ACCOUNT +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,22) + if (debug) printk(KERN_DEBUG "ipt_account: [match]: accounting packet dst = %u.%u.%u.%u, proto = %u.\n", HIPQUAD(address), ip_hdr(skb)->protocol); +#else + if (debug) printk(KERN_DEBUG "ipt_account: [match]: accounting packet dst = %u.%u.%u.%u, proto = %u.\n", HIPQUAD(address), skb->nh.iph->protocol); +#endif +#endif + if (!table->shortlisting) { + __account_long(&table->stats.l[address - table->network].dst, skb); + table->stats.l[address - table->network].time = now; + if (table->count > 1) { + __account_long(&table->stats.l[0].dst, skb); + table->stats.l[0].time = now; + } + } else { + __account_short(&table->stats.s[address - table->network].dst, skb); + table->stats.s[address - table->network].time = now; + if (table->count > 1) { + __account_short(&table->stats.s[0].dst, skb); + table->stats.s[0].time = now; + } + } + write_unlock_bh(&table->stats_lock); +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,23) + ret = true; +#else + ret = 1; +#endif + } + + return ret; +} + +/* + * Checkentry function. + */ +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,35) +static int +#elif LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,23) +static bool +#else +static int +#endif +checkentry( +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,29) + const struct xt_mtchk_param *par +#else + const char *tablename, +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,16) + const void *ip, +#else + const struct ipt_entry *ip, +#endif +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,17) + const struct xt_match *match, +#endif + void *matchinfo, +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,19) + unsigned int matchsize, +#endif + unsigned int hook_mask +#endif +) +{ +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,29) + struct t_ipt_account_info *info = (struct t_ipt_account_info*)(par->matchinfo); +#else + struct t_ipt_account_info *info = matchinfo; +#endif + struct t_ipt_account_table *table; + +#ifdef DEBUG_IPT_ACCOUNT + if (debug) printk(KERN_DEBUG "ipt_account [checkentry]: name = %s\n", info->name); +#endif +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,17) + if (matchsize != IPT_ALIGN(sizeof(struct t_ipt_account_info))) { +#ifdef DEBUG_IPT_ACCOUNT + if (debug) printk(KERN_DEBUG "ipt_account [checkentry]: matchsize %u != %u\n", matchsize, IPT_ALIGN(sizeof(struct t_ipt_account_info))); +#endif +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,35) + return -EINVAL; +#elif LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,23) + return false; +#else + return 0; +#endif + } +#endif + + /* + * Sanity checks. + */ + if (info->netmask < ((~0L << (32 - netmask)) & 0xffffffff)) { + printk(KERN_ERR "ipt_account[checkentry]: too big netmask (increase module 'netmask' parameter).\n"); +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,35) + return -EINVAL; +#elif LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,23) + return false; +#else + return 0; +#endif + } + if ((info->network & info->netmask) != info->network) { + printk(KERN_ERR "ipt_account[checkentry]: wrong network/netmask.\n"); +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,35) + return -EINVAL; +#elif LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,23) + return false; +#else + return 0; +#endif + } + if (info->name[0] == '\0') { + printk(KERN_ERR "ipt_account[checkentry]: wrong table name.\n"); +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,35) + return -EINVAL; +#elif LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,23) + return false; +#else + return 0; +#endif + } + + /* + * We got new rule. Try to find table with the same name as given in info structure. + * Mutex magic based on xt_hashlimit.c. + */ +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,28) + mutex_lock(&ipt_account_mutex); +#else + down(&ipt_account_mutex); +#endif + table = ipt_account_table_find_get(info->name); + if (table) { + if (info->table != NULL) { + if (info->table != table) { + printk(KERN_ERR "ipt_account[checkentry]: reloaded rule has invalid table pointer.\n"); +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,28) + mutex_unlock(&ipt_account_mutex); +#else + up(&ipt_account_mutex); +#endif +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,35) + return -EINVAL; +#elif LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,23) + return false; +#else + return 1; +#endif + } +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,28) + mutex_unlock(&ipt_account_mutex); +#else + up(&ipt_account_mutex); +#endif +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,35) + return 0; +#elif LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,23) + return true; +#else + return 1; +#endif + } else { +#ifdef DEBUG_IPT_ACCOUNT + if (debug) printk(KERN_DEBUG "ipt_account [checkentry]: table found, checking.\n"); +#endif + /* + * Table exists, but whether rule network/netmask/shortlisting matches + * table network/netmask/shortlisting. Failure on missmatch. + */ + if (table->network != info->network || table->netmask != info->netmask || table->shortlisting != info->shortlisting) { + printk(KERN_ERR "ipt_account [checkentry]: table found, rule network/netmask/shortlisting not match table network/netmask/shortlisting.\n"); + /* + * Remember to release table usage counter. + */ + ipt_account_table_put(table); +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,28) + mutex_unlock(&ipt_account_mutex); +#else + up(&ipt_account_mutex); +#endif +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,35) + return -EINVAL; +#elif LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,23) + return false; +#else + return 0; +#endif + } +#ifdef DEBUG_IPT_ACCOUNT + if (debug) printk(KERN_DEBUG "ipt_account [checkentry]: table found, reusing.\n"); +#endif + /* + * Link rule with table. + */ + info->table = table; + } + } else { +#ifdef DEBUG_IPT_ACCOUNT + if (debug) printk(KERN_DEBUG "ipt_account [checkentry]: table not found, creating new one.\n"); +#endif + /* + * Table not exist, create new one. + */ + info->table = table = ipt_account_table_init(info); + if (!table) { +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,28) + mutex_unlock(&ipt_account_mutex); +#else + up(&ipt_account_mutex); +#endif +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,35) + return -EINVAL; +#elif LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,23) + return false; +#else + return 0; +#endif + } + } +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,28) + mutex_unlock(&ipt_account_mutex); +#else + up(&ipt_account_mutex); +#endif +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,23) + return true; +#else + return 1; +#endif +} + +/* + * Destroy function. + */ +static void +destroy( +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,29) + const struct xt_mtdtor_param *par +#else +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,17) + const struct xt_match *match, +#endif +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,19) + void *matchinfo +#else + void *matchinfo, + unsigned int matchsize +#endif +#endif +) +{ +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,29) + struct t_ipt_account_info *info = (struct t_ipt_account_info*)(par->matchinfo); +#else + struct t_ipt_account_info *info = matchinfo; +#endif + +#ifdef DEBUG_IPT_ACCOUNT + if (debug) printk(KERN_DEBUG "ipt_account [destroy]: name = %s\n", info->name); +#endif +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,17) + if (matchsize != IPT_ALIGN(sizeof(struct t_ipt_account_info))) { +#ifdef DEBUG_IPT_ACCOUNT + if (debug) printk(KERN_DEBUG "ipt_account [checkentry]: matchsize %u != %u\n", matchsize, IPT_ALIGN(sizeof(struct t_ipt_account_info))); +#endif + return; + } +#endif + + /* + * Release table, by decreasing its usage counter. When + * counter hits zero, memory used by table structure is + * released and table is removed from list. + */ + ipt_account_table_put(info->table); + return; +} + +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,21) +static struct xt_match account_match = { +#else +static struct ipt_match account_match = { +#endif + .name = "account", +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,28) + .family = NFPROTO_IPV4, +#elif LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,21) + .family = AF_INET, +#endif + .match = &match, + .checkentry = &checkentry, +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,17) + .matchsize = sizeof(struct t_ipt_account_info), +#endif + .destroy = &destroy, + .me = THIS_MODULE +}; + +/* + * Below functions (ipt_account_seq_start, ipt_account_seq_next, + * ipt_account_seq_stop, ipt_account_seq_show, ipt_account_proc_write) + * are used to implement proc stuff. + */ +static void *ipt_account_seq_start(struct seq_file *sf, loff_t *pos) +{ + struct proc_dir_entry *pde = sf->private; + struct t_ipt_account_table *table = pde->data; + unsigned int *i; + + if (table->resetonread) { + /* When we reset entries after read we must have exclusive lock. */ + write_lock_bh(&table->stats_lock); + } else { + read_lock_bh(&table->stats_lock); + } + if (*pos >= table->count) + return NULL; + i = kmalloc(sizeof(unsigned int), GFP_ATOMIC); + if (!i) + return ERR_PTR(-ENOMEM); + *i = *pos; + return i; +} + +static void *ipt_account_seq_next(struct seq_file *sf, void *v, loff_t *pos) +{ + struct proc_dir_entry *pde = sf->private; + struct t_ipt_account_table *table = pde->data; + unsigned int *i = (unsigned int *)v; + + *pos = ++(*i); + if (*i >= table->count) { + kfree(v); + return NULL; + } + return i; +} + +static void ipt_account_seq_stop(struct seq_file *sf, void *v) +{ + struct proc_dir_entry *pde = sf->private; + struct t_ipt_account_table *table = pde->data; + kfree(v); + if (table->resetonread) { + write_unlock_bh(&table->stats_lock); + } else { + read_unlock_bh(&table->stats_lock); + } +} + +static int ipt_account_seq_show(struct seq_file *sf, void *v) +{ + struct proc_dir_entry *pde = sf->private; + struct t_ipt_account_table *table = pde->data; + unsigned int *i = (unsigned int *)v; + + struct timespec now = CURRENT_TIME_SEC; + + u_int32_t address = table->network + *i; + + if (!table->shortlisting) { + struct t_ipt_account_stats_long *l = &table->stats.l[*i]; + /* Don't list rows not matching show requirements. */ + if ( + ((table->show == SHOW_SRC) && (l->src.p_all == 0)) || + ((table->show == SHOW_DST) && (l->dst.p_all == 0)) || + ((table->show == SHOW_SRC_OR_DST) && ((l->src.p_all == 0) && (l->dst.p_all == 0))) || + ((table->show == SHOW_SRC_AND_DST) && ((l->src.p_all == 0) || (l->dst.p_all == 0))) + ) { + return 0; + } + seq_printf(sf, + "ip = %u.%u.%u.%u bytes_src = %llu %llu %llu %llu %llu packets_src = %llu %llu %llu %llu %llu bytes_dst = %llu %llu %llu %llu %llu packets_dst = %llu %llu %llu %llu %llu time = %lu\n", + HIPQUAD(address), + l->src.b_all, + l->src.b_tcp, + l->src.b_udp, + l->src.b_icmp, + l->src.b_other, + l->src.p_all, + l->src.p_tcp, + l->src.p_udp, + l->src.p_icmp, + l->src.p_other, + l->dst.b_all, + l->dst.b_tcp, + l->dst.b_udp, + l->dst.b_icmp, + l->dst.b_other, + l->dst.p_all, + l->dst.p_tcp, + l->dst.p_udp, + l->dst.p_icmp, + l->dst.p_other, + now.tv_sec - l->time.tv_sec + ); + if (table->resetonread) + memset(l, 0, sizeof(struct t_ipt_account_stats_long)); + + } else { + struct t_ipt_account_stats_short *s = &table->stats.s[*i]; + if ( + ((table->show == SHOW_SRC) && (s->src.p_all == 0)) || + ((table->show == SHOW_DST) && (s->dst.p_all == 0)) || + ((table->show == SHOW_SRC_OR_DST) && ((s->src.p_all == 0) && (s->dst.p_all == 0))) || + ((table->show == SHOW_SRC_AND_DST) && ((s->src.p_all == 0) || (s->dst.p_all == 0))) + ) { + return 0; + } + seq_printf(sf, + "ip = %u.%u.%u.%u bytes_src = %llu packets_src = %llu bytes_dst = %llu packets_dst = %llu time = %lu\n", + HIPQUAD(address), + s->src.b_all, + s->src.p_all, + s->dst.b_all, + s->dst.p_all, + now.tv_sec - s->time.tv_sec + ); + if (table->resetonread) + memset(s, 0, sizeof(struct t_ipt_account_stats_short)); + } + + return 0; +} + +static struct seq_operations ipt_account_seq_ops = { + .start = ipt_account_seq_start, + .next = ipt_account_seq_next, + .stop = ipt_account_seq_stop, + .show = ipt_account_seq_show +}; + +static ssize_t ipt_account_proc_write(struct file *file, const char __user *input, size_t size, loff_t *ofs) +{ + char buffer[1024]; + struct proc_dir_entry *pde = PDE(file->f_dentry->d_inode); + struct t_ipt_account_table *table = pde->data; + + u_int32_t o[4], ip; + struct t_ipt_account_stats_long l; + struct t_ipt_account_stats_short s; + +#ifdef DEBUG_IPT_ACCOUNT + if (debug) printk(KERN_DEBUG "ipt_account [ipt_account_proc_write]: name = %s.\n", table->name); +#endif + if (copy_from_user(buffer, input, 1024)) + return -EFAULT; + buffer[1023] = '\0'; + + if (!strncmp(buffer, "reset\n", 6)) { + /* + * User requested to clear all table. Ignorant, does + * he known how match time it took us to fill it? ;-) + */ + write_lock_bh(&table->stats_lock); + if (table->shortlisting) + memset(table->stats.s, 0, sizeof(struct t_ipt_account_stats_short) * table->count); + else + memset(table->stats.l, 0, sizeof(struct t_ipt_account_stats_long) * table->count); + write_unlock_bh(&table->stats_lock); + } else if (!strncmp(buffer, "reset-on-read=yes\n", 18)) { + /* + * We must be sure that ipt_account_seq_* is not running now. This option + * changes lock type which is taken in ipt_account_seq_{start|stop}. When + * we change this option without this lock, and ipt_account_seq_start is + * already run (but not ipt_account_seq_stop) there is possibility that + * we execute wrong "unlock" function. + */ + write_lock_bh(&table->stats_lock); + table->resetonread = 1; + write_unlock_bh(&table->stats_lock); + } else if (!strncmp(buffer, "reset-on-read=no\n", 17)) { + write_lock_bh(&table->stats_lock); + table->resetonread = 0; + write_unlock_bh(&table->stats_lock); + } else if (!strncmp(buffer, "reset-on-read\n", 14)) { + write_lock_bh(&table->stats_lock); + table->resetonread = 1; + write_unlock_bh(&table->stats_lock); + } else if (!strncmp(buffer, "show=any\n", 9)) { + /* + * Here we should lock but we don't have to. So we don't lock. We only get + * wrong results on already run ipt_account_seq_show, but we won't crush + * the system. + */ + table->show = SHOW_ANY; + } else if (!strncmp(buffer, "show=src\n", 9)) { + table->show = SHOW_SRC; + } else if (!strncmp(buffer, "show=dst\n", 9)) { + table->show = SHOW_DST; + } else if (!strncmp(buffer, "show=src-or-dst\n", 16) || !strncmp(buffer, "show=dst-or-src\n", 16)) { + table->show = SHOW_SRC_OR_DST; + } else if (!strncmp(buffer, "show=src-and-dst\n", 17) || !strncmp(buffer, "show=dst-and-src\n", 17)) { + table->show = SHOW_SRC_AND_DST; + } else if (!strncmp(buffer, "time=any\n", 9)) { + table->timesrc = table->timedst = 1; + } else if (!strncmp(buffer, "time=src\n", 9)) { + table->timesrc = 1; + table->timedst = 0; + } else if (!strncmp(buffer, "time=dst\n", 9)) { + table->timesrc = 0; + table->timedst = 1; + } else if (!table->shortlisting && sscanf(buffer, "ip = %u.%u.%u.%u bytes_src = %llu %llu %llu %llu %llu packets_src = %llu %llu %llu %llu %llu bytes_dst = %llu %llu %llu %llu %llu packets_dst = %llu %llu %llu %llu %llu time = %lu", + &o[0], &o[1], &o[2], &o[3], + &l.src.b_all, &l.src.b_tcp, &l.src.b_udp, &l.src.b_icmp, &l.src.b_other, + &l.src.p_all, &l.src.p_tcp, &l.src.p_udp, &l.src.p_icmp, &l.src.p_other, + &l.dst.b_all, &l.dst.b_tcp, &l.dst.b_udp, &l.dst.b_icmp, &l.dst.b_other, + &l.dst.p_all, &l.dst.p_tcp, &l.dst.p_udp, &l.dst.p_icmp, &l.dst.p_other, + &l.time.tv_sec) == 25 ) { + /* + * We got line formated like long listing row. We have to + * check, if IP is accounted by table. If so, we + * simply replace row with user's one. + */ + ip = o[0] << 24 | o[1] << 16 | o[2] << 8 | o[3]; + if ((u_int32_t)(ip & table->netmask) == (u_int32_t)table->network) { + /* + * Ignore user input time. Set current time. + */ + l.time = CURRENT_TIME_SEC; + write_lock_bh(&table->stats_lock); + table->stats.l[ip - table->network] = l; + write_unlock_bh(&table->stats_lock); + } + } else if (table->shortlisting && sscanf(buffer, "ip = %u.%u.%u.%u bytes_src = %llu packets_src = %llu bytes_dst = %llu packets_dst = %llu time = %lu\n", + &o[0], &o[1], &o[2], &o[3], + &s.src.b_all, + &s.src.p_all, + &s.dst.b_all, + &s.dst.p_all, + &s.time.tv_sec) == 9) { + /* + * We got line formated like short listing row. Do the + * same action like above. + */ + ip = o[0] << 24 | o[1] << 16 | o[2] << 8 | o[3]; + if ((u_int32_t)(ip & table->netmask) == (u_int32_t)table->network) { + s.time = CURRENT_TIME_SEC; + write_lock_bh(&table->stats_lock); + table->stats.s[ip - table->network] = s; + write_unlock_bh(&table->stats_lock); + } + } else { + /* + * We don't understand what user have just wrote. + */ + return -EIO; + } + + return size; +} + +static int ipt_account_proc_open(struct inode *inode, struct file *file) +{ + int ret = seq_open(file, &ipt_account_seq_ops); + if (!ret) { + struct seq_file *sf = file->private_data; + struct proc_dir_entry *pde = PDE(inode); + struct t_ipt_account_table *table = pde->data; + + sf->private = pde; + + ipt_account_table_get(table); + } + return ret; +} + +static int ipt_account_proc_release(struct inode *inode, struct file *file) +{ + struct proc_dir_entry *pde = PDE(inode); + struct t_ipt_account_table *table = pde->data; + int ret; + + ret = seq_release(inode, file); + + if (!ret) + ipt_account_table_put(table); + + return ret; +} + +static struct file_operations ipt_account_proc_fops = { + .owner = THIS_MODULE, + .open = ipt_account_proc_open, + .read = seq_read, + .write = ipt_account_proc_write, + .llseek = seq_lseek, + .release = ipt_account_proc_release +}; + +/* + * Module init function. + */ +static int __init init(void) +{ + int ret = 0; + + printk(KERN_INFO "ipt_account %s : Piotr Gasidlo , http://www.barbara.eu.org/~quaker/ipt_account/\n", IPT_ACCOUNT_VERSION); + + /* Check module parameters. */ + if (netmask > 32 || netmask < 0) { + printk(KERN_ERR "ipt_account[__init]: Wrong netmask given as parameter (%i). Valid is 32 to 0.\n", netmask); + ret = -EINVAL; + goto cleanup_none; + } + + /* Register match. */ +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,21) + if (xt_register_match(&account_match)) { +#else + if (ipt_register_match(&account_match)) { +#endif + ret = -EINVAL; + goto cleanup_none; + } + + /* Create /proc/net/ipt_account/ entry. */ +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,24) + ipt_account_procdir = proc_mkdir("ipt_account", init_net.proc_net); +#else + ipt_account_procdir = proc_mkdir("ipt_account", proc_net); +#endif + if (!ipt_account_procdir) { +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,24) + printk(KERN_ERR "ipt_account [__init]: ipt_account_procdir = proc_mkdir(\"ipt_account\", init_proc.proc_net) failed.\n"); +#else + printk(KERN_ERR "ipt_account [__init]: ipt_account_procdir = proc_mkdir(\"ipt_account\", proc_net) failed.\n"); +#endif + ret = -ENOMEM; + goto cleanup_match; + } + + return ret; + + /* If something goes wrong we end here. */ +cleanup_match: +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,21) + xt_unregister_match(&account_match); +#else + ipt_unregister_match(&account_match); +#endif +cleanup_none: + return ret; +} + +/* + * Module exit function. + */ +static void __exit fini(void) +{ + /* Remove /proc/net/ipt_account/ */ + remove_proc_entry(ipt_account_procdir->name, ipt_account_procdir->parent); +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,21) + xt_unregister_match(&account_match); +#else + ipt_unregister_match(&account_match); +#endif +} + +module_init(init); +module_exit(fini); + diff --git a/release/src-rt/linux/linux-2.6/net/ipv4/netfilter/ipt_ipp2p.c b/release/src-rt/linux/linux-2.6/net/ipv4/netfilter/ipt_ipp2p.c index 9fb6e94fec..bc7edcdcb6 100644 --- a/release/src-rt/linux/linux-2.6/net/ipv4/netfilter/ipt_ipp2p.c +++ b/release/src-rt/linux/linux-2.6/net/ipv4/netfilter/ipt_ipp2p.c @@ -3,7 +3,17 @@ #endif #include #include -#include +#include +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,21) +# include +# define ipt_register_match xt_register_match +# define ipt_unregister_match xt_unregister_match +# define ipt_match xt_match +#else +# include +//#include +#endif /* LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,21) */ + #include #include #include @@ -11,96 +21,127 @@ #define get_u8(X,O) (*(__u8 *)(X + O)) #define get_u16(X,O) (*(__u16 *)(X + O)) #define get_u32(X,O) (*(__u32 *)(X + O)) +#define TOTAL_PACKETS conntrack->counters[IP_CT_DIR_ORIGINAL].packets + \ + conntrack->counters[IP_CT_DIR_REPLY].packets -MODULE_AUTHOR("Eicke Friedrich/Klaus Degner "); -MODULE_DESCRIPTION("An extension to iptables to identify P2P traffic."); +MODULE_AUTHOR("Lei Liu "); +MODULE_DESCRIPTION("An extension to iptables to identify P2P traffic. Base on ipp2p.org"); MODULE_LICENSE("GPL"); +static int match_packets = 15; +module_param(match_packets, int, 0); +MODULE_PARM_DESC(match_packets, "Numbers of packets for per conntrack to match"); /*Search for UDP eDonkey/eMule/Kad commands*/ int -udp_search_edk (unsigned char *haystack, int packet_len) +udp_search_edk (unsigned char *t, int packet_len) { - unsigned char *t = haystack; - t += 8; - - switch (t[0]) { - case 0xe3: + /* Vagaa */ + if(packet_len == 4 && get_u32(t,0) == __constant_htonl(0xff0a0000)) return (IPP2P_EDK * 100 + 42); + if(packet_len == 8 && get_u16(t,0) == __constant_htons(0xff0a) && get_u16(t,4) == __constant_htons(0x0c02)) return (IPP2P_EDK * 100 + 47); + if(memcmp(t+12,"POST / HTTP/1.1",15) == 0 && memcmp(t+29,"Host: vagaa.com",15) == 0 && memcmp(t+46,"VAGAA-OPERATION:",16) == 0) return (IPP2P_EDK * 100 + 48); + switch (*t) { + case 0xf1: + { if ( get_u16(t,3) == __constant_htons(0x0000) ) + { + /* Search Result */ + if(packet_len == 22 && *(t+1) == 0x11) return (IPP2P_EDK * 100 + 40); + if(packet_len == 32 && *(t+1) == 0x00) return (IPP2P_EDK * 100 + 41); + /* Identify Reply */ + if(packet_len == 26 && *(t+1) == 0x15) return (IPP2P_EDK * 100 + 43); + /* Identify Ack */ + if(packet_len == 27 && *(t+1) == 0x16) return (IPP2P_EDK * 100 + 44); + if(packet_len == 6 && *(t+1) == 0x01) return (IPP2P_EDK * 100 + 45); + if(packet_len == 144 && *(t+1) == 0x8b) return (IPP2P_EDK * 100 + 46); + } + break; + } + case 0xe3: { /*edonkey*/ - switch (t[1]) + switch (*(t+1)) { /* client -> server status request */ - case 0x96: - if (packet_len == 14) return ((IPP2P_EDK * 100) + 50); + case 0x96: + if (packet_len > 5) return ((IPP2P_EDK * 100) + 50); break; /* server -> client status request */ - case 0x97: if (packet_len == 42) return ((IPP2P_EDK * 100) + 51); + case 0x97: if (packet_len > 33) return ((IPP2P_EDK * 100) + 51); break; /* server description request */ /* e3 2a ff f0 .. | size == 6 */ - case 0xa2: if ( (packet_len == 14) && ( get_u16(t,2) == __constant_htons(0xfff0) ) ) return ((IPP2P_EDK * 100) + 52); + case 0xa2: if ( (packet_len > 5) && ( get_u16(t,2) == __constant_htons(0xfff0) ) ) return ((IPP2P_EDK * 100) + 52); break; /* server description response */ /* e3 a3 ff f0 .. | size > 40 && size < 200 */ //case 0xa3: return ((IPP2P_EDK * 100) + 53); // break; - case 0x9a: if (packet_len==26) return ((IPP2P_EDK * 100) + 54); + case 0x9a: if (packet_len > 17) return ((IPP2P_EDK * 100) + 54); break; - - case 0x92: if (packet_len==18) return ((IPP2P_EDK * 100) + 55); + case 0x9b: if (packet_len > 24) return ((IPP2P_EDK * 100) + 56); + break; + case 0x92: if (packet_len > 9) return ((IPP2P_EDK * 100) + 55); break; } break; } - case 0xe4: + case 0xe4: { - switch (t[1]) + switch (*(t+1)) { - /* e4 20 .. | size == 43 */ - case 0x20: if ((packet_len == 43) && (t[2] != 0x00) && (t[34] != 0x00)) return ((IPP2P_EDK * 100) + 60); + case 0x01: if (packet_len == 2) return ((IPP2P_EDK * 100) + 70); + break; + /* e4 19 .. Firewall Connection ACK */ + case 0x19: if (packet_len > 21 ) return ((IPP2P_EDK * 100) + 71); + break; + /* e4 20 .. | size == 43 */ + case 0x20: if ((packet_len > 33) && (*(t+2) != 0x00) && (*(t+33) != 0x00)) return ((IPP2P_EDK * 100) + 60); + break; + case 0x21: if ((packet_len > 33) && (*(t+2) != 0x00) && (*(t+33) != 0x00)) return ((IPP2P_EDK * 100) + 60); break; - /* e4 00 .. 00 | size == 35 ? */ - case 0x00: if ((packet_len == 35) && (t[26] == 0x00)) return ((IPP2P_EDK * 100) + 61); + /* e4 00 .. 00 | size == 35 ? */ + case 0x00: if ((packet_len > 26) && (*(t+26) == 0x00)) return ((IPP2P_EDK * 100) + 61); break; - /* e4 10 .. 00 | size == 35 ? */ - case 0x10: if ((packet_len == 35) && (t[26] == 0x00)) return ((IPP2P_EDK * 100) + 62); + /* e4 10 .. 00 | size == 35 ? Search Info */ + case 0x10: if ((packet_len > 26) && (*(t+26) == 0x00)) return ((IPP2P_EDK * 100) + 62); break; - /* e4 18 .. 00 | size == 35 ? */ - case 0x18: if ((packet_len == 35) && (t[26] == 0x00)) return ((IPP2P_EDK * 100) + 63); + /* e4 11 .. Search Result */ + case 0x11: if ((packet_len > 26) && (*(t+26) == 0x00)) return ((IPP2P_EDK * 100) + 62); break; - /* e4 52 .. | size = 44 */ - case 0x52: if (packet_len == 44 ) return ((IPP2P_EDK * 100) + 64); + /* e4 18 .. 00 | size == 35 ? */ + case 0x18: if ((packet_len > 26) && (*(t+26) == 0x00)) return ((IPP2P_EDK * 100) + 63); break; - /* e4 58 .. | size == 6 */ - case 0x58: if (packet_len == 14 ) return ((IPP2P_EDK * 100) + 65); + /* e4 52 .. | size = 44 */ + case 0x52: if (packet_len > 35 ) return ((IPP2P_EDK * 100) + 64); break; - /* e4 59 .. | size == 2 */ - case 0x59: if (packet_len == 10 )return ((IPP2P_EDK * 100) + 66); + /* e4 58 .. | size == 6 */ + case 0x58: if (packet_len > 5 ) return ((IPP2P_EDK * 100) + 65); + break; + /* e4 59 .. | size == 2 */ + case 0x59: if (packet_len > 1 )return ((IPP2P_EDK * 100) + 66); break; /* e4 28 .. | packet_len == 52,77,102,127... */ - case 0x28: if (((packet_len-52) % 25) == 0) return ((IPP2P_EDK * 100) + 67); + case 0x28: if (((packet_len-44) % 25) == 0) return ((IPP2P_EDK * 100) + 67); + break; + case 0x29: if (((packet_len-44) % 25) == 0) return ((IPP2P_EDK * 100) + 67); break; /* e4 50 xx xx | size == 4 */ - case 0x50: if (packet_len == 12) return ((IPP2P_EDK * 100) + 68); + case 0x50: if (packet_len > 3) return ((IPP2P_EDK * 100) + 68); break; /* e4 40 xx xx | size == 48 */ - case 0x40: if (packet_len == 56) return ((IPP2P_EDK * 100) + 69); + case 0x40: if (packet_len > 47) return ((IPP2P_EDK * 100) + 69); break; } break; } - } /* end of switch (t[0]) */ + } /* end of switch (*t) */ return 0; }/*udp_search_edk*/ /*Search for UDP Gnutella commands*/ int -udp_search_gnu (unsigned char *haystack, int packet_len) +udp_search_gnu (unsigned char *t, int packet_len) { - unsigned char *t = haystack; - t += 8; - if (memcmp(t, "GND", 3) == 0) return ((IPP2P_GNU * 100) + 51); if (memcmp(t, "GNUTELLA ", 9) == 0) return ((IPP2P_GNU * 100) + 52); return 0; @@ -109,27 +150,22 @@ udp_search_gnu (unsigned char *haystack, int packet_len) /*Search for UDP KaZaA commands*/ int -udp_search_kazaa (unsigned char *haystack, int packet_len) +udp_search_kazaa (unsigned char *t, int packet_len) { - unsigned char *t = haystack; - - if (t[packet_len-1] == 0x00){ - t += (packet_len - 6); - if (memcmp(t, "KaZaA", 5) == 0) return (IPP2P_KAZAA * 100 +50); + if (*(t+packet_len-1) == 0x00){ + if (memcmp((t+packet_len-6), "KaZaA", 5) == 0) return (IPP2P_KAZAA * 100 +50); } - + return 0; }/*udp_search_kazaa*/ /*Search for UDP DirectConnect commands*/ int -udp_search_directconnect (unsigned char *haystack, int packet_len) +udp_search_directconnect (unsigned char *t, int packet_len) { - unsigned char *t = haystack; - if ((*(t + 8) == 0x24) && (*(t + packet_len - 1) == 0x7c)) { - t+=8; - if (memcmp(t, "SR ", 3) == 0) return ((IPP2P_DC * 100) + 60); - if (memcmp(t, "Ping ", 5) == 0) return ((IPP2P_DC * 100) + 61); + if ((*t == 0x24) && (*(t+packet_len-1) == 0x7c)) { + if (memcmp(t, "SR ", 3) == 0) return ((IPP2P_DC * 100) + 60); + if (memcmp(t, "Ping ", 5) == 0) return ((IPP2P_DC * 100) + 61); } return 0; }/*udp_search_directconnect*/ @@ -138,84 +174,84 @@ udp_search_directconnect (unsigned char *haystack, int packet_len) /*Search for UDP BitTorrent commands*/ int -udp_search_bit (unsigned char *haystack, int packet_len) +udp_search_bit (unsigned char *t, int packet_len) { switch(packet_len) { - case 24: + case 16: /* ^ 00 00 04 17 27 10 19 80 */ - if ((ntohl(get_u32(haystack, 8)) == 0x00000417) && (ntohl(get_u32(haystack, 12)) == 0x27101980)) + if ((ntohl(get_u32(t, 0)) == 0x00000417) && (ntohl(get_u32(t, 4)) == 0x27101980)) return (IPP2P_BIT * 100 + 50); break; - case 44: - if (get_u32(haystack, 16) == __constant_htonl(0x00000400) && get_u32(haystack, 36) == __constant_htonl(0x00000104)) + case 36: + if (get_u32(t, 8) == __constant_htonl(0x00000400) && get_u32(t, 28) == __constant_htonl(0x00000104)) return (IPP2P_BIT * 100 + 51); - if (get_u32(haystack, 16) == __constant_htonl(0x00000400)) + if (get_u32(t, 8) == __constant_htonl(0x00000400)) return (IPP2P_BIT * 100 + 61); break; - case 65: - if (get_u32(haystack, 16) == __constant_htonl(0x00000404) && get_u32(haystack, 36) == __constant_htonl(0x00000104)) + case 57: + if (get_u32(t, 8) == __constant_htonl(0x00000404) && get_u32(t, 28) == __constant_htonl(0x00000104)) return (IPP2P_BIT * 100 + 52); - if (get_u32(haystack, 16) == __constant_htonl(0x00000404)) + if (get_u32(t, 8) == __constant_htonl(0x00000404)) return (IPP2P_BIT * 100 + 62); break; - case 67: - if (get_u32(haystack, 16) == __constant_htonl(0x00000406) && get_u32(haystack, 36) == __constant_htonl(0x00000104)) + case 59: + if (get_u32(t, 8) == __constant_htonl(0x00000406) && get_u32(t, 28) == __constant_htonl(0x00000104)) return (IPP2P_BIT * 100 + 53); - if (get_u32(haystack, 16) == __constant_htonl(0x00000406)) + if (get_u32(t, 8) == __constant_htonl(0x00000406)) return (IPP2P_BIT * 100 + 63); break; - case 211: - if (get_u32(haystack, 8) == __constant_htonl(0x00000405)) + case 203: + if (get_u32(t, 0) == __constant_htonl(0x00000405)) return (IPP2P_BIT * 100 + 54); break; - case 29: - if ((get_u32(haystack, 8) == __constant_htonl(0x00000401))) + case 21: + if ((get_u32(t, 0) == __constant_htonl(0x00000401))) return (IPP2P_BIT * 100 + 55); break; - case 52: - if (get_u32(haystack,8) == __constant_htonl(0x00000827) && - get_u32(haystack,12) == __constant_htonl(0x37502950)) + case 44: + if (get_u32(t,0) == __constant_htonl(0x00000827) && + get_u32(t,4) == __constant_htonl(0x37502950)) return (IPP2P_BIT * 100 + 80); break; default: /* this packet does not have a constant size */ - if (packet_len >= 40 && get_u32(haystack, 16) == __constant_htonl(0x00000402) && get_u32(haystack, 36) == __constant_htonl(0x00000104)) + if (packet_len >= 32 && get_u32(t, 8) == __constant_htonl(0x00000402) && get_u32(t, 28) == __constant_htonl(0x00000104)) return (IPP2P_BIT * 100 + 56); break; } - + /* some extra-bitcomet rules: * "d1:" [a|r] "d2:id20:" */ - if (packet_len > 30 && get_u8(haystack, 8) == 'd' && get_u8(haystack, 9) == '1' && get_u8(haystack, 10) == ':' ) + if (packet_len > 22 && get_u8(t, 0) == 'd' && get_u8(t, 1) == '1' && get_u8(t, 2) == ':' ) { - if (get_u8(haystack, 11) == 'a' || get_u8(haystack, 11) == 'r') + if (get_u8(t, 3) == 'a' || get_u8(t, 3) == 'r') { - if (memcmp(haystack+12,"d2:id20:",8)==0) + if (memcmp(t+4,"d2:id20:",8)==0) return (IPP2P_BIT * 100 + 57); } } - + #if 0 /* bitlord rules */ /* packetlen must be bigger than 40 */ /* first 4 bytes are zero */ - if (packet_len > 40 && get_u32(haystack, 8) == 0x00000000) + if (packet_len > 40 && get_u32(t, 8) == 0x00000000) { /* first rule: 00 00 00 00 01 00 00 xx xx xx xx 00 00 00 00*/ - if (get_u32(haystack, 12) == 0x00000000 && - get_u32(haystack, 16) == 0x00010000 && - get_u32(haystack, 24) == 0x00000000 ) + if (get_u32(t, 12) == 0x00000000 && + get_u32(t, 16) == 0x00010000 && + get_u32(t, 24) == 0x00000000 ) return (IPP2P_BIT * 100 + 71); - + /* 00 01 00 00 0d 00 00 xx xx xx xx 00 00 00 00*/ - if (get_u32(haystack, 12) == 0x00000001 && - get_u32(haystack, 16) == 0x000d0000 && - get_u32(haystack, 24) == 0x00000000 ) + if (get_u32(t, 12) == 0x00000001 && + get_u32(t, 16) == 0x000d0000 && + get_u32(t, 24) == 0x00000000 ) return (IPP2P_BIT * 100 + 71); - - + + } #endif @@ -231,15 +267,15 @@ search_ares (const unsigned char *payload, const u16 plen) //int search_ares (unsigned char *haystack, int packet_len, int head_len) { // const unsigned char *t = haystack + head_len; - + /* all ares packets start with */ - if (payload[1] == 0 && (plen - payload[0]) == 3) + if (*(payload+1) == 0 && (plen - *payload) == 3) { - switch (payload[2]) + switch (*(payload+2)) { case 0x5a: /* ares connect */ - if ( plen == 6 && payload[5] == 0x05 ) return ((IPP2P_ARES * 100) + 1); + if ( plen == 6 && *(payload+5) == 0x05 ) return ((IPP2P_ARES * 100) + 1); break; case 0x09: /* ares search, min 3 chars --> 14 bytes @@ -249,12 +285,12 @@ search_ares (const unsigned char *payload, const u16 plen) break; #ifdef IPP2P_DEBUG_ARES default: - printk(KERN_DEBUG "Unknown Ares command %x recognized, len: %u \n", (unsigned int) payload[2],plen); + printk(KERN_DEBUG "Unknown Ares command %x recognized, len: %u \n", (unsigned int) *(payload+2),plen); #endif /* IPP2P_DEBUG_ARES */ } } -#if 0 +#if 0 /* found connect packet: 03 00 5a 04 03 05 */ /* new version ares 1.8: 03 00 5a xx xx 05 */ if ((plen) == 6){ /* possible connect command*/ @@ -279,7 +315,7 @@ search_soul (const unsigned char *payload, const u16 plen) //#define IPP2P_DEBUG_SOUL /* match: xx xx xx xx | xx = sizeof(payload) - 4 */ if (get_u32(payload, 0) == (plen - 4)){ - const __u32 m=get_u32(payload, 4); + const __u32 m = get_u32(payload, 4); /* match 00 yy yy 00, yy can be everything */ if ( get_u8(payload, 4) == 0x00 && get_u8(payload, 7) == 0x00 ) { @@ -288,7 +324,7 @@ search_soul (const unsigned char *payload, const u16 plen) #endif /* IPP2P_DEBUG_SOUL */ return ((IPP2P_SOUL * 100) + 1); } - + /* next match: 01 yy 00 00 | yy can be everything */ if ( get_u8(payload, 4) == 0x01 && get_u16(payload, 6) == 0x0000 ) { @@ -297,7 +333,7 @@ search_soul (const unsigned char *payload, const u16 plen) #endif /* IPP2P_DEBUG_SOUL */ return ((IPP2P_SOUL * 100) + 2); } - + /* other soulseek commandos are: 1-5,7,9,13-18,22,23,26,28,35-37,40-46,50,51,60,62-69,91,92,1001 */ /* try to do this in an intelligent way */ /* get all small commandos */ @@ -320,8 +356,8 @@ search_soul (const unsigned char *payload, const u16 plen) #endif /* IPP2P_DEBUG_SOUL */ return ((IPP2P_SOUL * 100) + 3); } - - if (m > 0 && m < 6 ) + + if (m > 0 && m < 6 ) { #ifdef IPP2P_DEBUG_SOUL printk(KERN_DEBUG "3: Soulseek command 0x%x recognized\n",get_u16(payload, 4)); @@ -352,7 +388,7 @@ search_soul (const unsigned char *payload, const u16 plen) return ((IPP2P_SOUL * 100) + 7); } - if (m > 61 && m < 70 ) + if (m > 61 && m < 70 ) { #ifdef IPP2P_DEBUG_SOUL printk(KERN_DEBUG "7: Soulseek command 0x%x recognized\n",get_u16(payload, 4)); @@ -364,12 +400,12 @@ search_soul (const unsigned char *payload, const u16 plen) printk(KERN_DEBUG "unknown SOULSEEK command: 0x%x, first 16 bit: 0x%x, first 8 bit: 0x%x ,soulseek ???\n",get_u32(payload, 4),get_u16(payload, 4) >> 16,get_u8(payload, 4) >> 24); #endif /* IPP2P_DEBUG_SOUL */ } - + /* match 14 00 00 00 01 yy 00 00 00 STRING(YY) 01 00 00 00 00 46|50 00 00 00 00 */ /* without size at the beginning !!! */ if ( get_u32(payload, 0) == 0x14 && get_u8(payload, 4) == 0x01 ) { - __u32 y=get_u32(payload, 5); + __u32 y = get_u32(payload, 5); /* we need 19 chars + string */ if ( (y + 19) <= (plen) ) { @@ -390,28 +426,28 @@ int search_winmx (const unsigned char *payload, const u16 plen) { //#define IPP2P_DEBUG_WINMX - if (((plen) == 4) && (memcmp(payload, "SEND", 4) == 0)) return ((IPP2P_WINMX * 100) + 1); - if (((plen) == 3) && (memcmp(payload, "GET", 3) == 0)) return ((IPP2P_WINMX * 100) + 2); + if ((plen == 4) && (memcmp(payload, "SEND", 4) == 0)) return ((IPP2P_WINMX * 100) + 1); + if ((plen == 3) && (memcmp(payload, "GET", 3) == 0)) return ((IPP2P_WINMX * 100) + 2); //if (packet_len < (head_len + 10)) return 0; if (plen < 10) return 0; - + if ((memcmp(payload, "SEND", 4) == 0) || (memcmp(payload, "GET", 3) == 0)){ - u16 c=4; - const u16 end=plen-2; - u8 count=0; + u16 c = 4; + const u16 end = plen-2; + u8 count = 0; while (c < end) { - if (payload[c]== 0x20 && payload[c+1] == 0x22) + if (*(payload+c)== 0x20 && *(payload+c+1) == 0x22) { c++; count++; - if (count>=2) return ((IPP2P_WINMX * 100) + 3); + if (count >= 2) return ((IPP2P_WINMX * 100) + 3); } c++; } } - - if ( plen == 149 && payload[0] == '8' ) + + if ( plen == 149 && *payload == '8' ) { #ifdef IPP2P_DEBUG_WINMX printk(KERN_INFO "maybe WinMX\n"); @@ -420,7 +456,7 @@ search_winmx (const unsigned char *payload, const u16 plen) // get_u32(payload,33) == __constant_htonl(0x71182b1a) && get_u32(payload,37) == __constant_htonl(0x05050000) && // get_u32(payload,133) == __constant_htonl(0x31097edf) && get_u32(payload,145) == __constant_htonl(0xdcb8f792)) get_u16(payload,39) == 0 && get_u16(payload,135) == __constant_htons(0x7edf) && get_u16(payload,147) == __constant_htons(0xf792)) - + { #ifdef IPP2P_DEBUG_WINMX printk(KERN_INFO "got WinMX\n"); @@ -436,8 +472,8 @@ search_winmx (const unsigned char *payload, const u16 plen) int search_apple (const unsigned char *payload, const u16 plen) { - if ( (plen > 7) && (payload[6] == 0x0d) && (payload[7] == 0x0a) && (memcmp(payload, "ajprot", 6) == 0)) return (IPP2P_APPLE * 100); - + if ( (plen > 7) && get_u16(payload,6) == __constant_htons(0x0d0a) && (memcmp(payload, "ajprot", 6) == 0)) return (IPP2P_APPLE * 100); + return 0; } @@ -449,11 +485,11 @@ search_bittorrent (const unsigned char *payload, const u16 plen) if (plen > 20) { /* test for match 0x13+"BitTorrent protocol" */ - if (payload[0] == 0x13) + if (*payload == 0x13) { if (memcmp(payload+1, "BitTorrent protocol", 19) == 0) return (IPP2P_BIT * 100); } - + /* get tracker commandos, all starts with GET / * then it can follow: scrape| announce * and then ?hash_info= @@ -463,68 +499,119 @@ search_bittorrent (const unsigned char *payload, const u16 plen) /* message scrape */ if ( memcmp(payload+5,"scrape?info_hash=",17)==0 ) return (IPP2P_BIT * 100 + 1); /* message announce */ - if ( memcmp(payload+5,"announce?info_hash=",19)==0 ) return (IPP2P_BIT * 100 + 2); + if ( memcmp(payload+5,"announce",8)==0 ) return (IPP2P_BIT * 100 + 2); + if ( memcmp(payload+5,"?info_hash=",11)==0 ) return (IPP2P_BIT * 100 + 3); + if ( memcmp(payload+5,"data?fid=",9)==0 ) return (IPP2P_BIT * 100 + 5); } - } - else + } + else { - /* bitcomet encryptes the first packet, so we have to detect another + /* bitcomet encryptes the first packet, so we have to detect another * one later in the flow */ /* first try failed, too many missdetections */ //if ( size == 5 && get_u32(t,0) == __constant_htonl(1) && t[4] < 3) return (IPP2P_BIT * 100 + 3); - + /* second try: block request packets */ - if ( plen == 17 && get_u32(payload,0) == __constant_htonl(0x0d) && payload[4] == 0x06 && get_u32(payload,13) == __constant_htonl(0x4000) ) return (IPP2P_BIT * 100 + 3); + if ( plen == 17 && get_u32(payload,0) == __constant_htonl(0x0d) && *(payload+4) == 0x06 && get_u32(payload,13) == __constant_htonl(0x4000) ) return (IPP2P_BIT * 100 + 4); } return 0; } - - -/*check for Kazaa get command*/ +/* check for xunlei */ int -search_kazaa (const unsigned char *payload, const u16 plen) - +search_xunlei (const unsigned char *payload, const u16 plen) { - if ((payload[plen-2] == 0x0d) && (payload[plen-1] == 0x0a) && memcmp(payload, "GET /.hash=", 11) == 0) - return (IPP2P_DATA_KAZAA * 100); - - return 0; + if ( memcmp(payload,"POST / HTTP/1.1",15) ==0 ) + { + unsigned char *t = strstr((payload+93), "Connection: Keep-Alive"); //min length of Connection + if (t) + { + t += 26; + if ( (*t < 0x40) && (*(t+1) == 0x00) && get_u16(t,2) == __constant_htons(0x0000) && get_u16(t,5) == __constant_htons(0x0000) && (*(t+7) == 0x00) && (*(t+8) == (payload+plen-t-12)) ) return (IPP2P_XUNLEI *100 + 1); + } + } + //QQ cyclone + if ( plen < 400 ) + { + if ( get_u16(payload,0) == __constant_htons(0x0200) && ( *(payload+3) == 0x01 || *(payload+3) == 0x00 ) && *(payload+5) == 0x00 && ( *(payload+6) == 0x01 || *(payload+6) == 0x77 ) && get_u16(payload,21) == __constant_htons(0x0038) ) return (IPP2P_XUNLEI *100 + 2); + } + return 0; } +int +udp_search_xunlei (unsigned char *t, int packet_len) +{ + /* baidu xiaba */ + if (packet_len == 24 && get_u32(t,0) == __constant_htonl(0x01000101) && get_u32(t,4) == __constant_htonl(0xfefffeff) && get_u32(t,8) == __constant_htonl(0x00)) return (IPP2P_XUNLEI * 100 + 11); + if (packet_len == 38 && get_u32(t,0) == __constant_htonl(0x010011a0) && get_u32(t,4) == __constant_htonl(0xfefffeff) && get_u32(t,8) == __constant_htonl(0x00)) return (IPP2P_XUNLEI * 100 + 12); + return 0; +} +/* check for PPLive & PPStream */ +int +search_pp (const unsigned char *payload, const u16 plen) +{ + /* message pplive */ + if ( memcmp(payload,"GET /zh-cn/xml/default.xml",26)==0 ) return (IPP2P_PP *100 + 1 ); + /* message PPStream */ + if ( memcmp(payload,"PSProtocol",10)==0 ) return (IPP2P_PP * 100 + 2); + /* message PPLive */ + if (get_u16(payload,0) == __constant_htons(0xe903) && get_u32(payload,4) == __constant_htonl(0x98ab0102)) return (IPP2P_PP * 100 + 3); + if (get_u16(payload,4) == __constant_htons(0xe903) && get_u32(payload,8) == __constant_htonl(0x98ab0102)) return (IPP2P_PP * 100 + 4); + /* message UUSee */ + if (((*payload + *(payload+1) * 256) == (plen-4) || ((*payload + *(payload+1) * 256) < (plen-4) && *payload + *(payload+1) * 256 + *(payload + *payload + *(payload+1) * 256 + 4) + *(payload + *payload + *(payload+1) * 256 + 5) * 256 + 8 == plen )) && get_u16(payload,2) == __constant_htons(0x0000)) { + if (*(payload+18) == 0x68 && *(payload+20) == 0x74 && *(payload+22) == 0x74 && *(payload+24) == 0x70 && *(payload+26)==0x3a && *(payload+28) == 0x2f && *(payload+30) == 0x2f) return 0; + return (IPP2P_PP * 100 + 5); + } + /* QQLive */ + if ( (plen < 150) && (*payload == 0xfe) && (*(payload+1) == *(payload+4)) && get_u16(payload,2) == __constant_htons(0x0000) ) return (IPP2P_PP * 100 + 6); + /* feidian */ + if ( (plen == 4 && get_u32(payload,0) == __constant_htonl(0x291c3201)) || (plen == 61 && get_u32(payload,0) == __constant_htonl(0x291c3201) && get_u32(payload,4) == __constant_htonl(0x39000000))) return (IPP2P_PP * 100 + 7); + /* POCO */ + if ( (*payload + *(payload+1)*256) == plen && get_u16(payload,2) == __constant_htons(0x0000) && (*(payload+4) + *(payload+5)) == (plen - 13) && get_u16(payload,6) == __constant_htons(0x0000)) return (IPP2P_PP * 100 + 8); + /* QVOD */ + if(memcmp((payload + 1),"QVOD protocol",13) == 0) return (IPP2P_PP * 100 + 9); + return 0; +} -/*check for gnutella get command*/ +/* check for PPLive & PPStream UDP pkg */ int -search_gnu (const unsigned char *payload, const u16 plen) +udp_search_pp (unsigned char *t, int packet_len) { - if ((payload[plen-2] == 0x0d) && (payload[plen-1] == 0x0a)) - { - if (memcmp(payload, "GET /get/", 9) == 0) return ((IPP2P_DATA_GNU * 100) + 1); - if (memcmp(payload, "GET /uri-res/", 13) == 0) return ((IPP2P_DATA_GNU * 100) + 2); - } + if (get_u16(t,0) == __constant_htons(0xe903) && get_u32(t,4) == __constant_htonl(0x98ab0102)) return (IPP2P_PP * 100 + 11); + if ( (memcmp(t+8,"[bsinfo]",8) ==0) && (*(t+16) == 0x0d) && (*(t+17) == 0x0a) && (memcmp(t+18,"mf=",3) ==0) ) return (IPP2P_PP * 100 + 12); + if ( (packet_len == 22 || packet_len == 8) && get_u16(t,0) == __constant_htons(0x0909) && (*(t+2) == 0x08 || *(t+2) == 0x09) && ((*(t+3) == 0x00) || (*(t+3) == 0x01)) ) return (IPP2P_PP * 100 + 13); + if ( packet_len == (*t+4) && get_u32(t,1) == __constant_htonl(0x00430000)) return (IPP2P_PP * 100 + 15 ); + /* QQLive */ + if ( (packet_len < 150) && (*t == 0xfe) && (*(t+1) == *(t+4)) && get_u16(t,2) == __constant_htons(0x0000) ) return (IPP2P_PP * 100 + 14); + /* feidian */ + if ( (packet_len == 112 || packet_len == 116) && get_u32(t,0) == __constant_htonl(0x1c1c3201) && (get_u16(t,4) == __constant_htons(0x0b00) || get_u16(t,4) == __constant_htons(0x0c00))) return (IPP2P_PP * 100 + 16); + /* POCO */ + if (packet_len == 6 && get_u16(t,0) == __constant_htons(0x8095) && (get_u16(t,2) == __constant_htons(0x0462) || get_u16(t,2) == __constant_htons(0x0565)) ) return (IPP2P_PP * 100 + 17); + if (packet_len == 22 && get_u16(t,0) == __constant_htons(0x8094) && (get_u16(t,2) == __constant_htons(0x0429) || get_u16(t,4) == __constant_htons(0x0429)) ) return (IPP2P_PP * 100 + 18); + /* QVOD */ + if (packet_len == ntohl(get_u32(t,0)) && memcmp((t + 14),"QVOD protocol",13) == 0) return (IPP2P_PP * 100 + 19); return 0; } - /*check for gnutella get commands and other typical data*/ int search_all_gnu (const unsigned char *payload, const u16 plen) { - - if ((payload[plen-2] == 0x0d) && (payload[plen-1] == 0x0a)) + + if (get_u16(payload,(plen-2)) == __constant_htons(0x0d0a)) { - + if (memcmp(payload, "GNUTELLA CONNECT/", 17) == 0) return ((IPP2P_GNU * 100) + 1); - if (memcmp(payload, "GNUTELLA/", 9) == 0) return ((IPP2P_GNU * 100) + 2); - - + if (memcmp(payload, "GNUTELLA/", 9) == 0) return ((IPP2P_GNU * 100) + 2); + + if ((memcmp(payload, "GET /get/", 9) == 0) || (memcmp(payload, "GET /uri-res/", 13) == 0)) - { - u16 c=8; - const u16 end=plen-22; + { + u16 c = 8; + const u16 end = plen-22; while (c < end) { - if ( payload[c] == 0x0a && payload[c+1] == 0x0d && ((memcmp(&payload[c+2], "X-Gnutella-", 11) == 0) || (memcmp(&payload[c+2], "X-Queue:", 8) == 0))) + if ( get_u16(payload,c) == __constant_htons(0x0a0d) && ((memcmp((payload+c+2), "X-Gnutella-", 11) == 0) || (memcmp((payload+c+2), "X-Queue:", 8) == 0))) return ((IPP2P_GNU * 100) + 3); c++; } @@ -533,21 +620,20 @@ search_all_gnu (const unsigned char *payload, const u16 plen) return 0; } - /*check for KaZaA download commands and other typical data*/ int search_all_kazaa (const unsigned char *payload, const u16 plen) { - if ((payload[plen-2] == 0x0d) && (payload[plen-1] == 0x0a)) + if (get_u16(payload,(plen-2)) == __constant_htons(0x0d0a)) { if (memcmp(payload, "GIVE ", 5) == 0) return ((IPP2P_KAZAA * 100) + 1); - + if (memcmp(payload, "GET /", 5) == 0) { u16 c = 8; const u16 end=plen-22; while (c < end) { - if ( payload[c] == 0x0a && payload[c+1] == 0x0d && ((memcmp(&payload[c+2], "X-Kazaa-Username: ", 18) == 0) || (memcmp(&payload[c+2], "User-Agent: PeerEnabler/", 24) == 0))) + if ( get_u16(payload,c) == __constant_htons(0x0a0d) && ((memcmp((payload+c+2), "X-Kazaa-Username: ", 18) == 0) || (memcmp((payload+c+2), "User-Agent: PeerEnabler/", 24) == 0))) return ((IPP2P_KAZAA * 100) + 2); c++; } @@ -556,72 +642,45 @@ search_all_kazaa (const unsigned char *payload, const u16 plen) return 0; } -/*fast check for edonkey file segment transfer command*/ -int -search_edk (const unsigned char *payload, const u16 plen) -{ - if (payload[0] != 0xe3) - return 0; - else { - if (payload[5] == 0x47) - return (IPP2P_DATA_EDK * 100); - else - return 0; - } -} - - - /*intensive but slower search for some edonkey packets including size-check*/ int search_all_edk (const unsigned char *payload, const u16 plen) { - if (payload[0] != 0xe3) + if (memcmp(payload, "POST / HTTP/1.1", 15) == 0 && memcmp(payload+17, "Host: vagaa.com", 15) == 0 && memcmp(payload+34, "VAGAA-OPERATION: ", 17) == 0) return (IPP2P_EDK * 100 + 10); + if (*payload != 0xe3) return 0; else { - //t += head_len; + //t += head_len; const u16 cmd = get_u16(payload, 1); if (cmd == (plen - 5)) { - switch (payload[5]) { + switch (*(payload+5)) { case 0x01: return ((IPP2P_EDK * 100) + 1); /*Client: hello or Server:hello*/ + break; + case 0x47: return ((IPP2P_EDK * 100) + 2); /*fast check for edonkey file segment transfer command*/ + break; case 0x4c: return ((IPP2P_EDK * 100) + 9); /*Client: Hello-Answer*/ + break; } } return 0; } } - -/*fast check for Direct Connect send command*/ -int -search_dc (const unsigned char *payload, const u16 plen) -{ - - if (payload[0] != 0x24 ) - return 0; - else { - if (memcmp(&payload[1], "Send|", 5) == 0) - return (IPP2P_DATA_DC * 100); - else - return 0; - } - -} - - /*intensive but slower check for all direct connect packets*/ int search_all_dc (const unsigned char *payload, const u16 plen) { // unsigned char *t = haystack; - if (payload[0] == 0x24 && payload[plen-1] == 0x7c) + if (*payload == 0x24 && *(payload+plen-1) == 0x7c) { - const unsigned char *t=&payload[1]; + const unsigned char *t = payload+1; /* Client-Hub-Protocol */ if (memcmp(t, "Lock ", 5) == 0) return ((IPP2P_DC * 100) + 1); + /*fast check for Direct Connect send command*/ + if (memcmp(t, "Send|", 5) == 0) return ((IPP2P_DC * 100) + 5); /* Client-Client-Protocol, some are already recognized by client-hub (like lock) */ - if (memcmp(t, "MyNick ", 7) == 0) return ((IPP2P_DC * 100) + 38); + if (memcmp(t, "MyNick ", 7) == 0) return ((IPP2P_DC * 100) + 38); } return 0; } @@ -634,13 +693,13 @@ search_mute (const unsigned char *payload, const u16 plen) { //printk(KERN_DEBUG "size hit: %u",size); if (memcmp(payload,"PublicKey: ",11) == 0 ) - { + { return ((IPP2P_MUTE * 100) + 0); - + /* if (memcmp(t+size-14,"\x0aEndPublicKey\x0a",14) == 0) { printk(KERN_DEBUG "end pubic key hit: %u",size); - + }*/ } } @@ -653,18 +712,18 @@ int search_xdcc (const unsigned char *payload, const u16 plen) { /* search in small packets only */ - if (plen > 20 && plen < 200 && payload[plen-1] == 0x0a && payload[plen-2] == 0x0d && memcmp(payload,"PRIVMSG ",8) == 0) + if (plen > 20 && plen < 200 && get_u16(payload,(plen-2)) == __constant_htons(0x0d0a) && memcmp(payload,"PRIVMSG ",8) == 0) { - + u16 x=10; - const u16 end=plen - 13; - + const u16 end = plen - 13; + /* is seems to be a irc private massage, chedck for xdcc command */ while (x < end) { - if (payload[x] == ':') + if (*(payload+x) == ':') { - if ( memcmp(&payload[x+1],"xdcc send #",11) == 0 ) + if ( memcmp((payload+x+1),"xdcc send #",11) == 0 ) return ((IPP2P_XDCC * 100) + 0); } x++; @@ -690,14 +749,11 @@ static struct { int (*function_name) (const unsigned char *, const u16); } matchlist[] = { {IPP2P_EDK,SHORT_HAND_IPP2P,20, &search_all_edk}, -// {IPP2P_DATA_KAZAA,SHORT_HAND_DATA,200, &search_kazaa}, -// {IPP2P_DATA_EDK,SHORT_HAND_DATA,60, &search_edk}, -// {IPP2P_DATA_DC,SHORT_HAND_DATA,26, &search_dc}, - {IPP2P_DC,SHORT_HAND_IPP2P,5, search_all_dc}, -// {IPP2P_DATA_GNU,SHORT_HAND_DATA,40, &search_gnu}, + {IPP2P_DC,SHORT_HAND_IPP2P,5, &search_all_dc}, {IPP2P_GNU,SHORT_HAND_IPP2P,5, &search_all_gnu}, {IPP2P_KAZAA,SHORT_HAND_IPP2P,5, &search_all_kazaa}, {IPP2P_BIT,SHORT_HAND_IPP2P,20, &search_bittorrent}, + {IPP2P_PP,SHORT_HAND_IPP2P,3, &search_pp}, {IPP2P_APPLE,SHORT_HAND_IPP2P,5, &search_apple}, {IPP2P_SOUL,SHORT_HAND_IPP2P,5, &search_soul}, {IPP2P_WINMX,SHORT_HAND_IPP2P,2, &search_winmx}, @@ -705,6 +761,7 @@ static struct { {IPP2P_MUTE,SHORT_HAND_NONE,200, &search_mute}, {IPP2P_WASTE,SHORT_HAND_NONE,5, &search_waste}, {IPP2P_XDCC,SHORT_HAND_NONE,5, &search_xdcc}, + {IPP2P_XUNLEI,SHORT_HAND_NONE,100,&search_xunlei}, {0,0,0,NULL} }; @@ -715,74 +772,48 @@ static struct { int packet_len; int (*function_name) (unsigned char *, int); } udp_list[] = { - { IPP2P_KAZAA, SHORT_HAND_IPP2P, 14, &udp_search_kazaa}, - { IPP2P_BIT, SHORT_HAND_IPP2P, 23, &udp_search_bit}, - { IPP2P_GNU, SHORT_HAND_IPP2P, 11, &udp_search_gnu}, - { IPP2P_EDK, SHORT_HAND_IPP2P, 9, &udp_search_edk}, - { IPP2P_DC, SHORT_HAND_IPP2P, 12, &udp_search_directconnect}, - { 0, 0, 0, NULL } + {IPP2P_KAZAA,SHORT_HAND_IPP2P,6, &udp_search_kazaa}, + {IPP2P_BIT,SHORT_HAND_IPP2P,15, &udp_search_bit}, + {IPP2P_PP,SHORT_HAND_IPP2P,3, &udp_search_pp}, + {IPP2P_GNU,SHORT_HAND_IPP2P,3, &udp_search_gnu}, + {IPP2P_EDK,SHORT_HAND_IPP2P,1, &udp_search_edk}, + {IPP2P_DC,SHORT_HAND_IPP2P,4, &udp_search_directconnect}, + {IPP2P_XUNLEI,SHORT_HAND_NONE,5,&udp_search_xunlei}, + {0,0,0,NULL} }; -#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,0) -static int -match(const struct sk_buff *skb, - const struct net_device *in, - const struct net_device *out, - const void *matchinfo, - int offset, - const void *hdr, - u_int16_t datalen, - int *hotdrop) -#elif LINUX_VERSION_CODE < KERNEL_VERSION(2,6,16) -static int -match(const struct sk_buff *skb, - const struct net_device *in, - const struct net_device *out, - const void *matchinfo, - int offset, - int *hotdrop) -#elif LINUX_VERSION_CODE < KERNEL_VERSION(2,6,17) +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,23) +static bool +#else static int +#endif match(const struct sk_buff *skb, const struct net_device *in, const struct net_device *out, +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,17) + const struct xt_match *mymatch, const void *matchinfo, int offset, - unsigned int protoff, - int *hotdrop) -#elif LINUX_VERSION_CODE < KERNEL_VERSION(2,6,23) -static int -match(const struct sk_buff *skb, - const struct net_device *in, - const struct net_device *out, - const struct xt_match *match, + unsigned int myprotoff, +#else const void *matchinfo, int offset, - unsigned int protoff, - int *hotdrop) -#elif LINUX_VERSION_CODE < KERNEL_VERSION(2,6,28) -static bool -match(const struct sk_buff *skb, - const struct net_device *in, - const struct net_device *out, - const struct xt_match *match, - const void *matchinfo, - int offset, - unsigned int protoff, - bool *hotdrop) -#else /* LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,28) */ -static bool -match(const struct sk_buff *skb, - const struct xt_match_param *par) #endif -{ -#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,28) - const struct ipt_p2p_info *info = matchinfo; + +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,0) + const void *hdr, + u_int16_t datalen, +#endif +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,23) + bool *hotdrop) #else - const struct ipt_p2p_info *info = par->matchinfo; - const int offset = par->fragoff; + int *hotdrop) #endif +{ + const struct ipt_p2p_info *info = matchinfo; unsigned char *haystack; + enum ip_conntrack_info ctinfo; + struct nf_conn *conntrack; #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,22) struct iphdr *ip = ip_hdr(skb); #else @@ -797,25 +828,37 @@ match(const struct sk_buff *skb, if (info->debug) printk("IPP2P.match: offset found %i \n",offset); return 0; } - /*make sure that skb is linear*/ if(skb_is_nonlinear(skb)){ if (info->debug) printk("IPP2P.match: nonlinear skb found\n"); return 0; } + if(!(conntrack = nf_ct_get(skb, &ctinfo))) { + if (info->debug) printk("IPP2P.match: couldn't get conntrack\n"); + return 0; + } + if(TOTAL_PACKETS == 1) + conntrack->ipp2p = 0; - haystack=(char *)ip+(ip->ihl*4); /*haystack = packet data*/ + if(conntrack->ipp2p) + return conntrack->ipp2p; + if((TOTAL_PACKETS > match_packets) && !conntrack->ipp2p) + return 0; + +// else +// printk("IPP2P: conntrack %d packets\n",TOTAL_PACKETS); + haystack=(char *)ip+(ip->ihl*4); /*haystack = packet data*/ switch (ip->protocol){ case IPPROTO_TCP: /*what to do with a TCP packet*/ { struct tcphdr *tcph = (void *) ip + ip->ihl * 4; - + if (tcph->fin) return 0; /*if FIN bit is set bail out*/ if (tcph->syn) return 0; /*if SYN bit is set bail out*/ if (tcph->rst) return 0; /*if RST bit is set bail out*/ - + haystack += tcph->doff * 4; /*get TCP-Header-Size*/ hlen -= tcph->doff * 4; while (matchlist[i].command) { @@ -823,115 +866,91 @@ match(const struct sk_buff *skb, ((info->cmd & matchlist[i].short_hand) == matchlist[i].short_hand)) && (hlen > matchlist[i].packet_len)) { p2p_result = matchlist[i].function_name(haystack, hlen); - if (p2p_result) + if (p2p_result) { - if (info->debug) printk("IPP2P.debug:TCP-match: %i from: %u.%u.%u.%u:%i to: %u.%u.%u.%u:%i Length: %i\n", + if (info->debug) printk("IPP2P.debug:TCP-match: %i from: %u.%u.%u.%u:%i to: %u.%u.%u.%u:%i Length: %i\n", p2p_result, NIPQUAD(ip->saddr),ntohs(tcph->source), NIPQUAD(ip->daddr),ntohs(tcph->dest),hlen); return p2p_result; } } i++; } + conntrack->ipp2p = p2p_result; return p2p_result; } - + case IPPROTO_UDP: /*what to do with an UDP packet*/ { struct udphdr *udph = (void *) ip + ip->ihl * 4; - + haystack += 8; + hlen -= 8; while (udp_list[i].command){ if ((((info->cmd & udp_list[i].command) == udp_list[i].command) || ((info->cmd & udp_list[i].short_hand) == udp_list[i].short_hand)) && (hlen > udp_list[i].packet_len)) { p2p_result = udp_list[i].function_name(haystack, hlen); if (p2p_result){ - if (info->debug) printk("IPP2P.debug:UDP-match: %i from: %u.%u.%u.%u:%i to: %u.%u.%u.%u:%i Length: %i\n", + if (info->debug) printk("IPP2P.debug:UDP-match: %i from: %u.%u.%u.%u:%i to: %u.%u.%u.%u:%i Length: %i\n", p2p_result, NIPQUAD(ip->saddr),ntohs(udph->source), NIPQUAD(ip->daddr),ntohs(udph->dest),hlen); return p2p_result; } } i++; - } + } + conntrack->ipp2p = p2p_result; return p2p_result; } - + default: return 0; } } -#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,16) -static int -checkentry(const char *tablename, - const struct ipt_ip *ip, - void *matchinfo, - unsigned int matchsize, - unsigned int hook_mask) -#elif LINUX_VERSION_CODE < KERNEL_VERSION(2,6,17) -static int -checkentry(const char *tablename, - const void *inf, - void *matchinfo, - unsigned int matchsize, - unsigned int hook_mask) -#elif LINUX_VERSION_CODE < KERNEL_VERSION(2,6,19) + +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,23) +static bool +#else static int +#endif checkentry(const char *tablename, - const void *inf, - const struct xt_match *match, +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,17) + const void *ip, + const struct xt_match *mymatch, +#else + const struct ipt_ip *ip, +#endif void *matchinfo, +#if LINUX_VERSION_CODE <= KERNEL_VERSION(2,6,18) unsigned int matchsize, - unsigned int hook_mask) -#elif LINUX_VERSION_CODE < KERNEL_VERSION(2,6,23) -static int -checkentry(const char *tablename, - const void *inf, - const struct xt_match *match, - void *matchinfo, - unsigned int hook_mask) -#elif LINUX_VERSION_CODE < KERNEL_VERSION(2,6,28) -static bool -checkentry(const char *tablename, - const void *inf, - const struct xt_match *match, - void *matchinfo, - unsigned int hook_mask) -#else /* LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,28) */ -static bool -checkentry(const struct xt_mtchk_param *par) #endif + unsigned int hook_mask) { /* Must specify -p tcp */ /* if (ip->proto != IPPROTO_TCP || (ip->invflags & IPT_INV_PROTO)) { * printk("ipp2p: Only works on TCP packets, use -p tcp\n"); * return 0; * }*/ - return 1; + return 1; } - -#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,21) -static struct xt_match ipp2p_match = { -#else -static struct ipt_match ipp2p_match = { -#endif +static struct ipt_match ipp2p_match = { #if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,0) - { NULL, NULL }, - "ipp2p", - &ipp2p_match, - &ipp2p_checkentry, - NULL, + { NULL, NULL }, + "ipp2p", + &match, + &checkentry, + NULL, THIS_MODULE -#endif -#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0) +#elif LINUX_VERSION_CODE < KERNEL_VERSION(2,6,17) .name = "ipp2p", -#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,21) - .family = AF_INET, -#endif .match = &match, -#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,17) - .matchsize = sizeof(struct ipt_p2p_info), -#endif + .checkentry = &checkentry, + .me = THIS_MODULE, +#else /* LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,17) */ + .name = "ipp2p", + .match = &match, + .family = AF_INET, + .matchsize = XT_ALIGN(sizeof(struct ipt_p2p_info)), .checkentry = &checkentry, .me = THIS_MODULE, #endif @@ -940,24 +959,17 @@ static struct ipt_match ipp2p_match = { static int __init init(void) { - printk(KERN_INFO "IPP2P v%s loading\n", IPP2P_VERSION); -#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,21) - return xt_register_match(&ipp2p_match); -#else + need_conntrack(); + printk(KERN_INFO "IPP2P v%s loading, with %d packets to match\n", IPP2P_VERSION, match_packets); return ipt_register_match(&ipp2p_match); -#endif } - + static void __exit fini(void) { -#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,21) - xt_unregister_match(&ipp2p_match); -#else ipt_unregister_match(&ipp2p_match); -#endif - printk(KERN_INFO "IPP2P v%s unloaded\n", IPP2P_VERSION); + printk(KERN_INFO "IPP2P v%s unloaded\n", IPP2P_VERSION); } - + module_init(init); module_exit(fini); diff --git a/release/src-rt/linux/linux-2.6/net/ipv4/tcp_input.c b/release/src-rt/linux/linux-2.6/net/ipv4/tcp_input.c index 96d98d7050..c6ec5018e4 100644 --- a/release/src-rt/linux/linux-2.6/net/ipv4/tcp_input.c +++ b/release/src-rt/linux/linux-2.6/net/ipv4/tcp_input.c @@ -3039,7 +3039,8 @@ static inline void tcp_replace_ts_recent(struct tcp_sock *tp, u32 seq) * Not only, also it occurs for expired timestamps. */ - if (tcp_paws_check(&tp->rx_opt, 0)) + if ((s32)(tp->rx_opt.rcv_tsval - tp->rx_opt.ts_recent) >= 0 || + get_seconds() >= tp->rx_opt.ts_recent_stamp + TCP_PAWS_24DAYS) tcp_store_ts_recent(tp); } } @@ -3090,9 +3091,9 @@ static int tcp_disordered_ack(const struct sock *sk, const struct sk_buff *skb) static inline int tcp_paws_discard(const struct sock *sk, const struct sk_buff *skb) { const struct tcp_sock *tp = tcp_sk(sk); - - return !tcp_paws_check(&tp->rx_opt, TCP_PAWS_WINDOW) && - !tcp_disordered_ack(sk, skb); + return ((s32)(tp->rx_opt.ts_recent - tp->rx_opt.rcv_tsval) > TCP_PAWS_WINDOW && + get_seconds() < tp->rx_opt.ts_recent_stamp + TCP_PAWS_24DAYS && + !tcp_disordered_ack(sk, skb)); } /* Check segment sequence number for validity. @@ -4618,8 +4619,7 @@ discard: } /* PAWS check. */ - if (tp->rx_opt.ts_recent_stamp && tp->rx_opt.saw_tstamp && - tcp_paws_reject(&tp->rx_opt, 0)) + if (tp->rx_opt.ts_recent_stamp && tp->rx_opt.saw_tstamp && tcp_paws_check(&tp->rx_opt, 0)) goto discard_and_undo; if (th->syn) { diff --git a/release/src-rt/linux/linux-2.6/net/ipv4/tcp_ipv4.c b/release/src-rt/linux/linux-2.6/net/ipv4/tcp_ipv4.c index d627851130..a0161c26c4 100644 --- a/release/src-rt/linux/linux-2.6/net/ipv4/tcp_ipv4.c +++ b/release/src-rt/linux/linux-2.6/net/ipv4/tcp_ipv4.c @@ -1313,6 +1313,15 @@ int tcp_v4_conn_request(struct sock *sk, struct sk_buff *skb) tmp_opt.saw_tstamp = 0; } + if (tmp_opt.saw_tstamp && !tmp_opt.rcv_tsval) { + /* Some OSes (unknown ones, but I see them on web server, which + * contains information interesting only for windows' + * users) do not send their stamp in SYN. It is easy case. + * We simply do not advertise TS support. + */ + tmp_opt.saw_tstamp = 0; + tmp_opt.tstamp_ok = 0; + } tmp_opt.tstamp_ok = tmp_opt.saw_tstamp; tcp_openreq_init(req, &tmp_opt, skb); diff --git a/release/src-rt/linux/linux-2.6/net/ipv4/tcp_minisocks.c b/release/src-rt/linux/linux-2.6/net/ipv4/tcp_minisocks.c index da66e8736e..a12b08fca5 100644 --- a/release/src-rt/linux/linux-2.6/net/ipv4/tcp_minisocks.c +++ b/release/src-rt/linux/linux-2.6/net/ipv4/tcp_minisocks.c @@ -107,7 +107,7 @@ tcp_timewait_state_process(struct inet_timewait_sock *tw, struct sk_buff *skb, if (tmp_opt.saw_tstamp) { tmp_opt.ts_recent = tcptw->tw_ts_recent; tmp_opt.ts_recent_stamp = tcptw->tw_ts_recent_stamp; - paws_reject = tcp_paws_reject(&tmp_opt, th->rst); + paws_reject = tcp_paws_check(&tmp_opt, th->rst); } } @@ -506,7 +506,7 @@ struct sock *tcp_check_req(struct sock *sk,struct sk_buff *skb, * from another data. */ tmp_opt.ts_recent_stamp = get_seconds() - ((TCP_TIMEOUT_INIT/HZ)<retrans); - paws_reject = tcp_paws_reject(&tmp_opt, th->rst); + paws_reject = tcp_paws_check(&tmp_opt, th->rst); } } diff --git a/release/src-rt/linux/linux-2.6/net/netfilter/Kconfig b/release/src-rt/linux/linux-2.6/net/netfilter/Kconfig index 848295cb8d..b6a48c301a 100644 --- a/release/src-rt/linux/linux-2.6/net/netfilter/Kconfig +++ b/release/src-rt/linux/linux-2.6/net/netfilter/Kconfig @@ -56,6 +56,25 @@ config NF_CT_ACCT If unsure, say `N'. +config IP_NF_MATCH_ACCOUNT + tristate "account match support" + depends on IP_NF_IPTABLES + help + This patch adds the account match + + The account match provides simple traffic accounting for continuous networks. + --aaddr subnet for which enable traffic accounting + --aname table name with traffic counters, it can be accessed by reading + /proc/net/ipt_account/
    + --ashort do simple statistics (no tcp/udp/icmp counters) + + More options can be found on project homepage. + + Project homepage: + http://www.svn.barbara.eu.org/ipt_account/ + + To compile it as a module, choose M here. If unsure, say N. + config NF_CONNTRACK_MARK bool 'Connection mark tracking support' depends on NF_CONNTRACK diff --git a/release/src-rt/linux/linux-2.6/net/netfilter/nf_conntrack_rtsp.c b/release/src-rt/linux/linux-2.6/net/netfilter/nf_conntrack_rtsp.c index cfe01f849c..a7b518ce90 100644 --- a/release/src-rt/linux/linux-2.6/net/netfilter/nf_conntrack_rtsp.c +++ b/release/src-rt/linux/linux-2.6/net/netfilter/nf_conntrack_rtsp.c @@ -349,6 +349,7 @@ help_out(struct sk_buff *skb, unsigned char *rb_ptr, unsigned int datalen, if (expinfo.pbtype == pb_range) { DEBUGP("Changing expectation mask to handle multiple ports\n"); + exp->mask.dst.u.udp.port = 0xfffe; //exp->mask.src.u.udp.port = 0xfffe; } diff --git a/release/src-rt/linux/linux-2.6/net/sched/act_police.c b/release/src-rt/linux/linux-2.6/net/sched/act_police.c index 14f660eeda..4ebc00aa84 100644 --- a/release/src-rt/linux/linux-2.6/net/sched/act_police.c +++ b/release/src-rt/linux/linux-2.6/net/sched/act_police.c @@ -32,8 +32,8 @@ #include #include -#define L2T(p,L) ((p)->tcfp_R_tab->data[(L)>>(p)->tcfp_R_tab->rate.cell_log]) -#define L2T_P(p,L) ((p)->tcfp_P_tab->data[(L)>>(p)->tcfp_P_tab->rate.cell_log]) +#define L2T(p,L) qdisc_l2t((p)->tcfp_R_tab,L) +#define L2T_P(p,L) qdisc_l2t((p)->tcfp_P_tab,L) #define POL_TAB_MASK 15 static struct tcf_common *tcf_police_ht[POL_TAB_MASK + 1]; diff --git a/release/src-rt/linux/linux-2.6/net/sched/sch_cbq.c b/release/src-rt/linux/linux-2.6/net/sched/sch_cbq.c index ee2d5967d1..9710b9e9e6 100644 --- a/release/src-rt/linux/linux-2.6/net/sched/sch_cbq.c +++ b/release/src-rt/linux/linux-2.6/net/sched/sch_cbq.c @@ -192,8 +192,7 @@ struct cbq_sched_data }; -#define L2T(cl,len) ((cl)->R_tab->data[(len)>>(cl)->R_tab->rate.cell_log]) - +#define L2T(cl,len) qdisc_l2t((cl)->R_tab,len) static __inline__ unsigned cbq_hash(u32 h) { diff --git a/release/src-rt/linux/linux-2.6/net/sched/sch_htb.c b/release/src-rt/linux/linux-2.6/net/sched/sch_htb.c index ee4d298930..47e7cb6f37 100644 --- a/release/src-rt/linux/linux-2.6/net/sched/sch_htb.c +++ b/release/src-rt/linux/linux-2.6/net/sched/sch_htb.c @@ -71,7 +71,7 @@ #define HTB_HSIZE 16 /* classid hash size */ #define HTB_EWMAC 2 /* rate average over HTB_EWMAC*HTB_HSIZE sec */ #define HTB_RATECM 1 /* whether to use rate computer */ -#define HTB_HYSTERESIS 0 /* whether to use mode hysteresis for speedup */ +//#define HTB_HYSTERESIS 0 /* whether to use mode hysteresis for speedup */ #define HTB_VER 0x30011 /* major must be matched with number suplied by TC as version */ #if HTB_VER >> 16 != TC_HTB_PROTOVER @@ -157,12 +157,10 @@ struct htb_class { static inline long L2T(struct htb_class *cl, struct qdisc_rate_table *rate, int size) { - int slot = size >> rate->rate.cell_log; - if (slot > 255) { + long result = qdisc_l2t(rate, size); + if (result > rate->data[255]) cl->xstats.giants++; - slot = 255; - } - return rate->data[slot]; + return result; } struct htb_sched { diff --git a/release/src-rt/linux/linux-2.6/net/sched/sch_tbf.c b/release/src-rt/linux/linux-2.6/net/sched/sch_tbf.c index 680c27b48f..97f35d40e4 100644 --- a/release/src-rt/linux/linux-2.6/net/sched/sch_tbf.c +++ b/release/src-rt/linux/linux-2.6/net/sched/sch_tbf.c @@ -132,8 +132,8 @@ struct tbf_sched_data struct qdisc_watchdog watchdog; /* Watchdog timer */ }; -#define L2T(q,L) ((q)->R_tab->data[(L)>>(q)->R_tab->rate.cell_log]) -#define L2T_P(q,L) ((q)->P_tab->data[(L)>>(q)->P_tab->rate.cell_log]) +#define L2T(q,L) qdisc_l2t((q)->R_tab,L) +#define L2T_P(q,L) qdisc_l2t((q)->P_tab,L) static int tbf_enqueue(struct sk_buff *skb, struct Qdisc* sch) { diff --git a/release/src-rt/linux/linux-2.6/save-config b/release/src-rt/linux/linux-2.6/save-config new file mode 100644 index 0000000000..ae46a6f086 --- /dev/null +++ b/release/src-rt/linux/linux-2.6/save-config @@ -0,0 +1,1783 @@ +# +# Automatically generated make config: don't edit +# Linux kernel version: 2.6.22.19 +# Sun Jun 9 17:47:01 2013 +# +CONFIG_MIPS=y + +# +# Machine selection +# +CONFIG_MIPS_BRCM=y +# CONFIG_MACH_ALCHEMY is not set +# CONFIG_BASLER_EXCITE is not set +# CONFIG_MIPS_COBALT is not set +# CONFIG_MACH_DECSTATION is not set +# CONFIG_MIPS_EV64120 is not set +# CONFIG_MACH_JAZZ is not set +# CONFIG_LASAT is not set +# CONFIG_MIPS_ATLAS is not set +# CONFIG_MIPS_MALTA is not set +# CONFIG_MIPS_SEAD is not set +# CONFIG_WR_PPMC is not set +# CONFIG_MIPS_SIM is not set +# CONFIG_MOMENCO_OCELOT is not set +# CONFIG_MOMENCO_OCELOT_3 is not set +# CONFIG_MOMENCO_OCELOT_C is not set +# CONFIG_PNX8550_JBS is not set +# CONFIG_PNX8550_STB810 is not set +# CONFIG_DDB5477 is not set +# CONFIG_MACH_VR41XX is not set +# CONFIG_PMC_YOSEMITE is not set +# CONFIG_QEMU is not set +# CONFIG_MARKEINS is not set +# CONFIG_SGI_IP22 is not set +# CONFIG_SGI_IP27 is not set +# CONFIG_SGI_IP32 is not set +# CONFIG_SIBYTE_BIGSUR is not set +# CONFIG_SIBYTE_SWARM is not set +# CONFIG_SIBYTE_SENTOSA is not set +# CONFIG_SIBYTE_RHONE is not set +# CONFIG_SIBYTE_CARMEL is not set +# CONFIG_SIBYTE_LITTLESUR is not set +# CONFIG_SIBYTE_CRHINE is not set +# CONFIG_SIBYTE_CRHONE is not set +# CONFIG_SNI_RM is not set +# CONFIG_TOSHIBA_JMR3927 is not set +# CONFIG_TOSHIBA_RBTX4927 is not set +# CONFIG_TOSHIBA_RBTX4938 is not set + +# +# Support for Broadcom MIPS based boards +# +CONFIG_BCM947XX=y +CONFIG_BCM47XX=y +CONFIG_BCMIPDSCP=y +# CONFIG_HND_BMIPS3300_PROF is not set +CONFIG_RAM_SIZE=0 +CONFIG_NVRAM_SIZE=0 +# CONFIG_SHRINKMEM is not set +# CONFIG_GENERIC_GPIO is not set +# CONFIG_NVRAM_64K is not set +CONFIG_RWSEM_GENERIC_SPINLOCK=y +# CONFIG_ARCH_HAS_ILOG2_U32 is not set +# CONFIG_ARCH_HAS_ILOG2_U64 is not set +CONFIG_GENERIC_FIND_NEXT_BIT=y +CONFIG_GENERIC_HWEIGHT=y +CONFIG_GENERIC_CALIBRATE_DELAY=y +CONFIG_GENERIC_TIME=y +CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y +# CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ is not set +CONFIG_DMA_NONCOHERENT=y +CONFIG_DMA_NEED_PCI_MAP_STATE=y +# CONFIG_CPU_BIG_ENDIAN is not set +CONFIG_CPU_LITTLE_ENDIAN=y +CONFIG_SYS_SUPPORTS_LITTLE_ENDIAN=y +CONFIG_IRQ_CPU=y +CONFIG_MIPS_L1_CACHE_SHIFT=5 + +# +# CPU selection +# +# CONFIG_CPU_MIPS32_R1 is not set +CONFIG_CPU_MIPS32_R2=y +# CONFIG_CPU_MIPS64_R1 is not set +# CONFIG_CPU_MIPS64_R2 is not set +# CONFIG_CPU_R3000 is not set +# CONFIG_CPU_TX39XX is not set +# CONFIG_CPU_VR41XX is not set +# CONFIG_CPU_R4300 is not set +# CONFIG_CPU_R4X00 is not set +# CONFIG_CPU_TX49XX is not set +# CONFIG_CPU_R5000 is not set +# CONFIG_CPU_R5432 is not set +# CONFIG_CPU_R6000 is not set +# CONFIG_CPU_NEVADA is not set +# CONFIG_CPU_R8000 is not set +# CONFIG_CPU_R10000 is not set +# CONFIG_CPU_RM7000 is not set +# CONFIG_CPU_RM9000 is not set +# CONFIG_CPU_SB1 is not set +CONFIG_SYS_HAS_CPU_MIPS32_R1=y +CONFIG_SYS_HAS_CPU_MIPS32_R2=y +CONFIG_CPU_MIPS32=y +CONFIG_CPU_MIPSR2=y +CONFIG_SYS_SUPPORTS_32BIT_KERNEL=y +CONFIG_CPU_SUPPORTS_32BIT_KERNEL=y + +# +# Kernel type +# +CONFIG_32BIT=y +# CONFIG_64BIT is not set +CONFIG_PAGE_SIZE_4KB=y +# CONFIG_PAGE_SIZE_8KB is not set +# CONFIG_PAGE_SIZE_16KB is not set +# CONFIG_PAGE_SIZE_64KB is not set +CONFIG_CPU_HAS_PREFETCH=y +CONFIG_MIPS_MT_DISABLED=y +# CONFIG_MIPS_MT_SMP is not set +# CONFIG_MIPS_MT_SMTC is not set +# CONFIG_MIPS_VPE_LOADER is not set +# CONFIG_64BIT_PHYS_ADDR is not set +CONFIG_CPU_HAS_LLSC=y +CONFIG_CPU_HAS_SYNC=y +CONFIG_GENERIC_HARDIRQS=y +CONFIG_GENERIC_IRQ_PROBE=y +CONFIG_HIGHMEM=y +CONFIG_CPU_SUPPORTS_HIGHMEM=y +CONFIG_SYS_SUPPORTS_HIGHMEM=y +CONFIG_ARCH_FLATMEM_ENABLE=y +CONFIG_ARCH_POPULATES_NODE_MAP=y +CONFIG_ARCH_SELECT_MEMORY_MODEL=y +CONFIG_ARCH_SPARSEMEM_ENABLE=y +CONFIG_SELECT_MEMORY_MODEL=y +# CONFIG_FLATMEM_MANUAL is not set +# CONFIG_DISCONTIGMEM_MANUAL is not set +CONFIG_SPARSEMEM_MANUAL=y +CONFIG_SPARSEMEM=y +CONFIG_HAVE_MEMORY_PRESENT=y +# CONFIG_SPARSEMEM_STATIC is not set +CONFIG_SPARSEMEM_EXTREME=y +CONFIG_SPLIT_PTLOCK_CPUS=4 +# CONFIG_RESOURCES_64BIT is not set +CONFIG_ZONE_DMA_FLAG=0 +# CONFIG_HZ_48 is not set +CONFIG_HZ_100=y +# CONFIG_HZ_128 is not set +# CONFIG_HZ_250 is not set +# CONFIG_HZ_256 is not set +# CONFIG_HZ_1000 is not set +# CONFIG_HZ_1024 is not set +CONFIG_SYS_SUPPORTS_ARBIT_HZ=y +CONFIG_HZ=100 +CONFIG_PREEMPT_NONE=y +# CONFIG_PREEMPT_VOLUNTARY is not set +# CONFIG_PREEMPT is not set +# CONFIG_KEXEC is not set +CONFIG_LOCKDEP_SUPPORT=y +CONFIG_STACKTRACE_SUPPORT=y +CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" + +# +# Code maturity level options +# +CONFIG_EXPERIMENTAL=y +CONFIG_BROKEN_ON_SMP=y +CONFIG_INIT_ENV_ARG_LIMIT=32 + +# +# General setup +# +CONFIG_LOCALVERSION="" +# CONFIG_LOCALVERSION_AUTO is not set +CONFIG_SWAP=y +CONFIG_SYSVIPC=y +# CONFIG_IPC_NS is not set +CONFIG_SYSVIPC_SYSCTL=y +# CONFIG_POSIX_MQUEUE is not set +# CONFIG_BSD_PROCESS_ACCT is not set +# CONFIG_TASKSTATS is not set +# CONFIG_UTS_NS is not set +# CONFIG_AUDIT is not set +CONFIG_IKCONFIG=y +# CONFIG_IKCONFIG_PROC is not set +CONFIG_LOG_BUF_SHIFT=14 +CONFIG_SYSFS_DEPRECATED=y +# CONFIG_RELAY is not set +# CONFIG_BLK_DEV_INITRD is not set +# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set +CONFIG_SYSCTL=y +CONFIG_EMBEDDED=y +CONFIG_SYSCTL_SYSCALL=y +# CONFIG_KALLSYMS is not set +CONFIG_HOTPLUG=y +CONFIG_PRINTK=y +CONFIG_BUG=y +# CONFIG_ELF_CORE is not set +CONFIG_BASE_FULL=y +CONFIG_FUTEX=y +CONFIG_ANON_INODES=y +CONFIG_EPOLL=y +CONFIG_SIGNALFD=y +CONFIG_TIMERFD=y +CONFIG_EVENTFD=y +CONFIG_SHMEM=y +# CONFIG_VM_EVENT_COUNTERS is not set +CONFIG_SLAB=y +# CONFIG_SLUB is not set +# CONFIG_SLOB is not set +CONFIG_RT_MUTEXES=y +# CONFIG_TINY_SHMEM is not set +CONFIG_BASE_SMALL=0 + +# +# Loadable module support +# +CONFIG_MODULES=y +CONFIG_MODULE_UNLOAD=y +# CONFIG_MODULE_FORCE_UNLOAD is not set +# CONFIG_MODVERSIONS is not set +# CONFIG_MODULE_SRCVERSION_ALL is not set +CONFIG_KMOD=y + +# +# Block layer +# +CONFIG_BLOCK=y +CONFIG_LBD=y +# CONFIG_BLK_DEV_IO_TRACE is not set +# CONFIG_LSF is not set + +# +# IO Schedulers +# +CONFIG_IOSCHED_NOOP=y +# CONFIG_IOSCHED_AS is not set +# CONFIG_IOSCHED_DEADLINE is not set +# CONFIG_IOSCHED_CFQ is not set +# CONFIG_DEFAULT_AS is not set +# CONFIG_DEFAULT_DEADLINE is not set +# CONFIG_DEFAULT_CFQ is not set +CONFIG_DEFAULT_NOOP=y +CONFIG_DEFAULT_IOSCHED="noop" + +# +# Bus options (PCI, PCMCIA, EISA, ISA, TC) +# +CONFIG_HW_HAS_PCI=y +CONFIG_PCI=y +# CONFIG_ARCH_SUPPORTS_MSI is not set +CONFIG_MMU=y + +# +# PCCARD (PCMCIA/CardBus) support +# +# CONFIG_PCCARD is not set +# CONFIG_HOTPLUG_PCI is not set + +# +# Executable file formats +# +CONFIG_BINFMT_ELF=y +# CONFIG_BINFMT_MISC is not set +CONFIG_TRAD_SIGNALS=y + +# +# Power management options +# +# CONFIG_PM is not set + +# +# Networking +# +CONFIG_NET=y + +# +# Networking options +# +CONFIG_PACKET=y +CONFIG_PACKET_MMAP=y +CONFIG_UNIX=y +# CONFIG_NET_KEY is not set +CONFIG_INET=y +CONFIG_IP_MULTICAST=y +CONFIG_IP_ADVANCED_ROUTER=y +CONFIG_ASK_IP_FIB_HASH=y +# CONFIG_IP_FIB_TRIE is not set +CONFIG_IP_FIB_HASH=y +CONFIG_IP_MULTIPLE_TABLES=y +CONFIG_IP_ROUTE_MULTIPATH=y +# CONFIG_IP_ROUTE_VERBOSE is not set +# CONFIG_IP_PNP is not set +# CONFIG_NET_IPIP is not set +# CONFIG_NET_IPGRE_DEMUX is not set +CONFIG_IPSEC_NAT_TRAVERSAL=y +CONFIG_IP_MROUTE=y +# CONFIG_IP_PIMSM_V1 is not set +# CONFIG_IP_PIMSM_V2 is not set +# CONFIG_ARPD is not set +CONFIG_SYN_COOKIES=y +# CONFIG_INET_AH is not set +# CONFIG_INET_ESP is not set +# CONFIG_INET_IPCOMP is not set +# CONFIG_INET_XFRM_TUNNEL is not set +CONFIG_INET_TUNNEL=m +# CONFIG_INET_XFRM_MODE_TRANSPORT is not set +# CONFIG_INET_XFRM_MODE_TUNNEL is not set +# CONFIG_INET_XFRM_MODE_BEET is not set +# CONFIG_INET_DIAG is not set +CONFIG_TCP_CONG_ADVANCED=y +# CONFIG_TCP_CONG_BIC is not set +# CONFIG_TCP_CONG_CUBIC is not set +# CONFIG_TCP_CONG_WESTWOOD is not set +# CONFIG_TCP_CONG_HTCP is not set +# CONFIG_TCP_CONG_HSTCP is not set +# CONFIG_TCP_CONG_HYBLA is not set +CONFIG_TCP_CONG_VEGAS=m +# CONFIG_TCP_CONG_SCALABLE is not set +# CONFIG_TCP_CONG_LP is not set +# CONFIG_TCP_CONG_VENO is not set +# CONFIG_TCP_CONG_YEAH is not set +# CONFIG_TCP_CONG_ILLINOIS is not set +# CONFIG_DEFAULT_BIC is not set +# CONFIG_DEFAULT_CUBIC is not set +# CONFIG_DEFAULT_HTCP is not set +# CONFIG_DEFAULT_VEGAS is not set +# CONFIG_DEFAULT_WESTWOOD is not set +CONFIG_DEFAULT_RENO=y +CONFIG_DEFAULT_TCP_CONG="reno" +# CONFIG_TCP_MD5SIG is not set +# CONFIG_IP_VS is not set +CONFIG_IPV6=y +# CONFIG_IPV6_PRIVACY is not set +CONFIG_IPV6_ROUTER_PREF=y +# CONFIG_IPV6_ROUTE_INFO is not set +CONFIG_IPV6_OPTIMISTIC_DAD=y +# CONFIG_INET6_AH is not set +# CONFIG_INET6_ESP is not set +# CONFIG_INET6_IPCOMP is not set +# CONFIG_IPV6_MIP6 is not set +# CONFIG_INET6_XFRM_TUNNEL is not set +# CONFIG_INET6_TUNNEL is not set +# CONFIG_INET6_XFRM_MODE_TRANSPORT is not set +# CONFIG_INET6_XFRM_MODE_TUNNEL is not set +# CONFIG_INET6_XFRM_MODE_BEET is not set +# CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION is not set +CONFIG_IPV6_SIT=m +CONFIG_IPV6_SIT_6RD=y +# CONFIG_IPV6_TUNNEL is not set +CONFIG_IPV6_MULTIPLE_TABLES=y +# CONFIG_IPV6_SUBTREES is not set +CONFIG_IPV6_MROUTE=y +# CONFIG_IPV6_PIMSM_V2 is not set +# CONFIG_INET_GRO is not set +CONFIG_INET_GSO=y +# CONFIG_NETWORK_SECMARK is not set +CONFIG_NETFILTER=y +# CONFIG_NETFILTER_DEBUG is not set +# CONFIG_BRIDGE_NETFILTER is not set + +# +# Core Netfilter Configuration +# +CONFIG_NETFILTER_NETLINK=y +# CONFIG_NETFILTER_NETLINK_QUEUE is not set +# CONFIG_NETFILTER_NETLINK_LOG is not set +CONFIG_NF_CONNTRACK_ENABLED=y +CONFIG_NF_CONNTRACK=y +CONFIG_NF_CT_ACCT=y +CONFIG_IP_NF_MATCH_ACCOUNT=y +CONFIG_NF_CONNTRACK_MARK=y +# CONFIG_NF_CONNTRACK_EVENTS is not set +CONFIG_NF_CT_PROTO_GRE=m +# CONFIG_NF_CT_PROTO_SCTP is not set +# CONFIG_NF_CONNTRACK_AMANDA is not set +CONFIG_NF_CONNTRACK_FTP=m +CONFIG_NF_CONNTRACK_H323=m +# CONFIG_NF_CONNTRACK_IRC is not set +# CONFIG_NF_CONNTRACK_NETBIOS_NS is not set +CONFIG_NF_CONNTRACK_PPTP=m +# CONFIG_NF_CONNTRACK_SANE is not set +CONFIG_NF_CONNTRACK_SIP=m +CONFIG_NF_CONNTRACK_TFTP=y +CONFIG_NF_CONNTRACK_RTSP=m +# CONFIG_NF_CT_NETLINK is not set +CONFIG_NETFILTER_XTABLES=y +CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m +CONFIG_NETFILTER_XT_TARGET_CONNMARK=y +CONFIG_NETFILTER_XT_TARGET_DSCP=m +CONFIG_NETFILTER_XT_TARGET_HL=m +CONFIG_NETFILTER_XT_TARGET_IMQ=m +CONFIG_NETFILTER_XT_TARGET_MARK=y +CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m +# CONFIG_NETFILTER_XT_TARGET_NFLOG is not set +CONFIG_NETFILTER_XT_TARGET_NOTRACK=m +CONFIG_NETFILTER_XT_TARGET_TCPMSS=y +# CONFIG_NETFILTER_XT_MATCH_COMMENT is not set +CONFIG_NETFILTER_XT_MATCH_CONNBYTES=y +CONFIG_NETFILTER_XT_MATCH_CONNLIMIT=y +CONFIG_NETFILTER_XT_MATCH_CONNMARK=y +# CONFIG_NETFILTER_XT_MATCH_CONNTRACK is not set +# CONFIG_NETFILTER_XT_MATCH_DCCP is not set +CONFIG_NETFILTER_XT_MATCH_DSCP=m +# CONFIG_NETFILTER_XT_MATCH_ESP is not set +# CONFIG_NETFILTER_XT_MATCH_HELPER is not set +CONFIG_NETFILTER_XT_MATCH_HL=m +CONFIG_NETFILTER_XT_MATCH_IPRANGE=y +CONFIG_NETFILTER_XT_MATCH_LENGTH=m +CONFIG_NETFILTER_XT_MATCH_LIMIT=y +CONFIG_NETFILTER_XT_MATCH_MAC=y +CONFIG_NETFILTER_XT_MATCH_MARK=y +CONFIG_NETFILTER_XT_MATCH_MULTIPORT=y +# CONFIG_NETFILTER_XT_MATCH_PKTTYPE is not set +CONFIG_NETFILTER_XT_MATCH_QUOTA=m +# CONFIG_NETFILTER_XT_MATCH_REALM is not set +CONFIG_NETFILTER_XT_MATCH_RECENT=m +# CONFIG_NETFILTER_XT_MATCH_RECENT_PROC_COMPAT is not set +# CONFIG_NETFILTER_XT_MATCH_SCTP is not set +CONFIG_NETFILTER_XT_MATCH_STATE=y +CONFIG_NETFILTER_XT_MATCH_LAYER7=m +# CONFIG_NETFILTER_XT_MATCH_LAYER7_DEBUG is not set +# CONFIG_NETFILTER_XT_MATCH_STATISTIC is not set +# CONFIG_NETFILTER_XT_MATCH_TIME is not set +CONFIG_NETFILTER_XT_MATCH_STRING=y +# CONFIG_NETFILTER_XT_MATCH_WEBSTR is not set +CONFIG_NETFILTER_XT_MATCH_WEB=m +CONFIG_NETFILTER_XT_MATCH_WEBMON=m +CONFIG_NETFILTER_XT_MATCH_TCPMSS=y +CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m +CONFIG_NETFILTER_XT_MATCH_CONDITION=m +CONFIG_NETFILTER_XT_MATCH_GEOIP=m + +# +# IP: Netfilter Configuration +# +CONFIG_NF_CONNTRACK_IPV4=y +CONFIG_NF_CONNTRACK_PROC_COMPAT=y +# CONFIG_IP_NF_QUEUE is not set +# CONFIG_BCM_NAT is not set +CONFIG_IP_NF_IPTABLES=y +CONFIG_IP_NF_MATCH_TOS=m +CONFIG_IP_NF_MATCH_TIME=m +# CONFIG_IP_NF_MATCH_ECN is not set +# CONFIG_IP_NF_MATCH_AH is not set +# CONFIG_IP_NF_MATCH_OWNER is not set +# CONFIG_IP_NF_MATCH_ADDRTYPE is not set +# CONFIG_IP_NF_MATCH_MPORT is not set +CONFIG_IP_NF_FILTER=y +CONFIG_IP_NF_TARGET_REJECT=y +CONFIG_IP_NF_TARGET_LOG=y +# CONFIG_IP_NF_TARGET_ULOG is not set +CONFIG_NF_NAT=y +CONFIG_NF_NAT_NEEDED=y +CONFIG_IP_NF_TARGET_MASQUERADE=y +CONFIG_IP_NF_TARGET_REDIRECT=m +CONFIG_IP_NF_TARGET_NETMAP=m +# CONFIG_IP_NF_TARGET_SAME is not set +CONFIG_IP_NF_TARGET_TRIGGER=y +# CONFIG_NF_NAT_SNMP_BASIC is not set +# CONFIG_NF_NAT_AUTOFW is not set +CONFIG_NF_NAT_PROTO_GRE=m +CONFIG_NF_NAT_FTP=m +# CONFIG_NF_NAT_IRC is not set +CONFIG_NF_NAT_RTSP=m +CONFIG_NF_NAT_TFTP=y +# CONFIG_NF_NAT_AMANDA is not set +CONFIG_NF_NAT_PPTP=m +CONFIG_NF_NAT_H323=m +CONFIG_NF_NAT_SIP=m +CONFIG_IP_NF_MANGLE=y +CONFIG_IP_NF_TARGET_TOS=m +# CONFIG_IP_NF_TARGET_ECN is not set +# CONFIG_IP_NF_TARGET_CLUSTERIP is not set +CONFIG_IP_NF_RAW=m +# CONFIG_IP_NF_ARPTABLES is not set +CONFIG_IP_NF_MATCH_U32=y +CONFIG_IP_NF_TARGET_ROUTE=m +# CONFIG_IP_NF_TARGET_TARPIT is not set +CONFIG_IP_NF_MATCH_IPP2P=m +# CONFIG_IP_NF_MATCH_IPV4OPTIONS is not set +# CONFIG_IP_NF_TARGET_BCOUNT is not set +# CONFIG_IP_NF_TARGET_MACSAVE is not set +# CONFIG_IP_NF_MATCH_EXP is not set +CONFIG_IP_NF_TOMATOCT=y +CONFIG_IP_NF_DNSMQ=m + +# +# IPv6: Netfilter Configuration (EXPERIMENTAL) +# +CONFIG_NF_CONNTRACK_IPV6=m +# CONFIG_IP6_NF_QUEUE is not set +CONFIG_IP6_NF_IPTABLES=y +CONFIG_IP6_NF_MATCH_RT=y +# CONFIG_IP6_NF_MATCH_OPTS is not set +# CONFIG_IP6_NF_MATCH_FRAG is not set +# CONFIG_IP6_NF_MATCH_OWNER is not set +# CONFIG_IP6_NF_MATCH_IPV6HEADER is not set +# CONFIG_IP6_NF_MATCH_AH is not set +# CONFIG_IP6_NF_MATCH_MH is not set +# CONFIG_IP6_NF_MATCH_EUI64 is not set +CONFIG_IP6_NF_FILTER=m +CONFIG_IP6_NF_TARGET_LOG=m +CONFIG_IP6_NF_TARGET_REJECT=m +CONFIG_IP6_NF_MANGLE=m +CONFIG_IP6_NF_RAW=m +CONFIG_IP6_NF_TARGET_ROUTE=m + +# +# Bridge: Netfilter Configuration +# +CONFIG_BRIDGE_NF_EBTABLES=m +CONFIG_BRIDGE_EBT_BROUTE=m +CONFIG_BRIDGE_EBT_T_FILTER=m +CONFIG_BRIDGE_EBT_T_NAT=m +# CONFIG_BRIDGE_EBT_802_3 is not set +# CONFIG_BRIDGE_EBT_AMONG is not set +CONFIG_BRIDGE_EBT_ARP=m +CONFIG_BRIDGE_EBT_IP=m +CONFIG_BRIDGE_EBT_IP6=m +CONFIG_BRIDGE_EBT_LIMIT=m +# CONFIG_BRIDGE_EBT_MARK is not set +CONFIG_BRIDGE_EBT_PKTTYPE=m +CONFIG_BRIDGE_EBT_STP=m +CONFIG_BRIDGE_EBT_VLAN=m +CONFIG_BRIDGE_EBT_ARPREPLY=m +CONFIG_BRIDGE_EBT_DNAT=m +CONFIG_BRIDGE_EBT_MARK_T=m +CONFIG_BRIDGE_EBT_REDIRECT=m +CONFIG_BRIDGE_EBT_SNAT=m +CONFIG_BRIDGE_EBT_LOG=m +# CONFIG_BRIDGE_EBT_ULOG is not set +# CONFIG_IP_DCCP is not set +# CONFIG_IP_SCTP is not set +# CONFIG_TIPC is not set +# CONFIG_ATM is not set +CONFIG_BRIDGE=y +CONFIG_VLAN_8021Q=y +# CONFIG_DECNET is not set +CONFIG_LLC=y +# CONFIG_LLC2 is not set +# CONFIG_IPX is not set +# CONFIG_ATALK is not set +# CONFIG_X25 is not set +# CONFIG_LAPB is not set +# CONFIG_ECONET is not set +# CONFIG_WAN_ROUTER is not set + +# +# QoS and/or fair queueing +# +CONFIG_NET_SCHED=y +CONFIG_NET_SCH_FIFO=y + +# +# Queueing/Scheduling +# +# CONFIG_NET_SCH_CBQ is not set +CONFIG_NET_SCH_HTB=y +CONFIG_NET_SCH_HFSC=m +CONFIG_NET_SCH_PRIO=y +CONFIG_NET_SCH_RED=m +CONFIG_NET_SCH_SFQ=y +CONFIG_NET_SCH_ESFQ=m +CONFIG_NET_SCH_ESFQ_NFCT=y +# CONFIG_NET_SCH_TEQL is not set +CONFIG_NET_SCH_TBF=m +# CONFIG_NET_SCH_GRED is not set +# CONFIG_NET_SCH_DSMARK is not set +# CONFIG_NET_SCH_NETEM is not set +CONFIG_NET_SCH_INGRESS=y + +# +# Classification +# +CONFIG_NET_CLS=y +CONFIG_NET_CLS_BASIC=y +CONFIG_NET_CLS_TCINDEX=y +CONFIG_NET_CLS_ROUTE4=y +CONFIG_NET_CLS_ROUTE=y +CONFIG_NET_CLS_FW=y +CONFIG_NET_CLS_U32=y +# CONFIG_CLS_U32_PERF is not set +CONFIG_CLS_U32_MARK=y +# CONFIG_NET_CLS_RSVP is not set +# CONFIG_NET_CLS_RSVP6 is not set +# CONFIG_NET_EMATCH is not set +# CONFIG_NET_CLS_ACT is not set +CONFIG_NET_CLS_POLICE=y +# CONFIG_NET_CLS_IND is not set +CONFIG_NET_ESTIMATOR=y + +# +# Network testing +# +# CONFIG_NET_PKTGEN is not set +# CONFIG_HAMRADIO is not set +# CONFIG_IRDA is not set +# CONFIG_BT is not set +# CONFIG_AF_RXRPC is not set +CONFIG_FIB_RULES=y + +# +# Wireless +# +# CONFIG_CFG80211 is not set +# CONFIG_WIRELESS_EXT is not set +# CONFIG_MAC80211 is not set +# CONFIG_IEEE80211 is not set +# CONFIG_RFKILL is not set + +# +# Device Drivers +# + +# +# Generic Driver Options +# +CONFIG_STANDALONE=y +CONFIG_PREVENT_FIRMWARE_BUILD=y +# CONFIG_FW_LOADER is not set +# CONFIG_SYS_HYPERVISOR is not set + +# +# Connector - unified userspace <-> kernelspace linker +# +CONFIG_CONNECTOR=m +CONFIG_MTD=y +# CONFIG_MTD_DEBUG is not set +# CONFIG_MTD_CONCAT is not set +CONFIG_MTD_PARTITIONS=y +# CONFIG_MTD_REDBOOT_PARTS is not set +# CONFIG_MTD_CMDLINE_PARTS is not set + +# +# User Modules And Translation Layers +# +CONFIG_MTD_CHAR=y +CONFIG_MTD_BLKDEVS=y +CONFIG_MTD_BLOCK=y +# CONFIG_FTL is not set +# CONFIG_NFTL is not set +# CONFIG_INFTL is not set +# CONFIG_RFD_FTL is not set +# CONFIG_SSFDC is not set + +# +# RAM/ROM/Flash chip drivers +# +CONFIG_MTD_CFI=y +# CONFIG_MTD_JEDECPROBE is not set +CONFIG_MTD_GEN_PROBE=y +CONFIG_MTD_CFI_ADV_OPTIONS=y +CONFIG_MTD_CFI_NOSWAP=y +# CONFIG_MTD_CFI_BE_BYTE_SWAP is not set +# CONFIG_MTD_CFI_LE_BYTE_SWAP is not set +CONFIG_MTD_CFI_GEOMETRY=y +CONFIG_MTD_MAP_BANK_WIDTH_1=y +CONFIG_MTD_MAP_BANK_WIDTH_2=y +CONFIG_MTD_MAP_BANK_WIDTH_4=y +# CONFIG_MTD_MAP_BANK_WIDTH_8 is not set +# CONFIG_MTD_MAP_BANK_WIDTH_16 is not set +# CONFIG_MTD_MAP_BANK_WIDTH_32 is not set +CONFIG_MTD_CFI_I1=y +CONFIG_MTD_CFI_I2=y +# CONFIG_MTD_CFI_I4 is not set +# CONFIG_MTD_CFI_I8 is not set +# CONFIG_MTD_OTP is not set +CONFIG_MTD_CFI_INTELEXT=y +CONFIG_MTD_CFI_AMDSTD=y +CONFIG_MTD_CFI_STAA=y +CONFIG_MTD_CFI_UTIL=y +# CONFIG_MTD_RAM is not set +# CONFIG_MTD_ROM is not set +# CONFIG_MTD_ABSENT is not set + +# +# Mapping drivers for chip access +# +# CONFIG_MTD_COMPLEX_MAPPINGS is not set +# CONFIG_MTD_PHYSMAP is not set +# CONFIG_MTD_PLATRAM is not set +CONFIG_MTD_BCM947XX=y + +# +# Self-contained MTD device drivers +# +CONFIG_MTD_SFLASH=y +# CONFIG_MTD_NFLASH is not set +# CONFIG_MTD_PMC551 is not set +# CONFIG_MTD_SLRAM is not set +# CONFIG_MTD_PHRAM is not set +# CONFIG_MTD_MTDRAM is not set +# CONFIG_MTD_BLOCK2MTD is not set + +# +# Disk-On-Chip Device Drivers +# +# CONFIG_MTD_DOC2000 is not set +# CONFIG_MTD_DOC2001 is not set +# CONFIG_MTD_DOC2001PLUS is not set +# CONFIG_MTD_NAND is not set +# CONFIG_MTD_ONENAND is not set + +# +# UBI - Unsorted block images +# +# CONFIG_MTD_UBI is not set + +# +# Parallel port support +# +# CONFIG_PARPORT is not set + +# +# Plug and Play support +# +# CONFIG_PNPACPI is not set + +# +# Block devices +# +# CONFIG_BLK_CPQ_DA is not set +# CONFIG_BLK_CPQ_CISS_DA is not set +# CONFIG_BLK_DEV_DAC960 is not set +# CONFIG_BLK_DEV_UMEM is not set +# CONFIG_BLK_DEV_COW_COMMON is not set +CONFIG_BLK_DEV_LOOP=m +# CONFIG_BLK_DEV_CRYPTOLOOP is not set +# CONFIG_BLK_DEV_NBD is not set +# CONFIG_BLK_DEV_SX8 is not set +# CONFIG_BLK_DEV_UB is not set +# CONFIG_BLK_DEV_RAM is not set +# CONFIG_CDROM_PKTCDVD is not set +# CONFIG_ATA_OVER_ETH is not set + +# +# Misc devices +# +# CONFIG_PHANTOM is not set +# CONFIG_SGI_IOC4 is not set +# CONFIG_TIFM_CORE is not set +# CONFIG_IDE is not set + +# +# SCSI device support +# +# CONFIG_RAID_ATTRS is not set +CONFIG_SCSI=m +# CONFIG_SCSI_TGT is not set +# CONFIG_SCSI_NETLINK is not set +CONFIG_SCSI_PROC_FS=y + +# +# SCSI support type (disk, tape, CD-ROM) +# +CONFIG_BLK_DEV_SD=m +# CONFIG_CHR_DEV_ST is not set +# CONFIG_CHR_DEV_OSST is not set +# CONFIG_BLK_DEV_SR is not set +# CONFIG_CHR_DEV_SG is not set +# CONFIG_CHR_DEV_SCH is not set + +# +# Some SCSI devices (e.g. CD jukebox) support multiple LUNs +# +CONFIG_SCSI_MULTI_LUN=y +# CONFIG_SCSI_CONSTANTS is not set +# CONFIG_SCSI_LOGGING is not set +# CONFIG_SCSI_SCAN_ASYNC is not set +CONFIG_SCSI_WAIT_SCAN=m + +# +# SCSI Transports +# +# CONFIG_SCSI_SPI_ATTRS is not set +# CONFIG_SCSI_FC_ATTRS is not set +# CONFIG_SCSI_ISCSI_ATTRS is not set +# CONFIG_SCSI_SAS_ATTRS is not set +# CONFIG_SCSI_SAS_LIBSAS is not set + +# +# SCSI low-level drivers +# +# CONFIG_ISCSI_TCP is not set +# CONFIG_BLK_DEV_3W_XXXX_RAID is not set +# CONFIG_SCSI_3W_9XXX is not set +# CONFIG_SCSI_ACARD is not set +# CONFIG_SCSI_AACRAID is not set +# CONFIG_SCSI_AIC7XXX is not set +# CONFIG_SCSI_AIC7XXX_OLD is not set +# CONFIG_SCSI_AIC79XX is not set +# CONFIG_SCSI_AIC94XX is not set +# CONFIG_SCSI_DPT_I2O is not set +# CONFIG_SCSI_ARCMSR is not set +# CONFIG_MEGARAID_NEWGEN is not set +# CONFIG_MEGARAID_LEGACY is not set +# CONFIG_MEGARAID_SAS is not set +# CONFIG_SCSI_HPTIOP is not set +# CONFIG_SCSI_DMX3191D is not set +# CONFIG_SCSI_FUTURE_DOMAIN is not set +# CONFIG_SCSI_IPS is not set +# CONFIG_SCSI_INITIO is not set +# CONFIG_SCSI_INIA100 is not set +# CONFIG_SCSI_STEX is not set +# CONFIG_SCSI_SYM53C8XX_2 is not set +# CONFIG_SCSI_QLOGIC_1280 is not set +# CONFIG_SCSI_QLA_FC is not set +# CONFIG_SCSI_QLA_ISCSI is not set +# CONFIG_SCSI_LPFC is not set +# CONFIG_SCSI_DC395x is not set +# CONFIG_SCSI_DC390T is not set +# CONFIG_SCSI_NSP32 is not set +# CONFIG_SCSI_DEBUG is not set +# CONFIG_SCSI_SRP is not set +# CONFIG_ATA is not set + +# +# Multi-device support (RAID and LVM) +# +# CONFIG_MD is not set + +# +# Fusion MPT device support +# +# CONFIG_FUSION is not set +# CONFIG_FUSION_SPI is not set +# CONFIG_FUSION_FC is not set +# CONFIG_FUSION_SAS is not set + +# +# IEEE 1394 (FireWire) support +# +# CONFIG_FIREWIRE is not set +# CONFIG_IEEE1394 is not set + +# +# I2O device support +# +# CONFIG_I2O is not set + +# +# Network device support +# +CONFIG_NETDEVICES=y + +# +# Broadcom HND network devices +# +CONFIG_HND=y +CONFIG_ET=m +CONFIG_ET_47XX=y +CONFIG_BCM_CTF=m +# CONFIG_WL_USBAP is not set +# CONFIG_WL_EMULATOR is not set +# CONFIG_BCM57XX is not set +CONFIG_WL=m +# CONFIG_WAPI is not set +# CONFIG_WL_USE_AP is not set +# CONFIG_WL_USE_AP_SDSTD is not set +# CONFIG_WL_USE_STA is not set +CONFIG_WL_USE_APSTA=y +# CONFIG_WL_USE_AP_ONCHIP_G is not set +# CONFIG_WL_USE_STA_ONCHIP_G is not set +# CONFIG_WL_USE_APSTA_ONCHIP_G is not set +CONFIG_WL_AP="wlconfig_lx_router_ap" +CONFIG_WL_AP_SDSTD="wlconfig_lx_router_ap_sdstd" +CONFIG_WL_STA="wlconfig_lx_router_sta" +CONFIG_WL_APSTA="wlconfig_lx_router_apsta" +CONFIG_WL_AP_ONCHIP_G="wlconfig_lx_router_ap_1chipG" +CONFIG_WL_STA_ONCHIP_G="wlconfig_lx_router_sta_1chipG" +CONFIG_WL_HIGH="wlconfig_lx_router_high" +CONFIG_EMF=m +# CONFIG_PLC is not set +# CONFIG_DUMMY is not set +# CONFIG_BONDING is not set +# CONFIG_EQUALIZER is not set +CONFIG_IMQ=m +# CONFIG_IMQ_BEHAVIOR_AA is not set +CONFIG_IMQ_BEHAVIOR_AB=y +# CONFIG_IMQ_BEHAVIOR_BA is not set +# CONFIG_IMQ_BEHAVIOR_BB is not set +CONFIG_IMQ_NUM_DEVS=3 +CONFIG_TUN=m +# CONFIG_ARCNET is not set +# CONFIG_PHYLIB is not set + +# +# Ethernet (10 or 100Mbit) +# +CONFIG_NET_ETHERNET=y +CONFIG_MII=m +# CONFIG_HAPPYMEAL is not set +# CONFIG_SUNGEM is not set +# CONFIG_CASSINI is not set +# CONFIG_NET_VENDOR_3COM is not set +# CONFIG_DM9000 is not set + +# +# Tulip family network device support +# +# CONFIG_NET_TULIP is not set +# CONFIG_HP100 is not set +# CONFIG_NET_PCI is not set +# CONFIG_NETDEV_1000 is not set +# CONFIG_NETDEV_10000 is not set +# CONFIG_TR is not set + +# +# Wireless LAN +# +# CONFIG_WLAN_PRE80211 is not set +# CONFIG_WLAN_80211 is not set + +# +# USB Network Adapters +# +# CONFIG_USB_CATC is not set +# CONFIG_USB_KAWETH is not set +# CONFIG_USB_PEGASUS is not set +# CONFIG_USB_RTL8150 is not set +# CONFIG_USB_USBNET_MII is not set +CONFIG_USB_USBNET=m +# CONFIG_USB_NET_AX8817X is not set +CONFIG_USB_NET_CDCETHER=m +# CONFIG_USB_NET_DM9601 is not set +# CONFIG_USB_NET_GL620A is not set +# CONFIG_USB_NET_NET1080 is not set +# CONFIG_USB_NET_PLUSB is not set +# CONFIG_USB_NET_MCS7830 is not set +CONFIG_USB_NET_RNDIS_HOST=m +# CONFIG_USB_NET_CDC_SUBSET is not set +# CONFIG_USB_NET_ZAURUS is not set +# CONFIG_WAN is not set +# CONFIG_FDDI is not set +# CONFIG_HIPPI is not set +CONFIG_PPP=y +CONFIG_PPP_MULTILINK=y +# CONFIG_PPP_FILTER is not set +CONFIG_PPP_ASYNC=y +CONFIG_PPP_SYNC_TTY=y +CONFIG_PPP_DEFLATE=m +# CONFIG_PPP_BSDCOMP is not set +CONFIG_PPP_MPPE_MPPC=y +CONFIG_PPPOE=y +CONFIG_PPTP=y +CONFIG_PPPOL2TP=y +# CONFIG_SLIP is not set +CONFIG_SLHC=y +# CONFIG_NET_FC is not set +# CONFIG_SHAPER is not set +# CONFIG_NETCONSOLE is not set +# CONFIG_NETPOLL is not set +# CONFIG_NET_POLL_CONTROLLER is not set + +# +# ISDN subsystem +# +# CONFIG_ISDN is not set + +# +# Telephony Support +# +# CONFIG_PHONE is not set + +# +# Input device support +# +CONFIG_INPUT=m +# CONFIG_INPUT_FF_MEMLESS is not set +# CONFIG_INPUT_POLLDEV is not set + +# +# Userland interfaces +# +CONFIG_INPUT_MOUSEDEV=m +CONFIG_INPUT_MOUSEDEV_PSAUX=y +CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024 +CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 +CONFIG_INPUT_JOYDEV=m +# CONFIG_INPUT_TSDEV is not set +CONFIG_INPUT_EVDEV=m +# CONFIG_INPUT_EVBUG is not set + +# +# Input Device Drivers +# +# CONFIG_INPUT_KEYBOARD is not set +# CONFIG_INPUT_MOUSE is not set +# CONFIG_INPUT_JOYSTICK is not set +# CONFIG_INPUT_TABLET is not set +# CONFIG_INPUT_TOUCHSCREEN is not set +# CONFIG_INPUT_MISC is not set + +# +# Hardware I/O ports +# +# CONFIG_SERIO is not set +# CONFIG_GAMEPORT is not set + +# +# Character devices +# +# CONFIG_VT is not set +CONFIG_SERIAL_NONSTANDARD=y +# CONFIG_COMPUTONE is not set +# CONFIG_ROCKETPORT is not set +# CONFIG_CYCLADES is not set +# CONFIG_DIGIEPCA is not set +# CONFIG_MOXA_INTELLIO is not set +# CONFIG_MOXA_SMARTIO is not set +# CONFIG_MOXA_SMARTIO_NEW is not set +# CONFIG_ISI is not set +# CONFIG_SYNCLINKMP is not set +# CONFIG_SYNCLINK_GT is not set +CONFIG_N_HDLC=y +# CONFIG_RISCOM8 is not set +# CONFIG_SPECIALIX is not set +# CONFIG_SX is not set +# CONFIG_RIO is not set +# CONFIG_STALDRV is not set + +# +# Serial drivers +# +CONFIG_SERIAL_8250=y +CONFIG_SERIAL_8250_CONSOLE=y +CONFIG_SERIAL_8250_PCI=y +CONFIG_SERIAL_8250_NR_UARTS=4 +CONFIG_SERIAL_8250_RUNTIME_UARTS=2 +# CONFIG_SERIAL_8250_EXTENDED is not set + +# +# Non-8250 serial port support +# +CONFIG_SERIAL_CORE=y +CONFIG_SERIAL_CORE_CONSOLE=y +# CONFIG_SERIAL_JSM is not set +CONFIG_UNIX98_PTYS=y +CONFIG_LEGACY_PTYS=y +CONFIG_LEGACY_PTY_COUNT=16 + +# +# IPMI +# +# CONFIG_IPMI_HANDLER is not set +# CONFIG_WATCHDOG is not set +# CONFIG_HW_RANDOM is not set +# CONFIG_RTC is not set +# CONFIG_GEN_RTC is not set +# CONFIG_R3964 is not set +# CONFIG_APPLICOM is not set +# CONFIG_DRM is not set +# CONFIG_RAW_DRIVER is not set + +# +# TPM devices +# +# CONFIG_TCG_TPM is not set +CONFIG_DEVPORT=y +# CONFIG_I2C is not set + +# +# SPI support +# +# CONFIG_SPI is not set +# CONFIG_SPI_MASTER is not set + +# +# Dallas's 1-wire bus +# +# CONFIG_W1 is not set +# CONFIG_HWMON is not set + +# +# Multifunction device drivers +# +# CONFIG_MFD_SM501 is not set + +# +# Multimedia devices +# +CONFIG_VIDEO_DEV=m +# CONFIG_VIDEO_V4L1 is not set +# CONFIG_VIDEO_V4L1_COMPAT is not set +CONFIG_VIDEO_V4L2=y +CONFIG_VIDEO_CAPTURE_DRIVERS=y +# CONFIG_VIDEO_ADV_DEBUG is not set +CONFIG_VIDEO_HELPER_CHIPS_AUTO=y +# CONFIG_VIDEO_VIVI is not set +CONFIG_V4L_USB_DRIVERS=y +CONFIG_USB_GSPCA=m +CONFIG_USB_M5602=m +CONFIG_USB_STV06XX=m +CONFIG_USB_GL860=m +CONFIG_USB_GSPCA_CONEX=m +CONFIG_USB_GSPCA_ETOMS=m +CONFIG_USB_GSPCA_FINEPIX=m +CONFIG_USB_GSPCA_JEILINJ=m +CONFIG_USB_GSPCA_MARS=m +CONFIG_USB_GSPCA_MR97310A=m +CONFIG_USB_GSPCA_OV519=m +CONFIG_USB_GSPCA_OV534=m +CONFIG_USB_GSPCA_PAC207=m +CONFIG_USB_GSPCA_PAC7311=m +CONFIG_USB_GSPCA_SN9C20X=m +CONFIG_USB_GSPCA_SN9C20X_EVDEV=y +CONFIG_USB_GSPCA_SONIXB=m +CONFIG_USB_GSPCA_SONIXJ=m +CONFIG_USB_GSPCA_SPCA500=m +CONFIG_USB_GSPCA_SPCA501=m +CONFIG_USB_GSPCA_SPCA505=m +CONFIG_USB_GSPCA_SPCA506=m +CONFIG_USB_GSPCA_SPCA508=m +CONFIG_USB_GSPCA_SPCA561=m +CONFIG_USB_GSPCA_SQ905=m +CONFIG_USB_GSPCA_SQ905C=m +CONFIG_USB_GSPCA_STK014=m +CONFIG_USB_GSPCA_SUNPLUS=m +CONFIG_USB_GSPCA_T613=m +CONFIG_USB_GSPCA_TV8532=m +CONFIG_USB_GSPCA_VC032X=m +CONFIG_USB_GSPCA_ZC3XX=m +# CONFIG_USB_SN9C102 is not set +CONFIG_USB_PWC=m +# CONFIG_USB_PWC_DEBUG is not set +CONFIG_USB_PWC_INPUT_EVDEV=y +# CONFIG_USB_ZR364XX is not set +CONFIG_USB_VIDEO_CLASS=m +CONFIG_USB_VIDEO_CLASS_INPUT_EVDEV=y +# CONFIG_RADIO_ADAPTERS is not set +# CONFIG_DVB_CORE is not set +# CONFIG_DAB is not set + +# +# Graphics support +# +# CONFIG_BACKLIGHT_LCD_SUPPORT is not set + +# +# Display device support +# +# CONFIG_DISPLAY_SUPPORT is not set +# CONFIG_VGASTATE is not set +# CONFIG_FB is not set + +# +# Sound +# +CONFIG_SOUND=m + +# +# Advanced Linux Sound Architecture +# +CONFIG_SND=m +CONFIG_SND_TIMER=m +CONFIG_SND_PCM=m +CONFIG_SND_HWDEP=m +CONFIG_SND_RAWMIDI=m +CONFIG_SND_SEQUENCER=m +# CONFIG_SND_SEQ_DUMMY is not set +CONFIG_SND_OSSEMUL=y +CONFIG_SND_MIXER_OSS=m +CONFIG_SND_PCM_OSS=m +CONFIG_SND_PCM_OSS_PLUGINS=y +# CONFIG_SND_SEQUENCER_OSS is not set +# CONFIG_SND_DYNAMIC_MINORS is not set +CONFIG_SND_SUPPORT_OLD_API=y +# CONFIG_SND_VERBOSE_PROCFS is not set +# CONFIG_SND_VERBOSE_PRINTK is not set +# CONFIG_SND_DEBUG is not set + +# +# Generic devices +# +# CONFIG_SND_DUMMY is not set +# CONFIG_SND_VIRMIDI is not set +# CONFIG_SND_MTPAV is not set +# CONFIG_SND_SERIAL_U16550 is not set +# CONFIG_SND_MPU401 is not set + +# +# PCI devices +# +# CONFIG_SND_AD1889 is not set +# CONFIG_SND_ALS300 is not set +# CONFIG_SND_ALI5451 is not set +# CONFIG_SND_ATIIXP is not set +# CONFIG_SND_ATIIXP_MODEM is not set +# CONFIG_SND_AU8810 is not set +# CONFIG_SND_AU8820 is not set +# CONFIG_SND_AU8830 is not set +# CONFIG_SND_AZT3328 is not set +# CONFIG_SND_BT87X is not set +# CONFIG_SND_CA0106 is not set +# CONFIG_SND_CMIPCI is not set +# CONFIG_SND_CS4281 is not set +# CONFIG_SND_CS46XX is not set +# CONFIG_SND_DARLA20 is not set +# CONFIG_SND_GINA20 is not set +# CONFIG_SND_LAYLA20 is not set +# CONFIG_SND_DARLA24 is not set +# CONFIG_SND_GINA24 is not set +# CONFIG_SND_LAYLA24 is not set +# CONFIG_SND_MONA is not set +# CONFIG_SND_MIA is not set +# CONFIG_SND_ECHO3G is not set +# CONFIG_SND_INDIGO is not set +# CONFIG_SND_INDIGOIO is not set +# CONFIG_SND_INDIGODJ is not set +# CONFIG_SND_EMU10K1 is not set +# CONFIG_SND_EMU10K1X is not set +# CONFIG_SND_ENS1370 is not set +# CONFIG_SND_ENS1371 is not set +# CONFIG_SND_ES1938 is not set +# CONFIG_SND_ES1968 is not set +# CONFIG_SND_FM801 is not set +# CONFIG_SND_HDA_INTEL is not set +# CONFIG_SND_HDSP is not set +# CONFIG_SND_HDSPM is not set +# CONFIG_SND_ICE1712 is not set +# CONFIG_SND_ICE1724 is not set +# CONFIG_SND_INTEL8X0 is not set +# CONFIG_SND_INTEL8X0M is not set +# CONFIG_SND_KORG1212 is not set +# CONFIG_SND_MAESTRO3 is not set +# CONFIG_SND_MIXART is not set +# CONFIG_SND_NM256 is not set +# CONFIG_SND_PCXHR is not set +# CONFIG_SND_RIPTIDE is not set +# CONFIG_SND_RME32 is not set +# CONFIG_SND_RME96 is not set +# CONFIG_SND_RME9652 is not set +# CONFIG_SND_SONICVIBES is not set +# CONFIG_SND_TRIDENT is not set +# CONFIG_SND_VIA82XX is not set +# CONFIG_SND_VIA82XX_MODEM is not set +# CONFIG_SND_VX222 is not set +# CONFIG_SND_YMFPCI is not set + +# +# ALSA MIPS devices +# + +# +# USB devices +# +CONFIG_SND_USB_AUDIO=m +# CONFIG_SND_USB_CAIAQ is not set + +# +# System on Chip audio support +# +# CONFIG_SND_SOC is not set + +# +# Open Sound System +# +# CONFIG_SOUND_PRIME is not set + +# +# HID Devices +# +CONFIG_HID=m +# CONFIG_HID_DEBUG is not set + +# +# USB Input Devices +# +CONFIG_USB_HID=m +# CONFIG_USB_HIDINPUT_POWERBOOK is not set +# CONFIG_HID_FF is not set +CONFIG_USB_HIDDEV=y + +# +# USB HID Boot Protocol drivers +# +CONFIG_USB_KBD=m +CONFIG_USB_MOUSE=m +CONFIG_USB_SUPPORT=y +CONFIG_USB_ARCH_HAS_HCD=y +CONFIG_USB_ARCH_HAS_OHCI=y +CONFIG_USB_ARCH_HAS_EHCI=y +CONFIG_USB=m +# CONFIG_USB_DEBUG is not set +# CONFIG_USB_ANNOUNCE_NEW_DEVICES is not set + +# +# Miscellaneous USB options +# +CONFIG_USB_DEVICEFS=y +CONFIG_USB_DEVICE_CLASS=y +# CONFIG_USB_DYNAMIC_MINORS is not set +# CONFIG_USB_OTG is not set + +# +# USB Host Controller Drivers +# +CONFIG_USB_EHCI_HCD=m +CONFIG_USB_EHCI_ROOT_HUB_TT=y +CONFIG_USB_EHCI_TT_NEWSCHED=y +# CONFIG_USB_ISP116X_HCD is not set +CONFIG_USB_OHCI_HCD=m +# CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set +# CONFIG_USB_OHCI_BIG_ENDIAN_MMIO is not set +CONFIG_USB_OHCI_LITTLE_ENDIAN=y +CONFIG_USB_UHCI_HCD=m +# CONFIG_USB_SL811_HCD is not set +# CONFIG_USB_R8A66597_HCD is not set + +# +# USB Device Class drivers +# +CONFIG_USB_ACM=m +CONFIG_USB_PRINTER=m + +# +# NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' +# + +# +# may also be needed; see USB_STORAGE Help for more information +# +CONFIG_USB_STORAGE=m +# CONFIG_USB_STORAGE_DEBUG is not set +# CONFIG_USB_STORAGE_DATAFAB is not set +# CONFIG_USB_STORAGE_FREECOM is not set +# CONFIG_USB_STORAGE_DPCM is not set +# CONFIG_USB_STORAGE_USBAT is not set +# CONFIG_USB_STORAGE_SDDR09 is not set +# CONFIG_USB_STORAGE_SDDR55 is not set +# CONFIG_USB_STORAGE_JUMPSHOT is not set +# CONFIG_USB_STORAGE_ALAUDA is not set +# CONFIG_USB_STORAGE_ONETOUCH is not set +# CONFIG_USB_STORAGE_KARMA is not set +# CONFIG_USB_LIBUSUAL is not set + +# +# USB Imaging devices +# +# CONFIG_USB_MDC800 is not set +# CONFIG_USB_MICROTEK is not set +# CONFIG_USB_MON is not set + +# +# USB port drivers +# +CONFIG_USB_SERIAL=m +# CONFIG_USB_EZUSB is not set +CONFIG_USB_SERIAL_GENERIC=y +# CONFIG_USB_SERIAL_AIRCABLE is not set +# CONFIG_USB_SERIAL_AIRPRIME is not set +# CONFIG_USB_SERIAL_ARK3116 is not set +# CONFIG_USB_SERIAL_BELKIN is not set +# CONFIG_USB_SERIAL_WHITEHEAT is not set +# CONFIG_USB_SERIAL_DIGI_ACCELEPORT is not set +# CONFIG_USB_SERIAL_CP2101 is not set +# CONFIG_USB_SERIAL_CYPRESS_M8 is not set +# CONFIG_USB_SERIAL_EMPEG is not set +CONFIG_USB_SERIAL_FTDI_SIO=m +# CONFIG_USB_SERIAL_FUNSOFT is not set +# CONFIG_USB_SERIAL_VISOR is not set +# CONFIG_USB_SERIAL_IPAQ is not set +# CONFIG_USB_SERIAL_IR is not set +# CONFIG_USB_SERIAL_EDGEPORT is not set +# CONFIG_USB_SERIAL_EDGEPORT_TI is not set +# CONFIG_USB_SERIAL_GARMIN is not set +# CONFIG_USB_SERIAL_IPW is not set +# CONFIG_USB_SERIAL_KEYSPAN_PDA is not set +# CONFIG_USB_SERIAL_KEYSPAN is not set +# CONFIG_USB_SERIAL_KLSI is not set +# CONFIG_USB_SERIAL_KOBIL_SCT is not set +# CONFIG_USB_SERIAL_MCT_U232 is not set +# CONFIG_USB_SERIAL_MOS7720 is not set +# CONFIG_USB_SERIAL_MOS7840 is not set +# CONFIG_USB_SERIAL_NAVMAN is not set +CONFIG_USB_SERIAL_PL2303=m +# CONFIG_USB_SERIAL_OTI6858 is not set +# CONFIG_USB_SERIAL_HP4X is not set +# CONFIG_USB_SERIAL_SAFE is not set +CONFIG_USB_SERIAL_SIERRAWIRELESS=m +# CONFIG_USB_SERIAL_TI is not set +# CONFIG_USB_SERIAL_CYBERJACK is not set +# CONFIG_USB_SERIAL_XIRCOM is not set +CONFIG_USB_SERIAL_OPTION=m +# CONFIG_USB_SERIAL_OMNINET is not set +# CONFIG_USB_SERIAL_DEBUG is not set + +# +# USB Miscellaneous drivers +# +# CONFIG_USB_EMI62 is not set +# CONFIG_USB_EMI26 is not set +# CONFIG_USB_ADUTUX is not set +# CONFIG_USB_AUERSWALD is not set +# CONFIG_USB_RIO500 is not set +# CONFIG_USB_LEGOTOWER is not set +# CONFIG_USB_LCD is not set +# CONFIG_USB_LED is not set +# CONFIG_USB_CYPRESS_CY7C63 is not set +# CONFIG_USB_CYTHERM is not set +# CONFIG_USB_PHIDGET is not set +# CONFIG_USB_IDMOUSE is not set +# CONFIG_USB_FTDI_ELAN is not set +# CONFIG_USB_APPLEDISPLAY is not set +# CONFIG_USB_SISUSBVGA is not set +# CONFIG_USB_LD is not set +# CONFIG_USB_TRANCEVIBRATOR is not set +# CONFIG_USB_IOWARRIOR is not set +# CONFIG_USB_TEST is not set +# CONFIG_USB_GADGET is not set +CONFIG_USB_IP_COMMON=m +# CONFIG_USB_IP_VHCI_HCD is not set +CONFIG_USB_IP_HOST=m +# CONFIG_USB_IP_DEBUG_ENABLE is not set +CONFIG_MMC=m +# CONFIG_MMC_DEBUG is not set +# CONFIG_MMC_UNSAFE_RESUME is not set + +# +# MMC/SD Card Drivers +# +CONFIG_MMC_BLOCK=m + +# +# MMC/SD Host Controller Drivers +# +CONFIG_MMC_SDHCI=m +# CONFIG_MMC_TIFM_SD is not set + +# +# LED devices +# +CONFIG_NEW_LEDS=y +CONFIG_LEDS_CLASS=m + +# +# LED drivers +# +CONFIG_LEDS_USBGPIO=m + +# +# LED Triggers +# +CONFIG_LEDS_TRIGGERS=y +# CONFIG_LEDS_TRIGGER_TIMER is not set +# CONFIG_LEDS_TRIGGER_HEARTBEAT is not set +CONFIG_LEDS_TRIGGER_USBDEV=m + +# +# InfiniBand support +# +# CONFIG_INFINIBAND is not set + +# +# EDAC - error detection and reporting (RAS) (EXPERIMENTAL) +# + +# +# Real Time Clock +# +# CONFIG_RTC_CLASS is not set + +# +# DMA Engine support +# +# CONFIG_DMA_ENGINE is not set + +# +# DMA Clients +# + +# +# DMA Devices +# + +# +# File systems +# +CONFIG_EXT2_FS=m +CONFIG_EXT2_FS_XATTR=y +# CONFIG_EXT2_FS_POSIX_ACL is not set +# CONFIG_EXT2_FS_SECURITY is not set +# CONFIG_EXT2_FS_XIP is not set +CONFIG_EXT3_FS=m +CONFIG_EXT3_FS_XATTR=y +# CONFIG_EXT3_FS_POSIX_ACL is not set +# CONFIG_EXT3_FS_SECURITY is not set +# CONFIG_EXT4DEV_FS is not set +CONFIG_JBD=m +# CONFIG_JBD_DEBUG is not set +CONFIG_FS_MBCACHE=m +CONFIG_REISERFS_FS=m +# CONFIG_REISERFS_CHECK is not set +CONFIG_REISERFS_PROC_INFO=y +CONFIG_REISERFS_FS_XATTR=y +# CONFIG_REISERFS_FS_POSIX_ACL is not set +# CONFIG_REISERFS_FS_SECURITY is not set +CONFIG_JFS_FS=m +# CONFIG_JFS_POSIX_ACL is not set +# CONFIG_JFS_SECURITY is not set +# CONFIG_JFS_DEBUG is not set +CONFIG_JFS_STATISTICS=y +# CONFIG_FS_POSIX_ACL is not set +CONFIG_XFS_FS=m +# CONFIG_XFS_QUOTA is not set +# CONFIG_XFS_SECURITY is not set +# CONFIG_XFS_POSIX_ACL is not set +# CONFIG_XFS_RT is not set +# CONFIG_GFS2_FS is not set +# CONFIG_OCFS2_FS is not set +# CONFIG_MINIX_FS is not set +# CONFIG_ROMFS_FS is not set +CONFIG_INOTIFY=y +CONFIG_INOTIFY_USER=y +# CONFIG_QUOTA is not set +CONFIG_DNOTIFY=y +# CONFIG_AUTOFS_FS is not set +# CONFIG_AUTOFS4_FS is not set +CONFIG_FUSE_FS=m + +# +# CD-ROM/DVD Filesystems +# +# CONFIG_ISO9660_FS is not set +# CONFIG_UDF_FS is not set + +# +# DOS/FAT/NT Filesystems +# +CONFIG_FAT_FS=m +# CONFIG_MSDOS_FS is not set +CONFIG_VFAT_FS=m +CONFIG_FAT_DEFAULT_CODEPAGE=437 +CONFIG_FAT_DEFAULT_IOCHARSET="utf8" +# CONFIG_NTFS_FS is not set + +# +# Pseudo filesystems +# +CONFIG_PROC_FS=y +# CONFIG_PROC_KCORE is not set +CONFIG_PROC_SYSCTL=y +CONFIG_SYSFS=y +CONFIG_TMPFS=y +# CONFIG_TMPFS_POSIX_ACL is not set +# CONFIG_HUGETLB_PAGE is not set +CONFIG_RAMFS=y +CONFIG_CONFIGFS_FS=y + +# +# Miscellaneous filesystems +# +# CONFIG_ADFS_FS is not set +# CONFIG_AFFS_FS is not set +CONFIG_HFS_FS=m +CONFIG_HFSPLUS_FS=m +# CONFIG_BEFS_FS is not set +# CONFIG_BFS_FS is not set +# CONFIG_EFS_FS is not set +CONFIG_JFFS_FS=m +CONFIG_JFFS_FS_VERBOSE=0 +# CONFIG_JFFS_PROC_FS is not set +CONFIG_JFFS2_FS=m +CONFIG_JFFS2_FS_DEBUG=0 +CONFIG_JFFS2_FS_WRITEBUFFER=y +# CONFIG_JFFS2_SUMMARY is not set +# CONFIG_JFFS2_FS_XATTR is not set +CONFIG_JFFS2_COMPRESSION_OPTIONS=y +CONFIG_JFFS2_ZLIB=y +# CONFIG_JFFS2_LZO is not set +# CONFIG_JFFS2_RTIME is not set +# CONFIG_JFFS2_RUBIN is not set +# CONFIG_JFFS2_CMODE_NONE is not set +CONFIG_JFFS2_CMODE_PRIORITY=y +# CONFIG_JFFS2_CMODE_SIZE is not set +# CONFIG_CRAMFS is not set +CONFIG_SQUASHFS=y +# CONFIG_SQUASHFS_EMBEDDED is not set +CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE=3 +# CONFIG_SQUASHFS_VMALLOC is not set +# CONFIG_VXFS_FS is not set +# CONFIG_HPFS_FS is not set +# CONFIG_QNX4FS_FS is not set +# CONFIG_SYSV_FS is not set +# CONFIG_UFS_FS is not set + +# +# Network File Systems +# +CONFIG_NFS_FS=m +CONFIG_NFS_V3=y +# CONFIG_NFS_V3_ACL is not set +# CONFIG_NFS_V4 is not set +# CONFIG_NFS_DIRECTIO is not set +CONFIG_NFSD=m +CONFIG_NFSD_V3=y +# CONFIG_NFSD_V3_ACL is not set +# CONFIG_NFSD_V4 is not set +CONFIG_NFSD_TCP=y +CONFIG_LOCKD=m +CONFIG_LOCKD_V4=y +CONFIG_EXPORTFS=m +CONFIG_NFS_COMMON=y +CONFIG_SUNRPC=m +CONFIG_SUNRPC_BIND34=y +# CONFIG_RPCSEC_GSS_KRB5 is not set +# CONFIG_RPCSEC_GSS_SPKM3 is not set +# CONFIG_SMB_FS is not set +CONFIG_CIFS=m +# CONFIG_CIFS_STATS is not set +CONFIG_CIFS_WEAK_PW_HASH=y +# CONFIG_CIFS_XATTR is not set +# CONFIG_CIFS_DEBUG2 is not set +# CONFIG_CIFS_EXPERIMENTAL is not set +# CONFIG_NCP_FS is not set +# CONFIG_CODA_FS is not set +# CONFIG_AFS_FS is not set +# CONFIG_9P_FS is not set + +# +# Partition Types +# +CONFIG_PARTITION_ADVANCED=y +# CONFIG_ACORN_PARTITION is not set +# CONFIG_OSF_PARTITION is not set +# CONFIG_AMIGA_PARTITION is not set +# CONFIG_ATARI_PARTITION is not set +# CONFIG_MAC_PARTITION is not set +CONFIG_MSDOS_PARTITION=y +# CONFIG_BSD_DISKLABEL is not set +# CONFIG_MINIX_SUBPARTITION is not set +# CONFIG_SOLARIS_X86_PARTITION is not set +# CONFIG_UNIXWARE_DISKLABEL is not set +# CONFIG_LDM_PARTITION is not set +# CONFIG_SGI_PARTITION is not set +# CONFIG_ULTRIX_PARTITION is not set +# CONFIG_SUN_PARTITION is not set +# CONFIG_KARMA_PARTITION is not set +CONFIG_EFI_PARTITION=y +# CONFIG_SYSV68_PARTITION is not set + +# +# Native Language Support +# +CONFIG_NLS=y +CONFIG_NLS_DEFAULT="utf8" +CONFIG_NLS_CODEPAGE_437=m +# CONFIG_NLS_CODEPAGE_737 is not set +# CONFIG_NLS_CODEPAGE_775 is not set +CONFIG_NLS_CODEPAGE_850=m +CONFIG_NLS_CODEPAGE_852=m +# CONFIG_NLS_CODEPAGE_855 is not set +# CONFIG_NLS_CODEPAGE_857 is not set +# CONFIG_NLS_CODEPAGE_860 is not set +# CONFIG_NLS_CODEPAGE_861 is not set +# CONFIG_NLS_CODEPAGE_862 is not set +# CONFIG_NLS_CODEPAGE_863 is not set +# CONFIG_NLS_CODEPAGE_864 is not set +# CONFIG_NLS_CODEPAGE_865 is not set +CONFIG_NLS_CODEPAGE_866=m +# CONFIG_NLS_CODEPAGE_869 is not set +CONFIG_NLS_CODEPAGE_936=m +CONFIG_NLS_CODEPAGE_950=m +CONFIG_NLS_CODEPAGE_932=m +CONFIG_NLS_CODEPAGE_949=m +# CONFIG_NLS_CODEPAGE_874 is not set +# CONFIG_NLS_ISO8859_8 is not set +# CONFIG_NLS_CODEPAGE_1250 is not set +# CONFIG_NLS_CODEPAGE_1251 is not set +# CONFIG_NLS_ASCII is not set +# CONFIG_NLS_ISO8859_1 is not set +# CONFIG_NLS_ISO8859_2 is not set +# CONFIG_NLS_ISO8859_3 is not set +# CONFIG_NLS_ISO8859_4 is not set +# CONFIG_NLS_ISO8859_5 is not set +# CONFIG_NLS_ISO8859_6 is not set +# CONFIG_NLS_ISO8859_7 is not set +# CONFIG_NLS_ISO8859_9 is not set +# CONFIG_NLS_ISO8859_13 is not set +# CONFIG_NLS_ISO8859_14 is not set +# CONFIG_NLS_ISO8859_15 is not set +# CONFIG_NLS_KOI8_R is not set +# CONFIG_NLS_KOI8_U is not set +CONFIG_NLS_UTF8=y + +# +# Distributed Lock Manager +# +# CONFIG_DLM is not set + +# +# Profiling support +# +# CONFIG_PROFILING is not set + +# +# Kernel hacking +# +CONFIG_TRACE_IRQFLAGS_SUPPORT=y +# CONFIG_PRINTK_TIME is not set +CONFIG_ENABLE_MUST_CHECK=y +CONFIG_MAGIC_SYSRQ=y +# CONFIG_UNUSED_SYMBOLS is not set +# CONFIG_DEBUG_FS is not set +# CONFIG_HEADERS_CHECK is not set +# CONFIG_DEBUG_KERNEL is not set +# CONFIG_HWSIM is not set +CONFIG_CROSSCOMPILE=y +CONFIG_CMDLINE="root=/dev/mtdblock2 noinitrd console=ttyS0,115200" +CONFIG_SYS_SUPPORTS_KGDB=y + +# +# Security options +# +# CONFIG_KEYS is not set +# CONFIG_SECURITY is not set + +# +# Cryptographic options +# +CONFIG_CRYPTO=y +CONFIG_CRYPTO_ALGAPI=y +CONFIG_CRYPTO_BLKCIPHER=y +CONFIG_CRYPTO_HASH=y +CONFIG_CRYPTO_MANAGER=y +CONFIG_CRYPTO_HMAC=y +CONFIG_CRYPTO_XCBC=m +CONFIG_CRYPTO_NULL=m +CONFIG_CRYPTO_MD4=m +CONFIG_CRYPTO_MD5=m +CONFIG_CRYPTO_SHA1=y +CONFIG_CRYPTO_SHA256=m +CONFIG_CRYPTO_SHA512=m +# CONFIG_CRYPTO_WP512 is not set +# CONFIG_CRYPTO_TGR192 is not set +# CONFIG_CRYPTO_GF128MUL is not set +CONFIG_CRYPTO_ECB=y +CONFIG_CRYPTO_CBC=y +# CONFIG_CRYPTO_PCBC is not set +# CONFIG_CRYPTO_LRW is not set +# CONFIG_CRYPTO_CRYPTD is not set +CONFIG_CRYPTO_DES=m +# CONFIG_CRYPTO_FCRYPT is not set +CONFIG_CRYPTO_BLOWFISH=m +CONFIG_CRYPTO_TWOFISH=m +CONFIG_CRYPTO_TWOFISH_COMMON=m +CONFIG_CRYPTO_SERPENT=m +CONFIG_CRYPTO_AES=m +CONFIG_CRYPTO_CAST5=m +CONFIG_CRYPTO_CAST6=m +CONFIG_CRYPTO_TEA=m +CONFIG_CRYPTO_ARC4=y +# CONFIG_CRYPTO_KHAZAD is not set +# CONFIG_CRYPTO_ANUBIS is not set +CONFIG_CRYPTO_DEFLATE=m +# CONFIG_CRYPTO_MICHAEL_MIC is not set +# CONFIG_CRYPTO_CRC32C is not set +# CONFIG_CRYPTO_CAMELLIA is not set +# CONFIG_CRYPTO_TEST is not set + +# +# Hardware crypto devices +# + +# +# Library routines +# +CONFIG_BITREVERSE=y +CONFIG_CRC_CCITT=y +# CONFIG_CRC16 is not set +# CONFIG_CRC_ITU_T is not set +CONFIG_CRC32=y +# CONFIG_LIBCRC32C is not set +CONFIG_ZLIB_INFLATE=m +CONFIG_ZLIB_DEFLATE=m +CONFIG_TEXTSEARCH=y +CONFIG_TEXTSEARCH_KMP=y +CONFIG_TEXTSEARCH_BM=y +CONFIG_TEXTSEARCH_FSM=y +CONFIG_PLIST=y +CONFIG_HAS_IOMEM=y +CONFIG_HAS_IOPORT=y +CONFIG_HAS_DMA=y diff --git a/release/src-rt/linux/linux-2.6/scripts/squashfs/linux b/release/src-rt/linux/linux-2.6/scripts/squashfs/linux new file mode 120000 index 0000000000..577dd656e5 --- /dev/null +++ b/release/src-rt/linux/linux-2.6/scripts/squashfs/linux @@ -0,0 +1 @@ +../../include/linux \ No newline at end of file diff --git a/release/src-rt/shared/.aiutils.o.cmd b/release/src-rt/shared/.aiutils.o.cmd new file mode 100644 index 0000000000..9581c84931 --- /dev/null +++ b/release/src-rt/shared/.aiutils.o.cmd @@ -0,0 +1,536 @@ +cmd_drivers/net/hnd/../../../../../shared/aiutils.o := mipsel-uclibc-gcc -Wp,-MD,drivers/net/hnd/../../../../../shared/.aiutils.o.d -nostdinc -isystem /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include -D__KERNEL__ -Iinclude -include include/linux/autoconf.h -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Werror-implicit-function-declaration -Wno-format-security -fno-delete-null-pointer-checks -I/home/vicente/repos/tomato/release/src-rt/include -DBCMDRIVER -Dlinux -O2 -ffunction-sections -mno-check-zero-division -mabi=32 -G 0 -mno-abicalls -fno-pic -pipe -msoft-float -ggdb -ffreestanding -march=mips32r2 -Wa,-mips32r2 -Wa,--trap -Iinclude/asm-mips/mach-generic -fomit-frame-pointer -fno-stack-protector -funit-at-a-time -Wdeclaration-after-statement -Wno-pointer-sign -fno-strict-overflow -DHNDCTF -DCTFPOOL -DCTFMAP -DBCMDBG_TRAP -DWLC_LOW -DWLC_HIGH -DBCMDMA32 -DBCMNVRAMR -DPHY_HAL -DPHY_HAL -DBCM5354 -DLINUX_HYBRID_POSTPROCESSING_REMOVAL -D"KBUILD_STR(s)=\#s" -D"KBUILD_BASENAME=KBUILD_STR(aiutils)" -D"KBUILD_MODNAME=KBUILD_STR(hnd)" -c -o drivers/net/hnd/../../../../../shared/aiutils.o drivers/net/hnd/../../../../../shared/aiutils.c + +deps_drivers/net/hnd/../../../../../shared/aiutils.o := \ + drivers/net/hnd/../../../../../shared/aiutils.c \ + /home/vicente/repos/tomato/release/src-rt/include/typedefs.h \ + include/linux/version.h \ + include/linux/types.h \ + $(wildcard include/config/uid16.h) \ + $(wildcard include/config/lbd.h) \ + $(wildcard include/config/lsf.h) \ + $(wildcard include/config/resources/64bit.h) \ + include/linux/posix_types.h \ + include/linux/stddef.h \ + include/linux/compiler.h \ + $(wildcard include/config/enable/must/check.h) \ + include/linux/compiler-gcc4.h \ + $(wildcard include/config/forced/inlining.h) \ + include/linux/compiler-gcc.h \ + include/asm/posix_types.h \ + include/asm/sgidefs.h \ + include/asm/types.h \ + $(wildcard include/config/highmem.h) \ + $(wildcard include/config/64bit/phys/addr.h) \ + $(wildcard include/config/64bit.h) \ + /home/vicente/repos/tomato/release/src-rt/include/bcmdefs.h \ + /home/vicente/repos/tomato/release/src-rt/include/osl.h \ + /home/vicente/repos/tomato/release/src-rt/include/linux_osl.h \ + $(wildcard include/config/mmc/msm7x00a.h) \ + /home/vicente/repos/tomato/release/src-rt/include/linuxver.h \ + $(wildcard include/config/net/radio.h) \ + $(wildcard include/config/wireless/ext.h) \ + $(wildcard include/config/pcmcia.h) \ + $(wildcard include/config/rfkill.h) \ + include/linux/module.h \ + $(wildcard include/config/modules.h) \ + $(wildcard include/config/modversions.h) \ + $(wildcard include/config/unused/symbols.h) \ + $(wildcard include/config/generic/bug.h) \ + $(wildcard include/config/module/unload.h) \ + $(wildcard include/config/kallsyms.h) \ + $(wildcard include/config/sysfs.h) \ + include/linux/spinlock.h \ + $(wildcard include/config/smp.h) \ + $(wildcard include/config/debug/spinlock.h) \ + $(wildcard include/config/preempt.h) \ + $(wildcard include/config/debug/lock/alloc.h) \ + include/linux/preempt.h \ + $(wildcard include/config/debug/preempt.h) \ + include/linux/thread_info.h \ + include/linux/bitops.h \ + include/asm/bitops.h \ + $(wildcard include/config/cpu/mipsr2.h) \ + $(wildcard include/config/cpu/mips64.h) \ + $(wildcard include/config/cpu/mips32.h) \ + include/linux/irqflags.h \ + $(wildcard include/config/trace/irqflags.h) \ + $(wildcard include/config/trace/irqflags/support.h) \ + $(wildcard include/config/x86.h) \ + include/asm/irqflags.h \ + $(wildcard include/config/mips/mt/smtc.h) \ + $(wildcard include/config/irq/cpu.h) \ + $(wildcard include/config/mips/mt/smtc/instant/replay.h) \ + include/asm/hazards.h \ + $(wildcard include/config/cpu/mipsr1.h) \ + $(wildcard include/config/cpu/r10000.h) \ + $(wildcard include/config/cpu/rm9000.h) \ + $(wildcard include/config/cpu/sb1.h) \ + include/asm/cpu-features.h \ + $(wildcard include/config/32bit.h) \ + $(wildcard include/config/cpu/mipsr2/irq/vi.h) \ + $(wildcard include/config/cpu/mipsr2/irq/ei.h) \ + include/asm/cpu.h \ + include/asm/cpu-info.h \ + $(wildcard include/config/sgi/ip27.h) \ + $(wildcard include/config/mips/mt.h) \ + include/asm/cache.h \ + $(wildcard include/config/mips/l1/cache/shift.h) \ + include/asm-mips/mach-generic/kmalloc.h \ + $(wildcard include/config/dma/coherent.h) \ + include/asm-mips/mach-generic/cpu-feature-overrides.h \ + include/asm/barrier.h \ + $(wildcard include/config/cpu/has/sync.h) \ + $(wildcard include/config/cpu/has/wb.h) \ + $(wildcard include/config/weak/ordering.h) \ + include/asm/bug.h \ + $(wildcard include/config/bug.h) \ + include/asm/break.h \ + include/asm-generic/bug.h \ + $(wildcard include/config/debug/bugverbose.h) \ + include/asm/byteorder.h \ + $(wildcard include/config/cpu/mips64/r2.h) \ + include/linux/byteorder/little_endian.h \ + include/linux/byteorder/swab.h \ + include/linux/byteorder/generic.h \ + include/asm/war.h \ + $(wildcard include/config/sgi/ip22.h) \ + $(wildcard include/config/sni/rm.h) \ + $(wildcard include/config/cpu/r5432.h) \ + $(wildcard include/config/sb1/pass/1/workarounds.h) \ + $(wildcard include/config/sb1/pass/2/workarounds.h) \ + $(wildcard include/config/mips/malta.h) \ + $(wildcard include/config/mips/atlas.h) \ + $(wildcard include/config/mips/sead.h) \ + $(wildcard include/config/cpu/tx49xx.h) \ + $(wildcard include/config/momenco/jaguar/atx.h) \ + $(wildcard include/config/pmc/yosemite.h) \ + $(wildcard include/config/basler/excite.h) \ + $(wildcard include/config/momenco/ocelot.h) \ + $(wildcard include/config/momenco/ocelot/3.h) \ + $(wildcard include/config/momenco/ocelot/c.h) \ + $(wildcard include/config/sgi/ip32.h) \ + $(wildcard include/config/wr/ppmc.h) \ + include/asm-generic/bitops/non-atomic.h \ + include/asm-generic/bitops/fls64.h \ + include/asm-generic/bitops/ffz.h \ + include/asm-generic/bitops/find.h \ + include/asm-generic/bitops/sched.h \ + include/asm-generic/bitops/hweight.h \ + include/asm-generic/bitops/ext2-non-atomic.h \ + include/asm-generic/bitops/le.h \ + include/asm-generic/bitops/ext2-atomic.h \ + include/asm-generic/bitops/minix.h \ + include/asm/thread_info.h \ + $(wildcard include/config/page/size/4kb.h) \ + $(wildcard include/config/page/size/8kb.h) \ + $(wildcard include/config/page/size/16kb.h) \ + $(wildcard include/config/page/size/64kb.h) \ + $(wildcard include/config/debug/stack/usage.h) \ + include/asm/processor.h \ + $(wildcard include/config/mips/mt/fpaff.h) \ + $(wildcard include/config/cpu/has/prefetch.h) \ + include/linux/cpumask.h \ + $(wildcard include/config/hotplug/cpu.h) \ + include/linux/kernel.h \ + $(wildcard include/config/preempt/voluntary.h) \ + $(wildcard include/config/debug/spinlock/sleep.h) \ + $(wildcard include/config/printk.h) \ + $(wildcard include/config/numa.h) \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ + include/linux/linkage.h \ + include/asm/linkage.h \ + include/linux/log2.h \ + $(wildcard include/config/arch/has/ilog2/u32.h) \ + $(wildcard include/config/arch/has/ilog2/u64.h) \ + include/linux/threads.h \ + $(wildcard include/config/nr/cpus.h) \ + $(wildcard include/config/base/small.h) \ + include/linux/bitmap.h \ + include/linux/string.h \ + include/asm/string.h \ + $(wildcard include/config/cpu/r3000.h) \ + include/asm/cachectl.h \ + include/asm/mipsregs.h \ + $(wildcard include/config/cpu/vr41xx.h) \ + include/asm/prefetch.h \ + include/asm/system.h \ + include/asm/addrspace.h \ + $(wildcard include/config/cpu/r4300.h) \ + $(wildcard include/config/cpu/r4x00.h) \ + $(wildcard include/config/cpu/r5000.h) \ + $(wildcard include/config/cpu/rm7000.h) \ + $(wildcard include/config/cpu/nevada.h) \ + $(wildcard include/config/cpu/r8000.h) \ + $(wildcard include/config/cpu/sb1a.h) \ + include/asm-mips/mach-generic/spaces.h \ + $(wildcard include/config/dma/noncoherent.h) \ + include/asm/dsp.h \ + include/linux/stringify.h \ + include/linux/bottom_half.h \ + include/linux/spinlock_types.h \ + include/linux/lockdep.h \ + $(wildcard include/config/lockdep.h) \ + $(wildcard include/config/generic/hardirqs.h) \ + $(wildcard include/config/prove/locking.h) \ + include/linux/spinlock_types_up.h \ + include/linux/spinlock_up.h \ + include/linux/spinlock_api_up.h \ + include/asm/atomic.h \ + include/asm-generic/atomic.h \ + include/linux/list.h \ + $(wildcard include/config/debug/list.h) \ + include/linux/poison.h \ + include/linux/prefetch.h \ + include/linux/stat.h \ + include/asm/stat.h \ + include/linux/time.h \ + include/linux/seqlock.h \ + include/linux/cache.h \ + $(wildcard include/config/arch/has/cache/line/size.h) \ + include/linux/kmod.h \ + $(wildcard include/config/kmod.h) \ + include/linux/errno.h \ + include/asm/errno.h \ + include/asm-generic/errno-base.h \ + include/linux/elf.h \ + include/linux/auxvec.h \ + include/asm/auxvec.h \ + include/linux/elf-em.h \ + include/asm/elf.h \ + $(wildcard include/config/mips32/n32.h) \ + $(wildcard include/config/mips32/o32.h) \ + $(wildcard include/config/mips32/compat.h) \ + include/linux/kobject.h \ + $(wildcard include/config/hotplug.h) \ + include/linux/sysfs.h \ + include/linux/kref.h \ + include/linux/wait.h \ + include/asm/current.h \ + include/linux/moduleparam.h \ + include/linux/init.h \ + $(wildcard include/config/memory/hotplug.h) \ + $(wildcard include/config/acpi/hotplug/memory.h) \ + include/asm/local.h \ + include/linux/percpu.h \ + include/linux/slab.h \ + $(wildcard include/config/slab/debug.h) \ + $(wildcard include/config/slub.h) \ + $(wildcard include/config/slob.h) \ + $(wildcard include/config/debug/slab.h) \ + include/linux/gfp.h \ + $(wildcard include/config/zone/dma.h) \ + $(wildcard include/config/zone/dma32.h) \ + include/linux/mmzone.h \ + $(wildcard include/config/force/max/zoneorder.h) \ + $(wildcard include/config/arch/populates/node/map.h) \ + $(wildcard include/config/discontigmem.h) \ + $(wildcard include/config/flat/node/mem/map.h) \ + $(wildcard include/config/have/memory/present.h) \ + $(wildcard include/config/need/node/memmap/size.h) \ + $(wildcard include/config/need/multiple/nodes.h) \ + $(wildcard include/config/sparsemem.h) \ + $(wildcard include/config/have/arch/early/pfn/to/nid.h) \ + $(wildcard include/config/flatmem.h) \ + $(wildcard include/config/sparsemem/extreme.h) \ + $(wildcard include/config/nodes/span/other/nodes.h) \ + $(wildcard include/config/holes/in/zone.h) \ + include/linux/numa.h \ + $(wildcard include/config/nodes/shift.h) \ + include/linux/nodemask.h \ + include/asm/page.h \ + $(wildcard include/config/build/elf64.h) \ + include/linux/pfn.h \ + include/asm/io.h \ + include/asm-generic/iomap.h \ + include/asm/pgtable-bits.h \ + $(wildcard include/config/cpu/mips32/r1.h) \ + $(wildcard include/config/cpu/tx39xx.h) \ + $(wildcard include/config/mips/uncached.h) \ + include/asm-mips/mach-generic/ioremap.h \ + include/asm-mips/mach-generic/mangle-port.h \ + $(wildcard include/config/swap/io/space.h) \ + include/asm-generic/memory_model.h \ + $(wildcard include/config/out/of/line/pfn/to/page.h) \ + include/asm-generic/page.h \ + include/linux/memory_hotplug.h \ + $(wildcard include/config/have/arch/nodedata/extension.h) \ + include/linux/notifier.h \ + include/linux/mutex.h \ + $(wildcard include/config/debug/mutexes.h) \ + include/linux/rwsem.h \ + $(wildcard include/config/rwsem/generic/spinlock.h) \ + include/linux/rwsem-spinlock.h \ + include/linux/srcu.h \ + include/linux/topology.h \ + $(wildcard include/config/sched/smt.h) \ + $(wildcard include/config/sched/mc.h) \ + include/linux/smp.h \ + include/asm/topology.h \ + include/asm-mips/mach-generic/topology.h \ + include/asm-generic/topology.h \ + include/asm/sparsemem.h \ + include/linux/slab_def.h \ + include/linux/kmalloc_sizes.h \ + include/asm/percpu.h \ + include/asm-generic/percpu.h \ + include/asm/module.h \ + $(wildcard include/config/cpu/mips32/r2.h) \ + $(wildcard include/config/cpu/mips64/r1.h) \ + $(wildcard include/config/cpu/r6000.h) \ + include/asm/uaccess.h \ + include/asm-generic/uaccess.h \ + include/linux/mm.h \ + $(wildcard include/config/sysctl.h) \ + $(wildcard include/config/mmu.h) \ + $(wildcard include/config/stack/growsup.h) \ + $(wildcard include/config/debug/vm.h) \ + $(wildcard include/config/shmem.h) \ + $(wildcard include/config/split/ptlock/cpus.h) \ + $(wildcard include/config/ia64.h) \ + $(wildcard include/config/proc/fs.h) \ + $(wildcard include/config/debug/pagealloc.h) \ + include/linux/capability.h \ + include/linux/rbtree.h \ + include/linux/prio_tree.h \ + include/linux/fs.h \ + $(wildcard include/config/dnotify.h) \ + $(wildcard include/config/quota.h) \ + $(wildcard include/config/inotify.h) \ + $(wildcard include/config/security.h) \ + $(wildcard include/config/epoll.h) \ + $(wildcard include/config/auditsyscall.h) \ + $(wildcard include/config/block.h) \ + $(wildcard include/config/fs/xip.h) \ + $(wildcard include/config/migration.h) \ + include/linux/limits.h \ + include/linux/ioctl.h \ + include/asm/ioctl.h \ + include/linux/kdev_t.h \ + include/linux/dcache.h \ + $(wildcard include/config/profiling.h) \ + include/linux/rcupdate.h \ + include/linux/namei.h \ + include/linux/radix-tree.h \ + include/linux/pid.h \ + include/asm/semaphore.h \ + include/linux/quota.h \ + include/linux/dqblk_xfs.h \ + include/linux/dqblk_v1.h \ + include/linux/dqblk_v2.h \ + include/linux/nfs_fs_i.h \ + include/linux/nfs.h \ + include/linux/sunrpc/msg_prot.h \ + include/linux/fcntl.h \ + include/asm/fcntl.h \ + include/asm-generic/fcntl.h \ + include/linux/err.h \ + include/linux/debug_locks.h \ + $(wildcard include/config/debug/locking/api/selftests.h) \ + include/linux/backing-dev.h \ + include/linux/percpu_counter.h \ + include/linux/proportions.h \ + include/linux/mm_types.h \ + include/asm/pgtable.h \ + include/asm/pgtable-32.h \ + include/asm/fixmap.h \ + $(wildcard include/config/bcm47xx.h) \ + include/asm/kmap_types.h \ + $(wildcard include/config/debug/highmem.h) \ + include/asm-generic/pgtable-nopmd.h \ + include/asm-generic/pgtable-nopud.h \ + include/asm-generic/pgtable.h \ + include/linux/page-flags.h \ + $(wildcard include/config/s390.h) \ + $(wildcard include/config/swap.h) \ + include/linux/vmstat.h \ + $(wildcard include/config/vm/event/counters.h) \ + include/linux/pci.h \ + $(wildcard include/config/pci/msi.h) \ + $(wildcard include/config/pci.h) \ + $(wildcard include/config/ht/irq.h) \ + $(wildcard include/config/pci/domains.h) \ + include/linux/pci_regs.h \ + include/linux/mod_devicetable.h \ + include/linux/ioport.h \ + include/linux/device.h \ + $(wildcard include/config/debug/devres.h) \ + include/linux/klist.h \ + include/linux/completion.h \ + include/linux/pm.h \ + $(wildcard include/config/pm.h) \ + include/asm/device.h \ + include/asm-generic/device.h \ + include/linux/pci_ids.h \ + include/linux/dmapool.h \ + include/asm/scatterlist.h \ + include/asm/pci.h \ + $(wildcard include/config/dma/need/pci/map/state.h) \ + include/asm-generic/pci-dma-compat.h \ + include/linux/dma-mapping.h \ + include/asm/dma-mapping.h \ + include/linux/interrupt.h \ + $(wildcard include/config/high/res/timers.h) \ + $(wildcard include/config/generic/irq/probe.h) \ + include/linux/irqreturn.h \ + include/linux/hardirq.h \ + $(wildcard include/config/preempt/bkl.h) \ + $(wildcard include/config/virt/cpu/accounting.h) \ + include/linux/smp_lock.h \ + $(wildcard include/config/lock/kernel.h) \ + include/asm/hardirq.h \ + include/linux/irq.h \ + $(wildcard include/config/irq/per/cpu.h) \ + $(wildcard include/config/irq/release/method.h) \ + $(wildcard include/config/generic/pending/irq.h) \ + $(wildcard include/config/irqbalance.h) \ + $(wildcard include/config/auto/irq/affinity.h) \ + $(wildcard include/config/generic/hardirqs/no//do/irq.h) \ + include/asm/irq.h \ + $(wildcard include/config/i8259.h) \ + $(wildcard include/config/mips/mt/smtc/im/backstop.h) \ + include/asm/mipsmtregs.h \ + include/asm-mips/mach-generic/irq.h \ + $(wildcard include/config/irq/cpu/rm7k.h) \ + $(wildcard include/config/irq/cpu/rm9k.h) \ + include/asm/ptrace.h \ + $(wildcard include/config/cpu/has/smartmips.h) \ + include/asm/isadep.h \ + include/asm/irq_regs.h \ + include/asm/hw_irq.h \ + include/linux/profile.h \ + include/linux/irq_cpustat.h \ + include/linux/sched.h \ + $(wildcard include/config/no/hz.h) \ + $(wildcard include/config/detect/softlockup.h) \ + $(wildcard include/config/keys.h) \ + $(wildcard include/config/bsd/process/acct.h) \ + $(wildcard include/config/taskstats.h) \ + $(wildcard include/config/inotify/user.h) \ + $(wildcard include/config/schedstats.h) \ + $(wildcard include/config/task/delay/acct.h) \ + $(wildcard include/config/blk/dev/io/trace.h) \ + $(wildcard include/config/cc/stackprotector.h) \ + $(wildcard include/config/sysvipc.h) \ + $(wildcard include/config/rt/mutexes.h) \ + $(wildcard include/config/task/xacct.h) \ + $(wildcard include/config/cpusets.h) \ + $(wildcard include/config/compat.h) \ + $(wildcard include/config/fault/injection.h) \ + include/asm/param.h \ + $(wildcard include/config/hz.h) \ + include/linux/timex.h \ + $(wildcard include/config/time/interpolation.h) \ + include/asm/timex.h \ + include/asm-mips/mach-generic/timex.h \ + include/linux/jiffies.h \ + include/linux/calc64.h \ + include/asm/div64.h \ + include/asm-generic/div64.h \ + include/asm/mmu.h \ + include/asm/cputime.h \ + include/asm-generic/cputime.h \ + include/linux/sem.h \ + include/linux/ipc.h \ + $(wildcard include/config/ipc/ns.h) \ + include/asm/ipcbuf.h \ + include/asm/sembuf.h \ + include/linux/signal.h \ + include/asm/signal.h \ + $(wildcard include/config/trad/signals.h) \ + $(wildcard include/config/binfmt/irix.h) \ + include/asm-generic/signal.h \ + include/asm/sigcontext.h \ + include/asm/siginfo.h \ + include/asm-generic/siginfo.h \ + include/linux/securebits.h \ + include/linux/fs_struct.h \ + include/linux/seccomp.h \ + $(wildcard include/config/seccomp.h) \ + include/linux/futex.h \ + $(wildcard include/config/futex.h) \ + include/linux/rtmutex.h \ + $(wildcard include/config/debug/rt/mutexes.h) \ + include/linux/plist.h \ + $(wildcard include/config/debug/pi/list.h) \ + include/linux/param.h \ + include/linux/resource.h \ + include/asm/resource.h \ + include/asm-generic/resource.h \ + include/linux/timer.h \ + $(wildcard include/config/timer/stats.h) \ + include/linux/ktime.h \ + $(wildcard include/config/ktime/scalar.h) \ + include/linux/hrtimer.h \ + include/linux/task_io_accounting.h \ + $(wildcard include/config/task/io/accounting.h) \ + include/linux/aio.h \ + include/linux/workqueue.h \ + include/linux/aio_abi.h \ + include/linux/uio.h \ + include/linux/netdevice.h \ + $(wildcard include/config/ax25.h) \ + $(wildcard include/config/tr.h) \ + $(wildcard include/config/net/ipip.h) \ + $(wildcard include/config/net/ipgre.h) \ + $(wildcard include/config/ipv6/sit.h) \ + $(wildcard include/config/ipv6/tunnel.h) \ + $(wildcard include/config/netpoll.h) \ + $(wildcard include/config/net/poll/controller.h) \ + $(wildcard include/config/netpoll/trap.h) \ + $(wildcard include/config/net/dma.h) \ + include/linux/if.h \ + include/linux/socket.h \ + include/asm/socket.h \ + include/asm/sockios.h \ + include/linux/sockios.h \ + include/linux/hdlc/ioctl.h \ + include/linux/if_ether.h \ + include/linux/skbuff.h \ + $(wildcard include/config/nf/conntrack.h) \ + $(wildcard include/config/bridge/netfilter.h) \ + $(wildcard include/config/vlan/8021q.h) \ + $(wildcard include/config/net/sched.h) \ + $(wildcard include/config/net/cls/act.h) \ + $(wildcard include/config/network/secmark.h) \ + $(wildcard include/config/imq.h) \ + include/linux/net.h \ + include/linux/random.h \ + include/linux/sysctl.h \ + $(wildcard include/config/bcm/nat.h) \ + include/linux/textsearch.h \ + include/net/checksum.h \ + include/asm/checksum.h \ + include/linux/in6.h \ + include/linux/dmaengine.h \ + $(wildcard include/config/dma/engine.h) \ + include/linux/if_packet.h \ + include/net/ieee80211.h \ + $(wildcard include/config/ieee80211/debug.h) \ + include/linux/wireless.h \ + include/linux/if_arp.h \ + include/net/iw_handler.h \ + include/net/ieee80211_crypt.h \ + include/asm/paccess.h \ + /home/vicente/repos/tomato/release/src-rt/include/ctf/hndctf.h \ + /home/vicente/repos/tomato/release/src-rt/include/bcmutils.h \ + /home/vicente/repos/tomato/release/src-rt/include/proto/ethernet.h \ + /home/vicente/repos/tomato/release/src-rt/include/packed_section_start.h \ + /home/vicente/repos/tomato/release/src-rt/include/packed_section_end.h \ + /home/vicente/repos/tomato/release/src-rt/include/siutils.h \ + /home/vicente/repos/tomato/release/src-rt/include/hndsoc.h \ + /home/vicente/repos/tomato/release/src-rt/include/sbconfig.h \ + $(wildcard include/config/h.h) \ + /home/vicente/repos/tomato/release/src-rt/include/aidmp.h \ + /home/vicente/repos/tomato/release/src-rt/include/sbchipc.h \ + /home/vicente/repos/tomato/release/src-rt/include/pcicfg.h \ + $(wildcard include/config/addr.h) \ + $(wildcard include/config/bus.h) \ + $(wildcard include/config/slot.h) \ + $(wildcard include/config/fun.h) \ + $(wildcard include/config/off.h) \ + drivers/net/hnd/../../../../../shared/siutils_priv.h \ + /home/vicente/repos/tomato/release/src-rt/include/bcmdevs.h \ + +drivers/net/hnd/../../../../../shared/aiutils.o: $(deps_drivers/net/hnd/../../../../../shared/aiutils.o) + +$(deps_drivers/net/hnd/../../../../../shared/aiutils.o): diff --git a/release/src-rt/shared/.bcmotp.o.cmd b/release/src-rt/shared/.bcmotp.o.cmd new file mode 100644 index 0000000000..79c6f45a9b --- /dev/null +++ b/release/src-rt/shared/.bcmotp.o.cmd @@ -0,0 +1,536 @@ +cmd_drivers/net/hnd/../../../../../shared/bcmotp.o := mipsel-uclibc-gcc -Wp,-MD,drivers/net/hnd/../../../../../shared/.bcmotp.o.d -nostdinc -isystem /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include -D__KERNEL__ -Iinclude -include include/linux/autoconf.h -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Werror-implicit-function-declaration -Wno-format-security -fno-delete-null-pointer-checks -I/home/vicente/repos/tomato/release/src-rt/include -DBCMDRIVER -Dlinux -O2 -ffunction-sections -mno-check-zero-division -mabi=32 -G 0 -mno-abicalls -fno-pic -pipe -msoft-float -ggdb -ffreestanding -march=mips32r2 -Wa,-mips32r2 -Wa,--trap -Iinclude/asm-mips/mach-generic -fomit-frame-pointer -fno-stack-protector -funit-at-a-time -Wdeclaration-after-statement -Wno-pointer-sign -fno-strict-overflow -DHNDCTF -DCTFPOOL -DCTFMAP -DBCMDBG_TRAP -DWLC_LOW -DWLC_HIGH -DBCMDMA32 -DBCMNVRAMR -DPHY_HAL -DPHY_HAL -DBCM5354 -DLINUX_HYBRID_POSTPROCESSING_REMOVAL -D"KBUILD_STR(s)=\#s" -D"KBUILD_BASENAME=KBUILD_STR(bcmotp)" -D"KBUILD_MODNAME=KBUILD_STR(hnd)" -c -o drivers/net/hnd/../../../../../shared/bcmotp.o drivers/net/hnd/../../../../../shared/bcmotp.c + +deps_drivers/net/hnd/../../../../../shared/bcmotp.o := \ + drivers/net/hnd/../../../../../shared/bcmotp.c \ + /home/vicente/repos/tomato/release/src-rt/include/typedefs.h \ + include/linux/version.h \ + include/linux/types.h \ + $(wildcard include/config/uid16.h) \ + $(wildcard include/config/lbd.h) \ + $(wildcard include/config/lsf.h) \ + $(wildcard include/config/resources/64bit.h) \ + include/linux/posix_types.h \ + include/linux/stddef.h \ + include/linux/compiler.h \ + $(wildcard include/config/enable/must/check.h) \ + include/linux/compiler-gcc4.h \ + $(wildcard include/config/forced/inlining.h) \ + include/linux/compiler-gcc.h \ + include/asm/posix_types.h \ + include/asm/sgidefs.h \ + include/asm/types.h \ + $(wildcard include/config/highmem.h) \ + $(wildcard include/config/64bit/phys/addr.h) \ + $(wildcard include/config/64bit.h) \ + /home/vicente/repos/tomato/release/src-rt/include/bcmdefs.h \ + /home/vicente/repos/tomato/release/src-rt/include/osl.h \ + /home/vicente/repos/tomato/release/src-rt/include/linux_osl.h \ + $(wildcard include/config/mmc/msm7x00a.h) \ + /home/vicente/repos/tomato/release/src-rt/include/linuxver.h \ + $(wildcard include/config/net/radio.h) \ + $(wildcard include/config/wireless/ext.h) \ + $(wildcard include/config/pcmcia.h) \ + $(wildcard include/config/rfkill.h) \ + include/linux/module.h \ + $(wildcard include/config/modules.h) \ + $(wildcard include/config/modversions.h) \ + $(wildcard include/config/unused/symbols.h) \ + $(wildcard include/config/generic/bug.h) \ + $(wildcard include/config/module/unload.h) \ + $(wildcard include/config/kallsyms.h) \ + $(wildcard include/config/sysfs.h) \ + include/linux/spinlock.h \ + $(wildcard include/config/smp.h) \ + $(wildcard include/config/debug/spinlock.h) \ + $(wildcard include/config/preempt.h) \ + $(wildcard include/config/debug/lock/alloc.h) \ + include/linux/preempt.h \ + $(wildcard include/config/debug/preempt.h) \ + include/linux/thread_info.h \ + include/linux/bitops.h \ + include/asm/bitops.h \ + $(wildcard include/config/cpu/mipsr2.h) \ + $(wildcard include/config/cpu/mips64.h) \ + $(wildcard include/config/cpu/mips32.h) \ + include/linux/irqflags.h \ + $(wildcard include/config/trace/irqflags.h) \ + $(wildcard include/config/trace/irqflags/support.h) \ + $(wildcard include/config/x86.h) \ + include/asm/irqflags.h \ + $(wildcard include/config/mips/mt/smtc.h) \ + $(wildcard include/config/irq/cpu.h) \ + $(wildcard include/config/mips/mt/smtc/instant/replay.h) \ + include/asm/hazards.h \ + $(wildcard include/config/cpu/mipsr1.h) \ + $(wildcard include/config/cpu/r10000.h) \ + $(wildcard include/config/cpu/rm9000.h) \ + $(wildcard include/config/cpu/sb1.h) \ + include/asm/cpu-features.h \ + $(wildcard include/config/32bit.h) \ + $(wildcard include/config/cpu/mipsr2/irq/vi.h) \ + $(wildcard include/config/cpu/mipsr2/irq/ei.h) \ + include/asm/cpu.h \ + include/asm/cpu-info.h \ + $(wildcard include/config/sgi/ip27.h) \ + $(wildcard include/config/mips/mt.h) \ + include/asm/cache.h \ + $(wildcard include/config/mips/l1/cache/shift.h) \ + include/asm-mips/mach-generic/kmalloc.h \ + $(wildcard include/config/dma/coherent.h) \ + include/asm-mips/mach-generic/cpu-feature-overrides.h \ + include/asm/barrier.h \ + $(wildcard include/config/cpu/has/sync.h) \ + $(wildcard include/config/cpu/has/wb.h) \ + $(wildcard include/config/weak/ordering.h) \ + include/asm/bug.h \ + $(wildcard include/config/bug.h) \ + include/asm/break.h \ + include/asm-generic/bug.h \ + $(wildcard include/config/debug/bugverbose.h) \ + include/asm/byteorder.h \ + $(wildcard include/config/cpu/mips64/r2.h) \ + include/linux/byteorder/little_endian.h \ + include/linux/byteorder/swab.h \ + include/linux/byteorder/generic.h \ + include/asm/war.h \ + $(wildcard include/config/sgi/ip22.h) \ + $(wildcard include/config/sni/rm.h) \ + $(wildcard include/config/cpu/r5432.h) \ + $(wildcard include/config/sb1/pass/1/workarounds.h) \ + $(wildcard include/config/sb1/pass/2/workarounds.h) \ + $(wildcard include/config/mips/malta.h) \ + $(wildcard include/config/mips/atlas.h) \ + $(wildcard include/config/mips/sead.h) \ + $(wildcard include/config/cpu/tx49xx.h) \ + $(wildcard include/config/momenco/jaguar/atx.h) \ + $(wildcard include/config/pmc/yosemite.h) \ + $(wildcard include/config/basler/excite.h) \ + $(wildcard include/config/momenco/ocelot.h) \ + $(wildcard include/config/momenco/ocelot/3.h) \ + $(wildcard include/config/momenco/ocelot/c.h) \ + $(wildcard include/config/sgi/ip32.h) \ + $(wildcard include/config/wr/ppmc.h) \ + include/asm-generic/bitops/non-atomic.h \ + include/asm-generic/bitops/fls64.h \ + include/asm-generic/bitops/ffz.h \ + include/asm-generic/bitops/find.h \ + include/asm-generic/bitops/sched.h \ + include/asm-generic/bitops/hweight.h \ + include/asm-generic/bitops/ext2-non-atomic.h \ + include/asm-generic/bitops/le.h \ + include/asm-generic/bitops/ext2-atomic.h \ + include/asm-generic/bitops/minix.h \ + include/asm/thread_info.h \ + $(wildcard include/config/page/size/4kb.h) \ + $(wildcard include/config/page/size/8kb.h) \ + $(wildcard include/config/page/size/16kb.h) \ + $(wildcard include/config/page/size/64kb.h) \ + $(wildcard include/config/debug/stack/usage.h) \ + include/asm/processor.h \ + $(wildcard include/config/mips/mt/fpaff.h) \ + $(wildcard include/config/cpu/has/prefetch.h) \ + include/linux/cpumask.h \ + $(wildcard include/config/hotplug/cpu.h) \ + include/linux/kernel.h \ + $(wildcard include/config/preempt/voluntary.h) \ + $(wildcard include/config/debug/spinlock/sleep.h) \ + $(wildcard include/config/printk.h) \ + $(wildcard include/config/numa.h) \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ + include/linux/linkage.h \ + include/asm/linkage.h \ + include/linux/log2.h \ + $(wildcard include/config/arch/has/ilog2/u32.h) \ + $(wildcard include/config/arch/has/ilog2/u64.h) \ + include/linux/threads.h \ + $(wildcard include/config/nr/cpus.h) \ + $(wildcard include/config/base/small.h) \ + include/linux/bitmap.h \ + include/linux/string.h \ + include/asm/string.h \ + $(wildcard include/config/cpu/r3000.h) \ + include/asm/cachectl.h \ + include/asm/mipsregs.h \ + $(wildcard include/config/cpu/vr41xx.h) \ + include/asm/prefetch.h \ + include/asm/system.h \ + include/asm/addrspace.h \ + $(wildcard include/config/cpu/r4300.h) \ + $(wildcard include/config/cpu/r4x00.h) \ + $(wildcard include/config/cpu/r5000.h) \ + $(wildcard include/config/cpu/rm7000.h) \ + $(wildcard include/config/cpu/nevada.h) \ + $(wildcard include/config/cpu/r8000.h) \ + $(wildcard include/config/cpu/sb1a.h) \ + include/asm-mips/mach-generic/spaces.h \ + $(wildcard include/config/dma/noncoherent.h) \ + include/asm/dsp.h \ + include/linux/stringify.h \ + include/linux/bottom_half.h \ + include/linux/spinlock_types.h \ + include/linux/lockdep.h \ + $(wildcard include/config/lockdep.h) \ + $(wildcard include/config/generic/hardirqs.h) \ + $(wildcard include/config/prove/locking.h) \ + include/linux/spinlock_types_up.h \ + include/linux/spinlock_up.h \ + include/linux/spinlock_api_up.h \ + include/asm/atomic.h \ + include/asm-generic/atomic.h \ + include/linux/list.h \ + $(wildcard include/config/debug/list.h) \ + include/linux/poison.h \ + include/linux/prefetch.h \ + include/linux/stat.h \ + include/asm/stat.h \ + include/linux/time.h \ + include/linux/seqlock.h \ + include/linux/cache.h \ + $(wildcard include/config/arch/has/cache/line/size.h) \ + include/linux/kmod.h \ + $(wildcard include/config/kmod.h) \ + include/linux/errno.h \ + include/asm/errno.h \ + include/asm-generic/errno-base.h \ + include/linux/elf.h \ + include/linux/auxvec.h \ + include/asm/auxvec.h \ + include/linux/elf-em.h \ + include/asm/elf.h \ + $(wildcard include/config/mips32/n32.h) \ + $(wildcard include/config/mips32/o32.h) \ + $(wildcard include/config/mips32/compat.h) \ + include/linux/kobject.h \ + $(wildcard include/config/hotplug.h) \ + include/linux/sysfs.h \ + include/linux/kref.h \ + include/linux/wait.h \ + include/asm/current.h \ + include/linux/moduleparam.h \ + include/linux/init.h \ + $(wildcard include/config/memory/hotplug.h) \ + $(wildcard include/config/acpi/hotplug/memory.h) \ + include/asm/local.h \ + include/linux/percpu.h \ + include/linux/slab.h \ + $(wildcard include/config/slab/debug.h) \ + $(wildcard include/config/slub.h) \ + $(wildcard include/config/slob.h) \ + $(wildcard include/config/debug/slab.h) \ + include/linux/gfp.h \ + $(wildcard include/config/zone/dma.h) \ + $(wildcard include/config/zone/dma32.h) \ + include/linux/mmzone.h \ + $(wildcard include/config/force/max/zoneorder.h) \ + $(wildcard include/config/arch/populates/node/map.h) \ + $(wildcard include/config/discontigmem.h) \ + $(wildcard include/config/flat/node/mem/map.h) \ + $(wildcard include/config/have/memory/present.h) \ + $(wildcard include/config/need/node/memmap/size.h) \ + $(wildcard include/config/need/multiple/nodes.h) \ + $(wildcard include/config/sparsemem.h) \ + $(wildcard include/config/have/arch/early/pfn/to/nid.h) \ + $(wildcard include/config/flatmem.h) \ + $(wildcard include/config/sparsemem/extreme.h) \ + $(wildcard include/config/nodes/span/other/nodes.h) \ + $(wildcard include/config/holes/in/zone.h) \ + include/linux/numa.h \ + $(wildcard include/config/nodes/shift.h) \ + include/linux/nodemask.h \ + include/asm/page.h \ + $(wildcard include/config/build/elf64.h) \ + include/linux/pfn.h \ + include/asm/io.h \ + include/asm-generic/iomap.h \ + include/asm/pgtable-bits.h \ + $(wildcard include/config/cpu/mips32/r1.h) \ + $(wildcard include/config/cpu/tx39xx.h) \ + $(wildcard include/config/mips/uncached.h) \ + include/asm-mips/mach-generic/ioremap.h \ + include/asm-mips/mach-generic/mangle-port.h \ + $(wildcard include/config/swap/io/space.h) \ + include/asm-generic/memory_model.h \ + $(wildcard include/config/out/of/line/pfn/to/page.h) \ + include/asm-generic/page.h \ + include/linux/memory_hotplug.h \ + $(wildcard include/config/have/arch/nodedata/extension.h) \ + include/linux/notifier.h \ + include/linux/mutex.h \ + $(wildcard include/config/debug/mutexes.h) \ + include/linux/rwsem.h \ + $(wildcard include/config/rwsem/generic/spinlock.h) \ + include/linux/rwsem-spinlock.h \ + include/linux/srcu.h \ + include/linux/topology.h \ + $(wildcard include/config/sched/smt.h) \ + $(wildcard include/config/sched/mc.h) \ + include/linux/smp.h \ + include/asm/topology.h \ + include/asm-mips/mach-generic/topology.h \ + include/asm-generic/topology.h \ + include/asm/sparsemem.h \ + include/linux/slab_def.h \ + include/linux/kmalloc_sizes.h \ + include/asm/percpu.h \ + include/asm-generic/percpu.h \ + include/asm/module.h \ + $(wildcard include/config/cpu/mips32/r2.h) \ + $(wildcard include/config/cpu/mips64/r1.h) \ + $(wildcard include/config/cpu/r6000.h) \ + include/asm/uaccess.h \ + include/asm-generic/uaccess.h \ + include/linux/mm.h \ + $(wildcard include/config/sysctl.h) \ + $(wildcard include/config/mmu.h) \ + $(wildcard include/config/stack/growsup.h) \ + $(wildcard include/config/debug/vm.h) \ + $(wildcard include/config/shmem.h) \ + $(wildcard include/config/split/ptlock/cpus.h) \ + $(wildcard include/config/ia64.h) \ + $(wildcard include/config/proc/fs.h) \ + $(wildcard include/config/debug/pagealloc.h) \ + include/linux/capability.h \ + include/linux/rbtree.h \ + include/linux/prio_tree.h \ + include/linux/fs.h \ + $(wildcard include/config/dnotify.h) \ + $(wildcard include/config/quota.h) \ + $(wildcard include/config/inotify.h) \ + $(wildcard include/config/security.h) \ + $(wildcard include/config/epoll.h) \ + $(wildcard include/config/auditsyscall.h) \ + $(wildcard include/config/block.h) \ + $(wildcard include/config/fs/xip.h) \ + $(wildcard include/config/migration.h) \ + include/linux/limits.h \ + include/linux/ioctl.h \ + include/asm/ioctl.h \ + include/linux/kdev_t.h \ + include/linux/dcache.h \ + $(wildcard include/config/profiling.h) \ + include/linux/rcupdate.h \ + include/linux/namei.h \ + include/linux/radix-tree.h \ + include/linux/pid.h \ + include/asm/semaphore.h \ + include/linux/quota.h \ + include/linux/dqblk_xfs.h \ + include/linux/dqblk_v1.h \ + include/linux/dqblk_v2.h \ + include/linux/nfs_fs_i.h \ + include/linux/nfs.h \ + include/linux/sunrpc/msg_prot.h \ + include/linux/fcntl.h \ + include/asm/fcntl.h \ + include/asm-generic/fcntl.h \ + include/linux/err.h \ + include/linux/debug_locks.h \ + $(wildcard include/config/debug/locking/api/selftests.h) \ + include/linux/backing-dev.h \ + include/linux/percpu_counter.h \ + include/linux/proportions.h \ + include/linux/mm_types.h \ + include/asm/pgtable.h \ + include/asm/pgtable-32.h \ + include/asm/fixmap.h \ + $(wildcard include/config/bcm47xx.h) \ + include/asm/kmap_types.h \ + $(wildcard include/config/debug/highmem.h) \ + include/asm-generic/pgtable-nopmd.h \ + include/asm-generic/pgtable-nopud.h \ + include/asm-generic/pgtable.h \ + include/linux/page-flags.h \ + $(wildcard include/config/s390.h) \ + $(wildcard include/config/swap.h) \ + include/linux/vmstat.h \ + $(wildcard include/config/vm/event/counters.h) \ + include/linux/pci.h \ + $(wildcard include/config/pci/msi.h) \ + $(wildcard include/config/pci.h) \ + $(wildcard include/config/ht/irq.h) \ + $(wildcard include/config/pci/domains.h) \ + include/linux/pci_regs.h \ + include/linux/mod_devicetable.h \ + include/linux/ioport.h \ + include/linux/device.h \ + $(wildcard include/config/debug/devres.h) \ + include/linux/klist.h \ + include/linux/completion.h \ + include/linux/pm.h \ + $(wildcard include/config/pm.h) \ + include/asm/device.h \ + include/asm-generic/device.h \ + include/linux/pci_ids.h \ + include/linux/dmapool.h \ + include/asm/scatterlist.h \ + include/asm/pci.h \ + $(wildcard include/config/dma/need/pci/map/state.h) \ + include/asm-generic/pci-dma-compat.h \ + include/linux/dma-mapping.h \ + include/asm/dma-mapping.h \ + include/linux/interrupt.h \ + $(wildcard include/config/high/res/timers.h) \ + $(wildcard include/config/generic/irq/probe.h) \ + include/linux/irqreturn.h \ + include/linux/hardirq.h \ + $(wildcard include/config/preempt/bkl.h) \ + $(wildcard include/config/virt/cpu/accounting.h) \ + include/linux/smp_lock.h \ + $(wildcard include/config/lock/kernel.h) \ + include/asm/hardirq.h \ + include/linux/irq.h \ + $(wildcard include/config/irq/per/cpu.h) \ + $(wildcard include/config/irq/release/method.h) \ + $(wildcard include/config/generic/pending/irq.h) \ + $(wildcard include/config/irqbalance.h) \ + $(wildcard include/config/auto/irq/affinity.h) \ + $(wildcard include/config/generic/hardirqs/no//do/irq.h) \ + include/asm/irq.h \ + $(wildcard include/config/i8259.h) \ + $(wildcard include/config/mips/mt/smtc/im/backstop.h) \ + include/asm/mipsmtregs.h \ + include/asm-mips/mach-generic/irq.h \ + $(wildcard include/config/irq/cpu/rm7k.h) \ + $(wildcard include/config/irq/cpu/rm9k.h) \ + include/asm/ptrace.h \ + $(wildcard include/config/cpu/has/smartmips.h) \ + include/asm/isadep.h \ + include/asm/irq_regs.h \ + include/asm/hw_irq.h \ + include/linux/profile.h \ + include/linux/irq_cpustat.h \ + include/linux/sched.h \ + $(wildcard include/config/no/hz.h) \ + $(wildcard include/config/detect/softlockup.h) \ + $(wildcard include/config/keys.h) \ + $(wildcard include/config/bsd/process/acct.h) \ + $(wildcard include/config/taskstats.h) \ + $(wildcard include/config/inotify/user.h) \ + $(wildcard include/config/schedstats.h) \ + $(wildcard include/config/task/delay/acct.h) \ + $(wildcard include/config/blk/dev/io/trace.h) \ + $(wildcard include/config/cc/stackprotector.h) \ + $(wildcard include/config/sysvipc.h) \ + $(wildcard include/config/rt/mutexes.h) \ + $(wildcard include/config/task/xacct.h) \ + $(wildcard include/config/cpusets.h) \ + $(wildcard include/config/compat.h) \ + $(wildcard include/config/fault/injection.h) \ + include/asm/param.h \ + $(wildcard include/config/hz.h) \ + include/linux/timex.h \ + $(wildcard include/config/time/interpolation.h) \ + include/asm/timex.h \ + include/asm-mips/mach-generic/timex.h \ + include/linux/jiffies.h \ + include/linux/calc64.h \ + include/asm/div64.h \ + include/asm-generic/div64.h \ + include/asm/mmu.h \ + include/asm/cputime.h \ + include/asm-generic/cputime.h \ + include/linux/sem.h \ + include/linux/ipc.h \ + $(wildcard include/config/ipc/ns.h) \ + include/asm/ipcbuf.h \ + include/asm/sembuf.h \ + include/linux/signal.h \ + include/asm/signal.h \ + $(wildcard include/config/trad/signals.h) \ + $(wildcard include/config/binfmt/irix.h) \ + include/asm-generic/signal.h \ + include/asm/sigcontext.h \ + include/asm/siginfo.h \ + include/asm-generic/siginfo.h \ + include/linux/securebits.h \ + include/linux/fs_struct.h \ + include/linux/seccomp.h \ + $(wildcard include/config/seccomp.h) \ + include/linux/futex.h \ + $(wildcard include/config/futex.h) \ + include/linux/rtmutex.h \ + $(wildcard include/config/debug/rt/mutexes.h) \ + include/linux/plist.h \ + $(wildcard include/config/debug/pi/list.h) \ + include/linux/param.h \ + include/linux/resource.h \ + include/asm/resource.h \ + include/asm-generic/resource.h \ + include/linux/timer.h \ + $(wildcard include/config/timer/stats.h) \ + include/linux/ktime.h \ + $(wildcard include/config/ktime/scalar.h) \ + include/linux/hrtimer.h \ + include/linux/task_io_accounting.h \ + $(wildcard include/config/task/io/accounting.h) \ + include/linux/aio.h \ + include/linux/workqueue.h \ + include/linux/aio_abi.h \ + include/linux/uio.h \ + include/linux/netdevice.h \ + $(wildcard include/config/ax25.h) \ + $(wildcard include/config/tr.h) \ + $(wildcard include/config/net/ipip.h) \ + $(wildcard include/config/net/ipgre.h) \ + $(wildcard include/config/ipv6/sit.h) \ + $(wildcard include/config/ipv6/tunnel.h) \ + $(wildcard include/config/netpoll.h) \ + $(wildcard include/config/net/poll/controller.h) \ + $(wildcard include/config/netpoll/trap.h) \ + $(wildcard include/config/net/dma.h) \ + include/linux/if.h \ + include/linux/socket.h \ + include/asm/socket.h \ + include/asm/sockios.h \ + include/linux/sockios.h \ + include/linux/hdlc/ioctl.h \ + include/linux/if_ether.h \ + include/linux/skbuff.h \ + $(wildcard include/config/nf/conntrack.h) \ + $(wildcard include/config/bridge/netfilter.h) \ + $(wildcard include/config/vlan/8021q.h) \ + $(wildcard include/config/net/sched.h) \ + $(wildcard include/config/net/cls/act.h) \ + $(wildcard include/config/network/secmark.h) \ + $(wildcard include/config/imq.h) \ + include/linux/net.h \ + include/linux/random.h \ + include/linux/sysctl.h \ + $(wildcard include/config/bcm/nat.h) \ + include/linux/textsearch.h \ + include/net/checksum.h \ + include/asm/checksum.h \ + include/linux/in6.h \ + include/linux/dmaengine.h \ + $(wildcard include/config/dma/engine.h) \ + include/linux/if_packet.h \ + include/net/ieee80211.h \ + $(wildcard include/config/ieee80211/debug.h) \ + include/linux/wireless.h \ + include/linux/if_arp.h \ + include/net/iw_handler.h \ + include/net/ieee80211_crypt.h \ + include/asm/paccess.h \ + /home/vicente/repos/tomato/release/src-rt/include/ctf/hndctf.h \ + /home/vicente/repos/tomato/release/src-rt/include/bcmutils.h \ + /home/vicente/repos/tomato/release/src-rt/include/proto/ethernet.h \ + /home/vicente/repos/tomato/release/src-rt/include/packed_section_start.h \ + /home/vicente/repos/tomato/release/src-rt/include/packed_section_end.h \ + /home/vicente/repos/tomato/release/src-rt/include/bcmdevs.h \ + /home/vicente/repos/tomato/release/src-rt/include/bcmnvram.h \ + $(wildcard include/config/nvram/size.h) \ + $(wildcard include/config/nvram/64k.h) \ + $(wildcard include/config/dual/image.h) \ + $(wildcard include/config/dual/image/flash/support//.h) \ + /home/vicente/repos/tomato/release/src-rt/include/siutils.h \ + /home/vicente/repos/tomato/release/src-rt/include/bcmendian.h \ + /home/vicente/repos/tomato/release/src-rt/include/hndsoc.h \ + /home/vicente/repos/tomato/release/src-rt/include/sbconfig.h \ + $(wildcard include/config/h.h) \ + /home/vicente/repos/tomato/release/src-rt/include/aidmp.h \ + /home/vicente/repos/tomato/release/src-rt/include/sbchipc.h \ + /home/vicente/repos/tomato/release/src-rt/include/bcmotp.h \ + +drivers/net/hnd/../../../../../shared/bcmotp.o: $(deps_drivers/net/hnd/../../../../../shared/bcmotp.o) + +$(deps_drivers/net/hnd/../../../../../shared/bcmotp.o): diff --git a/release/src-rt/shared/.bcmrobo.o.cmd b/release/src-rt/shared/.bcmrobo.o.cmd new file mode 100644 index 0000000000..a36f13b5e5 --- /dev/null +++ b/release/src-rt/shared/.bcmrobo.o.cmd @@ -0,0 +1,537 @@ +cmd_drivers/net/hnd/../../../../../shared/bcmrobo.o := mipsel-uclibc-gcc -Wp,-MD,drivers/net/hnd/../../../../../shared/.bcmrobo.o.d -nostdinc -isystem /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include -D__KERNEL__ -Iinclude -include include/linux/autoconf.h -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Werror-implicit-function-declaration -Wno-format-security -fno-delete-null-pointer-checks -I/home/vicente/repos/tomato/release/src-rt/include -DBCMDRIVER -Dlinux -O2 -ffunction-sections -mno-check-zero-division -mabi=32 -G 0 -mno-abicalls -fno-pic -pipe -msoft-float -ggdb -ffreestanding -march=mips32r2 -Wa,-mips32r2 -Wa,--trap -Iinclude/asm-mips/mach-generic -fomit-frame-pointer -fno-stack-protector -funit-at-a-time -Wdeclaration-after-statement -Wno-pointer-sign -fno-strict-overflow -DHNDCTF -DCTFPOOL -DCTFMAP -DBCMDBG_TRAP -DWLC_LOW -DWLC_HIGH -DBCMDMA32 -DBCMNVRAMR -DPHY_HAL -DPHY_HAL -DBCM5354 -DLINUX_HYBRID_POSTPROCESSING_REMOVAL -D"KBUILD_STR(s)=\#s" -D"KBUILD_BASENAME=KBUILD_STR(bcmrobo)" -D"KBUILD_MODNAME=KBUILD_STR(hnd)" -c -o drivers/net/hnd/../../../../../shared/bcmrobo.o drivers/net/hnd/../../../../../shared/bcmrobo.c + +deps_drivers/net/hnd/../../../../../shared/bcmrobo.o := \ + drivers/net/hnd/../../../../../shared/bcmrobo.c \ + /home/vicente/repos/tomato/release/src-rt/include/typedefs.h \ + include/linux/version.h \ + include/linux/types.h \ + $(wildcard include/config/uid16.h) \ + $(wildcard include/config/lbd.h) \ + $(wildcard include/config/lsf.h) \ + $(wildcard include/config/resources/64bit.h) \ + include/linux/posix_types.h \ + include/linux/stddef.h \ + include/linux/compiler.h \ + $(wildcard include/config/enable/must/check.h) \ + include/linux/compiler-gcc4.h \ + $(wildcard include/config/forced/inlining.h) \ + include/linux/compiler-gcc.h \ + include/asm/posix_types.h \ + include/asm/sgidefs.h \ + include/asm/types.h \ + $(wildcard include/config/highmem.h) \ + $(wildcard include/config/64bit/phys/addr.h) \ + $(wildcard include/config/64bit.h) \ + /home/vicente/repos/tomato/release/src-rt/include/bcmdefs.h \ + /home/vicente/repos/tomato/release/src-rt/include/osl.h \ + /home/vicente/repos/tomato/release/src-rt/include/linux_osl.h \ + $(wildcard include/config/mmc/msm7x00a.h) \ + /home/vicente/repos/tomato/release/src-rt/include/linuxver.h \ + $(wildcard include/config/net/radio.h) \ + $(wildcard include/config/wireless/ext.h) \ + $(wildcard include/config/pcmcia.h) \ + $(wildcard include/config/rfkill.h) \ + include/linux/module.h \ + $(wildcard include/config/modules.h) \ + $(wildcard include/config/modversions.h) \ + $(wildcard include/config/unused/symbols.h) \ + $(wildcard include/config/generic/bug.h) \ + $(wildcard include/config/module/unload.h) \ + $(wildcard include/config/kallsyms.h) \ + $(wildcard include/config/sysfs.h) \ + include/linux/spinlock.h \ + $(wildcard include/config/smp.h) \ + $(wildcard include/config/debug/spinlock.h) \ + $(wildcard include/config/preempt.h) \ + $(wildcard include/config/debug/lock/alloc.h) \ + include/linux/preempt.h \ + $(wildcard include/config/debug/preempt.h) \ + include/linux/thread_info.h \ + include/linux/bitops.h \ + include/asm/bitops.h \ + $(wildcard include/config/cpu/mipsr2.h) \ + $(wildcard include/config/cpu/mips64.h) \ + $(wildcard include/config/cpu/mips32.h) \ + include/linux/irqflags.h \ + $(wildcard include/config/trace/irqflags.h) \ + $(wildcard include/config/trace/irqflags/support.h) \ + $(wildcard include/config/x86.h) \ + include/asm/irqflags.h \ + $(wildcard include/config/mips/mt/smtc.h) \ + $(wildcard include/config/irq/cpu.h) \ + $(wildcard include/config/mips/mt/smtc/instant/replay.h) \ + include/asm/hazards.h \ + $(wildcard include/config/cpu/mipsr1.h) \ + $(wildcard include/config/cpu/r10000.h) \ + $(wildcard include/config/cpu/rm9000.h) \ + $(wildcard include/config/cpu/sb1.h) \ + include/asm/cpu-features.h \ + $(wildcard include/config/32bit.h) \ + $(wildcard include/config/cpu/mipsr2/irq/vi.h) \ + $(wildcard include/config/cpu/mipsr2/irq/ei.h) \ + include/asm/cpu.h \ + include/asm/cpu-info.h \ + $(wildcard include/config/sgi/ip27.h) \ + $(wildcard include/config/mips/mt.h) \ + include/asm/cache.h \ + $(wildcard include/config/mips/l1/cache/shift.h) \ + include/asm-mips/mach-generic/kmalloc.h \ + $(wildcard include/config/dma/coherent.h) \ + include/asm-mips/mach-generic/cpu-feature-overrides.h \ + include/asm/barrier.h \ + $(wildcard include/config/cpu/has/sync.h) \ + $(wildcard include/config/cpu/has/wb.h) \ + $(wildcard include/config/weak/ordering.h) \ + include/asm/bug.h \ + $(wildcard include/config/bug.h) \ + include/asm/break.h \ + include/asm-generic/bug.h \ + $(wildcard include/config/debug/bugverbose.h) \ + include/asm/byteorder.h \ + $(wildcard include/config/cpu/mips64/r2.h) \ + include/linux/byteorder/little_endian.h \ + include/linux/byteorder/swab.h \ + include/linux/byteorder/generic.h \ + include/asm/war.h \ + $(wildcard include/config/sgi/ip22.h) \ + $(wildcard include/config/sni/rm.h) \ + $(wildcard include/config/cpu/r5432.h) \ + $(wildcard include/config/sb1/pass/1/workarounds.h) \ + $(wildcard include/config/sb1/pass/2/workarounds.h) \ + $(wildcard include/config/mips/malta.h) \ + $(wildcard include/config/mips/atlas.h) \ + $(wildcard include/config/mips/sead.h) \ + $(wildcard include/config/cpu/tx49xx.h) \ + $(wildcard include/config/momenco/jaguar/atx.h) \ + $(wildcard include/config/pmc/yosemite.h) \ + $(wildcard include/config/basler/excite.h) \ + $(wildcard include/config/momenco/ocelot.h) \ + $(wildcard include/config/momenco/ocelot/3.h) \ + $(wildcard include/config/momenco/ocelot/c.h) \ + $(wildcard include/config/sgi/ip32.h) \ + $(wildcard include/config/wr/ppmc.h) \ + include/asm-generic/bitops/non-atomic.h \ + include/asm-generic/bitops/fls64.h \ + include/asm-generic/bitops/ffz.h \ + include/asm-generic/bitops/find.h \ + include/asm-generic/bitops/sched.h \ + include/asm-generic/bitops/hweight.h \ + include/asm-generic/bitops/ext2-non-atomic.h \ + include/asm-generic/bitops/le.h \ + include/asm-generic/bitops/ext2-atomic.h \ + include/asm-generic/bitops/minix.h \ + include/asm/thread_info.h \ + $(wildcard include/config/page/size/4kb.h) \ + $(wildcard include/config/page/size/8kb.h) \ + $(wildcard include/config/page/size/16kb.h) \ + $(wildcard include/config/page/size/64kb.h) \ + $(wildcard include/config/debug/stack/usage.h) \ + include/asm/processor.h \ + $(wildcard include/config/mips/mt/fpaff.h) \ + $(wildcard include/config/cpu/has/prefetch.h) \ + include/linux/cpumask.h \ + $(wildcard include/config/hotplug/cpu.h) \ + include/linux/kernel.h \ + $(wildcard include/config/preempt/voluntary.h) \ + $(wildcard include/config/debug/spinlock/sleep.h) \ + $(wildcard include/config/printk.h) \ + $(wildcard include/config/numa.h) \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ + include/linux/linkage.h \ + include/asm/linkage.h \ + include/linux/log2.h \ + $(wildcard include/config/arch/has/ilog2/u32.h) \ + $(wildcard include/config/arch/has/ilog2/u64.h) \ + include/linux/threads.h \ + $(wildcard include/config/nr/cpus.h) \ + $(wildcard include/config/base/small.h) \ + include/linux/bitmap.h \ + include/linux/string.h \ + include/asm/string.h \ + $(wildcard include/config/cpu/r3000.h) \ + include/asm/cachectl.h \ + include/asm/mipsregs.h \ + $(wildcard include/config/cpu/vr41xx.h) \ + include/asm/prefetch.h \ + include/asm/system.h \ + include/asm/addrspace.h \ + $(wildcard include/config/cpu/r4300.h) \ + $(wildcard include/config/cpu/r4x00.h) \ + $(wildcard include/config/cpu/r5000.h) \ + $(wildcard include/config/cpu/rm7000.h) \ + $(wildcard include/config/cpu/nevada.h) \ + $(wildcard include/config/cpu/r8000.h) \ + $(wildcard include/config/cpu/sb1a.h) \ + include/asm-mips/mach-generic/spaces.h \ + $(wildcard include/config/dma/noncoherent.h) \ + include/asm/dsp.h \ + include/linux/stringify.h \ + include/linux/bottom_half.h \ + include/linux/spinlock_types.h \ + include/linux/lockdep.h \ + $(wildcard include/config/lockdep.h) \ + $(wildcard include/config/generic/hardirqs.h) \ + $(wildcard include/config/prove/locking.h) \ + include/linux/spinlock_types_up.h \ + include/linux/spinlock_up.h \ + include/linux/spinlock_api_up.h \ + include/asm/atomic.h \ + include/asm-generic/atomic.h \ + include/linux/list.h \ + $(wildcard include/config/debug/list.h) \ + include/linux/poison.h \ + include/linux/prefetch.h \ + include/linux/stat.h \ + include/asm/stat.h \ + include/linux/time.h \ + include/linux/seqlock.h \ + include/linux/cache.h \ + $(wildcard include/config/arch/has/cache/line/size.h) \ + include/linux/kmod.h \ + $(wildcard include/config/kmod.h) \ + include/linux/errno.h \ + include/asm/errno.h \ + include/asm-generic/errno-base.h \ + include/linux/elf.h \ + include/linux/auxvec.h \ + include/asm/auxvec.h \ + include/linux/elf-em.h \ + include/asm/elf.h \ + $(wildcard include/config/mips32/n32.h) \ + $(wildcard include/config/mips32/o32.h) \ + $(wildcard include/config/mips32/compat.h) \ + include/linux/kobject.h \ + $(wildcard include/config/hotplug.h) \ + include/linux/sysfs.h \ + include/linux/kref.h \ + include/linux/wait.h \ + include/asm/current.h \ + include/linux/moduleparam.h \ + include/linux/init.h \ + $(wildcard include/config/memory/hotplug.h) \ + $(wildcard include/config/acpi/hotplug/memory.h) \ + include/asm/local.h \ + include/linux/percpu.h \ + include/linux/slab.h \ + $(wildcard include/config/slab/debug.h) \ + $(wildcard include/config/slub.h) \ + $(wildcard include/config/slob.h) \ + $(wildcard include/config/debug/slab.h) \ + include/linux/gfp.h \ + $(wildcard include/config/zone/dma.h) \ + $(wildcard include/config/zone/dma32.h) \ + include/linux/mmzone.h \ + $(wildcard include/config/force/max/zoneorder.h) \ + $(wildcard include/config/arch/populates/node/map.h) \ + $(wildcard include/config/discontigmem.h) \ + $(wildcard include/config/flat/node/mem/map.h) \ + $(wildcard include/config/have/memory/present.h) \ + $(wildcard include/config/need/node/memmap/size.h) \ + $(wildcard include/config/need/multiple/nodes.h) \ + $(wildcard include/config/sparsemem.h) \ + $(wildcard include/config/have/arch/early/pfn/to/nid.h) \ + $(wildcard include/config/flatmem.h) \ + $(wildcard include/config/sparsemem/extreme.h) \ + $(wildcard include/config/nodes/span/other/nodes.h) \ + $(wildcard include/config/holes/in/zone.h) \ + include/linux/numa.h \ + $(wildcard include/config/nodes/shift.h) \ + include/linux/nodemask.h \ + include/asm/page.h \ + $(wildcard include/config/build/elf64.h) \ + include/linux/pfn.h \ + include/asm/io.h \ + include/asm-generic/iomap.h \ + include/asm/pgtable-bits.h \ + $(wildcard include/config/cpu/mips32/r1.h) \ + $(wildcard include/config/cpu/tx39xx.h) \ + $(wildcard include/config/mips/uncached.h) \ + include/asm-mips/mach-generic/ioremap.h \ + include/asm-mips/mach-generic/mangle-port.h \ + $(wildcard include/config/swap/io/space.h) \ + include/asm-generic/memory_model.h \ + $(wildcard include/config/out/of/line/pfn/to/page.h) \ + include/asm-generic/page.h \ + include/linux/memory_hotplug.h \ + $(wildcard include/config/have/arch/nodedata/extension.h) \ + include/linux/notifier.h \ + include/linux/mutex.h \ + $(wildcard include/config/debug/mutexes.h) \ + include/linux/rwsem.h \ + $(wildcard include/config/rwsem/generic/spinlock.h) \ + include/linux/rwsem-spinlock.h \ + include/linux/srcu.h \ + include/linux/topology.h \ + $(wildcard include/config/sched/smt.h) \ + $(wildcard include/config/sched/mc.h) \ + include/linux/smp.h \ + include/asm/topology.h \ + include/asm-mips/mach-generic/topology.h \ + include/asm-generic/topology.h \ + include/asm/sparsemem.h \ + include/linux/slab_def.h \ + include/linux/kmalloc_sizes.h \ + include/asm/percpu.h \ + include/asm-generic/percpu.h \ + include/asm/module.h \ + $(wildcard include/config/cpu/mips32/r2.h) \ + $(wildcard include/config/cpu/mips64/r1.h) \ + $(wildcard include/config/cpu/r6000.h) \ + include/asm/uaccess.h \ + include/asm-generic/uaccess.h \ + include/linux/mm.h \ + $(wildcard include/config/sysctl.h) \ + $(wildcard include/config/mmu.h) \ + $(wildcard include/config/stack/growsup.h) \ + $(wildcard include/config/debug/vm.h) \ + $(wildcard include/config/shmem.h) \ + $(wildcard include/config/split/ptlock/cpus.h) \ + $(wildcard include/config/ia64.h) \ + $(wildcard include/config/proc/fs.h) \ + $(wildcard include/config/debug/pagealloc.h) \ + include/linux/capability.h \ + include/linux/rbtree.h \ + include/linux/prio_tree.h \ + include/linux/fs.h \ + $(wildcard include/config/dnotify.h) \ + $(wildcard include/config/quota.h) \ + $(wildcard include/config/inotify.h) \ + $(wildcard include/config/security.h) \ + $(wildcard include/config/epoll.h) \ + $(wildcard include/config/auditsyscall.h) \ + $(wildcard include/config/block.h) \ + $(wildcard include/config/fs/xip.h) \ + $(wildcard include/config/migration.h) \ + include/linux/limits.h \ + include/linux/ioctl.h \ + include/asm/ioctl.h \ + include/linux/kdev_t.h \ + include/linux/dcache.h \ + $(wildcard include/config/profiling.h) \ + include/linux/rcupdate.h \ + include/linux/namei.h \ + include/linux/radix-tree.h \ + include/linux/pid.h \ + include/asm/semaphore.h \ + include/linux/quota.h \ + include/linux/dqblk_xfs.h \ + include/linux/dqblk_v1.h \ + include/linux/dqblk_v2.h \ + include/linux/nfs_fs_i.h \ + include/linux/nfs.h \ + include/linux/sunrpc/msg_prot.h \ + include/linux/fcntl.h \ + include/asm/fcntl.h \ + include/asm-generic/fcntl.h \ + include/linux/err.h \ + include/linux/debug_locks.h \ + $(wildcard include/config/debug/locking/api/selftests.h) \ + include/linux/backing-dev.h \ + include/linux/percpu_counter.h \ + include/linux/proportions.h \ + include/linux/mm_types.h \ + include/asm/pgtable.h \ + include/asm/pgtable-32.h \ + include/asm/fixmap.h \ + $(wildcard include/config/bcm47xx.h) \ + include/asm/kmap_types.h \ + $(wildcard include/config/debug/highmem.h) \ + include/asm-generic/pgtable-nopmd.h \ + include/asm-generic/pgtable-nopud.h \ + include/asm-generic/pgtable.h \ + include/linux/page-flags.h \ + $(wildcard include/config/s390.h) \ + $(wildcard include/config/swap.h) \ + include/linux/vmstat.h \ + $(wildcard include/config/vm/event/counters.h) \ + include/linux/pci.h \ + $(wildcard include/config/pci/msi.h) \ + $(wildcard include/config/pci.h) \ + $(wildcard include/config/ht/irq.h) \ + $(wildcard include/config/pci/domains.h) \ + include/linux/pci_regs.h \ + include/linux/mod_devicetable.h \ + include/linux/ioport.h \ + include/linux/device.h \ + $(wildcard include/config/debug/devres.h) \ + include/linux/klist.h \ + include/linux/completion.h \ + include/linux/pm.h \ + $(wildcard include/config/pm.h) \ + include/asm/device.h \ + include/asm-generic/device.h \ + include/linux/pci_ids.h \ + include/linux/dmapool.h \ + include/asm/scatterlist.h \ + include/asm/pci.h \ + $(wildcard include/config/dma/need/pci/map/state.h) \ + include/asm-generic/pci-dma-compat.h \ + include/linux/dma-mapping.h \ + include/asm/dma-mapping.h \ + include/linux/interrupt.h \ + $(wildcard include/config/high/res/timers.h) \ + $(wildcard include/config/generic/irq/probe.h) \ + include/linux/irqreturn.h \ + include/linux/hardirq.h \ + $(wildcard include/config/preempt/bkl.h) \ + $(wildcard include/config/virt/cpu/accounting.h) \ + include/linux/smp_lock.h \ + $(wildcard include/config/lock/kernel.h) \ + include/asm/hardirq.h \ + include/linux/irq.h \ + $(wildcard include/config/irq/per/cpu.h) \ + $(wildcard include/config/irq/release/method.h) \ + $(wildcard include/config/generic/pending/irq.h) \ + $(wildcard include/config/irqbalance.h) \ + $(wildcard include/config/auto/irq/affinity.h) \ + $(wildcard include/config/generic/hardirqs/no//do/irq.h) \ + include/asm/irq.h \ + $(wildcard include/config/i8259.h) \ + $(wildcard include/config/mips/mt/smtc/im/backstop.h) \ + include/asm/mipsmtregs.h \ + include/asm-mips/mach-generic/irq.h \ + $(wildcard include/config/irq/cpu/rm7k.h) \ + $(wildcard include/config/irq/cpu/rm9k.h) \ + include/asm/ptrace.h \ + $(wildcard include/config/cpu/has/smartmips.h) \ + include/asm/isadep.h \ + include/asm/irq_regs.h \ + include/asm/hw_irq.h \ + include/linux/profile.h \ + include/linux/irq_cpustat.h \ + include/linux/sched.h \ + $(wildcard include/config/no/hz.h) \ + $(wildcard include/config/detect/softlockup.h) \ + $(wildcard include/config/keys.h) \ + $(wildcard include/config/bsd/process/acct.h) \ + $(wildcard include/config/taskstats.h) \ + $(wildcard include/config/inotify/user.h) \ + $(wildcard include/config/schedstats.h) \ + $(wildcard include/config/task/delay/acct.h) \ + $(wildcard include/config/blk/dev/io/trace.h) \ + $(wildcard include/config/cc/stackprotector.h) \ + $(wildcard include/config/sysvipc.h) \ + $(wildcard include/config/rt/mutexes.h) \ + $(wildcard include/config/task/xacct.h) \ + $(wildcard include/config/cpusets.h) \ + $(wildcard include/config/compat.h) \ + $(wildcard include/config/fault/injection.h) \ + include/asm/param.h \ + $(wildcard include/config/hz.h) \ + include/linux/timex.h \ + $(wildcard include/config/time/interpolation.h) \ + include/asm/timex.h \ + include/asm-mips/mach-generic/timex.h \ + include/linux/jiffies.h \ + include/linux/calc64.h \ + include/asm/div64.h \ + include/asm-generic/div64.h \ + include/asm/mmu.h \ + include/asm/cputime.h \ + include/asm-generic/cputime.h \ + include/linux/sem.h \ + include/linux/ipc.h \ + $(wildcard include/config/ipc/ns.h) \ + include/asm/ipcbuf.h \ + include/asm/sembuf.h \ + include/linux/signal.h \ + include/asm/signal.h \ + $(wildcard include/config/trad/signals.h) \ + $(wildcard include/config/binfmt/irix.h) \ + include/asm-generic/signal.h \ + include/asm/sigcontext.h \ + include/asm/siginfo.h \ + include/asm-generic/siginfo.h \ + include/linux/securebits.h \ + include/linux/fs_struct.h \ + include/linux/seccomp.h \ + $(wildcard include/config/seccomp.h) \ + include/linux/futex.h \ + $(wildcard include/config/futex.h) \ + include/linux/rtmutex.h \ + $(wildcard include/config/debug/rt/mutexes.h) \ + include/linux/plist.h \ + $(wildcard include/config/debug/pi/list.h) \ + include/linux/param.h \ + include/linux/resource.h \ + include/asm/resource.h \ + include/asm-generic/resource.h \ + include/linux/timer.h \ + $(wildcard include/config/timer/stats.h) \ + include/linux/ktime.h \ + $(wildcard include/config/ktime/scalar.h) \ + include/linux/hrtimer.h \ + include/linux/task_io_accounting.h \ + $(wildcard include/config/task/io/accounting.h) \ + include/linux/aio.h \ + include/linux/workqueue.h \ + include/linux/aio_abi.h \ + include/linux/uio.h \ + include/linux/netdevice.h \ + $(wildcard include/config/ax25.h) \ + $(wildcard include/config/tr.h) \ + $(wildcard include/config/net/ipip.h) \ + $(wildcard include/config/net/ipgre.h) \ + $(wildcard include/config/ipv6/sit.h) \ + $(wildcard include/config/ipv6/tunnel.h) \ + $(wildcard include/config/netpoll.h) \ + $(wildcard include/config/net/poll/controller.h) \ + $(wildcard include/config/netpoll/trap.h) \ + $(wildcard include/config/net/dma.h) \ + include/linux/if.h \ + include/linux/socket.h \ + include/asm/socket.h \ + include/asm/sockios.h \ + include/linux/sockios.h \ + include/linux/hdlc/ioctl.h \ + include/linux/if_ether.h \ + include/linux/skbuff.h \ + $(wildcard include/config/nf/conntrack.h) \ + $(wildcard include/config/bridge/netfilter.h) \ + $(wildcard include/config/vlan/8021q.h) \ + $(wildcard include/config/net/sched.h) \ + $(wildcard include/config/net/cls/act.h) \ + $(wildcard include/config/network/secmark.h) \ + $(wildcard include/config/imq.h) \ + include/linux/net.h \ + include/linux/random.h \ + include/linux/sysctl.h \ + $(wildcard include/config/bcm/nat.h) \ + include/linux/textsearch.h \ + include/net/checksum.h \ + include/asm/checksum.h \ + include/linux/in6.h \ + include/linux/dmaengine.h \ + $(wildcard include/config/dma/engine.h) \ + include/linux/if_packet.h \ + include/net/ieee80211.h \ + $(wildcard include/config/ieee80211/debug.h) \ + include/linux/wireless.h \ + include/linux/if_arp.h \ + include/net/iw_handler.h \ + include/net/ieee80211_crypt.h \ + include/asm/paccess.h \ + /home/vicente/repos/tomato/release/src-rt/include/ctf/hndctf.h \ + /home/vicente/repos/tomato/release/src-rt/include/bcmutils.h \ + /home/vicente/repos/tomato/release/src-rt/include/proto/ethernet.h \ + /home/vicente/repos/tomato/release/src-rt/include/packed_section_start.h \ + /home/vicente/repos/tomato/release/src-rt/include/packed_section_end.h \ + /home/vicente/repos/tomato/release/src-rt/include/siutils.h \ + /home/vicente/repos/tomato/release/src-rt/include/hndsoc.h \ + /home/vicente/repos/tomato/release/src-rt/include/sbconfig.h \ + $(wildcard include/config/h.h) \ + /home/vicente/repos/tomato/release/src-rt/include/aidmp.h \ + /home/vicente/repos/tomato/release/src-rt/include/bcmendian.h \ + /home/vicente/repos/tomato/release/src-rt/include/bcmparams.h \ + /home/vicente/repos/tomato/release/src-rt/include/bcmnvram.h \ + $(wildcard include/config/nvram/size.h) \ + $(wildcard include/config/nvram/64k.h) \ + $(wildcard include/config/dual/image.h) \ + $(wildcard include/config/dual/image/flash/support//.h) \ + /home/vicente/repos/tomato/release/src-rt/include/bcmdevs.h \ + /home/vicente/repos/tomato/release/src-rt/include/bcmrobo.h \ + /home/vicente/repos/tomato/release/src-rt/include/hndpmu.h \ + +drivers/net/hnd/../../../../../shared/bcmrobo.o: $(deps_drivers/net/hnd/../../../../../shared/bcmrobo.o) + +$(deps_drivers/net/hnd/../../../../../shared/bcmrobo.o): diff --git a/release/src-rt/shared/.bcmsrom.o.cmd b/release/src-rt/shared/.bcmsrom.o.cmd new file mode 100644 index 0000000000..a32ef23f93 --- /dev/null +++ b/release/src-rt/shared/.bcmsrom.o.cmd @@ -0,0 +1,556 @@ +cmd_drivers/net/hnd/../../../../../shared/bcmsrom.o := mipsel-uclibc-gcc -Wp,-MD,drivers/net/hnd/../../../../../shared/.bcmsrom.o.d -nostdinc -isystem /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include -D__KERNEL__ -Iinclude -include include/linux/autoconf.h -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Werror-implicit-function-declaration -Wno-format-security -fno-delete-null-pointer-checks -I/home/vicente/repos/tomato/release/src-rt/include -DBCMDRIVER -Dlinux -O2 -ffunction-sections -mno-check-zero-division -mabi=32 -G 0 -mno-abicalls -fno-pic -pipe -msoft-float -ggdb -ffreestanding -march=mips32r2 -Wa,-mips32r2 -Wa,--trap -Iinclude/asm-mips/mach-generic -fomit-frame-pointer -fno-stack-protector -funit-at-a-time -Wdeclaration-after-statement -Wno-pointer-sign -fno-strict-overflow -DHNDCTF -DCTFPOOL -DCTFMAP -DBCMDBG_TRAP -DWLC_LOW -DWLC_HIGH -DBCMDMA32 -DBCMNVRAMR -DPHY_HAL -DPHY_HAL -DBCM5354 -DLINUX_HYBRID_POSTPROCESSING_REMOVAL -D"KBUILD_STR(s)=\#s" -D"KBUILD_BASENAME=KBUILD_STR(bcmsrom)" -D"KBUILD_MODNAME=KBUILD_STR(hnd)" -c -o drivers/net/hnd/../../../../../shared/bcmsrom.o drivers/net/hnd/../../../../../shared/bcmsrom.c + +deps_drivers/net/hnd/../../../../../shared/bcmsrom.o := \ + drivers/net/hnd/../../../../../shared/bcmsrom.c \ + /home/vicente/repos/tomato/release/src-rt/include/typedefs.h \ + include/linux/version.h \ + include/linux/types.h \ + $(wildcard include/config/uid16.h) \ + $(wildcard include/config/lbd.h) \ + $(wildcard include/config/lsf.h) \ + $(wildcard include/config/resources/64bit.h) \ + include/linux/posix_types.h \ + include/linux/stddef.h \ + include/linux/compiler.h \ + $(wildcard include/config/enable/must/check.h) \ + include/linux/compiler-gcc4.h \ + $(wildcard include/config/forced/inlining.h) \ + include/linux/compiler-gcc.h \ + include/asm/posix_types.h \ + include/asm/sgidefs.h \ + include/asm/types.h \ + $(wildcard include/config/highmem.h) \ + $(wildcard include/config/64bit/phys/addr.h) \ + $(wildcard include/config/64bit.h) \ + /home/vicente/repos/tomato/release/src-rt/include/bcmdefs.h \ + /home/vicente/repos/tomato/release/src-rt/include/osl.h \ + /home/vicente/repos/tomato/release/src-rt/include/linux_osl.h \ + $(wildcard include/config/mmc/msm7x00a.h) \ + /home/vicente/repos/tomato/release/src-rt/include/linuxver.h \ + $(wildcard include/config/net/radio.h) \ + $(wildcard include/config/wireless/ext.h) \ + $(wildcard include/config/pcmcia.h) \ + $(wildcard include/config/rfkill.h) \ + include/linux/module.h \ + $(wildcard include/config/modules.h) \ + $(wildcard include/config/modversions.h) \ + $(wildcard include/config/unused/symbols.h) \ + $(wildcard include/config/generic/bug.h) \ + $(wildcard include/config/module/unload.h) \ + $(wildcard include/config/kallsyms.h) \ + $(wildcard include/config/sysfs.h) \ + include/linux/spinlock.h \ + $(wildcard include/config/smp.h) \ + $(wildcard include/config/debug/spinlock.h) \ + $(wildcard include/config/preempt.h) \ + $(wildcard include/config/debug/lock/alloc.h) \ + include/linux/preempt.h \ + $(wildcard include/config/debug/preempt.h) \ + include/linux/thread_info.h \ + include/linux/bitops.h \ + include/asm/bitops.h \ + $(wildcard include/config/cpu/mipsr2.h) \ + $(wildcard include/config/cpu/mips64.h) \ + $(wildcard include/config/cpu/mips32.h) \ + include/linux/irqflags.h \ + $(wildcard include/config/trace/irqflags.h) \ + $(wildcard include/config/trace/irqflags/support.h) \ + $(wildcard include/config/x86.h) \ + include/asm/irqflags.h \ + $(wildcard include/config/mips/mt/smtc.h) \ + $(wildcard include/config/irq/cpu.h) \ + $(wildcard include/config/mips/mt/smtc/instant/replay.h) \ + include/asm/hazards.h \ + $(wildcard include/config/cpu/mipsr1.h) \ + $(wildcard include/config/cpu/r10000.h) \ + $(wildcard include/config/cpu/rm9000.h) \ + $(wildcard include/config/cpu/sb1.h) \ + include/asm/cpu-features.h \ + $(wildcard include/config/32bit.h) \ + $(wildcard include/config/cpu/mipsr2/irq/vi.h) \ + $(wildcard include/config/cpu/mipsr2/irq/ei.h) \ + include/asm/cpu.h \ + include/asm/cpu-info.h \ + $(wildcard include/config/sgi/ip27.h) \ + $(wildcard include/config/mips/mt.h) \ + include/asm/cache.h \ + $(wildcard include/config/mips/l1/cache/shift.h) \ + include/asm-mips/mach-generic/kmalloc.h \ + $(wildcard include/config/dma/coherent.h) \ + include/asm-mips/mach-generic/cpu-feature-overrides.h \ + include/asm/barrier.h \ + $(wildcard include/config/cpu/has/sync.h) \ + $(wildcard include/config/cpu/has/wb.h) \ + $(wildcard include/config/weak/ordering.h) \ + include/asm/bug.h \ + $(wildcard include/config/bug.h) \ + include/asm/break.h \ + include/asm-generic/bug.h \ + $(wildcard include/config/debug/bugverbose.h) \ + include/asm/byteorder.h \ + $(wildcard include/config/cpu/mips64/r2.h) \ + include/linux/byteorder/little_endian.h \ + include/linux/byteorder/swab.h \ + include/linux/byteorder/generic.h \ + include/asm/war.h \ + $(wildcard include/config/sgi/ip22.h) \ + $(wildcard include/config/sni/rm.h) \ + $(wildcard include/config/cpu/r5432.h) \ + $(wildcard include/config/sb1/pass/1/workarounds.h) \ + $(wildcard include/config/sb1/pass/2/workarounds.h) \ + $(wildcard include/config/mips/malta.h) \ + $(wildcard include/config/mips/atlas.h) \ + $(wildcard include/config/mips/sead.h) \ + $(wildcard include/config/cpu/tx49xx.h) \ + $(wildcard include/config/momenco/jaguar/atx.h) \ + $(wildcard include/config/pmc/yosemite.h) \ + $(wildcard include/config/basler/excite.h) \ + $(wildcard include/config/momenco/ocelot.h) \ + $(wildcard include/config/momenco/ocelot/3.h) \ + $(wildcard include/config/momenco/ocelot/c.h) \ + $(wildcard include/config/sgi/ip32.h) \ + $(wildcard include/config/wr/ppmc.h) \ + include/asm-generic/bitops/non-atomic.h \ + include/asm-generic/bitops/fls64.h \ + include/asm-generic/bitops/ffz.h \ + include/asm-generic/bitops/find.h \ + include/asm-generic/bitops/sched.h \ + include/asm-generic/bitops/hweight.h \ + include/asm-generic/bitops/ext2-non-atomic.h \ + include/asm-generic/bitops/le.h \ + include/asm-generic/bitops/ext2-atomic.h \ + include/asm-generic/bitops/minix.h \ + include/asm/thread_info.h \ + $(wildcard include/config/page/size/4kb.h) \ + $(wildcard include/config/page/size/8kb.h) \ + $(wildcard include/config/page/size/16kb.h) \ + $(wildcard include/config/page/size/64kb.h) \ + $(wildcard include/config/debug/stack/usage.h) \ + include/asm/processor.h \ + $(wildcard include/config/mips/mt/fpaff.h) \ + $(wildcard include/config/cpu/has/prefetch.h) \ + include/linux/cpumask.h \ + $(wildcard include/config/hotplug/cpu.h) \ + include/linux/kernel.h \ + $(wildcard include/config/preempt/voluntary.h) \ + $(wildcard include/config/debug/spinlock/sleep.h) \ + $(wildcard include/config/printk.h) \ + $(wildcard include/config/numa.h) \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ + include/linux/linkage.h \ + include/asm/linkage.h \ + include/linux/log2.h \ + $(wildcard include/config/arch/has/ilog2/u32.h) \ + $(wildcard include/config/arch/has/ilog2/u64.h) \ + include/linux/threads.h \ + $(wildcard include/config/nr/cpus.h) \ + $(wildcard include/config/base/small.h) \ + include/linux/bitmap.h \ + include/linux/string.h \ + include/asm/string.h \ + $(wildcard include/config/cpu/r3000.h) \ + include/asm/cachectl.h \ + include/asm/mipsregs.h \ + $(wildcard include/config/cpu/vr41xx.h) \ + include/asm/prefetch.h \ + include/asm/system.h \ + include/asm/addrspace.h \ + $(wildcard include/config/cpu/r4300.h) \ + $(wildcard include/config/cpu/r4x00.h) \ + $(wildcard include/config/cpu/r5000.h) \ + $(wildcard include/config/cpu/rm7000.h) \ + $(wildcard include/config/cpu/nevada.h) \ + $(wildcard include/config/cpu/r8000.h) \ + $(wildcard include/config/cpu/sb1a.h) \ + include/asm-mips/mach-generic/spaces.h \ + $(wildcard include/config/dma/noncoherent.h) \ + include/asm/dsp.h \ + include/linux/stringify.h \ + include/linux/bottom_half.h \ + include/linux/spinlock_types.h \ + include/linux/lockdep.h \ + $(wildcard include/config/lockdep.h) \ + $(wildcard include/config/generic/hardirqs.h) \ + $(wildcard include/config/prove/locking.h) \ + include/linux/spinlock_types_up.h \ + include/linux/spinlock_up.h \ + include/linux/spinlock_api_up.h \ + include/asm/atomic.h \ + include/asm-generic/atomic.h \ + include/linux/list.h \ + $(wildcard include/config/debug/list.h) \ + include/linux/poison.h \ + include/linux/prefetch.h \ + include/linux/stat.h \ + include/asm/stat.h \ + include/linux/time.h \ + include/linux/seqlock.h \ + include/linux/cache.h \ + $(wildcard include/config/arch/has/cache/line/size.h) \ + include/linux/kmod.h \ + $(wildcard include/config/kmod.h) \ + include/linux/errno.h \ + include/asm/errno.h \ + include/asm-generic/errno-base.h \ + include/linux/elf.h \ + include/linux/auxvec.h \ + include/asm/auxvec.h \ + include/linux/elf-em.h \ + include/asm/elf.h \ + $(wildcard include/config/mips32/n32.h) \ + $(wildcard include/config/mips32/o32.h) \ + $(wildcard include/config/mips32/compat.h) \ + include/linux/kobject.h \ + $(wildcard include/config/hotplug.h) \ + include/linux/sysfs.h \ + include/linux/kref.h \ + include/linux/wait.h \ + include/asm/current.h \ + include/linux/moduleparam.h \ + include/linux/init.h \ + $(wildcard include/config/memory/hotplug.h) \ + $(wildcard include/config/acpi/hotplug/memory.h) \ + include/asm/local.h \ + include/linux/percpu.h \ + include/linux/slab.h \ + $(wildcard include/config/slab/debug.h) \ + $(wildcard include/config/slub.h) \ + $(wildcard include/config/slob.h) \ + $(wildcard include/config/debug/slab.h) \ + include/linux/gfp.h \ + $(wildcard include/config/zone/dma.h) \ + $(wildcard include/config/zone/dma32.h) \ + include/linux/mmzone.h \ + $(wildcard include/config/force/max/zoneorder.h) \ + $(wildcard include/config/arch/populates/node/map.h) \ + $(wildcard include/config/discontigmem.h) \ + $(wildcard include/config/flat/node/mem/map.h) \ + $(wildcard include/config/have/memory/present.h) \ + $(wildcard include/config/need/node/memmap/size.h) \ + $(wildcard include/config/need/multiple/nodes.h) \ + $(wildcard include/config/sparsemem.h) \ + $(wildcard include/config/have/arch/early/pfn/to/nid.h) \ + $(wildcard include/config/flatmem.h) \ + $(wildcard include/config/sparsemem/extreme.h) \ + $(wildcard include/config/nodes/span/other/nodes.h) \ + $(wildcard include/config/holes/in/zone.h) \ + include/linux/numa.h \ + $(wildcard include/config/nodes/shift.h) \ + include/linux/nodemask.h \ + include/asm/page.h \ + $(wildcard include/config/build/elf64.h) \ + include/linux/pfn.h \ + include/asm/io.h \ + include/asm-generic/iomap.h \ + include/asm/pgtable-bits.h \ + $(wildcard include/config/cpu/mips32/r1.h) \ + $(wildcard include/config/cpu/tx39xx.h) \ + $(wildcard include/config/mips/uncached.h) \ + include/asm-mips/mach-generic/ioremap.h \ + include/asm-mips/mach-generic/mangle-port.h \ + $(wildcard include/config/swap/io/space.h) \ + include/asm-generic/memory_model.h \ + $(wildcard include/config/out/of/line/pfn/to/page.h) \ + include/asm-generic/page.h \ + include/linux/memory_hotplug.h \ + $(wildcard include/config/have/arch/nodedata/extension.h) \ + include/linux/notifier.h \ + include/linux/mutex.h \ + $(wildcard include/config/debug/mutexes.h) \ + include/linux/rwsem.h \ + $(wildcard include/config/rwsem/generic/spinlock.h) \ + include/linux/rwsem-spinlock.h \ + include/linux/srcu.h \ + include/linux/topology.h \ + $(wildcard include/config/sched/smt.h) \ + $(wildcard include/config/sched/mc.h) \ + include/linux/smp.h \ + include/asm/topology.h \ + include/asm-mips/mach-generic/topology.h \ + include/asm-generic/topology.h \ + include/asm/sparsemem.h \ + include/linux/slab_def.h \ + include/linux/kmalloc_sizes.h \ + include/asm/percpu.h \ + include/asm-generic/percpu.h \ + include/asm/module.h \ + $(wildcard include/config/cpu/mips32/r2.h) \ + $(wildcard include/config/cpu/mips64/r1.h) \ + $(wildcard include/config/cpu/r6000.h) \ + include/asm/uaccess.h \ + include/asm-generic/uaccess.h \ + include/linux/mm.h \ + $(wildcard include/config/sysctl.h) \ + $(wildcard include/config/mmu.h) \ + $(wildcard include/config/stack/growsup.h) \ + $(wildcard include/config/debug/vm.h) \ + $(wildcard include/config/shmem.h) \ + $(wildcard include/config/split/ptlock/cpus.h) \ + $(wildcard include/config/ia64.h) \ + $(wildcard include/config/proc/fs.h) \ + $(wildcard include/config/debug/pagealloc.h) \ + include/linux/capability.h \ + include/linux/rbtree.h \ + include/linux/prio_tree.h \ + include/linux/fs.h \ + $(wildcard include/config/dnotify.h) \ + $(wildcard include/config/quota.h) \ + $(wildcard include/config/inotify.h) \ + $(wildcard include/config/security.h) \ + $(wildcard include/config/epoll.h) \ + $(wildcard include/config/auditsyscall.h) \ + $(wildcard include/config/block.h) \ + $(wildcard include/config/fs/xip.h) \ + $(wildcard include/config/migration.h) \ + include/linux/limits.h \ + include/linux/ioctl.h \ + include/asm/ioctl.h \ + include/linux/kdev_t.h \ + include/linux/dcache.h \ + $(wildcard include/config/profiling.h) \ + include/linux/rcupdate.h \ + include/linux/namei.h \ + include/linux/radix-tree.h \ + include/linux/pid.h \ + include/asm/semaphore.h \ + include/linux/quota.h \ + include/linux/dqblk_xfs.h \ + include/linux/dqblk_v1.h \ + include/linux/dqblk_v2.h \ + include/linux/nfs_fs_i.h \ + include/linux/nfs.h \ + include/linux/sunrpc/msg_prot.h \ + include/linux/fcntl.h \ + include/asm/fcntl.h \ + include/asm-generic/fcntl.h \ + include/linux/err.h \ + include/linux/debug_locks.h \ + $(wildcard include/config/debug/locking/api/selftests.h) \ + include/linux/backing-dev.h \ + include/linux/percpu_counter.h \ + include/linux/proportions.h \ + include/linux/mm_types.h \ + include/asm/pgtable.h \ + include/asm/pgtable-32.h \ + include/asm/fixmap.h \ + $(wildcard include/config/bcm47xx.h) \ + include/asm/kmap_types.h \ + $(wildcard include/config/debug/highmem.h) \ + include/asm-generic/pgtable-nopmd.h \ + include/asm-generic/pgtable-nopud.h \ + include/asm-generic/pgtable.h \ + include/linux/page-flags.h \ + $(wildcard include/config/s390.h) \ + $(wildcard include/config/swap.h) \ + include/linux/vmstat.h \ + $(wildcard include/config/vm/event/counters.h) \ + include/linux/pci.h \ + $(wildcard include/config/pci/msi.h) \ + $(wildcard include/config/pci.h) \ + $(wildcard include/config/ht/irq.h) \ + $(wildcard include/config/pci/domains.h) \ + include/linux/pci_regs.h \ + include/linux/mod_devicetable.h \ + include/linux/ioport.h \ + include/linux/device.h \ + $(wildcard include/config/debug/devres.h) \ + include/linux/klist.h \ + include/linux/completion.h \ + include/linux/pm.h \ + $(wildcard include/config/pm.h) \ + include/asm/device.h \ + include/asm-generic/device.h \ + include/linux/pci_ids.h \ + include/linux/dmapool.h \ + include/asm/scatterlist.h \ + include/asm/pci.h \ + $(wildcard include/config/dma/need/pci/map/state.h) \ + include/asm-generic/pci-dma-compat.h \ + include/linux/dma-mapping.h \ + include/asm/dma-mapping.h \ + include/linux/interrupt.h \ + $(wildcard include/config/high/res/timers.h) \ + $(wildcard include/config/generic/irq/probe.h) \ + include/linux/irqreturn.h \ + include/linux/hardirq.h \ + $(wildcard include/config/preempt/bkl.h) \ + $(wildcard include/config/virt/cpu/accounting.h) \ + include/linux/smp_lock.h \ + $(wildcard include/config/lock/kernel.h) \ + include/asm/hardirq.h \ + include/linux/irq.h \ + $(wildcard include/config/irq/per/cpu.h) \ + $(wildcard include/config/irq/release/method.h) \ + $(wildcard include/config/generic/pending/irq.h) \ + $(wildcard include/config/irqbalance.h) \ + $(wildcard include/config/auto/irq/affinity.h) \ + $(wildcard include/config/generic/hardirqs/no//do/irq.h) \ + include/asm/irq.h \ + $(wildcard include/config/i8259.h) \ + $(wildcard include/config/mips/mt/smtc/im/backstop.h) \ + include/asm/mipsmtregs.h \ + include/asm-mips/mach-generic/irq.h \ + $(wildcard include/config/irq/cpu/rm7k.h) \ + $(wildcard include/config/irq/cpu/rm9k.h) \ + include/asm/ptrace.h \ + $(wildcard include/config/cpu/has/smartmips.h) \ + include/asm/isadep.h \ + include/asm/irq_regs.h \ + include/asm/hw_irq.h \ + include/linux/profile.h \ + include/linux/irq_cpustat.h \ + include/linux/sched.h \ + $(wildcard include/config/no/hz.h) \ + $(wildcard include/config/detect/softlockup.h) \ + $(wildcard include/config/keys.h) \ + $(wildcard include/config/bsd/process/acct.h) \ + $(wildcard include/config/taskstats.h) \ + $(wildcard include/config/inotify/user.h) \ + $(wildcard include/config/schedstats.h) \ + $(wildcard include/config/task/delay/acct.h) \ + $(wildcard include/config/blk/dev/io/trace.h) \ + $(wildcard include/config/cc/stackprotector.h) \ + $(wildcard include/config/sysvipc.h) \ + $(wildcard include/config/rt/mutexes.h) \ + $(wildcard include/config/task/xacct.h) \ + $(wildcard include/config/cpusets.h) \ + $(wildcard include/config/compat.h) \ + $(wildcard include/config/fault/injection.h) \ + include/asm/param.h \ + $(wildcard include/config/hz.h) \ + include/linux/timex.h \ + $(wildcard include/config/time/interpolation.h) \ + include/asm/timex.h \ + include/asm-mips/mach-generic/timex.h \ + include/linux/jiffies.h \ + include/linux/calc64.h \ + include/asm/div64.h \ + include/asm-generic/div64.h \ + include/asm/mmu.h \ + include/asm/cputime.h \ + include/asm-generic/cputime.h \ + include/linux/sem.h \ + include/linux/ipc.h \ + $(wildcard include/config/ipc/ns.h) \ + include/asm/ipcbuf.h \ + include/asm/sembuf.h \ + include/linux/signal.h \ + include/asm/signal.h \ + $(wildcard include/config/trad/signals.h) \ + $(wildcard include/config/binfmt/irix.h) \ + include/asm-generic/signal.h \ + include/asm/sigcontext.h \ + include/asm/siginfo.h \ + include/asm-generic/siginfo.h \ + include/linux/securebits.h \ + include/linux/fs_struct.h \ + include/linux/seccomp.h \ + $(wildcard include/config/seccomp.h) \ + include/linux/futex.h \ + $(wildcard include/config/futex.h) \ + include/linux/rtmutex.h \ + $(wildcard include/config/debug/rt/mutexes.h) \ + include/linux/plist.h \ + $(wildcard include/config/debug/pi/list.h) \ + include/linux/param.h \ + include/linux/resource.h \ + include/asm/resource.h \ + include/asm-generic/resource.h \ + include/linux/timer.h \ + $(wildcard include/config/timer/stats.h) \ + include/linux/ktime.h \ + $(wildcard include/config/ktime/scalar.h) \ + include/linux/hrtimer.h \ + include/linux/task_io_accounting.h \ + $(wildcard include/config/task/io/accounting.h) \ + include/linux/aio.h \ + include/linux/workqueue.h \ + include/linux/aio_abi.h \ + include/linux/uio.h \ + include/linux/netdevice.h \ + $(wildcard include/config/ax25.h) \ + $(wildcard include/config/tr.h) \ + $(wildcard include/config/net/ipip.h) \ + $(wildcard include/config/net/ipgre.h) \ + $(wildcard include/config/ipv6/sit.h) \ + $(wildcard include/config/ipv6/tunnel.h) \ + $(wildcard include/config/netpoll.h) \ + $(wildcard include/config/net/poll/controller.h) \ + $(wildcard include/config/netpoll/trap.h) \ + $(wildcard include/config/net/dma.h) \ + include/linux/if.h \ + include/linux/socket.h \ + include/asm/socket.h \ + include/asm/sockios.h \ + include/linux/sockios.h \ + include/linux/hdlc/ioctl.h \ + include/linux/if_ether.h \ + include/linux/skbuff.h \ + $(wildcard include/config/nf/conntrack.h) \ + $(wildcard include/config/bridge/netfilter.h) \ + $(wildcard include/config/vlan/8021q.h) \ + $(wildcard include/config/net/sched.h) \ + $(wildcard include/config/net/cls/act.h) \ + $(wildcard include/config/network/secmark.h) \ + $(wildcard include/config/imq.h) \ + include/linux/net.h \ + include/linux/random.h \ + include/linux/sysctl.h \ + $(wildcard include/config/bcm/nat.h) \ + include/linux/textsearch.h \ + include/net/checksum.h \ + include/asm/checksum.h \ + include/linux/in6.h \ + include/linux/dmaengine.h \ + $(wildcard include/config/dma/engine.h) \ + include/linux/if_packet.h \ + include/net/ieee80211.h \ + $(wildcard include/config/ieee80211/debug.h) \ + include/linux/wireless.h \ + include/linux/if_arp.h \ + include/net/iw_handler.h \ + include/net/ieee80211_crypt.h \ + include/asm/paccess.h \ + /home/vicente/repos/tomato/release/src-rt/include/ctf/hndctf.h \ + /home/vicente/repos/tomato/release/src-rt/include/bcmutils.h \ + /home/vicente/repos/tomato/release/src-rt/include/proto/ethernet.h \ + /home/vicente/repos/tomato/release/src-rt/include/packed_section_start.h \ + /home/vicente/repos/tomato/release/src-rt/include/packed_section_end.h \ + /home/vicente/repos/tomato/release/src-rt/include/hndsoc.h \ + /home/vicente/repos/tomato/release/src-rt/include/sbconfig.h \ + $(wildcard include/config/h.h) \ + /home/vicente/repos/tomato/release/src-rt/include/aidmp.h \ + /home/vicente/repos/tomato/release/src-rt/include/sbchipc.h \ + /home/vicente/repos/tomato/release/src-rt/include/bcmdevs.h \ + /home/vicente/repos/tomato/release/src-rt/include/bcmendian.h \ + /home/vicente/repos/tomato/release/src-rt/include/sbpcmcia.h \ + /home/vicente/repos/tomato/release/src-rt/include/pcicfg.h \ + $(wildcard include/config/addr.h) \ + $(wildcard include/config/bus.h) \ + $(wildcard include/config/slot.h) \ + $(wildcard include/config/fun.h) \ + $(wildcard include/config/off.h) \ + /home/vicente/repos/tomato/release/src-rt/include/siutils.h \ + /home/vicente/repos/tomato/release/src-rt/include/bcmsrom.h \ + /home/vicente/repos/tomato/release/src-rt/include/bcmsrom_fmt.h \ + /home/vicente/repos/tomato/release/src-rt/include/bcmsrom_tbl.h \ + /home/vicente/repos/tomato/release/src-rt/include/sbpcmcia.h \ + /home/vicente/repos/tomato/release/src-rt/include/wlioctl.h \ + $(wildcard include/config/item.h) \ + $(wildcard include/config/usbrndis/retail.h) \ + /home/vicente/repos/tomato/release/src-rt/include/proto/bcmeth.h \ + /home/vicente/repos/tomato/release/src-rt/include/proto/bcmevent.h \ + /home/vicente/repos/tomato/release/src-rt/include/proto/802.11.h \ + /home/vicente/repos/tomato/release/src-rt/include/proto/wpa.h \ + /home/vicente/repos/tomato/release/src-rt/include/bcmwifi.h \ + /home/vicente/repos/tomato/release/src-rt/include/bcmcdc.h \ + /home/vicente/repos/tomato/release/src-rt/include/bcmnvram.h \ + $(wildcard include/config/nvram/size.h) \ + $(wildcard include/config/nvram/64k.h) \ + $(wildcard include/config/dual/image.h) \ + $(wildcard include/config/dual/image/flash/support//.h) \ + /home/vicente/repos/tomato/release/src-rt/include/bcmotp.h \ + +drivers/net/hnd/../../../../../shared/bcmsrom.o: $(deps_drivers/net/hnd/../../../../../shared/bcmsrom.o) + +$(deps_drivers/net/hnd/../../../../../shared/bcmsrom.o): diff --git a/release/src-rt/shared/.bcmutils.o.cmd b/release/src-rt/shared/.bcmutils.o.cmd new file mode 100644 index 0000000000..8d58145a8b --- /dev/null +++ b/release/src-rt/shared/.bcmutils.o.cmd @@ -0,0 +1,536 @@ +cmd_drivers/net/hnd/../../../../../shared/bcmutils.o := mipsel-uclibc-gcc -Wp,-MD,drivers/net/hnd/../../../../../shared/.bcmutils.o.d -nostdinc -isystem /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include -D__KERNEL__ -Iinclude -include include/linux/autoconf.h -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Werror-implicit-function-declaration -Wno-format-security -fno-delete-null-pointer-checks -I/home/vicente/repos/tomato/release/src-rt/include -DBCMDRIVER -Dlinux -O2 -ffunction-sections -mno-check-zero-division -mabi=32 -G 0 -mno-abicalls -fno-pic -pipe -msoft-float -ggdb -ffreestanding -march=mips32r2 -Wa,-mips32r2 -Wa,--trap -Iinclude/asm-mips/mach-generic -fomit-frame-pointer -fno-stack-protector -funit-at-a-time -Wdeclaration-after-statement -Wno-pointer-sign -fno-strict-overflow -DHNDCTF -DCTFPOOL -DCTFMAP -DBCMDBG_TRAP -DWLC_LOW -DWLC_HIGH -DBCMDMA32 -DBCMNVRAMR -DPHY_HAL -DPHY_HAL -DBCM5354 -DLINUX_HYBRID_POSTPROCESSING_REMOVAL -D"KBUILD_STR(s)=\#s" -D"KBUILD_BASENAME=KBUILD_STR(bcmutils)" -D"KBUILD_MODNAME=KBUILD_STR(hnd)" -c -o drivers/net/hnd/../../../../../shared/bcmutils.o drivers/net/hnd/../../../../../shared/bcmutils.c + +deps_drivers/net/hnd/../../../../../shared/bcmutils.o := \ + drivers/net/hnd/../../../../../shared/bcmutils.c \ + $(wildcard include/config/usbrndis/retail.h) \ + /home/vicente/repos/tomato/release/src-rt/include/typedefs.h \ + include/linux/version.h \ + include/linux/types.h \ + $(wildcard include/config/uid16.h) \ + $(wildcard include/config/lbd.h) \ + $(wildcard include/config/lsf.h) \ + $(wildcard include/config/resources/64bit.h) \ + include/linux/posix_types.h \ + include/linux/stddef.h \ + include/linux/compiler.h \ + $(wildcard include/config/enable/must/check.h) \ + include/linux/compiler-gcc4.h \ + $(wildcard include/config/forced/inlining.h) \ + include/linux/compiler-gcc.h \ + include/asm/posix_types.h \ + include/asm/sgidefs.h \ + include/asm/types.h \ + $(wildcard include/config/highmem.h) \ + $(wildcard include/config/64bit/phys/addr.h) \ + $(wildcard include/config/64bit.h) \ + /home/vicente/repos/tomato/release/src-rt/include/bcmdefs.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ + /home/vicente/repos/tomato/release/src-rt/include/osl.h \ + /home/vicente/repos/tomato/release/src-rt/include/linux_osl.h \ + $(wildcard include/config/mmc/msm7x00a.h) \ + /home/vicente/repos/tomato/release/src-rt/include/linuxver.h \ + $(wildcard include/config/net/radio.h) \ + $(wildcard include/config/wireless/ext.h) \ + $(wildcard include/config/pcmcia.h) \ + $(wildcard include/config/rfkill.h) \ + include/linux/module.h \ + $(wildcard include/config/modules.h) \ + $(wildcard include/config/modversions.h) \ + $(wildcard include/config/unused/symbols.h) \ + $(wildcard include/config/generic/bug.h) \ + $(wildcard include/config/module/unload.h) \ + $(wildcard include/config/kallsyms.h) \ + $(wildcard include/config/sysfs.h) \ + include/linux/spinlock.h \ + $(wildcard include/config/smp.h) \ + $(wildcard include/config/debug/spinlock.h) \ + $(wildcard include/config/preempt.h) \ + $(wildcard include/config/debug/lock/alloc.h) \ + include/linux/preempt.h \ + $(wildcard include/config/debug/preempt.h) \ + include/linux/thread_info.h \ + include/linux/bitops.h \ + include/asm/bitops.h \ + $(wildcard include/config/cpu/mipsr2.h) \ + $(wildcard include/config/cpu/mips64.h) \ + $(wildcard include/config/cpu/mips32.h) \ + include/linux/irqflags.h \ + $(wildcard include/config/trace/irqflags.h) \ + $(wildcard include/config/trace/irqflags/support.h) \ + $(wildcard include/config/x86.h) \ + include/asm/irqflags.h \ + $(wildcard include/config/mips/mt/smtc.h) \ + $(wildcard include/config/irq/cpu.h) \ + $(wildcard include/config/mips/mt/smtc/instant/replay.h) \ + include/asm/hazards.h \ + $(wildcard include/config/cpu/mipsr1.h) \ + $(wildcard include/config/cpu/r10000.h) \ + $(wildcard include/config/cpu/rm9000.h) \ + $(wildcard include/config/cpu/sb1.h) \ + include/asm/cpu-features.h \ + $(wildcard include/config/32bit.h) \ + $(wildcard include/config/cpu/mipsr2/irq/vi.h) \ + $(wildcard include/config/cpu/mipsr2/irq/ei.h) \ + include/asm/cpu.h \ + include/asm/cpu-info.h \ + $(wildcard include/config/sgi/ip27.h) \ + $(wildcard include/config/mips/mt.h) \ + include/asm/cache.h \ + $(wildcard include/config/mips/l1/cache/shift.h) \ + include/asm-mips/mach-generic/kmalloc.h \ + $(wildcard include/config/dma/coherent.h) \ + include/asm-mips/mach-generic/cpu-feature-overrides.h \ + include/asm/barrier.h \ + $(wildcard include/config/cpu/has/sync.h) \ + $(wildcard include/config/cpu/has/wb.h) \ + $(wildcard include/config/weak/ordering.h) \ + include/asm/bug.h \ + $(wildcard include/config/bug.h) \ + include/asm/break.h \ + include/asm-generic/bug.h \ + $(wildcard include/config/debug/bugverbose.h) \ + include/asm/byteorder.h \ + $(wildcard include/config/cpu/mips64/r2.h) \ + include/linux/byteorder/little_endian.h \ + include/linux/byteorder/swab.h \ + include/linux/byteorder/generic.h \ + include/asm/war.h \ + $(wildcard include/config/sgi/ip22.h) \ + $(wildcard include/config/sni/rm.h) \ + $(wildcard include/config/cpu/r5432.h) \ + $(wildcard include/config/sb1/pass/1/workarounds.h) \ + $(wildcard include/config/sb1/pass/2/workarounds.h) \ + $(wildcard include/config/mips/malta.h) \ + $(wildcard include/config/mips/atlas.h) \ + $(wildcard include/config/mips/sead.h) \ + $(wildcard include/config/cpu/tx49xx.h) \ + $(wildcard include/config/momenco/jaguar/atx.h) \ + $(wildcard include/config/pmc/yosemite.h) \ + $(wildcard include/config/basler/excite.h) \ + $(wildcard include/config/momenco/ocelot.h) \ + $(wildcard include/config/momenco/ocelot/3.h) \ + $(wildcard include/config/momenco/ocelot/c.h) \ + $(wildcard include/config/sgi/ip32.h) \ + $(wildcard include/config/wr/ppmc.h) \ + include/asm-generic/bitops/non-atomic.h \ + include/asm-generic/bitops/fls64.h \ + include/asm-generic/bitops/ffz.h \ + include/asm-generic/bitops/find.h \ + include/asm-generic/bitops/sched.h \ + include/asm-generic/bitops/hweight.h \ + include/asm-generic/bitops/ext2-non-atomic.h \ + include/asm-generic/bitops/le.h \ + include/asm-generic/bitops/ext2-atomic.h \ + include/asm-generic/bitops/minix.h \ + include/asm/thread_info.h \ + $(wildcard include/config/page/size/4kb.h) \ + $(wildcard include/config/page/size/8kb.h) \ + $(wildcard include/config/page/size/16kb.h) \ + $(wildcard include/config/page/size/64kb.h) \ + $(wildcard include/config/debug/stack/usage.h) \ + include/asm/processor.h \ + $(wildcard include/config/mips/mt/fpaff.h) \ + $(wildcard include/config/cpu/has/prefetch.h) \ + include/linux/cpumask.h \ + $(wildcard include/config/hotplug/cpu.h) \ + include/linux/kernel.h \ + $(wildcard include/config/preempt/voluntary.h) \ + $(wildcard include/config/debug/spinlock/sleep.h) \ + $(wildcard include/config/printk.h) \ + $(wildcard include/config/numa.h) \ + include/linux/linkage.h \ + include/asm/linkage.h \ + include/linux/log2.h \ + $(wildcard include/config/arch/has/ilog2/u32.h) \ + $(wildcard include/config/arch/has/ilog2/u64.h) \ + include/linux/threads.h \ + $(wildcard include/config/nr/cpus.h) \ + $(wildcard include/config/base/small.h) \ + include/linux/bitmap.h \ + include/linux/string.h \ + include/asm/string.h \ + $(wildcard include/config/cpu/r3000.h) \ + include/asm/cachectl.h \ + include/asm/mipsregs.h \ + $(wildcard include/config/cpu/vr41xx.h) \ + include/asm/prefetch.h \ + include/asm/system.h \ + include/asm/addrspace.h \ + $(wildcard include/config/cpu/r4300.h) \ + $(wildcard include/config/cpu/r4x00.h) \ + $(wildcard include/config/cpu/r5000.h) \ + $(wildcard include/config/cpu/rm7000.h) \ + $(wildcard include/config/cpu/nevada.h) \ + $(wildcard include/config/cpu/r8000.h) \ + $(wildcard include/config/cpu/sb1a.h) \ + include/asm-mips/mach-generic/spaces.h \ + $(wildcard include/config/dma/noncoherent.h) \ + include/asm/dsp.h \ + include/linux/stringify.h \ + include/linux/bottom_half.h \ + include/linux/spinlock_types.h \ + include/linux/lockdep.h \ + $(wildcard include/config/lockdep.h) \ + $(wildcard include/config/generic/hardirqs.h) \ + $(wildcard include/config/prove/locking.h) \ + include/linux/spinlock_types_up.h \ + include/linux/spinlock_up.h \ + include/linux/spinlock_api_up.h \ + include/asm/atomic.h \ + include/asm-generic/atomic.h \ + include/linux/list.h \ + $(wildcard include/config/debug/list.h) \ + include/linux/poison.h \ + include/linux/prefetch.h \ + include/linux/stat.h \ + include/asm/stat.h \ + include/linux/time.h \ + include/linux/seqlock.h \ + include/linux/cache.h \ + $(wildcard include/config/arch/has/cache/line/size.h) \ + include/linux/kmod.h \ + $(wildcard include/config/kmod.h) \ + include/linux/errno.h \ + include/asm/errno.h \ + include/asm-generic/errno-base.h \ + include/linux/elf.h \ + include/linux/auxvec.h \ + include/asm/auxvec.h \ + include/linux/elf-em.h \ + include/asm/elf.h \ + $(wildcard include/config/mips32/n32.h) \ + $(wildcard include/config/mips32/o32.h) \ + $(wildcard include/config/mips32/compat.h) \ + include/linux/kobject.h \ + $(wildcard include/config/hotplug.h) \ + include/linux/sysfs.h \ + include/linux/kref.h \ + include/linux/wait.h \ + include/asm/current.h \ + include/linux/moduleparam.h \ + include/linux/init.h \ + $(wildcard include/config/memory/hotplug.h) \ + $(wildcard include/config/acpi/hotplug/memory.h) \ + include/asm/local.h \ + include/linux/percpu.h \ + include/linux/slab.h \ + $(wildcard include/config/slab/debug.h) \ + $(wildcard include/config/slub.h) \ + $(wildcard include/config/slob.h) \ + $(wildcard include/config/debug/slab.h) \ + include/linux/gfp.h \ + $(wildcard include/config/zone/dma.h) \ + $(wildcard include/config/zone/dma32.h) \ + include/linux/mmzone.h \ + $(wildcard include/config/force/max/zoneorder.h) \ + $(wildcard include/config/arch/populates/node/map.h) \ + $(wildcard include/config/discontigmem.h) \ + $(wildcard include/config/flat/node/mem/map.h) \ + $(wildcard include/config/have/memory/present.h) \ + $(wildcard include/config/need/node/memmap/size.h) \ + $(wildcard include/config/need/multiple/nodes.h) \ + $(wildcard include/config/sparsemem.h) \ + $(wildcard include/config/have/arch/early/pfn/to/nid.h) \ + $(wildcard include/config/flatmem.h) \ + $(wildcard include/config/sparsemem/extreme.h) \ + $(wildcard include/config/nodes/span/other/nodes.h) \ + $(wildcard include/config/holes/in/zone.h) \ + include/linux/numa.h \ + $(wildcard include/config/nodes/shift.h) \ + include/linux/nodemask.h \ + include/asm/page.h \ + $(wildcard include/config/build/elf64.h) \ + include/linux/pfn.h \ + include/asm/io.h \ + include/asm-generic/iomap.h \ + include/asm/pgtable-bits.h \ + $(wildcard include/config/cpu/mips32/r1.h) \ + $(wildcard include/config/cpu/tx39xx.h) \ + $(wildcard include/config/mips/uncached.h) \ + include/asm-mips/mach-generic/ioremap.h \ + include/asm-mips/mach-generic/mangle-port.h \ + $(wildcard include/config/swap/io/space.h) \ + include/asm-generic/memory_model.h \ + $(wildcard include/config/out/of/line/pfn/to/page.h) \ + include/asm-generic/page.h \ + include/linux/memory_hotplug.h \ + $(wildcard include/config/have/arch/nodedata/extension.h) \ + include/linux/notifier.h \ + include/linux/mutex.h \ + $(wildcard include/config/debug/mutexes.h) \ + include/linux/rwsem.h \ + $(wildcard include/config/rwsem/generic/spinlock.h) \ + include/linux/rwsem-spinlock.h \ + include/linux/srcu.h \ + include/linux/topology.h \ + $(wildcard include/config/sched/smt.h) \ + $(wildcard include/config/sched/mc.h) \ + include/linux/smp.h \ + include/asm/topology.h \ + include/asm-mips/mach-generic/topology.h \ + include/asm-generic/topology.h \ + include/asm/sparsemem.h \ + include/linux/slab_def.h \ + include/linux/kmalloc_sizes.h \ + include/asm/percpu.h \ + include/asm-generic/percpu.h \ + include/asm/module.h \ + $(wildcard include/config/cpu/mips32/r2.h) \ + $(wildcard include/config/cpu/mips64/r1.h) \ + $(wildcard include/config/cpu/r6000.h) \ + include/asm/uaccess.h \ + include/asm-generic/uaccess.h \ + include/linux/mm.h \ + $(wildcard include/config/sysctl.h) \ + $(wildcard include/config/mmu.h) \ + $(wildcard include/config/stack/growsup.h) \ + $(wildcard include/config/debug/vm.h) \ + $(wildcard include/config/shmem.h) \ + $(wildcard include/config/split/ptlock/cpus.h) \ + $(wildcard include/config/ia64.h) \ + $(wildcard include/config/proc/fs.h) \ + $(wildcard include/config/debug/pagealloc.h) \ + include/linux/capability.h \ + include/linux/rbtree.h \ + include/linux/prio_tree.h \ + include/linux/fs.h \ + $(wildcard include/config/dnotify.h) \ + $(wildcard include/config/quota.h) \ + $(wildcard include/config/inotify.h) \ + $(wildcard include/config/security.h) \ + $(wildcard include/config/epoll.h) \ + $(wildcard include/config/auditsyscall.h) \ + $(wildcard include/config/block.h) \ + $(wildcard include/config/fs/xip.h) \ + $(wildcard include/config/migration.h) \ + include/linux/limits.h \ + include/linux/ioctl.h \ + include/asm/ioctl.h \ + include/linux/kdev_t.h \ + include/linux/dcache.h \ + $(wildcard include/config/profiling.h) \ + include/linux/rcupdate.h \ + include/linux/namei.h \ + include/linux/radix-tree.h \ + include/linux/pid.h \ + include/asm/semaphore.h \ + include/linux/quota.h \ + include/linux/dqblk_xfs.h \ + include/linux/dqblk_v1.h \ + include/linux/dqblk_v2.h \ + include/linux/nfs_fs_i.h \ + include/linux/nfs.h \ + include/linux/sunrpc/msg_prot.h \ + include/linux/fcntl.h \ + include/asm/fcntl.h \ + include/asm-generic/fcntl.h \ + include/linux/err.h \ + include/linux/debug_locks.h \ + $(wildcard include/config/debug/locking/api/selftests.h) \ + include/linux/backing-dev.h \ + include/linux/percpu_counter.h \ + include/linux/proportions.h \ + include/linux/mm_types.h \ + include/asm/pgtable.h \ + include/asm/pgtable-32.h \ + include/asm/fixmap.h \ + $(wildcard include/config/bcm47xx.h) \ + include/asm/kmap_types.h \ + $(wildcard include/config/debug/highmem.h) \ + include/asm-generic/pgtable-nopmd.h \ + include/asm-generic/pgtable-nopud.h \ + include/asm-generic/pgtable.h \ + include/linux/page-flags.h \ + $(wildcard include/config/s390.h) \ + $(wildcard include/config/swap.h) \ + include/linux/vmstat.h \ + $(wildcard include/config/vm/event/counters.h) \ + include/linux/pci.h \ + $(wildcard include/config/pci/msi.h) \ + $(wildcard include/config/pci.h) \ + $(wildcard include/config/ht/irq.h) \ + $(wildcard include/config/pci/domains.h) \ + include/linux/pci_regs.h \ + include/linux/mod_devicetable.h \ + include/linux/ioport.h \ + include/linux/device.h \ + $(wildcard include/config/debug/devres.h) \ + include/linux/klist.h \ + include/linux/completion.h \ + include/linux/pm.h \ + $(wildcard include/config/pm.h) \ + include/asm/device.h \ + include/asm-generic/device.h \ + include/linux/pci_ids.h \ + include/linux/dmapool.h \ + include/asm/scatterlist.h \ + include/asm/pci.h \ + $(wildcard include/config/dma/need/pci/map/state.h) \ + include/asm-generic/pci-dma-compat.h \ + include/linux/dma-mapping.h \ + include/asm/dma-mapping.h \ + include/linux/interrupt.h \ + $(wildcard include/config/high/res/timers.h) \ + $(wildcard include/config/generic/irq/probe.h) \ + include/linux/irqreturn.h \ + include/linux/hardirq.h \ + $(wildcard include/config/preempt/bkl.h) \ + $(wildcard include/config/virt/cpu/accounting.h) \ + include/linux/smp_lock.h \ + $(wildcard include/config/lock/kernel.h) \ + include/asm/hardirq.h \ + include/linux/irq.h \ + $(wildcard include/config/irq/per/cpu.h) \ + $(wildcard include/config/irq/release/method.h) \ + $(wildcard include/config/generic/pending/irq.h) \ + $(wildcard include/config/irqbalance.h) \ + $(wildcard include/config/auto/irq/affinity.h) \ + $(wildcard include/config/generic/hardirqs/no//do/irq.h) \ + include/asm/irq.h \ + $(wildcard include/config/i8259.h) \ + $(wildcard include/config/mips/mt/smtc/im/backstop.h) \ + include/asm/mipsmtregs.h \ + include/asm-mips/mach-generic/irq.h \ + $(wildcard include/config/irq/cpu/rm7k.h) \ + $(wildcard include/config/irq/cpu/rm9k.h) \ + include/asm/ptrace.h \ + $(wildcard include/config/cpu/has/smartmips.h) \ + include/asm/isadep.h \ + include/asm/irq_regs.h \ + include/asm/hw_irq.h \ + include/linux/profile.h \ + include/linux/irq_cpustat.h \ + include/linux/sched.h \ + $(wildcard include/config/no/hz.h) \ + $(wildcard include/config/detect/softlockup.h) \ + $(wildcard include/config/keys.h) \ + $(wildcard include/config/bsd/process/acct.h) \ + $(wildcard include/config/taskstats.h) \ + $(wildcard include/config/inotify/user.h) \ + $(wildcard include/config/schedstats.h) \ + $(wildcard include/config/task/delay/acct.h) \ + $(wildcard include/config/blk/dev/io/trace.h) \ + $(wildcard include/config/cc/stackprotector.h) \ + $(wildcard include/config/sysvipc.h) \ + $(wildcard include/config/rt/mutexes.h) \ + $(wildcard include/config/task/xacct.h) \ + $(wildcard include/config/cpusets.h) \ + $(wildcard include/config/compat.h) \ + $(wildcard include/config/fault/injection.h) \ + include/asm/param.h \ + $(wildcard include/config/hz.h) \ + include/linux/timex.h \ + $(wildcard include/config/time/interpolation.h) \ + include/asm/timex.h \ + include/asm-mips/mach-generic/timex.h \ + include/linux/jiffies.h \ + include/linux/calc64.h \ + include/asm/div64.h \ + include/asm-generic/div64.h \ + include/asm/mmu.h \ + include/asm/cputime.h \ + include/asm-generic/cputime.h \ + include/linux/sem.h \ + include/linux/ipc.h \ + $(wildcard include/config/ipc/ns.h) \ + include/asm/ipcbuf.h \ + include/asm/sembuf.h \ + include/linux/signal.h \ + include/asm/signal.h \ + $(wildcard include/config/trad/signals.h) \ + $(wildcard include/config/binfmt/irix.h) \ + include/asm-generic/signal.h \ + include/asm/sigcontext.h \ + include/asm/siginfo.h \ + include/asm-generic/siginfo.h \ + include/linux/securebits.h \ + include/linux/fs_struct.h \ + include/linux/seccomp.h \ + $(wildcard include/config/seccomp.h) \ + include/linux/futex.h \ + $(wildcard include/config/futex.h) \ + include/linux/rtmutex.h \ + $(wildcard include/config/debug/rt/mutexes.h) \ + include/linux/plist.h \ + $(wildcard include/config/debug/pi/list.h) \ + include/linux/param.h \ + include/linux/resource.h \ + include/asm/resource.h \ + include/asm-generic/resource.h \ + include/linux/timer.h \ + $(wildcard include/config/timer/stats.h) \ + include/linux/ktime.h \ + $(wildcard include/config/ktime/scalar.h) \ + include/linux/hrtimer.h \ + include/linux/task_io_accounting.h \ + $(wildcard include/config/task/io/accounting.h) \ + include/linux/aio.h \ + include/linux/workqueue.h \ + include/linux/aio_abi.h \ + include/linux/uio.h \ + include/linux/netdevice.h \ + $(wildcard include/config/ax25.h) \ + $(wildcard include/config/tr.h) \ + $(wildcard include/config/net/ipip.h) \ + $(wildcard include/config/net/ipgre.h) \ + $(wildcard include/config/ipv6/sit.h) \ + $(wildcard include/config/ipv6/tunnel.h) \ + $(wildcard include/config/netpoll.h) \ + $(wildcard include/config/net/poll/controller.h) \ + $(wildcard include/config/netpoll/trap.h) \ + $(wildcard include/config/net/dma.h) \ + include/linux/if.h \ + include/linux/socket.h \ + include/asm/socket.h \ + include/asm/sockios.h \ + include/linux/sockios.h \ + include/linux/hdlc/ioctl.h \ + include/linux/if_ether.h \ + include/linux/skbuff.h \ + $(wildcard include/config/nf/conntrack.h) \ + $(wildcard include/config/bridge/netfilter.h) \ + $(wildcard include/config/vlan/8021q.h) \ + $(wildcard include/config/net/sched.h) \ + $(wildcard include/config/net/cls/act.h) \ + $(wildcard include/config/network/secmark.h) \ + $(wildcard include/config/imq.h) \ + include/linux/net.h \ + include/linux/random.h \ + include/linux/sysctl.h \ + $(wildcard include/config/bcm/nat.h) \ + include/linux/textsearch.h \ + include/net/checksum.h \ + include/asm/checksum.h \ + include/linux/in6.h \ + include/linux/dmaengine.h \ + $(wildcard include/config/dma/engine.h) \ + include/linux/if_packet.h \ + include/net/ieee80211.h \ + $(wildcard include/config/ieee80211/debug.h) \ + include/linux/wireless.h \ + include/linux/if_arp.h \ + include/net/iw_handler.h \ + include/net/ieee80211_crypt.h \ + include/asm/paccess.h \ + /home/vicente/repos/tomato/release/src-rt/include/ctf/hndctf.h \ + /home/vicente/repos/tomato/release/src-rt/include/bcmutils.h \ + /home/vicente/repos/tomato/release/src-rt/include/proto/ethernet.h \ + /home/vicente/repos/tomato/release/src-rt/include/packed_section_start.h \ + /home/vicente/repos/tomato/release/src-rt/include/packed_section_end.h \ + /home/vicente/repos/tomato/release/src-rt/include/siutils.h \ + /home/vicente/repos/tomato/release/src-rt/include/bcmnvram.h \ + $(wildcard include/config/nvram/size.h) \ + $(wildcard include/config/nvram/64k.h) \ + $(wildcard include/config/dual/image.h) \ + $(wildcard include/config/dual/image/flash/support//.h) \ + /home/vicente/repos/tomato/release/src-rt/include/bcmendian.h \ + /home/vicente/repos/tomato/release/src-rt/include/bcmdevs.h \ + /home/vicente/repos/tomato/release/src-rt/include/proto/vlan.h \ + /home/vicente/repos/tomato/release/src-rt/include/proto/bcmip.h \ + /home/vicente/repos/tomato/release/src-rt/include/proto/802.1d.h \ + /home/vicente/repos/tomato/release/src-rt/include/proto/802.11.h \ + /home/vicente/repos/tomato/release/src-rt/include/proto/wpa.h \ + +drivers/net/hnd/../../../../../shared/bcmutils.o: $(deps_drivers/net/hnd/../../../../../shared/bcmutils.o) + +$(deps_drivers/net/hnd/../../../../../shared/bcmutils.o): diff --git a/release/src-rt/shared/.hndchipc.o.cmd b/release/src-rt/shared/.hndchipc.o.cmd new file mode 100644 index 0000000000..dad0ef2487 --- /dev/null +++ b/release/src-rt/shared/.hndchipc.o.cmd @@ -0,0 +1,536 @@ +cmd_arch/mips/brcm-boards/bcm947xx/../../../../../../shared/hndchipc.o := mipsel-uclibc-gcc -Wp,-MD,arch/mips/brcm-boards/bcm947xx/../../../../../../shared/.hndchipc.o.d -nostdinc -isystem /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include -D__KERNEL__ -Iinclude -include include/linux/autoconf.h -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Werror-implicit-function-declaration -Wno-format-security -fno-delete-null-pointer-checks -I/home/vicente/repos/tomato/release/src-rt/include -DBCMDRIVER -Dlinux -O2 -ffunction-sections -mno-check-zero-division -mabi=32 -G 0 -mno-abicalls -fno-pic -pipe -msoft-float -ggdb -ffreestanding -march=mips32r2 -Wa,-mips32r2 -Wa,--trap -Iinclude/asm-mips/mach-generic -fomit-frame-pointer -fno-stack-protector -funit-at-a-time -Wdeclaration-after-statement -Wno-pointer-sign -fno-strict-overflow -DHNDCTF -DCTFPOOL -DCTFMAP -DLINUX_HYBRID_POSTPROCESSING_REMOVAL -D"KBUILD_STR(s)=\#s" -D"KBUILD_BASENAME=KBUILD_STR(hndchipc)" -D"KBUILD_MODNAME=KBUILD_STR(bcm947xx)" -c -o arch/mips/brcm-boards/bcm947xx/../../../../../../shared/hndchipc.o arch/mips/brcm-boards/bcm947xx/../../../../../../shared/hndchipc.c + +deps_arch/mips/brcm-boards/bcm947xx/../../../../../../shared/hndchipc.o := \ + arch/mips/brcm-boards/bcm947xx/../../../../../../shared/hndchipc.c \ + /home/vicente/repos/tomato/release/src-rt/include/typedefs.h \ + include/linux/version.h \ + include/linux/types.h \ + $(wildcard include/config/uid16.h) \ + $(wildcard include/config/lbd.h) \ + $(wildcard include/config/lsf.h) \ + $(wildcard include/config/resources/64bit.h) \ + include/linux/posix_types.h \ + include/linux/stddef.h \ + include/linux/compiler.h \ + $(wildcard include/config/enable/must/check.h) \ + include/linux/compiler-gcc4.h \ + $(wildcard include/config/forced/inlining.h) \ + include/linux/compiler-gcc.h \ + include/asm/posix_types.h \ + include/asm/sgidefs.h \ + include/asm/types.h \ + $(wildcard include/config/highmem.h) \ + $(wildcard include/config/64bit/phys/addr.h) \ + $(wildcard include/config/64bit.h) \ + /home/vicente/repos/tomato/release/src-rt/include/bcmdefs.h \ + /home/vicente/repos/tomato/release/src-rt/include/osl.h \ + /home/vicente/repos/tomato/release/src-rt/include/linux_osl.h \ + $(wildcard include/config/mmc/msm7x00a.h) \ + /home/vicente/repos/tomato/release/src-rt/include/linuxver.h \ + $(wildcard include/config/net/radio.h) \ + $(wildcard include/config/wireless/ext.h) \ + $(wildcard include/config/pcmcia.h) \ + $(wildcard include/config/rfkill.h) \ + include/linux/module.h \ + $(wildcard include/config/modules.h) \ + $(wildcard include/config/modversions.h) \ + $(wildcard include/config/unused/symbols.h) \ + $(wildcard include/config/generic/bug.h) \ + $(wildcard include/config/module/unload.h) \ + $(wildcard include/config/kallsyms.h) \ + $(wildcard include/config/sysfs.h) \ + include/linux/spinlock.h \ + $(wildcard include/config/smp.h) \ + $(wildcard include/config/debug/spinlock.h) \ + $(wildcard include/config/preempt.h) \ + $(wildcard include/config/debug/lock/alloc.h) \ + include/linux/preempt.h \ + $(wildcard include/config/debug/preempt.h) \ + include/linux/thread_info.h \ + include/linux/bitops.h \ + include/asm/bitops.h \ + $(wildcard include/config/cpu/mipsr2.h) \ + $(wildcard include/config/cpu/mips64.h) \ + $(wildcard include/config/cpu/mips32.h) \ + include/linux/irqflags.h \ + $(wildcard include/config/trace/irqflags.h) \ + $(wildcard include/config/trace/irqflags/support.h) \ + $(wildcard include/config/x86.h) \ + include/asm/irqflags.h \ + $(wildcard include/config/mips/mt/smtc.h) \ + $(wildcard include/config/irq/cpu.h) \ + $(wildcard include/config/mips/mt/smtc/instant/replay.h) \ + include/asm/hazards.h \ + $(wildcard include/config/cpu/mipsr1.h) \ + $(wildcard include/config/cpu/r10000.h) \ + $(wildcard include/config/cpu/rm9000.h) \ + $(wildcard include/config/cpu/sb1.h) \ + include/asm/cpu-features.h \ + $(wildcard include/config/32bit.h) \ + $(wildcard include/config/cpu/mipsr2/irq/vi.h) \ + $(wildcard include/config/cpu/mipsr2/irq/ei.h) \ + include/asm/cpu.h \ + include/asm/cpu-info.h \ + $(wildcard include/config/sgi/ip27.h) \ + $(wildcard include/config/mips/mt.h) \ + include/asm/cache.h \ + $(wildcard include/config/mips/l1/cache/shift.h) \ + include/asm-mips/mach-generic/kmalloc.h \ + $(wildcard include/config/dma/coherent.h) \ + include/asm-mips/mach-generic/cpu-feature-overrides.h \ + include/asm/barrier.h \ + $(wildcard include/config/cpu/has/sync.h) \ + $(wildcard include/config/cpu/has/wb.h) \ + $(wildcard include/config/weak/ordering.h) \ + include/asm/bug.h \ + $(wildcard include/config/bug.h) \ + include/asm/break.h \ + include/asm-generic/bug.h \ + $(wildcard include/config/debug/bugverbose.h) \ + include/asm/byteorder.h \ + $(wildcard include/config/cpu/mips64/r2.h) \ + include/linux/byteorder/little_endian.h \ + include/linux/byteorder/swab.h \ + include/linux/byteorder/generic.h \ + include/asm/war.h \ + $(wildcard include/config/sgi/ip22.h) \ + $(wildcard include/config/sni/rm.h) \ + $(wildcard include/config/cpu/r5432.h) \ + $(wildcard include/config/sb1/pass/1/workarounds.h) \ + $(wildcard include/config/sb1/pass/2/workarounds.h) \ + $(wildcard include/config/mips/malta.h) \ + $(wildcard include/config/mips/atlas.h) \ + $(wildcard include/config/mips/sead.h) \ + $(wildcard include/config/cpu/tx49xx.h) \ + $(wildcard include/config/momenco/jaguar/atx.h) \ + $(wildcard include/config/pmc/yosemite.h) \ + $(wildcard include/config/basler/excite.h) \ + $(wildcard include/config/momenco/ocelot.h) \ + $(wildcard include/config/momenco/ocelot/3.h) \ + $(wildcard include/config/momenco/ocelot/c.h) \ + $(wildcard include/config/sgi/ip32.h) \ + $(wildcard include/config/wr/ppmc.h) \ + include/asm-generic/bitops/non-atomic.h \ + include/asm-generic/bitops/fls64.h \ + include/asm-generic/bitops/ffz.h \ + include/asm-generic/bitops/find.h \ + include/asm-generic/bitops/sched.h \ + include/asm-generic/bitops/hweight.h \ + include/asm-generic/bitops/ext2-non-atomic.h \ + include/asm-generic/bitops/le.h \ + include/asm-generic/bitops/ext2-atomic.h \ + include/asm-generic/bitops/minix.h \ + include/asm/thread_info.h \ + $(wildcard include/config/page/size/4kb.h) \ + $(wildcard include/config/page/size/8kb.h) \ + $(wildcard include/config/page/size/16kb.h) \ + $(wildcard include/config/page/size/64kb.h) \ + $(wildcard include/config/debug/stack/usage.h) \ + include/asm/processor.h \ + $(wildcard include/config/mips/mt/fpaff.h) \ + $(wildcard include/config/cpu/has/prefetch.h) \ + include/linux/cpumask.h \ + $(wildcard include/config/hotplug/cpu.h) \ + include/linux/kernel.h \ + $(wildcard include/config/preempt/voluntary.h) \ + $(wildcard include/config/debug/spinlock/sleep.h) \ + $(wildcard include/config/printk.h) \ + $(wildcard include/config/numa.h) \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ + include/linux/linkage.h \ + include/asm/linkage.h \ + include/linux/log2.h \ + $(wildcard include/config/arch/has/ilog2/u32.h) \ + $(wildcard include/config/arch/has/ilog2/u64.h) \ + include/linux/threads.h \ + $(wildcard include/config/nr/cpus.h) \ + $(wildcard include/config/base/small.h) \ + include/linux/bitmap.h \ + include/linux/string.h \ + include/asm/string.h \ + $(wildcard include/config/cpu/r3000.h) \ + include/asm/cachectl.h \ + include/asm/mipsregs.h \ + $(wildcard include/config/cpu/vr41xx.h) \ + include/asm/prefetch.h \ + include/asm/system.h \ + include/asm/addrspace.h \ + $(wildcard include/config/cpu/r4300.h) \ + $(wildcard include/config/cpu/r4x00.h) \ + $(wildcard include/config/cpu/r5000.h) \ + $(wildcard include/config/cpu/rm7000.h) \ + $(wildcard include/config/cpu/nevada.h) \ + $(wildcard include/config/cpu/r8000.h) \ + $(wildcard include/config/cpu/sb1a.h) \ + include/asm-mips/mach-generic/spaces.h \ + $(wildcard include/config/dma/noncoherent.h) \ + include/asm/dsp.h \ + include/linux/stringify.h \ + include/linux/bottom_half.h \ + include/linux/spinlock_types.h \ + include/linux/lockdep.h \ + $(wildcard include/config/lockdep.h) \ + $(wildcard include/config/generic/hardirqs.h) \ + $(wildcard include/config/prove/locking.h) \ + include/linux/spinlock_types_up.h \ + include/linux/spinlock_up.h \ + include/linux/spinlock_api_up.h \ + include/asm/atomic.h \ + include/asm-generic/atomic.h \ + include/linux/list.h \ + $(wildcard include/config/debug/list.h) \ + include/linux/poison.h \ + include/linux/prefetch.h \ + include/linux/stat.h \ + include/asm/stat.h \ + include/linux/time.h \ + include/linux/seqlock.h \ + include/linux/cache.h \ + $(wildcard include/config/arch/has/cache/line/size.h) \ + include/linux/kmod.h \ + $(wildcard include/config/kmod.h) \ + include/linux/errno.h \ + include/asm/errno.h \ + include/asm-generic/errno-base.h \ + include/linux/elf.h \ + include/linux/auxvec.h \ + include/asm/auxvec.h \ + include/linux/elf-em.h \ + include/asm/elf.h \ + $(wildcard include/config/mips32/n32.h) \ + $(wildcard include/config/mips32/o32.h) \ + $(wildcard include/config/mips32/compat.h) \ + include/linux/kobject.h \ + $(wildcard include/config/hotplug.h) \ + include/linux/sysfs.h \ + include/linux/kref.h \ + include/linux/wait.h \ + include/asm/current.h \ + include/linux/moduleparam.h \ + include/linux/init.h \ + $(wildcard include/config/memory/hotplug.h) \ + $(wildcard include/config/acpi/hotplug/memory.h) \ + include/asm/local.h \ + include/linux/percpu.h \ + include/linux/slab.h \ + $(wildcard include/config/slab/debug.h) \ + $(wildcard include/config/slub.h) \ + $(wildcard include/config/slob.h) \ + $(wildcard include/config/debug/slab.h) \ + include/linux/gfp.h \ + $(wildcard include/config/zone/dma.h) \ + $(wildcard include/config/zone/dma32.h) \ + include/linux/mmzone.h \ + $(wildcard include/config/force/max/zoneorder.h) \ + $(wildcard include/config/arch/populates/node/map.h) \ + $(wildcard include/config/discontigmem.h) \ + $(wildcard include/config/flat/node/mem/map.h) \ + $(wildcard include/config/have/memory/present.h) \ + $(wildcard include/config/need/node/memmap/size.h) \ + $(wildcard include/config/need/multiple/nodes.h) \ + $(wildcard include/config/sparsemem.h) \ + $(wildcard include/config/have/arch/early/pfn/to/nid.h) \ + $(wildcard include/config/flatmem.h) \ + $(wildcard include/config/sparsemem/extreme.h) \ + $(wildcard include/config/nodes/span/other/nodes.h) \ + $(wildcard include/config/holes/in/zone.h) \ + include/linux/numa.h \ + $(wildcard include/config/nodes/shift.h) \ + include/linux/nodemask.h \ + include/asm/page.h \ + $(wildcard include/config/build/elf64.h) \ + include/linux/pfn.h \ + include/asm/io.h \ + include/asm-generic/iomap.h \ + include/asm/pgtable-bits.h \ + $(wildcard include/config/cpu/mips32/r1.h) \ + $(wildcard include/config/cpu/tx39xx.h) \ + $(wildcard include/config/mips/uncached.h) \ + include/asm-mips/mach-generic/ioremap.h \ + include/asm-mips/mach-generic/mangle-port.h \ + $(wildcard include/config/swap/io/space.h) \ + include/asm-generic/memory_model.h \ + $(wildcard include/config/out/of/line/pfn/to/page.h) \ + include/asm-generic/page.h \ + include/linux/memory_hotplug.h \ + $(wildcard include/config/have/arch/nodedata/extension.h) \ + include/linux/notifier.h \ + include/linux/mutex.h \ + $(wildcard include/config/debug/mutexes.h) \ + include/linux/rwsem.h \ + $(wildcard include/config/rwsem/generic/spinlock.h) \ + include/linux/rwsem-spinlock.h \ + include/linux/srcu.h \ + include/linux/topology.h \ + $(wildcard include/config/sched/smt.h) \ + $(wildcard include/config/sched/mc.h) \ + include/linux/smp.h \ + include/asm/topology.h \ + include/asm-mips/mach-generic/topology.h \ + include/asm-generic/topology.h \ + include/asm/sparsemem.h \ + include/linux/slab_def.h \ + include/linux/kmalloc_sizes.h \ + include/asm/percpu.h \ + include/asm-generic/percpu.h \ + include/asm/module.h \ + $(wildcard include/config/cpu/mips32/r2.h) \ + $(wildcard include/config/cpu/mips64/r1.h) \ + $(wildcard include/config/cpu/r6000.h) \ + include/asm/uaccess.h \ + include/asm-generic/uaccess.h \ + include/linux/mm.h \ + $(wildcard include/config/sysctl.h) \ + $(wildcard include/config/mmu.h) \ + $(wildcard include/config/stack/growsup.h) \ + $(wildcard include/config/debug/vm.h) \ + $(wildcard include/config/shmem.h) \ + $(wildcard include/config/split/ptlock/cpus.h) \ + $(wildcard include/config/ia64.h) \ + $(wildcard include/config/proc/fs.h) \ + $(wildcard include/config/debug/pagealloc.h) \ + include/linux/capability.h \ + include/linux/rbtree.h \ + include/linux/prio_tree.h \ + include/linux/fs.h \ + $(wildcard include/config/dnotify.h) \ + $(wildcard include/config/quota.h) \ + $(wildcard include/config/inotify.h) \ + $(wildcard include/config/security.h) \ + $(wildcard include/config/epoll.h) \ + $(wildcard include/config/auditsyscall.h) \ + $(wildcard include/config/block.h) \ + $(wildcard include/config/fs/xip.h) \ + $(wildcard include/config/migration.h) \ + include/linux/limits.h \ + include/linux/ioctl.h \ + include/asm/ioctl.h \ + include/linux/kdev_t.h \ + include/linux/dcache.h \ + $(wildcard include/config/profiling.h) \ + include/linux/rcupdate.h \ + include/linux/namei.h \ + include/linux/radix-tree.h \ + include/linux/pid.h \ + include/asm/semaphore.h \ + include/linux/quota.h \ + include/linux/dqblk_xfs.h \ + include/linux/dqblk_v1.h \ + include/linux/dqblk_v2.h \ + include/linux/nfs_fs_i.h \ + include/linux/nfs.h \ + include/linux/sunrpc/msg_prot.h \ + include/linux/fcntl.h \ + include/asm/fcntl.h \ + include/asm-generic/fcntl.h \ + include/linux/err.h \ + include/linux/debug_locks.h \ + $(wildcard include/config/debug/locking/api/selftests.h) \ + include/linux/backing-dev.h \ + include/linux/percpu_counter.h \ + include/linux/proportions.h \ + include/linux/mm_types.h \ + include/asm/pgtable.h \ + include/asm/pgtable-32.h \ + include/asm/fixmap.h \ + $(wildcard include/config/bcm47xx.h) \ + include/asm/kmap_types.h \ + $(wildcard include/config/debug/highmem.h) \ + include/asm-generic/pgtable-nopmd.h \ + include/asm-generic/pgtable-nopud.h \ + include/asm-generic/pgtable.h \ + include/linux/page-flags.h \ + $(wildcard include/config/s390.h) \ + $(wildcard include/config/swap.h) \ + include/linux/vmstat.h \ + $(wildcard include/config/vm/event/counters.h) \ + include/linux/pci.h \ + $(wildcard include/config/pci/msi.h) \ + $(wildcard include/config/pci.h) \ + $(wildcard include/config/ht/irq.h) \ + $(wildcard include/config/pci/domains.h) \ + include/linux/pci_regs.h \ + include/linux/mod_devicetable.h \ + include/linux/ioport.h \ + include/linux/device.h \ + $(wildcard include/config/debug/devres.h) \ + include/linux/klist.h \ + include/linux/completion.h \ + include/linux/pm.h \ + $(wildcard include/config/pm.h) \ + include/asm/device.h \ + include/asm-generic/device.h \ + include/linux/pci_ids.h \ + include/linux/dmapool.h \ + include/asm/scatterlist.h \ + include/asm/pci.h \ + $(wildcard include/config/dma/need/pci/map/state.h) \ + include/asm-generic/pci-dma-compat.h \ + include/linux/dma-mapping.h \ + include/asm/dma-mapping.h \ + include/linux/interrupt.h \ + $(wildcard include/config/high/res/timers.h) \ + $(wildcard include/config/generic/irq/probe.h) \ + include/linux/irqreturn.h \ + include/linux/hardirq.h \ + $(wildcard include/config/preempt/bkl.h) \ + $(wildcard include/config/virt/cpu/accounting.h) \ + include/linux/smp_lock.h \ + $(wildcard include/config/lock/kernel.h) \ + include/asm/hardirq.h \ + include/linux/irq.h \ + $(wildcard include/config/irq/per/cpu.h) \ + $(wildcard include/config/irq/release/method.h) \ + $(wildcard include/config/generic/pending/irq.h) \ + $(wildcard include/config/irqbalance.h) \ + $(wildcard include/config/auto/irq/affinity.h) \ + $(wildcard include/config/generic/hardirqs/no//do/irq.h) \ + include/asm/irq.h \ + $(wildcard include/config/i8259.h) \ + $(wildcard include/config/mips/mt/smtc/im/backstop.h) \ + include/asm/mipsmtregs.h \ + include/asm-mips/mach-generic/irq.h \ + $(wildcard include/config/irq/cpu/rm7k.h) \ + $(wildcard include/config/irq/cpu/rm9k.h) \ + include/asm/ptrace.h \ + $(wildcard include/config/cpu/has/smartmips.h) \ + include/asm/isadep.h \ + include/asm/irq_regs.h \ + include/asm/hw_irq.h \ + include/linux/profile.h \ + include/linux/irq_cpustat.h \ + include/linux/sched.h \ + $(wildcard include/config/no/hz.h) \ + $(wildcard include/config/detect/softlockup.h) \ + $(wildcard include/config/keys.h) \ + $(wildcard include/config/bsd/process/acct.h) \ + $(wildcard include/config/taskstats.h) \ + $(wildcard include/config/inotify/user.h) \ + $(wildcard include/config/schedstats.h) \ + $(wildcard include/config/task/delay/acct.h) \ + $(wildcard include/config/blk/dev/io/trace.h) \ + $(wildcard include/config/cc/stackprotector.h) \ + $(wildcard include/config/sysvipc.h) \ + $(wildcard include/config/rt/mutexes.h) \ + $(wildcard include/config/task/xacct.h) \ + $(wildcard include/config/cpusets.h) \ + $(wildcard include/config/compat.h) \ + $(wildcard include/config/fault/injection.h) \ + include/asm/param.h \ + $(wildcard include/config/hz.h) \ + include/linux/timex.h \ + $(wildcard include/config/time/interpolation.h) \ + include/asm/timex.h \ + include/asm-mips/mach-generic/timex.h \ + include/linux/jiffies.h \ + include/linux/calc64.h \ + include/asm/div64.h \ + include/asm-generic/div64.h \ + include/asm/mmu.h \ + include/asm/cputime.h \ + include/asm-generic/cputime.h \ + include/linux/sem.h \ + include/linux/ipc.h \ + $(wildcard include/config/ipc/ns.h) \ + include/asm/ipcbuf.h \ + include/asm/sembuf.h \ + include/linux/signal.h \ + include/asm/signal.h \ + $(wildcard include/config/trad/signals.h) \ + $(wildcard include/config/binfmt/irix.h) \ + include/asm-generic/signal.h \ + include/asm/sigcontext.h \ + include/asm/siginfo.h \ + include/asm-generic/siginfo.h \ + include/linux/securebits.h \ + include/linux/fs_struct.h \ + include/linux/seccomp.h \ + $(wildcard include/config/seccomp.h) \ + include/linux/futex.h \ + $(wildcard include/config/futex.h) \ + include/linux/rtmutex.h \ + $(wildcard include/config/debug/rt/mutexes.h) \ + include/linux/plist.h \ + $(wildcard include/config/debug/pi/list.h) \ + include/linux/param.h \ + include/linux/resource.h \ + include/asm/resource.h \ + include/asm-generic/resource.h \ + include/linux/timer.h \ + $(wildcard include/config/timer/stats.h) \ + include/linux/ktime.h \ + $(wildcard include/config/ktime/scalar.h) \ + include/linux/hrtimer.h \ + include/linux/task_io_accounting.h \ + $(wildcard include/config/task/io/accounting.h) \ + include/linux/aio.h \ + include/linux/workqueue.h \ + include/linux/aio_abi.h \ + include/linux/uio.h \ + include/linux/netdevice.h \ + $(wildcard include/config/ax25.h) \ + $(wildcard include/config/tr.h) \ + $(wildcard include/config/net/ipip.h) \ + $(wildcard include/config/net/ipgre.h) \ + $(wildcard include/config/ipv6/sit.h) \ + $(wildcard include/config/ipv6/tunnel.h) \ + $(wildcard include/config/netpoll.h) \ + $(wildcard include/config/net/poll/controller.h) \ + $(wildcard include/config/netpoll/trap.h) \ + $(wildcard include/config/net/dma.h) \ + include/linux/if.h \ + include/linux/socket.h \ + include/asm/socket.h \ + include/asm/sockios.h \ + include/linux/sockios.h \ + include/linux/hdlc/ioctl.h \ + include/linux/if_ether.h \ + include/linux/skbuff.h \ + $(wildcard include/config/nf/conntrack.h) \ + $(wildcard include/config/bridge/netfilter.h) \ + $(wildcard include/config/vlan/8021q.h) \ + $(wildcard include/config/net/sched.h) \ + $(wildcard include/config/net/cls/act.h) \ + $(wildcard include/config/network/secmark.h) \ + $(wildcard include/config/imq.h) \ + include/linux/net.h \ + include/linux/random.h \ + include/linux/sysctl.h \ + $(wildcard include/config/bcm/nat.h) \ + include/linux/textsearch.h \ + include/net/checksum.h \ + include/asm/checksum.h \ + include/linux/in6.h \ + include/linux/dmaengine.h \ + $(wildcard include/config/dma/engine.h) \ + include/linux/if_packet.h \ + include/net/ieee80211.h \ + $(wildcard include/config/ieee80211/debug.h) \ + include/linux/wireless.h \ + include/linux/if_arp.h \ + include/net/iw_handler.h \ + include/net/ieee80211_crypt.h \ + include/asm/paccess.h \ + /home/vicente/repos/tomato/release/src-rt/include/ctf/hndctf.h \ + /home/vicente/repos/tomato/release/src-rt/include/bcmutils.h \ + /home/vicente/repos/tomato/release/src-rt/include/proto/ethernet.h \ + /home/vicente/repos/tomato/release/src-rt/include/packed_section_start.h \ + /home/vicente/repos/tomato/release/src-rt/include/packed_section_end.h \ + /home/vicente/repos/tomato/release/src-rt/include/siutils.h \ + /home/vicente/repos/tomato/release/src-rt/include/bcmnvram.h \ + $(wildcard include/config/nvram/size.h) \ + $(wildcard include/config/nvram/64k.h) \ + $(wildcard include/config/dual/image.h) \ + $(wildcard include/config/dual/image/flash/support//.h) \ + /home/vicente/repos/tomato/release/src-rt/include/hndsoc.h \ + /home/vicente/repos/tomato/release/src-rt/include/sbconfig.h \ + $(wildcard include/config/h.h) \ + /home/vicente/repos/tomato/release/src-rt/include/aidmp.h \ + /home/vicente/repos/tomato/release/src-rt/include/sbchipc.h \ + /home/vicente/repos/tomato/release/src-rt/include/hndchipc.h \ + /home/vicente/repos/tomato/release/src-rt/include/hndcpu.h \ + /home/vicente/repos/tomato/release/src-rt/include/hndmips.h \ + +arch/mips/brcm-boards/bcm947xx/../../../../../../shared/hndchipc.o: $(deps_arch/mips/brcm-boards/bcm947xx/../../../../../../shared/hndchipc.o) + +$(deps_arch/mips/brcm-boards/bcm947xx/../../../../../../shared/hndchipc.o): diff --git a/release/src-rt/shared/.hnddma.o.cmd b/release/src-rt/shared/.hnddma.o.cmd new file mode 100644 index 0000000000..c50926b4f5 --- /dev/null +++ b/release/src-rt/shared/.hnddma.o.cmd @@ -0,0 +1,531 @@ +cmd_drivers/net/hnd/../../../../../shared/hnddma.o := mipsel-uclibc-gcc -Wp,-MD,drivers/net/hnd/../../../../../shared/.hnddma.o.d -nostdinc -isystem /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include -D__KERNEL__ -Iinclude -include include/linux/autoconf.h -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Werror-implicit-function-declaration -Wno-format-security -fno-delete-null-pointer-checks -I/home/vicente/repos/tomato/release/src-rt/include -DBCMDRIVER -Dlinux -O2 -ffunction-sections -mno-check-zero-division -mabi=32 -G 0 -mno-abicalls -fno-pic -pipe -msoft-float -ggdb -ffreestanding -march=mips32r2 -Wa,-mips32r2 -Wa,--trap -Iinclude/asm-mips/mach-generic -fomit-frame-pointer -fno-stack-protector -funit-at-a-time -Wdeclaration-after-statement -Wno-pointer-sign -fno-strict-overflow -DHNDCTF -DCTFPOOL -DCTFMAP -DBCMDBG_TRAP -DWLC_LOW -DWLC_HIGH -DBCMDMA32 -DBCMNVRAMR -DPHY_HAL -DPHY_HAL -DBCM5354 -DLINUX_HYBRID_POSTPROCESSING_REMOVAL -D"KBUILD_STR(s)=\#s" -D"KBUILD_BASENAME=KBUILD_STR(hnddma)" -D"KBUILD_MODNAME=KBUILD_STR(hnd)" -c -o drivers/net/hnd/../../../../../shared/hnddma.o drivers/net/hnd/../../../../../shared/hnddma.c + +deps_drivers/net/hnd/../../../../../shared/hnddma.o := \ + drivers/net/hnd/../../../../../shared/hnddma.c \ + /home/vicente/repos/tomato/release/src-rt/include/typedefs.h \ + include/linux/version.h \ + include/linux/types.h \ + $(wildcard include/config/uid16.h) \ + $(wildcard include/config/lbd.h) \ + $(wildcard include/config/lsf.h) \ + $(wildcard include/config/resources/64bit.h) \ + include/linux/posix_types.h \ + include/linux/stddef.h \ + include/linux/compiler.h \ + $(wildcard include/config/enable/must/check.h) \ + include/linux/compiler-gcc4.h \ + $(wildcard include/config/forced/inlining.h) \ + include/linux/compiler-gcc.h \ + include/asm/posix_types.h \ + include/asm/sgidefs.h \ + include/asm/types.h \ + $(wildcard include/config/highmem.h) \ + $(wildcard include/config/64bit/phys/addr.h) \ + $(wildcard include/config/64bit.h) \ + /home/vicente/repos/tomato/release/src-rt/include/bcmdefs.h \ + /home/vicente/repos/tomato/release/src-rt/include/bcmdevs.h \ + /home/vicente/repos/tomato/release/src-rt/include/osl.h \ + /home/vicente/repos/tomato/release/src-rt/include/linux_osl.h \ + $(wildcard include/config/mmc/msm7x00a.h) \ + /home/vicente/repos/tomato/release/src-rt/include/linuxver.h \ + $(wildcard include/config/net/radio.h) \ + $(wildcard include/config/wireless/ext.h) \ + $(wildcard include/config/pcmcia.h) \ + $(wildcard include/config/rfkill.h) \ + include/linux/module.h \ + $(wildcard include/config/modules.h) \ + $(wildcard include/config/modversions.h) \ + $(wildcard include/config/unused/symbols.h) \ + $(wildcard include/config/generic/bug.h) \ + $(wildcard include/config/module/unload.h) \ + $(wildcard include/config/kallsyms.h) \ + $(wildcard include/config/sysfs.h) \ + include/linux/spinlock.h \ + $(wildcard include/config/smp.h) \ + $(wildcard include/config/debug/spinlock.h) \ + $(wildcard include/config/preempt.h) \ + $(wildcard include/config/debug/lock/alloc.h) \ + include/linux/preempt.h \ + $(wildcard include/config/debug/preempt.h) \ + include/linux/thread_info.h \ + include/linux/bitops.h \ + include/asm/bitops.h \ + $(wildcard include/config/cpu/mipsr2.h) \ + $(wildcard include/config/cpu/mips64.h) \ + $(wildcard include/config/cpu/mips32.h) \ + include/linux/irqflags.h \ + $(wildcard include/config/trace/irqflags.h) \ + $(wildcard include/config/trace/irqflags/support.h) \ + $(wildcard include/config/x86.h) \ + include/asm/irqflags.h \ + $(wildcard include/config/mips/mt/smtc.h) \ + $(wildcard include/config/irq/cpu.h) \ + $(wildcard include/config/mips/mt/smtc/instant/replay.h) \ + include/asm/hazards.h \ + $(wildcard include/config/cpu/mipsr1.h) \ + $(wildcard include/config/cpu/r10000.h) \ + $(wildcard include/config/cpu/rm9000.h) \ + $(wildcard include/config/cpu/sb1.h) \ + include/asm/cpu-features.h \ + $(wildcard include/config/32bit.h) \ + $(wildcard include/config/cpu/mipsr2/irq/vi.h) \ + $(wildcard include/config/cpu/mipsr2/irq/ei.h) \ + include/asm/cpu.h \ + include/asm/cpu-info.h \ + $(wildcard include/config/sgi/ip27.h) \ + $(wildcard include/config/mips/mt.h) \ + include/asm/cache.h \ + $(wildcard include/config/mips/l1/cache/shift.h) \ + include/asm-mips/mach-generic/kmalloc.h \ + $(wildcard include/config/dma/coherent.h) \ + include/asm-mips/mach-generic/cpu-feature-overrides.h \ + include/asm/barrier.h \ + $(wildcard include/config/cpu/has/sync.h) \ + $(wildcard include/config/cpu/has/wb.h) \ + $(wildcard include/config/weak/ordering.h) \ + include/asm/bug.h \ + $(wildcard include/config/bug.h) \ + include/asm/break.h \ + include/asm-generic/bug.h \ + $(wildcard include/config/debug/bugverbose.h) \ + include/asm/byteorder.h \ + $(wildcard include/config/cpu/mips64/r2.h) \ + include/linux/byteorder/little_endian.h \ + include/linux/byteorder/swab.h \ + include/linux/byteorder/generic.h \ + include/asm/war.h \ + $(wildcard include/config/sgi/ip22.h) \ + $(wildcard include/config/sni/rm.h) \ + $(wildcard include/config/cpu/r5432.h) \ + $(wildcard include/config/sb1/pass/1/workarounds.h) \ + $(wildcard include/config/sb1/pass/2/workarounds.h) \ + $(wildcard include/config/mips/malta.h) \ + $(wildcard include/config/mips/atlas.h) \ + $(wildcard include/config/mips/sead.h) \ + $(wildcard include/config/cpu/tx49xx.h) \ + $(wildcard include/config/momenco/jaguar/atx.h) \ + $(wildcard include/config/pmc/yosemite.h) \ + $(wildcard include/config/basler/excite.h) \ + $(wildcard include/config/momenco/ocelot.h) \ + $(wildcard include/config/momenco/ocelot/3.h) \ + $(wildcard include/config/momenco/ocelot/c.h) \ + $(wildcard include/config/sgi/ip32.h) \ + $(wildcard include/config/wr/ppmc.h) \ + include/asm-generic/bitops/non-atomic.h \ + include/asm-generic/bitops/fls64.h \ + include/asm-generic/bitops/ffz.h \ + include/asm-generic/bitops/find.h \ + include/asm-generic/bitops/sched.h \ + include/asm-generic/bitops/hweight.h \ + include/asm-generic/bitops/ext2-non-atomic.h \ + include/asm-generic/bitops/le.h \ + include/asm-generic/bitops/ext2-atomic.h \ + include/asm-generic/bitops/minix.h \ + include/asm/thread_info.h \ + $(wildcard include/config/page/size/4kb.h) \ + $(wildcard include/config/page/size/8kb.h) \ + $(wildcard include/config/page/size/16kb.h) \ + $(wildcard include/config/page/size/64kb.h) \ + $(wildcard include/config/debug/stack/usage.h) \ + include/asm/processor.h \ + $(wildcard include/config/mips/mt/fpaff.h) \ + $(wildcard include/config/cpu/has/prefetch.h) \ + include/linux/cpumask.h \ + $(wildcard include/config/hotplug/cpu.h) \ + include/linux/kernel.h \ + $(wildcard include/config/preempt/voluntary.h) \ + $(wildcard include/config/debug/spinlock/sleep.h) \ + $(wildcard include/config/printk.h) \ + $(wildcard include/config/numa.h) \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ + include/linux/linkage.h \ + include/asm/linkage.h \ + include/linux/log2.h \ + $(wildcard include/config/arch/has/ilog2/u32.h) \ + $(wildcard include/config/arch/has/ilog2/u64.h) \ + include/linux/threads.h \ + $(wildcard include/config/nr/cpus.h) \ + $(wildcard include/config/base/small.h) \ + include/linux/bitmap.h \ + include/linux/string.h \ + include/asm/string.h \ + $(wildcard include/config/cpu/r3000.h) \ + include/asm/cachectl.h \ + include/asm/mipsregs.h \ + $(wildcard include/config/cpu/vr41xx.h) \ + include/asm/prefetch.h \ + include/asm/system.h \ + include/asm/addrspace.h \ + $(wildcard include/config/cpu/r4300.h) \ + $(wildcard include/config/cpu/r4x00.h) \ + $(wildcard include/config/cpu/r5000.h) \ + $(wildcard include/config/cpu/rm7000.h) \ + $(wildcard include/config/cpu/nevada.h) \ + $(wildcard include/config/cpu/r8000.h) \ + $(wildcard include/config/cpu/sb1a.h) \ + include/asm-mips/mach-generic/spaces.h \ + $(wildcard include/config/dma/noncoherent.h) \ + include/asm/dsp.h \ + include/linux/stringify.h \ + include/linux/bottom_half.h \ + include/linux/spinlock_types.h \ + include/linux/lockdep.h \ + $(wildcard include/config/lockdep.h) \ + $(wildcard include/config/generic/hardirqs.h) \ + $(wildcard include/config/prove/locking.h) \ + include/linux/spinlock_types_up.h \ + include/linux/spinlock_up.h \ + include/linux/spinlock_api_up.h \ + include/asm/atomic.h \ + include/asm-generic/atomic.h \ + include/linux/list.h \ + $(wildcard include/config/debug/list.h) \ + include/linux/poison.h \ + include/linux/prefetch.h \ + include/linux/stat.h \ + include/asm/stat.h \ + include/linux/time.h \ + include/linux/seqlock.h \ + include/linux/cache.h \ + $(wildcard include/config/arch/has/cache/line/size.h) \ + include/linux/kmod.h \ + $(wildcard include/config/kmod.h) \ + include/linux/errno.h \ + include/asm/errno.h \ + include/asm-generic/errno-base.h \ + include/linux/elf.h \ + include/linux/auxvec.h \ + include/asm/auxvec.h \ + include/linux/elf-em.h \ + include/asm/elf.h \ + $(wildcard include/config/mips32/n32.h) \ + $(wildcard include/config/mips32/o32.h) \ + $(wildcard include/config/mips32/compat.h) \ + include/linux/kobject.h \ + $(wildcard include/config/hotplug.h) \ + include/linux/sysfs.h \ + include/linux/kref.h \ + include/linux/wait.h \ + include/asm/current.h \ + include/linux/moduleparam.h \ + include/linux/init.h \ + $(wildcard include/config/memory/hotplug.h) \ + $(wildcard include/config/acpi/hotplug/memory.h) \ + include/asm/local.h \ + include/linux/percpu.h \ + include/linux/slab.h \ + $(wildcard include/config/slab/debug.h) \ + $(wildcard include/config/slub.h) \ + $(wildcard include/config/slob.h) \ + $(wildcard include/config/debug/slab.h) \ + include/linux/gfp.h \ + $(wildcard include/config/zone/dma.h) \ + $(wildcard include/config/zone/dma32.h) \ + include/linux/mmzone.h \ + $(wildcard include/config/force/max/zoneorder.h) \ + $(wildcard include/config/arch/populates/node/map.h) \ + $(wildcard include/config/discontigmem.h) \ + $(wildcard include/config/flat/node/mem/map.h) \ + $(wildcard include/config/have/memory/present.h) \ + $(wildcard include/config/need/node/memmap/size.h) \ + $(wildcard include/config/need/multiple/nodes.h) \ + $(wildcard include/config/sparsemem.h) \ + $(wildcard include/config/have/arch/early/pfn/to/nid.h) \ + $(wildcard include/config/flatmem.h) \ + $(wildcard include/config/sparsemem/extreme.h) \ + $(wildcard include/config/nodes/span/other/nodes.h) \ + $(wildcard include/config/holes/in/zone.h) \ + include/linux/numa.h \ + $(wildcard include/config/nodes/shift.h) \ + include/linux/nodemask.h \ + include/asm/page.h \ + $(wildcard include/config/build/elf64.h) \ + include/linux/pfn.h \ + include/asm/io.h \ + include/asm-generic/iomap.h \ + include/asm/pgtable-bits.h \ + $(wildcard include/config/cpu/mips32/r1.h) \ + $(wildcard include/config/cpu/tx39xx.h) \ + $(wildcard include/config/mips/uncached.h) \ + include/asm-mips/mach-generic/ioremap.h \ + include/asm-mips/mach-generic/mangle-port.h \ + $(wildcard include/config/swap/io/space.h) \ + include/asm-generic/memory_model.h \ + $(wildcard include/config/out/of/line/pfn/to/page.h) \ + include/asm-generic/page.h \ + include/linux/memory_hotplug.h \ + $(wildcard include/config/have/arch/nodedata/extension.h) \ + include/linux/notifier.h \ + include/linux/mutex.h \ + $(wildcard include/config/debug/mutexes.h) \ + include/linux/rwsem.h \ + $(wildcard include/config/rwsem/generic/spinlock.h) \ + include/linux/rwsem-spinlock.h \ + include/linux/srcu.h \ + include/linux/topology.h \ + $(wildcard include/config/sched/smt.h) \ + $(wildcard include/config/sched/mc.h) \ + include/linux/smp.h \ + include/asm/topology.h \ + include/asm-mips/mach-generic/topology.h \ + include/asm-generic/topology.h \ + include/asm/sparsemem.h \ + include/linux/slab_def.h \ + include/linux/kmalloc_sizes.h \ + include/asm/percpu.h \ + include/asm-generic/percpu.h \ + include/asm/module.h \ + $(wildcard include/config/cpu/mips32/r2.h) \ + $(wildcard include/config/cpu/mips64/r1.h) \ + $(wildcard include/config/cpu/r6000.h) \ + include/asm/uaccess.h \ + include/asm-generic/uaccess.h \ + include/linux/mm.h \ + $(wildcard include/config/sysctl.h) \ + $(wildcard include/config/mmu.h) \ + $(wildcard include/config/stack/growsup.h) \ + $(wildcard include/config/debug/vm.h) \ + $(wildcard include/config/shmem.h) \ + $(wildcard include/config/split/ptlock/cpus.h) \ + $(wildcard include/config/ia64.h) \ + $(wildcard include/config/proc/fs.h) \ + $(wildcard include/config/debug/pagealloc.h) \ + include/linux/capability.h \ + include/linux/rbtree.h \ + include/linux/prio_tree.h \ + include/linux/fs.h \ + $(wildcard include/config/dnotify.h) \ + $(wildcard include/config/quota.h) \ + $(wildcard include/config/inotify.h) \ + $(wildcard include/config/security.h) \ + $(wildcard include/config/epoll.h) \ + $(wildcard include/config/auditsyscall.h) \ + $(wildcard include/config/block.h) \ + $(wildcard include/config/fs/xip.h) \ + $(wildcard include/config/migration.h) \ + include/linux/limits.h \ + include/linux/ioctl.h \ + include/asm/ioctl.h \ + include/linux/kdev_t.h \ + include/linux/dcache.h \ + $(wildcard include/config/profiling.h) \ + include/linux/rcupdate.h \ + include/linux/namei.h \ + include/linux/radix-tree.h \ + include/linux/pid.h \ + include/asm/semaphore.h \ + include/linux/quota.h \ + include/linux/dqblk_xfs.h \ + include/linux/dqblk_v1.h \ + include/linux/dqblk_v2.h \ + include/linux/nfs_fs_i.h \ + include/linux/nfs.h \ + include/linux/sunrpc/msg_prot.h \ + include/linux/fcntl.h \ + include/asm/fcntl.h \ + include/asm-generic/fcntl.h \ + include/linux/err.h \ + include/linux/debug_locks.h \ + $(wildcard include/config/debug/locking/api/selftests.h) \ + include/linux/backing-dev.h \ + include/linux/percpu_counter.h \ + include/linux/proportions.h \ + include/linux/mm_types.h \ + include/asm/pgtable.h \ + include/asm/pgtable-32.h \ + include/asm/fixmap.h \ + $(wildcard include/config/bcm47xx.h) \ + include/asm/kmap_types.h \ + $(wildcard include/config/debug/highmem.h) \ + include/asm-generic/pgtable-nopmd.h \ + include/asm-generic/pgtable-nopud.h \ + include/asm-generic/pgtable.h \ + include/linux/page-flags.h \ + $(wildcard include/config/s390.h) \ + $(wildcard include/config/swap.h) \ + include/linux/vmstat.h \ + $(wildcard include/config/vm/event/counters.h) \ + include/linux/pci.h \ + $(wildcard include/config/pci/msi.h) \ + $(wildcard include/config/pci.h) \ + $(wildcard include/config/ht/irq.h) \ + $(wildcard include/config/pci/domains.h) \ + include/linux/pci_regs.h \ + include/linux/mod_devicetable.h \ + include/linux/ioport.h \ + include/linux/device.h \ + $(wildcard include/config/debug/devres.h) \ + include/linux/klist.h \ + include/linux/completion.h \ + include/linux/pm.h \ + $(wildcard include/config/pm.h) \ + include/asm/device.h \ + include/asm-generic/device.h \ + include/linux/pci_ids.h \ + include/linux/dmapool.h \ + include/asm/scatterlist.h \ + include/asm/pci.h \ + $(wildcard include/config/dma/need/pci/map/state.h) \ + include/asm-generic/pci-dma-compat.h \ + include/linux/dma-mapping.h \ + include/asm/dma-mapping.h \ + include/linux/interrupt.h \ + $(wildcard include/config/high/res/timers.h) \ + $(wildcard include/config/generic/irq/probe.h) \ + include/linux/irqreturn.h \ + include/linux/hardirq.h \ + $(wildcard include/config/preempt/bkl.h) \ + $(wildcard include/config/virt/cpu/accounting.h) \ + include/linux/smp_lock.h \ + $(wildcard include/config/lock/kernel.h) \ + include/asm/hardirq.h \ + include/linux/irq.h \ + $(wildcard include/config/irq/per/cpu.h) \ + $(wildcard include/config/irq/release/method.h) \ + $(wildcard include/config/generic/pending/irq.h) \ + $(wildcard include/config/irqbalance.h) \ + $(wildcard include/config/auto/irq/affinity.h) \ + $(wildcard include/config/generic/hardirqs/no//do/irq.h) \ + include/asm/irq.h \ + $(wildcard include/config/i8259.h) \ + $(wildcard include/config/mips/mt/smtc/im/backstop.h) \ + include/asm/mipsmtregs.h \ + include/asm-mips/mach-generic/irq.h \ + $(wildcard include/config/irq/cpu/rm7k.h) \ + $(wildcard include/config/irq/cpu/rm9k.h) \ + include/asm/ptrace.h \ + $(wildcard include/config/cpu/has/smartmips.h) \ + include/asm/isadep.h \ + include/asm/irq_regs.h \ + include/asm/hw_irq.h \ + include/linux/profile.h \ + include/linux/irq_cpustat.h \ + include/linux/sched.h \ + $(wildcard include/config/no/hz.h) \ + $(wildcard include/config/detect/softlockup.h) \ + $(wildcard include/config/keys.h) \ + $(wildcard include/config/bsd/process/acct.h) \ + $(wildcard include/config/taskstats.h) \ + $(wildcard include/config/inotify/user.h) \ + $(wildcard include/config/schedstats.h) \ + $(wildcard include/config/task/delay/acct.h) \ + $(wildcard include/config/blk/dev/io/trace.h) \ + $(wildcard include/config/cc/stackprotector.h) \ + $(wildcard include/config/sysvipc.h) \ + $(wildcard include/config/rt/mutexes.h) \ + $(wildcard include/config/task/xacct.h) \ + $(wildcard include/config/cpusets.h) \ + $(wildcard include/config/compat.h) \ + $(wildcard include/config/fault/injection.h) \ + include/asm/param.h \ + $(wildcard include/config/hz.h) \ + include/linux/timex.h \ + $(wildcard include/config/time/interpolation.h) \ + include/asm/timex.h \ + include/asm-mips/mach-generic/timex.h \ + include/linux/jiffies.h \ + include/linux/calc64.h \ + include/asm/div64.h \ + include/asm-generic/div64.h \ + include/asm/mmu.h \ + include/asm/cputime.h \ + include/asm-generic/cputime.h \ + include/linux/sem.h \ + include/linux/ipc.h \ + $(wildcard include/config/ipc/ns.h) \ + include/asm/ipcbuf.h \ + include/asm/sembuf.h \ + include/linux/signal.h \ + include/asm/signal.h \ + $(wildcard include/config/trad/signals.h) \ + $(wildcard include/config/binfmt/irix.h) \ + include/asm-generic/signal.h \ + include/asm/sigcontext.h \ + include/asm/siginfo.h \ + include/asm-generic/siginfo.h \ + include/linux/securebits.h \ + include/linux/fs_struct.h \ + include/linux/seccomp.h \ + $(wildcard include/config/seccomp.h) \ + include/linux/futex.h \ + $(wildcard include/config/futex.h) \ + include/linux/rtmutex.h \ + $(wildcard include/config/debug/rt/mutexes.h) \ + include/linux/plist.h \ + $(wildcard include/config/debug/pi/list.h) \ + include/linux/param.h \ + include/linux/resource.h \ + include/asm/resource.h \ + include/asm-generic/resource.h \ + include/linux/timer.h \ + $(wildcard include/config/timer/stats.h) \ + include/linux/ktime.h \ + $(wildcard include/config/ktime/scalar.h) \ + include/linux/hrtimer.h \ + include/linux/task_io_accounting.h \ + $(wildcard include/config/task/io/accounting.h) \ + include/linux/aio.h \ + include/linux/workqueue.h \ + include/linux/aio_abi.h \ + include/linux/uio.h \ + include/linux/netdevice.h \ + $(wildcard include/config/ax25.h) \ + $(wildcard include/config/tr.h) \ + $(wildcard include/config/net/ipip.h) \ + $(wildcard include/config/net/ipgre.h) \ + $(wildcard include/config/ipv6/sit.h) \ + $(wildcard include/config/ipv6/tunnel.h) \ + $(wildcard include/config/netpoll.h) \ + $(wildcard include/config/net/poll/controller.h) \ + $(wildcard include/config/netpoll/trap.h) \ + $(wildcard include/config/net/dma.h) \ + include/linux/if.h \ + include/linux/socket.h \ + include/asm/socket.h \ + include/asm/sockios.h \ + include/linux/sockios.h \ + include/linux/hdlc/ioctl.h \ + include/linux/if_ether.h \ + include/linux/skbuff.h \ + $(wildcard include/config/nf/conntrack.h) \ + $(wildcard include/config/bridge/netfilter.h) \ + $(wildcard include/config/vlan/8021q.h) \ + $(wildcard include/config/net/sched.h) \ + $(wildcard include/config/net/cls/act.h) \ + $(wildcard include/config/network/secmark.h) \ + $(wildcard include/config/imq.h) \ + include/linux/net.h \ + include/linux/random.h \ + include/linux/sysctl.h \ + $(wildcard include/config/bcm/nat.h) \ + include/linux/textsearch.h \ + include/net/checksum.h \ + include/asm/checksum.h \ + include/linux/in6.h \ + include/linux/dmaengine.h \ + $(wildcard include/config/dma/engine.h) \ + include/linux/if_packet.h \ + include/net/ieee80211.h \ + $(wildcard include/config/ieee80211/debug.h) \ + include/linux/wireless.h \ + include/linux/if_arp.h \ + include/net/iw_handler.h \ + include/net/ieee80211_crypt.h \ + include/asm/paccess.h \ + /home/vicente/repos/tomato/release/src-rt/include/ctf/hndctf.h \ + /home/vicente/repos/tomato/release/src-rt/include/bcmutils.h \ + /home/vicente/repos/tomato/release/src-rt/include/proto/ethernet.h \ + /home/vicente/repos/tomato/release/src-rt/include/packed_section_start.h \ + /home/vicente/repos/tomato/release/src-rt/include/packed_section_end.h \ + /home/vicente/repos/tomato/release/src-rt/include/bcmendian.h \ + /home/vicente/repos/tomato/release/src-rt/include/hndsoc.h \ + /home/vicente/repos/tomato/release/src-rt/include/sbconfig.h \ + $(wildcard include/config/h.h) \ + /home/vicente/repos/tomato/release/src-rt/include/aidmp.h \ + /home/vicente/repos/tomato/release/src-rt/include/siutils.h \ + /home/vicente/repos/tomato/release/src-rt/include/sbhnddma.h \ + /home/vicente/repos/tomato/release/src-rt/include/hnddma.h \ + +drivers/net/hnd/../../../../../shared/hnddma.o: $(deps_drivers/net/hnd/../../../../../shared/hnddma.o) + +$(deps_drivers/net/hnd/../../../../../shared/hnddma.o): diff --git a/release/src-rt/shared/.hndmips.o.cmd b/release/src-rt/shared/.hndmips.o.cmd new file mode 100644 index 0000000000..2b67aa9d95 --- /dev/null +++ b/release/src-rt/shared/.hndmips.o.cmd @@ -0,0 +1,544 @@ +cmd_arch/mips/brcm-boards/bcm947xx/../../../../../../shared/hndmips.o := mipsel-uclibc-gcc -Wp,-MD,arch/mips/brcm-boards/bcm947xx/../../../../../../shared/.hndmips.o.d -nostdinc -isystem /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include -D__KERNEL__ -Iinclude -include include/linux/autoconf.h -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Werror-implicit-function-declaration -Wno-format-security -fno-delete-null-pointer-checks -I/home/vicente/repos/tomato/release/src-rt/include -DBCMDRIVER -Dlinux -O2 -ffunction-sections -mno-check-zero-division -mabi=32 -G 0 -mno-abicalls -fno-pic -pipe -msoft-float -ggdb -ffreestanding -march=mips32r2 -Wa,-mips32r2 -Wa,--trap -Iinclude/asm-mips/mach-generic -fomit-frame-pointer -fno-stack-protector -funit-at-a-time -Wdeclaration-after-statement -Wno-pointer-sign -fno-strict-overflow -DHNDCTF -DCTFPOOL -DCTFMAP -DLINUX_HYBRID_POSTPROCESSING_REMOVAL -D"KBUILD_STR(s)=\#s" -D"KBUILD_BASENAME=KBUILD_STR(hndmips)" -D"KBUILD_MODNAME=KBUILD_STR(bcm947xx)" -c -o arch/mips/brcm-boards/bcm947xx/../../../../../../shared/hndmips.o arch/mips/brcm-boards/bcm947xx/../../../../../../shared/hndmips.c + +deps_arch/mips/brcm-boards/bcm947xx/../../../../../../shared/hndmips.o := \ + arch/mips/brcm-boards/bcm947xx/../../../../../../shared/hndmips.c \ + $(wildcard include/config/ddr.h) \ + /home/vicente/repos/tomato/release/src-rt/include/typedefs.h \ + include/linux/version.h \ + include/linux/types.h \ + $(wildcard include/config/uid16.h) \ + $(wildcard include/config/lbd.h) \ + $(wildcard include/config/lsf.h) \ + $(wildcard include/config/resources/64bit.h) \ + include/linux/posix_types.h \ + include/linux/stddef.h \ + include/linux/compiler.h \ + $(wildcard include/config/enable/must/check.h) \ + include/linux/compiler-gcc4.h \ + $(wildcard include/config/forced/inlining.h) \ + include/linux/compiler-gcc.h \ + include/asm/posix_types.h \ + include/asm/sgidefs.h \ + include/asm/types.h \ + $(wildcard include/config/highmem.h) \ + $(wildcard include/config/64bit/phys/addr.h) \ + $(wildcard include/config/64bit.h) \ + /home/vicente/repos/tomato/release/src-rt/include/bcmdefs.h \ + /home/vicente/repos/tomato/release/src-rt/include/osl.h \ + /home/vicente/repos/tomato/release/src-rt/include/linux_osl.h \ + $(wildcard include/config/mmc/msm7x00a.h) \ + /home/vicente/repos/tomato/release/src-rt/include/linuxver.h \ + $(wildcard include/config/net/radio.h) \ + $(wildcard include/config/wireless/ext.h) \ + $(wildcard include/config/pcmcia.h) \ + $(wildcard include/config/rfkill.h) \ + include/linux/module.h \ + $(wildcard include/config/modules.h) \ + $(wildcard include/config/modversions.h) \ + $(wildcard include/config/unused/symbols.h) \ + $(wildcard include/config/generic/bug.h) \ + $(wildcard include/config/module/unload.h) \ + $(wildcard include/config/kallsyms.h) \ + $(wildcard include/config/sysfs.h) \ + include/linux/spinlock.h \ + $(wildcard include/config/smp.h) \ + $(wildcard include/config/debug/spinlock.h) \ + $(wildcard include/config/preempt.h) \ + $(wildcard include/config/debug/lock/alloc.h) \ + include/linux/preempt.h \ + $(wildcard include/config/debug/preempt.h) \ + include/linux/thread_info.h \ + include/linux/bitops.h \ + include/asm/bitops.h \ + $(wildcard include/config/cpu/mipsr2.h) \ + $(wildcard include/config/cpu/mips64.h) \ + $(wildcard include/config/cpu/mips32.h) \ + include/linux/irqflags.h \ + $(wildcard include/config/trace/irqflags.h) \ + $(wildcard include/config/trace/irqflags/support.h) \ + $(wildcard include/config/x86.h) \ + include/asm/irqflags.h \ + $(wildcard include/config/mips/mt/smtc.h) \ + $(wildcard include/config/irq/cpu.h) \ + $(wildcard include/config/mips/mt/smtc/instant/replay.h) \ + include/asm/hazards.h \ + $(wildcard include/config/cpu/mipsr1.h) \ + $(wildcard include/config/cpu/r10000.h) \ + $(wildcard include/config/cpu/rm9000.h) \ + $(wildcard include/config/cpu/sb1.h) \ + include/asm/cpu-features.h \ + $(wildcard include/config/32bit.h) \ + $(wildcard include/config/cpu/mipsr2/irq/vi.h) \ + $(wildcard include/config/cpu/mipsr2/irq/ei.h) \ + include/asm/cpu.h \ + include/asm/cpu-info.h \ + $(wildcard include/config/sgi/ip27.h) \ + $(wildcard include/config/mips/mt.h) \ + include/asm/cache.h \ + $(wildcard include/config/mips/l1/cache/shift.h) \ + include/asm-mips/mach-generic/kmalloc.h \ + $(wildcard include/config/dma/coherent.h) \ + include/asm-mips/mach-generic/cpu-feature-overrides.h \ + include/asm/barrier.h \ + $(wildcard include/config/cpu/has/sync.h) \ + $(wildcard include/config/cpu/has/wb.h) \ + $(wildcard include/config/weak/ordering.h) \ + include/asm/bug.h \ + $(wildcard include/config/bug.h) \ + include/asm/break.h \ + include/asm-generic/bug.h \ + $(wildcard include/config/debug/bugverbose.h) \ + include/asm/byteorder.h \ + $(wildcard include/config/cpu/mips64/r2.h) \ + include/linux/byteorder/little_endian.h \ + include/linux/byteorder/swab.h \ + include/linux/byteorder/generic.h \ + include/asm/war.h \ + $(wildcard include/config/sgi/ip22.h) \ + $(wildcard include/config/sni/rm.h) \ + $(wildcard include/config/cpu/r5432.h) \ + $(wildcard include/config/sb1/pass/1/workarounds.h) \ + $(wildcard include/config/sb1/pass/2/workarounds.h) \ + $(wildcard include/config/mips/malta.h) \ + $(wildcard include/config/mips/atlas.h) \ + $(wildcard include/config/mips/sead.h) \ + $(wildcard include/config/cpu/tx49xx.h) \ + $(wildcard include/config/momenco/jaguar/atx.h) \ + $(wildcard include/config/pmc/yosemite.h) \ + $(wildcard include/config/basler/excite.h) \ + $(wildcard include/config/momenco/ocelot.h) \ + $(wildcard include/config/momenco/ocelot/3.h) \ + $(wildcard include/config/momenco/ocelot/c.h) \ + $(wildcard include/config/sgi/ip32.h) \ + $(wildcard include/config/wr/ppmc.h) \ + include/asm-generic/bitops/non-atomic.h \ + include/asm-generic/bitops/fls64.h \ + include/asm-generic/bitops/ffz.h \ + include/asm-generic/bitops/find.h \ + include/asm-generic/bitops/sched.h \ + include/asm-generic/bitops/hweight.h \ + include/asm-generic/bitops/ext2-non-atomic.h \ + include/asm-generic/bitops/le.h \ + include/asm-generic/bitops/ext2-atomic.h \ + include/asm-generic/bitops/minix.h \ + include/asm/thread_info.h \ + $(wildcard include/config/page/size/4kb.h) \ + $(wildcard include/config/page/size/8kb.h) \ + $(wildcard include/config/page/size/16kb.h) \ + $(wildcard include/config/page/size/64kb.h) \ + $(wildcard include/config/debug/stack/usage.h) \ + include/asm/processor.h \ + $(wildcard include/config/mips/mt/fpaff.h) \ + $(wildcard include/config/cpu/has/prefetch.h) \ + include/linux/cpumask.h \ + $(wildcard include/config/hotplug/cpu.h) \ + include/linux/kernel.h \ + $(wildcard include/config/preempt/voluntary.h) \ + $(wildcard include/config/debug/spinlock/sleep.h) \ + $(wildcard include/config/printk.h) \ + $(wildcard include/config/numa.h) \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ + include/linux/linkage.h \ + include/asm/linkage.h \ + include/linux/log2.h \ + $(wildcard include/config/arch/has/ilog2/u32.h) \ + $(wildcard include/config/arch/has/ilog2/u64.h) \ + include/linux/threads.h \ + $(wildcard include/config/nr/cpus.h) \ + $(wildcard include/config/base/small.h) \ + include/linux/bitmap.h \ + include/linux/string.h \ + include/asm/string.h \ + $(wildcard include/config/cpu/r3000.h) \ + include/asm/cachectl.h \ + include/asm/mipsregs.h \ + $(wildcard include/config/cpu/vr41xx.h) \ + include/asm/prefetch.h \ + include/asm/system.h \ + include/asm/addrspace.h \ + $(wildcard include/config/cpu/r4300.h) \ + $(wildcard include/config/cpu/r4x00.h) \ + $(wildcard include/config/cpu/r5000.h) \ + $(wildcard include/config/cpu/rm7000.h) \ + $(wildcard include/config/cpu/nevada.h) \ + $(wildcard include/config/cpu/r8000.h) \ + $(wildcard include/config/cpu/sb1a.h) \ + include/asm-mips/mach-generic/spaces.h \ + $(wildcard include/config/dma/noncoherent.h) \ + include/asm/dsp.h \ + include/linux/stringify.h \ + include/linux/bottom_half.h \ + include/linux/spinlock_types.h \ + include/linux/lockdep.h \ + $(wildcard include/config/lockdep.h) \ + $(wildcard include/config/generic/hardirqs.h) \ + $(wildcard include/config/prove/locking.h) \ + include/linux/spinlock_types_up.h \ + include/linux/spinlock_up.h \ + include/linux/spinlock_api_up.h \ + include/asm/atomic.h \ + include/asm-generic/atomic.h \ + include/linux/list.h \ + $(wildcard include/config/debug/list.h) \ + include/linux/poison.h \ + include/linux/prefetch.h \ + include/linux/stat.h \ + include/asm/stat.h \ + include/linux/time.h \ + include/linux/seqlock.h \ + include/linux/cache.h \ + $(wildcard include/config/arch/has/cache/line/size.h) \ + include/linux/kmod.h \ + $(wildcard include/config/kmod.h) \ + include/linux/errno.h \ + include/asm/errno.h \ + include/asm-generic/errno-base.h \ + include/linux/elf.h \ + include/linux/auxvec.h \ + include/asm/auxvec.h \ + include/linux/elf-em.h \ + include/asm/elf.h \ + $(wildcard include/config/mips32/n32.h) \ + $(wildcard include/config/mips32/o32.h) \ + $(wildcard include/config/mips32/compat.h) \ + include/linux/kobject.h \ + $(wildcard include/config/hotplug.h) \ + include/linux/sysfs.h \ + include/linux/kref.h \ + include/linux/wait.h \ + include/asm/current.h \ + include/linux/moduleparam.h \ + include/linux/init.h \ + $(wildcard include/config/memory/hotplug.h) \ + $(wildcard include/config/acpi/hotplug/memory.h) \ + include/asm/local.h \ + include/linux/percpu.h \ + include/linux/slab.h \ + $(wildcard include/config/slab/debug.h) \ + $(wildcard include/config/slub.h) \ + $(wildcard include/config/slob.h) \ + $(wildcard include/config/debug/slab.h) \ + include/linux/gfp.h \ + $(wildcard include/config/zone/dma.h) \ + $(wildcard include/config/zone/dma32.h) \ + include/linux/mmzone.h \ + $(wildcard include/config/force/max/zoneorder.h) \ + $(wildcard include/config/arch/populates/node/map.h) \ + $(wildcard include/config/discontigmem.h) \ + $(wildcard include/config/flat/node/mem/map.h) \ + $(wildcard include/config/have/memory/present.h) \ + $(wildcard include/config/need/node/memmap/size.h) \ + $(wildcard include/config/need/multiple/nodes.h) \ + $(wildcard include/config/sparsemem.h) \ + $(wildcard include/config/have/arch/early/pfn/to/nid.h) \ + $(wildcard include/config/flatmem.h) \ + $(wildcard include/config/sparsemem/extreme.h) \ + $(wildcard include/config/nodes/span/other/nodes.h) \ + $(wildcard include/config/holes/in/zone.h) \ + include/linux/numa.h \ + $(wildcard include/config/nodes/shift.h) \ + include/linux/nodemask.h \ + include/asm/page.h \ + $(wildcard include/config/build/elf64.h) \ + include/linux/pfn.h \ + include/asm/io.h \ + include/asm-generic/iomap.h \ + include/asm/pgtable-bits.h \ + $(wildcard include/config/cpu/mips32/r1.h) \ + $(wildcard include/config/cpu/tx39xx.h) \ + $(wildcard include/config/mips/uncached.h) \ + include/asm-mips/mach-generic/ioremap.h \ + include/asm-mips/mach-generic/mangle-port.h \ + $(wildcard include/config/swap/io/space.h) \ + include/asm-generic/memory_model.h \ + $(wildcard include/config/out/of/line/pfn/to/page.h) \ + include/asm-generic/page.h \ + include/linux/memory_hotplug.h \ + $(wildcard include/config/have/arch/nodedata/extension.h) \ + include/linux/notifier.h \ + include/linux/mutex.h \ + $(wildcard include/config/debug/mutexes.h) \ + include/linux/rwsem.h \ + $(wildcard include/config/rwsem/generic/spinlock.h) \ + include/linux/rwsem-spinlock.h \ + include/linux/srcu.h \ + include/linux/topology.h \ + $(wildcard include/config/sched/smt.h) \ + $(wildcard include/config/sched/mc.h) \ + include/linux/smp.h \ + include/asm/topology.h \ + include/asm-mips/mach-generic/topology.h \ + include/asm-generic/topology.h \ + include/asm/sparsemem.h \ + include/linux/slab_def.h \ + include/linux/kmalloc_sizes.h \ + include/asm/percpu.h \ + include/asm-generic/percpu.h \ + include/asm/module.h \ + $(wildcard include/config/cpu/mips32/r2.h) \ + $(wildcard include/config/cpu/mips64/r1.h) \ + $(wildcard include/config/cpu/r6000.h) \ + include/asm/uaccess.h \ + include/asm-generic/uaccess.h \ + include/linux/mm.h \ + $(wildcard include/config/sysctl.h) \ + $(wildcard include/config/mmu.h) \ + $(wildcard include/config/stack/growsup.h) \ + $(wildcard include/config/debug/vm.h) \ + $(wildcard include/config/shmem.h) \ + $(wildcard include/config/split/ptlock/cpus.h) \ + $(wildcard include/config/ia64.h) \ + $(wildcard include/config/proc/fs.h) \ + $(wildcard include/config/debug/pagealloc.h) \ + include/linux/capability.h \ + include/linux/rbtree.h \ + include/linux/prio_tree.h \ + include/linux/fs.h \ + $(wildcard include/config/dnotify.h) \ + $(wildcard include/config/quota.h) \ + $(wildcard include/config/inotify.h) \ + $(wildcard include/config/security.h) \ + $(wildcard include/config/epoll.h) \ + $(wildcard include/config/auditsyscall.h) \ + $(wildcard include/config/block.h) \ + $(wildcard include/config/fs/xip.h) \ + $(wildcard include/config/migration.h) \ + include/linux/limits.h \ + include/linux/ioctl.h \ + include/asm/ioctl.h \ + include/linux/kdev_t.h \ + include/linux/dcache.h \ + $(wildcard include/config/profiling.h) \ + include/linux/rcupdate.h \ + include/linux/namei.h \ + include/linux/radix-tree.h \ + include/linux/pid.h \ + include/asm/semaphore.h \ + include/linux/quota.h \ + include/linux/dqblk_xfs.h \ + include/linux/dqblk_v1.h \ + include/linux/dqblk_v2.h \ + include/linux/nfs_fs_i.h \ + include/linux/nfs.h \ + include/linux/sunrpc/msg_prot.h \ + include/linux/fcntl.h \ + include/asm/fcntl.h \ + include/asm-generic/fcntl.h \ + include/linux/err.h \ + include/linux/debug_locks.h \ + $(wildcard include/config/debug/locking/api/selftests.h) \ + include/linux/backing-dev.h \ + include/linux/percpu_counter.h \ + include/linux/proportions.h \ + include/linux/mm_types.h \ + include/asm/pgtable.h \ + include/asm/pgtable-32.h \ + include/asm/fixmap.h \ + $(wildcard include/config/bcm47xx.h) \ + include/asm/kmap_types.h \ + $(wildcard include/config/debug/highmem.h) \ + include/asm-generic/pgtable-nopmd.h \ + include/asm-generic/pgtable-nopud.h \ + include/asm-generic/pgtable.h \ + include/linux/page-flags.h \ + $(wildcard include/config/s390.h) \ + $(wildcard include/config/swap.h) \ + include/linux/vmstat.h \ + $(wildcard include/config/vm/event/counters.h) \ + include/linux/pci.h \ + $(wildcard include/config/pci/msi.h) \ + $(wildcard include/config/pci.h) \ + $(wildcard include/config/ht/irq.h) \ + $(wildcard include/config/pci/domains.h) \ + include/linux/pci_regs.h \ + include/linux/mod_devicetable.h \ + include/linux/ioport.h \ + include/linux/device.h \ + $(wildcard include/config/debug/devres.h) \ + include/linux/klist.h \ + include/linux/completion.h \ + include/linux/pm.h \ + $(wildcard include/config/pm.h) \ + include/asm/device.h \ + include/asm-generic/device.h \ + include/linux/pci_ids.h \ + include/linux/dmapool.h \ + include/asm/scatterlist.h \ + include/asm/pci.h \ + $(wildcard include/config/dma/need/pci/map/state.h) \ + include/asm-generic/pci-dma-compat.h \ + include/linux/dma-mapping.h \ + include/asm/dma-mapping.h \ + include/linux/interrupt.h \ + $(wildcard include/config/high/res/timers.h) \ + $(wildcard include/config/generic/irq/probe.h) \ + include/linux/irqreturn.h \ + include/linux/hardirq.h \ + $(wildcard include/config/preempt/bkl.h) \ + $(wildcard include/config/virt/cpu/accounting.h) \ + include/linux/smp_lock.h \ + $(wildcard include/config/lock/kernel.h) \ + include/asm/hardirq.h \ + include/linux/irq.h \ + $(wildcard include/config/irq/per/cpu.h) \ + $(wildcard include/config/irq/release/method.h) \ + $(wildcard include/config/generic/pending/irq.h) \ + $(wildcard include/config/irqbalance.h) \ + $(wildcard include/config/auto/irq/affinity.h) \ + $(wildcard include/config/generic/hardirqs/no//do/irq.h) \ + include/asm/irq.h \ + $(wildcard include/config/i8259.h) \ + $(wildcard include/config/mips/mt/smtc/im/backstop.h) \ + include/asm/mipsmtregs.h \ + include/asm-mips/mach-generic/irq.h \ + $(wildcard include/config/irq/cpu/rm7k.h) \ + $(wildcard include/config/irq/cpu/rm9k.h) \ + include/asm/ptrace.h \ + $(wildcard include/config/cpu/has/smartmips.h) \ + include/asm/isadep.h \ + include/asm/irq_regs.h \ + include/asm/hw_irq.h \ + include/linux/profile.h \ + include/linux/irq_cpustat.h \ + include/linux/sched.h \ + $(wildcard include/config/no/hz.h) \ + $(wildcard include/config/detect/softlockup.h) \ + $(wildcard include/config/keys.h) \ + $(wildcard include/config/bsd/process/acct.h) \ + $(wildcard include/config/taskstats.h) \ + $(wildcard include/config/inotify/user.h) \ + $(wildcard include/config/schedstats.h) \ + $(wildcard include/config/task/delay/acct.h) \ + $(wildcard include/config/blk/dev/io/trace.h) \ + $(wildcard include/config/cc/stackprotector.h) \ + $(wildcard include/config/sysvipc.h) \ + $(wildcard include/config/rt/mutexes.h) \ + $(wildcard include/config/task/xacct.h) \ + $(wildcard include/config/cpusets.h) \ + $(wildcard include/config/compat.h) \ + $(wildcard include/config/fault/injection.h) \ + include/asm/param.h \ + $(wildcard include/config/hz.h) \ + include/linux/timex.h \ + $(wildcard include/config/time/interpolation.h) \ + include/asm/timex.h \ + include/asm-mips/mach-generic/timex.h \ + include/linux/jiffies.h \ + include/linux/calc64.h \ + include/asm/div64.h \ + include/asm-generic/div64.h \ + include/asm/mmu.h \ + include/asm/cputime.h \ + include/asm-generic/cputime.h \ + include/linux/sem.h \ + include/linux/ipc.h \ + $(wildcard include/config/ipc/ns.h) \ + include/asm/ipcbuf.h \ + include/asm/sembuf.h \ + include/linux/signal.h \ + include/asm/signal.h \ + $(wildcard include/config/trad/signals.h) \ + $(wildcard include/config/binfmt/irix.h) \ + include/asm-generic/signal.h \ + include/asm/sigcontext.h \ + include/asm/siginfo.h \ + include/asm-generic/siginfo.h \ + include/linux/securebits.h \ + include/linux/fs_struct.h \ + include/linux/seccomp.h \ + $(wildcard include/config/seccomp.h) \ + include/linux/futex.h \ + $(wildcard include/config/futex.h) \ + include/linux/rtmutex.h \ + $(wildcard include/config/debug/rt/mutexes.h) \ + include/linux/plist.h \ + $(wildcard include/config/debug/pi/list.h) \ + include/linux/param.h \ + include/linux/resource.h \ + include/asm/resource.h \ + include/asm-generic/resource.h \ + include/linux/timer.h \ + $(wildcard include/config/timer/stats.h) \ + include/linux/ktime.h \ + $(wildcard include/config/ktime/scalar.h) \ + include/linux/hrtimer.h \ + include/linux/task_io_accounting.h \ + $(wildcard include/config/task/io/accounting.h) \ + include/linux/aio.h \ + include/linux/workqueue.h \ + include/linux/aio_abi.h \ + include/linux/uio.h \ + include/linux/netdevice.h \ + $(wildcard include/config/ax25.h) \ + $(wildcard include/config/tr.h) \ + $(wildcard include/config/net/ipip.h) \ + $(wildcard include/config/net/ipgre.h) \ + $(wildcard include/config/ipv6/sit.h) \ + $(wildcard include/config/ipv6/tunnel.h) \ + $(wildcard include/config/netpoll.h) \ + $(wildcard include/config/net/poll/controller.h) \ + $(wildcard include/config/netpoll/trap.h) \ + $(wildcard include/config/net/dma.h) \ + include/linux/if.h \ + include/linux/socket.h \ + include/asm/socket.h \ + include/asm/sockios.h \ + include/linux/sockios.h \ + include/linux/hdlc/ioctl.h \ + include/linux/if_ether.h \ + include/linux/skbuff.h \ + $(wildcard include/config/nf/conntrack.h) \ + $(wildcard include/config/bridge/netfilter.h) \ + $(wildcard include/config/vlan/8021q.h) \ + $(wildcard include/config/net/sched.h) \ + $(wildcard include/config/net/cls/act.h) \ + $(wildcard include/config/network/secmark.h) \ + $(wildcard include/config/imq.h) \ + include/linux/net.h \ + include/linux/random.h \ + include/linux/sysctl.h \ + $(wildcard include/config/bcm/nat.h) \ + include/linux/textsearch.h \ + include/net/checksum.h \ + include/asm/checksum.h \ + include/linux/in6.h \ + include/linux/dmaengine.h \ + $(wildcard include/config/dma/engine.h) \ + include/linux/if_packet.h \ + include/net/ieee80211.h \ + $(wildcard include/config/ieee80211/debug.h) \ + include/linux/wireless.h \ + include/linux/if_arp.h \ + include/net/iw_handler.h \ + include/net/ieee80211_crypt.h \ + include/asm/paccess.h \ + /home/vicente/repos/tomato/release/src-rt/include/ctf/hndctf.h \ + /home/vicente/repos/tomato/release/src-rt/include/bcmutils.h \ + /home/vicente/repos/tomato/release/src-rt/include/proto/ethernet.h \ + /home/vicente/repos/tomato/release/src-rt/include/packed_section_start.h \ + /home/vicente/repos/tomato/release/src-rt/include/packed_section_end.h \ + /home/vicente/repos/tomato/release/src-rt/include/siutils.h \ + /home/vicente/repos/tomato/release/src-rt/include/bcmdevs.h \ + /home/vicente/repos/tomato/release/src-rt/include/bcmnvram.h \ + $(wildcard include/config/nvram/size.h) \ + $(wildcard include/config/nvram/64k.h) \ + $(wildcard include/config/dual/image.h) \ + $(wildcard include/config/dual/image/flash/support//.h) \ + /home/vicente/repos/tomato/release/src-rt/include/hndsoc.h \ + /home/vicente/repos/tomato/release/src-rt/include/sbconfig.h \ + $(wildcard include/config/h.h) \ + /home/vicente/repos/tomato/release/src-rt/include/aidmp.h \ + /home/vicente/repos/tomato/release/src-rt/include/sbchipc.h \ + /home/vicente/repos/tomato/release/src-rt/include/sbmemc.h \ + $(wildcard include/config/init.h) \ + /home/vicente/repos/tomato/release/src-rt/include/mipsinc.h \ + /home/vicente/repos/tomato/release/src-rt/include/mips33_core.h \ + /home/vicente/repos/tomato/release/src-rt/include/mips74k_core.h \ + /home/vicente/repos/tomato/release/src-rt/include/hndcpu.h \ + /home/vicente/repos/tomato/release/src-rt/include/hndmips.h \ + /home/vicente/repos/tomato/release/src-rt/include/hndpmu.h \ + /home/vicente/repos/tomato/release/src-rt/include/dmemc_core.h \ + +arch/mips/brcm-boards/bcm947xx/../../../../../../shared/hndmips.o: $(deps_arch/mips/brcm-boards/bcm947xx/../../../../../../shared/hndmips.o) + +$(deps_arch/mips/brcm-boards/bcm947xx/../../../../../../shared/hndmips.o): diff --git a/release/src-rt/shared/.hndpci.o.cmd b/release/src-rt/shared/.hndpci.o.cmd new file mode 100644 index 0000000000..1cffe074f1 --- /dev/null +++ b/release/src-rt/shared/.hndpci.o.cmd @@ -0,0 +1,550 @@ +cmd_arch/mips/brcm-boards/bcm947xx/../../../../../../shared/hndpci.o := mipsel-uclibc-gcc -Wp,-MD,arch/mips/brcm-boards/bcm947xx/../../../../../../shared/.hndpci.o.d -nostdinc -isystem /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include -D__KERNEL__ -Iinclude -include include/linux/autoconf.h -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Werror-implicit-function-declaration -Wno-format-security -fno-delete-null-pointer-checks -I/home/vicente/repos/tomato/release/src-rt/include -DBCMDRIVER -Dlinux -O2 -ffunction-sections -mno-check-zero-division -mabi=32 -G 0 -mno-abicalls -fno-pic -pipe -msoft-float -ggdb -ffreestanding -march=mips32r2 -Wa,-mips32r2 -Wa,--trap -Iinclude/asm-mips/mach-generic -fomit-frame-pointer -fno-stack-protector -funit-at-a-time -Wdeclaration-after-statement -Wno-pointer-sign -fno-strict-overflow -DHNDCTF -DCTFPOOL -DCTFMAP -DLINUX_HYBRID_POSTPROCESSING_REMOVAL -D"KBUILD_STR(s)=\#s" -D"KBUILD_BASENAME=KBUILD_STR(hndpci)" -D"KBUILD_MODNAME=KBUILD_STR(bcm947xx)" -c -o arch/mips/brcm-boards/bcm947xx/../../../../../../shared/hndpci.o arch/mips/brcm-boards/bcm947xx/../../../../../../shared/hndpci.c + +deps_arch/mips/brcm-boards/bcm947xx/../../../../../../shared/hndpci.o := \ + arch/mips/brcm-boards/bcm947xx/../../../../../../shared/hndpci.c \ + $(wildcard include/config/addr.h) \ + $(wildcard include/config/indaddr.h) \ + /home/vicente/repos/tomato/release/src-rt/include/typedefs.h \ + include/linux/version.h \ + include/linux/types.h \ + $(wildcard include/config/uid16.h) \ + $(wildcard include/config/lbd.h) \ + $(wildcard include/config/lsf.h) \ + $(wildcard include/config/resources/64bit.h) \ + include/linux/posix_types.h \ + include/linux/stddef.h \ + include/linux/compiler.h \ + $(wildcard include/config/enable/must/check.h) \ + include/linux/compiler-gcc4.h \ + $(wildcard include/config/forced/inlining.h) \ + include/linux/compiler-gcc.h \ + include/asm/posix_types.h \ + include/asm/sgidefs.h \ + include/asm/types.h \ + $(wildcard include/config/highmem.h) \ + $(wildcard include/config/64bit/phys/addr.h) \ + $(wildcard include/config/64bit.h) \ + /home/vicente/repos/tomato/release/src-rt/include/bcmdefs.h \ + /home/vicente/repos/tomato/release/src-rt/include/osl.h \ + /home/vicente/repos/tomato/release/src-rt/include/linux_osl.h \ + $(wildcard include/config/mmc/msm7x00a.h) \ + /home/vicente/repos/tomato/release/src-rt/include/linuxver.h \ + $(wildcard include/config/net/radio.h) \ + $(wildcard include/config/wireless/ext.h) \ + $(wildcard include/config/pcmcia.h) \ + $(wildcard include/config/rfkill.h) \ + include/linux/module.h \ + $(wildcard include/config/modules.h) \ + $(wildcard include/config/modversions.h) \ + $(wildcard include/config/unused/symbols.h) \ + $(wildcard include/config/generic/bug.h) \ + $(wildcard include/config/module/unload.h) \ + $(wildcard include/config/kallsyms.h) \ + $(wildcard include/config/sysfs.h) \ + include/linux/spinlock.h \ + $(wildcard include/config/smp.h) \ + $(wildcard include/config/debug/spinlock.h) \ + $(wildcard include/config/preempt.h) \ + $(wildcard include/config/debug/lock/alloc.h) \ + include/linux/preempt.h \ + $(wildcard include/config/debug/preempt.h) \ + include/linux/thread_info.h \ + include/linux/bitops.h \ + include/asm/bitops.h \ + $(wildcard include/config/cpu/mipsr2.h) \ + $(wildcard include/config/cpu/mips64.h) \ + $(wildcard include/config/cpu/mips32.h) \ + include/linux/irqflags.h \ + $(wildcard include/config/trace/irqflags.h) \ + $(wildcard include/config/trace/irqflags/support.h) \ + $(wildcard include/config/x86.h) \ + include/asm/irqflags.h \ + $(wildcard include/config/mips/mt/smtc.h) \ + $(wildcard include/config/irq/cpu.h) \ + $(wildcard include/config/mips/mt/smtc/instant/replay.h) \ + include/asm/hazards.h \ + $(wildcard include/config/cpu/mipsr1.h) \ + $(wildcard include/config/cpu/r10000.h) \ + $(wildcard include/config/cpu/rm9000.h) \ + $(wildcard include/config/cpu/sb1.h) \ + include/asm/cpu-features.h \ + $(wildcard include/config/32bit.h) \ + $(wildcard include/config/cpu/mipsr2/irq/vi.h) \ + $(wildcard include/config/cpu/mipsr2/irq/ei.h) \ + include/asm/cpu.h \ + include/asm/cpu-info.h \ + $(wildcard include/config/sgi/ip27.h) \ + $(wildcard include/config/mips/mt.h) \ + include/asm/cache.h \ + $(wildcard include/config/mips/l1/cache/shift.h) \ + include/asm-mips/mach-generic/kmalloc.h \ + $(wildcard include/config/dma/coherent.h) \ + include/asm-mips/mach-generic/cpu-feature-overrides.h \ + include/asm/barrier.h \ + $(wildcard include/config/cpu/has/sync.h) \ + $(wildcard include/config/cpu/has/wb.h) \ + $(wildcard include/config/weak/ordering.h) \ + include/asm/bug.h \ + $(wildcard include/config/bug.h) \ + include/asm/break.h \ + include/asm-generic/bug.h \ + $(wildcard include/config/debug/bugverbose.h) \ + include/asm/byteorder.h \ + $(wildcard include/config/cpu/mips64/r2.h) \ + include/linux/byteorder/little_endian.h \ + include/linux/byteorder/swab.h \ + include/linux/byteorder/generic.h \ + include/asm/war.h \ + $(wildcard include/config/sgi/ip22.h) \ + $(wildcard include/config/sni/rm.h) \ + $(wildcard include/config/cpu/r5432.h) \ + $(wildcard include/config/sb1/pass/1/workarounds.h) \ + $(wildcard include/config/sb1/pass/2/workarounds.h) \ + $(wildcard include/config/mips/malta.h) \ + $(wildcard include/config/mips/atlas.h) \ + $(wildcard include/config/mips/sead.h) \ + $(wildcard include/config/cpu/tx49xx.h) \ + $(wildcard include/config/momenco/jaguar/atx.h) \ + $(wildcard include/config/pmc/yosemite.h) \ + $(wildcard include/config/basler/excite.h) \ + $(wildcard include/config/momenco/ocelot.h) \ + $(wildcard include/config/momenco/ocelot/3.h) \ + $(wildcard include/config/momenco/ocelot/c.h) \ + $(wildcard include/config/sgi/ip32.h) \ + $(wildcard include/config/wr/ppmc.h) \ + include/asm-generic/bitops/non-atomic.h \ + include/asm-generic/bitops/fls64.h \ + include/asm-generic/bitops/ffz.h \ + include/asm-generic/bitops/find.h \ + include/asm-generic/bitops/sched.h \ + include/asm-generic/bitops/hweight.h \ + include/asm-generic/bitops/ext2-non-atomic.h \ + include/asm-generic/bitops/le.h \ + include/asm-generic/bitops/ext2-atomic.h \ + include/asm-generic/bitops/minix.h \ + include/asm/thread_info.h \ + $(wildcard include/config/page/size/4kb.h) \ + $(wildcard include/config/page/size/8kb.h) \ + $(wildcard include/config/page/size/16kb.h) \ + $(wildcard include/config/page/size/64kb.h) \ + $(wildcard include/config/debug/stack/usage.h) \ + include/asm/processor.h \ + $(wildcard include/config/mips/mt/fpaff.h) \ + $(wildcard include/config/cpu/has/prefetch.h) \ + include/linux/cpumask.h \ + $(wildcard include/config/hotplug/cpu.h) \ + include/linux/kernel.h \ + $(wildcard include/config/preempt/voluntary.h) \ + $(wildcard include/config/debug/spinlock/sleep.h) \ + $(wildcard include/config/printk.h) \ + $(wildcard include/config/numa.h) \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ + include/linux/linkage.h \ + include/asm/linkage.h \ + include/linux/log2.h \ + $(wildcard include/config/arch/has/ilog2/u32.h) \ + $(wildcard include/config/arch/has/ilog2/u64.h) \ + include/linux/threads.h \ + $(wildcard include/config/nr/cpus.h) \ + $(wildcard include/config/base/small.h) \ + include/linux/bitmap.h \ + include/linux/string.h \ + include/asm/string.h \ + $(wildcard include/config/cpu/r3000.h) \ + include/asm/cachectl.h \ + include/asm/mipsregs.h \ + $(wildcard include/config/cpu/vr41xx.h) \ + include/asm/prefetch.h \ + include/asm/system.h \ + include/asm/addrspace.h \ + $(wildcard include/config/cpu/r4300.h) \ + $(wildcard include/config/cpu/r4x00.h) \ + $(wildcard include/config/cpu/r5000.h) \ + $(wildcard include/config/cpu/rm7000.h) \ + $(wildcard include/config/cpu/nevada.h) \ + $(wildcard include/config/cpu/r8000.h) \ + $(wildcard include/config/cpu/sb1a.h) \ + include/asm-mips/mach-generic/spaces.h \ + $(wildcard include/config/dma/noncoherent.h) \ + include/asm/dsp.h \ + include/linux/stringify.h \ + include/linux/bottom_half.h \ + include/linux/spinlock_types.h \ + include/linux/lockdep.h \ + $(wildcard include/config/lockdep.h) \ + $(wildcard include/config/generic/hardirqs.h) \ + $(wildcard include/config/prove/locking.h) \ + include/linux/spinlock_types_up.h \ + include/linux/spinlock_up.h \ + include/linux/spinlock_api_up.h \ + include/asm/atomic.h \ + include/asm-generic/atomic.h \ + include/linux/list.h \ + $(wildcard include/config/debug/list.h) \ + include/linux/poison.h \ + include/linux/prefetch.h \ + include/linux/stat.h \ + include/asm/stat.h \ + include/linux/time.h \ + include/linux/seqlock.h \ + include/linux/cache.h \ + $(wildcard include/config/arch/has/cache/line/size.h) \ + include/linux/kmod.h \ + $(wildcard include/config/kmod.h) \ + include/linux/errno.h \ + include/asm/errno.h \ + include/asm-generic/errno-base.h \ + include/linux/elf.h \ + include/linux/auxvec.h \ + include/asm/auxvec.h \ + include/linux/elf-em.h \ + include/asm/elf.h \ + $(wildcard include/config/mips32/n32.h) \ + $(wildcard include/config/mips32/o32.h) \ + $(wildcard include/config/mips32/compat.h) \ + include/linux/kobject.h \ + $(wildcard include/config/hotplug.h) \ + include/linux/sysfs.h \ + include/linux/kref.h \ + include/linux/wait.h \ + include/asm/current.h \ + include/linux/moduleparam.h \ + include/linux/init.h \ + $(wildcard include/config/memory/hotplug.h) \ + $(wildcard include/config/acpi/hotplug/memory.h) \ + include/asm/local.h \ + include/linux/percpu.h \ + include/linux/slab.h \ + $(wildcard include/config/slab/debug.h) \ + $(wildcard include/config/slub.h) \ + $(wildcard include/config/slob.h) \ + $(wildcard include/config/debug/slab.h) \ + include/linux/gfp.h \ + $(wildcard include/config/zone/dma.h) \ + $(wildcard include/config/zone/dma32.h) \ + include/linux/mmzone.h \ + $(wildcard include/config/force/max/zoneorder.h) \ + $(wildcard include/config/arch/populates/node/map.h) \ + $(wildcard include/config/discontigmem.h) \ + $(wildcard include/config/flat/node/mem/map.h) \ + $(wildcard include/config/have/memory/present.h) \ + $(wildcard include/config/need/node/memmap/size.h) \ + $(wildcard include/config/need/multiple/nodes.h) \ + $(wildcard include/config/sparsemem.h) \ + $(wildcard include/config/have/arch/early/pfn/to/nid.h) \ + $(wildcard include/config/flatmem.h) \ + $(wildcard include/config/sparsemem/extreme.h) \ + $(wildcard include/config/nodes/span/other/nodes.h) \ + $(wildcard include/config/holes/in/zone.h) \ + include/linux/numa.h \ + $(wildcard include/config/nodes/shift.h) \ + include/linux/nodemask.h \ + include/asm/page.h \ + $(wildcard include/config/build/elf64.h) \ + include/linux/pfn.h \ + include/asm/io.h \ + include/asm-generic/iomap.h \ + include/asm/pgtable-bits.h \ + $(wildcard include/config/cpu/mips32/r1.h) \ + $(wildcard include/config/cpu/tx39xx.h) \ + $(wildcard include/config/mips/uncached.h) \ + include/asm-mips/mach-generic/ioremap.h \ + include/asm-mips/mach-generic/mangle-port.h \ + $(wildcard include/config/swap/io/space.h) \ + include/asm-generic/memory_model.h \ + $(wildcard include/config/out/of/line/pfn/to/page.h) \ + include/asm-generic/page.h \ + include/linux/memory_hotplug.h \ + $(wildcard include/config/have/arch/nodedata/extension.h) \ + include/linux/notifier.h \ + include/linux/mutex.h \ + $(wildcard include/config/debug/mutexes.h) \ + include/linux/rwsem.h \ + $(wildcard include/config/rwsem/generic/spinlock.h) \ + include/linux/rwsem-spinlock.h \ + include/linux/srcu.h \ + include/linux/topology.h \ + $(wildcard include/config/sched/smt.h) \ + $(wildcard include/config/sched/mc.h) \ + include/linux/smp.h \ + include/asm/topology.h \ + include/asm-mips/mach-generic/topology.h \ + include/asm-generic/topology.h \ + include/asm/sparsemem.h \ + include/linux/slab_def.h \ + include/linux/kmalloc_sizes.h \ + include/asm/percpu.h \ + include/asm-generic/percpu.h \ + include/asm/module.h \ + $(wildcard include/config/cpu/mips32/r2.h) \ + $(wildcard include/config/cpu/mips64/r1.h) \ + $(wildcard include/config/cpu/r6000.h) \ + include/asm/uaccess.h \ + include/asm-generic/uaccess.h \ + include/linux/mm.h \ + $(wildcard include/config/sysctl.h) \ + $(wildcard include/config/mmu.h) \ + $(wildcard include/config/stack/growsup.h) \ + $(wildcard include/config/debug/vm.h) \ + $(wildcard include/config/shmem.h) \ + $(wildcard include/config/split/ptlock/cpus.h) \ + $(wildcard include/config/ia64.h) \ + $(wildcard include/config/proc/fs.h) \ + $(wildcard include/config/debug/pagealloc.h) \ + include/linux/capability.h \ + include/linux/rbtree.h \ + include/linux/prio_tree.h \ + include/linux/fs.h \ + $(wildcard include/config/dnotify.h) \ + $(wildcard include/config/quota.h) \ + $(wildcard include/config/inotify.h) \ + $(wildcard include/config/security.h) \ + $(wildcard include/config/epoll.h) \ + $(wildcard include/config/auditsyscall.h) \ + $(wildcard include/config/block.h) \ + $(wildcard include/config/fs/xip.h) \ + $(wildcard include/config/migration.h) \ + include/linux/limits.h \ + include/linux/ioctl.h \ + include/asm/ioctl.h \ + include/linux/kdev_t.h \ + include/linux/dcache.h \ + $(wildcard include/config/profiling.h) \ + include/linux/rcupdate.h \ + include/linux/namei.h \ + include/linux/radix-tree.h \ + include/linux/pid.h \ + include/asm/semaphore.h \ + include/linux/quota.h \ + include/linux/dqblk_xfs.h \ + include/linux/dqblk_v1.h \ + include/linux/dqblk_v2.h \ + include/linux/nfs_fs_i.h \ + include/linux/nfs.h \ + include/linux/sunrpc/msg_prot.h \ + include/linux/fcntl.h \ + include/asm/fcntl.h \ + include/asm-generic/fcntl.h \ + include/linux/err.h \ + include/linux/debug_locks.h \ + $(wildcard include/config/debug/locking/api/selftests.h) \ + include/linux/backing-dev.h \ + include/linux/percpu_counter.h \ + include/linux/proportions.h \ + include/linux/mm_types.h \ + include/asm/pgtable.h \ + include/asm/pgtable-32.h \ + include/asm/fixmap.h \ + $(wildcard include/config/bcm47xx.h) \ + include/asm/kmap_types.h \ + $(wildcard include/config/debug/highmem.h) \ + include/asm-generic/pgtable-nopmd.h \ + include/asm-generic/pgtable-nopud.h \ + include/asm-generic/pgtable.h \ + include/linux/page-flags.h \ + $(wildcard include/config/s390.h) \ + $(wildcard include/config/swap.h) \ + include/linux/vmstat.h \ + $(wildcard include/config/vm/event/counters.h) \ + include/linux/pci.h \ + $(wildcard include/config/pci/msi.h) \ + $(wildcard include/config/pci.h) \ + $(wildcard include/config/ht/irq.h) \ + $(wildcard include/config/pci/domains.h) \ + include/linux/pci_regs.h \ + include/linux/mod_devicetable.h \ + include/linux/ioport.h \ + include/linux/device.h \ + $(wildcard include/config/debug/devres.h) \ + include/linux/klist.h \ + include/linux/completion.h \ + include/linux/pm.h \ + $(wildcard include/config/pm.h) \ + include/asm/device.h \ + include/asm-generic/device.h \ + include/linux/pci_ids.h \ + include/linux/dmapool.h \ + include/asm/scatterlist.h \ + include/asm/pci.h \ + $(wildcard include/config/dma/need/pci/map/state.h) \ + include/asm-generic/pci-dma-compat.h \ + include/linux/dma-mapping.h \ + include/asm/dma-mapping.h \ + include/linux/interrupt.h \ + $(wildcard include/config/high/res/timers.h) \ + $(wildcard include/config/generic/irq/probe.h) \ + include/linux/irqreturn.h \ + include/linux/hardirq.h \ + $(wildcard include/config/preempt/bkl.h) \ + $(wildcard include/config/virt/cpu/accounting.h) \ + include/linux/smp_lock.h \ + $(wildcard include/config/lock/kernel.h) \ + include/asm/hardirq.h \ + include/linux/irq.h \ + $(wildcard include/config/irq/per/cpu.h) \ + $(wildcard include/config/irq/release/method.h) \ + $(wildcard include/config/generic/pending/irq.h) \ + $(wildcard include/config/irqbalance.h) \ + $(wildcard include/config/auto/irq/affinity.h) \ + $(wildcard include/config/generic/hardirqs/no//do/irq.h) \ + include/asm/irq.h \ + $(wildcard include/config/i8259.h) \ + $(wildcard include/config/mips/mt/smtc/im/backstop.h) \ + include/asm/mipsmtregs.h \ + include/asm-mips/mach-generic/irq.h \ + $(wildcard include/config/irq/cpu/rm7k.h) \ + $(wildcard include/config/irq/cpu/rm9k.h) \ + include/asm/ptrace.h \ + $(wildcard include/config/cpu/has/smartmips.h) \ + include/asm/isadep.h \ + include/asm/irq_regs.h \ + include/asm/hw_irq.h \ + include/linux/profile.h \ + include/linux/irq_cpustat.h \ + include/linux/sched.h \ + $(wildcard include/config/no/hz.h) \ + $(wildcard include/config/detect/softlockup.h) \ + $(wildcard include/config/keys.h) \ + $(wildcard include/config/bsd/process/acct.h) \ + $(wildcard include/config/taskstats.h) \ + $(wildcard include/config/inotify/user.h) \ + $(wildcard include/config/schedstats.h) \ + $(wildcard include/config/task/delay/acct.h) \ + $(wildcard include/config/blk/dev/io/trace.h) \ + $(wildcard include/config/cc/stackprotector.h) \ + $(wildcard include/config/sysvipc.h) \ + $(wildcard include/config/rt/mutexes.h) \ + $(wildcard include/config/task/xacct.h) \ + $(wildcard include/config/cpusets.h) \ + $(wildcard include/config/compat.h) \ + $(wildcard include/config/fault/injection.h) \ + include/asm/param.h \ + $(wildcard include/config/hz.h) \ + include/linux/timex.h \ + $(wildcard include/config/time/interpolation.h) \ + include/asm/timex.h \ + include/asm-mips/mach-generic/timex.h \ + include/linux/jiffies.h \ + include/linux/calc64.h \ + include/asm/div64.h \ + include/asm-generic/div64.h \ + include/asm/mmu.h \ + include/asm/cputime.h \ + include/asm-generic/cputime.h \ + include/linux/sem.h \ + include/linux/ipc.h \ + $(wildcard include/config/ipc/ns.h) \ + include/asm/ipcbuf.h \ + include/asm/sembuf.h \ + include/linux/signal.h \ + include/asm/signal.h \ + $(wildcard include/config/trad/signals.h) \ + $(wildcard include/config/binfmt/irix.h) \ + include/asm-generic/signal.h \ + include/asm/sigcontext.h \ + include/asm/siginfo.h \ + include/asm-generic/siginfo.h \ + include/linux/securebits.h \ + include/linux/fs_struct.h \ + include/linux/seccomp.h \ + $(wildcard include/config/seccomp.h) \ + include/linux/futex.h \ + $(wildcard include/config/futex.h) \ + include/linux/rtmutex.h \ + $(wildcard include/config/debug/rt/mutexes.h) \ + include/linux/plist.h \ + $(wildcard include/config/debug/pi/list.h) \ + include/linux/param.h \ + include/linux/resource.h \ + include/asm/resource.h \ + include/asm-generic/resource.h \ + include/linux/timer.h \ + $(wildcard include/config/timer/stats.h) \ + include/linux/ktime.h \ + $(wildcard include/config/ktime/scalar.h) \ + include/linux/hrtimer.h \ + include/linux/task_io_accounting.h \ + $(wildcard include/config/task/io/accounting.h) \ + include/linux/aio.h \ + include/linux/workqueue.h \ + include/linux/aio_abi.h \ + include/linux/uio.h \ + include/linux/netdevice.h \ + $(wildcard include/config/ax25.h) \ + $(wildcard include/config/tr.h) \ + $(wildcard include/config/net/ipip.h) \ + $(wildcard include/config/net/ipgre.h) \ + $(wildcard include/config/ipv6/sit.h) \ + $(wildcard include/config/ipv6/tunnel.h) \ + $(wildcard include/config/netpoll.h) \ + $(wildcard include/config/net/poll/controller.h) \ + $(wildcard include/config/netpoll/trap.h) \ + $(wildcard include/config/net/dma.h) \ + include/linux/if.h \ + include/linux/socket.h \ + include/asm/socket.h \ + include/asm/sockios.h \ + include/linux/sockios.h \ + include/linux/hdlc/ioctl.h \ + include/linux/if_ether.h \ + include/linux/skbuff.h \ + $(wildcard include/config/nf/conntrack.h) \ + $(wildcard include/config/bridge/netfilter.h) \ + $(wildcard include/config/vlan/8021q.h) \ + $(wildcard include/config/net/sched.h) \ + $(wildcard include/config/net/cls/act.h) \ + $(wildcard include/config/network/secmark.h) \ + $(wildcard include/config/imq.h) \ + include/linux/net.h \ + include/linux/random.h \ + include/linux/sysctl.h \ + $(wildcard include/config/bcm/nat.h) \ + include/linux/textsearch.h \ + include/net/checksum.h \ + include/asm/checksum.h \ + include/linux/in6.h \ + include/linux/dmaengine.h \ + $(wildcard include/config/dma/engine.h) \ + include/linux/if_packet.h \ + include/net/ieee80211.h \ + $(wildcard include/config/ieee80211/debug.h) \ + include/linux/wireless.h \ + include/linux/if_arp.h \ + include/net/iw_handler.h \ + include/net/ieee80211_crypt.h \ + include/asm/paccess.h \ + /home/vicente/repos/tomato/release/src-rt/include/ctf/hndctf.h \ + /home/vicente/repos/tomato/release/src-rt/include/bcmutils.h \ + /home/vicente/repos/tomato/release/src-rt/include/proto/ethernet.h \ + /home/vicente/repos/tomato/release/src-rt/include/packed_section_start.h \ + /home/vicente/repos/tomato/release/src-rt/include/packed_section_end.h \ + /home/vicente/repos/tomato/release/src-rt/include/pcicfg.h \ + $(wildcard include/config/bus.h) \ + $(wildcard include/config/slot.h) \ + $(wildcard include/config/fun.h) \ + $(wildcard include/config/off.h) \ + /home/vicente/repos/tomato/release/src-rt/include/bcmdevs.h \ + /home/vicente/repos/tomato/release/src-rt/include/hndsoc.h \ + /home/vicente/repos/tomato/release/src-rt/include/sbconfig.h \ + $(wildcard include/config/h.h) \ + /home/vicente/repos/tomato/release/src-rt/include/aidmp.h \ + /home/vicente/repos/tomato/release/src-rt/include/siutils.h \ + /home/vicente/repos/tomato/release/src-rt/include/pci_core.h \ + /home/vicente/repos/tomato/release/src-rt/include/pcie_core.h \ + $(wildcard include/config/offset.h) \ + /home/vicente/repos/tomato/release/src-rt/include/bcmendian.h \ + /home/vicente/repos/tomato/release/src-rt/include/bcmnvram.h \ + $(wildcard include/config/nvram/size.h) \ + $(wildcard include/config/nvram/64k.h) \ + $(wildcard include/config/dual/image.h) \ + $(wildcard include/config/dual/image/flash/support//.h) \ + /home/vicente/repos/tomato/release/src-rt/include/hndcpu.h \ + /home/vicente/repos/tomato/release/src-rt/include/hndmips.h \ + /home/vicente/repos/tomato/release/src-rt/include/hndpci.h \ + /home/vicente/repos/tomato/release/src-rt/include/nicpci.h \ + /home/vicente/repos/tomato/release/src-rt/include/sbchipc.h \ + arch/mips/brcm-boards/bcm947xx/../../../../../../shared/siutils_priv.h \ + +arch/mips/brcm-boards/bcm947xx/../../../../../../shared/hndpci.o: $(deps_arch/mips/brcm-boards/bcm947xx/../../../../../../shared/hndpci.o) + +$(deps_arch/mips/brcm-boards/bcm947xx/../../../../../../shared/hndpci.o): diff --git a/release/src-rt/shared/.hndpmu.o.cmd b/release/src-rt/shared/.hndpmu.o.cmd new file mode 100644 index 0000000000..c4912589ed --- /dev/null +++ b/release/src-rt/shared/.hndpmu.o.cmd @@ -0,0 +1,531 @@ +cmd_drivers/net/hnd/../../../../../shared/hndpmu.o := mipsel-uclibc-gcc -Wp,-MD,drivers/net/hnd/../../../../../shared/.hndpmu.o.d -nostdinc -isystem /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include -D__KERNEL__ -Iinclude -include include/linux/autoconf.h -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Werror-implicit-function-declaration -Wno-format-security -fno-delete-null-pointer-checks -I/home/vicente/repos/tomato/release/src-rt/include -DBCMDRIVER -Dlinux -O2 -ffunction-sections -mno-check-zero-division -mabi=32 -G 0 -mno-abicalls -fno-pic -pipe -msoft-float -ggdb -ffreestanding -march=mips32r2 -Wa,-mips32r2 -Wa,--trap -Iinclude/asm-mips/mach-generic -fomit-frame-pointer -fno-stack-protector -funit-at-a-time -Wdeclaration-after-statement -Wno-pointer-sign -fno-strict-overflow -DHNDCTF -DCTFPOOL -DCTFMAP -DBCMDBG_TRAP -DWLC_LOW -DWLC_HIGH -DBCMDMA32 -DBCMNVRAMR -DPHY_HAL -DPHY_HAL -DBCM5354 -DLINUX_HYBRID_POSTPROCESSING_REMOVAL -D"KBUILD_STR(s)=\#s" -D"KBUILD_BASENAME=KBUILD_STR(hndpmu)" -D"KBUILD_MODNAME=KBUILD_STR(hnd)" -c -o drivers/net/hnd/../../../../../shared/hndpmu.o drivers/net/hnd/../../../../../shared/hndpmu.c + +deps_drivers/net/hnd/../../../../../shared/hndpmu.o := \ + drivers/net/hnd/../../../../../shared/hndpmu.c \ + $(wildcard include/config/xip.h) \ + /home/vicente/repos/tomato/release/src-rt/include/typedefs.h \ + include/linux/version.h \ + include/linux/types.h \ + $(wildcard include/config/uid16.h) \ + $(wildcard include/config/lbd.h) \ + $(wildcard include/config/lsf.h) \ + $(wildcard include/config/resources/64bit.h) \ + include/linux/posix_types.h \ + include/linux/stddef.h \ + include/linux/compiler.h \ + $(wildcard include/config/enable/must/check.h) \ + include/linux/compiler-gcc4.h \ + $(wildcard include/config/forced/inlining.h) \ + include/linux/compiler-gcc.h \ + include/asm/posix_types.h \ + include/asm/sgidefs.h \ + include/asm/types.h \ + $(wildcard include/config/highmem.h) \ + $(wildcard include/config/64bit/phys/addr.h) \ + $(wildcard include/config/64bit.h) \ + /home/vicente/repos/tomato/release/src-rt/include/bcmdefs.h \ + /home/vicente/repos/tomato/release/src-rt/include/osl.h \ + /home/vicente/repos/tomato/release/src-rt/include/linux_osl.h \ + $(wildcard include/config/mmc/msm7x00a.h) \ + /home/vicente/repos/tomato/release/src-rt/include/linuxver.h \ + $(wildcard include/config/net/radio.h) \ + $(wildcard include/config/wireless/ext.h) \ + $(wildcard include/config/pcmcia.h) \ + $(wildcard include/config/rfkill.h) \ + include/linux/module.h \ + $(wildcard include/config/modules.h) \ + $(wildcard include/config/modversions.h) \ + $(wildcard include/config/unused/symbols.h) \ + $(wildcard include/config/generic/bug.h) \ + $(wildcard include/config/module/unload.h) \ + $(wildcard include/config/kallsyms.h) \ + $(wildcard include/config/sysfs.h) \ + include/linux/spinlock.h \ + $(wildcard include/config/smp.h) \ + $(wildcard include/config/debug/spinlock.h) \ + $(wildcard include/config/preempt.h) \ + $(wildcard include/config/debug/lock/alloc.h) \ + include/linux/preempt.h \ + $(wildcard include/config/debug/preempt.h) \ + include/linux/thread_info.h \ + include/linux/bitops.h \ + include/asm/bitops.h \ + $(wildcard include/config/cpu/mipsr2.h) \ + $(wildcard include/config/cpu/mips64.h) \ + $(wildcard include/config/cpu/mips32.h) \ + include/linux/irqflags.h \ + $(wildcard include/config/trace/irqflags.h) \ + $(wildcard include/config/trace/irqflags/support.h) \ + $(wildcard include/config/x86.h) \ + include/asm/irqflags.h \ + $(wildcard include/config/mips/mt/smtc.h) \ + $(wildcard include/config/irq/cpu.h) \ + $(wildcard include/config/mips/mt/smtc/instant/replay.h) \ + include/asm/hazards.h \ + $(wildcard include/config/cpu/mipsr1.h) \ + $(wildcard include/config/cpu/r10000.h) \ + $(wildcard include/config/cpu/rm9000.h) \ + $(wildcard include/config/cpu/sb1.h) \ + include/asm/cpu-features.h \ + $(wildcard include/config/32bit.h) \ + $(wildcard include/config/cpu/mipsr2/irq/vi.h) \ + $(wildcard include/config/cpu/mipsr2/irq/ei.h) \ + include/asm/cpu.h \ + include/asm/cpu-info.h \ + $(wildcard include/config/sgi/ip27.h) \ + $(wildcard include/config/mips/mt.h) \ + include/asm/cache.h \ + $(wildcard include/config/mips/l1/cache/shift.h) \ + include/asm-mips/mach-generic/kmalloc.h \ + $(wildcard include/config/dma/coherent.h) \ + include/asm-mips/mach-generic/cpu-feature-overrides.h \ + include/asm/barrier.h \ + $(wildcard include/config/cpu/has/sync.h) \ + $(wildcard include/config/cpu/has/wb.h) \ + $(wildcard include/config/weak/ordering.h) \ + include/asm/bug.h \ + $(wildcard include/config/bug.h) \ + include/asm/break.h \ + include/asm-generic/bug.h \ + $(wildcard include/config/debug/bugverbose.h) \ + include/asm/byteorder.h \ + $(wildcard include/config/cpu/mips64/r2.h) \ + include/linux/byteorder/little_endian.h \ + include/linux/byteorder/swab.h \ + include/linux/byteorder/generic.h \ + include/asm/war.h \ + $(wildcard include/config/sgi/ip22.h) \ + $(wildcard include/config/sni/rm.h) \ + $(wildcard include/config/cpu/r5432.h) \ + $(wildcard include/config/sb1/pass/1/workarounds.h) \ + $(wildcard include/config/sb1/pass/2/workarounds.h) \ + $(wildcard include/config/mips/malta.h) \ + $(wildcard include/config/mips/atlas.h) \ + $(wildcard include/config/mips/sead.h) \ + $(wildcard include/config/cpu/tx49xx.h) \ + $(wildcard include/config/momenco/jaguar/atx.h) \ + $(wildcard include/config/pmc/yosemite.h) \ + $(wildcard include/config/basler/excite.h) \ + $(wildcard include/config/momenco/ocelot.h) \ + $(wildcard include/config/momenco/ocelot/3.h) \ + $(wildcard include/config/momenco/ocelot/c.h) \ + $(wildcard include/config/sgi/ip32.h) \ + $(wildcard include/config/wr/ppmc.h) \ + include/asm-generic/bitops/non-atomic.h \ + include/asm-generic/bitops/fls64.h \ + include/asm-generic/bitops/ffz.h \ + include/asm-generic/bitops/find.h \ + include/asm-generic/bitops/sched.h \ + include/asm-generic/bitops/hweight.h \ + include/asm-generic/bitops/ext2-non-atomic.h \ + include/asm-generic/bitops/le.h \ + include/asm-generic/bitops/ext2-atomic.h \ + include/asm-generic/bitops/minix.h \ + include/asm/thread_info.h \ + $(wildcard include/config/page/size/4kb.h) \ + $(wildcard include/config/page/size/8kb.h) \ + $(wildcard include/config/page/size/16kb.h) \ + $(wildcard include/config/page/size/64kb.h) \ + $(wildcard include/config/debug/stack/usage.h) \ + include/asm/processor.h \ + $(wildcard include/config/mips/mt/fpaff.h) \ + $(wildcard include/config/cpu/has/prefetch.h) \ + include/linux/cpumask.h \ + $(wildcard include/config/hotplug/cpu.h) \ + include/linux/kernel.h \ + $(wildcard include/config/preempt/voluntary.h) \ + $(wildcard include/config/debug/spinlock/sleep.h) \ + $(wildcard include/config/printk.h) \ + $(wildcard include/config/numa.h) \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ + include/linux/linkage.h \ + include/asm/linkage.h \ + include/linux/log2.h \ + $(wildcard include/config/arch/has/ilog2/u32.h) \ + $(wildcard include/config/arch/has/ilog2/u64.h) \ + include/linux/threads.h \ + $(wildcard include/config/nr/cpus.h) \ + $(wildcard include/config/base/small.h) \ + include/linux/bitmap.h \ + include/linux/string.h \ + include/asm/string.h \ + $(wildcard include/config/cpu/r3000.h) \ + include/asm/cachectl.h \ + include/asm/mipsregs.h \ + $(wildcard include/config/cpu/vr41xx.h) \ + include/asm/prefetch.h \ + include/asm/system.h \ + include/asm/addrspace.h \ + $(wildcard include/config/cpu/r4300.h) \ + $(wildcard include/config/cpu/r4x00.h) \ + $(wildcard include/config/cpu/r5000.h) \ + $(wildcard include/config/cpu/rm7000.h) \ + $(wildcard include/config/cpu/nevada.h) \ + $(wildcard include/config/cpu/r8000.h) \ + $(wildcard include/config/cpu/sb1a.h) \ + include/asm-mips/mach-generic/spaces.h \ + $(wildcard include/config/dma/noncoherent.h) \ + include/asm/dsp.h \ + include/linux/stringify.h \ + include/linux/bottom_half.h \ + include/linux/spinlock_types.h \ + include/linux/lockdep.h \ + $(wildcard include/config/lockdep.h) \ + $(wildcard include/config/generic/hardirqs.h) \ + $(wildcard include/config/prove/locking.h) \ + include/linux/spinlock_types_up.h \ + include/linux/spinlock_up.h \ + include/linux/spinlock_api_up.h \ + include/asm/atomic.h \ + include/asm-generic/atomic.h \ + include/linux/list.h \ + $(wildcard include/config/debug/list.h) \ + include/linux/poison.h \ + include/linux/prefetch.h \ + include/linux/stat.h \ + include/asm/stat.h \ + include/linux/time.h \ + include/linux/seqlock.h \ + include/linux/cache.h \ + $(wildcard include/config/arch/has/cache/line/size.h) \ + include/linux/kmod.h \ + $(wildcard include/config/kmod.h) \ + include/linux/errno.h \ + include/asm/errno.h \ + include/asm-generic/errno-base.h \ + include/linux/elf.h \ + include/linux/auxvec.h \ + include/asm/auxvec.h \ + include/linux/elf-em.h \ + include/asm/elf.h \ + $(wildcard include/config/mips32/n32.h) \ + $(wildcard include/config/mips32/o32.h) \ + $(wildcard include/config/mips32/compat.h) \ + include/linux/kobject.h \ + $(wildcard include/config/hotplug.h) \ + include/linux/sysfs.h \ + include/linux/kref.h \ + include/linux/wait.h \ + include/asm/current.h \ + include/linux/moduleparam.h \ + include/linux/init.h \ + $(wildcard include/config/memory/hotplug.h) \ + $(wildcard include/config/acpi/hotplug/memory.h) \ + include/asm/local.h \ + include/linux/percpu.h \ + include/linux/slab.h \ + $(wildcard include/config/slab/debug.h) \ + $(wildcard include/config/slub.h) \ + $(wildcard include/config/slob.h) \ + $(wildcard include/config/debug/slab.h) \ + include/linux/gfp.h \ + $(wildcard include/config/zone/dma.h) \ + $(wildcard include/config/zone/dma32.h) \ + include/linux/mmzone.h \ + $(wildcard include/config/force/max/zoneorder.h) \ + $(wildcard include/config/arch/populates/node/map.h) \ + $(wildcard include/config/discontigmem.h) \ + $(wildcard include/config/flat/node/mem/map.h) \ + $(wildcard include/config/have/memory/present.h) \ + $(wildcard include/config/need/node/memmap/size.h) \ + $(wildcard include/config/need/multiple/nodes.h) \ + $(wildcard include/config/sparsemem.h) \ + $(wildcard include/config/have/arch/early/pfn/to/nid.h) \ + $(wildcard include/config/flatmem.h) \ + $(wildcard include/config/sparsemem/extreme.h) \ + $(wildcard include/config/nodes/span/other/nodes.h) \ + $(wildcard include/config/holes/in/zone.h) \ + include/linux/numa.h \ + $(wildcard include/config/nodes/shift.h) \ + include/linux/nodemask.h \ + include/asm/page.h \ + $(wildcard include/config/build/elf64.h) \ + include/linux/pfn.h \ + include/asm/io.h \ + include/asm-generic/iomap.h \ + include/asm/pgtable-bits.h \ + $(wildcard include/config/cpu/mips32/r1.h) \ + $(wildcard include/config/cpu/tx39xx.h) \ + $(wildcard include/config/mips/uncached.h) \ + include/asm-mips/mach-generic/ioremap.h \ + include/asm-mips/mach-generic/mangle-port.h \ + $(wildcard include/config/swap/io/space.h) \ + include/asm-generic/memory_model.h \ + $(wildcard include/config/out/of/line/pfn/to/page.h) \ + include/asm-generic/page.h \ + include/linux/memory_hotplug.h \ + $(wildcard include/config/have/arch/nodedata/extension.h) \ + include/linux/notifier.h \ + include/linux/mutex.h \ + $(wildcard include/config/debug/mutexes.h) \ + include/linux/rwsem.h \ + $(wildcard include/config/rwsem/generic/spinlock.h) \ + include/linux/rwsem-spinlock.h \ + include/linux/srcu.h \ + include/linux/topology.h \ + $(wildcard include/config/sched/smt.h) \ + $(wildcard include/config/sched/mc.h) \ + include/linux/smp.h \ + include/asm/topology.h \ + include/asm-mips/mach-generic/topology.h \ + include/asm-generic/topology.h \ + include/asm/sparsemem.h \ + include/linux/slab_def.h \ + include/linux/kmalloc_sizes.h \ + include/asm/percpu.h \ + include/asm-generic/percpu.h \ + include/asm/module.h \ + $(wildcard include/config/cpu/mips32/r2.h) \ + $(wildcard include/config/cpu/mips64/r1.h) \ + $(wildcard include/config/cpu/r6000.h) \ + include/asm/uaccess.h \ + include/asm-generic/uaccess.h \ + include/linux/mm.h \ + $(wildcard include/config/sysctl.h) \ + $(wildcard include/config/mmu.h) \ + $(wildcard include/config/stack/growsup.h) \ + $(wildcard include/config/debug/vm.h) \ + $(wildcard include/config/shmem.h) \ + $(wildcard include/config/split/ptlock/cpus.h) \ + $(wildcard include/config/ia64.h) \ + $(wildcard include/config/proc/fs.h) \ + $(wildcard include/config/debug/pagealloc.h) \ + include/linux/capability.h \ + include/linux/rbtree.h \ + include/linux/prio_tree.h \ + include/linux/fs.h \ + $(wildcard include/config/dnotify.h) \ + $(wildcard include/config/quota.h) \ + $(wildcard include/config/inotify.h) \ + $(wildcard include/config/security.h) \ + $(wildcard include/config/epoll.h) \ + $(wildcard include/config/auditsyscall.h) \ + $(wildcard include/config/block.h) \ + $(wildcard include/config/fs/xip.h) \ + $(wildcard include/config/migration.h) \ + include/linux/limits.h \ + include/linux/ioctl.h \ + include/asm/ioctl.h \ + include/linux/kdev_t.h \ + include/linux/dcache.h \ + $(wildcard include/config/profiling.h) \ + include/linux/rcupdate.h \ + include/linux/namei.h \ + include/linux/radix-tree.h \ + include/linux/pid.h \ + include/asm/semaphore.h \ + include/linux/quota.h \ + include/linux/dqblk_xfs.h \ + include/linux/dqblk_v1.h \ + include/linux/dqblk_v2.h \ + include/linux/nfs_fs_i.h \ + include/linux/nfs.h \ + include/linux/sunrpc/msg_prot.h \ + include/linux/fcntl.h \ + include/asm/fcntl.h \ + include/asm-generic/fcntl.h \ + include/linux/err.h \ + include/linux/debug_locks.h \ + $(wildcard include/config/debug/locking/api/selftests.h) \ + include/linux/backing-dev.h \ + include/linux/percpu_counter.h \ + include/linux/proportions.h \ + include/linux/mm_types.h \ + include/asm/pgtable.h \ + include/asm/pgtable-32.h \ + include/asm/fixmap.h \ + $(wildcard include/config/bcm47xx.h) \ + include/asm/kmap_types.h \ + $(wildcard include/config/debug/highmem.h) \ + include/asm-generic/pgtable-nopmd.h \ + include/asm-generic/pgtable-nopud.h \ + include/asm-generic/pgtable.h \ + include/linux/page-flags.h \ + $(wildcard include/config/s390.h) \ + $(wildcard include/config/swap.h) \ + include/linux/vmstat.h \ + $(wildcard include/config/vm/event/counters.h) \ + include/linux/pci.h \ + $(wildcard include/config/pci/msi.h) \ + $(wildcard include/config/pci.h) \ + $(wildcard include/config/ht/irq.h) \ + $(wildcard include/config/pci/domains.h) \ + include/linux/pci_regs.h \ + include/linux/mod_devicetable.h \ + include/linux/ioport.h \ + include/linux/device.h \ + $(wildcard include/config/debug/devres.h) \ + include/linux/klist.h \ + include/linux/completion.h \ + include/linux/pm.h \ + $(wildcard include/config/pm.h) \ + include/asm/device.h \ + include/asm-generic/device.h \ + include/linux/pci_ids.h \ + include/linux/dmapool.h \ + include/asm/scatterlist.h \ + include/asm/pci.h \ + $(wildcard include/config/dma/need/pci/map/state.h) \ + include/asm-generic/pci-dma-compat.h \ + include/linux/dma-mapping.h \ + include/asm/dma-mapping.h \ + include/linux/interrupt.h \ + $(wildcard include/config/high/res/timers.h) \ + $(wildcard include/config/generic/irq/probe.h) \ + include/linux/irqreturn.h \ + include/linux/hardirq.h \ + $(wildcard include/config/preempt/bkl.h) \ + $(wildcard include/config/virt/cpu/accounting.h) \ + include/linux/smp_lock.h \ + $(wildcard include/config/lock/kernel.h) \ + include/asm/hardirq.h \ + include/linux/irq.h \ + $(wildcard include/config/irq/per/cpu.h) \ + $(wildcard include/config/irq/release/method.h) \ + $(wildcard include/config/generic/pending/irq.h) \ + $(wildcard include/config/irqbalance.h) \ + $(wildcard include/config/auto/irq/affinity.h) \ + $(wildcard include/config/generic/hardirqs/no//do/irq.h) \ + include/asm/irq.h \ + $(wildcard include/config/i8259.h) \ + $(wildcard include/config/mips/mt/smtc/im/backstop.h) \ + include/asm/mipsmtregs.h \ + include/asm-mips/mach-generic/irq.h \ + $(wildcard include/config/irq/cpu/rm7k.h) \ + $(wildcard include/config/irq/cpu/rm9k.h) \ + include/asm/ptrace.h \ + $(wildcard include/config/cpu/has/smartmips.h) \ + include/asm/isadep.h \ + include/asm/irq_regs.h \ + include/asm/hw_irq.h \ + include/linux/profile.h \ + include/linux/irq_cpustat.h \ + include/linux/sched.h \ + $(wildcard include/config/no/hz.h) \ + $(wildcard include/config/detect/softlockup.h) \ + $(wildcard include/config/keys.h) \ + $(wildcard include/config/bsd/process/acct.h) \ + $(wildcard include/config/taskstats.h) \ + $(wildcard include/config/inotify/user.h) \ + $(wildcard include/config/schedstats.h) \ + $(wildcard include/config/task/delay/acct.h) \ + $(wildcard include/config/blk/dev/io/trace.h) \ + $(wildcard include/config/cc/stackprotector.h) \ + $(wildcard include/config/sysvipc.h) \ + $(wildcard include/config/rt/mutexes.h) \ + $(wildcard include/config/task/xacct.h) \ + $(wildcard include/config/cpusets.h) \ + $(wildcard include/config/compat.h) \ + $(wildcard include/config/fault/injection.h) \ + include/asm/param.h \ + $(wildcard include/config/hz.h) \ + include/linux/timex.h \ + $(wildcard include/config/time/interpolation.h) \ + include/asm/timex.h \ + include/asm-mips/mach-generic/timex.h \ + include/linux/jiffies.h \ + include/linux/calc64.h \ + include/asm/div64.h \ + include/asm-generic/div64.h \ + include/asm/mmu.h \ + include/asm/cputime.h \ + include/asm-generic/cputime.h \ + include/linux/sem.h \ + include/linux/ipc.h \ + $(wildcard include/config/ipc/ns.h) \ + include/asm/ipcbuf.h \ + include/asm/sembuf.h \ + include/linux/signal.h \ + include/asm/signal.h \ + $(wildcard include/config/trad/signals.h) \ + $(wildcard include/config/binfmt/irix.h) \ + include/asm-generic/signal.h \ + include/asm/sigcontext.h \ + include/asm/siginfo.h \ + include/asm-generic/siginfo.h \ + include/linux/securebits.h \ + include/linux/fs_struct.h \ + include/linux/seccomp.h \ + $(wildcard include/config/seccomp.h) \ + include/linux/futex.h \ + $(wildcard include/config/futex.h) \ + include/linux/rtmutex.h \ + $(wildcard include/config/debug/rt/mutexes.h) \ + include/linux/plist.h \ + $(wildcard include/config/debug/pi/list.h) \ + include/linux/param.h \ + include/linux/resource.h \ + include/asm/resource.h \ + include/asm-generic/resource.h \ + include/linux/timer.h \ + $(wildcard include/config/timer/stats.h) \ + include/linux/ktime.h \ + $(wildcard include/config/ktime/scalar.h) \ + include/linux/hrtimer.h \ + include/linux/task_io_accounting.h \ + $(wildcard include/config/task/io/accounting.h) \ + include/linux/aio.h \ + include/linux/workqueue.h \ + include/linux/aio_abi.h \ + include/linux/uio.h \ + include/linux/netdevice.h \ + $(wildcard include/config/ax25.h) \ + $(wildcard include/config/tr.h) \ + $(wildcard include/config/net/ipip.h) \ + $(wildcard include/config/net/ipgre.h) \ + $(wildcard include/config/ipv6/sit.h) \ + $(wildcard include/config/ipv6/tunnel.h) \ + $(wildcard include/config/netpoll.h) \ + $(wildcard include/config/net/poll/controller.h) \ + $(wildcard include/config/netpoll/trap.h) \ + $(wildcard include/config/net/dma.h) \ + include/linux/if.h \ + include/linux/socket.h \ + include/asm/socket.h \ + include/asm/sockios.h \ + include/linux/sockios.h \ + include/linux/hdlc/ioctl.h \ + include/linux/if_ether.h \ + include/linux/skbuff.h \ + $(wildcard include/config/nf/conntrack.h) \ + $(wildcard include/config/bridge/netfilter.h) \ + $(wildcard include/config/vlan/8021q.h) \ + $(wildcard include/config/net/sched.h) \ + $(wildcard include/config/net/cls/act.h) \ + $(wildcard include/config/network/secmark.h) \ + $(wildcard include/config/imq.h) \ + include/linux/net.h \ + include/linux/random.h \ + include/linux/sysctl.h \ + $(wildcard include/config/bcm/nat.h) \ + include/linux/textsearch.h \ + include/net/checksum.h \ + include/asm/checksum.h \ + include/linux/in6.h \ + include/linux/dmaengine.h \ + $(wildcard include/config/dma/engine.h) \ + include/linux/if_packet.h \ + include/net/ieee80211.h \ + $(wildcard include/config/ieee80211/debug.h) \ + include/linux/wireless.h \ + include/linux/if_arp.h \ + include/net/iw_handler.h \ + include/net/ieee80211_crypt.h \ + include/asm/paccess.h \ + /home/vicente/repos/tomato/release/src-rt/include/ctf/hndctf.h \ + /home/vicente/repos/tomato/release/src-rt/include/bcmutils.h \ + /home/vicente/repos/tomato/release/src-rt/include/proto/ethernet.h \ + /home/vicente/repos/tomato/release/src-rt/include/packed_section_start.h \ + /home/vicente/repos/tomato/release/src-rt/include/packed_section_end.h \ + /home/vicente/repos/tomato/release/src-rt/include/siutils.h \ + /home/vicente/repos/tomato/release/src-rt/include/bcmdevs.h \ + /home/vicente/repos/tomato/release/src-rt/include/hndsoc.h \ + /home/vicente/repos/tomato/release/src-rt/include/sbconfig.h \ + $(wildcard include/config/h.h) \ + /home/vicente/repos/tomato/release/src-rt/include/aidmp.h \ + /home/vicente/repos/tomato/release/src-rt/include/sbchipc.h \ + /home/vicente/repos/tomato/release/src-rt/include/hndpmu.h \ + +drivers/net/hnd/../../../../../shared/hndpmu.o: $(deps_drivers/net/hnd/../../../../../shared/hndpmu.o) + +$(deps_drivers/net/hnd/../../../../../shared/hndpmu.o): diff --git a/release/src-rt/shared/.linux_gpio.o.cmd b/release/src-rt/shared/.linux_gpio.o.cmd new file mode 100644 index 0000000000..17a3d8c0c9 --- /dev/null +++ b/release/src-rt/shared/.linux_gpio.o.cmd @@ -0,0 +1,527 @@ +cmd_arch/mips/brcm-boards/bcm947xx/../../../../../../shared/linux_gpio.o := mipsel-uclibc-gcc -Wp,-MD,arch/mips/brcm-boards/bcm947xx/../../../../../../shared/.linux_gpio.o.d -nostdinc -isystem /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include -D__KERNEL__ -Iinclude -include include/linux/autoconf.h -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Werror-implicit-function-declaration -Wno-format-security -fno-delete-null-pointer-checks -I/home/vicente/repos/tomato/release/src-rt/include -DBCMDRIVER -Dlinux -O2 -ffunction-sections -mno-check-zero-division -mabi=32 -G 0 -mno-abicalls -fno-pic -pipe -msoft-float -ggdb -ffreestanding -march=mips32r2 -Wa,-mips32r2 -Wa,--trap -Iinclude/asm-mips/mach-generic -fomit-frame-pointer -fno-stack-protector -funit-at-a-time -Wdeclaration-after-statement -Wno-pointer-sign -fno-strict-overflow -DHNDCTF -DCTFPOOL -DCTFMAP -DLINUX_HYBRID_POSTPROCESSING_REMOVAL -D"KBUILD_STR(s)=\#s" -D"KBUILD_BASENAME=KBUILD_STR(linux_gpio)" -D"KBUILD_MODNAME=KBUILD_STR(bcm947xx)" -c -o arch/mips/brcm-boards/bcm947xx/../../../../../../shared/linux_gpio.o arch/mips/brcm-boards/bcm947xx/../../../../../../shared/linux_gpio.c + +deps_arch/mips/brcm-boards/bcm947xx/../../../../../../shared/linux_gpio.o := \ + arch/mips/brcm-boards/bcm947xx/../../../../../../shared/linux_gpio.c \ + include/linux/module.h \ + $(wildcard include/config/modules.h) \ + $(wildcard include/config/modversions.h) \ + $(wildcard include/config/unused/symbols.h) \ + $(wildcard include/config/generic/bug.h) \ + $(wildcard include/config/module/unload.h) \ + $(wildcard include/config/kallsyms.h) \ + $(wildcard include/config/sysfs.h) \ + include/linux/spinlock.h \ + $(wildcard include/config/smp.h) \ + $(wildcard include/config/debug/spinlock.h) \ + $(wildcard include/config/preempt.h) \ + $(wildcard include/config/debug/lock/alloc.h) \ + include/linux/preempt.h \ + $(wildcard include/config/debug/preempt.h) \ + include/linux/thread_info.h \ + include/linux/types.h \ + $(wildcard include/config/uid16.h) \ + $(wildcard include/config/lbd.h) \ + $(wildcard include/config/lsf.h) \ + $(wildcard include/config/resources/64bit.h) \ + include/linux/posix_types.h \ + include/linux/stddef.h \ + include/linux/compiler.h \ + $(wildcard include/config/enable/must/check.h) \ + include/linux/compiler-gcc4.h \ + $(wildcard include/config/forced/inlining.h) \ + include/linux/compiler-gcc.h \ + include/asm/posix_types.h \ + include/asm/sgidefs.h \ + include/asm/types.h \ + $(wildcard include/config/highmem.h) \ + $(wildcard include/config/64bit/phys/addr.h) \ + $(wildcard include/config/64bit.h) \ + include/linux/bitops.h \ + include/asm/bitops.h \ + $(wildcard include/config/cpu/mipsr2.h) \ + $(wildcard include/config/cpu/mips64.h) \ + $(wildcard include/config/cpu/mips32.h) \ + include/linux/irqflags.h \ + $(wildcard include/config/trace/irqflags.h) \ + $(wildcard include/config/trace/irqflags/support.h) \ + $(wildcard include/config/x86.h) \ + include/asm/irqflags.h \ + $(wildcard include/config/mips/mt/smtc.h) \ + $(wildcard include/config/irq/cpu.h) \ + $(wildcard include/config/mips/mt/smtc/instant/replay.h) \ + include/asm/hazards.h \ + $(wildcard include/config/cpu/mipsr1.h) \ + $(wildcard include/config/cpu/r10000.h) \ + $(wildcard include/config/cpu/rm9000.h) \ + $(wildcard include/config/cpu/sb1.h) \ + include/asm/cpu-features.h \ + $(wildcard include/config/32bit.h) \ + $(wildcard include/config/cpu/mipsr2/irq/vi.h) \ + $(wildcard include/config/cpu/mipsr2/irq/ei.h) \ + include/asm/cpu.h \ + include/asm/cpu-info.h \ + $(wildcard include/config/sgi/ip27.h) \ + $(wildcard include/config/mips/mt.h) \ + include/asm/cache.h \ + $(wildcard include/config/mips/l1/cache/shift.h) \ + include/asm-mips/mach-generic/kmalloc.h \ + $(wildcard include/config/dma/coherent.h) \ + include/asm-mips/mach-generic/cpu-feature-overrides.h \ + include/asm/barrier.h \ + $(wildcard include/config/cpu/has/sync.h) \ + $(wildcard include/config/cpu/has/wb.h) \ + $(wildcard include/config/weak/ordering.h) \ + include/asm/bug.h \ + $(wildcard include/config/bug.h) \ + include/asm/break.h \ + include/asm-generic/bug.h \ + $(wildcard include/config/debug/bugverbose.h) \ + include/asm/byteorder.h \ + $(wildcard include/config/cpu/mips64/r2.h) \ + include/linux/byteorder/little_endian.h \ + include/linux/byteorder/swab.h \ + include/linux/byteorder/generic.h \ + include/asm/war.h \ + $(wildcard include/config/sgi/ip22.h) \ + $(wildcard include/config/sni/rm.h) \ + $(wildcard include/config/cpu/r5432.h) \ + $(wildcard include/config/sb1/pass/1/workarounds.h) \ + $(wildcard include/config/sb1/pass/2/workarounds.h) \ + $(wildcard include/config/mips/malta.h) \ + $(wildcard include/config/mips/atlas.h) \ + $(wildcard include/config/mips/sead.h) \ + $(wildcard include/config/cpu/tx49xx.h) \ + $(wildcard include/config/momenco/jaguar/atx.h) \ + $(wildcard include/config/pmc/yosemite.h) \ + $(wildcard include/config/basler/excite.h) \ + $(wildcard include/config/momenco/ocelot.h) \ + $(wildcard include/config/momenco/ocelot/3.h) \ + $(wildcard include/config/momenco/ocelot/c.h) \ + $(wildcard include/config/sgi/ip32.h) \ + $(wildcard include/config/wr/ppmc.h) \ + include/asm-generic/bitops/non-atomic.h \ + include/asm-generic/bitops/fls64.h \ + include/asm-generic/bitops/ffz.h \ + include/asm-generic/bitops/find.h \ + include/asm-generic/bitops/sched.h \ + include/asm-generic/bitops/hweight.h \ + include/asm-generic/bitops/ext2-non-atomic.h \ + include/asm-generic/bitops/le.h \ + include/asm-generic/bitops/ext2-atomic.h \ + include/asm-generic/bitops/minix.h \ + include/asm/thread_info.h \ + $(wildcard include/config/page/size/4kb.h) \ + $(wildcard include/config/page/size/8kb.h) \ + $(wildcard include/config/page/size/16kb.h) \ + $(wildcard include/config/page/size/64kb.h) \ + $(wildcard include/config/debug/stack/usage.h) \ + include/asm/processor.h \ + $(wildcard include/config/mips/mt/fpaff.h) \ + $(wildcard include/config/cpu/has/prefetch.h) \ + include/linux/cpumask.h \ + $(wildcard include/config/hotplug/cpu.h) \ + include/linux/kernel.h \ + $(wildcard include/config/preempt/voluntary.h) \ + $(wildcard include/config/debug/spinlock/sleep.h) \ + $(wildcard include/config/printk.h) \ + $(wildcard include/config/numa.h) \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ + include/linux/linkage.h \ + include/asm/linkage.h \ + include/linux/log2.h \ + $(wildcard include/config/arch/has/ilog2/u32.h) \ + $(wildcard include/config/arch/has/ilog2/u64.h) \ + include/linux/threads.h \ + $(wildcard include/config/nr/cpus.h) \ + $(wildcard include/config/base/small.h) \ + include/linux/bitmap.h \ + include/linux/string.h \ + include/asm/string.h \ + $(wildcard include/config/cpu/r3000.h) \ + include/asm/cachectl.h \ + include/asm/mipsregs.h \ + $(wildcard include/config/cpu/vr41xx.h) \ + include/asm/prefetch.h \ + include/asm/system.h \ + include/asm/addrspace.h \ + $(wildcard include/config/cpu/r4300.h) \ + $(wildcard include/config/cpu/r4x00.h) \ + $(wildcard include/config/cpu/r5000.h) \ + $(wildcard include/config/cpu/rm7000.h) \ + $(wildcard include/config/cpu/nevada.h) \ + $(wildcard include/config/cpu/r8000.h) \ + $(wildcard include/config/cpu/sb1a.h) \ + include/asm-mips/mach-generic/spaces.h \ + $(wildcard include/config/dma/noncoherent.h) \ + include/asm/dsp.h \ + include/linux/stringify.h \ + include/linux/bottom_half.h \ + include/linux/spinlock_types.h \ + include/linux/lockdep.h \ + $(wildcard include/config/lockdep.h) \ + $(wildcard include/config/generic/hardirqs.h) \ + $(wildcard include/config/prove/locking.h) \ + include/linux/spinlock_types_up.h \ + include/linux/spinlock_up.h \ + include/linux/spinlock_api_up.h \ + include/asm/atomic.h \ + include/asm-generic/atomic.h \ + include/linux/list.h \ + $(wildcard include/config/debug/list.h) \ + include/linux/poison.h \ + include/linux/prefetch.h \ + include/linux/stat.h \ + include/asm/stat.h \ + include/linux/time.h \ + include/linux/seqlock.h \ + include/linux/cache.h \ + $(wildcard include/config/arch/has/cache/line/size.h) \ + include/linux/kmod.h \ + $(wildcard include/config/kmod.h) \ + include/linux/errno.h \ + include/asm/errno.h \ + include/asm-generic/errno-base.h \ + include/linux/elf.h \ + include/linux/auxvec.h \ + include/asm/auxvec.h \ + include/linux/elf-em.h \ + include/asm/elf.h \ + $(wildcard include/config/mips32/n32.h) \ + $(wildcard include/config/mips32/o32.h) \ + $(wildcard include/config/mips32/compat.h) \ + include/linux/kobject.h \ + $(wildcard include/config/hotplug.h) \ + include/linux/sysfs.h \ + include/linux/kref.h \ + include/linux/wait.h \ + include/asm/current.h \ + include/linux/moduleparam.h \ + include/linux/init.h \ + $(wildcard include/config/memory/hotplug.h) \ + $(wildcard include/config/acpi/hotplug/memory.h) \ + include/asm/local.h \ + include/linux/percpu.h \ + include/linux/slab.h \ + $(wildcard include/config/slab/debug.h) \ + $(wildcard include/config/slub.h) \ + $(wildcard include/config/slob.h) \ + $(wildcard include/config/debug/slab.h) \ + include/linux/gfp.h \ + $(wildcard include/config/zone/dma.h) \ + $(wildcard include/config/zone/dma32.h) \ + include/linux/mmzone.h \ + $(wildcard include/config/force/max/zoneorder.h) \ + $(wildcard include/config/arch/populates/node/map.h) \ + $(wildcard include/config/discontigmem.h) \ + $(wildcard include/config/flat/node/mem/map.h) \ + $(wildcard include/config/have/memory/present.h) \ + $(wildcard include/config/need/node/memmap/size.h) \ + $(wildcard include/config/need/multiple/nodes.h) \ + $(wildcard include/config/sparsemem.h) \ + $(wildcard include/config/have/arch/early/pfn/to/nid.h) \ + $(wildcard include/config/flatmem.h) \ + $(wildcard include/config/sparsemem/extreme.h) \ + $(wildcard include/config/nodes/span/other/nodes.h) \ + $(wildcard include/config/holes/in/zone.h) \ + include/linux/numa.h \ + $(wildcard include/config/nodes/shift.h) \ + include/linux/nodemask.h \ + include/asm/page.h \ + $(wildcard include/config/build/elf64.h) \ + include/linux/pfn.h \ + include/asm/io.h \ + include/asm-generic/iomap.h \ + include/asm/pgtable-bits.h \ + $(wildcard include/config/cpu/mips32/r1.h) \ + $(wildcard include/config/cpu/tx39xx.h) \ + $(wildcard include/config/mips/uncached.h) \ + include/asm-mips/mach-generic/ioremap.h \ + include/asm-mips/mach-generic/mangle-port.h \ + $(wildcard include/config/swap/io/space.h) \ + include/asm-generic/memory_model.h \ + $(wildcard include/config/out/of/line/pfn/to/page.h) \ + include/asm-generic/page.h \ + include/linux/memory_hotplug.h \ + $(wildcard include/config/have/arch/nodedata/extension.h) \ + include/linux/notifier.h \ + include/linux/mutex.h \ + $(wildcard include/config/debug/mutexes.h) \ + include/linux/rwsem.h \ + $(wildcard include/config/rwsem/generic/spinlock.h) \ + include/linux/rwsem-spinlock.h \ + include/linux/srcu.h \ + include/linux/topology.h \ + $(wildcard include/config/sched/smt.h) \ + $(wildcard include/config/sched/mc.h) \ + include/linux/smp.h \ + include/asm/topology.h \ + include/asm-mips/mach-generic/topology.h \ + include/asm-generic/topology.h \ + include/asm/sparsemem.h \ + include/linux/slab_def.h \ + include/linux/kmalloc_sizes.h \ + include/asm/percpu.h \ + include/asm-generic/percpu.h \ + include/asm/module.h \ + $(wildcard include/config/cpu/mips32/r2.h) \ + $(wildcard include/config/cpu/mips64/r1.h) \ + $(wildcard include/config/cpu/r6000.h) \ + include/asm/uaccess.h \ + include/asm-generic/uaccess.h \ + include/linux/fs.h \ + $(wildcard include/config/dnotify.h) \ + $(wildcard include/config/quota.h) \ + $(wildcard include/config/inotify.h) \ + $(wildcard include/config/security.h) \ + $(wildcard include/config/epoll.h) \ + $(wildcard include/config/auditsyscall.h) \ + $(wildcard include/config/block.h) \ + $(wildcard include/config/fs/xip.h) \ + $(wildcard include/config/migration.h) \ + include/linux/limits.h \ + include/linux/ioctl.h \ + include/asm/ioctl.h \ + include/linux/kdev_t.h \ + include/linux/dcache.h \ + $(wildcard include/config/profiling.h) \ + include/linux/rcupdate.h \ + include/linux/namei.h \ + include/linux/radix-tree.h \ + include/linux/prio_tree.h \ + include/linux/pid.h \ + include/asm/semaphore.h \ + include/linux/quota.h \ + include/linux/dqblk_xfs.h \ + include/linux/dqblk_v1.h \ + include/linux/dqblk_v2.h \ + include/linux/nfs_fs_i.h \ + include/linux/nfs.h \ + include/linux/sunrpc/msg_prot.h \ + include/linux/fcntl.h \ + include/asm/fcntl.h \ + include/asm-generic/fcntl.h \ + include/linux/err.h \ + include/linux/miscdevice.h \ + include/linux/major.h \ + /home/vicente/repos/tomato/release/src-rt/include/typedefs.h \ + include/linux/version.h \ + /home/vicente/repos/tomato/release/src-rt/include/bcmdefs.h \ + /home/vicente/repos/tomato/release/src-rt/include/bcmutils.h \ + /home/vicente/repos/tomato/release/src-rt/include/osl.h \ + /home/vicente/repos/tomato/release/src-rt/include/linux_osl.h \ + $(wildcard include/config/mmc/msm7x00a.h) \ + /home/vicente/repos/tomato/release/src-rt/include/linuxver.h \ + $(wildcard include/config/net/radio.h) \ + $(wildcard include/config/wireless/ext.h) \ + $(wildcard include/config/pcmcia.h) \ + $(wildcard include/config/rfkill.h) \ + include/linux/mm.h \ + $(wildcard include/config/sysctl.h) \ + $(wildcard include/config/mmu.h) \ + $(wildcard include/config/stack/growsup.h) \ + $(wildcard include/config/debug/vm.h) \ + $(wildcard include/config/shmem.h) \ + $(wildcard include/config/split/ptlock/cpus.h) \ + $(wildcard include/config/ia64.h) \ + $(wildcard include/config/proc/fs.h) \ + $(wildcard include/config/debug/pagealloc.h) \ + include/linux/capability.h \ + include/linux/rbtree.h \ + include/linux/debug_locks.h \ + $(wildcard include/config/debug/locking/api/selftests.h) \ + include/linux/backing-dev.h \ + include/linux/percpu_counter.h \ + include/linux/proportions.h \ + include/linux/mm_types.h \ + include/asm/pgtable.h \ + include/asm/pgtable-32.h \ + include/asm/fixmap.h \ + $(wildcard include/config/bcm47xx.h) \ + include/asm/kmap_types.h \ + $(wildcard include/config/debug/highmem.h) \ + include/asm-generic/pgtable-nopmd.h \ + include/asm-generic/pgtable-nopud.h \ + include/asm-generic/pgtable.h \ + include/linux/page-flags.h \ + $(wildcard include/config/s390.h) \ + $(wildcard include/config/swap.h) \ + include/linux/vmstat.h \ + $(wildcard include/config/vm/event/counters.h) \ + include/linux/pci.h \ + $(wildcard include/config/pci/msi.h) \ + $(wildcard include/config/pci.h) \ + $(wildcard include/config/ht/irq.h) \ + $(wildcard include/config/pci/domains.h) \ + include/linux/pci_regs.h \ + include/linux/mod_devicetable.h \ + include/linux/ioport.h \ + include/linux/device.h \ + $(wildcard include/config/debug/devres.h) \ + include/linux/klist.h \ + include/linux/completion.h \ + include/linux/pm.h \ + $(wildcard include/config/pm.h) \ + include/asm/device.h \ + include/asm-generic/device.h \ + include/linux/pci_ids.h \ + include/linux/dmapool.h \ + include/asm/scatterlist.h \ + include/asm/pci.h \ + $(wildcard include/config/dma/need/pci/map/state.h) \ + include/asm-generic/pci-dma-compat.h \ + include/linux/dma-mapping.h \ + include/asm/dma-mapping.h \ + include/linux/interrupt.h \ + $(wildcard include/config/high/res/timers.h) \ + $(wildcard include/config/generic/irq/probe.h) \ + include/linux/irqreturn.h \ + include/linux/hardirq.h \ + $(wildcard include/config/preempt/bkl.h) \ + $(wildcard include/config/virt/cpu/accounting.h) \ + include/linux/smp_lock.h \ + $(wildcard include/config/lock/kernel.h) \ + include/asm/hardirq.h \ + include/linux/irq.h \ + $(wildcard include/config/irq/per/cpu.h) \ + $(wildcard include/config/irq/release/method.h) \ + $(wildcard include/config/generic/pending/irq.h) \ + $(wildcard include/config/irqbalance.h) \ + $(wildcard include/config/auto/irq/affinity.h) \ + $(wildcard include/config/generic/hardirqs/no//do/irq.h) \ + include/asm/irq.h \ + $(wildcard include/config/i8259.h) \ + $(wildcard include/config/mips/mt/smtc/im/backstop.h) \ + include/asm/mipsmtregs.h \ + include/asm-mips/mach-generic/irq.h \ + $(wildcard include/config/irq/cpu/rm7k.h) \ + $(wildcard include/config/irq/cpu/rm9k.h) \ + include/asm/ptrace.h \ + $(wildcard include/config/cpu/has/smartmips.h) \ + include/asm/isadep.h \ + include/asm/irq_regs.h \ + include/asm/hw_irq.h \ + include/linux/profile.h \ + include/linux/irq_cpustat.h \ + include/linux/sched.h \ + $(wildcard include/config/no/hz.h) \ + $(wildcard include/config/detect/softlockup.h) \ + $(wildcard include/config/keys.h) \ + $(wildcard include/config/bsd/process/acct.h) \ + $(wildcard include/config/taskstats.h) \ + $(wildcard include/config/inotify/user.h) \ + $(wildcard include/config/schedstats.h) \ + $(wildcard include/config/task/delay/acct.h) \ + $(wildcard include/config/blk/dev/io/trace.h) \ + $(wildcard include/config/cc/stackprotector.h) \ + $(wildcard include/config/sysvipc.h) \ + $(wildcard include/config/rt/mutexes.h) \ + $(wildcard include/config/task/xacct.h) \ + $(wildcard include/config/cpusets.h) \ + $(wildcard include/config/compat.h) \ + $(wildcard include/config/fault/injection.h) \ + include/asm/param.h \ + $(wildcard include/config/hz.h) \ + include/linux/timex.h \ + $(wildcard include/config/time/interpolation.h) \ + include/asm/timex.h \ + include/asm-mips/mach-generic/timex.h \ + include/linux/jiffies.h \ + include/linux/calc64.h \ + include/asm/div64.h \ + include/asm-generic/div64.h \ + include/asm/mmu.h \ + include/asm/cputime.h \ + include/asm-generic/cputime.h \ + include/linux/sem.h \ + include/linux/ipc.h \ + $(wildcard include/config/ipc/ns.h) \ + include/asm/ipcbuf.h \ + include/asm/sembuf.h \ + include/linux/signal.h \ + include/asm/signal.h \ + $(wildcard include/config/trad/signals.h) \ + $(wildcard include/config/binfmt/irix.h) \ + include/asm-generic/signal.h \ + include/asm/sigcontext.h \ + include/asm/siginfo.h \ + include/asm-generic/siginfo.h \ + include/linux/securebits.h \ + include/linux/fs_struct.h \ + include/linux/seccomp.h \ + $(wildcard include/config/seccomp.h) \ + include/linux/futex.h \ + $(wildcard include/config/futex.h) \ + include/linux/rtmutex.h \ + $(wildcard include/config/debug/rt/mutexes.h) \ + include/linux/plist.h \ + $(wildcard include/config/debug/pi/list.h) \ + include/linux/param.h \ + include/linux/resource.h \ + include/asm/resource.h \ + include/asm-generic/resource.h \ + include/linux/timer.h \ + $(wildcard include/config/timer/stats.h) \ + include/linux/ktime.h \ + $(wildcard include/config/ktime/scalar.h) \ + include/linux/hrtimer.h \ + include/linux/task_io_accounting.h \ + $(wildcard include/config/task/io/accounting.h) \ + include/linux/aio.h \ + include/linux/workqueue.h \ + include/linux/aio_abi.h \ + include/linux/uio.h \ + include/linux/netdevice.h \ + $(wildcard include/config/ax25.h) \ + $(wildcard include/config/tr.h) \ + $(wildcard include/config/net/ipip.h) \ + $(wildcard include/config/net/ipgre.h) \ + $(wildcard include/config/ipv6/sit.h) \ + $(wildcard include/config/ipv6/tunnel.h) \ + $(wildcard include/config/netpoll.h) \ + $(wildcard include/config/net/poll/controller.h) \ + $(wildcard include/config/netpoll/trap.h) \ + $(wildcard include/config/net/dma.h) \ + include/linux/if.h \ + include/linux/socket.h \ + include/asm/socket.h \ + include/asm/sockios.h \ + include/linux/sockios.h \ + include/linux/hdlc/ioctl.h \ + include/linux/if_ether.h \ + include/linux/skbuff.h \ + $(wildcard include/config/nf/conntrack.h) \ + $(wildcard include/config/bridge/netfilter.h) \ + $(wildcard include/config/vlan/8021q.h) \ + $(wildcard include/config/net/sched.h) \ + $(wildcard include/config/net/cls/act.h) \ + $(wildcard include/config/network/secmark.h) \ + $(wildcard include/config/imq.h) \ + include/linux/net.h \ + include/linux/random.h \ + include/linux/sysctl.h \ + $(wildcard include/config/bcm/nat.h) \ + include/linux/textsearch.h \ + include/net/checksum.h \ + include/asm/checksum.h \ + include/linux/in6.h \ + include/linux/dmaengine.h \ + $(wildcard include/config/dma/engine.h) \ + include/linux/if_packet.h \ + include/net/ieee80211.h \ + $(wildcard include/config/ieee80211/debug.h) \ + include/linux/wireless.h \ + include/linux/if_arp.h \ + include/net/iw_handler.h \ + include/net/ieee80211_crypt.h \ + include/asm/paccess.h \ + /home/vicente/repos/tomato/release/src-rt/include/ctf/hndctf.h \ + /home/vicente/repos/tomato/release/src-rt/include/proto/ethernet.h \ + /home/vicente/repos/tomato/release/src-rt/include/packed_section_start.h \ + /home/vicente/repos/tomato/release/src-rt/include/packed_section_end.h \ + /home/vicente/repos/tomato/release/src-rt/include/siutils.h \ + /home/vicente/repos/tomato/release/src-rt/include/bcmdevs.h \ + /home/vicente/repos/tomato/release/src-rt/include/linux_gpio.h \ + +arch/mips/brcm-boards/bcm947xx/../../../../../../shared/linux_gpio.o: $(deps_arch/mips/brcm-boards/bcm947xx/../../../../../../shared/linux_gpio.o) + +$(deps_arch/mips/brcm-boards/bcm947xx/../../../../../../shared/linux_gpio.o): diff --git a/release/src-rt/shared/.linux_osl.o.cmd b/release/src-rt/shared/.linux_osl.o.cmd new file mode 100644 index 0000000000..65c013e9e0 --- /dev/null +++ b/release/src-rt/shared/.linux_osl.o.cmd @@ -0,0 +1,531 @@ +cmd_drivers/net/hnd/../../../../../shared/linux_osl.o := mipsel-uclibc-gcc -Wp,-MD,drivers/net/hnd/../../../../../shared/.linux_osl.o.d -nostdinc -isystem /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include -D__KERNEL__ -Iinclude -include include/linux/autoconf.h -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Werror-implicit-function-declaration -Wno-format-security -fno-delete-null-pointer-checks -I/home/vicente/repos/tomato/release/src-rt/include -DBCMDRIVER -Dlinux -O2 -ffunction-sections -mno-check-zero-division -mabi=32 -G 0 -mno-abicalls -fno-pic -pipe -msoft-float -ggdb -ffreestanding -march=mips32r2 -Wa,-mips32r2 -Wa,--trap -Iinclude/asm-mips/mach-generic -fomit-frame-pointer -fno-stack-protector -funit-at-a-time -Wdeclaration-after-statement -Wno-pointer-sign -fno-strict-overflow -DHNDCTF -DCTFPOOL -DCTFMAP -DBCMDBG_TRAP -DWLC_LOW -DWLC_HIGH -DBCMDMA32 -DBCMNVRAMR -DPHY_HAL -DPHY_HAL -DBCM5354 -DLINUX_HYBRID_POSTPROCESSING_REMOVAL -D"KBUILD_STR(s)=\#s" -D"KBUILD_BASENAME=KBUILD_STR(linux_osl)" -D"KBUILD_MODNAME=KBUILD_STR(hnd)" -c -o drivers/net/hnd/../../../../../shared/linux_osl.o drivers/net/hnd/../../../../../shared/linux_osl.c + +deps_drivers/net/hnd/../../../../../shared/linux_osl.o := \ + drivers/net/hnd/../../../../../shared/linux_osl.c \ + $(wildcard include/config/pcmcia.h) \ + /home/vicente/repos/tomato/release/src-rt/include/typedefs.h \ + include/linux/version.h \ + include/linux/types.h \ + $(wildcard include/config/uid16.h) \ + $(wildcard include/config/lbd.h) \ + $(wildcard include/config/lsf.h) \ + $(wildcard include/config/resources/64bit.h) \ + include/linux/posix_types.h \ + include/linux/stddef.h \ + include/linux/compiler.h \ + $(wildcard include/config/enable/must/check.h) \ + include/linux/compiler-gcc4.h \ + $(wildcard include/config/forced/inlining.h) \ + include/linux/compiler-gcc.h \ + include/asm/posix_types.h \ + include/asm/sgidefs.h \ + include/asm/types.h \ + $(wildcard include/config/highmem.h) \ + $(wildcard include/config/64bit/phys/addr.h) \ + $(wildcard include/config/64bit.h) \ + /home/vicente/repos/tomato/release/src-rt/include/bcmdefs.h \ + /home/vicente/repos/tomato/release/src-rt/include/bcmendian.h \ + /home/vicente/repos/tomato/release/src-rt/include/linuxver.h \ + $(wildcard include/config/net/radio.h) \ + $(wildcard include/config/wireless/ext.h) \ + $(wildcard include/config/rfkill.h) \ + include/linux/module.h \ + $(wildcard include/config/modules.h) \ + $(wildcard include/config/modversions.h) \ + $(wildcard include/config/unused/symbols.h) \ + $(wildcard include/config/generic/bug.h) \ + $(wildcard include/config/module/unload.h) \ + $(wildcard include/config/kallsyms.h) \ + $(wildcard include/config/sysfs.h) \ + include/linux/spinlock.h \ + $(wildcard include/config/smp.h) \ + $(wildcard include/config/debug/spinlock.h) \ + $(wildcard include/config/preempt.h) \ + $(wildcard include/config/debug/lock/alloc.h) \ + include/linux/preempt.h \ + $(wildcard include/config/debug/preempt.h) \ + include/linux/thread_info.h \ + include/linux/bitops.h \ + include/asm/bitops.h \ + $(wildcard include/config/cpu/mipsr2.h) \ + $(wildcard include/config/cpu/mips64.h) \ + $(wildcard include/config/cpu/mips32.h) \ + include/linux/irqflags.h \ + $(wildcard include/config/trace/irqflags.h) \ + $(wildcard include/config/trace/irqflags/support.h) \ + $(wildcard include/config/x86.h) \ + include/asm/irqflags.h \ + $(wildcard include/config/mips/mt/smtc.h) \ + $(wildcard include/config/irq/cpu.h) \ + $(wildcard include/config/mips/mt/smtc/instant/replay.h) \ + include/asm/hazards.h \ + $(wildcard include/config/cpu/mipsr1.h) \ + $(wildcard include/config/cpu/r10000.h) \ + $(wildcard include/config/cpu/rm9000.h) \ + $(wildcard include/config/cpu/sb1.h) \ + include/asm/cpu-features.h \ + $(wildcard include/config/32bit.h) \ + $(wildcard include/config/cpu/mipsr2/irq/vi.h) \ + $(wildcard include/config/cpu/mipsr2/irq/ei.h) \ + include/asm/cpu.h \ + include/asm/cpu-info.h \ + $(wildcard include/config/sgi/ip27.h) \ + $(wildcard include/config/mips/mt.h) \ + include/asm/cache.h \ + $(wildcard include/config/mips/l1/cache/shift.h) \ + include/asm-mips/mach-generic/kmalloc.h \ + $(wildcard include/config/dma/coherent.h) \ + include/asm-mips/mach-generic/cpu-feature-overrides.h \ + include/asm/barrier.h \ + $(wildcard include/config/cpu/has/sync.h) \ + $(wildcard include/config/cpu/has/wb.h) \ + $(wildcard include/config/weak/ordering.h) \ + include/asm/bug.h \ + $(wildcard include/config/bug.h) \ + include/asm/break.h \ + include/asm-generic/bug.h \ + $(wildcard include/config/debug/bugverbose.h) \ + include/asm/byteorder.h \ + $(wildcard include/config/cpu/mips64/r2.h) \ + include/linux/byteorder/little_endian.h \ + include/linux/byteorder/swab.h \ + include/linux/byteorder/generic.h \ + include/asm/war.h \ + $(wildcard include/config/sgi/ip22.h) \ + $(wildcard include/config/sni/rm.h) \ + $(wildcard include/config/cpu/r5432.h) \ + $(wildcard include/config/sb1/pass/1/workarounds.h) \ + $(wildcard include/config/sb1/pass/2/workarounds.h) \ + $(wildcard include/config/mips/malta.h) \ + $(wildcard include/config/mips/atlas.h) \ + $(wildcard include/config/mips/sead.h) \ + $(wildcard include/config/cpu/tx49xx.h) \ + $(wildcard include/config/momenco/jaguar/atx.h) \ + $(wildcard include/config/pmc/yosemite.h) \ + $(wildcard include/config/basler/excite.h) \ + $(wildcard include/config/momenco/ocelot.h) \ + $(wildcard include/config/momenco/ocelot/3.h) \ + $(wildcard include/config/momenco/ocelot/c.h) \ + $(wildcard include/config/sgi/ip32.h) \ + $(wildcard include/config/wr/ppmc.h) \ + include/asm-generic/bitops/non-atomic.h \ + include/asm-generic/bitops/fls64.h \ + include/asm-generic/bitops/ffz.h \ + include/asm-generic/bitops/find.h \ + include/asm-generic/bitops/sched.h \ + include/asm-generic/bitops/hweight.h \ + include/asm-generic/bitops/ext2-non-atomic.h \ + include/asm-generic/bitops/le.h \ + include/asm-generic/bitops/ext2-atomic.h \ + include/asm-generic/bitops/minix.h \ + include/asm/thread_info.h \ + $(wildcard include/config/page/size/4kb.h) \ + $(wildcard include/config/page/size/8kb.h) \ + $(wildcard include/config/page/size/16kb.h) \ + $(wildcard include/config/page/size/64kb.h) \ + $(wildcard include/config/debug/stack/usage.h) \ + include/asm/processor.h \ + $(wildcard include/config/mips/mt/fpaff.h) \ + $(wildcard include/config/cpu/has/prefetch.h) \ + include/linux/cpumask.h \ + $(wildcard include/config/hotplug/cpu.h) \ + include/linux/kernel.h \ + $(wildcard include/config/preempt/voluntary.h) \ + $(wildcard include/config/debug/spinlock/sleep.h) \ + $(wildcard include/config/printk.h) \ + $(wildcard include/config/numa.h) \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ + include/linux/linkage.h \ + include/asm/linkage.h \ + include/linux/log2.h \ + $(wildcard include/config/arch/has/ilog2/u32.h) \ + $(wildcard include/config/arch/has/ilog2/u64.h) \ + include/linux/threads.h \ + $(wildcard include/config/nr/cpus.h) \ + $(wildcard include/config/base/small.h) \ + include/linux/bitmap.h \ + include/linux/string.h \ + include/asm/string.h \ + $(wildcard include/config/cpu/r3000.h) \ + include/asm/cachectl.h \ + include/asm/mipsregs.h \ + $(wildcard include/config/cpu/vr41xx.h) \ + include/asm/prefetch.h \ + include/asm/system.h \ + include/asm/addrspace.h \ + $(wildcard include/config/cpu/r4300.h) \ + $(wildcard include/config/cpu/r4x00.h) \ + $(wildcard include/config/cpu/r5000.h) \ + $(wildcard include/config/cpu/rm7000.h) \ + $(wildcard include/config/cpu/nevada.h) \ + $(wildcard include/config/cpu/r8000.h) \ + $(wildcard include/config/cpu/sb1a.h) \ + include/asm-mips/mach-generic/spaces.h \ + $(wildcard include/config/dma/noncoherent.h) \ + include/asm/dsp.h \ + include/linux/stringify.h \ + include/linux/bottom_half.h \ + include/linux/spinlock_types.h \ + include/linux/lockdep.h \ + $(wildcard include/config/lockdep.h) \ + $(wildcard include/config/generic/hardirqs.h) \ + $(wildcard include/config/prove/locking.h) \ + include/linux/spinlock_types_up.h \ + include/linux/spinlock_up.h \ + include/linux/spinlock_api_up.h \ + include/asm/atomic.h \ + include/asm-generic/atomic.h \ + include/linux/list.h \ + $(wildcard include/config/debug/list.h) \ + include/linux/poison.h \ + include/linux/prefetch.h \ + include/linux/stat.h \ + include/asm/stat.h \ + include/linux/time.h \ + include/linux/seqlock.h \ + include/linux/cache.h \ + $(wildcard include/config/arch/has/cache/line/size.h) \ + include/linux/kmod.h \ + $(wildcard include/config/kmod.h) \ + include/linux/errno.h \ + include/asm/errno.h \ + include/asm-generic/errno-base.h \ + include/linux/elf.h \ + include/linux/auxvec.h \ + include/asm/auxvec.h \ + include/linux/elf-em.h \ + include/asm/elf.h \ + $(wildcard include/config/mips32/n32.h) \ + $(wildcard include/config/mips32/o32.h) \ + $(wildcard include/config/mips32/compat.h) \ + include/linux/kobject.h \ + $(wildcard include/config/hotplug.h) \ + include/linux/sysfs.h \ + include/linux/kref.h \ + include/linux/wait.h \ + include/asm/current.h \ + include/linux/moduleparam.h \ + include/linux/init.h \ + $(wildcard include/config/memory/hotplug.h) \ + $(wildcard include/config/acpi/hotplug/memory.h) \ + include/asm/local.h \ + include/linux/percpu.h \ + include/linux/slab.h \ + $(wildcard include/config/slab/debug.h) \ + $(wildcard include/config/slub.h) \ + $(wildcard include/config/slob.h) \ + $(wildcard include/config/debug/slab.h) \ + include/linux/gfp.h \ + $(wildcard include/config/zone/dma.h) \ + $(wildcard include/config/zone/dma32.h) \ + include/linux/mmzone.h \ + $(wildcard include/config/force/max/zoneorder.h) \ + $(wildcard include/config/arch/populates/node/map.h) \ + $(wildcard include/config/discontigmem.h) \ + $(wildcard include/config/flat/node/mem/map.h) \ + $(wildcard include/config/have/memory/present.h) \ + $(wildcard include/config/need/node/memmap/size.h) \ + $(wildcard include/config/need/multiple/nodes.h) \ + $(wildcard include/config/sparsemem.h) \ + $(wildcard include/config/have/arch/early/pfn/to/nid.h) \ + $(wildcard include/config/flatmem.h) \ + $(wildcard include/config/sparsemem/extreme.h) \ + $(wildcard include/config/nodes/span/other/nodes.h) \ + $(wildcard include/config/holes/in/zone.h) \ + include/linux/numa.h \ + $(wildcard include/config/nodes/shift.h) \ + include/linux/nodemask.h \ + include/asm/page.h \ + $(wildcard include/config/build/elf64.h) \ + include/linux/pfn.h \ + include/asm/io.h \ + include/asm-generic/iomap.h \ + include/asm/pgtable-bits.h \ + $(wildcard include/config/cpu/mips32/r1.h) \ + $(wildcard include/config/cpu/tx39xx.h) \ + $(wildcard include/config/mips/uncached.h) \ + include/asm-mips/mach-generic/ioremap.h \ + include/asm-mips/mach-generic/mangle-port.h \ + $(wildcard include/config/swap/io/space.h) \ + include/asm-generic/memory_model.h \ + $(wildcard include/config/out/of/line/pfn/to/page.h) \ + include/asm-generic/page.h \ + include/linux/memory_hotplug.h \ + $(wildcard include/config/have/arch/nodedata/extension.h) \ + include/linux/notifier.h \ + include/linux/mutex.h \ + $(wildcard include/config/debug/mutexes.h) \ + include/linux/rwsem.h \ + $(wildcard include/config/rwsem/generic/spinlock.h) \ + include/linux/rwsem-spinlock.h \ + include/linux/srcu.h \ + include/linux/topology.h \ + $(wildcard include/config/sched/smt.h) \ + $(wildcard include/config/sched/mc.h) \ + include/linux/smp.h \ + include/asm/topology.h \ + include/asm-mips/mach-generic/topology.h \ + include/asm-generic/topology.h \ + include/asm/sparsemem.h \ + include/linux/slab_def.h \ + include/linux/kmalloc_sizes.h \ + include/asm/percpu.h \ + include/asm-generic/percpu.h \ + include/asm/module.h \ + $(wildcard include/config/cpu/mips32/r2.h) \ + $(wildcard include/config/cpu/mips64/r1.h) \ + $(wildcard include/config/cpu/r6000.h) \ + include/asm/uaccess.h \ + include/asm-generic/uaccess.h \ + include/linux/mm.h \ + $(wildcard include/config/sysctl.h) \ + $(wildcard include/config/mmu.h) \ + $(wildcard include/config/stack/growsup.h) \ + $(wildcard include/config/debug/vm.h) \ + $(wildcard include/config/shmem.h) \ + $(wildcard include/config/split/ptlock/cpus.h) \ + $(wildcard include/config/ia64.h) \ + $(wildcard include/config/proc/fs.h) \ + $(wildcard include/config/debug/pagealloc.h) \ + include/linux/capability.h \ + include/linux/rbtree.h \ + include/linux/prio_tree.h \ + include/linux/fs.h \ + $(wildcard include/config/dnotify.h) \ + $(wildcard include/config/quota.h) \ + $(wildcard include/config/inotify.h) \ + $(wildcard include/config/security.h) \ + $(wildcard include/config/epoll.h) \ + $(wildcard include/config/auditsyscall.h) \ + $(wildcard include/config/block.h) \ + $(wildcard include/config/fs/xip.h) \ + $(wildcard include/config/migration.h) \ + include/linux/limits.h \ + include/linux/ioctl.h \ + include/asm/ioctl.h \ + include/linux/kdev_t.h \ + include/linux/dcache.h \ + $(wildcard include/config/profiling.h) \ + include/linux/rcupdate.h \ + include/linux/namei.h \ + include/linux/radix-tree.h \ + include/linux/pid.h \ + include/asm/semaphore.h \ + include/linux/quota.h \ + include/linux/dqblk_xfs.h \ + include/linux/dqblk_v1.h \ + include/linux/dqblk_v2.h \ + include/linux/nfs_fs_i.h \ + include/linux/nfs.h \ + include/linux/sunrpc/msg_prot.h \ + include/linux/fcntl.h \ + include/asm/fcntl.h \ + include/asm-generic/fcntl.h \ + include/linux/err.h \ + include/linux/debug_locks.h \ + $(wildcard include/config/debug/locking/api/selftests.h) \ + include/linux/backing-dev.h \ + include/linux/percpu_counter.h \ + include/linux/proportions.h \ + include/linux/mm_types.h \ + include/asm/pgtable.h \ + include/asm/pgtable-32.h \ + include/asm/fixmap.h \ + $(wildcard include/config/bcm47xx.h) \ + include/asm/kmap_types.h \ + $(wildcard include/config/debug/highmem.h) \ + include/asm-generic/pgtable-nopmd.h \ + include/asm-generic/pgtable-nopud.h \ + include/asm-generic/pgtable.h \ + include/linux/page-flags.h \ + $(wildcard include/config/s390.h) \ + $(wildcard include/config/swap.h) \ + include/linux/vmstat.h \ + $(wildcard include/config/vm/event/counters.h) \ + include/linux/pci.h \ + $(wildcard include/config/pci/msi.h) \ + $(wildcard include/config/pci.h) \ + $(wildcard include/config/ht/irq.h) \ + $(wildcard include/config/pci/domains.h) \ + include/linux/pci_regs.h \ + include/linux/mod_devicetable.h \ + include/linux/ioport.h \ + include/linux/device.h \ + $(wildcard include/config/debug/devres.h) \ + include/linux/klist.h \ + include/linux/completion.h \ + include/linux/pm.h \ + $(wildcard include/config/pm.h) \ + include/asm/device.h \ + include/asm-generic/device.h \ + include/linux/pci_ids.h \ + include/linux/dmapool.h \ + include/asm/scatterlist.h \ + include/asm/pci.h \ + $(wildcard include/config/dma/need/pci/map/state.h) \ + include/asm-generic/pci-dma-compat.h \ + include/linux/dma-mapping.h \ + include/asm/dma-mapping.h \ + include/linux/interrupt.h \ + $(wildcard include/config/high/res/timers.h) \ + $(wildcard include/config/generic/irq/probe.h) \ + include/linux/irqreturn.h \ + include/linux/hardirq.h \ + $(wildcard include/config/preempt/bkl.h) \ + $(wildcard include/config/virt/cpu/accounting.h) \ + include/linux/smp_lock.h \ + $(wildcard include/config/lock/kernel.h) \ + include/asm/hardirq.h \ + include/linux/irq.h \ + $(wildcard include/config/irq/per/cpu.h) \ + $(wildcard include/config/irq/release/method.h) \ + $(wildcard include/config/generic/pending/irq.h) \ + $(wildcard include/config/irqbalance.h) \ + $(wildcard include/config/auto/irq/affinity.h) \ + $(wildcard include/config/generic/hardirqs/no//do/irq.h) \ + include/asm/irq.h \ + $(wildcard include/config/i8259.h) \ + $(wildcard include/config/mips/mt/smtc/im/backstop.h) \ + include/asm/mipsmtregs.h \ + include/asm-mips/mach-generic/irq.h \ + $(wildcard include/config/irq/cpu/rm7k.h) \ + $(wildcard include/config/irq/cpu/rm9k.h) \ + include/asm/ptrace.h \ + $(wildcard include/config/cpu/has/smartmips.h) \ + include/asm/isadep.h \ + include/asm/irq_regs.h \ + include/asm/hw_irq.h \ + include/linux/profile.h \ + include/linux/irq_cpustat.h \ + include/linux/sched.h \ + $(wildcard include/config/no/hz.h) \ + $(wildcard include/config/detect/softlockup.h) \ + $(wildcard include/config/keys.h) \ + $(wildcard include/config/bsd/process/acct.h) \ + $(wildcard include/config/taskstats.h) \ + $(wildcard include/config/inotify/user.h) \ + $(wildcard include/config/schedstats.h) \ + $(wildcard include/config/task/delay/acct.h) \ + $(wildcard include/config/blk/dev/io/trace.h) \ + $(wildcard include/config/cc/stackprotector.h) \ + $(wildcard include/config/sysvipc.h) \ + $(wildcard include/config/rt/mutexes.h) \ + $(wildcard include/config/task/xacct.h) \ + $(wildcard include/config/cpusets.h) \ + $(wildcard include/config/compat.h) \ + $(wildcard include/config/fault/injection.h) \ + include/asm/param.h \ + $(wildcard include/config/hz.h) \ + include/linux/timex.h \ + $(wildcard include/config/time/interpolation.h) \ + include/asm/timex.h \ + include/asm-mips/mach-generic/timex.h \ + include/linux/jiffies.h \ + include/linux/calc64.h \ + include/asm/div64.h \ + include/asm-generic/div64.h \ + include/asm/mmu.h \ + include/asm/cputime.h \ + include/asm-generic/cputime.h \ + include/linux/sem.h \ + include/linux/ipc.h \ + $(wildcard include/config/ipc/ns.h) \ + include/asm/ipcbuf.h \ + include/asm/sembuf.h \ + include/linux/signal.h \ + include/asm/signal.h \ + $(wildcard include/config/trad/signals.h) \ + $(wildcard include/config/binfmt/irix.h) \ + include/asm-generic/signal.h \ + include/asm/sigcontext.h \ + include/asm/siginfo.h \ + include/asm-generic/siginfo.h \ + include/linux/securebits.h \ + include/linux/fs_struct.h \ + include/linux/seccomp.h \ + $(wildcard include/config/seccomp.h) \ + include/linux/futex.h \ + $(wildcard include/config/futex.h) \ + include/linux/rtmutex.h \ + $(wildcard include/config/debug/rt/mutexes.h) \ + include/linux/plist.h \ + $(wildcard include/config/debug/pi/list.h) \ + include/linux/param.h \ + include/linux/resource.h \ + include/asm/resource.h \ + include/asm-generic/resource.h \ + include/linux/timer.h \ + $(wildcard include/config/timer/stats.h) \ + include/linux/ktime.h \ + $(wildcard include/config/ktime/scalar.h) \ + include/linux/hrtimer.h \ + include/linux/task_io_accounting.h \ + $(wildcard include/config/task/io/accounting.h) \ + include/linux/aio.h \ + include/linux/workqueue.h \ + include/linux/aio_abi.h \ + include/linux/uio.h \ + include/linux/netdevice.h \ + $(wildcard include/config/ax25.h) \ + $(wildcard include/config/tr.h) \ + $(wildcard include/config/net/ipip.h) \ + $(wildcard include/config/net/ipgre.h) \ + $(wildcard include/config/ipv6/sit.h) \ + $(wildcard include/config/ipv6/tunnel.h) \ + $(wildcard include/config/netpoll.h) \ + $(wildcard include/config/net/poll/controller.h) \ + $(wildcard include/config/netpoll/trap.h) \ + $(wildcard include/config/net/dma.h) \ + include/linux/if.h \ + include/linux/socket.h \ + include/asm/socket.h \ + include/asm/sockios.h \ + include/linux/sockios.h \ + include/linux/hdlc/ioctl.h \ + include/linux/if_ether.h \ + include/linux/skbuff.h \ + $(wildcard include/config/nf/conntrack.h) \ + $(wildcard include/config/bridge/netfilter.h) \ + $(wildcard include/config/vlan/8021q.h) \ + $(wildcard include/config/net/sched.h) \ + $(wildcard include/config/net/cls/act.h) \ + $(wildcard include/config/network/secmark.h) \ + $(wildcard include/config/imq.h) \ + include/linux/net.h \ + include/linux/random.h \ + include/linux/sysctl.h \ + $(wildcard include/config/bcm/nat.h) \ + include/linux/textsearch.h \ + include/net/checksum.h \ + include/asm/checksum.h \ + include/linux/in6.h \ + include/linux/dmaengine.h \ + $(wildcard include/config/dma/engine.h) \ + include/linux/if_packet.h \ + include/net/ieee80211.h \ + $(wildcard include/config/ieee80211/debug.h) \ + include/linux/wireless.h \ + include/linux/if_arp.h \ + include/net/iw_handler.h \ + include/net/ieee80211_crypt.h \ + /home/vicente/repos/tomato/release/src-rt/include/osl.h \ + /home/vicente/repos/tomato/release/src-rt/include/linux_osl.h \ + $(wildcard include/config/mmc/msm7x00a.h) \ + include/asm/paccess.h \ + /home/vicente/repos/tomato/release/src-rt/include/ctf/hndctf.h \ + /home/vicente/repos/tomato/release/src-rt/include/bcmutils.h \ + /home/vicente/repos/tomato/release/src-rt/include/proto/ethernet.h \ + /home/vicente/repos/tomato/release/src-rt/include/packed_section_start.h \ + /home/vicente/repos/tomato/release/src-rt/include/packed_section_end.h \ + include/linux/delay.h \ + include/asm/delay.h \ + /home/vicente/repos/tomato/release/src-rt/include/pcicfg.h \ + $(wildcard include/config/addr.h) \ + $(wildcard include/config/bus.h) \ + $(wildcard include/config/slot.h) \ + $(wildcard include/config/fun.h) \ + $(wildcard include/config/off.h) \ + +drivers/net/hnd/../../../../../shared/linux_osl.o: $(deps_drivers/net/hnd/../../../../../shared/linux_osl.o) + +$(deps_drivers/net/hnd/../../../../../shared/linux_osl.o): diff --git a/release/src-rt/shared/.nicpci.o.cmd b/release/src-rt/shared/.nicpci.o.cmd new file mode 100644 index 0000000000..6bad1fbbb9 --- /dev/null +++ b/release/src-rt/shared/.nicpci.o.cmd @@ -0,0 +1,540 @@ +cmd_drivers/net/hnd/../../../../../shared/nicpci.o := mipsel-uclibc-gcc -Wp,-MD,drivers/net/hnd/../../../../../shared/.nicpci.o.d -nostdinc -isystem /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include -D__KERNEL__ -Iinclude -include include/linux/autoconf.h -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Werror-implicit-function-declaration -Wno-format-security -fno-delete-null-pointer-checks -I/home/vicente/repos/tomato/release/src-rt/include -DBCMDRIVER -Dlinux -O2 -ffunction-sections -mno-check-zero-division -mabi=32 -G 0 -mno-abicalls -fno-pic -pipe -msoft-float -ggdb -ffreestanding -march=mips32r2 -Wa,-mips32r2 -Wa,--trap -Iinclude/asm-mips/mach-generic -fomit-frame-pointer -fno-stack-protector -funit-at-a-time -Wdeclaration-after-statement -Wno-pointer-sign -fno-strict-overflow -DHNDCTF -DCTFPOOL -DCTFMAP -DBCMDBG_TRAP -DWLC_LOW -DWLC_HIGH -DBCMDMA32 -DBCMNVRAMR -DPHY_HAL -DPHY_HAL -DBCM5354 -DLINUX_HYBRID_POSTPROCESSING_REMOVAL -D"KBUILD_STR(s)=\#s" -D"KBUILD_BASENAME=KBUILD_STR(nicpci)" -D"KBUILD_MODNAME=KBUILD_STR(hnd)" -c -o drivers/net/hnd/../../../../../shared/nicpci.o drivers/net/hnd/../../../../../shared/nicpci.c + +deps_drivers/net/hnd/../../../../../shared/nicpci.o := \ + drivers/net/hnd/../../../../../shared/nicpci.c \ + /home/vicente/repos/tomato/release/src-rt/include/typedefs.h \ + include/linux/version.h \ + include/linux/types.h \ + $(wildcard include/config/uid16.h) \ + $(wildcard include/config/lbd.h) \ + $(wildcard include/config/lsf.h) \ + $(wildcard include/config/resources/64bit.h) \ + include/linux/posix_types.h \ + include/linux/stddef.h \ + include/linux/compiler.h \ + $(wildcard include/config/enable/must/check.h) \ + include/linux/compiler-gcc4.h \ + $(wildcard include/config/forced/inlining.h) \ + include/linux/compiler-gcc.h \ + include/asm/posix_types.h \ + include/asm/sgidefs.h \ + include/asm/types.h \ + $(wildcard include/config/highmem.h) \ + $(wildcard include/config/64bit/phys/addr.h) \ + $(wildcard include/config/64bit.h) \ + /home/vicente/repos/tomato/release/src-rt/include/bcmdefs.h \ + /home/vicente/repos/tomato/release/src-rt/include/osl.h \ + /home/vicente/repos/tomato/release/src-rt/include/linux_osl.h \ + $(wildcard include/config/mmc/msm7x00a.h) \ + /home/vicente/repos/tomato/release/src-rt/include/linuxver.h \ + $(wildcard include/config/net/radio.h) \ + $(wildcard include/config/wireless/ext.h) \ + $(wildcard include/config/pcmcia.h) \ + $(wildcard include/config/rfkill.h) \ + include/linux/module.h \ + $(wildcard include/config/modules.h) \ + $(wildcard include/config/modversions.h) \ + $(wildcard include/config/unused/symbols.h) \ + $(wildcard include/config/generic/bug.h) \ + $(wildcard include/config/module/unload.h) \ + $(wildcard include/config/kallsyms.h) \ + $(wildcard include/config/sysfs.h) \ + include/linux/spinlock.h \ + $(wildcard include/config/smp.h) \ + $(wildcard include/config/debug/spinlock.h) \ + $(wildcard include/config/preempt.h) \ + $(wildcard include/config/debug/lock/alloc.h) \ + include/linux/preempt.h \ + $(wildcard include/config/debug/preempt.h) \ + include/linux/thread_info.h \ + include/linux/bitops.h \ + include/asm/bitops.h \ + $(wildcard include/config/cpu/mipsr2.h) \ + $(wildcard include/config/cpu/mips64.h) \ + $(wildcard include/config/cpu/mips32.h) \ + include/linux/irqflags.h \ + $(wildcard include/config/trace/irqflags.h) \ + $(wildcard include/config/trace/irqflags/support.h) \ + $(wildcard include/config/x86.h) \ + include/asm/irqflags.h \ + $(wildcard include/config/mips/mt/smtc.h) \ + $(wildcard include/config/irq/cpu.h) \ + $(wildcard include/config/mips/mt/smtc/instant/replay.h) \ + include/asm/hazards.h \ + $(wildcard include/config/cpu/mipsr1.h) \ + $(wildcard include/config/cpu/r10000.h) \ + $(wildcard include/config/cpu/rm9000.h) \ + $(wildcard include/config/cpu/sb1.h) \ + include/asm/cpu-features.h \ + $(wildcard include/config/32bit.h) \ + $(wildcard include/config/cpu/mipsr2/irq/vi.h) \ + $(wildcard include/config/cpu/mipsr2/irq/ei.h) \ + include/asm/cpu.h \ + include/asm/cpu-info.h \ + $(wildcard include/config/sgi/ip27.h) \ + $(wildcard include/config/mips/mt.h) \ + include/asm/cache.h \ + $(wildcard include/config/mips/l1/cache/shift.h) \ + include/asm-mips/mach-generic/kmalloc.h \ + $(wildcard include/config/dma/coherent.h) \ + include/asm-mips/mach-generic/cpu-feature-overrides.h \ + include/asm/barrier.h \ + $(wildcard include/config/cpu/has/sync.h) \ + $(wildcard include/config/cpu/has/wb.h) \ + $(wildcard include/config/weak/ordering.h) \ + include/asm/bug.h \ + $(wildcard include/config/bug.h) \ + include/asm/break.h \ + include/asm-generic/bug.h \ + $(wildcard include/config/debug/bugverbose.h) \ + include/asm/byteorder.h \ + $(wildcard include/config/cpu/mips64/r2.h) \ + include/linux/byteorder/little_endian.h \ + include/linux/byteorder/swab.h \ + include/linux/byteorder/generic.h \ + include/asm/war.h \ + $(wildcard include/config/sgi/ip22.h) \ + $(wildcard include/config/sni/rm.h) \ + $(wildcard include/config/cpu/r5432.h) \ + $(wildcard include/config/sb1/pass/1/workarounds.h) \ + $(wildcard include/config/sb1/pass/2/workarounds.h) \ + $(wildcard include/config/mips/malta.h) \ + $(wildcard include/config/mips/atlas.h) \ + $(wildcard include/config/mips/sead.h) \ + $(wildcard include/config/cpu/tx49xx.h) \ + $(wildcard include/config/momenco/jaguar/atx.h) \ + $(wildcard include/config/pmc/yosemite.h) \ + $(wildcard include/config/basler/excite.h) \ + $(wildcard include/config/momenco/ocelot.h) \ + $(wildcard include/config/momenco/ocelot/3.h) \ + $(wildcard include/config/momenco/ocelot/c.h) \ + $(wildcard include/config/sgi/ip32.h) \ + $(wildcard include/config/wr/ppmc.h) \ + include/asm-generic/bitops/non-atomic.h \ + include/asm-generic/bitops/fls64.h \ + include/asm-generic/bitops/ffz.h \ + include/asm-generic/bitops/find.h \ + include/asm-generic/bitops/sched.h \ + include/asm-generic/bitops/hweight.h \ + include/asm-generic/bitops/ext2-non-atomic.h \ + include/asm-generic/bitops/le.h \ + include/asm-generic/bitops/ext2-atomic.h \ + include/asm-generic/bitops/minix.h \ + include/asm/thread_info.h \ + $(wildcard include/config/page/size/4kb.h) \ + $(wildcard include/config/page/size/8kb.h) \ + $(wildcard include/config/page/size/16kb.h) \ + $(wildcard include/config/page/size/64kb.h) \ + $(wildcard include/config/debug/stack/usage.h) \ + include/asm/processor.h \ + $(wildcard include/config/mips/mt/fpaff.h) \ + $(wildcard include/config/cpu/has/prefetch.h) \ + include/linux/cpumask.h \ + $(wildcard include/config/hotplug/cpu.h) \ + include/linux/kernel.h \ + $(wildcard include/config/preempt/voluntary.h) \ + $(wildcard include/config/debug/spinlock/sleep.h) \ + $(wildcard include/config/printk.h) \ + $(wildcard include/config/numa.h) \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ + include/linux/linkage.h \ + include/asm/linkage.h \ + include/linux/log2.h \ + $(wildcard include/config/arch/has/ilog2/u32.h) \ + $(wildcard include/config/arch/has/ilog2/u64.h) \ + include/linux/threads.h \ + $(wildcard include/config/nr/cpus.h) \ + $(wildcard include/config/base/small.h) \ + include/linux/bitmap.h \ + include/linux/string.h \ + include/asm/string.h \ + $(wildcard include/config/cpu/r3000.h) \ + include/asm/cachectl.h \ + include/asm/mipsregs.h \ + $(wildcard include/config/cpu/vr41xx.h) \ + include/asm/prefetch.h \ + include/asm/system.h \ + include/asm/addrspace.h \ + $(wildcard include/config/cpu/r4300.h) \ + $(wildcard include/config/cpu/r4x00.h) \ + $(wildcard include/config/cpu/r5000.h) \ + $(wildcard include/config/cpu/rm7000.h) \ + $(wildcard include/config/cpu/nevada.h) \ + $(wildcard include/config/cpu/r8000.h) \ + $(wildcard include/config/cpu/sb1a.h) \ + include/asm-mips/mach-generic/spaces.h \ + $(wildcard include/config/dma/noncoherent.h) \ + include/asm/dsp.h \ + include/linux/stringify.h \ + include/linux/bottom_half.h \ + include/linux/spinlock_types.h \ + include/linux/lockdep.h \ + $(wildcard include/config/lockdep.h) \ + $(wildcard include/config/generic/hardirqs.h) \ + $(wildcard include/config/prove/locking.h) \ + include/linux/spinlock_types_up.h \ + include/linux/spinlock_up.h \ + include/linux/spinlock_api_up.h \ + include/asm/atomic.h \ + include/asm-generic/atomic.h \ + include/linux/list.h \ + $(wildcard include/config/debug/list.h) \ + include/linux/poison.h \ + include/linux/prefetch.h \ + include/linux/stat.h \ + include/asm/stat.h \ + include/linux/time.h \ + include/linux/seqlock.h \ + include/linux/cache.h \ + $(wildcard include/config/arch/has/cache/line/size.h) \ + include/linux/kmod.h \ + $(wildcard include/config/kmod.h) \ + include/linux/errno.h \ + include/asm/errno.h \ + include/asm-generic/errno-base.h \ + include/linux/elf.h \ + include/linux/auxvec.h \ + include/asm/auxvec.h \ + include/linux/elf-em.h \ + include/asm/elf.h \ + $(wildcard include/config/mips32/n32.h) \ + $(wildcard include/config/mips32/o32.h) \ + $(wildcard include/config/mips32/compat.h) \ + include/linux/kobject.h \ + $(wildcard include/config/hotplug.h) \ + include/linux/sysfs.h \ + include/linux/kref.h \ + include/linux/wait.h \ + include/asm/current.h \ + include/linux/moduleparam.h \ + include/linux/init.h \ + $(wildcard include/config/memory/hotplug.h) \ + $(wildcard include/config/acpi/hotplug/memory.h) \ + include/asm/local.h \ + include/linux/percpu.h \ + include/linux/slab.h \ + $(wildcard include/config/slab/debug.h) \ + $(wildcard include/config/slub.h) \ + $(wildcard include/config/slob.h) \ + $(wildcard include/config/debug/slab.h) \ + include/linux/gfp.h \ + $(wildcard include/config/zone/dma.h) \ + $(wildcard include/config/zone/dma32.h) \ + include/linux/mmzone.h \ + $(wildcard include/config/force/max/zoneorder.h) \ + $(wildcard include/config/arch/populates/node/map.h) \ + $(wildcard include/config/discontigmem.h) \ + $(wildcard include/config/flat/node/mem/map.h) \ + $(wildcard include/config/have/memory/present.h) \ + $(wildcard include/config/need/node/memmap/size.h) \ + $(wildcard include/config/need/multiple/nodes.h) \ + $(wildcard include/config/sparsemem.h) \ + $(wildcard include/config/have/arch/early/pfn/to/nid.h) \ + $(wildcard include/config/flatmem.h) \ + $(wildcard include/config/sparsemem/extreme.h) \ + $(wildcard include/config/nodes/span/other/nodes.h) \ + $(wildcard include/config/holes/in/zone.h) \ + include/linux/numa.h \ + $(wildcard include/config/nodes/shift.h) \ + include/linux/nodemask.h \ + include/asm/page.h \ + $(wildcard include/config/build/elf64.h) \ + include/linux/pfn.h \ + include/asm/io.h \ + include/asm-generic/iomap.h \ + include/asm/pgtable-bits.h \ + $(wildcard include/config/cpu/mips32/r1.h) \ + $(wildcard include/config/cpu/tx39xx.h) \ + $(wildcard include/config/mips/uncached.h) \ + include/asm-mips/mach-generic/ioremap.h \ + include/asm-mips/mach-generic/mangle-port.h \ + $(wildcard include/config/swap/io/space.h) \ + include/asm-generic/memory_model.h \ + $(wildcard include/config/out/of/line/pfn/to/page.h) \ + include/asm-generic/page.h \ + include/linux/memory_hotplug.h \ + $(wildcard include/config/have/arch/nodedata/extension.h) \ + include/linux/notifier.h \ + include/linux/mutex.h \ + $(wildcard include/config/debug/mutexes.h) \ + include/linux/rwsem.h \ + $(wildcard include/config/rwsem/generic/spinlock.h) \ + include/linux/rwsem-spinlock.h \ + include/linux/srcu.h \ + include/linux/topology.h \ + $(wildcard include/config/sched/smt.h) \ + $(wildcard include/config/sched/mc.h) \ + include/linux/smp.h \ + include/asm/topology.h \ + include/asm-mips/mach-generic/topology.h \ + include/asm-generic/topology.h \ + include/asm/sparsemem.h \ + include/linux/slab_def.h \ + include/linux/kmalloc_sizes.h \ + include/asm/percpu.h \ + include/asm-generic/percpu.h \ + include/asm/module.h \ + $(wildcard include/config/cpu/mips32/r2.h) \ + $(wildcard include/config/cpu/mips64/r1.h) \ + $(wildcard include/config/cpu/r6000.h) \ + include/asm/uaccess.h \ + include/asm-generic/uaccess.h \ + include/linux/mm.h \ + $(wildcard include/config/sysctl.h) \ + $(wildcard include/config/mmu.h) \ + $(wildcard include/config/stack/growsup.h) \ + $(wildcard include/config/debug/vm.h) \ + $(wildcard include/config/shmem.h) \ + $(wildcard include/config/split/ptlock/cpus.h) \ + $(wildcard include/config/ia64.h) \ + $(wildcard include/config/proc/fs.h) \ + $(wildcard include/config/debug/pagealloc.h) \ + include/linux/capability.h \ + include/linux/rbtree.h \ + include/linux/prio_tree.h \ + include/linux/fs.h \ + $(wildcard include/config/dnotify.h) \ + $(wildcard include/config/quota.h) \ + $(wildcard include/config/inotify.h) \ + $(wildcard include/config/security.h) \ + $(wildcard include/config/epoll.h) \ + $(wildcard include/config/auditsyscall.h) \ + $(wildcard include/config/block.h) \ + $(wildcard include/config/fs/xip.h) \ + $(wildcard include/config/migration.h) \ + include/linux/limits.h \ + include/linux/ioctl.h \ + include/asm/ioctl.h \ + include/linux/kdev_t.h \ + include/linux/dcache.h \ + $(wildcard include/config/profiling.h) \ + include/linux/rcupdate.h \ + include/linux/namei.h \ + include/linux/radix-tree.h \ + include/linux/pid.h \ + include/asm/semaphore.h \ + include/linux/quota.h \ + include/linux/dqblk_xfs.h \ + include/linux/dqblk_v1.h \ + include/linux/dqblk_v2.h \ + include/linux/nfs_fs_i.h \ + include/linux/nfs.h \ + include/linux/sunrpc/msg_prot.h \ + include/linux/fcntl.h \ + include/asm/fcntl.h \ + include/asm-generic/fcntl.h \ + include/linux/err.h \ + include/linux/debug_locks.h \ + $(wildcard include/config/debug/locking/api/selftests.h) \ + include/linux/backing-dev.h \ + include/linux/percpu_counter.h \ + include/linux/proportions.h \ + include/linux/mm_types.h \ + include/asm/pgtable.h \ + include/asm/pgtable-32.h \ + include/asm/fixmap.h \ + $(wildcard include/config/bcm47xx.h) \ + include/asm/kmap_types.h \ + $(wildcard include/config/debug/highmem.h) \ + include/asm-generic/pgtable-nopmd.h \ + include/asm-generic/pgtable-nopud.h \ + include/asm-generic/pgtable.h \ + include/linux/page-flags.h \ + $(wildcard include/config/s390.h) \ + $(wildcard include/config/swap.h) \ + include/linux/vmstat.h \ + $(wildcard include/config/vm/event/counters.h) \ + include/linux/pci.h \ + $(wildcard include/config/pci/msi.h) \ + $(wildcard include/config/pci.h) \ + $(wildcard include/config/ht/irq.h) \ + $(wildcard include/config/pci/domains.h) \ + include/linux/pci_regs.h \ + include/linux/mod_devicetable.h \ + include/linux/ioport.h \ + include/linux/device.h \ + $(wildcard include/config/debug/devres.h) \ + include/linux/klist.h \ + include/linux/completion.h \ + include/linux/pm.h \ + $(wildcard include/config/pm.h) \ + include/asm/device.h \ + include/asm-generic/device.h \ + include/linux/pci_ids.h \ + include/linux/dmapool.h \ + include/asm/scatterlist.h \ + include/asm/pci.h \ + $(wildcard include/config/dma/need/pci/map/state.h) \ + include/asm-generic/pci-dma-compat.h \ + include/linux/dma-mapping.h \ + include/asm/dma-mapping.h \ + include/linux/interrupt.h \ + $(wildcard include/config/high/res/timers.h) \ + $(wildcard include/config/generic/irq/probe.h) \ + include/linux/irqreturn.h \ + include/linux/hardirq.h \ + $(wildcard include/config/preempt/bkl.h) \ + $(wildcard include/config/virt/cpu/accounting.h) \ + include/linux/smp_lock.h \ + $(wildcard include/config/lock/kernel.h) \ + include/asm/hardirq.h \ + include/linux/irq.h \ + $(wildcard include/config/irq/per/cpu.h) \ + $(wildcard include/config/irq/release/method.h) \ + $(wildcard include/config/generic/pending/irq.h) \ + $(wildcard include/config/irqbalance.h) \ + $(wildcard include/config/auto/irq/affinity.h) \ + $(wildcard include/config/generic/hardirqs/no//do/irq.h) \ + include/asm/irq.h \ + $(wildcard include/config/i8259.h) \ + $(wildcard include/config/mips/mt/smtc/im/backstop.h) \ + include/asm/mipsmtregs.h \ + include/asm-mips/mach-generic/irq.h \ + $(wildcard include/config/irq/cpu/rm7k.h) \ + $(wildcard include/config/irq/cpu/rm9k.h) \ + include/asm/ptrace.h \ + $(wildcard include/config/cpu/has/smartmips.h) \ + include/asm/isadep.h \ + include/asm/irq_regs.h \ + include/asm/hw_irq.h \ + include/linux/profile.h \ + include/linux/irq_cpustat.h \ + include/linux/sched.h \ + $(wildcard include/config/no/hz.h) \ + $(wildcard include/config/detect/softlockup.h) \ + $(wildcard include/config/keys.h) \ + $(wildcard include/config/bsd/process/acct.h) \ + $(wildcard include/config/taskstats.h) \ + $(wildcard include/config/inotify/user.h) \ + $(wildcard include/config/schedstats.h) \ + $(wildcard include/config/task/delay/acct.h) \ + $(wildcard include/config/blk/dev/io/trace.h) \ + $(wildcard include/config/cc/stackprotector.h) \ + $(wildcard include/config/sysvipc.h) \ + $(wildcard include/config/rt/mutexes.h) \ + $(wildcard include/config/task/xacct.h) \ + $(wildcard include/config/cpusets.h) \ + $(wildcard include/config/compat.h) \ + $(wildcard include/config/fault/injection.h) \ + include/asm/param.h \ + $(wildcard include/config/hz.h) \ + include/linux/timex.h \ + $(wildcard include/config/time/interpolation.h) \ + include/asm/timex.h \ + include/asm-mips/mach-generic/timex.h \ + include/linux/jiffies.h \ + include/linux/calc64.h \ + include/asm/div64.h \ + include/asm-generic/div64.h \ + include/asm/mmu.h \ + include/asm/cputime.h \ + include/asm-generic/cputime.h \ + include/linux/sem.h \ + include/linux/ipc.h \ + $(wildcard include/config/ipc/ns.h) \ + include/asm/ipcbuf.h \ + include/asm/sembuf.h \ + include/linux/signal.h \ + include/asm/signal.h \ + $(wildcard include/config/trad/signals.h) \ + $(wildcard include/config/binfmt/irix.h) \ + include/asm-generic/signal.h \ + include/asm/sigcontext.h \ + include/asm/siginfo.h \ + include/asm-generic/siginfo.h \ + include/linux/securebits.h \ + include/linux/fs_struct.h \ + include/linux/seccomp.h \ + $(wildcard include/config/seccomp.h) \ + include/linux/futex.h \ + $(wildcard include/config/futex.h) \ + include/linux/rtmutex.h \ + $(wildcard include/config/debug/rt/mutexes.h) \ + include/linux/plist.h \ + $(wildcard include/config/debug/pi/list.h) \ + include/linux/param.h \ + include/linux/resource.h \ + include/asm/resource.h \ + include/asm-generic/resource.h \ + include/linux/timer.h \ + $(wildcard include/config/timer/stats.h) \ + include/linux/ktime.h \ + $(wildcard include/config/ktime/scalar.h) \ + include/linux/hrtimer.h \ + include/linux/task_io_accounting.h \ + $(wildcard include/config/task/io/accounting.h) \ + include/linux/aio.h \ + include/linux/workqueue.h \ + include/linux/aio_abi.h \ + include/linux/uio.h \ + include/linux/netdevice.h \ + $(wildcard include/config/ax25.h) \ + $(wildcard include/config/tr.h) \ + $(wildcard include/config/net/ipip.h) \ + $(wildcard include/config/net/ipgre.h) \ + $(wildcard include/config/ipv6/sit.h) \ + $(wildcard include/config/ipv6/tunnel.h) \ + $(wildcard include/config/netpoll.h) \ + $(wildcard include/config/net/poll/controller.h) \ + $(wildcard include/config/netpoll/trap.h) \ + $(wildcard include/config/net/dma.h) \ + include/linux/if.h \ + include/linux/socket.h \ + include/asm/socket.h \ + include/asm/sockios.h \ + include/linux/sockios.h \ + include/linux/hdlc/ioctl.h \ + include/linux/if_ether.h \ + include/linux/skbuff.h \ + $(wildcard include/config/nf/conntrack.h) \ + $(wildcard include/config/bridge/netfilter.h) \ + $(wildcard include/config/vlan/8021q.h) \ + $(wildcard include/config/net/sched.h) \ + $(wildcard include/config/net/cls/act.h) \ + $(wildcard include/config/network/secmark.h) \ + $(wildcard include/config/imq.h) \ + include/linux/net.h \ + include/linux/random.h \ + include/linux/sysctl.h \ + $(wildcard include/config/bcm/nat.h) \ + include/linux/textsearch.h \ + include/net/checksum.h \ + include/asm/checksum.h \ + include/linux/in6.h \ + include/linux/dmaengine.h \ + $(wildcard include/config/dma/engine.h) \ + include/linux/if_packet.h \ + include/net/ieee80211.h \ + $(wildcard include/config/ieee80211/debug.h) \ + include/linux/wireless.h \ + include/linux/if_arp.h \ + include/net/iw_handler.h \ + include/net/ieee80211_crypt.h \ + include/asm/paccess.h \ + /home/vicente/repos/tomato/release/src-rt/include/ctf/hndctf.h \ + /home/vicente/repos/tomato/release/src-rt/include/bcmutils.h \ + /home/vicente/repos/tomato/release/src-rt/include/proto/ethernet.h \ + /home/vicente/repos/tomato/release/src-rt/include/packed_section_start.h \ + /home/vicente/repos/tomato/release/src-rt/include/packed_section_end.h \ + /home/vicente/repos/tomato/release/src-rt/include/siutils.h \ + /home/vicente/repos/tomato/release/src-rt/include/hndsoc.h \ + /home/vicente/repos/tomato/release/src-rt/include/sbconfig.h \ + $(wildcard include/config/h.h) \ + /home/vicente/repos/tomato/release/src-rt/include/aidmp.h \ + /home/vicente/repos/tomato/release/src-rt/include/bcmdevs.h \ + /home/vicente/repos/tomato/release/src-rt/include/sbchipc.h \ + /home/vicente/repos/tomato/release/src-rt/include/pci_core.h \ + /home/vicente/repos/tomato/release/src-rt/include/pcie_core.h \ + $(wildcard include/config/offset.h) \ + $(wildcard include/config/indaddr.h) \ + /home/vicente/repos/tomato/release/src-rt/include/nicpci.h \ + /home/vicente/repos/tomato/release/src-rt/include/pcicfg.h \ + $(wildcard include/config/addr.h) \ + $(wildcard include/config/bus.h) \ + $(wildcard include/config/slot.h) \ + $(wildcard include/config/fun.h) \ + $(wildcard include/config/off.h) \ + +drivers/net/hnd/../../../../../shared/nicpci.o: $(deps_drivers/net/hnd/../../../../../shared/nicpci.o) + +$(deps_drivers/net/hnd/../../../../../shared/nicpci.o): diff --git a/release/src-rt/shared/.sbutils.o.cmd b/release/src-rt/shared/.sbutils.o.cmd new file mode 100644 index 0000000000..2c7f081f32 --- /dev/null +++ b/release/src-rt/shared/.sbutils.o.cmd @@ -0,0 +1,538 @@ +cmd_drivers/net/hnd/../../../../../shared/sbutils.o := mipsel-uclibc-gcc -Wp,-MD,drivers/net/hnd/../../../../../shared/.sbutils.o.d -nostdinc -isystem /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include -D__KERNEL__ -Iinclude -include include/linux/autoconf.h -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Werror-implicit-function-declaration -Wno-format-security -fno-delete-null-pointer-checks -I/home/vicente/repos/tomato/release/src-rt/include -DBCMDRIVER -Dlinux -O2 -ffunction-sections -mno-check-zero-division -mabi=32 -G 0 -mno-abicalls -fno-pic -pipe -msoft-float -ggdb -ffreestanding -march=mips32r2 -Wa,-mips32r2 -Wa,--trap -Iinclude/asm-mips/mach-generic -fomit-frame-pointer -fno-stack-protector -funit-at-a-time -Wdeclaration-after-statement -Wno-pointer-sign -fno-strict-overflow -DHNDCTF -DCTFPOOL -DCTFMAP -DBCMDBG_TRAP -DWLC_LOW -DWLC_HIGH -DBCMDMA32 -DBCMNVRAMR -DPHY_HAL -DPHY_HAL -DBCM5354 -DLINUX_HYBRID_POSTPROCESSING_REMOVAL -D"KBUILD_STR(s)=\#s" -D"KBUILD_BASENAME=KBUILD_STR(sbutils)" -D"KBUILD_MODNAME=KBUILD_STR(hnd)" -c -o drivers/net/hnd/../../../../../shared/sbutils.o drivers/net/hnd/../../../../../shared/sbutils.c + +deps_drivers/net/hnd/../../../../../shared/sbutils.o := \ + drivers/net/hnd/../../../../../shared/sbutils.c \ + /home/vicente/repos/tomato/release/src-rt/include/typedefs.h \ + include/linux/version.h \ + include/linux/types.h \ + $(wildcard include/config/uid16.h) \ + $(wildcard include/config/lbd.h) \ + $(wildcard include/config/lsf.h) \ + $(wildcard include/config/resources/64bit.h) \ + include/linux/posix_types.h \ + include/linux/stddef.h \ + include/linux/compiler.h \ + $(wildcard include/config/enable/must/check.h) \ + include/linux/compiler-gcc4.h \ + $(wildcard include/config/forced/inlining.h) \ + include/linux/compiler-gcc.h \ + include/asm/posix_types.h \ + include/asm/sgidefs.h \ + include/asm/types.h \ + $(wildcard include/config/highmem.h) \ + $(wildcard include/config/64bit/phys/addr.h) \ + $(wildcard include/config/64bit.h) \ + /home/vicente/repos/tomato/release/src-rt/include/bcmdefs.h \ + /home/vicente/repos/tomato/release/src-rt/include/osl.h \ + /home/vicente/repos/tomato/release/src-rt/include/linux_osl.h \ + $(wildcard include/config/mmc/msm7x00a.h) \ + /home/vicente/repos/tomato/release/src-rt/include/linuxver.h \ + $(wildcard include/config/net/radio.h) \ + $(wildcard include/config/wireless/ext.h) \ + $(wildcard include/config/pcmcia.h) \ + $(wildcard include/config/rfkill.h) \ + include/linux/module.h \ + $(wildcard include/config/modules.h) \ + $(wildcard include/config/modversions.h) \ + $(wildcard include/config/unused/symbols.h) \ + $(wildcard include/config/generic/bug.h) \ + $(wildcard include/config/module/unload.h) \ + $(wildcard include/config/kallsyms.h) \ + $(wildcard include/config/sysfs.h) \ + include/linux/spinlock.h \ + $(wildcard include/config/smp.h) \ + $(wildcard include/config/debug/spinlock.h) \ + $(wildcard include/config/preempt.h) \ + $(wildcard include/config/debug/lock/alloc.h) \ + include/linux/preempt.h \ + $(wildcard include/config/debug/preempt.h) \ + include/linux/thread_info.h \ + include/linux/bitops.h \ + include/asm/bitops.h \ + $(wildcard include/config/cpu/mipsr2.h) \ + $(wildcard include/config/cpu/mips64.h) \ + $(wildcard include/config/cpu/mips32.h) \ + include/linux/irqflags.h \ + $(wildcard include/config/trace/irqflags.h) \ + $(wildcard include/config/trace/irqflags/support.h) \ + $(wildcard include/config/x86.h) \ + include/asm/irqflags.h \ + $(wildcard include/config/mips/mt/smtc.h) \ + $(wildcard include/config/irq/cpu.h) \ + $(wildcard include/config/mips/mt/smtc/instant/replay.h) \ + include/asm/hazards.h \ + $(wildcard include/config/cpu/mipsr1.h) \ + $(wildcard include/config/cpu/r10000.h) \ + $(wildcard include/config/cpu/rm9000.h) \ + $(wildcard include/config/cpu/sb1.h) \ + include/asm/cpu-features.h \ + $(wildcard include/config/32bit.h) \ + $(wildcard include/config/cpu/mipsr2/irq/vi.h) \ + $(wildcard include/config/cpu/mipsr2/irq/ei.h) \ + include/asm/cpu.h \ + include/asm/cpu-info.h \ + $(wildcard include/config/sgi/ip27.h) \ + $(wildcard include/config/mips/mt.h) \ + include/asm/cache.h \ + $(wildcard include/config/mips/l1/cache/shift.h) \ + include/asm-mips/mach-generic/kmalloc.h \ + $(wildcard include/config/dma/coherent.h) \ + include/asm-mips/mach-generic/cpu-feature-overrides.h \ + include/asm/barrier.h \ + $(wildcard include/config/cpu/has/sync.h) \ + $(wildcard include/config/cpu/has/wb.h) \ + $(wildcard include/config/weak/ordering.h) \ + include/asm/bug.h \ + $(wildcard include/config/bug.h) \ + include/asm/break.h \ + include/asm-generic/bug.h \ + $(wildcard include/config/debug/bugverbose.h) \ + include/asm/byteorder.h \ + $(wildcard include/config/cpu/mips64/r2.h) \ + include/linux/byteorder/little_endian.h \ + include/linux/byteorder/swab.h \ + include/linux/byteorder/generic.h \ + include/asm/war.h \ + $(wildcard include/config/sgi/ip22.h) \ + $(wildcard include/config/sni/rm.h) \ + $(wildcard include/config/cpu/r5432.h) \ + $(wildcard include/config/sb1/pass/1/workarounds.h) \ + $(wildcard include/config/sb1/pass/2/workarounds.h) \ + $(wildcard include/config/mips/malta.h) \ + $(wildcard include/config/mips/atlas.h) \ + $(wildcard include/config/mips/sead.h) \ + $(wildcard include/config/cpu/tx49xx.h) \ + $(wildcard include/config/momenco/jaguar/atx.h) \ + $(wildcard include/config/pmc/yosemite.h) \ + $(wildcard include/config/basler/excite.h) \ + $(wildcard include/config/momenco/ocelot.h) \ + $(wildcard include/config/momenco/ocelot/3.h) \ + $(wildcard include/config/momenco/ocelot/c.h) \ + $(wildcard include/config/sgi/ip32.h) \ + $(wildcard include/config/wr/ppmc.h) \ + include/asm-generic/bitops/non-atomic.h \ + include/asm-generic/bitops/fls64.h \ + include/asm-generic/bitops/ffz.h \ + include/asm-generic/bitops/find.h \ + include/asm-generic/bitops/sched.h \ + include/asm-generic/bitops/hweight.h \ + include/asm-generic/bitops/ext2-non-atomic.h \ + include/asm-generic/bitops/le.h \ + include/asm-generic/bitops/ext2-atomic.h \ + include/asm-generic/bitops/minix.h \ + include/asm/thread_info.h \ + $(wildcard include/config/page/size/4kb.h) \ + $(wildcard include/config/page/size/8kb.h) \ + $(wildcard include/config/page/size/16kb.h) \ + $(wildcard include/config/page/size/64kb.h) \ + $(wildcard include/config/debug/stack/usage.h) \ + include/asm/processor.h \ + $(wildcard include/config/mips/mt/fpaff.h) \ + $(wildcard include/config/cpu/has/prefetch.h) \ + include/linux/cpumask.h \ + $(wildcard include/config/hotplug/cpu.h) \ + include/linux/kernel.h \ + $(wildcard include/config/preempt/voluntary.h) \ + $(wildcard include/config/debug/spinlock/sleep.h) \ + $(wildcard include/config/printk.h) \ + $(wildcard include/config/numa.h) \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ + include/linux/linkage.h \ + include/asm/linkage.h \ + include/linux/log2.h \ + $(wildcard include/config/arch/has/ilog2/u32.h) \ + $(wildcard include/config/arch/has/ilog2/u64.h) \ + include/linux/threads.h \ + $(wildcard include/config/nr/cpus.h) \ + $(wildcard include/config/base/small.h) \ + include/linux/bitmap.h \ + include/linux/string.h \ + include/asm/string.h \ + $(wildcard include/config/cpu/r3000.h) \ + include/asm/cachectl.h \ + include/asm/mipsregs.h \ + $(wildcard include/config/cpu/vr41xx.h) \ + include/asm/prefetch.h \ + include/asm/system.h \ + include/asm/addrspace.h \ + $(wildcard include/config/cpu/r4300.h) \ + $(wildcard include/config/cpu/r4x00.h) \ + $(wildcard include/config/cpu/r5000.h) \ + $(wildcard include/config/cpu/rm7000.h) \ + $(wildcard include/config/cpu/nevada.h) \ + $(wildcard include/config/cpu/r8000.h) \ + $(wildcard include/config/cpu/sb1a.h) \ + include/asm-mips/mach-generic/spaces.h \ + $(wildcard include/config/dma/noncoherent.h) \ + include/asm/dsp.h \ + include/linux/stringify.h \ + include/linux/bottom_half.h \ + include/linux/spinlock_types.h \ + include/linux/lockdep.h \ + $(wildcard include/config/lockdep.h) \ + $(wildcard include/config/generic/hardirqs.h) \ + $(wildcard include/config/prove/locking.h) \ + include/linux/spinlock_types_up.h \ + include/linux/spinlock_up.h \ + include/linux/spinlock_api_up.h \ + include/asm/atomic.h \ + include/asm-generic/atomic.h \ + include/linux/list.h \ + $(wildcard include/config/debug/list.h) \ + include/linux/poison.h \ + include/linux/prefetch.h \ + include/linux/stat.h \ + include/asm/stat.h \ + include/linux/time.h \ + include/linux/seqlock.h \ + include/linux/cache.h \ + $(wildcard include/config/arch/has/cache/line/size.h) \ + include/linux/kmod.h \ + $(wildcard include/config/kmod.h) \ + include/linux/errno.h \ + include/asm/errno.h \ + include/asm-generic/errno-base.h \ + include/linux/elf.h \ + include/linux/auxvec.h \ + include/asm/auxvec.h \ + include/linux/elf-em.h \ + include/asm/elf.h \ + $(wildcard include/config/mips32/n32.h) \ + $(wildcard include/config/mips32/o32.h) \ + $(wildcard include/config/mips32/compat.h) \ + include/linux/kobject.h \ + $(wildcard include/config/hotplug.h) \ + include/linux/sysfs.h \ + include/linux/kref.h \ + include/linux/wait.h \ + include/asm/current.h \ + include/linux/moduleparam.h \ + include/linux/init.h \ + $(wildcard include/config/memory/hotplug.h) \ + $(wildcard include/config/acpi/hotplug/memory.h) \ + include/asm/local.h \ + include/linux/percpu.h \ + include/linux/slab.h \ + $(wildcard include/config/slab/debug.h) \ + $(wildcard include/config/slub.h) \ + $(wildcard include/config/slob.h) \ + $(wildcard include/config/debug/slab.h) \ + include/linux/gfp.h \ + $(wildcard include/config/zone/dma.h) \ + $(wildcard include/config/zone/dma32.h) \ + include/linux/mmzone.h \ + $(wildcard include/config/force/max/zoneorder.h) \ + $(wildcard include/config/arch/populates/node/map.h) \ + $(wildcard include/config/discontigmem.h) \ + $(wildcard include/config/flat/node/mem/map.h) \ + $(wildcard include/config/have/memory/present.h) \ + $(wildcard include/config/need/node/memmap/size.h) \ + $(wildcard include/config/need/multiple/nodes.h) \ + $(wildcard include/config/sparsemem.h) \ + $(wildcard include/config/have/arch/early/pfn/to/nid.h) \ + $(wildcard include/config/flatmem.h) \ + $(wildcard include/config/sparsemem/extreme.h) \ + $(wildcard include/config/nodes/span/other/nodes.h) \ + $(wildcard include/config/holes/in/zone.h) \ + include/linux/numa.h \ + $(wildcard include/config/nodes/shift.h) \ + include/linux/nodemask.h \ + include/asm/page.h \ + $(wildcard include/config/build/elf64.h) \ + include/linux/pfn.h \ + include/asm/io.h \ + include/asm-generic/iomap.h \ + include/asm/pgtable-bits.h \ + $(wildcard include/config/cpu/mips32/r1.h) \ + $(wildcard include/config/cpu/tx39xx.h) \ + $(wildcard include/config/mips/uncached.h) \ + include/asm-mips/mach-generic/ioremap.h \ + include/asm-mips/mach-generic/mangle-port.h \ + $(wildcard include/config/swap/io/space.h) \ + include/asm-generic/memory_model.h \ + $(wildcard include/config/out/of/line/pfn/to/page.h) \ + include/asm-generic/page.h \ + include/linux/memory_hotplug.h \ + $(wildcard include/config/have/arch/nodedata/extension.h) \ + include/linux/notifier.h \ + include/linux/mutex.h \ + $(wildcard include/config/debug/mutexes.h) \ + include/linux/rwsem.h \ + $(wildcard include/config/rwsem/generic/spinlock.h) \ + include/linux/rwsem-spinlock.h \ + include/linux/srcu.h \ + include/linux/topology.h \ + $(wildcard include/config/sched/smt.h) \ + $(wildcard include/config/sched/mc.h) \ + include/linux/smp.h \ + include/asm/topology.h \ + include/asm-mips/mach-generic/topology.h \ + include/asm-generic/topology.h \ + include/asm/sparsemem.h \ + include/linux/slab_def.h \ + include/linux/kmalloc_sizes.h \ + include/asm/percpu.h \ + include/asm-generic/percpu.h \ + include/asm/module.h \ + $(wildcard include/config/cpu/mips32/r2.h) \ + $(wildcard include/config/cpu/mips64/r1.h) \ + $(wildcard include/config/cpu/r6000.h) \ + include/asm/uaccess.h \ + include/asm-generic/uaccess.h \ + include/linux/mm.h \ + $(wildcard include/config/sysctl.h) \ + $(wildcard include/config/mmu.h) \ + $(wildcard include/config/stack/growsup.h) \ + $(wildcard include/config/debug/vm.h) \ + $(wildcard include/config/shmem.h) \ + $(wildcard include/config/split/ptlock/cpus.h) \ + $(wildcard include/config/ia64.h) \ + $(wildcard include/config/proc/fs.h) \ + $(wildcard include/config/debug/pagealloc.h) \ + include/linux/capability.h \ + include/linux/rbtree.h \ + include/linux/prio_tree.h \ + include/linux/fs.h \ + $(wildcard include/config/dnotify.h) \ + $(wildcard include/config/quota.h) \ + $(wildcard include/config/inotify.h) \ + $(wildcard include/config/security.h) \ + $(wildcard include/config/epoll.h) \ + $(wildcard include/config/auditsyscall.h) \ + $(wildcard include/config/block.h) \ + $(wildcard include/config/fs/xip.h) \ + $(wildcard include/config/migration.h) \ + include/linux/limits.h \ + include/linux/ioctl.h \ + include/asm/ioctl.h \ + include/linux/kdev_t.h \ + include/linux/dcache.h \ + $(wildcard include/config/profiling.h) \ + include/linux/rcupdate.h \ + include/linux/namei.h \ + include/linux/radix-tree.h \ + include/linux/pid.h \ + include/asm/semaphore.h \ + include/linux/quota.h \ + include/linux/dqblk_xfs.h \ + include/linux/dqblk_v1.h \ + include/linux/dqblk_v2.h \ + include/linux/nfs_fs_i.h \ + include/linux/nfs.h \ + include/linux/sunrpc/msg_prot.h \ + include/linux/fcntl.h \ + include/asm/fcntl.h \ + include/asm-generic/fcntl.h \ + include/linux/err.h \ + include/linux/debug_locks.h \ + $(wildcard include/config/debug/locking/api/selftests.h) \ + include/linux/backing-dev.h \ + include/linux/percpu_counter.h \ + include/linux/proportions.h \ + include/linux/mm_types.h \ + include/asm/pgtable.h \ + include/asm/pgtable-32.h \ + include/asm/fixmap.h \ + $(wildcard include/config/bcm47xx.h) \ + include/asm/kmap_types.h \ + $(wildcard include/config/debug/highmem.h) \ + include/asm-generic/pgtable-nopmd.h \ + include/asm-generic/pgtable-nopud.h \ + include/asm-generic/pgtable.h \ + include/linux/page-flags.h \ + $(wildcard include/config/s390.h) \ + $(wildcard include/config/swap.h) \ + include/linux/vmstat.h \ + $(wildcard include/config/vm/event/counters.h) \ + include/linux/pci.h \ + $(wildcard include/config/pci/msi.h) \ + $(wildcard include/config/pci.h) \ + $(wildcard include/config/ht/irq.h) \ + $(wildcard include/config/pci/domains.h) \ + include/linux/pci_regs.h \ + include/linux/mod_devicetable.h \ + include/linux/ioport.h \ + include/linux/device.h \ + $(wildcard include/config/debug/devres.h) \ + include/linux/klist.h \ + include/linux/completion.h \ + include/linux/pm.h \ + $(wildcard include/config/pm.h) \ + include/asm/device.h \ + include/asm-generic/device.h \ + include/linux/pci_ids.h \ + include/linux/dmapool.h \ + include/asm/scatterlist.h \ + include/asm/pci.h \ + $(wildcard include/config/dma/need/pci/map/state.h) \ + include/asm-generic/pci-dma-compat.h \ + include/linux/dma-mapping.h \ + include/asm/dma-mapping.h \ + include/linux/interrupt.h \ + $(wildcard include/config/high/res/timers.h) \ + $(wildcard include/config/generic/irq/probe.h) \ + include/linux/irqreturn.h \ + include/linux/hardirq.h \ + $(wildcard include/config/preempt/bkl.h) \ + $(wildcard include/config/virt/cpu/accounting.h) \ + include/linux/smp_lock.h \ + $(wildcard include/config/lock/kernel.h) \ + include/asm/hardirq.h \ + include/linux/irq.h \ + $(wildcard include/config/irq/per/cpu.h) \ + $(wildcard include/config/irq/release/method.h) \ + $(wildcard include/config/generic/pending/irq.h) \ + $(wildcard include/config/irqbalance.h) \ + $(wildcard include/config/auto/irq/affinity.h) \ + $(wildcard include/config/generic/hardirqs/no//do/irq.h) \ + include/asm/irq.h \ + $(wildcard include/config/i8259.h) \ + $(wildcard include/config/mips/mt/smtc/im/backstop.h) \ + include/asm/mipsmtregs.h \ + include/asm-mips/mach-generic/irq.h \ + $(wildcard include/config/irq/cpu/rm7k.h) \ + $(wildcard include/config/irq/cpu/rm9k.h) \ + include/asm/ptrace.h \ + $(wildcard include/config/cpu/has/smartmips.h) \ + include/asm/isadep.h \ + include/asm/irq_regs.h \ + include/asm/hw_irq.h \ + include/linux/profile.h \ + include/linux/irq_cpustat.h \ + include/linux/sched.h \ + $(wildcard include/config/no/hz.h) \ + $(wildcard include/config/detect/softlockup.h) \ + $(wildcard include/config/keys.h) \ + $(wildcard include/config/bsd/process/acct.h) \ + $(wildcard include/config/taskstats.h) \ + $(wildcard include/config/inotify/user.h) \ + $(wildcard include/config/schedstats.h) \ + $(wildcard include/config/task/delay/acct.h) \ + $(wildcard include/config/blk/dev/io/trace.h) \ + $(wildcard include/config/cc/stackprotector.h) \ + $(wildcard include/config/sysvipc.h) \ + $(wildcard include/config/rt/mutexes.h) \ + $(wildcard include/config/task/xacct.h) \ + $(wildcard include/config/cpusets.h) \ + $(wildcard include/config/compat.h) \ + $(wildcard include/config/fault/injection.h) \ + include/asm/param.h \ + $(wildcard include/config/hz.h) \ + include/linux/timex.h \ + $(wildcard include/config/time/interpolation.h) \ + include/asm/timex.h \ + include/asm-mips/mach-generic/timex.h \ + include/linux/jiffies.h \ + include/linux/calc64.h \ + include/asm/div64.h \ + include/asm-generic/div64.h \ + include/asm/mmu.h \ + include/asm/cputime.h \ + include/asm-generic/cputime.h \ + include/linux/sem.h \ + include/linux/ipc.h \ + $(wildcard include/config/ipc/ns.h) \ + include/asm/ipcbuf.h \ + include/asm/sembuf.h \ + include/linux/signal.h \ + include/asm/signal.h \ + $(wildcard include/config/trad/signals.h) \ + $(wildcard include/config/binfmt/irix.h) \ + include/asm-generic/signal.h \ + include/asm/sigcontext.h \ + include/asm/siginfo.h \ + include/asm-generic/siginfo.h \ + include/linux/securebits.h \ + include/linux/fs_struct.h \ + include/linux/seccomp.h \ + $(wildcard include/config/seccomp.h) \ + include/linux/futex.h \ + $(wildcard include/config/futex.h) \ + include/linux/rtmutex.h \ + $(wildcard include/config/debug/rt/mutexes.h) \ + include/linux/plist.h \ + $(wildcard include/config/debug/pi/list.h) \ + include/linux/param.h \ + include/linux/resource.h \ + include/asm/resource.h \ + include/asm-generic/resource.h \ + include/linux/timer.h \ + $(wildcard include/config/timer/stats.h) \ + include/linux/ktime.h \ + $(wildcard include/config/ktime/scalar.h) \ + include/linux/hrtimer.h \ + include/linux/task_io_accounting.h \ + $(wildcard include/config/task/io/accounting.h) \ + include/linux/aio.h \ + include/linux/workqueue.h \ + include/linux/aio_abi.h \ + include/linux/uio.h \ + include/linux/netdevice.h \ + $(wildcard include/config/ax25.h) \ + $(wildcard include/config/tr.h) \ + $(wildcard include/config/net/ipip.h) \ + $(wildcard include/config/net/ipgre.h) \ + $(wildcard include/config/ipv6/sit.h) \ + $(wildcard include/config/ipv6/tunnel.h) \ + $(wildcard include/config/netpoll.h) \ + $(wildcard include/config/net/poll/controller.h) \ + $(wildcard include/config/netpoll/trap.h) \ + $(wildcard include/config/net/dma.h) \ + include/linux/if.h \ + include/linux/socket.h \ + include/asm/socket.h \ + include/asm/sockios.h \ + include/linux/sockios.h \ + include/linux/hdlc/ioctl.h \ + include/linux/if_ether.h \ + include/linux/skbuff.h \ + $(wildcard include/config/nf/conntrack.h) \ + $(wildcard include/config/bridge/netfilter.h) \ + $(wildcard include/config/vlan/8021q.h) \ + $(wildcard include/config/net/sched.h) \ + $(wildcard include/config/net/cls/act.h) \ + $(wildcard include/config/network/secmark.h) \ + $(wildcard include/config/imq.h) \ + include/linux/net.h \ + include/linux/random.h \ + include/linux/sysctl.h \ + $(wildcard include/config/bcm/nat.h) \ + include/linux/textsearch.h \ + include/net/checksum.h \ + include/asm/checksum.h \ + include/linux/in6.h \ + include/linux/dmaengine.h \ + $(wildcard include/config/dma/engine.h) \ + include/linux/if_packet.h \ + include/net/ieee80211.h \ + $(wildcard include/config/ieee80211/debug.h) \ + include/linux/wireless.h \ + include/linux/if_arp.h \ + include/net/iw_handler.h \ + include/net/ieee80211_crypt.h \ + include/asm/paccess.h \ + /home/vicente/repos/tomato/release/src-rt/include/ctf/hndctf.h \ + /home/vicente/repos/tomato/release/src-rt/include/bcmutils.h \ + /home/vicente/repos/tomato/release/src-rt/include/proto/ethernet.h \ + /home/vicente/repos/tomato/release/src-rt/include/packed_section_start.h \ + /home/vicente/repos/tomato/release/src-rt/include/packed_section_end.h \ + /home/vicente/repos/tomato/release/src-rt/include/siutils.h \ + /home/vicente/repos/tomato/release/src-rt/include/bcmdevs.h \ + /home/vicente/repos/tomato/release/src-rt/include/hndsoc.h \ + /home/vicente/repos/tomato/release/src-rt/include/sbconfig.h \ + $(wildcard include/config/h.h) \ + /home/vicente/repos/tomato/release/src-rt/include/aidmp.h \ + /home/vicente/repos/tomato/release/src-rt/include/sbchipc.h \ + /home/vicente/repos/tomato/release/src-rt/include/pci_core.h \ + /home/vicente/repos/tomato/release/src-rt/include/pcicfg.h \ + $(wildcard include/config/addr.h) \ + $(wildcard include/config/bus.h) \ + $(wildcard include/config/slot.h) \ + $(wildcard include/config/fun.h) \ + $(wildcard include/config/off.h) \ + /home/vicente/repos/tomato/release/src-rt/include/sbpcmcia.h \ + drivers/net/hnd/../../../../../shared/siutils_priv.h \ + +drivers/net/hnd/../../../../../shared/sbutils.o: $(deps_drivers/net/hnd/../../../../../shared/sbutils.o) + +$(deps_drivers/net/hnd/../../../../../shared/sbutils.o): diff --git a/release/src-rt/shared/.sflash.o.cmd b/release/src-rt/shared/.sflash.o.cmd new file mode 100644 index 0000000000..144d3a7d96 --- /dev/null +++ b/release/src-rt/shared/.sflash.o.cmd @@ -0,0 +1,534 @@ +cmd_arch/mips/brcm-boards/bcm947xx/../../../../../../shared/sflash.o := mipsel-uclibc-gcc -Wp,-MD,arch/mips/brcm-boards/bcm947xx/../../../../../../shared/.sflash.o.d -nostdinc -isystem /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include -D__KERNEL__ -Iinclude -include include/linux/autoconf.h -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Werror-implicit-function-declaration -Wno-format-security -fno-delete-null-pointer-checks -I/home/vicente/repos/tomato/release/src-rt/include -DBCMDRIVER -Dlinux -O2 -ffunction-sections -mno-check-zero-division -mabi=32 -G 0 -mno-abicalls -fno-pic -pipe -msoft-float -ggdb -ffreestanding -march=mips32r2 -Wa,-mips32r2 -Wa,--trap -Iinclude/asm-mips/mach-generic -fomit-frame-pointer -fno-stack-protector -funit-at-a-time -Wdeclaration-after-statement -Wno-pointer-sign -fno-strict-overflow -DHNDCTF -DCTFPOOL -DCTFMAP -DLINUX_HYBRID_POSTPROCESSING_REMOVAL -D"KBUILD_STR(s)=\#s" -D"KBUILD_BASENAME=KBUILD_STR(sflash)" -D"KBUILD_MODNAME=KBUILD_STR(bcm947xx)" -c -o arch/mips/brcm-boards/bcm947xx/../../../../../../shared/sflash.o arch/mips/brcm-boards/bcm947xx/../../../../../../shared/sflash.c + +deps_arch/mips/brcm-boards/bcm947xx/../../../../../../shared/sflash.o := \ + arch/mips/brcm-boards/bcm947xx/../../../../../../shared/sflash.c \ + /home/vicente/repos/tomato/release/src-rt/include/typedefs.h \ + include/linux/version.h \ + include/linux/types.h \ + $(wildcard include/config/uid16.h) \ + $(wildcard include/config/lbd.h) \ + $(wildcard include/config/lsf.h) \ + $(wildcard include/config/resources/64bit.h) \ + include/linux/posix_types.h \ + include/linux/stddef.h \ + include/linux/compiler.h \ + $(wildcard include/config/enable/must/check.h) \ + include/linux/compiler-gcc4.h \ + $(wildcard include/config/forced/inlining.h) \ + include/linux/compiler-gcc.h \ + include/asm/posix_types.h \ + include/asm/sgidefs.h \ + include/asm/types.h \ + $(wildcard include/config/highmem.h) \ + $(wildcard include/config/64bit/phys/addr.h) \ + $(wildcard include/config/64bit.h) \ + /home/vicente/repos/tomato/release/src-rt/include/bcmdefs.h \ + /home/vicente/repos/tomato/release/src-rt/include/osl.h \ + /home/vicente/repos/tomato/release/src-rt/include/linux_osl.h \ + $(wildcard include/config/mmc/msm7x00a.h) \ + /home/vicente/repos/tomato/release/src-rt/include/linuxver.h \ + $(wildcard include/config/net/radio.h) \ + $(wildcard include/config/wireless/ext.h) \ + $(wildcard include/config/pcmcia.h) \ + $(wildcard include/config/rfkill.h) \ + include/linux/module.h \ + $(wildcard include/config/modules.h) \ + $(wildcard include/config/modversions.h) \ + $(wildcard include/config/unused/symbols.h) \ + $(wildcard include/config/generic/bug.h) \ + $(wildcard include/config/module/unload.h) \ + $(wildcard include/config/kallsyms.h) \ + $(wildcard include/config/sysfs.h) \ + include/linux/spinlock.h \ + $(wildcard include/config/smp.h) \ + $(wildcard include/config/debug/spinlock.h) \ + $(wildcard include/config/preempt.h) \ + $(wildcard include/config/debug/lock/alloc.h) \ + include/linux/preempt.h \ + $(wildcard include/config/debug/preempt.h) \ + include/linux/thread_info.h \ + include/linux/bitops.h \ + include/asm/bitops.h \ + $(wildcard include/config/cpu/mipsr2.h) \ + $(wildcard include/config/cpu/mips64.h) \ + $(wildcard include/config/cpu/mips32.h) \ + include/linux/irqflags.h \ + $(wildcard include/config/trace/irqflags.h) \ + $(wildcard include/config/trace/irqflags/support.h) \ + $(wildcard include/config/x86.h) \ + include/asm/irqflags.h \ + $(wildcard include/config/mips/mt/smtc.h) \ + $(wildcard include/config/irq/cpu.h) \ + $(wildcard include/config/mips/mt/smtc/instant/replay.h) \ + include/asm/hazards.h \ + $(wildcard include/config/cpu/mipsr1.h) \ + $(wildcard include/config/cpu/r10000.h) \ + $(wildcard include/config/cpu/rm9000.h) \ + $(wildcard include/config/cpu/sb1.h) \ + include/asm/cpu-features.h \ + $(wildcard include/config/32bit.h) \ + $(wildcard include/config/cpu/mipsr2/irq/vi.h) \ + $(wildcard include/config/cpu/mipsr2/irq/ei.h) \ + include/asm/cpu.h \ + include/asm/cpu-info.h \ + $(wildcard include/config/sgi/ip27.h) \ + $(wildcard include/config/mips/mt.h) \ + include/asm/cache.h \ + $(wildcard include/config/mips/l1/cache/shift.h) \ + include/asm-mips/mach-generic/kmalloc.h \ + $(wildcard include/config/dma/coherent.h) \ + include/asm-mips/mach-generic/cpu-feature-overrides.h \ + include/asm/barrier.h \ + $(wildcard include/config/cpu/has/sync.h) \ + $(wildcard include/config/cpu/has/wb.h) \ + $(wildcard include/config/weak/ordering.h) \ + include/asm/bug.h \ + $(wildcard include/config/bug.h) \ + include/asm/break.h \ + include/asm-generic/bug.h \ + $(wildcard include/config/debug/bugverbose.h) \ + include/asm/byteorder.h \ + $(wildcard include/config/cpu/mips64/r2.h) \ + include/linux/byteorder/little_endian.h \ + include/linux/byteorder/swab.h \ + include/linux/byteorder/generic.h \ + include/asm/war.h \ + $(wildcard include/config/sgi/ip22.h) \ + $(wildcard include/config/sni/rm.h) \ + $(wildcard include/config/cpu/r5432.h) \ + $(wildcard include/config/sb1/pass/1/workarounds.h) \ + $(wildcard include/config/sb1/pass/2/workarounds.h) \ + $(wildcard include/config/mips/malta.h) \ + $(wildcard include/config/mips/atlas.h) \ + $(wildcard include/config/mips/sead.h) \ + $(wildcard include/config/cpu/tx49xx.h) \ + $(wildcard include/config/momenco/jaguar/atx.h) \ + $(wildcard include/config/pmc/yosemite.h) \ + $(wildcard include/config/basler/excite.h) \ + $(wildcard include/config/momenco/ocelot.h) \ + $(wildcard include/config/momenco/ocelot/3.h) \ + $(wildcard include/config/momenco/ocelot/c.h) \ + $(wildcard include/config/sgi/ip32.h) \ + $(wildcard include/config/wr/ppmc.h) \ + include/asm-generic/bitops/non-atomic.h \ + include/asm-generic/bitops/fls64.h \ + include/asm-generic/bitops/ffz.h \ + include/asm-generic/bitops/find.h \ + include/asm-generic/bitops/sched.h \ + include/asm-generic/bitops/hweight.h \ + include/asm-generic/bitops/ext2-non-atomic.h \ + include/asm-generic/bitops/le.h \ + include/asm-generic/bitops/ext2-atomic.h \ + include/asm-generic/bitops/minix.h \ + include/asm/thread_info.h \ + $(wildcard include/config/page/size/4kb.h) \ + $(wildcard include/config/page/size/8kb.h) \ + $(wildcard include/config/page/size/16kb.h) \ + $(wildcard include/config/page/size/64kb.h) \ + $(wildcard include/config/debug/stack/usage.h) \ + include/asm/processor.h \ + $(wildcard include/config/mips/mt/fpaff.h) \ + $(wildcard include/config/cpu/has/prefetch.h) \ + include/linux/cpumask.h \ + $(wildcard include/config/hotplug/cpu.h) \ + include/linux/kernel.h \ + $(wildcard include/config/preempt/voluntary.h) \ + $(wildcard include/config/debug/spinlock/sleep.h) \ + $(wildcard include/config/printk.h) \ + $(wildcard include/config/numa.h) \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ + include/linux/linkage.h \ + include/asm/linkage.h \ + include/linux/log2.h \ + $(wildcard include/config/arch/has/ilog2/u32.h) \ + $(wildcard include/config/arch/has/ilog2/u64.h) \ + include/linux/threads.h \ + $(wildcard include/config/nr/cpus.h) \ + $(wildcard include/config/base/small.h) \ + include/linux/bitmap.h \ + include/linux/string.h \ + include/asm/string.h \ + $(wildcard include/config/cpu/r3000.h) \ + include/asm/cachectl.h \ + include/asm/mipsregs.h \ + $(wildcard include/config/cpu/vr41xx.h) \ + include/asm/prefetch.h \ + include/asm/system.h \ + include/asm/addrspace.h \ + $(wildcard include/config/cpu/r4300.h) \ + $(wildcard include/config/cpu/r4x00.h) \ + $(wildcard include/config/cpu/r5000.h) \ + $(wildcard include/config/cpu/rm7000.h) \ + $(wildcard include/config/cpu/nevada.h) \ + $(wildcard include/config/cpu/r8000.h) \ + $(wildcard include/config/cpu/sb1a.h) \ + include/asm-mips/mach-generic/spaces.h \ + $(wildcard include/config/dma/noncoherent.h) \ + include/asm/dsp.h \ + include/linux/stringify.h \ + include/linux/bottom_half.h \ + include/linux/spinlock_types.h \ + include/linux/lockdep.h \ + $(wildcard include/config/lockdep.h) \ + $(wildcard include/config/generic/hardirqs.h) \ + $(wildcard include/config/prove/locking.h) \ + include/linux/spinlock_types_up.h \ + include/linux/spinlock_up.h \ + include/linux/spinlock_api_up.h \ + include/asm/atomic.h \ + include/asm-generic/atomic.h \ + include/linux/list.h \ + $(wildcard include/config/debug/list.h) \ + include/linux/poison.h \ + include/linux/prefetch.h \ + include/linux/stat.h \ + include/asm/stat.h \ + include/linux/time.h \ + include/linux/seqlock.h \ + include/linux/cache.h \ + $(wildcard include/config/arch/has/cache/line/size.h) \ + include/linux/kmod.h \ + $(wildcard include/config/kmod.h) \ + include/linux/errno.h \ + include/asm/errno.h \ + include/asm-generic/errno-base.h \ + include/linux/elf.h \ + include/linux/auxvec.h \ + include/asm/auxvec.h \ + include/linux/elf-em.h \ + include/asm/elf.h \ + $(wildcard include/config/mips32/n32.h) \ + $(wildcard include/config/mips32/o32.h) \ + $(wildcard include/config/mips32/compat.h) \ + include/linux/kobject.h \ + $(wildcard include/config/hotplug.h) \ + include/linux/sysfs.h \ + include/linux/kref.h \ + include/linux/wait.h \ + include/asm/current.h \ + include/linux/moduleparam.h \ + include/linux/init.h \ + $(wildcard include/config/memory/hotplug.h) \ + $(wildcard include/config/acpi/hotplug/memory.h) \ + include/asm/local.h \ + include/linux/percpu.h \ + include/linux/slab.h \ + $(wildcard include/config/slab/debug.h) \ + $(wildcard include/config/slub.h) \ + $(wildcard include/config/slob.h) \ + $(wildcard include/config/debug/slab.h) \ + include/linux/gfp.h \ + $(wildcard include/config/zone/dma.h) \ + $(wildcard include/config/zone/dma32.h) \ + include/linux/mmzone.h \ + $(wildcard include/config/force/max/zoneorder.h) \ + $(wildcard include/config/arch/populates/node/map.h) \ + $(wildcard include/config/discontigmem.h) \ + $(wildcard include/config/flat/node/mem/map.h) \ + $(wildcard include/config/have/memory/present.h) \ + $(wildcard include/config/need/node/memmap/size.h) \ + $(wildcard include/config/need/multiple/nodes.h) \ + $(wildcard include/config/sparsemem.h) \ + $(wildcard include/config/have/arch/early/pfn/to/nid.h) \ + $(wildcard include/config/flatmem.h) \ + $(wildcard include/config/sparsemem/extreme.h) \ + $(wildcard include/config/nodes/span/other/nodes.h) \ + $(wildcard include/config/holes/in/zone.h) \ + include/linux/numa.h \ + $(wildcard include/config/nodes/shift.h) \ + include/linux/nodemask.h \ + include/asm/page.h \ + $(wildcard include/config/build/elf64.h) \ + include/linux/pfn.h \ + include/asm/io.h \ + include/asm-generic/iomap.h \ + include/asm/pgtable-bits.h \ + $(wildcard include/config/cpu/mips32/r1.h) \ + $(wildcard include/config/cpu/tx39xx.h) \ + $(wildcard include/config/mips/uncached.h) \ + include/asm-mips/mach-generic/ioremap.h \ + include/asm-mips/mach-generic/mangle-port.h \ + $(wildcard include/config/swap/io/space.h) \ + include/asm-generic/memory_model.h \ + $(wildcard include/config/out/of/line/pfn/to/page.h) \ + include/asm-generic/page.h \ + include/linux/memory_hotplug.h \ + $(wildcard include/config/have/arch/nodedata/extension.h) \ + include/linux/notifier.h \ + include/linux/mutex.h \ + $(wildcard include/config/debug/mutexes.h) \ + include/linux/rwsem.h \ + $(wildcard include/config/rwsem/generic/spinlock.h) \ + include/linux/rwsem-spinlock.h \ + include/linux/srcu.h \ + include/linux/topology.h \ + $(wildcard include/config/sched/smt.h) \ + $(wildcard include/config/sched/mc.h) \ + include/linux/smp.h \ + include/asm/topology.h \ + include/asm-mips/mach-generic/topology.h \ + include/asm-generic/topology.h \ + include/asm/sparsemem.h \ + include/linux/slab_def.h \ + include/linux/kmalloc_sizes.h \ + include/asm/percpu.h \ + include/asm-generic/percpu.h \ + include/asm/module.h \ + $(wildcard include/config/cpu/mips32/r2.h) \ + $(wildcard include/config/cpu/mips64/r1.h) \ + $(wildcard include/config/cpu/r6000.h) \ + include/asm/uaccess.h \ + include/asm-generic/uaccess.h \ + include/linux/mm.h \ + $(wildcard include/config/sysctl.h) \ + $(wildcard include/config/mmu.h) \ + $(wildcard include/config/stack/growsup.h) \ + $(wildcard include/config/debug/vm.h) \ + $(wildcard include/config/shmem.h) \ + $(wildcard include/config/split/ptlock/cpus.h) \ + $(wildcard include/config/ia64.h) \ + $(wildcard include/config/proc/fs.h) \ + $(wildcard include/config/debug/pagealloc.h) \ + include/linux/capability.h \ + include/linux/rbtree.h \ + include/linux/prio_tree.h \ + include/linux/fs.h \ + $(wildcard include/config/dnotify.h) \ + $(wildcard include/config/quota.h) \ + $(wildcard include/config/inotify.h) \ + $(wildcard include/config/security.h) \ + $(wildcard include/config/epoll.h) \ + $(wildcard include/config/auditsyscall.h) \ + $(wildcard include/config/block.h) \ + $(wildcard include/config/fs/xip.h) \ + $(wildcard include/config/migration.h) \ + include/linux/limits.h \ + include/linux/ioctl.h \ + include/asm/ioctl.h \ + include/linux/kdev_t.h \ + include/linux/dcache.h \ + $(wildcard include/config/profiling.h) \ + include/linux/rcupdate.h \ + include/linux/namei.h \ + include/linux/radix-tree.h \ + include/linux/pid.h \ + include/asm/semaphore.h \ + include/linux/quota.h \ + include/linux/dqblk_xfs.h \ + include/linux/dqblk_v1.h \ + include/linux/dqblk_v2.h \ + include/linux/nfs_fs_i.h \ + include/linux/nfs.h \ + include/linux/sunrpc/msg_prot.h \ + include/linux/fcntl.h \ + include/asm/fcntl.h \ + include/asm-generic/fcntl.h \ + include/linux/err.h \ + include/linux/debug_locks.h \ + $(wildcard include/config/debug/locking/api/selftests.h) \ + include/linux/backing-dev.h \ + include/linux/percpu_counter.h \ + include/linux/proportions.h \ + include/linux/mm_types.h \ + include/asm/pgtable.h \ + include/asm/pgtable-32.h \ + include/asm/fixmap.h \ + $(wildcard include/config/bcm47xx.h) \ + include/asm/kmap_types.h \ + $(wildcard include/config/debug/highmem.h) \ + include/asm-generic/pgtable-nopmd.h \ + include/asm-generic/pgtable-nopud.h \ + include/asm-generic/pgtable.h \ + include/linux/page-flags.h \ + $(wildcard include/config/s390.h) \ + $(wildcard include/config/swap.h) \ + include/linux/vmstat.h \ + $(wildcard include/config/vm/event/counters.h) \ + include/linux/pci.h \ + $(wildcard include/config/pci/msi.h) \ + $(wildcard include/config/pci.h) \ + $(wildcard include/config/ht/irq.h) \ + $(wildcard include/config/pci/domains.h) \ + include/linux/pci_regs.h \ + include/linux/mod_devicetable.h \ + include/linux/ioport.h \ + include/linux/device.h \ + $(wildcard include/config/debug/devres.h) \ + include/linux/klist.h \ + include/linux/completion.h \ + include/linux/pm.h \ + $(wildcard include/config/pm.h) \ + include/asm/device.h \ + include/asm-generic/device.h \ + include/linux/pci_ids.h \ + include/linux/dmapool.h \ + include/asm/scatterlist.h \ + include/asm/pci.h \ + $(wildcard include/config/dma/need/pci/map/state.h) \ + include/asm-generic/pci-dma-compat.h \ + include/linux/dma-mapping.h \ + include/asm/dma-mapping.h \ + include/linux/interrupt.h \ + $(wildcard include/config/high/res/timers.h) \ + $(wildcard include/config/generic/irq/probe.h) \ + include/linux/irqreturn.h \ + include/linux/hardirq.h \ + $(wildcard include/config/preempt/bkl.h) \ + $(wildcard include/config/virt/cpu/accounting.h) \ + include/linux/smp_lock.h \ + $(wildcard include/config/lock/kernel.h) \ + include/asm/hardirq.h \ + include/linux/irq.h \ + $(wildcard include/config/irq/per/cpu.h) \ + $(wildcard include/config/irq/release/method.h) \ + $(wildcard include/config/generic/pending/irq.h) \ + $(wildcard include/config/irqbalance.h) \ + $(wildcard include/config/auto/irq/affinity.h) \ + $(wildcard include/config/generic/hardirqs/no//do/irq.h) \ + include/asm/irq.h \ + $(wildcard include/config/i8259.h) \ + $(wildcard include/config/mips/mt/smtc/im/backstop.h) \ + include/asm/mipsmtregs.h \ + include/asm-mips/mach-generic/irq.h \ + $(wildcard include/config/irq/cpu/rm7k.h) \ + $(wildcard include/config/irq/cpu/rm9k.h) \ + include/asm/ptrace.h \ + $(wildcard include/config/cpu/has/smartmips.h) \ + include/asm/isadep.h \ + include/asm/irq_regs.h \ + include/asm/hw_irq.h \ + include/linux/profile.h \ + include/linux/irq_cpustat.h \ + include/linux/sched.h \ + $(wildcard include/config/no/hz.h) \ + $(wildcard include/config/detect/softlockup.h) \ + $(wildcard include/config/keys.h) \ + $(wildcard include/config/bsd/process/acct.h) \ + $(wildcard include/config/taskstats.h) \ + $(wildcard include/config/inotify/user.h) \ + $(wildcard include/config/schedstats.h) \ + $(wildcard include/config/task/delay/acct.h) \ + $(wildcard include/config/blk/dev/io/trace.h) \ + $(wildcard include/config/cc/stackprotector.h) \ + $(wildcard include/config/sysvipc.h) \ + $(wildcard include/config/rt/mutexes.h) \ + $(wildcard include/config/task/xacct.h) \ + $(wildcard include/config/cpusets.h) \ + $(wildcard include/config/compat.h) \ + $(wildcard include/config/fault/injection.h) \ + include/asm/param.h \ + $(wildcard include/config/hz.h) \ + include/linux/timex.h \ + $(wildcard include/config/time/interpolation.h) \ + include/asm/timex.h \ + include/asm-mips/mach-generic/timex.h \ + include/linux/jiffies.h \ + include/linux/calc64.h \ + include/asm/div64.h \ + include/asm-generic/div64.h \ + include/asm/mmu.h \ + include/asm/cputime.h \ + include/asm-generic/cputime.h \ + include/linux/sem.h \ + include/linux/ipc.h \ + $(wildcard include/config/ipc/ns.h) \ + include/asm/ipcbuf.h \ + include/asm/sembuf.h \ + include/linux/signal.h \ + include/asm/signal.h \ + $(wildcard include/config/trad/signals.h) \ + $(wildcard include/config/binfmt/irix.h) \ + include/asm-generic/signal.h \ + include/asm/sigcontext.h \ + include/asm/siginfo.h \ + include/asm-generic/siginfo.h \ + include/linux/securebits.h \ + include/linux/fs_struct.h \ + include/linux/seccomp.h \ + $(wildcard include/config/seccomp.h) \ + include/linux/futex.h \ + $(wildcard include/config/futex.h) \ + include/linux/rtmutex.h \ + $(wildcard include/config/debug/rt/mutexes.h) \ + include/linux/plist.h \ + $(wildcard include/config/debug/pi/list.h) \ + include/linux/param.h \ + include/linux/resource.h \ + include/asm/resource.h \ + include/asm-generic/resource.h \ + include/linux/timer.h \ + $(wildcard include/config/timer/stats.h) \ + include/linux/ktime.h \ + $(wildcard include/config/ktime/scalar.h) \ + include/linux/hrtimer.h \ + include/linux/task_io_accounting.h \ + $(wildcard include/config/task/io/accounting.h) \ + include/linux/aio.h \ + include/linux/workqueue.h \ + include/linux/aio_abi.h \ + include/linux/uio.h \ + include/linux/netdevice.h \ + $(wildcard include/config/ax25.h) \ + $(wildcard include/config/tr.h) \ + $(wildcard include/config/net/ipip.h) \ + $(wildcard include/config/net/ipgre.h) \ + $(wildcard include/config/ipv6/sit.h) \ + $(wildcard include/config/ipv6/tunnel.h) \ + $(wildcard include/config/netpoll.h) \ + $(wildcard include/config/net/poll/controller.h) \ + $(wildcard include/config/netpoll/trap.h) \ + $(wildcard include/config/net/dma.h) \ + include/linux/if.h \ + include/linux/socket.h \ + include/asm/socket.h \ + include/asm/sockios.h \ + include/linux/sockios.h \ + include/linux/hdlc/ioctl.h \ + include/linux/if_ether.h \ + include/linux/skbuff.h \ + $(wildcard include/config/nf/conntrack.h) \ + $(wildcard include/config/bridge/netfilter.h) \ + $(wildcard include/config/vlan/8021q.h) \ + $(wildcard include/config/net/sched.h) \ + $(wildcard include/config/net/cls/act.h) \ + $(wildcard include/config/network/secmark.h) \ + $(wildcard include/config/imq.h) \ + include/linux/net.h \ + include/linux/random.h \ + include/linux/sysctl.h \ + $(wildcard include/config/bcm/nat.h) \ + include/linux/textsearch.h \ + include/net/checksum.h \ + include/asm/checksum.h \ + include/linux/in6.h \ + include/linux/dmaengine.h \ + $(wildcard include/config/dma/engine.h) \ + include/linux/if_packet.h \ + include/net/ieee80211.h \ + $(wildcard include/config/ieee80211/debug.h) \ + include/linux/wireless.h \ + include/linux/if_arp.h \ + include/net/iw_handler.h \ + include/net/ieee80211_crypt.h \ + include/asm/paccess.h \ + /home/vicente/repos/tomato/release/src-rt/include/ctf/hndctf.h \ + /home/vicente/repos/tomato/release/src-rt/include/bcmutils.h \ + /home/vicente/repos/tomato/release/src-rt/include/proto/ethernet.h \ + /home/vicente/repos/tomato/release/src-rt/include/packed_section_start.h \ + /home/vicente/repos/tomato/release/src-rt/include/packed_section_end.h \ + /home/vicente/repos/tomato/release/src-rt/include/siutils.h \ + /home/vicente/repos/tomato/release/src-rt/include/hndsoc.h \ + /home/vicente/repos/tomato/release/src-rt/include/sbconfig.h \ + $(wildcard include/config/h.h) \ + /home/vicente/repos/tomato/release/src-rt/include/aidmp.h \ + /home/vicente/repos/tomato/release/src-rt/include/sbhndcpu.h \ + /home/vicente/repos/tomato/release/src-rt/include/mips33_core.h \ + /home/vicente/repos/tomato/release/src-rt/include/mipsinc.h \ + /home/vicente/repos/tomato/release/src-rt/include/mips74k_core.h \ + /home/vicente/repos/tomato/release/src-rt/include/sbchipc.h \ + /home/vicente/repos/tomato/release/src-rt/include/bcmdevs.h \ + /home/vicente/repos/tomato/release/src-rt/include/sflash.h \ + +arch/mips/brcm-boards/bcm947xx/../../../../../../shared/sflash.o: $(deps_arch/mips/brcm-boards/bcm947xx/../../../../../../shared/sflash.o) + +$(deps_arch/mips/brcm-boards/bcm947xx/../../../../../../shared/sflash.o): diff --git a/release/src-rt/shared/.siutils.o.cmd b/release/src-rt/shared/.siutils.o.cmd new file mode 100644 index 0000000000..360ec7a219 --- /dev/null +++ b/release/src-rt/shared/.siutils.o.cmd @@ -0,0 +1,554 @@ +cmd_drivers/net/hnd/../../../../../shared/siutils.o := mipsel-uclibc-gcc -Wp,-MD,drivers/net/hnd/../../../../../shared/.siutils.o.d -nostdinc -isystem /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include -D__KERNEL__ -Iinclude -include include/linux/autoconf.h -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Werror-implicit-function-declaration -Wno-format-security -fno-delete-null-pointer-checks -I/home/vicente/repos/tomato/release/src-rt/include -DBCMDRIVER -Dlinux -O2 -ffunction-sections -mno-check-zero-division -mabi=32 -G 0 -mno-abicalls -fno-pic -pipe -msoft-float -ggdb -ffreestanding -march=mips32r2 -Wa,-mips32r2 -Wa,--trap -Iinclude/asm-mips/mach-generic -fomit-frame-pointer -fno-stack-protector -funit-at-a-time -Wdeclaration-after-statement -Wno-pointer-sign -fno-strict-overflow -DHNDCTF -DCTFPOOL -DCTFMAP -DBCMDBG_TRAP -DWLC_LOW -DWLC_HIGH -DBCMDMA32 -DBCMNVRAMR -DPHY_HAL -DPHY_HAL -DBCM5354 -DLINUX_HYBRID_POSTPROCESSING_REMOVAL -D"KBUILD_STR(s)=\#s" -D"KBUILD_BASENAME=KBUILD_STR(siutils)" -D"KBUILD_MODNAME=KBUILD_STR(hnd)" -c -o drivers/net/hnd/../../../../../shared/siutils.o drivers/net/hnd/../../../../../shared/siutils.c + +deps_drivers/net/hnd/../../../../../shared/siutils.o := \ + drivers/net/hnd/../../../../../shared/siutils.c \ + $(wildcard include/config/xip.h) \ + /home/vicente/repos/tomato/release/src-rt/include/typedefs.h \ + include/linux/version.h \ + include/linux/types.h \ + $(wildcard include/config/uid16.h) \ + $(wildcard include/config/lbd.h) \ + $(wildcard include/config/lsf.h) \ + $(wildcard include/config/resources/64bit.h) \ + include/linux/posix_types.h \ + include/linux/stddef.h \ + include/linux/compiler.h \ + $(wildcard include/config/enable/must/check.h) \ + include/linux/compiler-gcc4.h \ + $(wildcard include/config/forced/inlining.h) \ + include/linux/compiler-gcc.h \ + include/asm/posix_types.h \ + include/asm/sgidefs.h \ + include/asm/types.h \ + $(wildcard include/config/highmem.h) \ + $(wildcard include/config/64bit/phys/addr.h) \ + $(wildcard include/config/64bit.h) \ + /home/vicente/repos/tomato/release/src-rt/include/bcmdefs.h \ + /home/vicente/repos/tomato/release/src-rt/include/osl.h \ + /home/vicente/repos/tomato/release/src-rt/include/linux_osl.h \ + $(wildcard include/config/mmc/msm7x00a.h) \ + /home/vicente/repos/tomato/release/src-rt/include/linuxver.h \ + $(wildcard include/config/net/radio.h) \ + $(wildcard include/config/wireless/ext.h) \ + $(wildcard include/config/pcmcia.h) \ + $(wildcard include/config/rfkill.h) \ + include/linux/module.h \ + $(wildcard include/config/modules.h) \ + $(wildcard include/config/modversions.h) \ + $(wildcard include/config/unused/symbols.h) \ + $(wildcard include/config/generic/bug.h) \ + $(wildcard include/config/module/unload.h) \ + $(wildcard include/config/kallsyms.h) \ + $(wildcard include/config/sysfs.h) \ + include/linux/spinlock.h \ + $(wildcard include/config/smp.h) \ + $(wildcard include/config/debug/spinlock.h) \ + $(wildcard include/config/preempt.h) \ + $(wildcard include/config/debug/lock/alloc.h) \ + include/linux/preempt.h \ + $(wildcard include/config/debug/preempt.h) \ + include/linux/thread_info.h \ + include/linux/bitops.h \ + include/asm/bitops.h \ + $(wildcard include/config/cpu/mipsr2.h) \ + $(wildcard include/config/cpu/mips64.h) \ + $(wildcard include/config/cpu/mips32.h) \ + include/linux/irqflags.h \ + $(wildcard include/config/trace/irqflags.h) \ + $(wildcard include/config/trace/irqflags/support.h) \ + $(wildcard include/config/x86.h) \ + include/asm/irqflags.h \ + $(wildcard include/config/mips/mt/smtc.h) \ + $(wildcard include/config/irq/cpu.h) \ + $(wildcard include/config/mips/mt/smtc/instant/replay.h) \ + include/asm/hazards.h \ + $(wildcard include/config/cpu/mipsr1.h) \ + $(wildcard include/config/cpu/r10000.h) \ + $(wildcard include/config/cpu/rm9000.h) \ + $(wildcard include/config/cpu/sb1.h) \ + include/asm/cpu-features.h \ + $(wildcard include/config/32bit.h) \ + $(wildcard include/config/cpu/mipsr2/irq/vi.h) \ + $(wildcard include/config/cpu/mipsr2/irq/ei.h) \ + include/asm/cpu.h \ + include/asm/cpu-info.h \ + $(wildcard include/config/sgi/ip27.h) \ + $(wildcard include/config/mips/mt.h) \ + include/asm/cache.h \ + $(wildcard include/config/mips/l1/cache/shift.h) \ + include/asm-mips/mach-generic/kmalloc.h \ + $(wildcard include/config/dma/coherent.h) \ + include/asm-mips/mach-generic/cpu-feature-overrides.h \ + include/asm/barrier.h \ + $(wildcard include/config/cpu/has/sync.h) \ + $(wildcard include/config/cpu/has/wb.h) \ + $(wildcard include/config/weak/ordering.h) \ + include/asm/bug.h \ + $(wildcard include/config/bug.h) \ + include/asm/break.h \ + include/asm-generic/bug.h \ + $(wildcard include/config/debug/bugverbose.h) \ + include/asm/byteorder.h \ + $(wildcard include/config/cpu/mips64/r2.h) \ + include/linux/byteorder/little_endian.h \ + include/linux/byteorder/swab.h \ + include/linux/byteorder/generic.h \ + include/asm/war.h \ + $(wildcard include/config/sgi/ip22.h) \ + $(wildcard include/config/sni/rm.h) \ + $(wildcard include/config/cpu/r5432.h) \ + $(wildcard include/config/sb1/pass/1/workarounds.h) \ + $(wildcard include/config/sb1/pass/2/workarounds.h) \ + $(wildcard include/config/mips/malta.h) \ + $(wildcard include/config/mips/atlas.h) \ + $(wildcard include/config/mips/sead.h) \ + $(wildcard include/config/cpu/tx49xx.h) \ + $(wildcard include/config/momenco/jaguar/atx.h) \ + $(wildcard include/config/pmc/yosemite.h) \ + $(wildcard include/config/basler/excite.h) \ + $(wildcard include/config/momenco/ocelot.h) \ + $(wildcard include/config/momenco/ocelot/3.h) \ + $(wildcard include/config/momenco/ocelot/c.h) \ + $(wildcard include/config/sgi/ip32.h) \ + $(wildcard include/config/wr/ppmc.h) \ + include/asm-generic/bitops/non-atomic.h \ + include/asm-generic/bitops/fls64.h \ + include/asm-generic/bitops/ffz.h \ + include/asm-generic/bitops/find.h \ + include/asm-generic/bitops/sched.h \ + include/asm-generic/bitops/hweight.h \ + include/asm-generic/bitops/ext2-non-atomic.h \ + include/asm-generic/bitops/le.h \ + include/asm-generic/bitops/ext2-atomic.h \ + include/asm-generic/bitops/minix.h \ + include/asm/thread_info.h \ + $(wildcard include/config/page/size/4kb.h) \ + $(wildcard include/config/page/size/8kb.h) \ + $(wildcard include/config/page/size/16kb.h) \ + $(wildcard include/config/page/size/64kb.h) \ + $(wildcard include/config/debug/stack/usage.h) \ + include/asm/processor.h \ + $(wildcard include/config/mips/mt/fpaff.h) \ + $(wildcard include/config/cpu/has/prefetch.h) \ + include/linux/cpumask.h \ + $(wildcard include/config/hotplug/cpu.h) \ + include/linux/kernel.h \ + $(wildcard include/config/preempt/voluntary.h) \ + $(wildcard include/config/debug/spinlock/sleep.h) \ + $(wildcard include/config/printk.h) \ + $(wildcard include/config/numa.h) \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ + include/linux/linkage.h \ + include/asm/linkage.h \ + include/linux/log2.h \ + $(wildcard include/config/arch/has/ilog2/u32.h) \ + $(wildcard include/config/arch/has/ilog2/u64.h) \ + include/linux/threads.h \ + $(wildcard include/config/nr/cpus.h) \ + $(wildcard include/config/base/small.h) \ + include/linux/bitmap.h \ + include/linux/string.h \ + include/asm/string.h \ + $(wildcard include/config/cpu/r3000.h) \ + include/asm/cachectl.h \ + include/asm/mipsregs.h \ + $(wildcard include/config/cpu/vr41xx.h) \ + include/asm/prefetch.h \ + include/asm/system.h \ + include/asm/addrspace.h \ + $(wildcard include/config/cpu/r4300.h) \ + $(wildcard include/config/cpu/r4x00.h) \ + $(wildcard include/config/cpu/r5000.h) \ + $(wildcard include/config/cpu/rm7000.h) \ + $(wildcard include/config/cpu/nevada.h) \ + $(wildcard include/config/cpu/r8000.h) \ + $(wildcard include/config/cpu/sb1a.h) \ + include/asm-mips/mach-generic/spaces.h \ + $(wildcard include/config/dma/noncoherent.h) \ + include/asm/dsp.h \ + include/linux/stringify.h \ + include/linux/bottom_half.h \ + include/linux/spinlock_types.h \ + include/linux/lockdep.h \ + $(wildcard include/config/lockdep.h) \ + $(wildcard include/config/generic/hardirqs.h) \ + $(wildcard include/config/prove/locking.h) \ + include/linux/spinlock_types_up.h \ + include/linux/spinlock_up.h \ + include/linux/spinlock_api_up.h \ + include/asm/atomic.h \ + include/asm-generic/atomic.h \ + include/linux/list.h \ + $(wildcard include/config/debug/list.h) \ + include/linux/poison.h \ + include/linux/prefetch.h \ + include/linux/stat.h \ + include/asm/stat.h \ + include/linux/time.h \ + include/linux/seqlock.h \ + include/linux/cache.h \ + $(wildcard include/config/arch/has/cache/line/size.h) \ + include/linux/kmod.h \ + $(wildcard include/config/kmod.h) \ + include/linux/errno.h \ + include/asm/errno.h \ + include/asm-generic/errno-base.h \ + include/linux/elf.h \ + include/linux/auxvec.h \ + include/asm/auxvec.h \ + include/linux/elf-em.h \ + include/asm/elf.h \ + $(wildcard include/config/mips32/n32.h) \ + $(wildcard include/config/mips32/o32.h) \ + $(wildcard include/config/mips32/compat.h) \ + include/linux/kobject.h \ + $(wildcard include/config/hotplug.h) \ + include/linux/sysfs.h \ + include/linux/kref.h \ + include/linux/wait.h \ + include/asm/current.h \ + include/linux/moduleparam.h \ + include/linux/init.h \ + $(wildcard include/config/memory/hotplug.h) \ + $(wildcard include/config/acpi/hotplug/memory.h) \ + include/asm/local.h \ + include/linux/percpu.h \ + include/linux/slab.h \ + $(wildcard include/config/slab/debug.h) \ + $(wildcard include/config/slub.h) \ + $(wildcard include/config/slob.h) \ + $(wildcard include/config/debug/slab.h) \ + include/linux/gfp.h \ + $(wildcard include/config/zone/dma.h) \ + $(wildcard include/config/zone/dma32.h) \ + include/linux/mmzone.h \ + $(wildcard include/config/force/max/zoneorder.h) \ + $(wildcard include/config/arch/populates/node/map.h) \ + $(wildcard include/config/discontigmem.h) \ + $(wildcard include/config/flat/node/mem/map.h) \ + $(wildcard include/config/have/memory/present.h) \ + $(wildcard include/config/need/node/memmap/size.h) \ + $(wildcard include/config/need/multiple/nodes.h) \ + $(wildcard include/config/sparsemem.h) \ + $(wildcard include/config/have/arch/early/pfn/to/nid.h) \ + $(wildcard include/config/flatmem.h) \ + $(wildcard include/config/sparsemem/extreme.h) \ + $(wildcard include/config/nodes/span/other/nodes.h) \ + $(wildcard include/config/holes/in/zone.h) \ + include/linux/numa.h \ + $(wildcard include/config/nodes/shift.h) \ + include/linux/nodemask.h \ + include/asm/page.h \ + $(wildcard include/config/build/elf64.h) \ + include/linux/pfn.h \ + include/asm/io.h \ + include/asm-generic/iomap.h \ + include/asm/pgtable-bits.h \ + $(wildcard include/config/cpu/mips32/r1.h) \ + $(wildcard include/config/cpu/tx39xx.h) \ + $(wildcard include/config/mips/uncached.h) \ + include/asm-mips/mach-generic/ioremap.h \ + include/asm-mips/mach-generic/mangle-port.h \ + $(wildcard include/config/swap/io/space.h) \ + include/asm-generic/memory_model.h \ + $(wildcard include/config/out/of/line/pfn/to/page.h) \ + include/asm-generic/page.h \ + include/linux/memory_hotplug.h \ + $(wildcard include/config/have/arch/nodedata/extension.h) \ + include/linux/notifier.h \ + include/linux/mutex.h \ + $(wildcard include/config/debug/mutexes.h) \ + include/linux/rwsem.h \ + $(wildcard include/config/rwsem/generic/spinlock.h) \ + include/linux/rwsem-spinlock.h \ + include/linux/srcu.h \ + include/linux/topology.h \ + $(wildcard include/config/sched/smt.h) \ + $(wildcard include/config/sched/mc.h) \ + include/linux/smp.h \ + include/asm/topology.h \ + include/asm-mips/mach-generic/topology.h \ + include/asm-generic/topology.h \ + include/asm/sparsemem.h \ + include/linux/slab_def.h \ + include/linux/kmalloc_sizes.h \ + include/asm/percpu.h \ + include/asm-generic/percpu.h \ + include/asm/module.h \ + $(wildcard include/config/cpu/mips32/r2.h) \ + $(wildcard include/config/cpu/mips64/r1.h) \ + $(wildcard include/config/cpu/r6000.h) \ + include/asm/uaccess.h \ + include/asm-generic/uaccess.h \ + include/linux/mm.h \ + $(wildcard include/config/sysctl.h) \ + $(wildcard include/config/mmu.h) \ + $(wildcard include/config/stack/growsup.h) \ + $(wildcard include/config/debug/vm.h) \ + $(wildcard include/config/shmem.h) \ + $(wildcard include/config/split/ptlock/cpus.h) \ + $(wildcard include/config/ia64.h) \ + $(wildcard include/config/proc/fs.h) \ + $(wildcard include/config/debug/pagealloc.h) \ + include/linux/capability.h \ + include/linux/rbtree.h \ + include/linux/prio_tree.h \ + include/linux/fs.h \ + $(wildcard include/config/dnotify.h) \ + $(wildcard include/config/quota.h) \ + $(wildcard include/config/inotify.h) \ + $(wildcard include/config/security.h) \ + $(wildcard include/config/epoll.h) \ + $(wildcard include/config/auditsyscall.h) \ + $(wildcard include/config/block.h) \ + $(wildcard include/config/fs/xip.h) \ + $(wildcard include/config/migration.h) \ + include/linux/limits.h \ + include/linux/ioctl.h \ + include/asm/ioctl.h \ + include/linux/kdev_t.h \ + include/linux/dcache.h \ + $(wildcard include/config/profiling.h) \ + include/linux/rcupdate.h \ + include/linux/namei.h \ + include/linux/radix-tree.h \ + include/linux/pid.h \ + include/asm/semaphore.h \ + include/linux/quota.h \ + include/linux/dqblk_xfs.h \ + include/linux/dqblk_v1.h \ + include/linux/dqblk_v2.h \ + include/linux/nfs_fs_i.h \ + include/linux/nfs.h \ + include/linux/sunrpc/msg_prot.h \ + include/linux/fcntl.h \ + include/asm/fcntl.h \ + include/asm-generic/fcntl.h \ + include/linux/err.h \ + include/linux/debug_locks.h \ + $(wildcard include/config/debug/locking/api/selftests.h) \ + include/linux/backing-dev.h \ + include/linux/percpu_counter.h \ + include/linux/proportions.h \ + include/linux/mm_types.h \ + include/asm/pgtable.h \ + include/asm/pgtable-32.h \ + include/asm/fixmap.h \ + $(wildcard include/config/bcm47xx.h) \ + include/asm/kmap_types.h \ + $(wildcard include/config/debug/highmem.h) \ + include/asm-generic/pgtable-nopmd.h \ + include/asm-generic/pgtable-nopud.h \ + include/asm-generic/pgtable.h \ + include/linux/page-flags.h \ + $(wildcard include/config/s390.h) \ + $(wildcard include/config/swap.h) \ + include/linux/vmstat.h \ + $(wildcard include/config/vm/event/counters.h) \ + include/linux/pci.h \ + $(wildcard include/config/pci/msi.h) \ + $(wildcard include/config/pci.h) \ + $(wildcard include/config/ht/irq.h) \ + $(wildcard include/config/pci/domains.h) \ + include/linux/pci_regs.h \ + include/linux/mod_devicetable.h \ + include/linux/ioport.h \ + include/linux/device.h \ + $(wildcard include/config/debug/devres.h) \ + include/linux/klist.h \ + include/linux/completion.h \ + include/linux/pm.h \ + $(wildcard include/config/pm.h) \ + include/asm/device.h \ + include/asm-generic/device.h \ + include/linux/pci_ids.h \ + include/linux/dmapool.h \ + include/asm/scatterlist.h \ + include/asm/pci.h \ + $(wildcard include/config/dma/need/pci/map/state.h) \ + include/asm-generic/pci-dma-compat.h \ + include/linux/dma-mapping.h \ + include/asm/dma-mapping.h \ + include/linux/interrupt.h \ + $(wildcard include/config/high/res/timers.h) \ + $(wildcard include/config/generic/irq/probe.h) \ + include/linux/irqreturn.h \ + include/linux/hardirq.h \ + $(wildcard include/config/preempt/bkl.h) \ + $(wildcard include/config/virt/cpu/accounting.h) \ + include/linux/smp_lock.h \ + $(wildcard include/config/lock/kernel.h) \ + include/asm/hardirq.h \ + include/linux/irq.h \ + $(wildcard include/config/irq/per/cpu.h) \ + $(wildcard include/config/irq/release/method.h) \ + $(wildcard include/config/generic/pending/irq.h) \ + $(wildcard include/config/irqbalance.h) \ + $(wildcard include/config/auto/irq/affinity.h) \ + $(wildcard include/config/generic/hardirqs/no//do/irq.h) \ + include/asm/irq.h \ + $(wildcard include/config/i8259.h) \ + $(wildcard include/config/mips/mt/smtc/im/backstop.h) \ + include/asm/mipsmtregs.h \ + include/asm-mips/mach-generic/irq.h \ + $(wildcard include/config/irq/cpu/rm7k.h) \ + $(wildcard include/config/irq/cpu/rm9k.h) \ + include/asm/ptrace.h \ + $(wildcard include/config/cpu/has/smartmips.h) \ + include/asm/isadep.h \ + include/asm/irq_regs.h \ + include/asm/hw_irq.h \ + include/linux/profile.h \ + include/linux/irq_cpustat.h \ + include/linux/sched.h \ + $(wildcard include/config/no/hz.h) \ + $(wildcard include/config/detect/softlockup.h) \ + $(wildcard include/config/keys.h) \ + $(wildcard include/config/bsd/process/acct.h) \ + $(wildcard include/config/taskstats.h) \ + $(wildcard include/config/inotify/user.h) \ + $(wildcard include/config/schedstats.h) \ + $(wildcard include/config/task/delay/acct.h) \ + $(wildcard include/config/blk/dev/io/trace.h) \ + $(wildcard include/config/cc/stackprotector.h) \ + $(wildcard include/config/sysvipc.h) \ + $(wildcard include/config/rt/mutexes.h) \ + $(wildcard include/config/task/xacct.h) \ + $(wildcard include/config/cpusets.h) \ + $(wildcard include/config/compat.h) \ + $(wildcard include/config/fault/injection.h) \ + include/asm/param.h \ + $(wildcard include/config/hz.h) \ + include/linux/timex.h \ + $(wildcard include/config/time/interpolation.h) \ + include/asm/timex.h \ + include/asm-mips/mach-generic/timex.h \ + include/linux/jiffies.h \ + include/linux/calc64.h \ + include/asm/div64.h \ + include/asm-generic/div64.h \ + include/asm/mmu.h \ + include/asm/cputime.h \ + include/asm-generic/cputime.h \ + include/linux/sem.h \ + include/linux/ipc.h \ + $(wildcard include/config/ipc/ns.h) \ + include/asm/ipcbuf.h \ + include/asm/sembuf.h \ + include/linux/signal.h \ + include/asm/signal.h \ + $(wildcard include/config/trad/signals.h) \ + $(wildcard include/config/binfmt/irix.h) \ + include/asm-generic/signal.h \ + include/asm/sigcontext.h \ + include/asm/siginfo.h \ + include/asm-generic/siginfo.h \ + include/linux/securebits.h \ + include/linux/fs_struct.h \ + include/linux/seccomp.h \ + $(wildcard include/config/seccomp.h) \ + include/linux/futex.h \ + $(wildcard include/config/futex.h) \ + include/linux/rtmutex.h \ + $(wildcard include/config/debug/rt/mutexes.h) \ + include/linux/plist.h \ + $(wildcard include/config/debug/pi/list.h) \ + include/linux/param.h \ + include/linux/resource.h \ + include/asm/resource.h \ + include/asm-generic/resource.h \ + include/linux/timer.h \ + $(wildcard include/config/timer/stats.h) \ + include/linux/ktime.h \ + $(wildcard include/config/ktime/scalar.h) \ + include/linux/hrtimer.h \ + include/linux/task_io_accounting.h \ + $(wildcard include/config/task/io/accounting.h) \ + include/linux/aio.h \ + include/linux/workqueue.h \ + include/linux/aio_abi.h \ + include/linux/uio.h \ + include/linux/netdevice.h \ + $(wildcard include/config/ax25.h) \ + $(wildcard include/config/tr.h) \ + $(wildcard include/config/net/ipip.h) \ + $(wildcard include/config/net/ipgre.h) \ + $(wildcard include/config/ipv6/sit.h) \ + $(wildcard include/config/ipv6/tunnel.h) \ + $(wildcard include/config/netpoll.h) \ + $(wildcard include/config/net/poll/controller.h) \ + $(wildcard include/config/netpoll/trap.h) \ + $(wildcard include/config/net/dma.h) \ + include/linux/if.h \ + include/linux/socket.h \ + include/asm/socket.h \ + include/asm/sockios.h \ + include/linux/sockios.h \ + include/linux/hdlc/ioctl.h \ + include/linux/if_ether.h \ + include/linux/skbuff.h \ + $(wildcard include/config/nf/conntrack.h) \ + $(wildcard include/config/bridge/netfilter.h) \ + $(wildcard include/config/vlan/8021q.h) \ + $(wildcard include/config/net/sched.h) \ + $(wildcard include/config/net/cls/act.h) \ + $(wildcard include/config/network/secmark.h) \ + $(wildcard include/config/imq.h) \ + include/linux/net.h \ + include/linux/random.h \ + include/linux/sysctl.h \ + $(wildcard include/config/bcm/nat.h) \ + include/linux/textsearch.h \ + include/net/checksum.h \ + include/asm/checksum.h \ + include/linux/in6.h \ + include/linux/dmaengine.h \ + $(wildcard include/config/dma/engine.h) \ + include/linux/if_packet.h \ + include/net/ieee80211.h \ + $(wildcard include/config/ieee80211/debug.h) \ + include/linux/wireless.h \ + include/linux/if_arp.h \ + include/net/iw_handler.h \ + include/net/ieee80211_crypt.h \ + include/asm/paccess.h \ + /home/vicente/repos/tomato/release/src-rt/include/ctf/hndctf.h \ + /home/vicente/repos/tomato/release/src-rt/include/bcmutils.h \ + /home/vicente/repos/tomato/release/src-rt/include/proto/ethernet.h \ + /home/vicente/repos/tomato/release/src-rt/include/packed_section_start.h \ + /home/vicente/repos/tomato/release/src-rt/include/packed_section_end.h \ + /home/vicente/repos/tomato/release/src-rt/include/siutils.h \ + /home/vicente/repos/tomato/release/src-rt/include/bcmdevs.h \ + /home/vicente/repos/tomato/release/src-rt/include/hndsoc.h \ + /home/vicente/repos/tomato/release/src-rt/include/sbconfig.h \ + $(wildcard include/config/h.h) \ + /home/vicente/repos/tomato/release/src-rt/include/aidmp.h \ + /home/vicente/repos/tomato/release/src-rt/include/sbchipc.h \ + /home/vicente/repos/tomato/release/src-rt/include/pci_core.h \ + /home/vicente/repos/tomato/release/src-rt/include/pcie_core.h \ + $(wildcard include/config/offset.h) \ + $(wildcard include/config/indaddr.h) \ + /home/vicente/repos/tomato/release/src-rt/include/nicpci.h \ + /home/vicente/repos/tomato/release/src-rt/include/bcmnvram.h \ + $(wildcard include/config/nvram/size.h) \ + $(wildcard include/config/nvram/64k.h) \ + $(wildcard include/config/dual/image.h) \ + $(wildcard include/config/dual/image/flash/support//.h) \ + /home/vicente/repos/tomato/release/src-rt/include/bcmsrom.h \ + /home/vicente/repos/tomato/release/src-rt/include/bcmsrom_fmt.h \ + /home/vicente/repos/tomato/release/src-rt/include/hndtcam.h \ + /home/vicente/repos/tomato/release/src-rt/include/pcicfg.h \ + $(wildcard include/config/addr.h) \ + $(wildcard include/config/bus.h) \ + $(wildcard include/config/slot.h) \ + $(wildcard include/config/fun.h) \ + $(wildcard include/config/off.h) \ + /home/vicente/repos/tomato/release/src-rt/include/sbpcmcia.h \ + /home/vicente/repos/tomato/release/src-rt/include/sbsocram.h \ + /home/vicente/repos/tomato/release/src-rt/include/bcmotp.h \ + /home/vicente/repos/tomato/release/src-rt/include/hndpmu.h \ + drivers/net/hnd/../../../../../shared/siutils_priv.h \ + +drivers/net/hnd/../../../../../shared/siutils.o: $(deps_drivers/net/hnd/../../../../../shared/siutils.o) + +$(deps_drivers/net/hnd/../../../../../shared/siutils.o): diff --git a/release/src-rt/shared/aisdram.S b/release/src-rt/shared/aisdram.S old mode 100644 new mode 100755 index a0df4e5b5b..6171dc0178 --- a/release/src-rt/shared/aisdram.S +++ b/release/src-rt/shared/aisdram.S @@ -25,6 +25,7 @@ #include #include #include +#include #include #if defined(NFLASH_SUPPORT) @@ -51,7 +52,7 @@ li k0,KSEG1ADDR(0x18000040); \ li k1,x; \ sw k1,FLADDR_OFF(k0) - + #define TRACE(x) \ li k1,x; \ sw k1,FLADDR_OFF(k0) @@ -193,7 +194,7 @@ ddr2_init: nfl_pagesz_map: /* page size mapping */ .word 0x200, 0x800, 0x1000, 0x2000 - + nfl_blksz_map: /* block size mapping */ .word 0x4000, 0x20000, 0x2000, 0x80000, 0x40000, 0, 0, 0 @@ -261,7 +262,7 @@ LEAF(ai_draminit) beq s4,DMEMS_CORE_ID,founddmemc nop - beq s4,AMEMC_CORE_ID,foundamemc + beq s4,AMEMC_CORE_ID,founddmemc nop b 1b @@ -272,17 +273,6 @@ noctrl: TRACE(0x415307) jr t6 li v0,-1 -foundamemc: - beqz s5,1f # Running from RAM, simply return - nop - - la t2,ai_amemcinit - add t2,t2,s5 - jalr t2 - nop -1: - jr t6 - move v0,zero founddmemc: TRACE(0x415308) @@ -292,10 +282,10 @@ founddmemc: */ bnez s5,1f # Not running from RAM, go ahead nop - + jr t6 # Return with 0 rc. move v0,zero - + /* We'll cheat a little: memory controllers don't have master ports, so * the EROM entry right after the CIDs is the slave port for the registers */ @@ -355,6 +345,11 @@ swrap: and a2,t0,t2 srl s3,t3,CIB_REV_SHIFT # s3 = core revision beq s4,DMEMS_CORE_ID,1f nop + + /* Go find nvram if the controller is AMEMC. */ + beq s4,AMEMC_CORE_ID,find_nvram + nop + ble s3,1,is16x nop @@ -379,7 +374,7 @@ is16x: TRACE(0x41530b) find_nvram: TRACE(0x41530c) li t0,KSEG1ADDR(SI_FLASH2 - NVRAM_SPACE) - li t1,FLASH_MIN + li t1,FLASH_MIN li t2,SI_FLASH2_SZ li t3,NVRAM_MAGIC @@ -390,7 +385,7 @@ find_nvram: bne t4,BCM5357_CHIP_ID,1f nop lw t5,CC_CHIPST(s2) - li t4,0x10 + li t4,0x10 and t4,t4,t5 beqz t4,1f nop @@ -482,7 +477,7 @@ embedded_nv: b init_dmemc li s0,0x144 - + read_config: /* sdram_config is a 16bit value 12 bytes inside the nvram hdr. * Currently it is defined as: @@ -504,8 +499,20 @@ read_config: */ TRACE(0x415310) lw s0,12(t4) # Pick up sdram_config & sdram_refresh + + /* Determine if it is DMEMC or AMEMC */ + bne s4,AMEMC_CORE_ID,init_dmemc lw s8,16(t4) # Pick up sdram_ncdl + /* Initailize AMEMC */ + la t2,ai_amemcinit + add t2,t2,s5 + jalr t2 + nop + + jr t6 + move v0,zero + /* Initialize DMEMC/DMEMS */ init_dmemc: /* For DDR2, init pvt controller */ @@ -605,7 +612,7 @@ nvover: beqz s8,chhalf and t1,t1,t2 or t0,t0,t1 sw t0,DMEMC_CONTROL141(a1) - + li t0,0x7f0000 and t0,t0,s0 # clk_wr_delay_0 srl t0,t0,8 @@ -636,7 +643,7 @@ old_ncdl: sw t0,DMEMC_CONTROL23(a1) sw s8,DMEMC_CONTROL22(a1) - + /* Check for half-width */ chhalf: li t0,0x80 and t0,t0,s0 @@ -659,7 +666,7 @@ ch8banks: nop /* Change regs for 8-bank DDRs */ -do8banks: +do8banks: lw t0,DMEMC_CONTROL05(a1) li t1,0x00010000 or t0,t0,t1 @@ -761,17 +768,17 @@ dobypass: bgt s3,1,4f nop - + 1: li t0,0x00170017 beq a3,DM_STAT_SDR,2f nop - + li t0,0x000f000f beq a3,DM_STAT_DDR1,2f nop li t0,0x00200020 - + 2: sw t0,DMEMC_CONTROL25(a1) beq s4,DMEMS_CORE_ID,3f nop @@ -799,7 +806,7 @@ dobypass: ble s3,1,ckvsim nop - + lw t0,DMEMC_CONTROL140(a1) li t1,0x10000000 or t0,t0,t1 @@ -848,7 +855,7 @@ turnon: sll t0,t1,16 or t2,t2,t0 sw t2,DMEMC_CONTROL140(a1) - + lw t2,DMEMC_CONTROL142(a1) li t0,~0x01ff8000 and t2,t2,t0 @@ -859,7 +866,7 @@ turnon: sll t0,t0,15 or t2,t2,t0 sw t2,DMEMC_CONTROL142(a1) - + lw t1,DMEMC_CONTROL145(a1) srl t1,t1,3 lw t2,DMEMC_CONTROL141(a1) @@ -868,7 +875,7 @@ turnon: sll t0,t1,16 or t2,t2,t0 sw t2,DMEMC_CONTROL141(a1) - + lw t2,DMEMC_CONTROL143(a1) li t0,~0x01ff8000 and t2,t2,t0 @@ -947,12 +954,12 @@ ai_core_reset: dmemc_init_regs: beq s4,DMEMS_CORE_ID,loop_regs li t3,128 - + ble s3,1,loop_regs nop li t3,256 - + loop_regs: add a0,a0,s5 # Relocate address li t0,DMEMC_TABLE_END @@ -988,7 +995,7 @@ LEAF(nfl_size_block) add a0,a0,s5 # Relocate address add t8,t8,a0 lw v1,0(t8) - + li t8,0x7 sll t8,28 and t8,t8,t9 @@ -1046,169 +1053,37 @@ END(nfl_check_badb) /* ********************************************************************* * AI_AMEMCINIT - * + * * AI version of DDR / memory controller initialization * * This routine deals with DDR23_PHY and PL341 MEMC. - * + * ********************************************************************* */ -#define MEMC_BURST_LENGTH (4) /* Convenient macro for writing registers (use t0 for base) */ #define ddr_write(offset, value) \ li a0, (value); \ sw a0, offset(t0); -#define AI_DDRPHY_BASE (0x1800f000) -#define AI_MEMC_BASE (0x18006000) -#define AI_MEMC_SLAVE_BASE (0x18106000) - -/* From bsp_config.h of _BCM953003RSP_ */ -/* (required) PLL clock */ -#define CFG_DDR_PLL_CLOCK (331250) /* KHz */ - -/* (required) Row bits: 0=11bits, 1=12bits, ..., 5=16bits */ -#define CFG_DDR_ROW_BITS 2 /* 13 bits */ - -/* (required) Column bits: 1=9bits, 2=10bits, 3=11bits */ -#define CFG_DDR_COLUMN_BITS 2 /* 10 bits */ - -/* (required) Bank bits: 0=2bits, 3=3bits */ -#define CFG_DDR_BANK_BITS 3 - -/* (required) Memory width: 0=16bits, 1=32bits, 2=64bits */ -#define CFG_DDR_MEM_WIDTH 1 - -/* (required) CAS Latency (NOTE: could be affected by PLL clock) */ -#define CFG_DDR_CAS_LATENCY 5 - -/* (required) t_wr (picoseconds) */ -#define CFG_DDR_T_WR 15000 - -/* (optional) Refresh period t_refi (picoseconds) */ -#define CFG_DDR_REFRESH_PRD 7800000 - -/* (optional) t_rfc (picoseconds) */ -#define CFG_DDR_T_RFC 105000 - -/* - * Convenient macros - */ -#define MEMCYCLES(psec) (((psec) * (CFG_DDR_PLL_CLOCK) + 999999999) / 1000000000) - -/* - * Convenient macros (minimum requirement and truncated decimal) - */ -#define MEMCYCLES_MIN(psec) ((psec) * (CFG_DDR_PLL_CLOCK) / 1000000000) - -/* - * PLL clock configuration - */ -#define PLL_NDIV_INT_VAL (16 * (CFG_DDR_PLL_CLOCK) / 100000) - -/* - * DDR23PHY registers - */ -#define DDR23PHY_PLL_STATUS 0x010 -#define DDR23PHY_PLL_CONFIG 0x014 -#define DDR23PHY_PLL_PRE_DIVIDER 0x018 -#define DDR23PHY_PLL_DIVIDER 0x01c -#define DDR23PHY_STATIC_VDL_OVERRIDE 0x030 -#define DDR23PHY_ZQ_PVT_COMP_CTL 0x03c -#define DDR23PHY_BL3_VDL_CALIBRATE 0x104 -#define DDR23PHY_BL3_VDL_STATUS 0x108 -#define DDR23PHY_BL3_READ_CONTROL 0x130 -#define DDR23PHY_BL3_WR_PREAMBLE_MODE 0x148 -#define DDR23PHY_BL2_VDL_CALIBRATE 0x204 -#define DDR23PHY_BL2_VDL_STATUS 0x208 -#define DDR23PHY_BL2_READ_CONTROL 0x230 -#define DDR23PHY_BL2_WR_PREAMBLE_MODE 0x248 -#define DDR23PHY_BL1_VDL_CALIBRATE 0x304 -#define DDR23PHY_BL1_VDL_STATUS 0x308 -#define DDR23PHY_BL1_READ_CONTROL 0x330 -#define DDR23PHY_BL1_WR_PREAMBLE_MODE 0x348 -#define DDR23PHY_BL0_VDL_CALIBRATE 0x404 -#define DDR23PHY_BL0_VDL_STATUS 0x408 -#define DDR23PHY_BL0_READ_CONTROL 0x430 -#define DDR23PHY_BL0_WR_PREAMBLE_MODE 0x448 - -/* - * PL341 registers - */ -#define PL341_memc_status 0x000 -#define PL341_memc_cmd 0x004 -#define PL341_direct_cmd 0x008 -#define PL341_memory_cfg 0x00c -#define PL341_refresh_prd 0x010 -#define PL341_cas_latency 0x014 -#define PL341_write_latency 0x018 -#define PL341_t_mrd 0x01c -#define PL341_t_ras 0x020 -#define PL341_t_rc 0x024 -#define PL341_t_rcd 0x028 -#define PL341_t_rfc 0x02c -#define PL341_t_rp 0x030 -#define PL341_t_rrd 0x034 -#define PL341_t_wr 0x038 -#define PL341_t_wtr 0x03c -#define PL341_t_xp 0x040 -#define PL341_t_xsr 0x044 -#define PL341_t_esr 0x048 -#define PL341_memory_cfg2 0x04c -#define PL341_memory_cfg3 0x050 -#define PL341_t_faw 0x054 -#define PL341_chip_0_cfg 0x200 -#define PL341_user_config0 0x304 - - -/* - * Values for PL341 Direct Command Register - */ -#define MCHIP_CMD_PRECHARGE_ALL (0x0 << 18) -#define MCHIP_CMD_AUTO_REFRESH (0x1 << 18) -#define MCHIP_CMD_MODE_REG (0x2 << 18) -#define MCHIP_CMD_NOP (0x3 << 18) -#define MCHIP_MODEREG_SEL(x) ((x) << 16) -#define MCHIP_MR_WRITE_RECOVERY(x) (((x) - 1) << 9) -#define MCHIP_MR_DLL_RESET(x) ((x) << 8) -#define MCHIP_MR_CAS_LATENCY(x) ((x) << 4) -#if MEMC_BURST_LENGTH == 4 -#define MCHIP_MR_BURST_LENGTH (2) -#else -#define MCHIP_MR_BURST_LENGTH (3) -#endif -#define MCHIP_EMR1_DLL_DISABLE(x) ((x) << 0) -#define MCHIP_EMR1_RTT_ODT_DISABLED (0) -#define MCHIP_EMR1_RTT_75_OHM (1 << 2) -#define MCHIP_EMR1_RTT_150_OHM (1 << 6) -#define MCHIP_EMR1_RTT_50_OHM ((1 << 6) | (1 << 2)) -#define MCHIP_EMR1_OCD_CALI_EXIT (0x0 << 7) -#define MCHIP_EMR1_OCD_CALI_DEFAULT (0x3 << 7) - LEAF(ai_amemcinit) .set noreorder - - move t7,ra - - /* + + /* * ddr23_phy_init */ li t0, KSEG1ADDR(AI_DDRPHY_BASE) - #ifndef CFG_QUICKTURN -#define PVT_MAX_RETRY (120) -#define PVT_MATCHED_COUNT (3) li t2, 0x10000000 li t3, 0 li t5, 0 2: /* Do recalibration */ beq t5, PVT_MAX_RETRY, 9f - lw a1, DDR23PHY_ZQ_PVT_COMP_CTL(t0) + lw t7, DDR23PHY_ZQ_PVT_COMP_CTL(t0) ddr_write(DDR23PHY_ZQ_PVT_COMP_CTL, 0x04000000); -1: +1: /* Wait until sample_done == 1 */ lw t1, DDR23PHY_ZQ_PVT_COMP_CTL(t0) and t1, t1, t2; @@ -1217,12 +1092,12 @@ LEAF(ai_amemcinit) /* Increase total retry count */ add t5, t5, 1 - + /* Check if the result is the same as previous one */ lw t1, DDR23PHY_ZQ_PVT_COMP_CTL(t0) - beq t1, a1, 3f + beq t1, t7, 3f nop - + /* If not, clear matched count */ b 2b li t3, 0 @@ -1232,14 +1107,14 @@ LEAF(ai_amemcinit) bne t3, PVT_MATCHED_COUNT, 2b nop 9: - + /* setup PLL */ ddr_write(DDR23PHY_PLL_CONFIG, 0x8000000c); - ddr_write(DDR23PHY_PLL_PRE_DIVIDER, + ddr_write(DDR23PHY_PLL_PRE_DIVIDER, 0x00000011 + (PLL_NDIV_INT_VAL << 8)); ddr_write(DDR23PHY_PLL_DIVIDER, 0x02000000); ddr_write(DDR23PHY_PLL_CONFIG, 0x80000008); - + /* Wait for PLL locked */ li t2, 1; 1: /* Wait until lock == 1 */ @@ -1252,16 +1127,16 @@ LEAF(ai_amemcinit) ddr_write(DDR23PHY_PLL_CONFIG, 0x80000000); ddr_write(DDR23PHY_PLL_CONFIG, 0x00000000); - /* + /* * Calibrate VDL */ - + /* calib_once + calib_fast (for all BL) */ ddr_write(DDR23PHY_BL3_VDL_CALIBRATE, 0x00000003); ddr_write(DDR23PHY_BL2_VDL_CALIBRATE, 0x00000003); ddr_write(DDR23PHY_BL1_VDL_CALIBRATE, 0x00000003); ddr_write(DDR23PHY_BL0_VDL_CALIBRATE, 0x00000003); - + li t2, 0x0000003; li t0, KSEG1ADDR(AI_DDRPHY_BASE) 1: /* Wait until calib_idle == 1 and locked for all BL */ @@ -1281,7 +1156,7 @@ LEAF(ai_amemcinit) and t1, t1, t2; beq t1, zero, 1b nop - + /* VDL override */ lw t1, DDR23PHY_BL0_VDL_STATUS(t0) srl t1, t1, 8 @@ -1293,203 +1168,244 @@ LEAF(ai_amemcinit) sll t1, 20 or t2, t2, t1 /* ovr_force */ sw t2, DDR23PHY_STATIC_VDL_OVERRIDE(t0) - + #endif /* !CFG_QUICKTURN */ /* * Memory controller PL341 initialization - */ - + */ + /* De-assert core reset */ - li t0, KSEG1ADDR(AI_MEMC_SLAVE_BASE); + move t0, a2 # AMEMC DMP regs ddr_write(AI_RESETCTRL, 0x00000000) - - li t0, KSEG1ADDR(AI_MEMC_BASE); - + + move t0, a1 # AMEMC regs + #ifdef CFG_DDR_REFRESH_PRD /* refresh_prd */ ddr_write(PL341_refresh_prd, MEMCYCLES_MIN(CFG_DDR_REFRESH_PRD)); #endif - -#ifdef CFG_DDR_CAS_LATENCY - /* cas_latency */ - ddr_write(PL341_cas_latency, (CFG_DDR_CAS_LATENCY << 1)); -#endif - -#ifdef CFG_DDR_WRITE_LATENCY - /* write_latency */ - ddr_write(PL341_write_latency, CFG_DDR_WRITE_LATENCY); -#endif - + #ifdef CFG_DDR_T_MRD /* MRD time [6:0] */ ddr_write(PL341_t_mrd, MEMCYCLES(CFG_DDR_T_MRD)); #endif - + #ifdef CFG_DDR_T_RAS /* ras time [4:0] */ ddr_write(PL341_t_ras, MEMCYCLES(CFG_DDR_T_RAS)); #endif - + #ifdef CFG_DDR_T_RC /* t_rc [4:0] */ ddr_write(PL341_t_rc, MEMCYCLES(CFG_DDR_T_RC)); #endif - + #ifdef CFG_DDR_T_RCD /* t_rcd [4:0] */ ddr_write(PL341_t_rcd, MEMCYCLES(CFG_DDR_T_RCD)); #endif - + #ifdef CFG_DDR_T_RFC /* t_rfc [6:0] schedule_rfc[14:8] */ ddr_write(PL341_t_rfc, ((MEMCYCLES(CFG_DDR_T_RFC) - 3) << 8) | MEMCYCLES(CFG_DDR_T_RFC)); #endif - + #ifdef CFG_DDR_T_RP /* t_rp [3:0] */ - ddr_write(PL341_t_rp, + ddr_write(PL341_t_rp, ((MEMCYCLES(CFG_DDR_T_RP) - 3) << 8) | MEMCYCLES(CFG_DDR_T_RP)); #endif - + #ifdef CFG_DDR_T_RRD /* t_rrd [2:0] */ ddr_write(PL341_t_rrd, MEMCYCLES(CFG_DDR_T_RRD)); #endif - + #ifdef CFG_DDR_T_WR /* t_wr */ ddr_write(PL341_t_wr, MEMCYCLES(CFG_DDR_T_WR)); #endif - + #ifdef CFG_DDR_T_WTR /* t_wtr */ ddr_write(PL341_t_wtr, MEMCYCLES(CFG_DDR_T_WTR)); #endif - + #ifdef CFG_DDR_T_XP /* t_xp[7:0] */ ddr_write(PL341_t_xp, MEMCYCLES(CFG_DDR_T_XP)); #endif - + #ifdef CFG_DDR_T_XSR /* t_xsr[7:0] */ ddr_write(PL341_t_xsr, MEMCYCLES(CFG_DDR_T_XSR)); #endif - + #ifdef CFG_DDR_T_ESR /* t_esr[7:0] */ ddr_write(PL341_t_esr, MEMCYCLES(CFG_DDR_T_ESR)); #endif - + #ifdef CFG_DDR_T_FAW /* t_faw */ - ddr_write(PL341_t_faw, + ddr_write(PL341_t_faw, ((MEMCYCLES(CFG_DDR_T_FAW) - 3) << 8) | MEMCYCLES(CFG_DDR_T_FAW)); #endif - - /* memory_cfg register */ - ddr_write(PL341_memory_cfg, - (2 << 15) | (CFG_DDR_ROW_BITS << 3) | CFG_DDR_COLUMN_BITS - ); - + + /* Check if sdram_config is nonzero */ + and t1, s0, 0xffff + bne t1, $0, sdram_mem_cfg + nop + + /* sdram_config is 0, configure by code-default values */ /* Figure out if it's a low cost package */ - #li s2,PHYS_TO_K1(SI_ENUM_BASE) # s2 = SI_ENUM_BASE - lw t1,CC_CHIPID(s2) - li s3,0x00300000 - and t1,t1,s3 - - /* memory_cfg2 register */ - li t2, (CFG_DDR_MEM_WIDTH << 6) | (CFG_DDR_BANK_BITS << 4) - beq t1, 0, 1f + andi t1, s1, 0x03 + + /* Standard package, assume 1024-column, 32-bit, 8-bank DDR */ + beq t1, $0, sdram_mem_cfg + li s0, (0x0140 | CFG_DDR_CAS_LATENCY) + + /* Low cost package, assume 1024-column, 16-bit, 8-bank DDR */ + li s0, (0x01c0 | CFG_DDR_CAS_LATENCY) + +sdram_mem_cfg: + /* CAS Latency: + * sdram_config[2:0]: CAS latency + * PL341_cas_latency[3:1]: CL range from 2 to 6 + * PL341_write_latency[2:0]: CL - 1 + */ + andi t1, s0, 0x07 + sll t2, t1, 1 + sw t2, PL341_cas_latency(a1) + subu t2, t1, 1 + sw t2, PL341_write_latency(a1) + + /* PL341_memory_cfg: Rows and Columns */ + lw t2, PL341_memory_cfg(a1) # Read PL341_memory_cfg + + /* Columns: + * sdram_config[10:8]: 0=2048; 1=1024; 2=512; 3=256 columns + * PL341_memory_cfg[2:0]: 1=9-bit; 2=10-bit; 3=11-bit; Others=Reserved. + */ + li t3, ~0x7 # columns(bit2:0) + and t2, t2, t3 # clear column + srl t1, s0, 8 # Column fields from sdram_config s0(bit10:8) + andi t1, t1, 0x07 + li t3, 0x3 + subu t1, t3, t1 + andi t1, t1, 0x07 + or t2, t2, t1 + sw t2, PL341_memory_cfg(a1) + + /* PL341_memory_cfg2: Bus width and Banks */ + lw t2, PL341_memory_cfg2(a1) # Read PL341_memory_cfg2 + + /* Low cost package is 16-bit bus */ + andi t1, s1, 0x03 + li t3, ~0xc0 + bne t1, $0, 2f # nonzero: low cost package with 16-bit bus + and t2, t2, t3 # Clear bit[7:6] to work in 16-bit mode + + /* Bus width: + * sdram_config[7]: 0 default bus width, 1: reduced width + * PL341_memory_cfg2[7:6]: 00 for 16bit, 01=32bit, 10=64bit, 11=reserved + */ + andi t1, s0, 0x80 + bne t1, $0, 2f # Work in 16-bit mode nop - and t2, t2, 0xffffff3f /* Set to 16bit for low cost package */ + or t2, t2, 0x40 # Set bit[7:6] to 32-bit mode +2: + /* Banks: + * sdram_config[6]: 0 for 4 banks, 1 for 8 banks + * PL341_memory_cfg2[5:4]: 00 for 4 banks, 11 for 8 banks + */ + andi t1, s0, 0x40 # Bank configuration + li t3, ~0x30 + beq t1, $0, 1f + and t2, t2, t3 # Clear bit[5:4] to work in 4-bank mode + or t2, t2, 0x30 # Set bit[5:4] to 11 for 8-bank mode 1: - sw t2, PL341_memory_cfg2(t0); - + sw t2, PL341_memory_cfg2(a1); + /* chip0 configuration */ ddr_write(PL341_chip_0_cfg, 0x00000000); - + /* user_config0 */ ddr_write(PL341_user_config0, 0x00000003); - /* * DDR2 chip initialization */ /* Issue NOP */ ddr_write(PL341_direct_cmd, MCHIP_CMD_NOP); - + /* issue precharge all */ ddr_write(PL341_direct_cmd, MCHIP_CMD_PRECHARGE_ALL); - + /* Set EMR2 */ - ddr_write(PL341_direct_cmd, MCHIP_CMD_MODE_REG | MCHIP_MODEREG_SEL(2)); - + ddr_write(PL341_direct_cmd, MCHIP_CMD_MODE_REG | MCHIP_MODEREG_SEL(2)); + /* Set EMR3 */ - ddr_write(PL341_direct_cmd, MCHIP_CMD_MODE_REG | MCHIP_MODEREG_SEL(3)); - + ddr_write(PL341_direct_cmd, MCHIP_CMD_MODE_REG | MCHIP_MODEREG_SEL(3)); + /* DLL Enable */ - ddr_write(PL341_direct_cmd, - MCHIP_CMD_MODE_REG | MCHIP_MODEREG_SEL(1) | + ddr_write(PL341_direct_cmd, + MCHIP_CMD_MODE_REG | MCHIP_MODEREG_SEL(1) | MCHIP_EMR1_DLL_DISABLE(0) ); - + /* DLL Reset */ - ddr_write(PL341_direct_cmd, - MCHIP_CMD_MODE_REG | MCHIP_MODEREG_SEL(0) | - MCHIP_MR_WRITE_RECOVERY(MEMCYCLES(CFG_DDR_T_WR)) | - MCHIP_MR_DLL_RESET(1) | - MCHIP_MR_CAS_LATENCY(CFG_DDR_CAS_LATENCY) | - MCHIP_MR_BURST_LENGTH - ); - + /* Set CAS to external memory devices */ + lw t1, PL341_cas_latency(a1) # CAS value in bit3:1 + li t2, (MCHIP_CMD_MODE_REG | MCHIP_MODEREG_SEL(0) | \ + MCHIP_MR_WRITE_RECOVERY(MEMCYCLES(CFG_DDR_T_WR)) | \ + MCHIP_MR_DLL_RESET(1) | MCHIP_MR_BURST_LENGTH) + sll t1, t1, 3 # Shift to bit6:4 for DDR MRS register + or t2, t2, t1 + sw t2, PL341_direct_cmd(a1) + /* issue precharge all */ ddr_write(PL341_direct_cmd, MCHIP_CMD_PRECHARGE_ALL); - + /* auto-refresh 2 times */ ddr_write(PL341_direct_cmd, MCHIP_CMD_AUTO_REFRESH); ddr_write(PL341_direct_cmd, MCHIP_CMD_AUTO_REFRESH); - + /* DLL Reset=0 (Un-Reset DLL) */ - ddr_write(PL341_direct_cmd, - MCHIP_CMD_MODE_REG | MCHIP_MODEREG_SEL(0) | - MCHIP_MR_WRITE_RECOVERY(MEMCYCLES(CFG_DDR_T_WR)) | - MCHIP_MR_DLL_RESET(0) | - MCHIP_MR_CAS_LATENCY(CFG_DDR_CAS_LATENCY) | - MCHIP_MR_BURST_LENGTH - ); - + and t2, t2, ~MCHIP_MR_DLL_RESET(1) + sw t2, PL341_direct_cmd(a1) + /* DLL Enable & RTT 75ohm */ - ddr_write(PL341_direct_cmd, - MCHIP_CMD_MODE_REG | MCHIP_MODEREG_SEL(1) | + ddr_write(PL341_direct_cmd, + MCHIP_CMD_MODE_REG | MCHIP_MODEREG_SEL(1) | MCHIP_EMR1_DLL_DISABLE(0) | MCHIP_EMR1_RTT_75_OHM | MCHIP_EMR1_OCD_CALI_EXIT ); - + /* OCD Defaults */ - ddr_write(PL341_direct_cmd, - MCHIP_CMD_MODE_REG | MCHIP_MODEREG_SEL(1) | + ddr_write(PL341_direct_cmd, + MCHIP_CMD_MODE_REG | MCHIP_MODEREG_SEL(1) | MCHIP_EMR1_DLL_DISABLE(0) | MCHIP_EMR1_RTT_75_OHM | MCHIP_EMR1_OCD_CALI_DEFAULT ); - + /* OCD Exit */ - ddr_write(PL341_direct_cmd, - MCHIP_CMD_MODE_REG | MCHIP_MODEREG_SEL(1) | + ddr_write(PL341_direct_cmd, + MCHIP_CMD_MODE_REG | MCHIP_MODEREG_SEL(1) | MCHIP_EMR1_DLL_DISABLE(0) | MCHIP_EMR1_RTT_75_OHM | MCHIP_EMR1_OCD_CALI_EXIT ); - + /* set MEMC to GO */ ddr_write(PL341_memc_cmd, 0); nop nop - - jr t7 + + jr ra nop - + .set reorder END(ai_amemcinit) diff --git a/release/src-rt/shared/aiutils.c b/release/src-rt/shared/aiutils.c old mode 100644 new mode 100755 index 2c8eb9538f..059370c6fe --- a/release/src-rt/shared/aiutils.c +++ b/release/src-rt/shared/aiutils.c @@ -363,9 +363,13 @@ BCMATTACHFN(ai_scan)(si_t *sih, void *regs, uint devid) for (i = 1; i < nsp; i++) { j = 0; do { - asd = get_asd(sih, &eromptr, i, j++, AD_ST_SLAVE, &addrl, &addrh, + asd = get_asd(sih, &eromptr, i, j, AD_ST_SLAVE, &addrl, &addrh, &sizel, &sizeh); - } while (asd != 0); + + if (asd == 0) + break; + j++; + } while (1); if (j == 0) { SI_ERROR((" SP %d has no address descriptors\n", i)); goto error; @@ -483,6 +487,91 @@ ai_setcoreidx(si_t *sih, uint coreidx) return regs; } +void +ai_coreaddrspaceX(si_t *sih, uint asidx, uint32 *addr, uint32 *size) +{ + si_info_t *sii = SI_INFO(sih); + chipcregs_t *cc = NULL; + uint32 erombase, *eromptr, *eromlim; + uint i, j, cidx; + uint32 cia, cib, nmp, nsp; + uint32 asd, addrl, addrh, sizel, sizeh; + + for (i = 0; i < sii->numcores; i++) { + if (sii->coreid[i] == CC_CORE_ID) { + cc = (chipcregs_t *)sii->regs[i]; + break; + } + } + if (cc == NULL) + goto error; + + erombase = R_REG(sii->osh, &cc->eromptr); + eromptr = (uint32 *)REG_MAP(erombase, SI_CORE_SIZE); + eromlim = eromptr + (ER_REMAPCONTROL / sizeof(uint32)); + + cidx = sii->curidx; + cia = sii->cia[cidx]; + cib = sii->cib[cidx]; + + nmp = (cib & CIB_NMP_MASK) >> CIB_NMP_SHIFT; + nsp = (cib & CIB_NSP_MASK) >> CIB_NSP_SHIFT; + + /* scan for cores */ + while (eromptr < eromlim) { + if ((get_erom_ent(sih, &eromptr, ER_TAG, ER_CI) == cia) && + (get_erom_ent(sih, &eromptr, 0, 0) == cib)) { + break; + } + } + + /* skip master ports */ + for (i = 0; i < nmp; i++) + get_erom_ent(sih, &eromptr, ER_VALID, ER_VALID); + + /* Skip ASDs in port 0 */ + asd = get_asd(sih, &eromptr, 0, 0, AD_ST_SLAVE, &addrl, &addrh, &sizel, &sizeh); + if (asd == 0) { + /* Try again to see if it is a bridge */ + asd = get_asd(sih, &eromptr, 0, 0, AD_ST_BRIDGE, &addrl, &addrh, + &sizel, &sizeh); + } + + j = 1; + do { + asd = get_asd(sih, &eromptr, 0, j, AD_ST_SLAVE, &addrl, &addrh, + &sizel, &sizeh); + j++; + } while (asd != 0); + + /* Go through the ASDs for other slave ports */ + for (i = 1; i < nsp; i++) { + j = 0; + do { + asd = get_asd(sih, &eromptr, i, j, AD_ST_SLAVE, &addrl, &addrh, + &sizel, &sizeh); + if (asd == 0) + break; + + if (!asidx--) { + *addr = addrl; + *size = sizel; + return; + } + j++; + } while (1); + + if (j == 0) { + SI_ERROR((" SP %d has no address descriptors\n", i)); + break; + } + } + +error: + *size = 0; + return; +} + /* Return the number of address spaces in current core */ int ai_numaddrspaces(si_t *sih) diff --git a/release/src-rt/shared/aiutils.o b/release/src-rt/shared/aiutils.o new file mode 100644 index 0000000000000000000000000000000000000000..c830e0a791eb3a50f0c2fea169acb3a0d23a3db4 GIT binary patch literal 122444 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

    Q)*D;UkobrRDZ?Cz;0k-F~NBtD3fj6iB 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∨31#h8>nogk^Y5Rv^{D@_Z*L|d5{s| z=h!wZ2K={r5B@G-_A>-NizN0+mJ@-o`6Sv4a(<2BhY3!Ul=VDI%TEB2?0lW?jX#Cj zHj|rXy}wJ5@Re6-}0T?I3>b@Ou5)21|%e z^_uazqS}wT#+nFjwTq$Hs_>~$VmDzq{Fvd?6gCt~>y4q9!f%QJwodopjrE3lQ*CeN zOk+zSHe|ZCA-z0S7!DXRYp(tMN2|ta?(kTz##rxyl&kAd2~!Yx%m`_x*1K6AG6WcM zN!2oBQ{fBg{q;VzA?u6Le4c&9V^uvccY@UBM=(!UJ&LA8MyR4;uu6@K48aw>QI z`YOt0?DwOZuduJCh}J6Dp40g<{g2b&Swi^s0W;h@5BDEVHN(wU4L4sk+#(M*f#I&@ z;XZe&47tS3{slwE0KoMd511j}!9zY~hU_^gcjzH|eu+2ax*^=*>oBlh`v03AuG<*b zSwl1~j2hggdckEXd|Wez_~e84umR0)50cN+){yV>_=3!iYVvKs%qN7?4;u1qXYyr+ z81ikeBH#8Z^6m7=cPEqYABPC}KEcf%84@7hlV34I{vr?gdqZl;_r>=m->+)OH|U_j z^#J4g^9kg8;C;z=#%U)Z--G`x`I0xoyRTT*l7k!-!2DzIYIY-}@}Pta+YXwL;VT?6 za7geK4hjBw7+pS&1|LSq@T^$DA$3Sxq^$j91Fc{2B+im)!>5SGQAg{aG-2v5fo}m- zEoSHJm+;L#0dT{`0D_gnaZhYZ+IeB6ZN{{~vycka7oLDfwExA&Xq#Rewb4X~GB9Xw|1_jf&h zqPhGC_>|yCOcs>3H!vJC@OK4H7n&Dj0 zz>mv)5B@#lEz)~rA!`K(>2e+AKwqv$e5y^&<9>(+zJgO9+uU6EQx1O2#hz=qTz8GMbk`U1lBy2ZkGjBeqBwa?Lu ze)^Qr3BTvC;ulnREl2XdXA~bKiN2OYiQn^>dI2NLq~Y6#8O#3%OTt(Z$p5e)kx`b& zKQd|Vr)E(W$v^UAPZE4F%j6$DQXS(L{%n|#N+5i{Jj&?91T{YZ@kifSL zH>?-<6T=Pb1^)bS!|pc&?3U|q(7o;jJ{-EUL%1#APjQ>MZEi1+X>@T2$)oGwD85Sn zKl_x?TYs}Km;Ph8)>|(r39zVMCX=b~C)3ao%(Sa8nK*KK@5C6Z<2q9D@q2zluQ?ZI z6mVvt<2aEz{*R~&ArW!v(>jf6sreJ&JKXaZx;4ng^W5M=fd&q|;@y#_(V)dNSQKcm zaWoZsFX09VA3{)PS<}E)^N+!e{L;1D06tgN8bM;2`!w;p{v$V0wPj^Fr=SmRUbT`s@^%sRjv0?k$2`Qb=sxhl14-7K1|+p?qYIC&U8+PezkH58f|Fys4)y| zolP_KVh&KO+@EQPqc7o~EU|L$twdyvPq0~5;g>6vYMB#S@c}@g3FO-2fAe{k%{0Wq zpQ$G;PlZN3BfWco>T(CCk`P8Nidhhts=gwu|jRp9Kk_P^XeB)6EaG;Zr-%HbF z+cRbf##XsSBm$YMKgvi#zoxric*aX}=Z3Z_b@ucBN8WIFBB|0FXLBbDA0;B5T?$=4 zi*FUkz;?v&%Nqn_$ryIT1qk8Wz<)IuZ&A5di3sx_`@LZNF-@{Hr*j64#)NOL<|<2x zMNMZsE0`uw&9~%!VJz91({HQ8XNw3LN5hRS;`1{E4eKK4p3qM|21w!OnnUVVm?`V8 zLr z@&7&INySp3T&O~y%M{&7xoEuCdy$G}D&NW5GyP6^eKF}u#Yrx0 zxlANefQZ@U-cmA}a5DK+L2k#3l?fUOF_eqCYvdMnEuM7ULP_JSdXy^M^=>(t)7SCd zWI`TWlPu+vS&gDxipG<=Nimbp7UFB9%TA>zO{%M7SdqLS4O))ZnlB;&eGE~hI?$&_5Ji)Qq_M4ULFA1X%EdJMVT zjfK3f%~i_Dez`2IbCbEi1(LvYGOF{f=0BI{anpGt;?n1FpDrX9LjjWh1M`MO!8NMku;)Pr>n?y@Z0bh!W znrZaj42$WYz%|upN^48Wa;22_Kz)IJlqyAyhSW_$?y-neCYrgV1#=M7R1-Io&Krh% z*Ms<4&#WpS*oqnIxaCqM?#+TYMyK!j@>ukTSW3EuO34gpjXzazrD@q)3IJuA{|?C% z2_xuDY?1nPh0>a}m1IRf9z~OwW{^w#PwE$D3h^>}OL{w_W!zm8tEBWbsq7$yWAU7* zHr7tbaxatzFr9*d2W~|(2_7h2y0Lg~rWn_NG;(MjKz3L^mLR|c)O%7fVQRY&voGhX z2oj-GChN1>A&&WXK@v?)aymlz*Pdi8tqa+&hq~%4d)G}}i|o?}?EbEKO?RAr`xg7O zflxi{mTvnm%GxsjiurF|@$}pFnQz*u`q#c@ueUz7Y2k=1n-(oxyv)AQ+G)#`T6_a*)qr)QB`r*AnVLOSJixO zkad=Q|AsF6XLgtU`3(cQwCtDd0jeLkVsYbbjhp}c^pj89-?!hizp!E8nNULz<6!Ig zD~KcmH-RMYg}Uq^Z`ys9J!F6?-`VgKRSwu)bp76jF1dbs;UWV6wqbz4+iW!ZFTQn~ z-Sy1IMT>@2b#K3I)jxLmZT5{_n-^VSpE~d?HNWd-H2;HT-M(z@iu8ycD%X!?ag)>1S&##GoD>Z<<|L4RcEPJ(7v(d@ZF zmOZq~E_H>*4Y!BBxn;>vBG(mRd*nc9+!(}`D9ht+tKUb(A41~; znEqq1)okB5(A7+s>dTj(iOznS@%)bD=_Z0c%g}Ea>t_Y)|7B~Gq4B3zVcUL+hpnN$ zJnt-Ed;6n!{*F4q_FoL$R@cSXjO{Oktzp0}pMdR`?dz|iuf&)q<%K5f%;2{ON^i1Vo~Ro+3TqH^|S0gnot9a z8%gw`JKkRWC;Q!-ySCCZ_7-cvPIZy|FD4nXOV+0P*&Cbe->8Ab_P{Nn$%Lh=*?v#G zX&<^7Z<@d5Y5S*&By7aTmTg+NXyMX7&$oxvm+gM*ZE6`B*L26Tp>bz5+BZ_?EW2-j z<`Rho4cKmY>Lz%c`6Z+RUU>B`Tq4CW_?QsM4Gq(&Z8g|=)h4#;G9QK8MG}tt36Kbdv1#2_E>?|VLz*j>}0owoG2JM%V2EJoc{be_88g}a<5<>f* z)xc(=GHCD(di8U+SX+o6dv5`IUREr&H$gG&3q3{GM|k3VDKxNY;pNL0F1lh7A=z~6 zi25&%An_Ucr}|628k%`VpL+jSv zs&!)r+1j>xRz!?eMtkjt8t<>b*<8#{R`r+0_MW*Jt9fW5G;od>Gb`Y)|c;`6v z?ASjYU*0rR-M8bA3bh|QKDTL>+Pgy?3$?X1hG>4hlTriwI#91R?pvVt?3hgT z6fN$XOz#~^@9m^}A$$|0G1OMq7*l8PCX9i7tt~yF)^RPN*2zlxJQFF}`*wVg@5fGh zzmwl@x3x9TrABimf1hYZbUkU?1%&GijSJ%mQGZ&SHxf;DHyu{DZQIy5SheD;oYlEa zXuJ_e{oCF>zNe|Rg+{~o=c-+S`zL$;$ba*EQ^>!M5*<8Dvaqq)CVUBXG!*0ep)*2M zKd@~U?lp!~YfGn6D?}d7wzupQ9J|#Ky07XYbtkG#FskN(Mat`rbL!nNS5mB20e^6^>x+lhp4)?MuL^B zATtdK=ffw%ZE&K!MbDuHa3AG#c#K*gL z6W>qSes`#8JIQck>rTweP1~ACp7H)|DztqpjX^aIYFiz$x3})>P-j!Stu$x4L+3tx zSWSI+t7@nD(?OkmZU?>Redo|y#FveV@Tkq(FvdEXx2sj#c6xq$>&%UzeRR*%1Mesr z6XR~#7{dFRE_H)Rc01JSQ0U=v@EZfvht`%?mAQ8o)lr|RZv)!~#tl*%>HpSod+7H4 z`;5#%t}cEeH0>Rt)hLn~@OzfJZ`)NXL_aK?A8I>I>z?k=9^tJum->9)e$iihc8n%{ z0$l{0^)$9ldj2$`*PpcP9VU2VBgu8+Jd)GSZ6ir8Uq3$3gl9yaFvkbB{qlH+Zof&l z@8tI5sr^rD+M~bSp)K1)cJ@$z_IUlVluh$v&g6PEm*MJZykR`}V>+VCU^^sReuROkE0m%m5SEtV1eiq3E zw_5MnC(5pZ=TbQSJF7=ZcD0!o|mMnT1ao<|8YGbhDp|1 zTe`6pQr|jGk=$OXAdjc0jwaMMS#{fkasj@h9x{ygkx6Vjukmft&mH^@p~C>vZ*23K zs*QBgd5u@0ZlBzfc|4l*8jUGrs};jr$905E-?Hlb?agGPaPMSe8Kx5aT!QLPeTQf? zZg&VU(QyaScL&jT2hsARbHwmuCh_Ed+g{$^NxIN(J40=1Y$4fcr2g$bzM=`&^~9SN z;zu1_N3>jTr9P_gmWi-Ms@ZNktuaZo9#GRk>y};W)OU6(jAIPo2RjsSoT733R?Bz; zz2kH>XZ&kghPT3|Hg+=(HMz6x@7{0eY!f>!_WB%>x9-rL+gdm7X4L16`v%3Bp$qHl z#%NtRrbf5cwOOk1Le`h{Ee|WLGwbUnpR~Q$_D5M?LT?(K3B4552d&TtGocTD&HA8G z>jT*D^BTXQhL9|EhhEcja3CxN&mZa7AC1CGP$SELW@Hj$nA z%)8$m-^BOM4Csbeh;HMl9c-br72R-@+MTqHf5C7s(#x;R0)_*$A9tvkt9)7(IR-&K3Ijn{pLtsbu) z*l~ll*K7*|I&mDe8%Mt4IQ8YRa@sgS&`nP$xT1L+t4Hfq_+o^rCROfd1i=R~k)V^-kGQz7` zf3Tsov7|nvT81A{^Y+D|*EW(JP{W4vc=VVoJ#NGn7*mMs>f6WXHj=J6|0UJ&F!5;z z@o5L~X$SFX2k~hK@o5L~X$SFg2k~mhYVGrEBw0Hi4z)c`ekI0k`u#_eC*WZ}sBuqQ zcWBPT8w0*igxis=)qP@`&%_SG-DH;!lKy&}^yPv5Xx~C|vX=NZjqrBR{blO&WIOI7 z{npsl+V~iJ@_kL#+KAwk_!aPPYe{{Eo;BRlR6jd>W?z`I=44euoS9Kt-A9Ox6%cF#%s^lyZJCgI7^`@ny^ z=V^M+c(y@}=Qol6`9-?7%Nq0WWSZ~EI+Me?;e5p^;b%*-=e$en-^64z~{3RD`4PovvPdY8)$+6{XdVnYG zL@UheL8PA$vyuaTrtszY{hgXG!-y}0cgIHN%dr0uU;ed*FL?eh@9k#(LobYD+;iH- z@clUt?<8Hjnx0=wx-?6=wwH8mf^hZ_?rRBOH|g1Bq>C3|-jUDy63xxl-Mdx4x_|#L zieNXW2lgK!9|-a0*&H)K?`_03VDgu+ogmJ!C~Q${xP96Ds^P0ZFguJaQry2d)&mBL$>wHV?I{#y=tClnVKOUdU`U-NlLF=G?DtSIooUwsmn*aZM83@n@ zdP3&KiT$c5Y*}t>1LKaXTjMRVFVtP&h#?h_Lq2oF~QFraVp`C;89CVjm z)gI1D5bpSI;M(@hHSlgFX9mpQ-3sq-S+Fy7uNCZ9z4UAKE~-bjK2dj<9mIpSjmrPS zF092v>#ORpGp>{B+5&ah8s9l|CJpw^Q|~%u*WgdpecE2ObI2#^KRJl|YW}wJv*Q-u zX%kuMs^4`;o%pVo|4!YwKpplVb`ITW^~&o%IS3v290o~!P^zl0$GES>UfjCt6u;@6 zr|uez`_wI(Z{2|>bX5)oI2%$Q558PBYpZS)J$xB2>y~tRV#AdvdigTyH;e`wHu2q6 zC=z@b^Bcy34IB9GRR+Y?p)6PR_z(1$yZe+-*-|TxDcPn^m*y@u)i-g~auxV%<_Ee_ zw8*n4+N2gmhpIyJ|MZzgRYi6T{T!}Zc~14S%cK^C(54%O&~qh<4N{9@x6~S>KBg65 z;9|LiP;QgUT}tLopl^X^7JKhm0pwfd5|8eZ%e%c-Rt+s6K4?MW(-OSBT2+l4e=;zy z-yo#)!D9_HPIq+`IKHvE3V(sO*PldqJNb4u3ZZNi#kEq4VyD!icu;Clyd||L-jUjO z^b2Z4S@5q!Aq0z~xJPR5@t*PK39RHJeD|s&RJCDViUr*4{lrP0sD5(`-}b}_^GYU?Cl$~V9o1F%3*d!5C%iL*x8;d$ z6q|+3yQnxImoHfIP!02?_bX96!QMT4sOrXymdV}i+nDZ`l$l}O zFg4>D|8f*!mzF2|xB4Aej^eOY^{TC2|C6x(Wxkt4!@Y9Z5;8K8G|%{BUiqprV_u23 zua?VQmSL1P34JZ&O$=DYtz6ZE2cD2i75EEG8}zeQzqY8Vq2N!<<4P2w9eYlEV3h%( z_r-7U`UG%RbrtZ4-Rm(`xX4zw!e2md9a4W+Z|&yGt5AqS?tVlW=6YHf1M5*$Z|Trg zK~;wCE>?f9GcT*Z+Zj!Ni{S7!#A z^=K@?M_?xZKB@nIIJ$t`!~M3^$2VHR``WERaYWP+3Q^+SDBh7;6m_CnPyknr^%ZAi zB?_6*JXL%I@}8pRx-XyMDA6EUqi;61a-f5w|}AWwoDUgbBu3JpasdJKUt zh-zEi`QRP%~G1{xPQE|6iKH_0o1x(|G4CW{fUG`G3p{|NJ0q5@2~C`564Bfm3>_x19NqWkI$b)rF> z&+s#OpQ3p@{t`FL;|RA1W4^W@#N&Opn2s=Tk`|9}i)D2hz{N7gyc~so@{yB0c|e{F zX#f{xnII@u+qxbX{Wj`Xpg3geaq*JWqv)yA^*tUvx>3At>R;CYwSV33*@2Vw>v6GK#){%qQ;&<+r2aMkO;1$4Ny4wF@7wgC5SJ^8*&rTg&jFw3 zM^836qJhcrG8MD9pHUPC__D{B$$+Tzpx9R{H9aU^l-d{Tj9l~t`>i{RW9J>xm%yCu z@jB3Rz~c@h6=Cb~h0R0SNslhz$Ey^Ao(CO)dC;K(e|6jsR?Ej&f%WB0$C-kge6qgp1uMwBP)UMn|>q!NpMZ)YHR{aF1ht z=X-+hI>68Lp#2locR}rU`K}kVA)pjTzh|fal9OPDo4lLvdTwl!WugHuhA?9#k}PYs zJn}3v_u;1>lHot&4S%z)464llqQwXxG$PMB!Fd-tdlHyo>BC>ov+`A{XvWD`a?wPh zpc;oz@nIRNSy#%Glk{)2=#-Lag)g>HZ7Lg0^LJ9{I^*JzN|C=(;=Lx# zpY<@WDJ2Ore?G$0#DT(f))n|;1=Y2Dpx;!vQuT?0(!qE%uZBM9-S!BvT0Q-=QjQa^ zluF5b*$EtcViF5)@K>j5|BP+KG{v8pI~_Hpsc+WhZe8AO?(65z(eM+xG&5_1bbwV4 z{toH#<(d+z2!F?Pd;Fo-c)xK(+LR=yOiIH1nR?UC{6R-SSTR;lD3v&)aCeOgG)f<1 zg3{ff{Qlw(0Uy4*U=;p;R}T$;xDJc{@*$U_xHrhZ|EiLCfvNtEU#*gHFgRZ>6|&ia z$`s$vclOFrxbN?WF@Kc(R{)wXL2+W zXG#^+uF}O!0TUQ=8pr#D29-Qc79|r*2Zztss8TkQgWM|`ZmyCoXH+rc;B=Rgx$H!< znW&3HXMK2Swy=)+%2Tq`m-J63$@}>Pos)=`qpDCT7b|6l&kx}^ms`k3ah?r_q-e|z z_bNt&E0oGAM+$<^9;r;KRB`f2=`=l-DfZGo^dt?x3Y=06wpW8wtHEgshetDoe0BAO z)!+;j&#p;i`r1!arTQqR%Auz*ToDDz(NfuoF|FK8EDMQBMV(Ya_{1k13-p30A6Zk0 zyi+6@(u$>!NTOLeSyGuoG|mz$B#U6zifAow!BMC*gg%wQJdhKdPMRp!P6E6J5=LSSK}|Wy z{$hq+rxI@2pv zkSUZP7bNFSKOZ<$D;Ce2x6E0%q#v!zY zxPFJ*n}e{X^N!n_NtIP4N4502WIqi=-j~Wc*<69}fVDJC1iM!KFlAR@rmsMhIAzw(P96kq15Z!WnRU(#j@EhVT7^B>E(IPS35sRCP#+g0Y zDABIe&&OFwnK+_Uh?WjMYHLiB%%O5A%iXQGe2NoC{?H-l2oi>(Zsj^$Qt#f_gens+vd~XB zn#p!_4ZWt&myFAiL4HFVa;|kPX+{zao)C_+&aLD~T@bm-pnG9mo@AY7Hcl04t*QD_ zZce(lE|H^xCzB(m1y!D8JVokOx*98r{FnQkXpD3QX-=(FrMUwQorw`=Soslci-l~I zC5yVuOd!9)Rm|x`Ar~d(oQrF%!=&Vy$%4@jIj9in{aMLogzm2s0VM5Cl&4!!!t0W{ zhbF;kLe}q4*^E-g!~bZGu7Q|WST#Ek#Kc;o;Jm<9&qV+3vUJJ2XabdtP zZl{FVKtQDy|B!ZlCeujFzh_b!>btOFZ~2E8f{CzY?W!d7F$(==8iF)0#o z!z(_ls;2}CE#!!t=c&_u!AY>v&Xc+UDtg%(RmzddR7Q^qh53ESI0Us+GVgMM4`g>h z_Fkwm!bXz}huI-1H0x9%C!W4YKASJ*G^-+3&?Wc^Ja+11b`6^+nfnfYT%IV`=c{L+ zmZ^;wPtL_lVslVWwpB%YSy-XhVg(W=9X((unK+{%WnG5wVWL-f+B>mi8a`4vPkNbr zE1nTX-7?`YABvT1HbK-?Q8%Mq42-dgz$}AqoNR5p7edYkfs7sB%*Znthpjh{LC)Gc z`r81?IDd>LMMKMHbKFpCEs{UCH%|Hl0z(=ol_6cL)la6N9U?w-Z6uHVMSaK}3Qg!t zG?6Y5uh`LqJ2aUbibRD`r`+}VxbQra@2k>CTCn5!zPP(it>LLcPA9<qa#sW<5x= zG~UZE@Q=Xbl)vzs8JEe4A4`lQT9Kv?EJnz+9Bv^bidGSqXvXYSJ4$dIzh z@P^W~LL^0yWx=fJS-5R0t%X`CuCeRB^qIl(Z!;r5(O`cL*`h9 zqylo&M-!U#Z`lzGh$HvHG|{7^aS@`!Nhfn2bzN;~38CY{uE1l7Gk&s?<(LCwAA2i!)qMj8e~8_<2GagUlyQLh3lV zSj4b)B370JjQgbHpmpp4l0D6mbYsBOE%K#FG%&MS)d-(_Z=EPsVxN~q8G+4>N&f>M zG#wrJ01cU7a@SZT(p?f?B0wz5fv2k{Crk)UsS-~oj97nz1&%{0ZbB;f2js4JmMu;O zhtc*@9}r*_62t}`G${x4zu=NvsZ93BjcTD6KETd_0i1+!F^P=~R~tmqL0a>aSiL65 zC0`3;$BwL?@1-O;h3PcL0;vjeonnwmj3t6CqW%Df33PQ3TQ+u_JtdCoXqaTP+0ByZ z1JvVO5*cq#XvrI)C&_z(qngU=dFA`4;=DtFlPa35*j!ZAO@n9cve=Tq5Suv`q*uWt zGJEh@MF6IUxf~NHm86j)TqB7#Dy+gL{DyKg9nTqc&Q4~wAcO&fC8{y{4kj*30!AKI zyiEQqWKcLD-)RA@@&)!Nz`$rOlU+}8L18m1bBYNoh)AK+;TChu42O74Kzrm%9QQcF zUzH|Z$kQvO1wv;aSlI`Aoy&OEirk0ZfR7waXqQpG2L+5`QDFV`)Xl+dA$LTF8Ho~k z@1F3+NZUw=18R|UksU^EfSjYG?#PmP-OK0Acj*6xD=0#x=+twPv_+8EPxQH1CrFOg z+{9m^Nd>xHaq@$DR8A;_b|zHI=;$q^I10=k$4 zr&PERo~o|nl=i>Cd@aw=}rpagbtIK}z?G8@{AlMoM75=>QLe4an=BOj`w4ryl@ zh81Z9adTYp<^(g(ER&gHR5IZ`(=1ss1bUbV6qZq4Ko|E#OYV(YttnNf)nUDNgEKU|N267iA zxJa)1y)MU+k z5nwSB&Wkj_6X}Z!lgW0PfQSUVD4m1S5I>rXb1xf5(etj;mqHMMd8W-4NAcucNV+p2 zS;l0UQv{r2;R#B9W(6v|l%z?SLGDBxGNcGdUXacciizcmC0NABop*yv3N*!JO8Bvj zKmW+05}kV2r852GpqEXiO-vcfhPWBoY*hfO^K;B+&L+a|LN0`YSekfovI{y=>|>|L zgabMT@?KA-F`kRwKn4_K0v{1<1Xn6#-m)6uq<~{m`y3D^3Tc+&LN!SCrIHuYq{#77 zH6fsuKJUdj(vh0WBIMLwRvRT*MDwZCPjZcKh`AUds}w!KC^&Q_sBy%-(5#hIqP9g& zv_c+0sSpz#$kVCls`*P+w#;prHnDx;w3Z2J1r1+Ln#5|MxZXiXZbIr{+~=SJxwV>G zFi_A`;)lYwhmm2z6FDI+PC$fJ+ATQlniz=6FY%U7#HJ+k(7aBn7sgpU8yd3kp%_g} znKD(0DWd0DKbES@AUC;)Ttp}rHqPZ}u1LPax@1YG1gj#i#S2%>!<&3}SqDx?5C{w7 zrKwYhl6~4E*V%t^)?)A@3)+JDIRvweQ|5d+$B(f%5k)On-o5aOdCSQeqIWOvmT@@Z zQu?8DELtJ&xQ|ED-Y&)T+BI5EF!6hwvNV~=6bG@{p$Zxd3LPAoqipCU9Liw*0^xvm zp+V9@A-5)z&0-})zDy|;K!!5DUah4VBz~eusdzraX%_yfp2U^Q7It=jWEs(TVJG)) zs+b%k_;oL(dYTk7#6<8M;FO|R-(rHi^Ip9e;>8-0+@M&PEE1ScQB0az=>!v7C9FJh zc!z`zyP);h>yL2Rd>SG$ zwxZp|!+}7NoiyJmBv}$&Ooo6j3udJU-Iy*!m_Ae8n3W|#q!yW6SYd?Z$e1}y1pB!C zj444at8=!zdc(8}>MuvWd8ra62S)C%Tv6LBb;?`P5}zb!=Cw17RC9rSCyKR`YkfCO zPYU*ulKDQ?#^~OK?ZF7Gln@SFcp+zDL<@1n%<5({*>B+}F(BfcEiJ3Qc3##Y3&m+z zy*C05N*;3~u@*`dZXz$Yu}#o6(05G{YQ{;Ii4F^7Mp<8-MD&1XtbOw7i7K%K~9fx`^k&uF3p@S#SAGfLNRq(JKQ4}VUC5eP!)hAOvU$U#Uq18 zLuS-LSVP`OT%5L;a^@iOnTw_~lBX1J$q`kH7hN=k{Twm$qB&3tGO^f!FBy8xx?Y4e zQKN7X=B|@O3#XR@5r7g6!#S8ZJUPdg3ieUiMN%Szk|UIay9+BC&ATbOTjg(>gsM1L zj+ft3nAv@-X1E)?hDaQgJUG!-^lq7gU8l_cx?>hfva&o!AqiZNV#dqzOWLuRs~GQq zy^>@xu2YE+4ZVs^CLEa>?oBdb!thGIn60GowNc?YG!iIGD&2`obf#Bt^KLX{qJDf= z)nCvf9|w_ftdvP0qlOqd8?EGJ8wNQHSF%<|Y9z3B3wfD5LyC)nD>O!>VKz>2GCbd8 zrb?1o;$=}9)$4>_{=&otSP3lY^$&K-#odktH%G{W?9AgO(o2U$D#D_q3K*`rcg=lBZ((60qDh%^%{k>lN=UkeCVkSMu1K;2^^bR??_y zot1bTQ({e}XmYJ58H14x26xYfjXYV6TbACT&*O6C>g8Dg9)xCeb|p6xW1O!!|Y>YzYp zUr0w(5cPUN3VY3PZP+3vc{fK=b~Qjr(G;T>VhL5$I?FzhSaPCk#mx~-rg{s!j?m9e zGls&m!-ZQWbs4R~SUq4G=PELR$TcpN1Nq++IUl@t04Ww7`XD6K3v6uuDa=_bU+LGH zS9dAq#Qe1gS9Bsazv!)doVbvcN8dWeU9sautjh8phLp>RJ7Xo=^&SY(fym|QPqsT{ zSz{xKNn*J^U*NPEftkFU=M5>!HK{h4{%|gc`_;3FydRgmJx&xjj{fwyM0(iHK;fRu zb#`%i)qwmliruiOjQtw8^5|EQw~4Uk!-kiNL{kZ@PPhA)Q~k?nC)qd6inT8%TXx`V zCLAUU^_rK}y!xu_91Wa2XVO*9!ljZZ@mJhsgM+s(3hoSC-QX^~n3M4t*Ozb$)e+Z} z3t?S&%YoJ_#k4Hk!=Pegf@kE?siNLs8P)k#qXlHGrk!LaWoS9OP1Jw))F90h#U?Z@=E9 z#<2&pi&r-)PAOjDOp3T!aWNF)8Dq<%PEw_!k_;qDibs`Vk1c`6Rg{x_I-JTtVUUyG z>riZxBV4j=bji}?S6sH3XONRyBUvEP^PV5mF1C_gEiX~Ps)02#|m*|PO_q@l0*OV9!r{j_;&{XJCpyt$TXl}o_rM~$ZK%tkUtZ*!sdPUZegouXo;LNvj7*SHA)^;#g!Sr$&3Y&!er zA_d@`bO=TeRV$X5Pirt6#Q&_aG}(fZB%2(o#q^EpMwJ&lf~3z>Gf)Ow)}`6O~Usy6^i}xTHWW| zjBJBXWwkaVGsbKF{W{Ia&m%naw|+vE`5VNw;ZOD#j&>i6qbZER z!H){>7~?Z9tORt_zjBG$8i6=Z?+etaRxwsevj{p|`TlfHXC+AR5jFMuk(FqCa|omA zOdJ0c7a87sDhKfq!bmt*uJ|*CwN3E68I%a`t3u9|6|cWCpL4`Fq6v*T3xBq_Ce3op zo1u$HdtlYCP|Bp)mBQv2F}T{}@U)WN0q;k!+!MCY$hz}JEod&u@bhjp#v>V!a#S{} za$q1*CDWIOsdqk7PXht6i;cN5Nz?w33PePV-8;BZwb6-JQbi4mf8fhAIbWo~@}h8g zZ?@tT-f-p=UFFR5zfk&5zGSG^4cmu7<@&F8=tA+w`db|SdxvjFQet8D`93Or}vry6(U5l7KWYLykSU;L<$)< zH(9D(&%%mQqLRxYSFzUHG7v4LIhLcTkJn|%SCpd!4jGH=dQ~p3cS!b0zDh-tnJM>s zI*dk$M5w4lUf_e~cg@0s7qjc7EWJgPy%ARJF)du{5nhmf&&tN@lx(lo;dP2^>e^nc zGo?ykyV=KVe)-A?EH1=If5do^#cX2L`E96Z;=9>IFK%2efx%178l9#SCo!-9txRgh zdqz8#qH@Xc%J3pcPS}g>K1hj(I25B;5+&u9f!g!ehN$y;gEU2@8G14Q>=n;Dy(re7Tx2jcm`FI1YUp0h9GWRpn!)s>NHY83b-v5FnR_gB4LpRclW&_r=+T z0Tm8qpvz=UfZeS`GFC}bhd9MUhANBmVj>eJgz_OmeZj@r7bU{C=29d7iS{TPgE~e|kg~EJR1?r!ra+Sq2ly zA~^=)7b15|(-&EJ>~r>nI7+%B+TT8%`zD^GEV9HY5J9$smqBS-Vu2G@R|~3%CzkL@ zw9DppV`1G}C0*Ewp0LtFp4>|W$qE)!oTg8oXSgUF$gnW7V$KxBD)V8xlq=)OMe|fw zwK*!IgL_#eW|f5(dU-JZsXwMrj*sKvck&#`-ip&Ezl`YUBXpj0nj=7Rbckn-)+?T1 zkfwt&L%s*T17tmc)oe~q@gY)!48xS1g9J%&VH)|=S|-`=Gn;|5Z>D|K^3>^wX`r17 zvhb|KBe#U53%xIdb&1jOzMPYjs<-orpNcJnvI*WOHZDX>z>>pk#dMZ}S7q5e@d^c} z`lEWIXpu}hxtJv1(e--5u$UG2V6Tu~XL*>X!96yZBH97N2tgdZ0Z7(5^!ZP-M}{O; z*1!^L&7vGu`gk4BSDO0RnDL2mq8EvYgt*_D$s8X`mY1At*uC6j<)@ltx6=A5W^B$Isx6UE`c8hZt@ zFG@B+8jXytmT>#}Wh;(30fclc>j|9SCbwiQ+5cP_alITr)gqJ28HFjQ7kL|m=nEXZ zV{JX1SMJ-VU5KrIdF-P<$s!}^Pw&Whim4DhtHSGT<-(d|-ajFQt$lj=hCB|fX|a(~ zETrBT&30Nl>v}gHViGtG`eCgdF*|wYxpJzPeTS;U*4lLPwj(~ag=K^?Z>ChiBZl6V z2Hu`9MQ0tv%}zL)ize5P3=b#!feTAwZmxP8PVjdVN&d=M0Aj{U^wc*cxTAqa%bo{v z+79_>I(nc<%A3q8Y@j9Mn@D;oAkOJ({}lE?F9jKtk+VdKn3GL=edEu$lO4p(}6<+a(Yn@qxx#*#4gEV&}g{+g#g z8>B5|j2C@CLs>x5TZ{rb){qCFLFCyL!b+3t?WNR*OnJWrkxJ_^Qd-Df0J|*1A@9n) z;GG>tHG0;SxIKM3uQ*lMBH|7Pm%yY+mV3+OX0U)%e`kZIlQLWBl~eKdox!r?D1fS% zL$#c<_FV>6tvcI{_aYlzon9k(34G&&^*SH@#xZLXW_lZwgI^tiagZ~jp31_xptKgA z;1Z5^V1SQp>ccJptIv`}=2kDsIyxsQ8$w0kbc%uZ)8phzhIAL!{mp8S&br7_1vE}F zolCL@Sryz*Y3EalG@nm?k>vLs|54u}xS4sHB3M zdqwxlZbB13Qs^RS7cXJ5aLK~%g_kW}c=bHqT-ZKirsQg5GXg@mLb-^28oU~ZT_4!= z!JF~1b6SioPBrq$OQb$oed;}+BrM3cWwkFu1~e^6fl|C8;&09hD{V#nNk)ni2ln|N z2RjKJ$qfic6JDt8(L0xsV`+S5!}z`8Vsh#SN{oYSv!7UEIjt|vW^tC$ip0U@(+|jS z`$_stId0O|=69E=*4tl5f}*!3!`_-tQ%FABWFEEH2hXPAK%!Bk?1P!@Z84`LU!Gu_ zh@1cpK${4wBp;v%tf*kec~O<3I;U8BB#JX0X5*IZT0r#YISAa*UdgS)0?7`~Ou`&W zH0$cTh{?LyXcV1=WnMVNHD+g-PDt>c6!A6v!$nm&^LEaedy7ADbL?EPV}K7lXuZjM ziONdv(C9PkDdI@GyullX6pZy^iNh)+yCm6ohMi0-Wmb~;xL%I+^WiY#PzHM8K7qq} zyyBDbblDo-(y59CH`8wxkW;+fq}TV>i6_h<$qsvaT@x4ynO2g1@?(?Hvgu|&6B9(% z-$|L&TgW9RflTC0Oe!S_|0Ht2$qApN#e0%licct&CvhfH{+-Z1@j?zusJmu{ke!g- zNqSeFeCmOx`{XHdHjLC?Nh&UsVus`~6nq;U>Uvw@$xrY<+hw){V3o{?>2vQ`dD9;P zNb8MJ^spnVvB)1Vugs}=KD@2>J5R`|#A0l1N`2zW@Mdg>ojrKYvYcbwQc}$s-h_|!SI6vC07|`VtKAF# zTTfMcCp`M#{Ve&seHGm`hjh&@!S?o=ZwXEJotTRLJ`VPWwNK-{SYF)kFS^1(%t9{< zzL_&YcYJv7ZmL6f~FpGZfGz-qCX2 zfh5S0ZIKW0_-kwk9AvV>)bhqp<`nNF%(xz{$sK{m!iUm=+f=1B`x|6)I7*dIBC&=< zDvH4>nUvK&Sv^~4))0}Xgj<2rB9*-M!Sw1PKKh}&oo#&V+?O3Vmqm`~UGZr}cJ$c{ zeL^8mQKKBm;Nw*~A6+gwdd)*COwqNxP{4XlrWwD{+Ynj79;J1?nRqYeu#-!g6G|^im%ZVms}vLAVsHm~UKUy!={{cZ4UBy!(LV|Kwn`N&5nTwZ1t_f2G6?=CJ?e@6qdXb!B2cS`P|O7U`3#{1+_OpflU za&n4q$n}Rse?6#qU>Wpv5cDg#S8hSTko^%~5u}tZ7z|p?*nmNSX_0Aw*EjTd2SAB}g9RiwDFKISiJ`7R`46 zjrJ~i0l$3XrD|3JesfQ+bofU#QhA=bLf)VQ706X8lh8xUfc;9WrGDsdWSG7G zP{h;?9Q^V>zo34b3A;w7haWd|UCC`iyj zRg`q@7E6Lr*{v->iNgsMy{&`SzLI8Zqp{W{y(cPF%FA*Ry#Rg1KGmlWSuwE}j88}75!{v^~*H$tm?*xqZSr``|!(=Z9e8&FXC=K49Pw^qz1aaW zBU^SPSI&L{FF2{S98958yvU3dLb0F~`P5*EH?`^YKeNZ3&(6c<;(!~HK%n<#8z z47Rv>XEF3n4H^B!s@-ke#H)tGD9{NXl=Z6polGZIv0nA6b*S&bkPrPW z2LH8zocRfr-l>4yN^`MplSE5ns!Iur`@YH?V5jd^7kIAY1i_j6Xg$o@>76*yO}?#{zAQJhaYYT z(&bvBONSD=oS}TWe4qy3(I5F=;#bPYH?jubJ%kT)2l&oXKE4?>_=-RFzv!=&k8f%X zzI_3{jZ{9qMK$>Pe^ULWeuFPv({9&K{9g_Twu{%i_qD({&Qbn*D>eA=a}>d!Of&fY zp{CvLqy8@x1l!$S^WL}Uy^wpnceL`~ySoP8IX|oZWsKM9q^ONKI zT@Ahs0eoYXk8g0OhJLU3zXYL_k1rIe#1NfS2@NNC|iN7d;zor^|dtZ=W zQ31XSl#g#(s9K-)|Ev63g!wc0CfDGr`-a88;sbmW0{G_D;Jfy>#Qzcga|ZQgHTXKe zX{lpp2);=HeBCwpZu+ZIxj_HS<+2)l(_XgtdElF(e0;q%`2PLfYWXwx5;gc{5kCAH z5b#Y^KE99E;CtwAqC3r>!MCmk-|K|0N7E0s+2H$_#y45F`^Gw>M>}7f-^E z+P`3ZoqFSV@Sa`slwH*mz|~HOtxlMkkWuptAS5vnZO@(UWnl8`$O3e!k_$_ z_0XF8jVkzOGnIpIkQ0Cd6M*5S8u$!#Ih8HS{K#{N{U#NF*XnBnS3iGN4Lq_2KD!1E zS}ee$YT(f|aBB^GZVh~14Lr66{-C-|iLAD$llA|C8hAntJgEkrqJn=m&&VJ=y#}69 z1J|kGpB?<^8ir@8&+2PP)^MWwJ`Hy;JWM@V1rJx>u4+Gme;EpY%?vlGUuk$Z!)K^J zX!vf1&r*L={vUXJik=eiRfZEk&j?Hr-2YGwJWa#k>~P}u4Ig6oT(wifFEf0ey0;1*s~*-cY~66;|3M8OR ztqSK&5dVG)-Y5BVz)3%SbkhB4C*%aGvH>UL0sIU=b?hIA_-o^Qd}mqq{8Y#JsK>7{ zNSJRDl;$k?$u>plus;~^2f}eVhla>l9zr>b zo<})bvC#^Vvc@l6g+5Hrqohvspu9}{q|jjbrPvJT2cg)XnxBYlbWNHFxp=PxIRUmN!i>A0K8NzQ|X(gkNzd_wyA0V%qp%4i@BttjZ^u#Ln!) zw>g?0a~@Z78-M0;W=I<>$!e_24jjx;oXiyd##6k?_&b8xSdb60DxYK$JF^ep=4h_r zH~fVs`4{g<7rdJlSe;L^1-q~>$8tIsa4o;(KK{Zbf zS8*Hn@&vCiK7BAd3$ZM#vo*VO07vm-F5r58$4g9gXYelG$Fh8!jo6Mo`4-1;1{ZT9 zzvmHNVyXQ?_Rh4&Vq*W(t>c3-|C4&++k`!TM~;7ucI` z@dHldJRaqF-eiVc!J;h3>TJN4e2D}3J}2=ruH`oV%;Wrn(XE%r%*@M@tj(ru&mJ7W z5uD5v{=_4^z+0StZ*UWT;&EQ!-%Ot;n2SYNj@8+KtvHMyawZq^EAHfep5kA;BX96- z7GZhTU?aBWD;&U)oW}WF$DKULbG*f-`GW1(gM&Dl)47NnxSNN0kCv$HTCVl_U+wtSJV zaxg#T0qz&AOJ6F8HL`4zw8 zuRO`Cj4vF_#$qhb$Jv@MF`1umE?4nC{E5eSiT^TFkzgK{U}ZkRcI?Zy`7t-}Tkhp? z{>jw$2k&A*KEy{^pDp<^-{5>2XGWW;|l(V zd-*&6V!C3%oGix5ti#rPiOC$w@%)sFxSo4>m>2jDGZhc!r7WZcsC2PEFWV7He-AC-~f)~B!0$a+|2KJi0Ak>vsDP@V+mGdO*Ud1cH=OP=S+Ud zjoiy)yu^Q*sbVk>ORzGZU=z0EE9}qrIhk{~l$*Glzws<@uzIE7(`>;m?8_k>%jsOe zwfvU9@)SE&4ld$4?%;l&=5;0{26M6~E3y`w@TrG`Nqm8Q`3}c(Ceu|3=3^;7$rkL) znOw+q{Dc28^CS9YDL%p{*_>VY8i(>j&f*eo;`cnv3{`_|*p>Y_oRgTs75th%@i_lv z^q*zqT`b6l_$ceM%A>)WY{=I9g-3aTx0vCvU~U#;Mb=~^wqZBE%@6o7=W{K;<*z)& zYfM)?cn|Mq1=eI^wqp+ter+Z@B`T*&p@$pbvY8_fDdFfU864m+_Ahj0w1 zb0ODrClBxpZ!mrBU@jJ8bw17Je3?BtfFn7Tb9tPX7*{8lh51>URrwTK@N53S!#vMh zOkX#6H;eFLKEcLp!|v?Q5nRAE{D!~qB>& z|K^=f26MAGE3-DAWk*-`xtiO#kH7O4vpf}ifFC^_EYQe$^7F>QW!%Eu{EcUM zgXxU&(pllgl55^lV_*&cGV2#-@@vNzx2M9$$-ZsKlUW&BIQY%Iabe1c8bj>#O#@%)sl zxSLlP_i``;?_()eW(~IHOHAfaj_0S`z;C&iCwPVNU4z+Kh-F!w&#(^%aTKTVbFSc4 z?%@UAVuo(P+$_b)tjQ#HWG@cl2b{vsxsqG>15fde?!jy<&hmVW_4zzsiK3I}o`S8^No@g%P?;niR+7H1;sGKpQ7%we3! z6t3hp?&B%m-8Wc>Wm%oiunj-tr%d4jF69R9VEk*=hqc(A-8qzFxssc?iw7B>9L&ao ze26vJkgeI3{WywKIhX6XgTL}5ukyavgB4hl&DfE>Ih5l$lMA?-+xRo12S7yTWFb~& z4c6xUHz>eE3yuo^JTul_c)QCaXG){30~zL1A_OkC@Zlxo3S(dawtFI z9IoSDp5VW{YhW-xOS3AUVhbkoBhKbhZsrd>!i)TunFj^)u{5i(K3lOH`*RxSa~*f` zAkXm@GreV8mS#29XDfDNe~#od&gVMr+{uGH z$6L%a*!V2XYOK#z?8g2a$!VO=b==8=JjYwiG{pEU&1$UAR_w<99Lf1y#~*o^@$Uq) zGA~Oqk+s>B?b(9^ID(Uz!sXn;A9$GOd6Rbz4d!A|R$vV_WE;NB*ZD3#gw<}U8z30`6R@L+ZpVhuK62fo7o ze4mr}8JBT0zvm&I^nTd4V^1=ZIh~7G(w2U_-WM zSH8hv{D`x-gq!$15Ay>5VWyG6ynKLFSdU43fqnT7$8#pXz4MFG_NyZ zY%nK_vLb7-3EQ(L2k`@b%mL$q?{XYxa3R<6TmHh|d4*}l2k&A5mgXa@$LH9Iz4;bL zb1J{!N`B2Bd6XCV4>NukyqCpUiM806ZP}e~ayTb)4wrEwckwDyePlV9lU4a7lh~Pk z_%=uLW6tAhZsX59&OaD8A()wYS(1sY&8BS69vr|CoXiw1=NA6J!#vNM%rG%{FH10y zb=ZuZ*oT8TmNU4BU-3I0r9vu%*mpx$XaZ|_Uy?){D2>GKG*VF{>oFl#&lDI z_wasJU`;k=JNDo}j^Z@V;~IX$UwD$&m@qAvi^ZA9x=dmhCUY1kGKDL-jr(|#*O>6J z@mZXStji>JVKRqtB2&1M+qjP>d5sC57@x(N$hu5o7bbHUCo+XAxsCgHlGm6p-S{ld zMAl^zyD*uTAmSiGpvpsuo07r5v=W;c-b02@_Ri>RC z%)!De$H&=_{kfUn@mHSYUraM6coz%uQ9jA;9M9=o!Y$mz{XEORnEJC|X69xwmWxau z`#oTl$ilJfwa6l|-vxE;*qu|=Pv>my%jMPln&0r0y33InV*4d;8aI02aWrmr=1K|m zh2%1PlnqU9&8~cdW7SRPLM}IbQ)H&ta`Ky$upIw2{ZeG+*m)_ho1W$K&`*xfL*0X{ z#fFhtV%v{NpNILno3FRJk(|caky&HM3Fn*dYtw(`(a5{v;!g0iy1ZY6>4{8Y2foI^ zk=bJB>wN!8|o{{ zwdJ&R}}2gyS?h97dKeiq70xSc!s8;|mg{{N9v&kJT@cHTEH^j}&o%Q}3DE!mcx z=7s)~Ih&kME+m(hE6or6 zS78gbX0rN0k-1{qpTp*d<(XmnJpKJ*`axdcpG;T~>T^Wqjvd#`yCC#ea6#y&0vnp% zl+DfG(e!TGdvXBZ=4f@3%{M3V-q>{?7Z~?Tbzk$i=_h%~{P7DzPT<|l&0-6~{13_H znYb{_|CIa;Te2;?n?G6okjOl-?adJj!}5++H;bREUn;MXx5(S&ALZjbrTwy;dQmVd z?_Lz97nJXp%g9eG3d>cGo%kYqsqe3TsP^HUz$skJW&D=Ac$mj|O8=Mje@lC+#lg(X z#-fWu{ezKtW50W>6dBvDRThVS8nB7_)^Z2AyF6T;rk@#H!8P2jez*K151Rj?e3_}f z45nrFFT?x=X_b8dsDV!C-zp?Paeo&`Wa{XRPEC_pNsjGx^LxO zJi`C-nttP##Vio}zGB8@VZF013;h&fiDjYwdHF?lH(xLIQ#aJ~544Ztbk5?J>Q>9^ z`5*oKVETUThj^A3`H#9gmxr901zCiZmWO_y;mhpH@thJ_FfQ&B&Wwz0m(P}4UVf#1 zyZoKJPyR!`DW_Tya)uQlXO-`j3&=%RgmE8;jGa$a&|XLTQ+$rk^F{r;9BnHL7wJcj9(kPixpUx&$2yV;YfbL72Luf zc!)QdeqAsxORy4au`x&85f`p&BQtnzY3zD2Azj?<>%u~jvFp65k+JKx`jN5gvNn;i z>#I*9W9R$-M8?jqTP4KZJ}-VFGIqW?J2G}2xF<4pzS1f-R`k2OIx_Zq7Jp~l?eF)- zk!!w<(qQxRKe)^;!%68SbN$u;ko(Ivvfy9 zb=ksm!lU-l+9zrsuYIcamQj28P#2jJSus2pI&w#3PRmm%JQq32*W~DV(NP{0<=A#u z#Ay8ZM~qt`wqHl)3C~@Q<|~pav}a8n+6%HN`!H8jUoO1gC|bTjyuF_J!t>N4`$Xoq z{Q1N4oFi|y7tmfndjacRDLe-|+MXMj7%f-9*!3PK+TIuC+sj)qy!Ru@(etgN&tWuo zFd!8}dzVu-{!~^j?!_zPi@ChkRH*Dd&jw8-4FbpJ#L& z7LlXJ z1=fs=?N@c!fQ{Llt=N%W_*!IaKkLWg9K{bgiPJfYbGeYqxtbffl{>hbhj@&qd7f8z zowuLUA2XiWnUnchh$UE>6`07!Sd)z-W5-!DwqiT>`HbFo-t?0fV9mSZK>=96s1XW5c% z`2t_&8yvt<9LpJzvG48KoX17nz%AUvy*$CwydD|*-oM58w7~@CVqO+zF+Rw0e3;ev zG#m0cKF{{-%x>(-WWLG4e3zp*mXkP*vzWq#T*B2{&z=09`*?uI_&d+@4_@aj-hQ7! z%mn6S9u{IzmS$NdvMOt`4jZsB+p!b7u_u%HCWmksKj1h{;U`?cFS&~AxP{xem-~5? zCwPvRc#SuiCS5QcGcy}=GapN_3@h^y)?jVcXCo%DB|Gp1c4sfX&i)+2VVuAz{FHMz zpNqMYYxymA@n`#wzPrA-;z-QTQ~RxRh)76~E&TJjxTi!t1>KUXPe*c{g*jcx1uY_Xf+eGVAhbHsNz@ z&Gvke-Pni89LT{O%a1sXGnm48T*4Jx&rRIUojkz9{GDg`2d^@1#$bA8We(aUtxtJ@tmRq@O{U2jOvlX3#@x)uA}r3ze1tVvoAudgue1YBB zi?6dkM{qPh;Y`luLVgulD0aTUZ}=S#@fc6@Jg@LNqZb=S#xn!6@E+dF5-iOMOypy% z$tT%>&$2nYuq%7>HNMODIhG%B4!__kuH)DIhWmMlCwQ8dc!f6^y_z>N9WyW+@8SI{ z!7{ACnykZSY{7Qy#IEeYfgH@S{D`ypITv#ow{kmw%)wmD%i=7> zGOWPr#;e7;e40sY$+qmsF6_!4?89Wf$zdG9(Hzg|oW=ibk9l0lwcNlh+{PW;7g@;v O5rzC8Q7HT`6ZwB^%-f{^ literal 0 HcwPel00001 diff --git a/release/src-rt/shared/bcm_rpc.c b/release/src-rt/shared/bcm_rpc.c old mode 100644 new mode 100755 index b3c79f6e20..6eef3b0525 --- a/release/src-rt/shared/bcm_rpc.c +++ b/release/src-rt/shared/bcm_rpc.c @@ -41,7 +41,9 @@ #endif #endif /* WLC_HIGH */ #ifdef WLC_LOW +#if !defined(_HNDRTE_) #error "RPC only supports HNDRTE in LOW driver" +#endif #endif /* WLC_LOW */ /* use local flag BCMDBG_RPC so that it can be turned on without global BCMDBG */ @@ -51,6 +53,7 @@ #endif #endif /* BCMDBG */ +#define BCMDBG_RPC /* #define BCMDBG_RPC */ static uint32 rpc_msg_level = RPC_ERROR_VAL; @@ -989,12 +992,12 @@ bcm_rpc_watchdog(struct rpc_info *rpci) count = 0; uptime++; if (uptime % 60 == 0) - RPC_ERR(("rpc uptime %d minutes\n", (uptime / 60))); + RPC_TRACE(("rpc uptime %d minutes\n", (uptime / 60))); } #else uptime++; if (uptime % 60 == 0) { - RPC_ERR(("rpc uptime %d minutes\n", (uptime / 60))); + RPC_TRACE(("rpc uptime %d minutes\n", (uptime / 60))); } #endif @@ -1124,7 +1127,9 @@ bcm_rpc_call(struct rpc_info *rpci, rpc_buf_t *b) return -1; } + RPC_OSL_LOCK(rpci->rpc_osh); rpci->trans++; + RPC_OSL_UNLOCK(rpci->rpc_osh); #ifdef BCMDBG_RPC /* Since successful add the entry */ if (RPC_PKTLOG_ON()) { diff --git a/release/src-rt/shared/bcmotp.c b/release/src-rt/shared/bcmotp.c old mode 100644 new mode 100755 index b7c67552db..d57b2fd443 --- a/release/src-rt/shared/bcmotp.c +++ b/release/src-rt/shared/bcmotp.c @@ -362,13 +362,12 @@ ipxotp_max_rgnsz(otpinfo_t *oi) case BCM43431_CHIP_ID: oi->fusebits = OTP_SZ_FU_72; break; + case BCM43131_CHIP_ID: + case BCM43227_CHIP_ID: case BCM43228_CHIP_ID: case BCM43428_CHIP_ID: oi->fusebits = OTP_SZ_FU_72; break; - case BCM43227_CHIP_ID: - oi->fusebits = OTP_SZ_FU_72; - break; default: ASSERT(0); /* Don't konw about this chip */ } diff --git a/release/src-rt/shared/bcmotp.o b/release/src-rt/shared/bcmotp.o new file mode 100644 index 0000000000000000000000000000000000000000..ecaf0a66c1d5236e03397f89619c39adedfd48cc GIT binary patch literal 119728 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 literal 0 HcwPel00001 diff --git a/release/src-rt/shared/bcmrobo.c b/release/src-rt/shared/bcmrobo.c old mode 100644 new mode 100755 index 1e482a41db..ad354de244 --- a/release/src-rt/shared/bcmrobo.c +++ b/release/src-rt/shared/bcmrobo.c @@ -40,6 +40,8 @@ #endif /* BCMDBG */ #define ET_MSG(args) + //#define VID_MAP_DBG + #define VARG(var, len) (((len) == 1) ? *((uint8 *)(var)) : \ ((len) == 2) ? *((uint16 *)(var)) : \ *((uint32 *)(var))) @@ -929,6 +931,7 @@ bcm_robo_config_vlan(robo_info_t *robo, uint8 *mac_addr) pdesc_t *pdesc; int pdescsz; uint16 vid, vid0; + uint16 vid_map; uint8 arl_entry[8] = { 0 }, arl_entry1[8] = { 0 }; /* Enable management interface access */ @@ -1003,12 +1006,16 @@ bcm_robo_config_vlan(robo_info_t *robo, uint8 *mac_addr) } vid0 = getintvar(robo->vars, "vlan0tag"); +#ifdef VID_MAP_DBG + (KERN_EMERG "bcmrobo: vlan0tag/vid0=%d\n", vid0 ); +#endif /* setup each vlan. max. 16 vlans. */ /* force vlan id to be equal to vlan number */ for (vid = 0; vid < VLAN_NUMVLANS; vid ++) { char vlanports[] = "vlanXXXXports"; - char port[] = "XXXX", *ports, *next, *cur; + char port[] = "XXXX", *ports, *next, *cur, *nvvid; + char vlanvid[] = "vlanXXXXvid"; uint32 untag = 0; uint32 member = 0; int pid, len; @@ -1017,10 +1024,26 @@ bcm_robo_config_vlan(robo_info_t *robo, uint8 *mac_addr) if (vid > VLAN_MAXVID) goto vlan_setup; + /* vlan ID mapping */ + vid_map = vid0 | vid; + sprintf(vlanvid, "vlan%dvid", vid); + nvvid = getvar(robo->vars, vlanvid); + + if (nvvid != NULL) { + vid_map = bcm_atoi(nvvid); + if ((vid_map < 1) || (vid_map > 4094)) vid_map = vid0 | vid; + } + /* get vlan member ports from nvram */ sprintf(vlanports, "vlan%dports", vid); ports = getvar(robo->vars, vlanports); +#ifdef VID_MAP_DBG + printk(KERN_EMERG "bcmrobo: VLAN %d mapped to VID %d, ports='%s', %s='%s'\n", + vid, vid_map, (ports != NULL)? ports: "(unset)", + vlanvid, (nvvid != NULL)? nvvid: "(unset)" ); +#endif + /* In 539x vid == 0 us invalid?? */ if ((robo->devid != DEVID5325) && (robo->devid != DEVID5397) && (vid == 0)) { if (ports) @@ -1089,8 +1112,11 @@ bcm_robo_config_vlan(robo_info_t *robo, uint8 *mac_addr) #endif /* _CFE_ */ if ((!pdesc[pid].cpu && !strchr(port, FLAG_TAGGED)) || strchr(port, FL)) { - val16 = ((0 << 13) | /* priority - always 0 */ - vid0 | vid); /* vlan id */ + val16 = ((0 << 13) | /* priority - always 0 */ + vid_map); /* vlan id */ +#ifdef VID_MAP_DBG + printk( KERN_EMERG "bcmrobo(map A) ->%d/%d\n", vid_map, pid); +#endif robo->ops->write_reg(robo, PAGE_VLAN, pdesc[pid].ptagr, &val16, sizeof(val16)); } @@ -1121,15 +1147,19 @@ bcm_robo_config_vlan(robo_info_t *robo, uint8 *mac_addr) /* Set the MAC addr and VLAN Id in ARL Table MAC/VID Entry 0 * Register. */ - arl_entry[6] = vid; - arl_entry[7] = 0x0; + arl_entry[6] = (vid_map & 0xff); + arl_entry[7] = (vid_map >> 8); +#ifdef VID_MAP_DBG + printk( KERN_EMERG "bcmrobo(map B) ->%d (%d/%d)\n", + vid_map, arl_entry[6], arl_entry[7] ); +#endif robo->ops->write_reg(robo, PAGE_VTBL, REG_VTBL_ARL_E0, arl_entry, sizeof(arl_entry)); /* Set the Static bit , Valid bit and Port ID fields in * ARL Table Data Entry 0 Register */ - if (robo->devid == DEVID53115) { + if ((robo->devid == DEVID53115) || (robo->devid == DEVID53125)) { val32 = 0x18008; robo->ops->write_reg(robo, PAGE_VTBL, REG_VTBL_DAT_E0, &val32, sizeof(val32)); @@ -1166,7 +1196,7 @@ vlan_setup: /* VLAN Table Access Register (Page 0x34, Address 0x08) */ val16 = ((1 << 13) | /* start command */ (1 << 12) | /* write state */ - vid0 | vid); /* vlan id */ + vid_map); /* vlan id */ robo->ops->write_reg(robo, PAGE_VLAN, REG_VLAN_ACCESS_5365, &val16, sizeof(val16)); } else if (robo->devid == DEVID5325) { @@ -1175,7 +1205,7 @@ vlan_setup: ((vid0 >> 4) << 12)); /* vlan id bit[11:4] */ } else { val32 |= ((1 << 24) | /* valid write */ - ((vid0 | vid) << 12)); /* vlan id bit[11:4] */ + (vid_map << 12)); /* vlan id bit[11:4] */ } ET_MSG(("bcm_robo_config_vlan: programming REG_VLAN_WRITE %08x\n", val32)); @@ -1185,9 +1215,12 @@ vlan_setup: /* VLAN Table Access Register (Page 0x34, Address 0x06-0x07) */ val16 = ((1 << 13) | /* start command */ (1 << 12) | /* write state */ - vid0 | vid); /* vlan id */ + vid_map); /* vlan id */ robo->ops->write_reg(robo, PAGE_VLAN, REG_VLAN_ACCESS, &val16, sizeof(val16)); +#ifdef VID_MAP_DBG + printk( KERN_EMERG "bcmrobo(map C/DEVID5325) ->%d\n", vid_map ); +#endif } else { uint8 vtble, vtbli, vtbla; @@ -1207,7 +1240,10 @@ vlan_setup: robo->ops->write_reg(robo, PAGE_VTBL, vtble, &val32, sizeof(val32)); /* VLAN Table Address Index Reg (Page 0x05, Address 0x61-0x62/0x81-0x82) */ - val16 = vid0 | vid; /* vlan id */ + val16 = vid_map; /* vlan id */ +#ifdef VID_MAP_DBG + printk( KERN_EMERG "bcmrobo(map C) ->%d\n", vid_map ); +#endif robo->ops->write_reg(robo, PAGE_VTBL, vtbli, &val16, sizeof(val16)); @@ -1233,7 +1269,7 @@ vlan_setup: robo->ops->write_reg(robo, PAGE_VLAN, REG_VLAN_PMAP, &val32, sizeof(val32)); } - if (robo->devid == DEVID53115) { + if ((robo->devid == DEVID53115) || (robo->devid == DEVID53125)) { /* Configure the priority system to use to determine the TC of * ingress frames. Use DiffServ TC mapping, otherwise 802.1p * TC mapping, otherwise MAC based TC mapping. @@ -1450,7 +1486,7 @@ robo_power_save_mode_clear_auto(robo_info_t *robo, int32 phy) { uint16 val16; - if (robo->devid == DEVID53115) { + if ((robo->devid == DEVID53115) || (robo->devid == DEVID53125)) { /* For 53115 0x1C is the MII address of the auto power * down register. Bit 5 is enabling the mode * bits has the following purpose @@ -1497,7 +1533,7 @@ robo_power_save_mode_clear_manual(robo_info_t *robo, int32 phy) uint8 val8; uint16 val16; - if ((robo->devid == DEVID53115) || + if ((robo->devid == DEVID53115) || (robo->devid == DEVID53125) || (robo->sih->chip == BCM5356_CHIP_ID)) { /* For 53115 0x0 is the MII control register * Bit 11 is the power down mode bit @@ -1610,7 +1646,7 @@ robo_power_save_mode_auto(robo_info_t *robo, int32 phy) uint16 val16; /* If the switch supports auto power down enable that */ - if (robo->devid == DEVID53115) { + if ((robo->devid == DEVID53115) || (robo->devid == DEVID53125)) { /* For 53115 0x1C is the MII address of the auto power * down register. Bit 5 is enabling the mode * bits has the following purpose @@ -1665,7 +1701,7 @@ robo_power_save_mode_manual(robo_info_t *robo, int32 phy) return 0; /* If the switch supports manual power down enable that */ - if ((robo->devid == DEVID53115) || + if ((robo->devid == DEVID53115) || (robo->devid == DEVID53125) || (robo->sih->chip == BCM5356_CHIP_ID)) { /* For 53115 0x0 is the MII control register bit 11 is the * power down mode bit @@ -1806,7 +1842,7 @@ robo_plc_hw_init(robo_info_t *robo) if (robo->ops->enable_mgmtif) robo->ops->enable_mgmtif(robo); - if (robo->devid == DEVID53115) { + if ((robo->devid == DEVID53115) || (robo->devid == DEVID53125)) { /* Fix the duplex mode and speed for Port 5 */ val8 = ((1 << 6) | (1 << 2) | 3); robo->ops->write_reg(robo, PAGE_CTRL, REG_CTRL_MIIP5O, &val8, sizeof(val8)); diff --git a/release/src-rt/shared/bcmrobo.o b/release/src-rt/shared/bcmrobo.o new file mode 100644 index 0000000000000000000000000000000000000000..bf1126bd98b1a183bf712bb119b3285e7768f7e0 GIT binary patch literal 120040 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 z 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 literal 0 HcwPel00001 diff --git a/release/src-rt/shared/flashutl.c b/release/src-rt/shared/flashutl.c old mode 100644 new mode 100755 index 8a12bf4d14..a2253ca424 --- a/release/src-rt/shared/flashutl.c +++ b/release/src-rt/shared/flashutl.c @@ -35,7 +35,7 @@ #define ERR2 0x30 /* Mask for err UNUSED */ #define DONE 0x80 /* Mask for done */ #define WBUFSIZE 32 /* Write Buffer size */ -#define FLASH_TRIES 4000000 /* retry count */ +#define FLASH_TRIES 700000 /* retry count */ #define CMD_ADDR ((unsigned long)0xFFFFFFFF) /* 'which' param for block() */ diff --git a/release/src-rt/shared/hndchipc.o b/release/src-rt/shared/hndchipc.o new file mode 100644 index 0000000000000000000000000000000000000000..2932c6150c034e5556ce4de6b571492c201a0ee2 GIT binary patch literal 102040 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≪v5XV)(+DKU_WbKEAi~4bM|z*am(`( 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, p, extra_offset); +#ifdef CTFMAP + /* mark as ctf buffer for fast mapping */ + if(CTF_ENAB(kcih)) { + ASSERT((((uint32)PKTDATA(di->osh, p)) & 31)==0); + PKTSETCTF(di->osh, p); + } +#endif /* CTFMAP */ + /* Do a cached write instead of uncached write since DMA_MAP * will flush the cache. */ diff --git a/release/src-rt/shared/hnddma.o b/release/src-rt/shared/hnddma.o new file mode 100644 index 0000000000000000000000000000000000000000..060d3b47486a92e65378c0abf42780646e12c26a GIT binary patch literal 179384 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 z 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ʚ{@3LD8 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 literal 0 HcwPel00001 diff --git a/release/src-rt/shared/hndmips.c b/release/src-rt/shared/hndmips.c old mode 100644 new mode 100755 index 05ce770443..450333431c --- a/release/src-rt/shared/hndmips.c +++ b/release/src-rt/shared/hndmips.c @@ -249,12 +249,10 @@ BCMATTACHFN(si_mips_init)(si_t *sih, uint shirqmap) tmp = CEIL(10, ns) << FW_W3_SHIFT; /* W3 = 10nS */ tmp |= CEIL(10, ns) << FW_W1_SHIFT; /* W1 = 10nS */ tmp |= CEIL(120, ns); /* W0 = 120nS */ - if ((sih->ccrev < 9) || - (CHIPID(sih->chip) == BCM5365_CHIP_ID)) + if (sih->ccrev < 9) W_REG(osh, &cc->flash_waitcount, tmp); if ((sih->ccrev < 9) || - (CHIPID(sih->chip) == BCM5365_CHIP_ID) || ((CHIPID(sih->chip) == BCM5350_CHIP_ID) && CHIPREV(sih->chiprev) == 0)) { W_REG(osh, &cc->pcmcia_memwait, tmp); } @@ -405,7 +403,7 @@ BCMINITFN(si_mem_clock)(si_t *sih) #define ALLINTS (IE_IRQ0 | IE_IRQ1 | IE_IRQ2 | IE_IRQ3 | IE_IRQ4) -static void __attribute__((__noinline__)) +static void __attribute__ ((__noinline__)) ephy_poll_phyaccess(void) { asm("phypoll: \tlui $8, 0xb800\n\t" @@ -416,23 +414,21 @@ ephy_poll_phyaccess(void) "nop"); } -static void __attribute__((__noinline__)) -do_router_coma(si_t *sih, void *dmem, int delay) +static void __attribute__ ((__noinline__)) +coma_delay(void) { - uint8 phy; - volatile _dmemcregs_t *dmc = (volatile _dmemcregs_t *)dmem; - dmemsregs_t *dms = (dmemsregs_t *)dmem; - - /* SDRAM refresh */ - if (((CHIPID(sih->chip)) == BCM53572_CHIP_ID)) { - SET_REG(osh, &dms->control[9], DMC09_SREFRESH, DMC09_SREFRESH); - SET_REG(osh, &dms->control[9], DMC09_START, 0); - } else { - SET_REG(osh, &dmc->control[9], DMC09_SREFRESH, DMC09_SREFRESH); - SET_REG(osh, &dmc->control[9], DMC09_START, 0); - } + /* for (i = 0; i < 3000000; i++); */ + asm("lui $8, 0x2d\n\t" + "ori $8,$8,0xc6c0\n\t" + "coma_delay_loop: \taddiu $8,$8,-1\n\t" + "bnez $8,coma_delay_loop\n\t" + "nop"); +} - OSL_DELAY(delay * 1000000); +static void __attribute__ ((__noinline__)) +do_router_coma(si_t *sih, void *dmem, int delay_val) +{ + uint8 phy; /* set jtag user reg 0 = 0x80 to set DDR pad power saving mode */ asm("lui $8, 0xb800"); @@ -444,7 +440,7 @@ do_router_coma(si_t *sih, void *dmem, int delay) asm("sw $9, 0x0030($8)"); asm("sync"); - OSL_DELAY(delay * 1000000); + coma_delay(); /* ephy ports powerdown */ @@ -587,11 +583,11 @@ do_router_coma(si_t *sih, void *dmem, int delay) asm("addi $10, $10, 1"); } - OSL_DELAY(delay * 1000000); + coma_delay(); /* ports 0-5 writes end */ if (((CHIPID(sih->chip)) == BCM53572_CHIP_ID)) { - /* set ephy pll and bias power power save through chipc registers */ + /* set ephy pll and bias power save through chipc registers */ asm("lui $8, 0xb800"); asm("li $9, 0x4"); asm("sw $9, 0x0650($8)"); @@ -600,7 +596,7 @@ do_router_coma(si_t *sih, void *dmem, int delay) asm("sync"); asm("nop"); - OSL_DELAY(delay * 1000000); + coma_delay(); asm("lui $8, 0xb800"); asm("li $9, 0x2"); @@ -610,7 +606,16 @@ do_router_coma(si_t *sih, void *dmem, int delay) asm("sync"); asm("nop"); - OSL_DELAY(delay * 1000000); + coma_delay(); + + /* Clear the dmems ddrctrl reg */ + asm("lui $8, 0xb800"); + asm("li $9, 0x0"); + asm("sw $9, 0x41e4($8)"); + asm("sync"); + asm("nop"); + + coma_delay(); } else { /* A0 vs B0 steps */ @@ -626,7 +631,7 @@ do_router_coma(si_t *sih, void *dmem, int delay) asm("sw $9, 0x0030($8)"); asm("sync"); - OSL_DELAY(delay * 1000000); + coma_delay(); } else { /* set ephy pll and bias power power save through chipc registers */ @@ -638,7 +643,7 @@ do_router_coma(si_t *sih, void *dmem, int delay) asm("sync"); asm("nop"); - OSL_DELAY(delay * 1000000); + coma_delay(); asm("lui $8, 0xb800"); asm("li $9, 0x2"); @@ -648,7 +653,7 @@ do_router_coma(si_t *sih, void *dmem, int delay) asm("sync"); asm("nop"); - OSL_DELAY(delay * 1000000); + coma_delay(); } } @@ -662,7 +667,7 @@ do_router_coma(si_t *sih, void *dmem, int delay) asm("sw $9, 0x0030($8)"); asm("sync"); - OSL_DELAY(delay * 1000000); + coma_delay(); /* set gmac dmp io control = 0 */ asm("lui $8, 0xb810"); @@ -671,16 +676,35 @@ do_router_coma(si_t *sih, void *dmem, int delay) asm("sync"); asm("nop"); - OSL_DELAY(delay * 1000000); + coma_delay(); - /* set ddr dmp io control = 0 */ - asm("lui $8, 0xb810"); - asm("li $9, 0x0"); - asm("sw $9, 0x5408($8)"); - asm("sync"); - asm("nop"); + if (((CHIPID(sih->chip)) == BCM53572_CHIP_ID)) { + /* set ddr dmp io control = 0 */ + asm("lui $8, 0xb810"); + asm("li $9, 0x0"); + asm("sw $9, 0x4408($8)"); + asm("sync"); + asm("nop"); + /* put dmems in reset */ + asm("li $9, 0x1"); + asm("sw $9, 0x4800($8)"); + asm("sync"); + asm("nop"); + } else { + /* set ddr dmp io control = 0 */ + asm("lui $8, 0xb810"); + asm("li $9, 0x0"); + asm("sw $9, 0x5408($8)"); + asm("sync"); + asm("nop"); + /* put dmemc in reset */ + asm("li $9, 0x1"); + asm("sw $9, 0x5800($8)"); + asm("sync"); + asm("nop"); + } - OSL_DELAY(delay * 1000000); + coma_delay(); /* set PMU control = 1 */ asm("lui $8, 0xb800"); @@ -689,7 +713,7 @@ do_router_coma(si_t *sih, void *dmem, int delay) asm("sync"); asm("nop"); - OSL_DELAY(delay * 1000000); + coma_delay(); if (((CHIPID(sih->chip)) != BCM53572_CHIP_ID)) { /* Set switching freq of internal 12V regulator to 600kHz */ @@ -704,7 +728,7 @@ do_router_coma(si_t *sih, void *dmem, int delay) asm("sync"); asm("nop"); - OSL_DELAY(delay * 1000000); + coma_delay(); } /* set mips dmp io control = 0 */ @@ -725,15 +749,16 @@ do_router_coma(si_t *sih, void *dmem, int delay) asm("nop"); } -static void __attribute__((__noinline__)) +static void __attribute__ ((__noinline__)) BCMINITFN(aftercoma)(void) { } void -si_router_coma(si_t *sih, int reset, int delay) +si_router_coma(si_t *sih, int reset, int delay_val) { + osl_t *osh; void *dmem = NULL; chipcregs_t *cc; uint ic_size, ic_lsize; @@ -742,6 +767,8 @@ si_router_coma(si_t *sih, int reset, int delay) uint32 tmp; int i; + osh = si_osh(sih); + /* Disable interrupts */ c0reg = MFC0(C0_STATUS, 0); @@ -756,12 +783,6 @@ si_router_coma(si_t *sih, int reset, int delay) for (i = 0; i < (end - start); i += ic_lsize) cache_op(start + i, Fill_I); - /* d11: aidmp(resetctrl) = 1, aidmp(ioctrl) = 0 */ - si_setcore(sih, D11_CORE_ID, 0); - si_core_disable(sih, 0); - - OSL_DELAY(delay * 1000000); - /* Prepare JTAG registers */ si_setcore(sih, CC_CORE_ID, 0); cc = (chipcregs_t *)si_setcoreidx(sih, SI_CC_IDX); @@ -786,7 +807,7 @@ si_router_coma(si_t *sih, int reset, int delay) else dmem = (void *)si_setcore(sih, DMEMC_CORE_ID, 0); - do_router_coma(sih, dmem, delay); + do_router_coma(sih, dmem, delay_val); } static void @@ -956,6 +977,8 @@ BCMINITFN(mips_pmu_setclock_4706)(si_t *sih, uint32 mipsclock, chipcregs_t *cc = NULL; uint idx, i; bool ret = TRUE, boolChanged = FALSE; + osl_t *osh; + /* 25MHz table for 4706 */ static uint32 BCMINITDATA(pll25mhz_table)[][3 + PLL_ENTRIES_4706] = { /* cpu, ddr, axi, proc_PLL, */ @@ -964,10 +987,15 @@ BCMINITFN(mips_pmu_setclock_4706)(si_t *sih, uint32 mipsclock, { 400, 200, 100, 0xc0011100, }, { 500, 250, 125, 0xc0011140, }, { 600, 300, 150, 0xc0011180, }, + { 632, 316, 158, 0xc00157e8, }, + { 650, 325, 162, 0xc00111a0, }, + { 662, 331, 165, 0xc00111a8, }, {0} }; uint32 (*pll_table)[4] = pll25mhz_table; + osh = si_osh(sih); + /* get index of the current core */ idx = si_coreidx(sih); diff --git a/release/src-rt/shared/hndmips.o b/release/src-rt/shared/hndmips.o new file mode 100644 index 0000000000000000000000000000000000000000..ef3bb2ee98563259cc6fc99302c96c42543e00c7 GIT binary patch literal 167084 zcwXdvd3aPs7VoXwx6|E8lddLdNU9TPLIMFoIzTo^fQUdRtRXChMaae~n_&_6sGztF zsJNq|q9Wshint6qxPse=ii-QLxHHN)xQxEvsj7Rsqd3g_zW3jQFWvWd _Yr_MQb zs_xQfjuCw`s$#e*x|bnH$tjG$py zLBkcKZx{YjaDK9TYqHJ%zPoSA!LzTB{I2Aq^B?ZGGvzejyNaKq4Z{SlJ4oN|Bk&uK zf0<%@@Gr?9bj9oU{Ym|QhEY6KEnsTKd--c$1nUL-wIW~7iFY8t{{CMslQc&=68r(w_VlW z;pqI6n+|m7-S3d9-*&MJ3;cg3kF5K=%UpEmGgSR9)5ZR@{+AAVcgi;O7`GV_9ojfEOg1Z-RPYV;I8b@*7lsk|G(Jh11EP= z{Y5R^Xk1M<>!#)DK=r4O%1h+8?V0$c+~EIH`ODk^qm!xp(UfCsk-tN?=(AzbnD=6J zW+H#vwP$;5ez)eQZ}Uj?*X;}#z224lX43z_-%`qRANkI)AL_3U&e9F?9I?MEw{fSx zrq&O1|EK(Gdk5c|IbHcX`ycpk{vhboul_9QkG?68<#(vY;1qhYJ1`t=8{nblda1{8B_Ax z_UY5##NRgRc(=n(TrTs^>(}wYk;h4v15aUU=v^gr-#`dbHM?>kAPPbJ^ z{q-Kbe%oJ&-*Rhxy8nwlwZBwd@Ned__2c<3^1s(v+P@qxkCvbG^JnreTE@3NI^N^x z^Jx6!UlsM<-4DFUTyhqm{>p@n{{ARG{L6^k=vh?pgVO)e>L>o;mwV-SS^q=*@UO{d zeHYiiVUHC%a{ZdWp}5j?_}xe6-|^kWaenLQ{A~w+iu1dU&QCt?@SFdgpM2iwFEiTp z_elC7ey6{Vz5RE7r@zEy9i89luM;2sJHOLk;xhl7zirN6)Ba%p6lpcTq5n|;rMOG{ zTMs?rb@-J&|G;nSllZIdd)4Rgvm@7^C=c=PUAV$@_}S6F~3o^G|-Eugl>#{+z$<>mi-nHviod`TSevN>So7rl*%9=!f`?Sz~+-ziAwi z-?1O?S3Na8+2J>iT)$&K;NP|KhLpHGN3P$Ne;B^)zoiBbcI?=Z$TU+%cDaqnXdKvo zMCY8hqu1iV{v&#FvK&OyrccCy{YP}apES|t&|7}jzCYf6kxjS%;^pJ*pZ>f0z47{G z`87DO{}ReucKIue_Wkq5`&VVt6WjO3+b^=|b{&%Lb;{=_(ywsnUYjo4ztw0je^Olj zDw}?5B0b5W=O@x{b?8Y(qJH-n?fdVI_rJ)d)1TcxRexOmpMKZA6>q;hk$$T~ciNZr z=fQQJ0BCGi{-9I7fVJ1J71wWrO z?El!`)t?jykbLCFwT8ziAN#xdUGed$w#z4uk1IYtvj6LUFMr%V8fj(iO^J+Xb$oov(VZ93WD={8-iXyg4ij`Huw@o(2r z;$NJ8iNA6E96A2(I!gSF>+f0|(BIg0 z@-;Z}+4O52y3eNnm-roVsR{ULF0Gv^LO!& z=m!(&mP7w9@jv3k$0Nu8xc%6%!HHjS`>3+%iSa|vKW@AIBhL@J+RYDtjQ_ii6941& zb>#TJ%jsVg=$nkVf9v_hvg;@Ms{jkym5;|iq9^Lt71ysrM_y*M+2v(?iPF`iB4~w(DP&Bi~HW?*=%ooqP?Be2t)Q z1E_D;ey!8~yx-|Z=NC@>t)M>yFr!`lo1FTI{sX|N?aFU*%C7+ZVSwY?wcplm{yM_^ zNA~B;f18Yi@lQ^->Gg^9O%6TTrq|l^cJ`(0$DP>z5#~>~E&tZv*_SJBU$XpzpucUz z^AkP34*gNqK0dhO@j=eNPyKFuUGediRsRvVEHW6XSy^^)KyrlTH6){ts|GY%{ws!5;I_(pEpAjE_)qbthKGA6(eRaF`O;Ci%gmuUlD1zZVyJ@A3! z*scqJM*!ahyb1IxfJZYG@3sK{UY=in`|ZQupZjnBvhmmT{~6uYcKEm7ezQ^J5A;9& z`~Qo6H2t)v=l_Au+I~r(XZ(R4Xji`I|C)X@`8@5~|0Dfq^&gFXwEBm(D_{Nx`fs}u z%U31PS&-$Wrlq)2!>M(QC&~S+nlzS%K6f)}(xNGtQ*w=zlp#29s{xT%3|J>=OOYMl(h}GTdSLYX#+4QCNMYx8 z5=6U6NsBrp3}8P;Te7bHR=d6pfNWkG%3>>_!IBc)!%~RhD7s8q88lX2$dsg{kBFoV zbSLy=P;o*}DoP-HWxRyqAM8$G8B&~3cxWLT>bIGLtRp+CDyb@&%2dV6&}H6Z3XMOo zVUZhe$v&Gzg^!I3NQH+Nw}T`8SV}fIvbbH7u@pvRqEu(IerW{iQ>H>CHEt*xDVk!y z{8kKXLY^_jk}x)royw1s45)K_f+XOtP1Y^amE#FV(uM3!ofbIdcjqU%ouQ}7Clx1H z!sKGdf`~RHK_odQ$EC2zvXc5lieXGml%giBU3=5wa{P`my||quGu-VOKi;YHk0oa& z(%MmG#e0CxVyAKN;vP%j32@Bv=xQ;f#kq46o&$zj(RfyK*cl3QffsFm0MlU+(dh2<0h-AY>D- zFJ~YQbBM?H8j?7xyFA-kio-q)ba=;59QKumZ)V}JP%~Ul;OM0MYlygMu+pDGj}M7$+}L$`ocFn zgyT*b@{ISaJ~;CsmNo7Sx_iZKx|cz6-*zmN-I=n2?$mx*N_Ti74zpyNUB}_D2es+z zNe%a;6{y?mc^8Z+EBcih?n)}1vTQ(q!##vbr>vmEp;P7A(qhA1^SL}rhoh*p?{u`B zlo6xDr_oYU_*Odf-+Rr9Om6lhc{#RlX`tGyJjBh zLODG~HmMJ#&c1vInpE%#9d?5GB@KO-4*i%clB!!}X=-#VrPRKGG-)5VRt_IEI^!}r z{06C1(jwXa$6*6Wi^*(!XJb&4F1?my?N5i-$+Po^;P8=tbT&Y(Jtg~<0$WJhBWrjA z#**~H8l3fa>;x0*#b`+U`yqs{g|>et9KvLu+_OUk^sy1G0J!|--Q*V zegd&rfcrY;Vc2IUuyUvibL!+uzCCm*AA$Zvsk$-@*U=ba-!$10T0J=B-s3T5zT1<;6?L|J?i^>(B} z5q>tc7kff#C6{+Xew$paP!Yc&9jHd3N`6fgXp}aL5onT9zQ=Pz?R5!UCy82V?EQ-szJMu_&$-A&@$ zUxm~2cI!$!5XV1X>&!5z{OfidZuG(5`VF_Ya!LQ6RacPOfw`es`t6_%ta2VhO4YR}{Zvu=6e@Oz&6~|zO9jJ3HknQG+stUk~uGgfH zMdD#hwSmbl6~Btb6oj6@RF~3Hx%eLGN?@96o>Wtn7|<^PR*Suu;sVn(tQGH2_h-0n zku}$gzMeNn!HfsT}&iL zfG^Vgdzg3~iB({o>wxUy^GsYwW4vDTA7tWv#LU2@t~Xl=A7&zo94v5|Yw`rbzc4Wc zNlsvc#%-n;NGiHQcX72T){%Tyx_+7~RceaPRsz1r6gjOYpb-Mm7rs&f*0pDSYku;>&OT&ZyOwk=F zNZXT)#>Y z*1LpXt{-LK-{uO>S!M*Dbfumo$w^`< z_2_BWiji_elEfq=#DP67A?e$a#F8Gs&$=QKZ%-2C}qO`(GuAYcYWZUeXq`+9Q^e#lP$d%Mn=X5jRrA zc*RvI+q=jkooiK zl7Tl|m5ZeMJmOyJ@7u05Oyhr$$GoHQW{-G;EaE*^iuAxO9uXxE{xFWakOzP2x?z#V zVe*&*u4zg?XpcO^V<~xddc;dqU$Qkv(sy~p1HC0)DDjgXky8cS!CEEp9*_7LNn9Xc zT{Kkc(<4TbeuCC&N#E-cpF?wjG)qt99`Oc3Ng&<2K+^YnL^A0sY<<;P>fa;E$Ri_G z@>0U@d&IjGp^B{aCu!V;rl4X=MVya4;zFc`ff8$@q<@9+!8{o#vnHvCrm2+}1 zubY}2Wi}JcFV^8ZIB&iY>{YCTcW~hnBiLKV9VWAxV4)5>j0Z95!Ki{;7_Yz>1&b8C zgF&Q`Xga%%w&KdOSr?;Yw(oRA%#PWw;XGh>-`N}RSn_hLvhIyM-pOz2shuFV{h4F2H!#Y>FLp=#}C1Y2gWG%~C1 z(JQNeB6egRb5IuZ^GBelOnXrjq?sY}*qp)#k!WE+@BBTh~UXZYuDyQwNF zP+|C2l@(cnst+@EQ$(skOoriwEq0yctrlNE|6w;vmopBMqIV!zIEnS`Mi@!aeP}xD zVI-YQigppdS7RhadoewPeQbJ2`IYb^0}1O!Sj`A(> z5b*~!KQf}5F&%|FYJOxyA7Z)+r)hpH3hty;KW4hz*ePAcMOK2jRg?C%L9*qU$6> zwft9^;nvx6jPNK{ti}%+6`9LerZY}c9D@ucT+4LEX^OFA4-?r4nI1e3jEpGUsM|-z z^%(N`@NBkS>Cc1-kAdlgN^8mfvyTbc_TR;}|D~Xa$amWQ&qu;3x*ZNF`|m8}CR_8! zkFP@Zo@lbwh~v-!NLwj7(s`Z@%g7pFS4)j#75B(c)%NZHR5GEn^7pT?;>;>l{*uKh z2hS>-E}P8dnXr$n^7Av4zh8kRLe{{iB`VAmi9sLXm_LrNn_Wo@6cX_?#L4WzDqvWA2oj6zA@-W}VyHEH*soG3 zKfeTLvxgrNggAFW#n~eiXFC55n$M1n&rw~w8s?jQ+=@x6Gt&@NvuCM}7V|@JrR;_$ zWb2i@0fw91+`C?dtH}rh*>hB#!}%*n+q36AQ6NJGFG85hp08H3WB7Kuh_*m+)*7LX z$S=HNq#vr~yU(N02%I#_>sj#AtZcnGd^iXOCrUH;c zG>%r6&I_rvDe$Z=8I$y^<=YJHbj>=6xLPry>0PsS5*MwuyE>Cm8KPU)?s{R)M`7%` z=I-pQRDK8+(=|^i%WwET!|dEOdv|AQ`voZ=86M?D9{E94N?Y{2qy!|PLc9j*=-QvG zLe6|$2c+nESXN)Wz!rCDHel&@)Ha3pQWTKeOKC=kOmK{{L1lnvDg#u3KC4X!dR~c8 znRS+`-_KX|0y?`BWVTv1Ncp3o^919 zVaANiSE!OF6Ix)~@fIYrkrUpLtyl9ZrlyA4+T7*L04o*S<*PkA~NZdoI2DqiL`oB7Ie*vP+iulenKfm#-NkO2&I@5 zichDWC6rc`IT5Fa2HLKdYUwOz+cCcP_$+P(lr`ZhuZVAKK)dU?e$N+Wh%#7~Y(09qf$IER0Zk&bURyI2zF= zXM9XM?7yJgoZ6VStqo`@XM#dr=?yt`w!?-Du;%AXUK=KF`@HhB@ykxQFrah~PQztNDE|;{)MN zIUgvvkMWVP)0__#+|PI`!cERcYI1*@@h;Ttr)sVBKI1+tYjQpxm#tC}em9nCIfwN| zfGH}g0XwmolDydzGm!=7bk>>07E`2B%NZKqVT#j-(U`GrT?lV8#i=m6>*4SsE)}A=NJdRV3Et56SsZc+JM1S|_{w~__y7#k#`Xexw z?)~+$jqiZ1cORf99wYP$T*jZ97U)X*@K|5wMJidmSYEfpVtF}Eu_uvM_8gs+Dzis%LswPoC%8b567A+X<`K;!KS=xboJ$g5dES-oAwp`vdknsuDnCCT z6%5(0RLD<2`5r@6<$fb_dmddPzrnnhQq2Wqly{hR^hzCr9EpXpF?)J@rhPzl-HFpZ z)5E5!YcFc<8Tvp8il(WOfR&&83%-MmMt;gHr9Z=WHaeT{|BU9wfym*#y~evJDHlzp zhS955Z?qdC7Y^NPf`-u1TQn5CJ+z+Slmqql*)eks(t_T}M4(s{fZ)AT6!Jrmr8w$N z4S8@7s)p-$!#T7DV8a&?%ivSdr;9`{DHaa16Gp?NnPO@r_AyjO%4B}*hq=X9whT(U-@3|@;c5H7t^qAZ=}(Q4BpKdgi_ zkmN|VsA~lfo&mv3|%&|wc4pkS-KQ~AD&l%80!2*RSf1|}g=vGXRR>6|ns4!Jjuv9UC zG#+8i-#7JLA`P#?@C5pGSM?TSe(B27nEYz-8r*_3U>tcKx z%(!oc65P+H4g|_nh%V)m451g1ntA(X(H6v)e&g^QIeMSLc4 zE?F$g(VCQM2%Uwf;E!~Bgu3+sWyCppITTztd$AGeZfEWk8X~!mgW5GXdDsmLPOCaQ%y;^;(45p_A`~Z`QksYjA(yTZRr(=_uxy> z0jAp1D-t#E*J!b+HuZ|d?U?AICA#KvaSld0T576IzAE8^g+>RNYA3H+{1xBP3Jq(; zs&c?e4eP~==w)=U7NbFgG5_n z+=>NRbeMT#7X|6zx#+Q`nzvSoRfq)9;pX&Vlr5}g;v6`6bcESqxXfmlNQc^^BTZV+ z$gR9%v4)SvOfiD+dL|B1C#%i*m4r7i@gk|S##|!tRZMK5@?*^fI$iAad=(uWVB-7; z2op_}rhLW383=RH$tJ}hxkoh%RvoQ3RT^}NiC0JkQ_UW-;loUnVUmm5?j_abqPtj?Fn%Y(FHTr)%>KfjdxnK|`6_P}x$ZmX%`BSO|8DzCLY;tB{gJZ*}SIX)%8S z;B9)U_lsQ^hv*iUx)F$ry>Q*=?HUHflSq)FTlFRO46zb%G5S~6#2V!p?_*Mp-r-t3 zN_oaRkSThn>#|YGGd4mo(Yst%k5ZoT7^(MemuIx{40=0Jbek5VSS+Ec?r|>s-%ew9 zuS>1UE5#*b?Dx5pNmdCjS@(9AGT1S~qJg|$-*8Yb4q^Eb-J#(OLBS#VfQAiX9eLz~ z`ZkCb5vGQAy3$4~M;VM6IQpn_;r|Qj!rz?>|7#I#qPy%1|KdJ!(8u&;Zg@sNQsv{W ztGV`sdr5guXgWOMZ%|wGDc4<9+VaaWjYOYz<&BmG#l#MT@aS&Mzln*(r0qSf=>rLG zVd87ze^y^J#nLDRE*X8!rSg0%jV6(JFSz>1`mhvolYB4gi;DY9@gs~R`l?GgzT>-W)?3uiqbwRP_|F=ZBe?~Wl^`H6@^qJOXuezcQ5LshAV@2g!L44 zRd!>uHWE0=$X(K}%#u6j?t*Nf`WQh!#pAPB?DI%_-i2F~oUIyd3#U^4wH&NtPdoCu}%ubkCa4N7WV z57{;q%RMU@iR}Q-1vt)YriW_sGO{S^9!rbiynF;*m(hc6%*o|fyxmu4?F0Jig>GbyiX;uSq=LOTGQ3a=RNTW}d0&G_Slm-xSD<8d6j&nbF}JOc z=COyOv?RqORZ?%S3-5t0OQtp$O6I+=x{_(CKYl(FLX}KcD&_n&OlKv>E6Yyj$3ROZ zGao)t+9Mx})T?CHTM}jQ7)Gh2;hz#k_+^lwq|wz%D3{-Y*}i1Xn@b7hbJ}((nRmQ2 z<04*%Kw2_?q1;g~=eh9xk_F19Yx$cP(2|9!m-TWdzC>@o&fxbTK$k30NmB#wh|I2J zsakTk@GB8)OHSM_Y4iB^2t*~VinfqHi}5O1HgO1{rTj}IuqDfVQqEQUXADBg3grf; z@!ll$N|j=?F&;*?ShC8VK=`=`@Fi!GW@!E}BJ{j+d2|vRhsjY~1;L|}nKn$Z2+<-s zg&kBTBL>s7b{zXjPx2v{L$sc$G}JHXQQYWMrgXqXIeG3hrc%iau@tc-I$gtvxSCRc z85-t`O%w#0nHsMm!`BsAOlg6!GwUhEZKQ_ghHHuYq%y>cKGh69@>U z^A+-PdfjU20);p~7JVu`L7@zOGQ=ufs8ED|0$VFxq)I?$p~12;ySZmzzGdZh z&tHUA%Ldv#UyW3=Y>?gar!nW1RoFe>h_NfHw0ph=j#W0eQun+Ux>`0=p-R38&Qn&U zWU1o&VG(7=C^U@U19vVPrZ|W5n=r&>$ErH3`DHNsvf&EV@(gNyghKVa4LMBNNL8+Z z=VNXui>W$W_)e;`x~oKU_-;ZqE_r|DJR@{H3?ifK{5wd2k5Shzut(us#GJAVZM6ic z*hP924Bt3}k+O?P?V%qqcC}^eWUTHt|;Ih8l894j9A1^f)$s(t1jb}^FpjsVr zQkjzSY~)p?Kc7*iq?}7b^2^m_N=k7I(0>#yonMa#Tl(w6Wok&y#T;4so02(8Jc5b0 z)L;rm#4*%$reUtQ4L(?EYM3u>BcpOLrI`ZVDUwxY>~?>tABt3LlW;cIIXlTIK;CDU z8syNI5M6#0E7A%acc06qZz)tf5zwVRkA_VGl}Xzqo>Y*smcMv`j1Qz&?^N zUHqMfD^U3AE_vfI2qajjDBf1rh#%6iCh2V=%8&0`-*SQK8ebeU1wgMBCAD#Ij0A)0-0je_`h z30TI>K@QHhqSvup;9gBD<`~iI9lJ!1(hHgPck#3{R3cX6Ma31Mf3p=a`shDhax^SWtq*KZyDM6?1@;g1a zuyut|QKh505xEC3q$+wFqc@z1GpXNOShq^m!|Akbcsr}CRKwJZGUu&qT&3#a5?Yzw z$rcS(9@LH0v5lQGSPkMjT20@_whUGt^a*YLKEz%atUPEXt;8SJFiU(zEAgG|z+mM; zpOUT~VZRMl9&~~i@KGj)C9o|UxMF|IOxW|+fF z>vNC%&~?(LZe$$9sE+P&Q^h5idn-Fjn)fwUL-50=wcDf>#=(Rz{fRdcbJMjK>% zwF7bSG3^+>#LBuW?XHARL|O1)>-2WW3Hk(&{7&i|*IdVtMm=^bJNguai0-hwRZebwicnA}r{mZ)q_q#XhR) zZ8l%p3++Npa@0fPVJmIfVEZf?i_);v9NiKv0}+_ccbHyqnBrGkos9Eb zjK$zS17%F{^9=}Kg9}u*I3J04J-BbJq^0vE5uidv%iun=Ik;$wq(%5saNWWE={^+7 z6Vnlq1`kjXvI>HJN9vdU# zn-DR2K+ht6F@~1zpR=&s)yWVi(jMFw+BS2=Zi;kYG9_k#NTI0lm9DBtw4m?NZ!~kU z7>eW|dQgf)c6|;7k$-A`suK638`1CB!;(5&G+^?J9@5lm@eEE!|D|glBWei#z@C=O zwc=~KaPn{6&?G^7vC+fYy=I85XnNxZGlG9jEl)gnFX0t!Kw6{l7vN66aW-j8pnwOVh(#%ROEiiFga?d~}|b zCta1L%@jEnT1zC1h^-V?7Fp}YtFg;Nq3B|3tAzRDRvNn{ z*3;wFP!^F@EVcHJS3|jvCY}?m!{gOZK1@=zT4}We%f&aOo@Lg+S~apyLj%#})`D6! zvV|0(S6J(6)ySSe9b9SMU8_cRCJp6D*0Z&0WY4Evr&ZRc64qj{8ll1Nq|T0{*PqeD zh5F*4phpU#BP_LOGei@KJkmNiTIux>(re5Lk5PJkmeP)Dt7?qWYb*7>#+p4w>GfPP z)lnLzi!5@2(bk$VO0RSabaae$#~7v8H|es=SZmv8rPs9-`o~#&M=QPFhKxEoUc-EG zKV8JDwRVqDdZnG^=mhJ+(Mqo`5v;R59HaC~cdJGxYHGPCNCuo_nPZh+KY>!BldbHr zO0RFwbU(!!JXYzI?#zoGXB|IQ>GfCI53je*8>{rXgIr{)wL`*Mv52mrPP5*ZaFWQU z9l7b&4-(dkJ>=yxte`Zj8G@#X=<&Md25|;eHPfn))E2Rk#&ec6Tf%u5u{4ZLcN(Y# zP)uYcti3^Bt`)aZ4=P+@gc`97a8p(S;#kTGj@7W2@KXvl+@;pfMdBd}Od~Wb z7uzWXi@ENoR%$+r%2w+Ohr`7sWZa`%_f{)4Ka8Y1I@o_eOW_GWhbv_=oLRu#rrh$ ziz#GCuWHCejIMURrXfa!hT(M$GXzbA(fu02Q^;}NaBg&1n+5o$hPmPkYUnNdMh7F` z8~wzj(e8aZT_pWfUcBl35oP(Gneq+{zeVcpE}zOwwob)oY7<={iO_G>@MxavIqK|j zq=_D`*Y(w_&gp9mE2?F1y56zT4EBs(Lz+@U{9borr4#FlK`4-~o$k(m$a z&;hnAlbRu^YxKq;1>PZnG->3Pygzve*PCBP>is@x>{Ki?65-7nl3q+z$U>n(vJeLD z*{EbAQa+E4aW&zf_iEDPSQot$ruR%ru*bPFao&hz)zJVerxZUCuUJ77${HOQXe*BzO193DCUl5KGL`O{&^H~(yLY3@-1_kv@gc$GZoBTU zspXaK`|4EPGby&8ZnsjT&?;$@ z)hek~;_n!Q=uOtu5)K#7;X8V>hV zb^}C69obhJcIIemzXLu~|Cuh&bfsDSVOUbdXv2O_i$6x@+1rXq?y;k7zg&qUdGoKj z9h6R~#S%RcsupUBkx~VkSOFX@#xkNHG;F!{sKhk$dIyHFEq4R_# z)oY{eRb6O|P2W!CX&c8w=fFe-lC2*c)+&e9xy99H?KZ|{q6{oyfmm#J984p}*gae0 z)Ff3z`UL$1NvCdXa_E~>{kP&P_00Zq7%p_G+3m3Xs_vJ)*CBoAkZ3{z=>>;G*_a~9 z`!BRc4mfm5&r}aI$vf62QL3iKQkK{B?hgI4#qT@pQsM1Cz`4^A@rSYT@}D|qDN~G>2k93_5=s+2w21n> z;Ci>A^EhYd$F*aUWfD1$8D}>~D=B5!&Jfsl37sIB==9e1Oq#ylse~3>@w;p6J8!l* z^iRh9jq<1j60&y*-ht;0l%xj)_q zv_jI!D7HFu-T%wSQ%du6yVJJ$Y?HM8cDp$9ywlKON18-!zw6LxDX0Zemlu9@NCSxU zk>fA~L8r&z5hZJFu4bnK866}HCxo2&I8l&n4Xw4!WnKFMG7{+9=9fB5cgMvt;`Ga% zR-bKG2}t+Xk`8G3sd_7;o(@2JWidKUbFkdO$JwuB37X;TGv)-l`d$<4>gfoiD85p6 zmCHbs?yya^3wz|zcGcsU{H&Nj)zc)Xbg0$Q=oG$~NEh35kS?P(T6)PgR!y+oVUN>> zJd&d*KmIYna4dkX=_XtIoVq`^X}0Cv;E-s>R9%zxO|~lq)3**&p~EEAuPaHfvxOR7 z7e8Ca@6c-6N|Sdd z4Xs(PQd}eC8i;dM{WB-x>q0DXt4be|^Sr??jQ~|pt+b{05i*>rO1)T;kH=LFRy(=e z@X7tY?A(dAP_*->q|mCO>XR64`gv%(%HEP3N;`ej-kgcfHI{%?5vHpVoZgR7k@c9N zq?riWDzX(ajgD4Dr_EqW9|A!tI@48*G^)c0cq_U+L#644q>3E966DuoEnm?~?JZlx zRQwGwJ=%rdYWvMZ#k2$hRFuXa2BHo?nsT}(!nYymtr$phliE6ZDB#nefqXyFs zQS*?iav0917a;wrkPm~W(;J^FhRA^n@a$T8m|LzTvM1QLe9;pX*>!4n(JP;C%ATm7 z6*oHa?C~3@#>Y`Udy=f29-_#eLXUnJnZH&T##(kvh@L{1n=pY<>{q>0^dC52U^KfZ zM&ie!wk`eNh>f> z!z}R$7J`9E8b-qOkZE8tds0@FEAB&T5tzc%rKWuGcciI-<1{P~8>yjsm2x0;J{@)z zn5r-56^q>@Edp#|H_C>p1^tk7V77*1gqMVztEH+H?@_z+ zG@K;fzz_r$Xjm_P8l4Bi5P&u2^!857snFdLh?CT$%uv zi!ted3pHFN%+U$(G%>Ne1LX~z{^SI_nu(97vPBxNW#OjQ6XN(HCXy#4(AP7u1129> ztnmgW=+R#XU&TaWmjt|#iEh~mcoP%!bW>m{d$yJEW|XJVYGv}>j&v*ZW-ML;E7-Sl z^{vnkV7V7KL%)yWeN(KY_RrM#V^jQ0ifq&PfSGkZrq96H@|~s3Op-6%+Uv!sHPRsD zOSeuVH$0cAm!2Im#lsa6FPlpEuqnR80x@vDy!IvEsC5$TJ8%J`J0S_fk;#8j52=Ot zBk+?@25deFGhG?7p^i@8qkgQS(U&}R`c$8l1^uKwxfe|TfH5fUw24!1X58weLn6m9CjFV zoc;(WLi3@htYJZVajksnYgoq(Qeq=GdvS{~EKMQx+|jUfwX>k^NgozcJ@v~-H>?v? zK}w_7;n^siPpFF{dLH9fYIG&+-_K(ksnI(yg2$%XDx~{rj}6%O)rLMptmDH&9}we7 z2n)kI*>7sF;8Mdo>sT9{JA1h?JfnP?lrFe*1yH6!r0cIy+(RE||9gCe&V>T9hNlw; z|ELNTb+a$eQA#!3ei)Y1Yc_{>S8pWo^B>cIa+j%YqAHRqv>UE#jd*q{RW$%nZp3pc z<{5^s7}0ga^Fu(1v?2_9NBG!f0OCJL1x6&ZsZu^8i!MlxNRiHCv98qZp7Ws}W27(i zeJvG&@mnu1w`?9B2M8p5A#H z%cGKVOk*X9?>LH;+V42(ihjk)OEc7X*CH*B4OD0n-%A7Dq zelB8etWv>W7#|0X#)d5HDnpsc*I^W6RVUAokqNS+^RZ(dl5msBhX}x7KS;RQOOaAxF7|&170m=x~^p#rz*iFCsWPrd*uqE@ffOF!vb*yfAmu*DmbWOQ7d2pvJ;Z3gOTO^wF7l?o z>lZeyHN{#QsK;2F-!x#T2I%J3i`uA5HyX{Mg|03L%RHnv-r2c~BiV$W*4(G+K6 zqKZAo1~edcR2O@ZDf{0>7Mp^uM=BuZ`tUH5 zd`d-!({*$RN{yZI*)$a$?*=qDBsi?AAMU|y|3i1JY`!Y{tcM~vNPQaUliuB?T%J5mx{@7v$28ca zvm8=lG?7K>dZXI{^I6kA}t{%r{)i@qtMra79 z*e2ytvF+t{vF(*f%?Yt>-|}WVwviG;&!kad*$Y+py>^A)Uzb?;gS(x=`x~7FFN%8P z$B}JkC`h5PFx&O9TvCT}OSfLg7%J3xbg1(xC-q7vrE37vM}7LnmTDEUk{O9h%N!Ze zQWyz?Wloshp&0W!LG&Cd+d<#DGEarrR5nnSU8uZ0AibTIDsn`Eteb?(g&e*#7Lah2 zc#T3$I#VxUI}N=GHIeNTx9mHeX{IwIw}(C`Bb6rKv)Q)mNjA+k`JoPJxkE}c`DqS) zo!yXK^c075w?j%SdU-Q_{!M-+hv+U-tjscElUT17eF-c!nc0`Xq$;LpRamO;^^A;_ zMnr06s`PW3V5K!qV^tDzA+2#bQxPd$%S4m0@_zCMTV`rn(dV_NCkkHELZ6RG!D(hl zy)aKMUQWUJ)SrjR<8x_pe;DjH(bPbDCsD&!1GlbDlX)ej+>h8Kx8eKLWf(Qtdt}Z3 zXrW+B5IMrKoO;?G$ zya$Z1=2~TCeok+(so7}X@fAZ3P;=c)k~5vpg!$B5ud;acSZd8Cg|hh9BY|#ID8gx9 zrsgJva(N@huI6Ti^5q6p&1RM27X(}8w;DBfUL@r#kTJ35ZZ)n&M(A?P&{Z`}H_y@G zvZmP%moH%zQ`2(a9MvJ3IBI4;HAi*matL2DMSA(zoZRF0=-KPW(=y zBA$vsUenq^DzKQp2urS6rcgQm$8aD$_tGt@q#){%eKmo)oy49>IP;J^^R|7)Lu+}Q zer}E(%)U!t{?Iu~4Ys>~^6(t`Bs)nZTcB%!UP6EdCy%<+#(7oL>GH zR66eTT1lg;^X_@1JbHR1^cQs9JMJ8MV>f>h?l5k({pcte`M5Rq+n07xh3D$(jnG`o z0@k?mw@|T4=zrV=Ta+BAcM6UIe0;~J=F!hu%%5wFPkTxeWn7T2@~oMM$MH#Ic2CGr}fzgbjl)!6wYNTV_S3{RE%fE%oi| zgX3f>8}QaeH&N4%^fZjRqTNh2eR~d2KXq%6g&xBSJTZEzQM5xjtsQQl4^%;Tm zx)E(ok&*3+#Oxx=kP_Eb+ji126sV?B$I<5z_UlF|#HoMd9&@T2Z&xRa)G8)jo%2pT zSwWqy&Inj_Q}$B@Pa`7N9jA9PNVzlrL#M|L#OYZLYFvY}=Cl}f4O(wT$K`c>W}bin zk_s%4hYw(U>iVBbBe-G&4l8Jgie|MgH|mCw;?m17#&x4fYw5{ZIGjk@NPmX}o=!bU zAB3E*u90Lird1Ajx{fw8gE&I=Zf>J)(EvyDs1E@iT;a zQ6W;`Jj|7KP1HF#qQtcK1bak%KSe-orZz+O!kY@RJJD+HS3MUK%hW6L6?=7uo(Qz$)i1vi{UiwSJaA zqJI3KM&J0B4?ld11f}*eCT89VLFHA1iNd~$K(Feb7YC3aZ(>-P zR`AdxJ|)YH^UCKQ%f|cXAd<6QXy{TT`MHH3`Xvql2pE!uJz=CF-jNL zik7c5rj}6?hA#>8_tXliDO3pe%$SyP1=ULLEuQALWxNYonbx6LoAE*PWm@2-#Y*$^ zgwZsvXq=ZrmD4)jC28rH%8AR~<)w;K=?!L>jB~x&sF9_%r!Rj-PnO@%sZ8v%bp=^~7S}FU+0>X%!b(CrLC7_CnMPtk?UFt20Cd zX@B4n{jSv28HP!j;^1Yvi8GCSEARrF1>E}pEIaTIM(IoMUUaqhMR{!W`*8v$d=|Kw z{kXzzezVj3B*+%Hh1s+4HY5&#+nBN-uPCN#f?JvT`7kctg{KGZWb`XDH0@qWR|vQ1 zOUwo08l+Ew9h$jFoD1ggT=wrXSF$6e-m0N1Y4M_tCY+$Jh(f z8LPwOGl9o-%}d2}tjz*XFcpSYsb52SnyFtuYGdlxkZin~i7HaYZjIM6aaAY*U&O=` z>g2Ob{rc2;Cbm#=@f-`ut+@@Xlhig{)Ll+8zoM_8Ze-!*%TG1}ud?4(5Z=Vp&p^GS zE8fi1&p_FD3lp9E3HS~svMLhrHl}_i>Ro-2cso-+6J_HEnHZOxfOj&{E1ZCLG4-=i z?`ixbQ$HJJ<2_9LR+xaFXX4Aw33x9PNtmtz?`yn|iFd;Zcs~>Kh9}^+nK&Uo0l&}G z@0}fB>Sw18FmXSb%lFK^lJG&MeunB_O#KYi0nq&<&7(+7bq3Oz0AB?NaQlQ zHjwb!JIHSB1!rn%e|h{i$wKczIvnp3R@HQtmP7J)qv&ja;tAX1xwe+)1_AN^Vl7rIIR8&u8s&OXu^-1!05{?Hn&0j*t4U&_7A}KYeN>W?tn11>Q z$7e_?W%0?@Jd8!^VN;&J0_S}tu*^|)cS@G~P9iaAcWe)dLGmbBe4UUv%UmebHv zA&YNEWNFBMOd_x0ORoj&MU@12L!S$s(gp2G_ib0YP?zT46w&iVismS&E zESl45G+xw3Cs(3NjTfIwhdVK=HU8xyI=l%%tMQUciFNtxen#V^SDhmLhQ=1gd@_CZ zlb;ji=Q;9osHBoDh3>&>$lti;Rq7vI8*Mz-)(Jfa)p(vgw)IF78ZRR?kX3f%jW>Qy z?LPo}Z@h^VP3LYo>r|XO9TBMU)>q&I>DMDxG~Ol;UC3w~x5z{KY30V-<>BKb|5kZ; zfQtQqYOsMg$N6~}yxv<*CyQ$gqpQwp#@^Cu*wDBJD z*7QuO_ulJC8KESkM3Khpw?a0)o(kUl>M5#=_Yk`8bBXBE42hq5db*4Z+i)D}jYQRI zI{tMW2UjecZ8Xi)nS~JwRY7r0OR`SW>(QnYcb}nZr61dBYE{UR@B3|9uHFaal`Dv* z6*`YILb>qP2UST`$xrPn`B_&IM267xpB<;FI^Kk-H~p#?H1gN4ntpqCHKB~~{P}Z? zCPU{TS>cvt%Z(-%`$AG9;blvWCX4+bQEs@o$!PMkOXV(TewbbZ+?1+QmU{6jB0*C? z!x>^9+@L9_VMC{+GwHiU&`a8zvYG1LysUlbPE!}w0gy2da_Fpi2)|8T^_e6(a}$ia zDWcAp7M-~Yb6-<8&Eujo*C0`D%28)r2Aw$-QLw4IKI1m|qO5wv;HF$%kBiP2h*nK` zx*ii}#C)VIO+DB$xn;Fj)FPv6%4gm+1eXdQb+NY=ez|xLX>n5ldqJvvmFVFH?5p8v zB8u6tsZc_hhEbl~RHX507N&jqrhXb@8m9X(oBFf;XQ*jd&?2j8fW}C}&crOHE*(X z-yE{NC#V<67KN}rR#OHeYY;`G+)Sok%w>q@2LcKWO(gP7ome;U_0Fd8@667?n54an zdW_6M)Vb8vR8KZ6udg*{F%`NEQH4m~+=Z!ENpV3jw>eke_n09lAUEe}m?bC%H}}vm z5~d*B+|zj{MR%BDb0O1Dy@n|$H%FQM)GKXDH22eG3q%y_o#p{LV=t0F=+#`x{(2t4 za3Zway_%Er^6wrLCE{~-9Iygo1X&OJy1Wl~XXUML~ zBz!rNkLGjOhf-c7;q}Nyn^)`lktEYKndUXR{1;42#njb&9((*;!e24*7`&``t$o`j z6HBT8=WBe3i5{q^`2vj(GjR>fx_O~UwwCZFQ&hm} zn{UwaZ8pVAh+NH^G~Qy00c6fM>O};-B$!O)X05MnruY}>`&Nzjnu6Bm&3EVp@tE{< zkN+R`-aRm?>i7dc_ukEB69QZy;Ig77ut=0w#GnzQ1_%T~pb-K@LG#$%WLNSs4+KRC z2}q;}LDABd)`+N7d1-x69ukpSs#d8|MN2ics8p>|6s3yhH=pykcW;7P`}_X>`$d;~ zX6BrkIWu$S%(?rxlL>xW@+0_uDhC34Bz>jf+YbLeE9XP-r&R3*_9=TAzP*&Y1N*fx zeEeF&H<9+;!1L;p!iH}UrMbWXb*MCaqX7R=!+j|JAX>b26?jFay&a?v?Ek8q&u+ta z0QNe>*FVLZ;k%ovq`>Pk{$4VCMUeltRx9jh`2Iy{Iq-Kam+N!L;3+@w4+$SO_%93u z-scOM4ta*}YsB9N5^gtq>qis(iFOO`f7I}0Abvm9uH*D$hOZv{{w?`^Z1}E$e?Hgl z75*`NS5g`ce5pMp{A2jep&}~qmG%aQPZ_>%=};Q@M*Eh-rw!i*@MF5~4(>0PZzJMc z*GF@BsmpgC(nE|cZ9-BaI1@d4kXY|$0zhCeqFx4$R}R?IZkhP`@C@k57gh} z@W*c21(4Kxw2RZ!QF2R<@)^8+d?{`xVXuuv^ij{#OY!e+)L3VWb7LY=`%b5lXl|gs zic*5P2H`PZRoD+w%^A2!RoIVXDJ>9?$83Nh7YZoB{1=^w0yhiDG~2NVWu2aAo`WSK z>vXSKN)=t;R=H!CUyUc|Ho0M#pHe9qSS%pF`E$6oQ9vo?D%zw1O>%oMn_$+Z0!lT9 zBWRWhD9yYDDf@N-rJEZeeYxBz%u0mY3IS!B$yn?^6;PJ>XP9=SfF_v}CK7a~fO5@V z;JHdbc_tpw7FZ*oe6uI*?18%kRKWVKpsuNboyf4fqzvpr6XwjpWOpC9U6`{Fk+w%{ ze}3~piBX5iQ2z_^w7HNU!vT13U>*2Tk*~^8X1Mto7 z<^2ltT6p6nQG7YiVkvgY*YNmQc=2Y~Y>j@J{dG!|QL2J~5g7KqZ zoZOo;ZbADg;hm?ct>eRBuie4at*su&f<$|VP=nA0?V`El+7=_wqK{iabu4ZZ2G;1J zCS*PX>EkZ_4Ss}kiL&Bu>j@}@s5aN?;broF zxI5ThK`8Siu?Q`MNbx4rYt*-IKT@TjH0g<-QiqLH;glw4>tbnk3?XQcfL!JpNpak=?6oSqdkZDe%x~){cd7fx4rYfp5iKV?6cbnjd8nbcyJhXAX=d z=u$z;XMjhM8t^=*`EUrtPc_$gRtOzt5O3iD?mSx2P zT&tP)Ur1ny0M}{ePiGPs5a4>v{D9J5Sx|tjn)w240c9ZpZq&>%G?lVa0dCUFZL|}W zl?iY&jfGBO0dCjKKVxh}fKO;+8cswoYvT8v+teMZz7FKqnpdQi8uc+85s}a;=nt2e^ zT0#9-GdEM|SXL*fr!;dPMQB;Q08eX7M~nBxB9$;)E^`Kl&r)!_fQKm9%|;{A_Rxam zgiJ+<5pbS@4c7NfTEcnZ!Pl(DJ!s0Y;q!%W8J*_{8X_Q+&GZa{h6`wb`8?&A@CX4VnK#kC8XhSizj=g8 z|8S~+Qp_8u1_)mypkd}afJO-@)f|yX(8U5uGiTG0BPO6JDtx&z1U|YH&QONHwh+ET83Ioi4qvGZ!Hsm4 zG6XkErZNOK%UFjY#yJczUKxTOy-CUtPf|h&PgaJw zo8l{+qYQBmg=Tn)GQ^Y6ELT8T=B<<%!czq_$@~X2nl*!ofrP&#{?!m1IaHU029BU!&&$x1YY71>J@$&rcZ1~48DTC zg2`#cqz}6!uX}iQ&96u_ex4*;p!|d1eGFft{PPJUT&w((NhiYa9Oa(?`8a&N^3P{I z2`W_n`2bcZQvMkUPZlfxyg`dK98~_PzL=np^3Nv-@UZgF=d_%{5#^s}V7+qXpDDBv zhbxqSUO~85D*yb65>2>D`DZ94{BVu(&rUjyglm<5mLY8Glz+a?C#YVU-JF1)3j~yB z4x`;Gyih>-<|~&Iv`9b&=EamB!nX=&uK65{ew%=b%vY(p2rm{;&@6_V8w3is2(JLdzb;ciJ5%^h z0WQ_d7FexCfX$k@5mQ_vz?GU=i50L`fV9bM9Z29k0;El*0rtOFfV9aRpiL(HGXc^j za~R+{0n#Qj6|Vca0BMuCA9MSK0BMs+ql6v)r2uJ@SxCEC_}2oYO=b`>;C%w5P3C!c zrB#5m$@HUxbNGG%(k4@f_}(Z$+GOsgGi~@m0n#RuP8Co1p%3`ZK$}bp7Vd8Z^`K@B zfHxiy;33T{g~=ZkAniGyW9()D(w_5kDv82d1lX>bUxT_;>^Vm@6YtuG9~0E$ni)sC zX!vm<_jAqs7pDKDpq|#uo9Sp9-XVRYn?FZr{Z9HwH(x?-+bMmdo4YWk(`balVQCSy$R{BUck$}Scq>ps7 zjmpaKbJ9no6%4yy`balRvA};XeWaUDQE?Q0UiwHk|3Eu`_z%)YdaqC*!oml6&NAC{ za}1L3YjO&PxeP&gNKU~p-+&r_ky9|tsaPYgBQ@c+lsOw=c34iqFuy`xep61tFrUNH zdrMBiFdMN>{wk+nnCVmuhmXi97-j_1|C^kGVV*8$Vmkbj>$`L*)z=MX#kksB2;32~tOI1?%eE}Xe%wojk z2Le1oW3jFNQ-JL>Uj)*J0z7J%zlM?@HF9elBRye_PwwN?2DiBak@Kklm$=RJfdn2G zV58eC!z%l?0Gr(AAE3qw0WNi$%di$c6W}tpi3jtBKNsNbZgVKSa8iKF-R8O2V!ybH ztI_N>ze3cVl4^L&KT|at{*P3{V{V31zLIKq%y*#G*HR6S*-TYo__S2RV~#^2|3<3e zF~36I`&O#qF+*V0A=U8s@LOqNrfm>1hw;k4vm2gXfFB?n1BjL3PJ`LmJB)l%c_ZgOEyoA>$_#T4ayGgh;!M6zu zJ3+!56MPYbNp}fvO7Q)%2f;lgyg9*_I+Wm^65dYwA&Ht2ej>p)81C*R;T;LS_$vwS zE#ch>zK5}}`bfAf!FLkzkSO8(3BD)b)V>lvkl_34ID-30_@xBjS;+8bN%&xb?-=%U zuY?aJ`2L8T*I&Yi$-Z!hPr^qMe7^?2vnAY~;JXj?)c^?}P4JDuUVn~+k0tn?ggwud z@W%6-(84^;m3`rbhQLCU{g-*!5~hW*OFUf)rK z>0sqwuWu>n=PUnueK#Xb4N?B}`mW=Jxbm;pcQrQ83zUDoz6&t_3zdJpzR7@xD*t+Y z1%QVs|9X9gkbj0N|9XAXcu}tW>-CiY9;y86^=(7ErYiq>eLtg-DuGJ}y@N_4)=ONu??OdVL>&K3e(L>w6oO!X?VTUf;)nFIE2a`rbk+N>~2%`ff#r zyiEDm>syFqG)DQ?>sx_Z>T=~@ug}D4%~1aJ`oDU+4I`}^L6e{+<-`}-=8Z>A`J_xDvI zzH*hn`};;={Y_Q=?(h5kK!T?!fA{x21NbLW-yQvZmtlS8DgXBO9R~esO%xgX`}=%! z+zwAy{_F1>f%P#%`LDn4JS5M2+ib@{+p$J%s1lp{=V5r)U%a-KHt9q z7byLFJ`Mi3M#4LMJ|Ey~CA{0`y9V~0qxALp3Qz>imGFL_?`!nGPQnL#zDZbb*Gu>% zpE!l^%?zgyCg8giJVD$~+o0et1^saa-zwmJ3Jx&+QG#D1_)@?f8aoe1oW5n0h6^GW z_rDLHChE;tM4n-pnMMH+k!M(!`6^Xu5qXBCb2u%A$fW{GF!5_pk#qr>=0w^`BbNy% z(OgYo6B#2QulWcak|OeeJHY%Z2akUckT~8%T1i zs}wlTuLOQbaW`+Ua@!+R5zjjx6(ZaQ@$-f#@envKMY#2NeVp0!~&C9=htCg=+mw7Gag7Q-za*%4OM?n40R~+2vF;NMW zezxe>0wXX&WT@%c$s`^xg#o0-v5$6e?#H&WVF?by*)nN%EytjNL^sr9B|f6o@R9 zqsM(lbI`U5^jb=+1hPJm_yA+$Ya>(_Z_&`Ea}3KIOe=<9$ejcD)=UoL=6@x*ehsFYA19qgW`bA<)SCN2#rP>9DRiTE$8TmA0fe2wIq0ifp2h*(^C0IqOU|SXczJJ#0le>YX1YYU`2pwql~ABOEyiF zQC-1~)7&P0L2Fn`Os}AZXe>^iLw6a5j+m+;!DPrNC&ez!0SXRrxH1alBAKA#$OBLp*sL z&lEz}hn(US#TGwChzFAD9QKJN{!%V}suG_`#4N_~LcBtB6%T(FiLQembck0JTYQla z4qe(|MX|--F2n=5lwKcO;xFUkf3CzY zB4PvMcp+XPx{6;*jdh~ypobjd6~z|6S%?Rc?9S#rq{NTm;`b`?>xtOPI9`ZXh_2!{ zQ)9d6y1^-4QEc(A3h_JWpZ)au&=Nn6i+@jv-%Z3e#_>YDLUa}X5)(_1x+XvD5U(h< z_)|hWkVohhd02^`z{PjdrT9ZcJj^&=h*t=Q`0Qi!&*$`d%;J;7`JAix;9zo`alGK8 z5Kcaf)JmY&e=I&zIiHIZ9~Til8pjJh3gP5q5@rCs#%@x4rg1)5iVs#k{|&=wl8-`k zHESwi)6n%NM%^ZdSrvtwHTNDqCL4%MdhNDE=W)@qmFRRL;`yqC7oruSt7xpyAi7>{ zeCiafC=Ss;RMYFy-zd@3x#$~|XuLCCu5r8&tq@M@)oJ)%7h{VpJ~KFOtbKGX7zyn-?OOyiE&iufCzcW8zWN!X}oq4hlk3BYzUd@*HN4fa9N<6mhT*mQ2 zyh3ypU%+Iw^{BDeDPB=*@l`@Rkl1Hqw$hq>ON5gTVh#J{&n!MqaXyV>3R$I9`ZWh_0fo zJ#D9Pr&F}GxkZZx;xxVfVu{|xMgLui#s+$dal8<%5NF;a&)KH(@`Q6jo#=ee5LTG2JCK$h4}*?H{z9BTd1PQ-{_ zI>h0plC<0yjz+@SEYKHG_S1@Etlqmh`YLTO47uaPdPjhzuT*=jGa#HDMb4TzUv}kZT6VMm(k_USblC@eU;VDyW=csKOBp& z&8xV8+FN*==X0E2N08WwH)RrGHUH4x^&n&;4HAy!TGX|ix`+Kd z(uem8DpCy*CYu|`tS>VBD*K$A~y>}u`jwD)Q63+tdSYSI^} z+Z&ImqwjmMIQo7FVbcf0D0lPDFfW#fhtAu*f6Lem-uW){9YUxX_#%pS7dHxl`Fx99 ziyd<2c7nBgaDHA0N^J?#?gfWgJUE#=as9IFac68wLUe5M5$YJD-S>0n2t|k3_R#ojwpa5K5mn_n2+D$6>0}I0FAj6^Zs+aHt}1wwF|z z`=pv+8z%TboSdL_*ls(+S({G~@5nP5^w!z9?XD*sL2sRrtpI$T56i~3kH|b?$$t*= zKUeatBlL4ZzIAZ6u@zy9f7#p$n`z+@uMQ|)t+?-qS zl+yM^XgeZaYKsjiUjtfbt6*E(X;Io%6Qz##Zga|21Y6r;J}etYsup_1Kdt1y4Ec+d zd>qo2g5%3VzJhJ}_eIIaxoQ*do%yuWTasYQf1D4Sjf`-+CHqy#KB#2l;Dh6m_NtJr zU|aTaA)BYEk2SFjwAZ4`B#Df+H@i;T9n15Q$}Cu=IHMZf7&~dLo@T6`f!$OhSb^SC z2xQl5jeTkS-!+U4y6~_KvKUdc->I?f82f8N&8@->+IBuRL9MNKv9=25Tuc=H0g(Lg z%}hIr9XG$SR<-IXs%3LdfX++rfq83!(&l||{4hZtU{D?0w}Y(6cg>HmXHxI;c7e6Z`8yqgVcC+r^@tsJk!tV zt}^{}p6RnNzZn`P_#lz8Dk-aTMsEVDP*8V@kSw0r#h!2p!4p5j33L{x7Xp5Ch6Ohh zTvSzG$Fv3wu|KN7derEI7rYe0=B4%IymFeQ z#f3`q9V)HVU!R4t~%a!msmfa}oarqwQ$|rfXbahYV%BN%D z$}zqXGXW}f}Z?`hyA7Z18 zXdSQr5G#ymovJM(;+NT(EETY?6HC)mj4*Y`i zxBOkdD|vqI5bX#pVt#)s+t0-9q!G`kGmM)P&gl&*u@<$xMUCgwR8Xhlgaaz#iU@a7 zr_QGwMdqiRX*4SOlp}6QGFh$nGuobUqimuxyy*EV!L$LP1$ z(Y5_dU6I$c0mfKoSCqZcUAfLkj=1Zud5tMpKS za`c&8VI8~L)!HB`%CwL;k|O~!a&s}+d)7V`l|chh+0a|PK^f#X3!Wf2i$`H8zfJnL z-ZJva3`Cx|_ZjAQOhs~v7>K;%y+srWs3cWWL0V_nK`Pq)`=}tTHxQIl`=}rlun5xm z;>`#iq&M+)Q6F`aRFij5?lRtObC^z1x>y?r5EDc0H2Oa47@{bSJ1MyPfJ(RcS+%XL zFpwo``^atW7!&ul2rtrvLfC0yc^~eH02T%AvuI0vmeu(yzOSP=j0=zOtsh`8;iLJmdzt5OP;Mfx9^aU2y6Z ztESrR_foC4NQ8bDLXd~wV3!?!=erPoWBA!_2!EvAn5U6fQ}}ZiujFBQ0smYALQ=HG z%%#kxT_~`8V;|~*c4JOnN%&!|f0B|xJdH^k9}^n?91-wkJ?%voK3-KihMVf3>r?7g zTAKSjV&zpHD~yE#=*>I4=YlP%L-hT$P?JS}|BUp%Jg2hpaX$CZ6V`yw&N$$CqL)So zY^eicp_3MaQ)gsw^!I9ccDU?2W3tVcCX2yR6w6Yy#j@05?7c(h?NC0QBFFF;h~W?0 zW}(vkN_>0_#Iw+XE|_(lFr8I=#NwJDxxQeH=zGQyM=bgPDdUqam>$1(Vmk9kvgiZl zh*4cI(>q~0^9cUFlXpV5a10iC^a2mv*`?!sT`-Sz!93Rm^Ow$;&f)NdrSV8P2ha1J zF)5ueoo6-1qF*9M!fXxxkPH;^SRd)bd;R@h+sH^PVLjy$wg*gNDdXiw>yl^s-@Rr6a4`BTF0#@O? zW{e?9c?@?4{)*_->?b4o5*ZtPM3pP^V&ENox;m44Xdcf#zX04|TJXz&zfG}Vy{|HQ zMT~V+uZ)4`E+NvGMv)iIY-yMbsE@l`MhzW^BD1(WdTel!+e29xl_ z=`h!gTx2WJCf;mVaJRDvPP)>9@tN0&FWUY84mf?L1>@%9#P-1!yqVxJL-Q?I+%l-) z?T-b^BJl>}3K zOR(x!OK=!Vz&kryOU&dKR9Twl#(sB|k4(h(KLLk*C_ifJ6fEuzjCLbx*AQ(CZoX-k zx)BazxX5(T=JGD%?L5BB!?DLHI`aA;^sb3bkEJ$#U02g$w|l4^f(y@!EsCRd3&La! z?-M}fz5u+&yO+}$p=>3=J4tX^12z7GMjbWM&!!qMOpTK5)OXrCYLyde+D2+Drbg~I zYUJ+1KYyTqroBf0JcADJP~#gk{z;9CXnp3M1YM(2;ueC!-JcUTPI=|&N?^=GFG}>0 zmmHO+qS%$^@3Gcd_Q$yMNQAA_f7;cQiw_S__lSt{c{k2X-XoF-yXO3u^ANI+66F}W zkBoWGDO*u&*&TcwKh7nQ&$NqU%s)AfbLl#Bmj3%`{9$^{q<+)7lbXHHk!l_w>`Owf zP*WjnHP1hXt2sN5xIRb>a(&OC7$;~uy`~Kz=rXX|M19v2W+QYu=$gC}>=c4mm(x&P z-YD3yz~`h#7=0ggJ^2bb`a;U`ONm%^E;Y8G(VH5tQ)9B58YK;2a|yMkjirC^ozC2; z)X1HUe**ZY3jf?f|Ad!=mo9C~Xf1fK9y*LGUUt}4Q5?nsVgS7wsqeJ4#OR!JrLhtS zYl0DT31caQZLFE+3S+@M&w;@cP)9LHqP~7G&?Ezeuo<+TYX?OJQ8Lk8cYWbhTu~f~ z1CdX!%gLJ44w2m7D!EyN#aA|H{}gf+!j}7vkedw#VR|)yiI+CK6N*UzVdsKL56MI! zY$oTP$C>bheK}F8Wp`U~g|(ykA~8mOw1Uib95Hd!_3Y4#YpGhqg!q%cs zl5O`Qq6E?XWVGEC)|Pp`7&DvEd@4xuX>Va6CrP2z)VB^?PD!B(VGF%RFv!VB5Y@M)iE+AAny-ovt zE1}<1>db`^;rWC?f=RZOnZu@GY)QRpFzv{5PqS$swNXD>iAQ#aqhx$+Z70Jd| z%*5S4pj*H#A?ByAcDdP+qsaV*#}zcnal_*PQI62-Aoy-0zW50qKBt#}1>3%IP6}bq zshaC1QoR>}cy`R!j`@_N8qOrZr~f%IIR(z%m{G4ermraW^qa)=PZQE4C*DN;r+r3h z-mBDPgmux24wphrg|O9pD%m!@mnZ{7_pMIZiek(DW3n~OPlOZ$OAbj$4r%XOH0nrLt>@xX$2sd2e4LY-Mj1+_J%E2ffbwi{e$x zd9^5B_%PmPgX85*eu=PowM$;$^Af%0S-eU(ug?^(-9&6NI9~8l2%FdVL7dm@1%y5J z7V#O48&@mc6R9FBAB3BnAqBoW2xo_}M84C_-`w?+4q15TpI)C@I-JGdvsmJnI!q#B zZXCx89TdXW;U2#ocNs(hPpx0k024lf~T;DLfG~=Z?N$15!zsn(`(8biq~&BuTg^~uXZ9Hb#c7lr4Tl+`GVK% zR`T!N7N0eo&m)S@MjEoo#qolVLfCvh8EpH=<)%HAUfSF4=ihLcMNzt>GJJjsUq;s6 zaew0+q9{?B{CsOzA`!e8*6vO_>=>pf_OSEpVFQSegkgVo&vOn_6noexd)P1{q+-~+ z?hVdiiee9&z=vh$6LK!S+77E2`nMY~R0%S_y^cjn$p0Mfvg4E-G~{lxl6pIK8=R>! z>2=ndift+n%_q<2LWwe$UZXAQ#hiNJd@FE?+CVQYJvRKNGjJuPi-+(F(5)Df8T(7; z5Jhn;JRqK+*9UK^m>SF1{a?>lF-62pu^caBN+Rr-`jp#{WrGhsG!pZcnoky=k3Iy{ zkBRa*y#`s-*__&Uh*BLN)bwCU&551$mP2(#aUKi^F@Rnh-cqX1<*KI)QRf39njVgq z=L3nbRnHj0RnIAir_@caF~5eJ?{VYcF3LAa(0=WXF5e_JS|8GAH_{rRul%ceS7{!9 zhy5ocB|C`-DfAljS2h3J`20(tLQY1!7%C`>Ii;Q}H~Sc=bo*b`9B<}J{%$qL12hJ| zYeRT>V3Y`Zj(f!%xrt8^O2@R z-i13qI&SCTrmXsgE$+CMD|oVi7b$oM({a0LrGhn<44Mv3_bcQD0)9-veFglig1fWA zS2V^#>t7vD zD~Ir2!_do3&B!}52s;(~vM|IA8V;oMetHR6;F>F_ho;@Yzg{{o4$+*MCs8|rdX{!4 z^VEEfN)FJaeBD@@z?FA!OnJO3j~3v(YsmcG!gF!YOq(~5rlDUkav%rRT~2C@Nn;#X zMe>s`_i7yYmefkV22ae>w2IfSW^CX%J$Mcv{a?f!FZDDX{K8GeZ)l$xxKn>yYPW-M z^WLWpLwwrXoZ%#rJECUWAP$@&jYiZ;;PJ~Sw?Bd3-zMhUeH2=6s~;XP*u2+C?TTwJ z=S=j^i5huZnzSbsP$cG@eb)#HalgS#b^-@thjHDua_I+3O92c{Bc&hW{#~&3Oe|t7#Ro%0hm=hkAJ8#icIu<1UMbP&QW$ea33VOxa z>7>%_E<9z5p!X-yJ~D;>+$ljPsZU_Ne(VlF43AOQ*;edW+Sfh0)4%-7$1r?xO&~n7 zB2ryDvZN+ZF}$RzxF$&LK*eQgmo8W^a>R(v|JR0#YeGR5sSK3Y2SX!^Yb)5ua8*TU zC|xHdGhwk9yVrf#GhWsNS6RMszu<~6)5R2iy? z1e`rahJ)pSA1`KPbxl=W6%|dDLCkPO05gtMjR@mo1i(-~0>}ZxDzc!kZeew(R#4B- zbctp#R9Y(rRn?Y@MqRijR2(dfRF+nWeu3)x;S$n0R8d?zPmoBZK&ZC1szx$*3?)SE z!rHn}g=`1Hp`aKxFH}<*DwizkYKj9P*`+#CSzZ;GCv-2YuNGaLXn`X;RYU?}nAN5l zzC2P}Cr5>D#2`7>NJU7Z>xxx}g|(%UTSZl{zFc;gS5A((p=gb#Y0gJW{t%$|$L;2`SxbB2|SpSQDtP4i?u*NLiq=xFQsh zb0x;IYjH5LV0aX#NKo0fqPRL-RU@SrM`WnnSYK6FEUj~6N%_3O1&TkW8VprO)8=2~ zfJP~cN4vRRaV{wi%!^c(4G)IqONC2o3+aEUb9JbO0<$nsRZpv_M$Nmbx~irwQdKFL zRhQKjmne%xI8hJ+RTb6cA@r0Mu%oD2I*sH;c$mgSwFw`oxv?fxS6@?UfwBQTYU-;c z8%i@lLE|A(KSHe~8JIELrqZ~PvP$J}s~yAJa%DMy=w95Rg|&4x^#N-Y1TZ^Ev*WSa zo?=a?wyM5HO=zCIRM3*P4A(>fb+rBqDW)hGVQ+Gaz~59=Gw;UwP`w;pj4mb8LAB)n zkQ5lH3e-Vc%HRPuz2GE^6BVancQrE;03LUmyz4{(ab#G^>HC4s8S(ny&F zg(KAg1yqD8WE-jS;)^L%c=SrdrD^k`FhTT=f@RM@>cR6q1 zpWNKejTMxOC%Ri*j6= zaktUP+dHYf*2tmu#~iQPC#ZcdZ-2<~s_m&G;Ab58Cnu;j7_H;&V;ryAo(uwh&Vdg& zLA5d9mqt!A0q=0a{haU)Cv4>HBOFidF9~>q1HUnHrtBu@5QjD!IZXt-#(^z-%xgl$ zZ5;SBC#bgW*9dxyL$7ekV`BWv9C(})UglGOg12Adc-8i7CSWHAp63MB#(-T$j>FpT zxV1hG#QIoa{*GHPbcw5xw=vg77ubBu@v04$OI_SJUvR<-PWXZkxRbX(<9KSrIG=Ff zE|)OQM;yAx#V7Y62kzx#KD>n+XB`KQae`_KaN9x$41e$bOFwU#+^1=oryjogy9Q?WarOSLai46wEvF|)Z*$THPI_Ad z+ox!fVbA8N%LsEs+bJ<2&*t4mT%+eE40@dpdV~*pUGUo``Mt(TTR7=8jfWM6FKqN& zNtjnS^)XI;MblF>L3Y|n(@ykh^4#R9*}cP=yV~K9tM}xd^elYVSeSD)F?oSfHPJ!9G8zI#3+RWFCh zCge0tp5j^9eYugCW0Y&R_aa{q?E=td=j<`6PY`qopqw1qX?8E~zI>0d&~tR!GS53k zb)#YC7}Xlm#!&Q`nd1obCwr3U{!1zPb}d7mc&iqj9!kjBMZlXJcvt|3Ij~6pZ*br@ z0(hMRk0j(YPn?o{b+0C)`-we9jpyhxa@HO_DN5RxG2}%u%rm(Z5{A)y8;#eDue8S8 zNx7aYmNZSi9kagkR>We5t`F0u^g>`YaKut0XIal>yLbH?5w&$$&!#VS{o4^eN8Jd2 z@3QQ^WIvjbXMC>bDma{{=C^rj-oR6HJ7rbFSaU1zC-j{p{j()ay>2J^&v@T|8acbB zESW;^JskdokG+fUL!TRs%bGlo()h0zH9BJSqj-(tp0uVl&`7PFo~vlLYovWo!?k%? z_EgVU&$wkLmrk45uxt5AJUCWHG^hRU( ztvmJ1UY_yBc{#=>?w!U9H^ch}7ecS??#8E|=EIExu14b!CmmP_HTS!r@^0RZ+VImZ z4*cGog+0q?kZ!ba(Z}O*mQKnwdeM}tG$RSI|4BUvcg5%I^}MI2_3E?N zIC%@HW}GkvdyX1rqn_E*NbqFzxE=ZP#d=uhnRv+A#|Q4^?Pqzrjknu)``P%MsW4$Z z=CwaQrx~&NBq!14w3hrW`op7CruNvuAq!z_Q3o&mUD8-o;`VcV4W9u-(8&i zdrscfjh6mLH=m$wc&DC{Ncf#xwdeT^cGjc+3-LLWE0#bj(zbPeBe&nqJ-WXS#o|fN zReX7@s^!JDRc$A0S zdQPLZG5>_|skYPj4-e*N7J~1qJearg_@(x)C#Ov$_;C*JbLSWdn#hU2;g~nvIm@1& z+SIFQmyx>DNN6izXu{pfW=X_5r^!NiJvV*hmYJyAh+Ml^VjJZmA`ljS;>2U?#@9zU9pf0`q~Xa%Q)q0qD-=&Z#dT` zKFuXug$}NcYV+aCV|NT-Ge4v4OSdzGly~C5ykQ{d>%k*UUC#7g#cO>-%+QZs8 zeK=)?w&y*gJ32grzwKZST6@QyA&KmS-j80>5TN+rL zKb@|z4RIOgop-_LRBFqwC?+WREi5kMTz0|e=46Y;@#j{@WoU$NNd6IH7Lc4DJLX1` z)AL7;xjHVROMe#cPi~;g+<1m@gC||6p|4}?;<${T62HNdhHBFG4j$h*t}ZTv75xw6 z$c8NTe;7wLVdnoZj^@|xd*-LHoMesZ=XbEY)EH*?pXf09u_$^58?-9x&w5%dE8$-- z%wz*s6|hY4WkcfUqIk-4$89NEK|X80V06B_tIu@V=im!*89mvV`_x9oXxk6Os7d`9 z_3`+fc%|!=Qdg^AzHJYUU{(-ipC}zT&3$H`-6c=eufQF}L*O!4!v&+~y1zr$G`l~p zNsNtC!)d*)rggiT*6eDmI%ggFC=Sc$olkE3@={v|f zI`+)^sN9sC-pc3gXPf+fwqa#Yu9qugu$e`;4Vwk+0gmtZR?q0@7?|&6Ss=v!+q{}{;ri&%hoY=SSjE=?6r*#EsJBOB^n&brYUu3yUS_>#9L+1tvJ$u5ko-JP8B5F2DZ#D<#L?5mE<#N?zR z2L3MAl-5D^VXR~`e&(-p4TSm!bx;OtT)8Z}mp_4BZ6-G~pi2TB@BA4|Uu6&ui0(31 zsTfpnCUo{>GS~JcnI4HdO#Hp5t%z3=@gG34z%#j-bWURWFi(u1!>M>+U8b4r&14N` zFN)o9{$#U+xmf0A8n>Fpt@g@%pF;T_{V^V6`w@>XD87?ZNj6L3`|;YInVWl)4j2nP zJw3;*G}(r2B3|?iFY#~i_9DB%=0VU_BL{kV?z6@nBi&(_MADn9U&Y9` zG0>NEAUfZRAjZpJPbYkk_+Z|sFH?w@pZ#`Q5__EUgl#zQq$C|L-fqccXu~#`C&#VJ zq_Oa)p!JKgn~(H3W|;oY^EBB*t1(x^)BrZYpUQ%MjhQrV!%D`QR=U`Oe!sboxyjCM zHmdO&I&^MF)Pt5@DMfm+$#j~-YMR4pnuEhHsWev&ahx(vhaBk8V4BjG zjpUp0q}u~hw+*ZP<_30*VifWq_cJLo6){b6VK>-`+pdLd-`vhbEVWs76tAFqt6knf`ViBgeJ_jX z8#ec0Mg1DgKC=IYD7zz;N_d|iveog9qTVj=KplL9oi@Nu-#gCIope5nY^CBv;Sn2u zm+PTh)STA#jGmKDb9!L4%N$5^()nJ#mSR7F=7g9L{r5%9>4DYUx72^I>^q8NL(hhk zK9q-q?v&wIx{}r~5sUk}thr=-c#rlp*l38CY)R{Ha8eWX-EZ;hd@d9IYhW?(ALR$q zhGJS@6-zKUN7sYNW)ZV$LbCiI98J4l6%20tz|Rtz@_s!=ozS+^JeJ& zi}+rGH9LK?!i^@})iX+lRZ-tb*}8u=;a($L0pVH*H;dpgJ9NGeq4r+IN)l-vtE2V6 zdc+!0I;(a5HLW?|k>h)N+)zL=lO>dJ{kw!WG~yEDR4H8P3MmGz@|9&yxbw? z=A!vV&*x7aC5f2Nf1}@5&=0v$%81qjxPF~*Y95{E;O>Mo2Mr_;QCaXIh+Tv+=Aqc`A;L_uoXh^=wwcdgGI518G}5*PvXofyZ@k9s|rXxM3L^N&cCfT{3Ja z`K%xLaT$CGf0Ip;e}vCq6U;No*3H^K&g3sc_61I3vE0X)+ho$KKjG(hl$d9lzgiz( zb^LhUdjAOB`gg*)qV$dSb!Y#dDGt**`Rlv<>N-Qe|1akDzO=Eb0kCf&r*y6XL|rkE z*A*UKS0tTrpM}1uQMt{s4d8XC4Fn&9#nSou{WO2WM4pRVsIF7FSf_fxWDl;UdbBrd z(9`-bovtNmy>MmNE8M*`H&AP+ z`a;#KcAX|_ik_WnGt?F5!*9(JhklvD7B1SWqW4i;(;c`6IWEnC+sJVl4&1{Wml=iA zSRl27Ev46nRLsT1*#JKkoG8vn9c+K<;N~o=HV}3@b8IQQ#W2=4Ii-O$P;R4LmtKwO z-BL;@F#fTKo%`-0Hh^+mZ^3_X^MoJ8J9@9hK0AP~2ddv%+JxP3=1}`>lXJi2=Oz>9 zrtymmnkUv7KR2b5ZWPmE-we|l9OoaDI*D>~8|rha4clqIhhy@05A{Ao?e|FMRyrRQ zC1TyNXkQ{m<+%du3hRm10-b*vHyaHk!=-1WvZl>+rcR@EOdW8#iZC zt*HcsXLJ9y(3u+kHOJ}9H7*V3M)(*p?RUid28ts((=&Z5_rDkZ z4=fr=HWs{<-vh$$>El@}YbV>b5v^`_a?6{F{S#IZ=WT#yjsNc@k zaQ`6422tsh8dl0d6yq&?<8|1wQ zFXc4s9lt}3IYZVJ;!oa}EnStoDU+dA9Ifr+HD+s{JUZw1=Jlk(_9ZG@a*OmC&E1+m z)&iZO&K|F4G`&48tv}mGNg!sGNi|PnhQSEdX=$=Xzl+-M>U8X52enqSkyc3(i#b2J z6?WF|a0;-@hb)4y3c)EuOB zo&ScF(etMqBUkK0Bd1{XW+dZ9ph*( z+3>Jje?Mzr<5GXs(bb+mmG&%_=k*}N&qka6hdU@Y!w%--tjIlZEBMgWv8HhiM&S&$ z!QVjV&}5U0L}y5>$qp@;s1bkiwf|oo8xp~z z*Plc)ZFo0rENe7d*y!`uvXSSnVR=Z zQA?!~ZzwT>E#p_LyRa_ov!NrY7p|C3kz3y)?4sY<)h;$JL7tV@YU4S-pxfBexsMvh zI^mF43AcrH`nzA+Fu8zyR79^Zy{hT8fL@!Jtl#W;ihA*p)m2)PiM4nEVvg!X%(qNy z}6V(Mz%;r-SWKuJoX1OmGX81D_Q$>$5bB2CM#Ka zsv}qChmw^iJEq7pe#y!c9RvCMw*#nsyklHn@aX7x-X9>Iepa`V=dT`lem}26@k{NE zrXg$1H#!;<#Xd2~e<}6vfpbtR>5MZQUo*3!a!flfGQ}F3ZLP6**477CvBs`vZn?&& z2J?T?QI?oWv3i=w@cELCGP9ubVp)p1-G%(&=8MYrD8-pBZ(JJC6E;kIwn9ag;+DXn?^JePZN$0krRN zyE_X7a8lC7r`q|7iSXW3!YzF`Tn`e%iODO?U-oo?FlUA-XXDM{~m#~n>xnx zI2HOk`7)|&2)A{$CgKzRDvYyZVY^4f!h={#6c4V<68wz1XHb&IG3U&V7|I0?r7^aD zB^{Ah9q%yw{-h>G{_x}eIr(_=FtVwaJ($MY5EC0WQ*5ss%5w^^6=h?Dlvm5scx zQ6LTWgpE|cFTo${NA{()Lbe<9y|ycmwu8L}Te(DEHPFf>`l|D+T%xZUK)D2M*adkJ zaUDZ(9koa5YLCq9Ffu%(C*Cs{3%j(BOBvSFo8d*?S% zdna-!OTzdKMBljbG-CNYie=(~`$e#qOWNbAZ=G=t`@5uF=3!4E{cxt$_Kiy$YVOlt z>B!-7D0gqwh>kdG)kVJRNBIsuZ*vRyLW0#kfO*gQ7V9`BL*&AJ`t)y+^B$z!44qwm z+ye(b-rGpN4){Cgc}BUe!7Fo}Ie~ncwHAAL9NX9nWDgs+vW5A#;{FM89FzO@bJAC! ze@W*S=o2BF$V12lcb&0@FsO>M>xJfVrMSo1kKt@p#A_vQr_KO7o&29hcpev!`(1ri zKA>~9AN@V#YjqwgVPZ{Se8ZoQd$9ddJkWOeQ8%;=wCV4vGyH=;50`=bAe88!KaF;j z^AgUnicKbI(Qr~HcmNYT)E^#ko7E#Jx5agzzQ%C&^>iAGXVQKjJ^Tao6!!h}qs*yW z5fi%Ir?&xCL1D){qG@Z4yBu;iO1?BICRa#y$PG%p?sAb{ zYht)w(Y#wV!JFpe0`H_QW7D(N#OAGa-9saD?{c?z?&ddE)E|BiDyv6kxFvo~++Civ z?t5bH)9#MF*Yz{w*E}BK1C8ZJjo@GK(pUv9h!CCKnG{XV5+iVFGtex?FW8``hKitb z$C+JGvlNJLnD6I2ifkT5(F44!i+aa6Y9=lSN=-b=N&T&44hg0vpSQ{K>ohgMVuwXF zfDf3iPykb%D1>f0N6k6yJo&Lb!+pQ-q6{TD~0sMVWH^cW*j~MdF?sO-^E#^V)f{_+zG` z)-r1*Q+X|5Qv-?$p~83hxD>HYHl2<+?-v~qdj|y;oQ{j;af_*?Iy`xVQ%h`-C5no* zEW+4wO%YSETXf1AP^74cZ15pxSvY9dz#Q(_9o0>7i5>#FkUPT`;#kR1=00@>a}VR> zd|ZSXO4^yo9h!JX$tmYV?J+ZP5wZgq;}TA=$5{Tb$IQY-E~~E8*|>;^u{>>iZDy2t za1joiiAy_g&ca1ld^#@tS8Yg5O+EvhO~)mRH)r9JFR=NR#+L7(#37-`A&Y-LE(szK z!F#u8?zVGZOL8A%t50 z{R|JBK|?&H>!5Q8{-V}GHS4->csV&A7m>}15eIWcGrCg}N6o-R?t8e1xSkPYDq_ED z9pV)6J$sgjkz!niiMX;uxEL1^xB0jv>Ku#9FkSSeOQNXOlMMM&m#i3*j zxEv8!Ts{_9TwE@W#UdaCN44$LKl-OPyz)^&Zz_nh?7GJ_#YEZo2ivmU^9_i z`K%U+3F4QkTg0sBfA5)Z0mjj}iXem;p zhQp6yQ~NIGZPdPZ&&uM>VqBuOAn80jzDHD|#i)@tY7WbmGs_5A&P*5qk0MGEO?!+r zT~uQt<;}zxk+)~sV`kc8tmD}cW*1eO8Z&FX)zPtorEydMniq+t&CyEm*!?nv(a}*H z!;0*VMXDpje#}LeAd$-8!I+?EVvO*<6&py5q9*29?sL&p)Pu~*`3i-N5PYH&0!E36 zTHS0jOmDF?{jPKo)V|m2;-pam3HeU#Gnsq-bQ~b`Ptw#W&6>(arjF9H(NS!G)byfStBFfSa8tfNf3`{-T`Ls&&n?eooHEMOI|E zWC|6}0wdBmgrA1&{EIF3VldO)@8!W0d zM{G$8IP=-K2-D5PMVzQ+$+UhqsdW~X0EUoE@DCC;}Yy@#i&YCL}AG87*d@QH5L7qt1_7~VKCDYGSeO#R2^|w zMb_=Oh8Y|#tSYuh*PV1H}p}-S@nJvmpr6ZSLUIV*KRxDN!CZlbs4;crzS>w{v(ioi5Gsyon!; zP3gv)(VRpH8)~*Vg<366A)8ak<`l9yS;4;28eX{G8eWLu__bha;(oi}R0vLaqKV(X zej<)H@dLJkedRx@>wy5is zsEwAW>(*MLuCqm5XN$Vd7ImF1>N;E0b+)MMY*E)KQ9CSAb6YG?b8S&`ZBcV=QFCok zb8S&`ZBcV=QFE23mn>0pR$8Lw*rMjxqUPA5=Gda<*rMjxqUPA5<|t7gTcWNxZi%|4 znJ%BZc@w`y!OTEUHdW|jh8ub&$)cn|zI>VMaqpQ?wcUV%dwI_J3E$UiZ)U~## zYwZbMtC(V~hwAM-xOogUaMqgx&$+uT(K6I+)mdLkt%C~jO-$<8D zq8TQgHgomzq22+}gczY|K3wsHXez1YZZ+ou%x)v+Q~-uyKHS;@FuNy23Z83eT4HNj zVrPO9I}?=HnZU~2wsB^hwuaAw%UeVfm*c!S;}ofv#MPULOD1p5XpK{Tn1PA5iROM1 zb%aZ`{JfTiAL7=VvEG{93_N7&pvTd%g*qMO9cSAeXK%O6V3i>-gQ%K{j$896YPABd zNOe5KRH?+D?{k=+=VrI-YI~UtTcry*Fwoj=4mroH;j`@Fv+Uus?BTO8yqOQTw)%D^ zo@q~>wuk3qxL<^rJ=_X~#O~tJ8c`@z400o}*%aGa6x(cyp@rCotlb0Eg8K$<#5?f?R5d~IQM69iR37Fy` zGf`o>lBqjGMK-4*aLN!)w>cGoQ!3|F1WuoGPDP3no(SgUDEp|_O`xdA%2PNz@QXRS zwRe*b28%j3o?#@O!FAZ#4W>tBfNn~Cw3Q{$Rwj>Th39W=*Bz`}1U8ERLbzkeBS*!{ z-=2?pqfJ-0J!aV*XW1R?w>+(mGte=WceK{xX-!eDwb@*2vvDL`HAg(aYn_}UZjWFT z+G<$z9Pt#c0WQZJzl&AM53s_|pQrtIta77RslIruR{noCyyy(W@j$JxbNEurwA0I7 z%6JwP55_v>^zPCqd1{q?S8!mc%lMy%<7rr4=WsmUDx=$Xa?Csf7j&QG9FlM4Pb-L` zxhyyX7d)P7rISkot*Y&O{msVZ0B`2wBC?|W7A>LL6CC33)TUzzj@7W#-Y}6_L~bjI zrYik{30?IoN)V5?ioW4M;7WnQBc#?jsd%zfgHtJhYn`ZQv4_qe7LSxV>STO8L2M13 zrlz=fx_9M*Cq9|o9bCND=5j_yr=5Wd9>kQdm&*v(|cEoG1aKEs6(A6~sAg zhsQ&uIZ=2f)BsVLDij_B<#F~(r)gyJsZ6&X1m&bEKbL#DYJx{P)j5YmhmW!z+Q*{8 zr@2%3eEfSB#I`yv@!0#lDql82wTMivDqf#6CPRQj88noX@J{- z!ULN8ZikK0BgNSZJ&I&6D_myS;bM)&Lze2qScJ_+r)9xnsbB*)wTQ8Hd|7O8O396N zawf1S*1>LbtZfX1!=sB{a*o^`Yn}QO3J)qeB9i`I`jZy# z5V_e}C)2ay)jBzImW{K6=inJ~51#dN*g5>43|;V-^bTX$8~7tO@H6g(H`G^D*Hy6< z+ZhX0;uqixt4jlH(_?mznow=1j-B&c{1km*MW~`MfCnA0C!gksNX?Dxq-f$t<_ja0 zkvbOpJC5LwE8v}9-Kjq0e!fvSpP_Qqb03R1V~@WMb{ zIcq#%^Cmq6yIcOoSYctHzNRKrSyveKNDe;5Bi3YHtn*)jye7%(0C`<2yLu#y4+KWT z;ZAT0bHYdEwMbrf%j+b0O_$?O$!oR52c_JN5+9V;)=n@sUG=w=iMzI&n0Q-5{ow|G zGZSa1mMFaX&{mOV^TQuLihw(>m}`3!eo+*UwNZRFGI8^{jfwYx)ZgwX+=2fBuW;~F zyQIDJBj{)!Wa53VBmV_HNH4r6UeIa&m=A^he~kwptV300tCMVjJd&z&6V@pz^5}8p z^h%SZ-zFNLk|2ub_1(l>1XRV~yQtd_^W81=SR{4DJ@o~)IDURr&!py$zy1L{POW$o z7KfhQx{cp2aZ0}WJNg}XobHCX#K|%(3h$C95ZnYwiLwihAvi>+C*Ky(Yi^WYcmnUF zGvLdmos`|wA8Kax_|(%0Ka58)s~!%T*Zqg_suo1fstiUd z%P2wCUy{a(>w}Rx-aWLS&UywKzPEGP`r1PWVl~ zN2)^eLwFub9iGr6CSPBPhr@(|+yFJ@kqYb#j3!u7UtSks)saHJX;jxl=0iYv)lJyN zu&ve157`fs5wiFLj|zjub;XSKrRw^+LjJfHJbkCOs~EK*uiUsxFudd{cOk*dmQ*ReqPykKPhDDk+L!jeESSz108i&cP6 z30kCPU2#oaVF{l@ZKR|ezAY^-EDZ|7@ux;rk$T1aF+eO>Sy)Xjlv`p|FobTj!LmqI zaeylz<`s^xKov>G4jQZ|7SrHL^U2Gn;S@^wEF3N@4^=WeFs6`W>Z=QbRh1$BoTT6l zvUp&%g*OJOs?l3W!Lwt^3dKWf$lv0rScPSg;Kic~>)1TFoKbw@2{VPE1=SG}$AYzW zg``!@LgE&T)R4i+$~7h8(LRObP7x@0ve3fn5R(-Q?h28HIHRSY0x`Rd~tp@5OSvJU>$a>+)$wV?54Y=Rjl8~&*)Oq2Wh+M9)m(d&M zWu^pEk{AM+R4^pzC>V0Ltw9o3Al>ACI!vDNfP2<0y=T)6?$hNm?gz5GM0GsiehMg{ zpDm=H#nt*GMY2aG;FJ$8tM&c|a*1%#vIWv$A z>`3`ciC9fYPO&x;_Ofy}8Z_t7-@R%G*2?x$!Av$rLiT%1?g*J0egjEThkGUhfhn0> zTpnw=GFiRE$tej*?(*pAk2R5RdG3_F#%LyPA8$%HF1V*EU_Zs=B_y#&CEK%)T9dK| zA=?xP*2tqRc^cWBZ645^GFBtE!po-ge!ARAvY=G5A?T8rd~$d3(-AoncZb7L$BiXC z_rpv2Dcp5*PpV50O?v-xat{hmsmtJH{S-@ynXEiqdV4kR(L7hPQ5TDyiTj7US+7Yv z=d#Oyrn&IsSRk5?M0mFNwC=H|22DOFpO^HS$z`-O(K8OD;#R}Xq#E?>r^qQvaba>c z$vU|Tl1@^ZMWt(`W}nm&Nz$52ONp?4Vk=E7Q)|)(z&&dgcP^p%o|GR!Nk|rHO_(xB z&fm+)P8IQtLRTs$sG zIwNIHLqH3rP%INl`Yk4R%ltC4R?fpu08vT2{(W#i?q!9AB}GjZ=}2Q$f0w&A=t)U- zp>fCo>b-Pa@<7keAMLWa14Tmam%h^eK{6VVUdw=9%R0@9B$>*Sqd)xTh2t@|p(R~c z9=ZFbwFSG3?q0Yo#bv;0Eu7u`lMmTY?}{ILqyzD6PI3ZGJ$}Bchp^{XKR~~DC~akm zE|)^m3)Z=msQHuoX-m20;bhwVq+u-NqLJJ;t0_yL-<*4z12vIad92degygSMb#ckv z&oC+;Wf{B-9k zX8c5;=2&*c?c)+aLz>?%}h;%EEU8Ojm`2Jl65H27|KlX>fI9| zwL3YMWR{YkTt*krpBr@tDExq+{zjtRd3OtAajP)OEtG2|RUSF*nxs^4G?m2?R@IOP zPZD(^qzTiW7JE`sp?FBjBRx5n_|ics@btGsT~4Jr0e4DE@pNQzz|~4z4NOZe$uV*n z$(d_YQix5B>qpkit++m9)fo3MM4Cd8lq=AzfU}IyRRRL~fLmNrvCU|TX*|l5d9cQFaPs zv`o;7Maab=g<7^Ipc%c@aZWsG=!8+j0^`OXJ$_i=*pp5iIeNI2=yr8nEzirOlW`ZL zRx2e1HfUoeXH~R9OGQ(jd~uDMyk-VSJ)MXa*{!7d?Y0~ zr-M`V*FTF&|Nkijq@M*@r%} zL_Fq-b*To+J$LPnM)z3jtt!;FV+l!&T06CRZNjD6nABy@jTCD zIi9SQBqt=5?TjPkGz z>R%`qB~KzJO1nHYEH&%NTJ*W0`ps3EqFKKt;ObGX;g_t@!rxWGtUaQ4MKgG<1<2M?pV3NdG+}9j@{mWjPdPgI2;j}R)kCLAS z=3E6}QZ`r{iidfiT>Y~lY1dVginVS0{8Ed>21&dPUNV%Gs;;JaZm9cZT)j|IbLkQQT3+pAhKXpPymsI{(KUz9l|B;kaDiGU>+PrIkxa~&mpNfp7J zZqWyh$E4O&s4fS?)E@1ZwlxMThqQ)ZxpE+`l^m(O(AEg2r6O-l8@(V}XH3ZDlY%uR z_uLvQqlb+jJ8XDB{vSC`+NRPj&DWwR9juXO`Meclnli}W<@U*G=QPjvT;GIzh-}!? zhMeC-i_vOJMErusrTC01+zQn?clvY)XkDlwBJEshnz>v>`yn#Yp!YOmwYrddiUKt; ztwKmD)Re$_bPe&pDGu3J73m0m4nwY_h3l#Er_EM}Mb z{k|lt?6`+8Urt-UmbS|@;kkrvA6&Wj6V~OJ8NA6bx1*7H;nPfDp{X6*@+mv9v%a|;+y1VOsGTe3U zSPXhW0-^JY>hp>f;;@q@|%F)rYvIcIu(}yYIB!Q&O#gZGtgXtR-&Iw(yDkOU zO|=`XwTZ@%-AyT{{5Ff+##F}LYe~h@yzsQF*Xvwc=ZYfBX)}SwsI~(1Dav<(#dyS| z+L+VZmyXC|71PcNt5#`KUGBJcmD$-oi<@%E&-2j8{R1AZU3Yl?-FwJwDvn+GKe&n4_qM5XrQm9)#q81e^> zORmPvvt%dRM_jgNy)ly3(@m1x^taD5dQL7AAn{9!En}^Vfc5<}A9YRz!xjB1jQ*4r z@;K$PNx5h>mWjFaF70`@(O^$6LqL00z2T!LbUU_Nb)U*U)!lm6dYUn3BMHAcn3@{U z#5-#}!ic+pun@I*T^)-6Y-9aoPcfI0z zO(F@+O9Rn5&+6j(Kx$EGRSCH|cFXi+DylpyOkAM9#_00EbhGj-=<*0xRAz(ml$7LC zB5Atknl-CNjXY(T9;wjnLla3`@piXE>8c93%8k^h>5P}!QH|sda!svxDm3){p%1N* zcq7J+A9>=iu~Hq81CYY1@XQOrVxZPz}y_k9(U3H~6cbBSsz^Zqy z=(V;=Oos=wI!^slFHtfXua~;J4m6~)S}(9O(%!$2wBV&p5c=Qb{ujSe<>ARjhD<)H6soK^tz>u${TOQq{9ci_) zmYy8fO{ZgNuDzw5ElH^}ha=J+m7FUh_ogt>LGxI>{F;loGFH1(Tte5U)P@9HA5GEq z3%Gtz`6!{fhQg_wJY3GDXflU(iIPcKYg$r?6lI>@(vXbZ<*(A%b$=%PVU%+lY&1+e z^xU=4@iZN$veR{~HN9(eg}Q+bca4g(C#ev*>QLD4T+-$OgF{l6w1u);gB(6TKxFlW z;xd<-rS{q;UA;!y!jZ{^Dimqj)nFotMwihRHDl7@e(pINFu?VA1WKDZ>2P)P;2>AU zaBZrhwCp-3vtDDR8xoPiN3Y+Mv`%M{Jit{L5}Fyv&6S))YjJM;%H{ZeuWm^4BFlq{ z`W#(;^A}l{w2WOPLqGe#N~7B4H~NfdXpmnED^wust?5mtv0Mzh`EF=59&GYl4xO(I zNJ*cP6z$bbk!px`O=hYkyK=|K>7lh7+M+5H_fo^~>)2A8)elltU0E_?NGc&(l1kYg zYu0Zp_pw2916^sgDM=+^s|#r+r0wW{whN>R5whx1jTbmZdlcir+L(0>+CWyoa>sLB zRoOK^T&`g0OfP**BA!wwrGh+Y{rrKFddXB=pN8wGEvkcism82J%AVyPuHPf1HK#x! z4Y>NDtI~Lu=Dgq+evYM2U_~J2o-lhltv}aV zoB=u~`aet3K-iq>|Q8PFDxtUDUha`it`; z=#!E;H=g8jhPYHhwGx$W3?!tC^xUSJlUn88?U1s;LcO+b7>2$a*Rs!dSi3fp8%lSd z##Pi9Ud{xiQYwXBQ=>fsg;rs{|6tUxqsI*!YDrW(p#9pS72bM*we2m-(nSp=9q`u+ zneoebOMtEm(sCx(yBCYP0#0XgXb&MHVY;UjPukLI)_#;HSubE!|GyZLur&j%TG^mY zC_NPEzc%c~za?c^w*Z5|Ha6lqb~6E&z0_MJCL`_4Tr}#@b}uwM!x6uN#z>P@-d&T% z(sxeBv)xF5>o>|sh1UHo_0Fi==vdf|)_b&(?SwVW%PmMZNjoj1sxK_D5eXf0# zOr|tbcirBaC5GLnO;4du)LPWxs3k@_X}{)SO+W3<@!WiwY~uhatf~fA=s%VEPnDaj zaSbt4r^MTpbtC6nc}t(hlh zR#d*}W2K+Xo*&6mytocu$>SAqqt?aKROR~TTQoY9=lVk3TvIzKtqTPcA*q7KB9X|T zew7s!uD+9qT1{Qf(i-KK#^lhh&PTe`$38!c#?5xJ5%WNUeh~c>Org-v5opQ=8(gg= zoAl>P1Z>tudP<sA+Y!+4=OosdwJX#E*Ok^HnMYP$K!My>=8Sh=YO%8>I#bsQ%{ zN2F(cvXa#WqfxEFO!eHryES4m;Y>p$l5*2K5;}k%(2h{O$#M?zsMP0Det)Q3M;BGr zC3U|)BkHBYex)mHnO3vma+{B#!<6nOXo8oDi7PwY+?ihw`lS73cqsY zDq)gTw7;lXj+P3=zR^ZERjjL)&?_`T>hW&yRz(g*7|^?facGJ)K)T5SF;{T>*LWBq+|Qi7_$f0)k|Gp zxzwNn+S1Qh$Fh`FNiBFZZ_~*iIcxfab&$5Q@Ml%w&uW_-)EKwfC|Vl~2i%3wIZ<+5 ztMU`F+z3%&t5{mjD=_jT>wqYXH`|bYe!`E|HMAyLJd>;@5G&lM#&9Oty!lfxKnn^t z{!TWKswOX~+Fho& zbsB->2fCFdi`slWso5v1>{k-5&X32ItQaIKl0mK6)XO z%(=z&N!Mp6l}7&|4DiYF`G(}4Qk!ylLVmoh&{8TMUJNvO0qwzHxZIv(J;NsJ%CS~} zyECrKUm8)Noa>;l`ccTTaI2x}ls!6kqCx9#ldEP`p{T2Lg>`o?=sM15;lv~_u$hjd zPa1pT(W7iMJYH`dEH39Q)IBP#>~eLZe52ewb}mnKQR+TP*Sg~rT#n<$2tDhg^&UCfp;U?M=^RiuoRE*Ms0s;(G#!xt-9$fmZuH-Q?%zS~-@*O{(oU9Yf%aB2i^vU=)fGDI@(*97SFiIp!!{wy zdfJL+wice_{Jlx}WgU}!vP__MBOp>?NVr@>&niET(jbjh9ea#vgP^vupZmAM{afk& zt#bbk_N+P2WT!;Z71%+Wi`0;G^*()Y!`gq82}+i#9epm}$`_2To)D_joHCh>y8K$J zG}ai`cCuwd{*BCX)YKpF=*Q^L=NP5=8qxp{%e(qH!mnCcY6^Ku@dD{8Ob{0jJS!MYW&&_3# z`>&I2q&(8u3a+_S!_c$#wYY559-&}18IMW(-g6x?I*IC7rpCJYjg9eOz7(fk>`zmY zswi{PqFSMD{tlH@UZh$rr({Kx-qJ+YA0*OV8mSF5o5AGr0&b#pyV&efFP+p1NTASz z>etQPlvzpB!H^DjxNZ`6uFWPB4Dzgjs#7)N+Lohw7s^Hh{$%Bh=77N_znE`GW?ds8 zmzWYukXOg`1a(Gsw1Heo3LiHJ-9%5Fi%8pSE_$2)9Mm~pe$AVrInt;t33nnH&8_}t za+Z96V2ySLW?h@YmGyqD(C(UErGX3{>e~d`HyPDg+|3fgvQDztbkL-$`5kZYXN!S+Nnt_jMnkF~6_xx!=PavaS(+_WJbkkE50 z8gz~atl}b%vOTS_RI0w#l~Hb5Zc2L@bWqIA!LS07szE*%Vh(npq3Dk4N>uHkc5{t1 zr?NhAHyg{vW7j#W?c=y++)_=q6lKq=J0+&+$tNsohh}u9i#?UKg$e!I>~OK?-yUc- znZ^wt)-mBg%kx574)v4VM(awFb0sXBb#sKRrK!b{4o^f9G{EwcqukJtKQ0?%8b-8v zo)HbYxtL61&_Dgja`H?U%}3FJ0r{-%6-nj>Smiq6&q&F+%s!mS_lrdX{)DP*L|Xwh zF-B9ho|20*D^g?7Hkd#BqmzlYe-g8wYD!=d4tUhj@s;B8mv(%Jtx=cm`pUSH=H3Ey_A(ata6{_3gpuImPkC7 zkqhp!%NjRS;ZL%p(^xZUx$FK6Z>xyK!+HU1Nxi#CMWeHx-}{l@mWrTdwenEg-PE}$ z+QndZKNZwrKgq;mn!Oc;bp>s1}QMGh&(_Sx>qmo@>Nv3Zm*^T!b6!|Hs+V<8-dv312me%yg)uijaNLm^SI{sAp_HZm=Ez>}LHici{ z+eBK|DUjB#|H$~w?^lWN2rG}aL7wJZV!LJHXP9zcGSJ3jpnAdy8#?G)>F7` zp$aJ?T-HrPcl{SxH{ZtPO6(RR-MJJOj-;d_U^PGO zl$B>zJF#`tCfHQj-+dmd9@>aRNZJb8!QjRP<=N9=J}p*BkrAm71YG_te^5^QZGzG6 z1*oHs9k1ia`JqG|6|IwtYhx0YVU@hItyvovt1(|HNo_u6F9*nxrIOIcy;-ujXz zzB|KsFd@sD&H0Jhu&29?p5QugxRRzAJ@@1EE@ zEAF`=Q^_X}$>TH+)BYE&CFmm%)((M0xM;el^%rSRL_TUgTWh3RQzvBiQ7Y8==`WJ9 zf;#_?x*65eY*l}~gqlkwZEThnPAtS!$#h1iQjpzh(>_1`QRA+3VFFUVlEUmXtFP*e zIGe@o=XwsyNVH(ra;&C4)ZixPS`FPMQ^^@>Pn;{h+;D;GhYvD~Q9FjE8fxR$_LRA# zN$*T)2I!t8YGdv*x)BE6N%ZHGNOHEpr0`^tksCmB!()Yfl=qnY3bMZTsXYo|tA2Cy zU1Qh!Q>DgjQyzIaO`lK6ucX9^Xt|}+uw6fcy`<6Xs|sv_v)%^@YuAt~zWj!bE)Vm!N6dptTZjj|I>SOgGuaHH5TV-XHa`m)i0p|88`@f^Gt&m@w5Uv{J9`;Dq-H1rmx?;nT zd#lndrME9}Kv*C`kcYJJ0vA85a{b-m>$ zcV;ITuD3d0mCFv&Ids=w-E` z8|LB^P2$jgnfgzYRBkZenGC+)k?1El;$hbuPh1#|b2+*Aoa zgUlDca;p9NyTP5DD=&48o@u!7GGK+i(2|v!iAzZC8T0(P++HA;pLeB&jn)ox{yUwn zAGuJM(EP~W#7Vo?99*xo9$LGLn|GcCm>B0?K-PDA{q|&j&aG>r*(-{f8mSic(-OwI z^!5EgUd1RX@?F}I!ju8e0DXow2hx&Mt>vpRCiA$d4Q>jzzL^n|oJz;Y{lOM`Rcy#W z^O{I)JmTt(fq;8CTQh$*tIf4Cv|Gu4@wvF2U!j9Fj7C|C$fVMRxdWPZGB$+hA2{sa zSjk4cM8Haatw!iol}3AUl|%0Cpo;v9GTN7*ORB8OY6Xnnv8O8r+9MjQiOJd31jHoyRLq~RrnAlRuSEQ1*58mUdVp-4 z-0x+wVqH#7YB3FAh8eApb2ETbwQ`+!_ec(9#g=y7=c2{aU#%#xIe31PQd%|E^OEl$ z89937_>o7C8hM7k;2?$9z(MYk=sPbu%3uJuSi=BUM(ZdfQVu+Fkhxcyi;Jt*ZsB z|BVRNW9|1el5mUPq0(3E{H)Sdv;3K1HG#Bc!LC%)jsSfx*KcB_?TZeI#yoV=b;?Tz z=|L=g*T(g3G<#!HZ-$qz5x5UpXT9fI;Mn_Yv9SM|oj*eD#uM{XysTMgy_|ae1F3p{ zPL^L=_xmE;!$^4hL$EpxKVTtSV)(o6ePq$j42D7$_}td^07|V|YBQ@07U#n^-<`s&`W% zi!xp7l1gS`P5wx4)J^%QE7Z#~`c{NiX_0XK!+sy71)# zUf;T8JknRMozyP+rXv!6U#WphExa!YzHcTS>YdK^b-j@GZ|}-J16+GVKE40UNI_!L zg_!MTUq0aOeKp0pdugdAnR8ioWxs*e!Qp95hi0%pFt1}aq&!e4T9X*XjQbbx@dG$t91>UmD)a1NXB$nCYs54E(>55r8fRt zgN;s2*>Q z*mKhy-92#A=VF=sRg~(2)+pR-QN^<}ZEJfuC+XUNe2tEMeMWvNsvDUuPES^qvoWqI z{y3j@F=_#?uR!Dy)T$T()US&0^0UI+3(tk5;TmBBjlr%im~xHpjMYLdq40VE?^P$H z3FsP#_G*E9v4;-jY%0KL1-YPQpssJ<_A|um1 zttDes-~Snlk*Y?Ff#CeuFheL(?Y7cXau)lN19`wb=Gdm2e^Y~|QU9eWt29d8&5OE$ zq*(q9r5byS%*#e93Z*k&Vqvet>Ngn_`mFp;tD0cg%~|VL__Lz$XJz5fDr+ig*N>!F zX;SM2tg7@}QC;*Zh%556pG61!H22bKrFEaV=8Rl@TBWh5RS4}%BwTltcB4+Np&vh+ z)R6)C+*%;o1O#n3Ylc|-K283mk&3`6q?JQqT)axLad!1D4DpCcs z{uoOAlYVLRgF8)kW?{Rj^6Z7vAv&VDflSQxzsiC(n|bnkA(7en7Ps)h~yeVgn+6<%u#z2VDyTgZ@+) z>v#w@*4lN{_nz}_2)NgQ-S}8a2YWSUopI*B*6F`l&FH2-%B=amq}CxhLr#Paejf3&UXgb7nC#`x#q0_o#*J@gfGnZ_B%ZF`nt5%SQ&`f zWYBalC8clC*n6`c3-|JTF6|~NA;~39C#&U0HsM=xQJZu{=aCjf zl89nba_93H_i?ntQ(r#J5B1WJ^M^Pz-a?194TrlZ^WXd;#jX|z?%mk>{Hx45Xjv%m zTrDRn_1u{M+JJr`jb;qBdLuK;)3^6Cv=L`TzSUFpNQ`RhgCB{@znbLi%WG=gXs)Y_ zB$~2T{G|riOG&N^$p(%yQdiE^XnN6i>r;`!`%otyeOmE%yfMU4c&#CtaL=k;$Ku*m zQAefccj@VtMTJ~=vV0D{dBLAlulcZi41F`I@TFmVub>X68(J5%-aXBqVzrE0 z=ZDR$QbTLhN=`pj6nFf_0twz`3|dMc^V2LQkOHpP0q#A`FBt9Uq+JAZ)bEhCSG46pVJHG<|?=z%lvowxY@q0%HVpW znV#darpd0^#k^nlMH>{7_GL5n)r|U)v?P%8Wkk@QT&{I7SHSA4W7;32x1~yF?z(On z{qnHZqswz|UP64w~D!YHoatJG{BdAzbDT;=&+-s25F_Shla4jevu z!a?@Bv*-26OpVLKC1%rRo&T2`(dy$4)2BvmP9JSDX|k6;8v3N9I@c%e2Iu?8LnY_c z#{~kxni}nBbsO1|!cG=;U$p0wNFo~^b zgJw(oCP~ry=8OEE;Gzxki}IhQ=yln`!shQY7M2%}tu>m+MezmxpCji-m;0oXmY@o$!A+`ZmOPT7;-Hkp_UINZ z3%Y)SW{dnK7Siuk)6}9P4&ML&|Mv9s%kDj|72%^w*0;m%Z0COmwQiT%>wmX9z_TxQ z_qSWLS7BZ8cD+1z%#{C~*}7eqqV4p%pEW$#v*Y^zy`aY|`XX%qJEHr`|2q_I_ryD8 z?#s}Rmj7F_oqnz(yps63dCmUw*Nu|@_bzPjXZD`E%&R@S-CEGR0cHRDByZI&C-7MSrKLk*`-BTsoEs^c~9||bmZiUzUJQki@?!L5M z&!e4JIFHx8=JAc#yUZ*4zVCc|AD3)*vTW!7AVKkV+e)_U)$On2YgN{KyK334?l0o& zShC%m?tdNM0VUhrE!+7&h)}#;|B~%q{{M(?RLOQ5WVw zSGdl>lK7VQDEe_5uMpqaCGpLX__}!(-=1C}zNsbgb=kKp{{s)6SBNiH65kUNpZ=(^ z#T#P@{6=l_s~=N006rzF1LB|iNDa*gkRqWJz(5?{AoW%(cED2{Jy zNqnQm7p~tyULn4n%bUlyx_4Q#ACmCn+o8O9e0NKH{XC2B5U&v5fhF-B*tabI10kMQ zh;P4=_%=v<6FrNsw^xYo=#uze==ay3@9>iNswWiAx35=-@AQ)RdR3M+`@s@Fz6mAq z&6EZAm0NrjMe(JG&o5W6J+iD>neLar=a)AxXV%Gfql$jO!ar_P>3N)1?p;JWsP+oS zy}Bg6uE&&l>klaG=U<{3CGjnh3ox;l#W$cRzBwiFeG@D5zAoC&kMHJ^_&WZr-0qY7 zula``-=dQE-kDV9ejvsF&yR0mNqk);KK)@7jcD_k_M5Z}s@_`Z_( zR<*SF4l9c9HR9{%$CoVgzMIfIKK=h)?ytYyf;DB{u7%C=+qL(aRg=6YWxG#`?r&L< zMT@$WS|YrAHjM8m~L z)bREt;o=fe!^Kxx!$rSv;=)A_mJ7G_j^*!eo?eHxh2K$g|FtdIewX}jc6W8#@8arV zg-@|d$@cAB{Y(GTx=(qtny{|l)tkZJ8b^7vJE`kCc-Ql{)?v!MqKcqf-_g6Bzit1H zCF?tR_w#q1+rLxE`rW+6{B8U1RFxaSdMA?_Lt#vn0Hi z`_*CnPwNEb68_M$dcU4YnO9Y^{XQk(?%ucjJ;;xNQX1C! z-CTJry0x(IIU3ev+0w!pKJVOe3tuMTRZ^IIxV?pMVtp6yudYXRNq9g>cu+}rNJ;px zlJF5F;nL$3Wsojh)SzVM4ztrO2S)8 z!ru}e;r8Fh{dRBh`kjliAPw(U65hKcd{9YvAYm;Sc9ryW1YxaX?JDW#1j1TJ+Evoe zX(ju|O2Sk8{oVG5xZgD{UVlB|xo&-L@6M9-4>#MtuPcxAKdoczD(P=s$@c#bzKZ#; zI;qEfWjmzpqCAPG;&jH8)?PS;w0W1I2UA7v%roow$JiT@r;z z2)Rqu?8{w?d)tV+*@B`W)&J>&<4A5=aPvO6q7w?}e7R;FasSi(Mm&Lxjd{5L%7;?k z?`Zv4t=*^lX!TPEt2?;-oEl20F{O2uuWI?Qu*V&>j|7(Q@43oWxfC1S)RSd@b&TwZ5V zmLF;LJhc;QTe(~ctwuh_bUxf}Mx3Oo`|#4|C5 zQ}8mp9{-6C;gk3;+=QRukJz=Pc_@y?(=m&)@eW*okKwoYD{kM)?1cMb1s;hf;+Yu3 zDR>!PkN?D%@g4jUf5FzeOl@Mqk!9#E`j=&U7!~1Y4uEzEFA%26u<4(Jpov|lY z;fZ(#)?p)FhO_Z*T!O1{18%`>*rEgHjr(CW4#n{p#wv7F2U8f0k_~b+^Lh<8GB+C)?fn9$1Cw>ycd_?Gq?`l$CkU9?QtLM zjfdh$JQX9D!HaPg-i8bCF?=51z%BS4{)uBdo9AF0n{YZ_hjZ~kd=h`a|KiSF%&s^P zkHs+CKHPw_|8E=IKt?tuqke>@h)U;q>N54;zb;4`=m-^Z`;S8UzY?2P+ke;kVAum&gN zMK}v@#|QB#T#N7HH~1&E-OG$%8ZXAb<3I6Xd>UWF&Gv zj}PH%_%42qKVplXW(Vwn6?hb$gy&!!&&R9q7MzdE@p*g`Kf!Id-TvmT*d6=fk$4gY zFo_r9EW87k;|sVEKgXZ3^#NuVJP-%r2s{mwcplEcoA4fd1fRxNaSMKrI*_IAf_r0c zJPc33GcbltcsbsP_uvwI7T4ou{0{$%Z4WZ{!d`eN9*?JE45#7@{0Gj*$M8kmgkRt< zxWmEb?syQ^;}pCe|A`ObllU*(gx4Hm-h%hxQe1-{;y|;=wowkHhg;gDISbGx1iuA6MY>_$GdW+i<&n=C0Ts z`{9vz5}tt(oQxOZ)p#q;$7Q$%U&qb(9sZ6xR+wFIf9#J(<4Jfn*5g#X9B;t8@L^nu zui!iQ1^$FBE6onr9sA>&F2QGUJ${bcu)M$7 z4)?}hI0Q%FDHz5yUWC`+99)3Qa1FkWoAF!x19uu=j={6B9;f2vcmv*r593OF1>ePg zbYE+w!}7+2w|_&$D( zzvE8B%-9Beu=+e z>yc(>+#mbnP&@-`u@NuB*?1Q&#;0)|et_TLAK2!2b5A@N2jd7l6{DELt8gwpfKTAR z@NN78f5x^anBDL&oHxqsH-_`X6=Tik@D1FI-{K#*(>QYvOyUJN8y~>OaXo&Be_*fi z=0H3FPsduEhBNR6yb~YBRro5tk6+{OxYGpA0|()7JOv||#Y^!z{3kBLmADq)!>{l+ z-0>81cRUaW;&C_u!!}_Qzv!31Uu@aBQi*P31iudCxd>P-y&#}wdoF`V}u{aikn8FKj7T$r2aSgtKEzdDKVNdLj z!*BvdFo&1n4R{Yeifix<`~-i*HUV>Y?2pId7z|(>&%+sb6W)uD;%dBNqB$Gy#6|cN zzKn0<=h!l6cEo+L5|74{F@OoY0B7PHybqV+YTSgM;15_U#tZQpyanIH&G;4mfjh*^&e#*HaWtNR5uA+E@j9H3%Ww_8j+=4& zNoFV97l+^oJO#s;#u<1M-h+?eOSl?x|BiEUA+Ep| z@eTYKf5pxTb6*^cL-Axh2OIEQyaMOrqxdvFk8AO5{2c#-Et2N0csP#4Q!#=WyclQU zZMXne;mi0o?vye+-~c=ZPsVdFj#Ke+yb#Lf6E{)szh%)M|pj>CzVzzc9D-ir6*WB3BTg`eV&*dl9o zzzRGHPsWLu!i(@)oR2T!Cj0__!5wnu?syOm#*uhB#&9amz<=O;d<{Zz9Ohv9gv#T-t@oA4f7f-CV~xCuYQ_UD=hVik_Sad-~i zfeY|4d>-G&t@sDFKF{ocd*eY^jYs0~H~}YOJvQPccn!|Mhw(|=h+A+gdgq&MaW6aw z2jW;z)Nuk&cYjTExwIE;2u|) zzu>qT=0aSK8}LK?0)N6*SDKx0Kdi!W7{DxEgxBC4ydRh2bGQLN!td};Y;zUog$LpQ z9ExLcA|~*Byb^E5d+||x3jc+h@H6}ox0`9U$9=Fj9*QIJRE%H-FUDDT8!p7h@g>}Z zpW{#1>T0tS?uS))435Exn8ay#HO|2WxB_3qjdH7`I~C zY_lEigMILD9EE4%B%F#@;7xchK8maHb^HjwNACu67u*|r<6(FL#;^%5#~bk;T!PQy zdfbfP;eWC1jpkn13lGKP@pP=iDflktyq4uxhwX-N<0R~VhyJ861)!Y#KrgwuE&pXE0+I*<6{r3#A9$Q z)?gYh!Rzo&T#V1)di)5tV)-o`AA4XW9)n}C2Ge*6UWa$$VtfYI<43p^%WviQ*aIu^ z7#xc=n8r)+I=mAX<1@G(Kfatm9HZ_a*Aq`yhsg0+pHvT(`WWGhafZ61+;{vt z``yg?x$4f6-{XC(e~9(V)OK<`a3$-X<#=!5yKMg%;jak)M0oqV%nojfCeB&jMV+`jxDIf#ombCVUTn#9wfi zyUh;R{celrK*GJS|J`<+qgX$ZpCxrgw4T+DHvWc_n2 ze+l2hckp}s5qG-R+y(c#*W%fa@PSxyuN~(w)(>O(NIV74z!YZjO1uW=5YJtN=iwrb z^Em5Qv-|~o12^Hf_yg`R&)gaJoM-X$AiO{JooB}x!un%bJ{-s6X*dZJIEDQ$VgIXG zJ`3mITwIJxaV7h|#Qv|d{4LyqpX0CiCvJbA?Z4}Nw*Q{@+46m`7xu&B@OYevVa(xF zyoC6#CjJ{)ehbdS1^6_s!FTWj{0_I_AH?5!zQx~uzAf*BJ#c>&@HSRTa;PQh7tJR;2p)ka<9Ixq{p;9&GRt##3H}Xl#yNNo`!8bu$5{R(zJzOW3x1A& zV)=t+2kea99<=xmdC=moX89l-h9fb6A)JaA;5B$1-b(!U68}Rie*{Myq>B`wdS~C4V`a^%1qJoEOGfpJn~|>fWAr5l(0Q zOxDjw%-AShb*@Jj=*tvDmGvWFT)vli+Y6A_lWla;$6!675E&!gd5pz z3*pc47yJWvdc?Nd=Mjtl5Vfb=7p!{3&UYZ&oq%VveVw|$oCl`ZKFfBO<3I6U_FF`F zCE*tduO+;Z@MriH@qdTEu-$e`Y<-(0w!9s7#ctS#?FJAYf=4c~ct)~*EXz;98jNC= z?Ji)y>FPmJKf;+y?EJ4~ySs2PE@Qu^2|q`89pMiNe@XZk!rMJ+;nt5@cvr%mRY@P+ zSbi|es~)w_GZ2r(;W&Zqf`lV@E>6RlY!C-%c?9JbWXd-PKK9H+5gko6Iqj5)lN?Pd|a9`D12xPtATCcFmMa=eYK z-^}t)@O%6bw_9f0?Xt|m9q>Txg+tix=w)_Z$1k(vjA!}TY!}2hPR0w_?kd8wa4z1B z%ZT?G^$wB=b}jL2#_#Ya_WM)qE&ne!TP?T!c3f`T?S(y-+xEQ(A4WJycp6?x zJeT9OY^S}LWIP8O@O-?O z_+}FRJK;Hm?<4*PRJo5!S^px-U%|KWef*03w-Nps%U0O_9amVm3--i=aNr8t|472e z;wbh%mGu)@9>&R-!%NxjD#EjHHu20Oya1Qu6ZjJQZ(#cm)xJ^=;peJc_pjK_d)#dQ zxNUzR;ogJ?5gv}G;F+wC60RrQNcb{bfRE$zkK5;X8Q0+^_Wz3TclZaEJz?(hgvHaD z@SeEe6Sn_A!iVAr9EE4Fe+}U%CfWZI!hgf-@g}^7{U0FwFs@+#R|vm`@8d`K9sB>R zO8WeR{n|Zg>pNn1?1@!R+J47AY1^Nm_LKHEj#K5np2~Lhm}2|$2wz0_D#CLJ&m+8y z@Uys<<*yTdpYXSY+dpN;?}U3lWy=qG%C_sv@+v%x^}|^|hUF75g;~6S?XDwyBQC^6 zxJH%h`3`=EtyY?QVg(+z()K$ZCt?_<;stm;-h>Nr5k7;@;ii>#o}1MQDWC8QRqoT* zEA70>R++6<+4k)TcgGQU>MHx(XR%!!W?0`u_)@~N2`?bLWR)F%Ij+U^_!<5i%bqq{ z;%>MH?)$XG-{)zIe;~^b#Su6P&tSXg({>&gj~dX_%6ct5nh5TS-zU^I(!#DWBpIq@+GswOSb+99EUYH8E?hs@D1F8 zKj3!%GIzl}{$~mfSbr*pFo}(-+}HC6UqbkD!q*VKp71S%?;w0H;fGYor&e;@ z7w|QFhxJpNkOS8TgO2=~Rq@F*P3cBc?enB{dinf2!qo`zT9EWC~F z?kAoVgrCKi@lDomA>3-M?Y|3lz=N8v19rxqui19JU$gj!5I&am z!*M*GhEcXl5KiMoET4gM@Sm)|2N$z^IpHVpMV7B8{3d>kpW%;eSGL~5EpboW2Yau# z?Wze6!eJ~wiSRf~U>eV3yP1Tq#oJhZFX8)f89t6LvfUf1T;G4A{!q8BZ-IN@-q`DP z+pmi7Kpe{Q6A6#ObFcJ}2EFXrWS${g~11t|=1M8=- z{$iG2hPUD!_yF52A-o))CZ3mB{|3u9;ivc|{>*mXTNZACJHKV|ba~6xcV~G|ti%C0 zl!H&&L{pQ#Q!AApT@Pg9zSHe&k28pKN64kwykgV zwk_WgJG^b{_h$WpEboQK;Bj~=o{3@hPqKd#%g@Idcs1V2c6Sk;hYN}43Bs#zJ-&%w z;MZ984(Ig_=Y<{K;k;PCAIlHK-mD+Q`Xg0I46yE8FTks_WG*a(vlG=QS)+ zyGnap-CMG6wVUVdwv*?^<@=~TJnsUvr_^WE{iS`S9>njf9U|>wwYNO~@)>mep>tc$ z^;ch}_LKUgS|R1sE}ly#hk5p!YbjNZc{gsv)@9}>oQ_Z6Htbc-cI6h|Ok9K?;?G#U zojD3;;x_zUmFu@(3v)yZTi$@vaVG1t@_Adz^=cAZb#t%vyYLl+-FbDh-*s&<+;hKd z-J(0cVK1JB9n}$XTy>;8r>OC@=wZKm+EUW_%^I(`gyn76ub+B?{cdcFQTDsqy4)T2 zMEmXW7Nc1|lH(G;#yg#OFCu&e;nlj`NfN(a@BR6FBRG$d+{Y8`cdK>%M3#3gv(LAm zD(R%U%$Cn3+*D@ASy*Prd71D!!r!r7JL1*zXxYM!->L=2ljELD*gxMvo}K@AKKHfk zcM;BJ`*%J2d|zQZj^}^gQFvCF?Wey}t^1wNdCkOyY_|$G;OF?eA8)y-zo*+mo|9|K zZU4EriuD`tbNrd@du?ai9foIZXX{fq9dE{kxB-7h{k>G(zY7j(!TI7@E$n#y^>o*H zoLy&4KNGpG?)r_l-#>35&%6Hqu!i;ba&`SE%$C{uIoK>+jxMAlcbrq~_l$MF!`Qzo z+iQAlxuYGw)sFVN!7U|!3u{=MLp=Afe@D{WAXO64c=a?sk1W5L<$ikZ$LBeU{l^pE zB0Y{goXhn%9qqZ(-*|gM!@F@DS$;B~SJO)i$>$n~SD&kv+wnYYXV0&O=McV|<1XU3 zR}jzYGTUFD3thjF<@#Lc{+j>k{`z~(8rJls;R8{BkKLtzRr1?)xDj1C5{GVQ$8q`L zXwsD)hxHe=Fn`CBTbie}wBw%D(vCNg^{9S*2EBj4|^Tk#gKjA9~-`$GO ztIOr)Z`9@D1`SL3^sa`*)b@6N_G@k1_rnpY+`RJ%Pj5~9tu6kUgl7|;!*=)K#2w6q zJJ@wtLU`zoW*FDCu=8x#(atl)@}?a*f0kdw@+9W9@mv!ms6_hAbuPqln#vy*Mt z4QK9T=Q&qBQ}U@cw!BLl+rAs&UTti)k2n^wzKW0 z<&KVb=yR#{iTwy4=vlp@ny}`pTE7@dSf5v|XG|ol&!N^gQiQc!)OyE7g!MVl`p30| zH6PY`$Xvqu9Ju-jVSUcDUb2etYE|z0I>H;&Zv6iF5X*ScwDha6B6Q`!Wj8!~iBRjThr(I1{hMJ5;%k zcj01OicjLxxDGeq$M_k3gIlqz%xsAru?rr6hu{!A0#C#-I1$5`!72DRyb}L`x8Xuu zge&n`T#s+!C-?>ajKAYf<>oH9H}=2^?2kin1fGg#;v`Jq1$Z%Di?i`AoQF$QdG1!= z)3^pV;70raKgO;2AN&K$wlmvdN8A?=zyUY}N8*Wi7EZ(@X7CdH8{UBb!256^K8`DK zEw0DS_z7;qpK<#Z=1#Z=?v1_GZv5VSH>*#nhv5l$5}t!K7{fT8j~C%AydH1C+wlQ> z7?6SCa0XtBv+*vRhY#T+_$)q;Z{pjy89%{o_%pWN(QJcz;y&01D{%-OfunIO z1~GySn8FM3QoIUh;T?DvF2<$!BtDJna09-JAL4ho4Y$*NNvXGQk8N>R?1B4ZZ>+#U zco?35C*di01_m*L4Vc0URcSX|idW(_cst&S^YH;(g3ECwK8r8mT6_aH;fJ^d|Bc_` zfACi}UkN69EJDV+VC)@>h!#(gI?2U)1(#|{zhvNx&CI&Ey zlW;QT@O-=oFUPC!I=m6@!TGodm*C^L5}(7Da1*|VTkv!I7JtBB@lV{jt=S&CU{~B1 z55NI91dqmHI0{e30ETc9CNPIn@d})Y*W*oiJKl-&@d11SSK;&cFMJ!{$FK2wEZfCw zi5;;E?t}YcrP^1n3m%R~;~1QPXW>Mw#dGTxBwr*rMLoL#8+?wZp07p zWBd}o!9TF9o!J`O;GVb-?vDrKU_2a0;mLR^o{5t%fjOLtSKv&%74N_YaWOuPYj6W@ z#Lv`zl5gWy{13KjZ~mX6?LNBadVvGDSaMiR+)Oi?=N_a@$iozAp`_6i;dn^ez2}!R zdhlGsJe({h&m(u$l&;BiT^1_}MR{26Zg-@MqNAFuxS_c2zP_(cf4% zd_Uj!yC$#a4UA_3Tkq7gL$WK^)4_9Louu!Yt0_JT71^S8^@avxvp~jQjZo z5AhgJu$&b<$KP19PUv-P$i_@$TXyC>?8AN>9+*`5{$hj~%w!hla2^*km#=XZH?W9X zxt*VKAHU);R`4u;<7HN_8(Nb$vLT!CX5PU&*@<`aA@=1kj^r~O$61`iT(0CQzRe;Q z^E2+}7d*u8c#0Pp9E1m6!&;0BY*YC?%I3U*o&!5;~);@DE@_G_#7uQle0L7 zxm?Lre4B;bz%AU$eLTQ}{EEkUlBaowRc{Eb&TDx+>ocBB*^=$qiQSmO-c03V9K;bE z#iu!jnatuG&f{X{@-?nv0Smc_TlgvW@n1a1qdd+Zc$&ZPS6)>w^lC=4He=aB!_wyn4IsV4r3_P$pujTcu&v-UvOSWbkc4Qac$DVwQgE)et_%z3GJSTHH zXK^lH;WEC;0v2);x9}r=%)R`aWjxFuc$&ZPS6+2v=+%s7ZN{Gg+{R!V_1)I zY|Q3t#YEo2?tFlK*q;NL&Iq63IKIGXoX ze3u)!le<~Q!z^b7FSA<1&^oNg7QB@m*@Y?W#lGy%Aso&ze2!V1&3RnFT(0C=u4fU8 zxt*Wz3m)Pzp5R%Y=VexF6k3zlu^}7t7T(Tw?8t6RVSf%}IwO3R^ ziCejypK(8r@EiWjU-&;(y(zRNuVW)NVG`RhnO*rXAK?g&;%JWLM83eee1)%Z71we- z-{bq-%g=d~$9ab5c$w7_LhCY?EqE(CvI|q#ivu}?5oT~4Cvh5QauJttH4C_fTlq0R zdsxDw zJkB#b$IGnNG_)3D7|RB1%9gx?cd|Qsun+rjAcru*436U@PUB3z%=ui(6?}tl@g2U) z_xL_{a2NOUpZuEN@)Un!5aWman*T8lBfiA~vt?RhuvcO9}n;l|HB{oGcWKGqg#a5=1pwMHf+xn_F^j2IEX_znqxVE zQ<%*hF5z;%&NulFzQVM+kc;T|kVnf2Y!UV#g1kmv;B8@VBlzE47}z@O zTLk~VwgpyBYFA*Ad~xMyRi1pJ+W2!(K?>Y8J4N8@P=-xQlyO!crdPah_y3D|nVy^7EBOu?C}ApYcp! zGhWHrC&}3-g*}|WWcFllrZSDgIFjj%FzAm3_rYXlGK;gB%^WV|Qm$Yg^I6CZEMhUY zaR+yC4@+3eG9Knp9_LAxvw~-No)=lAYG@Q|Fq*abCnm5NZ|3hkgbqw*SKh}|rf~oV zGo2A;@L6Uui?f-{rCh;0=ChC+Sj1xP;vSZ;lw~~3lPqTi&$3Fj&?wemH0v{-32eqh zwq*we8d6MO<;9343 DTq5YY literal 0 HcwPel00001 diff --git a/release/src-rt/shared/hndpci.c b/release/src-rt/shared/hndpci.c old mode 100644 new mode 100755 index a6f0168fd5..8c1a356ca7 --- a/release/src-rt/shared/hndpci.c +++ b/release/src-rt/shared/hndpci.c @@ -810,7 +810,7 @@ BCMATTACHFN(hndpci_init_pci)(si_t *sih, uint coreunit) printf("PCI: Reset RC\n"); OSL_DELAY(3000); W_REG(osh, &pcie->control, PCIE_RST_OE); - OSL_DELAY(1000); /* delay 1 ms */ + OSL_DELAY(50000); /* delay 50 ms *//* for 4706 reboot issue*/ W_REG(osh, &pcie->control, PCIE_RST | PCIE_RST_OE); } @@ -980,6 +980,48 @@ hndpci_arb_park(si_t *sih, uint parkid) OSL_DELAY(1); } +/*for 4706 reboot issue*/ +int +hndpci_deinit_pci(si_t *sih, uint coreunit) +{ + int coreidx; + sbpciregs_t *pci; + sbpcieregs_t *pcie = NULL; + + if (pci_disabled[coreunit]) + return 0; + + coreidx = si_coreidx(sih); + pci = (sbpciregs_t *)si_setcore(sih, PCI_CORE_ID, coreunit); + if (pci == NULL) { + pcie = (sbpcieregs_t *)si_setcore(sih, PCIE_CORE_ID, coreunit); + if (pcie == NULL) { + printf("PCI: no core\n"); + return -1; + } + } + + if (pci) + W_REG(osh, &pci->control, PCI_RST_OE); + else + W_REG(osh, &pcie->control, PCIE_RST_OE); + + si_core_disable(sih, 0); + si_setcoreidx(sih, coreidx); + return 0; +} + +/* + * * Deinitialize PCI(e) cores + * */ +void +hndpci_deinit(si_t *sih) +{ + int coreunit; + + for (coreunit = 0; coreunit < SI_PCI_MAXCORES; coreunit++) + hndpci_deinit_pci(sih, coreunit); +} /* * Get the PCI region address and size information. */ diff --git a/release/src-rt/shared/hndpci.o b/release/src-rt/shared/hndpci.o new file mode 100644 index 0000000000000000000000000000000000000000..87fa58f7b89373d9a9e300068594e54a41e03e3d GIT binary patch literal 130496 zcwXead3;nw7C(CH_6_MIO{W6g(5W<}0|^8OO@QtIAwbwdAS?-sEFwvo5Ej`tQBhD( zQBhFQQBlEhLq$c!9d~7L8&T2G8C2ZHWpEoE_vL+0ow}XQIKR((@ALkAd_HvUx9U{Y zsk7Coy0>p{7(Kp92w}PZgypqbkY&wi6qbO8xgc{#pP3{#W^5e|@Qy zzlh(DS^qEob;AGr|L64^e@Kyk=#TY(_}9Ar_a}ZyX}|mr_30Z^>mz@t7p?05IDU33 z{)+!lKde=K=^yHUZ&g3=5A_>bjbHu8_O0eu`Tw!~AIERaU+w=*`#;wIpXDoZM3KLJ zmdBsxpDbh>%d&+S+g`M{EKh+owtb&0%W?{>tgNB9NaG8S-?G{SMRy-jrKf?)vb?6s zYgri`ERVlDYj75oXJ(_EF0xSSbxVDQB#l5@BC#xgdz4kcrnB3NtSq9W?q%C#X9F`W zE2nL;7lQ3NrjWL8t2qg@O&LDeUU>X1Bprx^8g?Z1d77c1)g7beYRWX1QngKTNc4GT zTm!=`wOLthvwT@p*oh{f$4axT&h0H87E+FDz9LCh(rAE!Zo0G!jZPO`yP-8*6gsU~ zE-FSj#j($anPb6U-VFfqA;K{!L%`{(lcbnrs~*R;uuO#GVkx4k$r3~|{(m*r zqfBTKEH$3kB3hcrq*$xk+7yV|x>&1$CubU%1IbRw64UemQ?mpONSD((iN5WpwV9DM z6Xt(H8cf8prV}03_81U#GBc)&XQeXyUxGQ2x}g&8Xf_XEStq5I6XBegHm8`6n63X` zy43wOw3r2P(3k?zE)i>`hPkm;#7!wXQ&OXxdmF*{IpiWThJm5B3;V7|>x(@t~_$`Q# zzd~Z9p~=O;vMK56i~pX!dR1_o^fV{^BV4x;V`%lD56kPMEnK?V%D80|2!k_G0;0U} z^e632^pNpZcT{vD+Kl{uxa>kS8H+~Zva2q=s1GiCHPB@gYn-RIzFeA%%cv%pgP7#$ zLzkJ(!!&?s^C+69+3C*}pqds|Ph9u9924@C>C5kW;j-dWBKOjCt&9>6rs{u^E<5Dl zGT27wzFw?A$u;dz(jlZvyk{4o#zewH(o`pH^Dm&0c2 z(z2N4jQv!X(&aenCu0+Jc@illV++_x3yq=DM=^X_-XnB52dj5lr-?*xB}Pn(%%{tH z@@a{_PD=nYO)I*UE+=K+vWM5E`P%+Glq~6u>t2Vb@=k~~t>iVjT;bqy*gJH&ht~S) zm2~+h8g#-Lba@VpDsB1}x;#jO&b~}5qAM2V6EQe}F0a)yc&-eWkM^a~ zMKr{-dNO+;^Rz>(N~CLPFKt7qPeL7SItr4VuLfq{rUzfY1TNb279>dDJ2klOE7<;= zvLceZGbw;P!pZRBPkQdRn5%z2_!8OD+ioz7L3Tt3-uA?gEiD;NL5?g)L0;J{1^KM( zkhjBn>fkMyfwv=FqJx~Zjf*XBh*+i$p2J+cxs1H>*Z?4PlSUGDOy%uD-khCi+x{o8 z7I>a0@`x`hct2_*-t0#Ka+;S~Uilgi(cx_U*K2hY4WN4oD4jmgA$64LP>bMSkV*P7 zLgkRFEFMnAIMYn=-H~LaPns!Chyvw>G*4~h3^MvKqjb5CC_9A=_cWJ`&Wtjw-~rf2 zLq@M$_?7&56d9H~K#(%M-ZRYrJ-Yx^x-$HC70_@aL)i}8WsG1-DZe5M9LXpkAA>wH zMllM>O&x(okI^VBtH?O27)4|`jW^~kEtNv~a1WqrMx`uYoU>uWmEgl-9FMVhpd$j7M7e<^X4PI z7?Za$UZp-(6Jc&MKGun>GiIfu@8t;ESsPr>SW9T5>ly1)kXN3af_(DF6eQ*EDJUS* zid#@fW~HF8%pr7E%xHCE3M!Q6rl4Z^AQpqH&5TMQ$Te2hc}uknN^_c4Ew{3^@26?Y z2W|O2{66cln3n4iTONR|WbI)1CZ^RN@N$MnZTS?mmvsfhW43%1zL9ke!w+rghwQSh zW%!9L`$4K%*D*Y9=QJi3T3Ndq(g}WLTmBV;5M?qQl4Ni^+^X6a`kJKrOJ_J{?zn80 z>UZz}pE@C%rAjX5%X6iAJKWY6Hd4)*i&^?Qjp5)S*I-@ubsl4+S`CZ#MM$?KRSF!w z!kr$LgMu-7b155Ic^nATmGoyN!0FLso4>;;-koZS?7D>&H zBIf*69=0x@dLFX!k1TBr8KgIKlX0lY>i3Qj{&BO64rYhmK{+S+@(m?eT+{i!6vp|cfQXTA> z0;|<$3h+b&YgHXhf41iZ-SZ6fG-8Z@j+xPH)l5Ctdup{^HK*|60@k9$TsIDR{4~J|Goc zrwtGCv(?R56#ctAgV$<#*?DV7{(tslQ|c-Y+v+L=xFkMetAF)O!Ef4X$jB6Y)Xtkv z?QifXjgQ&t3uIwQ{GqJ|j!MCw*y^|J6nq@~k-OgL>8$nfm92J>XWZmj)P?Z3wwm5O z1^-|xPfiN{#SXtqPI+^SNp18fAF+6g=f=faB_8F++T_2_6Vf8s;!%6aC+;^^y49m@ z#;(KvfTvKiu-&6_smlYVez!+G5=+51dejP1(c_+bS>zry6uG|tDNlAAEn-hz^D4{# zj3=hM+tWrJrWqad?5xrnX`{9yBlaKiROwm#BUgHPb zs6IshlILeV+<`VKCzOI;Y@?n)$Ns+>e6)?)f&lG**>jto{_!@d0t=Y`6=N}*(^Ws3 z&a0kMt${7+YBxoU*E|V!`gE0rG~Ith$6|;hT^%HkeBHA^*Y8MI`F`NPnffb%DFD6c zS*`1@Nmsd8)ctRH5=*rB($zD>|5492Vel04h_?;CF-pdH6lf3Jldgi~!SA== z@5!V7>3MdE!Q;qdKJjd1`J}5H@{n|g`8klThEji-&Q@LjM7sK}P~%HAekNW0iTG>l zT&MA&baf>bW`DMG&oC{|bmfqIa-7?A{o!=ghk{;v$1LROYExU_fU{56znQMa&FNsdm;ufr zj!5ZwE9b7U`~#gGT?u~+en?+KoNmJj|B{Y$k5+d-t>;+vYvEtPJjC^V+10f4%1Ve| z7QEJ^7h1h0%c25a9CbD$i(@8y=PX!g$sREiymJ;Wvt&;bcZAMnWYmNmAuYJ2?89)6 zklrw0DZ{-2EX~Hyonkc3fKH;bmD4F>8@2^GosOd%uxrMX&`M76&w$xhy8tO$&I3ie z;8&cVAXi7^Y8T0rnxb%IlA`E$mm(8WYgbxA6i)k&^N3<05(&N}ihT0fjI}+eY$CPT zixoX^5s5aq7nI&$@K$QI9;!y(1_rhu2Xi4!MT*DMo_(+VB7pi8E*8AQ{=p0r z=`xi1;sT{RyW6c)FO_KcTe3UqA=CLmbKN1*1My70ghi=CfxC-&2lMODrNA`E_!?W> z4qYA41>=%7eDWk}Qv|c?m{VnQn{IG|j_n#OZWBBU#kHZK5k#t-g-e%Np<%rDvvQi| zt+hgx2hGmv9>k8&@UL_;pPUInh1^Y14y_EKk=c5HKn}(E&?sfI;cQ1*85+&KgyklP zBUDwS>mu?15~0u-TEHk__P`WF)r?AIAB5u2SVjZoG8%mxCs390drTozV-hASxUUyw zs~x9f3i54)jNA}i(p=BL5}2E-f_koc3c2bPo)83k5~vDj50$$ECfgu#+Y_avgj4+- z?803fMu+M*&WapG-76suMYI@HHVjWW;^_j-iRuJ@S81YLuQ*7G`a_|rjhIqE7)jA~ z46V`yai^1_pP?`1H5f_JXiP+9h!sKhE42jiRry3^7xpYQG)gD?Vy1B|6@?s>Urg%4 zzNLO4`W!=#jHoCM+|JM=BYFeNm1=M3kr5q4yjL9zJu;$OkaVezhW>z1A7ucC3_UWW za|kO#|BO)AAtaQ7ofsB$q=^Med-2Jt^cm?YO$ zKVp4Q!wmmd+IcJIHCt+&n8o_D)!PWfYJxBsr>(xEAW$nz#)*uI>|u&HQSS?1wAJ%S zPgJ8B9~sw!$mi8Ov7hB<;cpX{K`u3W68GxGQqoQMqh}W#sjDyQM+$Vih6o_8|N=FFwB``}=#? zapsk=zl0^_;CTa9Xa_8mFG8|;19yek->-!==M6flQHi`8{+?I>) z149&^G98*>rb7&6Itrh`o1w6&x#d3+i~SLH!xgkaAr`MdoD2`)fZ@nZ2>;=s?w<8u z5NmiuK+C}=uS98hRAwF_DZht{ghw-FK;8<;hsUhx!c$9wp2E|2PUXp*iN!ix&l8Qw zZ7|Jn!>4-m3ONpj8=hM`gTvLsaO-e0_c=;V!c@WwJ}uE9Ltco#;f1`L9WSTC!NQA} zvepVd-Jee8s=7e5@^?%%cT7b`p5BMByxi(WjU1?QFgl>R6jknLRZ?TFZ){yp%1o!! z4n!kR6(l`6ojRUPqaB53bqXyqt5(J|lyweYL{y6)s6glNt3*Y+?as-?s1u@F=dNaB zE+=B3&V{dbWRXuoGSRt+h2^s{e#GkBxzpPnY3vU)gL+>bBHrkOy41Fq{xLI1Oa+fs zLL8m@kyYrGuXFzbvkvR-V;fy|UxyWSF7uN0P$D3td+t zzlGoAFL14T1R_iRLPizxQyOoPYsc>+tH?juQ>>*RMZPMzZ4>`pH9@&XcuA|ObPcs7?sshxUmaV8H)=>*&ikxS$3Dw6k9&g6!V*`$d)8U1e1tt zd4(yqQACpGBNvHmOHzDZNbnm<8+RgQ@fG9^C8|<<6oifW%O_D?(8&ZlEBFyyIZ!Zh z6A|8wXj3q0jB(fuY(oob#~9oC7DE-(G4g6}D46UzY;XYdP+TzWx;)}~?sBW(gzNH{ zC!099GtYRKuyT9hdXy-5Aco{b&W@m)hYbI6UR4WnXI-J`67}c%R{$LY88+F8F{K_oG6dK*Ro%_gcq<`~kU7!KY1~I2DnX zVq;bCgEJY+FK`(La%fd*7XlYhhklL)UOR`yI zJ32z|H=CMaHL;5Nug~XZw971tt-`PQfnw5DL`$WR!btH+uO$z*-@Kf5PhN?biN# z>Z>FCv0I?j=DsGQ=WfC8nNbW)on$-RGuxrloJOmA)*5$#{|!#x-S;a|Qt!PZMgw!L z$U&q~-r`9fO48LCeGs;4&B42+uEhYwbp}Fa|Dk22M>_20C;JBF@qywkhILe82U&PCpISsiQzYcPC7 z^%;Z!EsxRGu{2^5Y)bZ2-C?%c>VKw2Qrd)KmunP|JE3b8zg?q{{5Nfo${y7y zY|=j3eWvRV+TFToA@Pyv(9leEW^1a{G)k5Kq^AlksKJ~}SvgCVHCd{Hx9AlzQbju|-Y-;I!8YwkLT}SvT)U8Zr(J|i zpwNq?+EMSvP*wCMQU$B12}UZ4mXlFf{w)>S5ve-UslsPhQqwLyYuaWOXdMwh`h1w9 zVnz^2T+a%91G6VM_Vt>#mxi8$u+gj8)#@$iy4S+JUD%)g1%K+bh!N#;v{?u~jOEhl zwd^HoOda)F&IG9HhA`(V@jDQL+za^+Be zaPk{;*1Ms>$oFF`9K9Rev;+~t>YZ@Y5=v5f&ucIf`Vz&xn|WX<-$zjBJ^$uHc8r;D zsNM^hG9+(6T<*P)DZ{b^R@QqFQ%2-|tnC=(OSqR3eS5R_ zQs$*pW)S7F9l9OuQK^TZpYD0)7kog|>JCH6?_#z`Ig95lweq{VnLLGt{K5|kU9gD(W3g^+Q&rai24W;ik8~EL=~z6C?VR{W_F9!*RYIeKbw#E zO4OC`rD%Vf&-hB!^>EW@%;rPBn7SPcUo>ud9;muN)6p`U5B(}tS6FDY+~$+LYSj_` z6CG?|tvVf^7_BgHhN^+vM28qQ8q|8^5YeIbO5IhHx))1N=4Wepvlzr9+${scg^(J%|9c}j?rL!BM zWqe+y+Ps}YhSMMl|nsC?I+k9P5Rh@ zyjGuCjirI7*qpW;7wRa&Ty&aEF-V_TeFjNHXV{z;eJfNooIg6#9wr6}=7rf0>+n}20P3C^JrLuj1H+#%+ zwK}~T@D{Vw`_u>o!ss3kKNuv{*>K(Htp?_(vq2WU&D?SisTYtpMsN3=I+i`70i#9t zdTtxXp7A`UAHBo#&^Y#tdI%=`$Zc<=J`u3^tO1xajlpJ5}W1a)?07Yg6nUR{0AYsu0o#%2{RYlfL=}C&zy|dK zdE|rUv4|#hCG~v3GpL3gX*_|x@)CX8)WZ|jAe=^@^&F`*mVXnqKj^8c(FP?{2lC;+82a5pJx$U+a}O0;rE)A#(HA_N_hYLxlGuC6Q>XjG)@Te?i0I4aCgTxXbt1vM?qLUb z(^lsa{afZH;)k|6l^p+F&wkziCuGnWbcR8;u!g*wQh}}}v$+5T>7<@?x&rBT{0V*x zlG@w=8N5EW?9+}lh-7BzYO7ECjNWYfwBGg!@Tm(wn${=Ckt`rHeLuEScd$|M?TM@Wav1EOd zTaVJIy=a+Un^Lk!mt2(WgH{|Auh-24|6ZR4us? zcF`xxUEOwy!evK9V#9mUR+o`jVWJEu;^R-mG>M9D0$8~%r zhkliU!RKc63aDquCcZGsMo2A2))4*D<~u)O6{hv+E3+U))Nd4VzqTijCRnTl*~`C8 z+X^*mSPHCE=O6?{zp)?I#G}-iU?=(?v(znD+sU?mviaa^wfdCY?l-gIu2aK_jo)oP ztJnz3r!_)&c+J>I_d-ct?R9B;S#>SgEpX4O5`7X%S~<~{|dwDJNPo2m2waa^{qIEC2jfJ z6zH+3Sz#H%zSA##AFhj*(fCDAg(&O(51sQCl_ThStZww6PGR;HcGP6;{d${?Z_d({ zR=+;3?th7(s+4mVuY3%p{rXWGx}!*UvitSt+$wC@6l~f>Eq5~>44_wEzd?g(1bXtj zU%5$va%k*+g9k^M_e_U44c>~i!Ph^s$YrR1H+LugJx1u?o$oVHvbr23kxt0rwnvM^ zyVyO-kFiL_X1M#pjo4|#W;R&N^WR~0u~|GHpL`mcik-+JmGU-NNbDrG?0`Im5n^+W zt2}2k^FRwu(q>#L?}0hR z7M`t7*aymmNHAiH*rsb`2P{&t#XQRy`eZ(4j$>!blM!rU%Q$IjkcC*~V#|38-Xz~a zu#K(Quj>}b3lNB6E4gm5TnjshtvYomq2;m)78zUJNAtN(WNeL5OW2$?Md&&3fzhdAHQYh{4VD<4CX8XKQHU1N69lJpj=G$d zwdsP>P_NoU%jpckX{b-V4x5h76f6U&x|8S55}ZngR1~o#dZK|5RYNJjYy*o`8*=2i zg7sBuW!!+N$4d@j+>ED?5yg9x)PuJmhpdjz4`Q~mD@-SDlwrv?kS4_!GV;phm|}bp zBPlP%oZ=@l3dx0FE54XfL{5XP#g{NDmc`V|Qdhw>7%jex(Li~C+AZg2E3q}64ef{G z>t_)wlOWpo87?c`;O6l&T~=m8s__l(BbjvwU-6BM0#>jFDqUXIZzmQic^?eDtpCp@ zBG7$@vKS*FFGO}z7VoQ@+43%^x2%jiapYNuwPgd`;TmARWdq%rS3;^~gWQ?Vgr}61 zyE8u-%R<>;cjg%|r?Lun=GVco%7#>!ncslqt!x;h3ONPNQ&!2mRLTG*R5qN^2E*r^xR?8D%_GP0O)yh{1jb=1M(yhU=DsI;x-+(yF#&DlaGMDih@a};FmHny02=6VdPi0rS;(80Quk5P6MqHP}ZpyA^G|uY&ZJfL`82lKW`vwK* zo|e2FB!hzP8gdFGGpK{Rznu;V4Kf)G)+i6wsN(pQ^oTt>&Q)VvIg!aR8)HmMJI*eC#3js*vzt)_3u^q%dJG)62V1T9T_owiZ-~zE zeOqyfqyvUn7~k_4@iq#{WBgV+{UhGCBKpK{b8iW1PrBVbOwm5K*Nyht=k74cUCtUS zem6~(wl2YGh%hpKGxe#iMq#{zFu9QWFbLRDoIXeopy<10@sQxNFt3_RGt3pt3>`ZX zhrwdF+q(E0hfylGBH+dUW|ltrBbKZ9n`ZMbpCTE&W%m9uPQ3r!Z2je(u+;cJcw-Tf zUmyXGALX^8L~e#n#NXx>u~Z&_702J<+j;}#Ana!1@0!d={(_Yte#~s^<#~{0{5_UV zwRC9o_j_vXjF%r0`haXk-`0K=!-wO?harN=Gf3f|Pc7pqJOo+AzhLCZH}E(9B_qUC zV)H9TKG}(6_4V>Hp5A*f{rJBb1>_#2A@Oe*g-ohT?b2x;ZkkG?bJZfMq7T~J#_4kw zKyU$axzhOeeGu&AbtHx#Mh##tONr+nXANL3Clg;koi>2EjF3uxzHtC^c{Zu!m&XS% zmouQ}_^(_SkQX7s#(z6DfK@UU%Xs{E<~gjU(&}Rgh7olI4IvCHR5sFpxNTsunnyXmxGM$Y{ z%Ew#vgsR(;Rew)b(G{vF#maP^1&G`a7cPmXi>r|GsH4a;<6iOLKrL}K9?Nn(!%Wdp zg;-YNnFe}QFRV`SEb)#e_Nn{HhkXW0)fMc;+lmbBWC7KmWa&3Br0%EMY|(QN3w{Q& zp|}*|2C?8*(6~8b%^(*1zhLX}b_N!kIT4R7meq2v81tg3FwvW>i3p;e@(8$flFBov z6%{2!=~M=y3rgwp!z5{8lC+Qs-tI@A*@IkyaY=%iE?cNCP1Y~_A7d@!u4ZYrY6sCL z#hJ)(h+$(qU;Ka~{S}LNB$=W81Ph242o5HWI+N_bi-A&IN3Pga@R3GXKj0iM)cug< zehW*87YT1U!P2~C%U4|u1T+a4&0iE4l zZ=$x(@_iNo{<9v+_YXP^x=HLQCt=-L?n?J1T&3%e*UF8{xPG%;lfH$|Al=}JM8*{l zHoN5VCkto=Agq^{Wp-ac;y?ZgiV|4{azOEJahqoQaidr&+b@G((2lnr18 zW&2Nv8#F9Yx6lFZQ{rh2OI0;7`KpnD*!C`or`|hq{qNar)Z(#ad?S zGTP|BB=}JrOT9pQi@%C$J_k|`6cl|~jO4Xgg^+qi4;u%P>L8sMz9LTQ%F^wK#WDJ- zV5NrDa4+C%f)B9^)fD6g(Icj9p`s@tqpu6Lnqrlpqp~*)EKzOgB;#))V;GB*EG+t_ zsg3D}*`sfXdxo(%htd@OZU(AQF(d%de;76@)YH_}QL#^DY70fWe+g!@MBPO&F9ngWjXzbY@x;}? z#W7twN^PT?VBebBY9+DWME_%Y9$R-egVgpE=c`)Q zYy(6bUFZ1fv}U0!dc{Il66ZjY>*JW=Vsmp)(N_$jqaEI~S?Vcbs>-|XQqLU0PR)^>&Uaj-_c$O=jEJy2{yK7jkmlB-pcqg!2 z>FL$z6jM7;JxA-rRHt|X%k}Rt)95s3A1a zbW72RfAo-jA?GssOQ6x`Z1)6~z5|+sK6M*${k+W)Qd*I};i4pZSl`4^^e{^F758y4 zMPCJqzG|Su*~x1LdeukN@eu=kY9blZ>jp}-9ScMB4Fdz}0aC-?3=An+3Zrit7*=hm z?OVwQ9lGZN{@uVr^%f2E5BEU_tJoX;$R=&~{D^Ln{!`z)>3Nv4{Euz@1cvV(O6R)j zZ)s*a*W=UQ0p=wlZ$Ys#TIBhfCi@0SqMPSebNA{cQb~6M9aT?;QtSzg;mHOlhV(GC zJ|s7El}-kV5vaR1f=G3VTTC}dBL`q%k!Xo$_ZT`{qP()V=e{vK@(^hbzbt=~ zR~tJu3+7-J&XB+?>OwaPHt0rBTyqb8{{e8ZjE?tg!9~vzB*zJ!Uod>nEtFtS^bA8e z1U;4%%ucBSl(wI3Zn#_OH42)W40O~dB*4waeZ6XYCEz(GFwjvR4V3BJqD@GVCNHg_ z0r;T<{WNcMRhs#_jT%BRXmy&~cRG!{Htns++;@Uv`zdL$I@Y9KkJhE}dL;E%45O!} z@v{s86{L`RTAKR|(7O@9)6+i4X4j~py~lbNg0&C9W`x)nZytb9biNh6*y&Qoto=mG z`8KmcJL*3qg-Z=atgcbeJ~wU~nEH3pWdpC}Gr>zt@zOwA@g zzs@;J!+~lc#s6Jq+zRzMg_hmUmAbZ4-9`75{_H%i;VAVs8}kKFFvm32ehy zQtjF@`uryyZ@rCCL*~g4buPuPS!vmmS&D1P8E2=(CbJa()DN&BZK_f5hqPWbrY)Mx zQuI-{PNbbPnWd;`SG*wYE)4@1?b&hkCE@Pcu!q&q`2F$eU(imMjHXrnVOUaQjpe?# z#TO>??CC7g)T?S-zq|%l`e9&x9F&T9vqawz<&7E>lIr+ak1QO0T$AkMjaF5>#WP!) z2Q*Owt|?9VWBpNGPXkgm#q~ugTdH4b++E$^Wc_|>PscdvR0bkykm-cSyQIxY(&Qtq zF6o#g5oKU08^oA9aS$yY@6PP@WKUW|Bu~^|qU&iI2b1*&x&IgO$Nyn3t%kdk-F%)T zqc5a^?9F5qC1hp~U8SqONmdmntMv01Mk4+RZat-EJOfh|O;%B=#=6w)P5szp{iX@2 zRcrDYopS3f!lJ zF406(e7H4{slPwj32nGqp0079ym=#8Pn)V%Ro^A6dbO%@pUTde_s8decItXEio?lzGyg{>QA%^XRk3S6Z|J(;+;LIz z@8m$V^J}@O;r8a#y7jabgnt8h>}UF^OGIu=%8U~O32xU zf|5*UUae~`_qA@IBY}Br{)!~g>q(+ycp@PrNByc*C#d>IEy;kkpFCR~^-KWzPB)`s zT7&foK1$owQHxkgNpYRq{iHg#d%8l^H2m@J@2dk*d6MjOw{g0@+Rrl{qdyyU_p}JI z42?L>OE$ijs_u2`QS}gwaj2^vtww5QW?rK%VAE^_# zFgY~kXz7%D@hn?x#7OBr)Cb$r^IJo!=_pMTijt~ z?{dl@Cu7+kHkf*)BfSnt?uS*F&657Q+^`{hk}ItYecsn;+!U87I{9NRjHsylHi8cQ z((iE(A5lDyPWouPty7ZsShAh+Jh~ep3qV*Ne$rxYE(34nofz3xJEy$E^B@Y`4o1p5 z(p`-9)Q6SrEid?zTGInbZK+>dOxe9&vcnV`odSa{&ILgA+IbS zsuhllgSftH19Qo?^Z`Zncx)Ne@$x&!K&IDt8Wbhfkod zeptD8V~j1LGDzP_*M~6vae~_-b%sR!HR7Hwob(N$J^FZ4>(yr?{z-z*MttfEh{#_n zK3vI3-(JYiUnkuC?>gj`{>j4K|2{YfaEfsEziY6A_fIu2l1E=U^-mL@>8=XZeaLY9 zCkVdPRIJK;bic&F5_KvKG()hRm8z$xcBZ+V7gL>Jt^Qf&o70c60nS^!DR{F` zHufz3B?fO1d5M)Lx8SWpg{xEQw+l588)^SigLeq^@7^i+N}(326nu?P59g-f-9pXl z1iV~)wUY3Sz@)8}Lci;g9)+Gw{H+ne1?ExclM8^)H1DT4W~(32lYfK3AKGdh338*s zpV;B4bhvT0eut^B+vt~Y-Ik7`bF@L|mv9Y(U--`z{1UWpZM80@@l`Vk|6r>P#Pa$2 z-j{yE))NSU{tE;>2}u}^O#b8F#vAbu;3vWP@PrV*Jweh*W%z?zW@wj@Um=o(KV;;{ zI+$DdpMTNFEB}PGCj80!8u?@nHbLP}>70)4YLs;Y`n`V?c$i{7{$hl)%5Pct`kOpmw$l}W$^ArtQ z4GoU)yCS6LYDZ+d&(#M1fmkO;2GeKZPX@xm$PVtC8%D#WMs_r@HfR34)z-++oLQQ? zoaJkPav71V+v6&oJ}`bR{saeLuO1#5APPxOaEvT)Z_nKYNsV;B94qfYG#S~I-%#R{ zcfrR;7GA~EL|4RB@IAxsH+W#MWbHem}g=A%mjR~2{n;(;aT2M8R8)T^&)gI zDpPFG{8`~u*z1qV($3?Ee42K53-Yl>X9UwCSQo0g|3ID77d@+rQ@`k0)#KFJ%o%;r zv#RG+vzaqa9^0OXN$ZdOY%1+>o%=u)y#uwXh+1l$R>f1_c~n*AzVoOY^Qsy+KE(R2 zL4c|n#AvE~3j4#Va{YD;dT-Yl%(H6nQ`&Qn3;9pXr>cVCFG6NR9#uon&ex&LmIcsa zRpqYPIx^YvBA8s&@OL%bZA$@BSB(gtq~nq;Um})9J~@lv9$R`4&8tQ+JYdW2kWN+A zkM#r(+xk@wRn=V^IEKj+VU$&42Q_dAle>xm$1yyLo@qigH4PllUko=Pi*-U!fVweZhPF8SwvjR@GHCbVd8nRQ6I%J$eJ|9Y9OVs8dAR+yJ0qc(oBLc zIizDP0;P4_AdHfgR&qitY|>g*TFXu1;wIMsZ$g`3uB7%_W^5xnTiM7p=QX6*$hEgL zxQ#!W?FNPcXqv7+dev+0hTuB42Xe51V)#W=rn-^1c8aHFGGoWR)U(Ld7A)1SLDaQ@ zC93~O!0QaG*00m7+9hZJT4m{5yj9l={u=KBMc)Rl`m?AAnWd8A1=(eRrYid4sR9)e0YL{JyHFA2$W^bjZ;XJCg)P(LpP5BkR!10pKh) zj!{yp|7_O&RE{c}IjSs|x#TP7aG$Fsy#=l6+{M}?*RjKH8KlvA_Sf^-$uKf>i-sQ$FPadaT$&I`#8{Dc}l2xhE;3AX;NrlI&x<1+HivFHff%)E6f%!f+ zFw?tftL`_?4sc+8fYEGuCI#XL88ylFWFil7yTv)$As%Lbcu>eh4Jr@(&`9tZA#Wo0 zc{H9Nct~)NevF;zMZtmg$+)(q!$Mw<#kA__t_|#J`W;49&yJbPo+jt?B1^8<@Tibm z$#DN-;;zx-b0+Q@JwDHR{6tv6!)+{B%l-PFU>bY)gBOwM)$)U!2 z7ToyVR*jF{m)iKf*OQHZYfNr<(KKCu{BPTtm!NbIX1l$rki@}mnPxUJ7KgfY6Y9L| zq+ac$bPquLXoh*PrJ6%lrXY4{o1-IImLO)Z&B>#8DpvWDK{SqyTUA^0=*j{Pv3^mn z+b(8r&(_{fTNSO595F`2)k>?cy@+eLPSNeOs(|2^vaQFg1}F6IU(7Xgr;@o;LVTyw z2W6z%D`c1#iS;43#@9IaBqQWQJi2z;qcsN2r^dEh?dMu?dP<>YHOS&nl+S4TjPm>BT~Td zM2j(dKly{pGY!r47q_lYWqer^eSWMNrRuNpL83rL=Zg{J!I(HeQB7e-jUlda4ruYwa)U*kUU^)l66dq`6T zWCDt)zK*ka{#t7FZbo5wbSTjEj3V*~c39PaW>hHeF9EuNQL#RNs=kp^{F0oeg)6P< zJMPhZmgtyReHZJs)Cztx(y}V66VEl9a9KUq4VP2s0n4Vhnt4LBa8%FxS2Is&2AHpI zX5^E75f!TEGm<%tb5FLa7cvUSAz0C?7cmOSF39YwPi7RBZK&O1MvcWWs`GsMBs=kwEzrF{lmvf= z2}W4maxT)nvC|Hn!s4c_;Mfz~O)rUU>~wyuyjLq`>pT|RFnP{=rigN9LDRNbnqw^F*%|0a%!FfekYtpm(=_f zMC}QuGjik+usC5o^XZj!=ybvvYjqvno$s}Pgh$_A3I6P%`*54+4c>A!L^NTu`_)l0 z@(Jg-Z)3WNIy~2OZv|h(D&R~w|F6{SWypWR1%G8e(C_*Mbk;br-M<#l&s;2=Z%u6f zFH@=Gf_^~r8h16RcdYRnlr5R5a;X0GrW_#=U9MnU1v8=k%qkMWTC4zKa-)y6>Y*`l% zE&@>+rdC(>u_0;#e{}=K7_<8nW>+_m$Ve@BVL7ZDbj3nO=fhm<%9+x~!L<;CeMnMP zwy$pJ^hGWU!&_FY(y^`Az&d+1(_!JKdzVF15SlJN9%3lTCM4wo`Y)Z`46^28ySflME8>oUSLMxTYV9 z>l;|FIrYs=R$YUUo7HZ0U9Zg`3TOeA=*t_SpSph6lLogT4Al)L6_wVnTy52jAi)I& zL&tSBB(=bPWDRvwNE(63195pG%_Oi3IbU5P@nq>ox^|pw3^Qy6KSqmx9(*f?ABx5Fs1e2sP0oD{*ZMBPWaZvP zpjY=#&P#e;4CWD;l0IjN#rJ%scvHj5l#G!ktQK|TW5%Ch%P3E%{eqg^hdG{* zyumUaVfBQ`?xS15TM%Qs(|dMY3PKOWG`&~MSk@}AGrhztQE-eIeJhCQ)=JBo5#P)X zhaJ(}Byz0i8!&S3v^H}<7#N)o!aj6!t#tKTYsLT?!paC?{hl$HdI~-Q&kN1WIzYYB zdyHrLTpquKG0bcmGiH1>Onhecp`|Q&`i9X=$#qihg(zpXJEH3XSjvgYJ>{j2{jcZg z<@m3-E-Z%mI5Thi2G>Oyqd-$Ms3YBG3(_N4#WQcMS_V#NH!^Dlzl4}MnYD7xQXY*s znYC*6GS)1OJ!|#58in=aa$pe~(0zzvO>>Ch0t-dHM&XN9PxT<1r# zYyHc4IJ#9f>$-olIOQww^jW+3mX%l1yX|M~<~N)9WCLtr*7Yu9k5DgvR?C^OpV0rT z8yJP<6_CKJ8<{c!781n5DoC+*RxXXJePGs;?h*0n#KKdN<*pTew2WT0I!ALKpi*kD ze?x)qQFgx%i>7sA*Nk0QEN9D+%ZYI8a>}cw;WM2+P;w&v1W$+U$=TVL(x{}z*}3K& zgIfQyJGm#w^is3god;?jd{*!kxMlI|u8&Z&t7(+N6OFujM}UeJvJ|Y~SBO@TlLpZX z9CZIDnXkWFIm;4@tdq>w-@Q32=dH3%s+cTTc;k?!o-~9}$ZF@r=H{b=0R37?tceze z($%X@wqo<>-IrF-3lrZF%cff@@+jhe?0z?vjD;X#518nY12>I5$nVESBt|%kJ>s7H zlcUED@ark0KD>`T#)tO-`6Uvk*b}Ubusnva5qpZe49h(bOYCVA6D9p7QtTN<#d0P# zB(cA69#SglC#GW0#r4gBc-I%O8TVl?gS6hxo2$8-6)~onXqEFx?zNVttxh#o9Vs)c4K?*Uddva z1ZBqVa9{g;B9fEXogC17^zxF}zM00&??a$wQH4~_YJ{)@yEROxRl`Y#sl zGDy2P|2ADk%V2N1sk_~rJ8llCW?JbkG4D>@9I|Z66z94_Y_N(Q|4ZT=;GQ+(LHSof z=}XTwbWiqWeQov4f-P+n{u@O8T6g#xlf$oqp!_!pcNK0!wYLbiAg}reNxAjS1XrmljZ{SO;Bkbmy$5%UF| z3YAUMek^$d`b$I||C8by?TpoV-g7^4hsG?q>X}q9m&O; zh1yEO_=~|?ggVkL1#cCqH?-z|UhuC`Z5Jw?ME-)H$LQ(aZU-%Gx~ZE3FZRD??x0>H z@>Z`t6^nu>T1$Ah;Gczh+jM-R;GczZ@gAYB$xOj}g?g!f3f?F9XQSRRH;MNP{@ExO zKPc22-V}U5sP{Xj;3owCjMTdZKO^{Oq+EPRs4I$7@QXry8A!p0h4PgGA2axfP-lcv z@S8$CT9JZ}3iWN56nsqZ@1K1l_-Cj-!FXgY--upXK3@s`S*rgC{#mL|Y|DRQTra3( zmo}vrx`yo9Z|QWc#>KW3q2G|&>d*GvOh)V_$;#v--1?{Fay+gP(@RMG?KCAB@!K@5 z_U5%@&_DeKi9g`Ee=Y0Z(l0~2-yJI7vY*8@{pWNx)1mr)^lNU8e~|t)yP_V5tX9#~ zzVrg6s%i{V^c`qCR(=C9-^-_`^&Kevi}|ThoA&DT9whx6SUe@{s)<9|4#nKkY>Fpv zFaLJ_W?1_KU0BSW7?SPHi5vlJ!%r8WBcG+g&jEL=v{=W0s& z$s|AhJQ7N-q-*-oBV6C8YblG*bS{Q2{CC;9`~b=`Hp4Qbo;?

    c^~FzWIb=FkAsTp&AYp>WDy!{#+FkFRhU&OXYrDSR{anjCy>)Lcb-*0 zlu-vO<6an8{jlTAqjO~lO3oZeQT1U%H?YSwoLV73bj%k zE29aibba+^qW9L1dyD7?K+9#+Q5FrfMg`#~3cvImG8P8)q1{!E2m zG@R}(*ZVQ|hV|}peH#{lhBJ)Z^>I_fnf#5a%$%krjaI`3Mp<$<+__;RBOj8ehAmg4 z^T1-{_zf56%U7wd3wPtPw0Wh~u=Qptti_ZXF4{|%$FQn3Tzn5*evhElaLI#2x_Vw; ztKrhePSbuvx`i>HN}tp9=c)ShR{c3o*ODy-Ct!ZQhI4+V`O&@6hI3t+(D$Gk&U1C! zrxNHg5(8OfJK1o3_URb^PS|_HpGnYEcGE3X_9~31;pQJv76?L>4Y%maM~CBbkG|Z5 zxi{RZFVmp5hTE7HmfLVU9c~3|D5qhsKH0ef5vJh|efbZVP{W-cVg`Znu-b;ZXxP9k z8e*Tm>2ba^WsYF459JYqo;EppF?JiznKk<{xz(| z-<@*^h4L0IY_=LLlZS-!npUm08a+bl+DP82W!rTxk07 zP{|}jtHvVJkBt)5h?J$Vn>a%shAdTIV#RMP7EwL_&zHF&egqjUMjz6N6%rspvm`-$Jq1<3rN_e37T(?IyRucg(7yLS2WMfYt zXJ{NE`f7}9EEoHl#-Rq^CR84*x^a}j$j%m$Kqnb|r%>mR@anYibhdUX{H}4bsMO={ zr+eOH=^2a2_MWC$WI7bWdO3|DLDryNCgJ7^eleG&9>b2jQ5k3>k#FoE#(=J8G3mdf z*aDrjcTiyEPDh{1J&iNShV}imL|Aa>w$x5U`b1~Juac6AVs4_)Jogw<6p#}|28I>I z;6yhABY6~r6Wx>Vq&NcoCZfW8>ot#pa-xrLzx7Io5{bU1ZHf9fqHUtT$=FNv4}2xc z#4G0!9H{(A1rmb|afRxMFp`)d*as`sD_CU{CmJ6drQU~T6SEDhR-a?JPSlIfbywq6 zGmYCIs&w00_1FNwh2qEajGAa8kyzRCOKCSDEF@OxUu@S&bTiB#vD)DKg<1x&C)OB@ zr22$$lurr%;n0VnW@ss~&frHx-jda8ti)+8zpO?}K;m@M9!d8^654u$pAw1|*2I~5 zsyYe(6-jSmlkjdKj3j&tveCq5(?31vg6t@9j%ojyQ0uUCCC(F{oJ;t)P&Rx&vBiCC z6Pp5>|M>=gi=-VLB`z@d2ceo^)`@NAL788Ks)pGnwzvEe+80EBiNTv~m4<~qajC&u zY;_*-cbUOkZAEW7O6)LryRC+hJTDiW^?Y^!lcsl?2Vt(X^_Sff*NH*8ez&duPV(Gk z_`A_oeTo0w2Jf-eAu{Ld%_f3g5=^FYgOS%hTWuwI-)!(6buWa=^HbIFy z#ON&spO3JTxYOWoZAD+?Ox$Jo`@vRsAxGH#@u>B~ zfgdpa0S_TVf7H}(^{7E)txuZy07nJ`Kjq5Hqh2HZJtG=eULLg*>u%zp`=qc(bw`*> z9CA069#uy8IYH-8`iE)h)>YzV6ZRfNdy@aFWc&v5851 zA+Fc-A9~bjgMhyjn{@pr9u+{?Pke3qJMK|}`u|oOVEsUzWRKsAqpTl~+KVJA@ss#f z;~zZAruqLW3eP9}i$@Ko{w%vvjr2RLIuR%TeOMCkRjdwfxIgmsL zo1V~v{W_{0#gmZzsjffPM*T$mb+Lcf_;?$v0uIrRBHgflhHV?0hW9iFJ&;@(%3o z6Q?rr$rrJ@CQf4{nk1 z_H0JQ@)j&oiA`pCkQb0xH!~`gtH@~1VHA@g3jgOa8Yu6l(a$q0g?xnOZ~>!A`2`90 zLPn$HN-xk>M%8lcP@sz#jhAS(@91T z*qmMTG9>9KIu|23rZ@8abP6cwjT&_nALH}ml+r3~xPL>5pVns>?(ewnO4r}e@Fc|0 zmZW6-kMz+*RAe6g+hRI%pSUkXfqz?=pMOY_Q54nlatE&2LO!%|OG`;}lKA>o#Obuc zrhM&-7IcuWOOhW*vS3bDZb?=hO;*ts$$j|jsbu~4$$Gj%)rWc$`F@fhglLeiKga@5 z)fw0R7l-QUdCsRfRJyg?(QmB0p69z=P{89VGkle9wlY~vS2Q8&d3U+)xlxl`o+Npa zTW(HvN>PtRWX9W>ta>5Y>ILrj73%onY~AtwbY0Kdc^lU@Jq-5a`IdXM<)d5x?Osf^mn z->L32Mt=Dd(v#-X8D;C+h|TMXWr`0U(g0ju%!mJRa#@q4D>6lvgHP5D=qC6g2gS>fPBD}rZ%K@!7Z9s z8JMd+M|R%4+CZg-5zlK3%v0aMoSWAg7*_pAm&}Kt>P;IRj3O3g!HqYlTPA-^{RSy6H?>~1p$Fgt24<>Kqyo(k8e*S% znk4y$fMAGJm4Q!{Dl1)Bhhy!XrR@>$SrZ%LG(~KT9P^mIFO7mj|hSkk9?&C>g zs6%?#{DkQ$LccssUOB(^gG&(oDiHzZ*Rg>jlj#jKnJK+;GSy8XGKy5+!-(cj<+_j@ zfT_-(_KmI!%WDvK=bylJ)$(L&H=WUVNzca3pTVeBeugc={F&V6RCx{3wfVESu0c+P zaOa=Ms7YQzb+Z{Qkh7@nBu0znxl}iY(Q>(r>gqk05?U?ScLQpmIy!2S5$q}FH!|EI zr{H0{F7d+wL#Joj_nGaB9J#l|j0G^No8yx2{hh^95V--~?{WYnM0=s_>`9{b5^ z^pF?(6X=)y{Te;&#eS1x8qnxbFZM0g&1v)rFSg|@MAvKdX)ksyR=a{UFZPRhh!!;ZZ7;S7thm2O5XuV!F%W2fNpoNJVt0X1`ZsFsD_-nn zP*s0fb6@vjUuJGabARH+Hp3w7uWIglUd#i3>aS_^eNPF6OKc^-#0h4JkJI?sEjm?NXk0lzoL}MMXc8+DH#^%Nr0>=hAG}bAHya#4!tSfc~ z=P+Ai-LdaL?;e<=v7XpLu)Kk}+WW%TJ)Fa(|LG~6%m&pAT&5+L$1Vo_4_vN!y=E!_ zNPwRA1=KO8=cfGaJpknbC^osNe`-P54*rsBSJH~cegu@to&Tp6T$g}AbJH}|9J`Pu zFHoXyiR}Xtx=y(#9ppLW9isp053O7V*{~kf!n#+8XJu51lP;W`LXm@ zid_L(&CONp90r?b^iqxPh{WE6nwYyxqq`!pJ6ZMeU);m!?g;1v(aw+DD|MSMPK$R=-Z_6U%2>Gjh}I^jX!Jk9~ZyIM3{Gxi~A-*PJGq9 zjrEtf_{CUGnB}>vHi0_MyA>of+_Zkq^Y_{HT|d{Y?{8sB>n~N9Mq`tf@Q!@V8z1`` zW0$+tCQR3Ny4Aj)^{xo7_WCQstG)iJ@M^E`a;rT7%y9kH90*st<#gWD8$f>wqt^t` zpTTH%0R8E#dhO)9Ec8DLa#`P_x%(rre+M$IpRdt_k=VNc!uo|8Jrs$3l}#`Ktk`sLrhkI`o%u|ER|uV2xy>g!kj z{e8OXx(rg5%P?2tfA8W)b=lr@@oUWK?}D<|uUdoVCQkM)ZM`4%NWplQDQnR!L+^4X za~m~6O76JdIHmaXiLleX&i}lR$D+MY6j(cxuNm)}g4EzIc;}4Qt+D8&WTI@mYpW9D zPbN`+9v5YUr)PPzV%}Bv^Ve9g(vh!tp8q0Zmv2f8GRC|3F3)H33^Tp+h>=p?W%!LA ze z(Na8U>C0X*Xz9zLmcH!8gO;=mTFS5`hOc~MtWHvXEbc4&>XT#mS4{4!$Zq2dul&j^ zofQY>|HHoeZ0aqXVm4RiX6Y0-3jf1jtPj0j?G!`5Y8SMq4QG2tS!*6@b$tv%V8dCA zcM(Z6Xs-GTNVLck>Q26c<#=IBd~Wk023YHZZ= z&ix%MQYANFyfIORyLm(uVRmtOD%;O6DeQ6~uQ5^5SLcHqN0QbE7hP-d4K~&*k_m{gN@)%K+!d z082<)MwP+4R62{?xp3KomxQ7{H{@Id%VlnmNn9qAc$sYq*U)(6&hF(hughg#{+-Wm zTk+E;FDs@(G*&__k%THrGhLf9KQN zR`Rk6?_jhCl6)26Hv9l!y?+W47ex7%U+3R-N?3e&bWocEL5YQ-5({k!qS}i=iAA9j zi?l@V4tyQL=U;nA&|hMf>;4LX z|BJwluOhJODDpmmHDCAdh+U25Zu|uTX6?7}b>r#3BRFF|pY=Nb4`KTM`>!IrdMA+LRnFu8 z_-nq5@S3~vwe~%Zzb`hxchUl5r91*FV*SfRGxb))*Z zjH(l9oieKTWfZ7-FB#7ft=ft2C-6+5*tuVJRUeV6!$@1S9842&PUvgCo5WF>#EKp$ zz22je_d4=!NR*Std(0>OO#*)RlFc2&=LZtHG=be-13ozd$ER(_j-Xr}l7-LLI@a8|*#-|XSU(Qsq zpd9?#nCH-EqDS<(=|xQACF3AGS-ASp7z<(I^Y@ITD}-G_1B8iI98>&KuJ%^~!EhK) z;^A+hxkta^ptPS*`n@p@O8Ys=e;MPTBvGEHP$)^XpT{c%O8XToF$I#1HS2T_F!nHt zDqJ2UTv7tQgB;MGBPT`c!aK;Z@+^r$?IA*K9iqLjV61#uXaUBW+?<1`_%3U1Kwg?i z^tRFYcz+(kAD7rbY#A1xj;6dHZTw0Y-PU${jYU_jL&6tOCMApVIM?JBbZD|{qQoZt zGE{xnN!7t*X2BBnZu9~s^BRWSieh)7mA`z@(d0T2qK_i&dV%vgkKlTPaRIc(XTnZd zB#_p4p@~ij!dl}1eLtP`i2k#}zMp5TJbP=|oh>&ANI&HfrhkCSD`WvaEhupU@#W=A zKjVtR>uwN)*6dMa-yoQ(2TLx3#jqkpaDPVVZkTaFna@i8tB9*`+3%4S2dHfAC%_JP ze{lc+dw`PlGgQ?GwSCOl=)J?79MaZ&mS3w_rkAx2;WHE9TJZxIPhQ3AL&k;B0ai@8 zQsNxqD#SbId|2XCxRkfNN2Y*WZ=aWauz|O@99gk-T(Pa=Sgp4OiIhl>Jm?7T0qJ1R zI7@hw5owP|x)PpCXdt|sh9kP(O3}N7qE`qtd|uY;Y3c6Dzouq0H6md1Zae6dsVNar ztOOsXh-GuR;DUx#$+GE!12!xOFhzcN_i|bNDe^j@3afT0(V`kkGBO35F2mNa4(V0F*v<;HZ|{Fg`jW}0baj~4mRuq!?=z)I z7U1fuZ~P>eW2G*~xaiIIlOjJlh69cS6uB@;&DWUkVl|e2)luXIf&P!jIf~pMljkiJ zN|730b%vuzjem*xG8K(KbB5HHIHBD%9&wr823eIoh_5Cac$)ZMh^(0jkgl1^uXFiz z2ERs$wr}z4pYgT!Why*ZA>$QPzHtEp>sH|_20Xnn&e#Tg^__nW;&w&W-;H?wOpB&WT=%<3dHzfR%4)7{D@)!KS@TaE#ozGj&-nE`zrKEu?2;(| zCj0!q_~Ml$pZP1m_+?*p2Jap3uhIRQH%M}?k>p&?Ixf@c6N05uN<~H!G4oBY`KyhT zYID|cy)T$xsdfGYR{eAZriKPkFh^QQ_lt z*8IMwES*2&`lUk-5vB{?er19~gz18R-o4w-126{ zgXz-!mnJ%9e4%ifznkco@r8}dShGJGbIkZ6slGVonC}dUe?DdzZiy?n(wldvf#Fi9 z@ud>)YA<`}gADg30%6E=%=Q|u4~hR0bIkS{8NykU9J9SfnXS3?QQ=qSvK25zz30GZ{ygaJc!3Ue=-)HXUzGc-RuFxM#+1_=~ zAO`UH^FKi69faK(K0*CyN->w|O$-_QH@VaX>!9~Fq`ZyK>5n*O`);HU8S`5lvwc@a zn`&{)_Fa7?c7Q$cr9H3BpZiEyR<3RJ8+#Ga+6wck9UrgN?{6r6lgkNLk=E&3@TU5A zHMYLoKSj|27QMhf-dJ?_R7Ll(XpjGTW6`6hD$0Y*-Y5ODk2Dm0^;AWvA9xG>Pc#;d zMNa{VC~T@`e7pz!jSa)!|D^%@DGStt7vC0@hPs}Z?SNB8{NFe0j&3b`)C7PTuyxugXaa1@21k# z??2s8W$n6CLH;GQ@d|rL`#)~%!R36QN-vDaK771h|D%sKRB<^Ci}f@Tc&|(s%C5MQ zba{{XuXyvaf;o-c5}8{(3}%;FpWz{yp$_5!SiVQ`@gDLYY#fBkX&A(7NO&8cA3y38 zgHD08h@;n$@kW!RsW@^8qBMvo`j+jQiu8NPiJmUSKMLduDbg+{Z12cuxn24olADr84?cFIA*8 zH;T*sz4M%>@~AlNJ9${lhD{saz4-+7p3DRPjEYlvq>x7pKk)@#!OtaGP#MsK8N9>B`BEO938Sr1^KfE8v;P)d+tkRN=d@r@ZT~ zmkMt{nHoI8Q?;LD$LeU5&5u2y8Uu9RFWUCFD=@gHg;YnJ8{@Y!fj?pDT~7ze7=Id@ zVBYuZgBVDcymC6XqjfjV2f-R2L)RQ<~6(gb16T_C&qS zousn(IZv=aJKKDWO(dU`VO?Ojvv4ISwD2(IclwPBQO<)o&!s5*45DCS_or>rF(&;0 z(skl{w@Ol50gvKKS75O}agU@7j*Di|U19D#W6q7woy4@l4)hnfdi4~E@Fum^D=D@R zc@!wndX-$G?iF6cL|Sj;wJ@GndVL`fVP53s-(W2A9vbJzy)yp$7({6gK-zXJ@-KFD ze}=Te3g`vXK0N+OX>crnd2#tKr%L3Xfgl%GY~*V&6h8I@Uot`C-@+i)qQ*uxKI)so zRanQtPkmAviH!S*G1Vu7MJ_yr_~hr)+QWNT#Qe=^8D!}(Ec)bfgg=6etWk7+ZIZWv zBXSMkcx_4}5#Cq$E!W~UQ{dHw3m^NswwMRX6wX{=bWXevuJCcJOR@P?&HuggG4nss z{L+PJVZv=uUZsH8?{piJTq0+B5!=E8zYjzve1S1@!vy-ao}|q8elg)pe0!c?hw&2S z)WFPqu2h+sET{4pCyR-48sSv_in*5$4b8mdl9T^e1`_2=+T;qU!CE>qGf~M0;lW&? zHe_ZF6!V#xn{ug4p_-Xl&XkIknbl%GQ7s}em`PMJGb`oP#pUWuTQA(!#r>H=rkqPP zwmEYkJ(&9MH$1acE>?>T&C5*liPS*Qkr^nYp(kFFA~4nQW;yMlq(DtQyX;b@mfiXG$v~r;Fiy&v|12`{yCVd zRBf%yMpm+O&E+#TxteeVwp6mVwR|yM8?*&B6qD;SDO)C=w~6IURzsT;Ih&VGVI^#( zQlj6^A)mjwSg@)2S~WAI!Sd!xCLao3>?WmYg<>_A&1K4VWP^!hJnec!sl=c*UQ471 zZ`+d_G*=~2N+ffGx#||%N3vSZxUrRU#dtkhPSr~3MAgO|1PY0KCTHi0hHcSAIyZE2 zsHI%m!8V^L4HV0^_e9R3%Enr;ny}E>m>k>?A9C$;s_9HAoVRIKLu|H#czBs>uH|GR zwINsNzZeRj9dNc1$A3HKQl<>VjHikT_yI3lgtGQyqHdgAdCXx`?hQ&o-@96e`oys`myzYP~M z)i8uhVVnnR2gn93&&pH>$Vu2N1UL9#D%-C)m1L?|$mU!u7pjC}z!O1Tjb%d796~^C zM4AG8xp>ZO?R-+H z-Tw7uOXmBhAM^jy9P_ttYpQNvve5sDIksbA^Dc~H=}y#LwA5cZ()0;`=-7w1`V&rZL1Y)8z0*^Ky$M*L0Qj-UHq-ZtXjJhJ@k+ncuhY{{*QmJV-U z;+IFBd)I&Xb0d)%XJPzHmNf5Zns=su`Uv{|`Eh?zQ`hl#z8Q`9`##rnIO_R7jlAjK z?=>CX;eYEE%*)^6y)*IiC*JWtJaQa`zVNwYDD$5Y58>^f8$tM1e+1#tt&1hRSi(%d z-9Lu#e@Oc6{$hXJNYfvn(`P1aZ|ZKk8d-lQ#s06~RQ>6aZ!AH=$ksQJuq!&^f8&-B zf3vsa^XPoLUpw~J_GkPTOw-|=D0KVh*x-Le7QeM9i2XdW*zbJv_(bM^S6clO|4oFS zlFt9cU%V2LBa-n7MpE;3MW&zoxf>$w&Hk2=^ZeG4lLm0i|E+B!&o*5x!+c#D*(bAn zUD|j6Z4^eHLHuVD-z|A>OZZNI#Gk_GpKcXs{=I+f)+Ik(;>X_f$G_=Uy{6i-36Y*j z{`jUY^!=p2U}WOhw?F&FQh(#fTiYYep+LdAFnSH_zSfw>DM%Y}4W6%O>3Rg{GU)?3Hjgyb{LOE^b?e!0H}vz4=lSC>+f9q#1P=J;kNBUBO!sy!_z;J@9q8asdh;!` zw$o#4zqn=bd&m9FDB*7!dF!^@CfxS#kr|=Z_CtxDejY&ghyFEav+ko;Tzaqxr{$NZm}#r_w_ zKKz-Uzv4}N@9=M6bhfu^2iV9NBmSfjzv%gAzX=|82$lZEc-z0}@7~7s0tY+h|Hmy} zWcfK{ifmQ1E#}_mmerD12JAiy|0of*u zJhSL*^t}QHgdioEx&HC7PtB1kNE`-Wq>$@3X2=i z^6xFE4*+V-$NWD7s2>wh4|;y{oA}-tnbETI`ibD*Bgh3dBH!D&)5@1!6F)y;J4tE* z2Xn=-Mc4aR9a}PKhy35}|EYOXzfBp!|E@9bAk1g89$PJ9l8d=nUlK&a? z{?OlYtm*OjHvn_~WBY9r{23!l{Ix{OfAlXH@o)5iG-ofH0G8z^A!iU-`t-K9mQ4Br z&=w0;^mZ+{e%rDgvF+QJyw&tivF!^#uO09&(lx`(Z}-gDc4H3get-0#cHeZzE@~Np z*zSwT0E}rG9sO2&lX=x|i=B`<7ntkz`X&>j0nT)3%J^N=O>*}b(-WI+QteTMr^R|C z-!t=O=rhv(`sncsV&XMhOSQMfu0wp@ZshM_`4)5h0%K0=YBm3ev;%0P zJ2pCcTLc-482={^wwl)tyYVc)Zqb#kl?}O4YdTk<3X^VKy=va44NLBb{DjM(Pc!9;(>j-kg6&5dah>gLe=&Cn-X z2a1)d9m~oLn_79@I9fU7Gb4hHke#SNK)om^|K z(8^35_g<{UAl72QJa?qeeErBx=E)<=&0|NFnn#Z;G)Ir5%~MC#nJ13)n#YfHn~~jZ zhlbJWSzTPaPIKT$TkC!-+$4$5MZClGOlzAii#p!Kh*Pnyj#zt;cETIm{>G$e5Fhqf zCW`ty+DAvnK&@lkjPHoen$}^~Oq+pmw7p@B_G8AkO+Vp32OMbI*Ddum-3NYTc26+- zfg7Lf(Dp{|dBS`$#=Hn{B62eAeZ?fDquV6O5>}+e2-m%IL#><^HI-=-&0S|j%`B{M zcTo4eQLNW+w+W}Qe9R;tF{a}Y)_ZI8u5(y#tQomv0$|KFnSnVB$C^zWcu~yEYj10P z9({7%?vZlF3?DY8?{F0B`18^3X66OswPU{;a|2ue%jXY_jz-#dndi~x&(P;TJi_*k z_gB-J%xjNKMjMFBdPTsaJo8XHUQ-D!$rgx8Mtxv1m% z1ug9XE$so_>;XOP0X^*j{p;YZv0bT6@T?ub1fwvLYeBjw4tZ8a=q?vfvV;;QY z42&T@nv^*4O#3>Bas3E*1RNcG{#^F=eZZgnuN{59nRx2P@eanx_!8t3ca?UyP8%;d z*R-C~wzu1Kp&#P=Ilv|M-;5{W?qCN21ekXl!oKJ4?ZLy1{cg z!CyMSb7lz7dG1ILcup7i&|IOPqet5I?>B9GhcVv0ySvT3yE(QVbN6oa6NxsB(YbXD zN7{CEn=g_#@Qg9$_1h+L7Uhk??;(pD_>Ru&n1ym@Enr@xtDU$N8;R&#uG=qsNXm9c zS~2HnQ&i&PT2~mRIar<}bQn2nA)Y>->=SX>MvpxW<$&$&n>QD29uDIR`y4*h47jcZ z{G#alDYV&r81MjYJhun)-vhV+XP?{y*z5ru_5eP60G~a8$DX#>u*lTqz#sO2mzF4cxFT)*2ZX`wR4O-EPkRk4J}_TZP}$$Fy^S-~K7%pA|6&E_ueZ zo`rVX&lGq}dE`FB`A>bsSb05B=tJ{3{#YpQWLQJ)cT)Bf7x#j%O*6^;;eN+*y;{i| z>f>eE3#446i!dUrJahLn!l~Qv7qV6z_DrmubZWYR^B#DJH|3EgkK>?j^2xnX(?r~j zj71sYztj67ZJm7g<^Xu`gGXA-A>p?%JUPyG@S!Ae6Ma-iN6z6q7Mgi?w3>Mx8;QFz zr%2ZoD09B)-LJS&$GsHb-gdOxG_JD`+=716vOPjP9373er$`r=+ry*E<0j&BXyTMR zz-x{$jOU&`qrQy29kK;^0c>|lUB$b&#kFlv#fEeAgSQP9gM;L=!!<)5(S zAB7xx@P5yvI<7H&z{ihvx%&T|b>UoeZJrO-CJbM;Lms8NE7qaYm{X+@uBK_qeWRoE zIwTwgO*Tz=_;&@KY%jcKX8hAv{9Q7yYib*ntRP zF0>B#zK3#z{{`k-cTYAE$U6T6FawOfN>~wg?1%8Xz`Srb;D)jrJ6g?@OCA$E@w-5C zU5n;@c5WpCI1HcgPse!9l{JsZ*nc(}o5r?D6ViT1tMt)=wqtf3*}kqzr2XGVld*Az z^PDnm)T}^XKGLS1!?r&X;T$PTdaT@NjogYfmYryZ&r#SQzsbQM1Ds19Hp6}wVbJ7l zKit;x5Y{TWd%OXxfsYOzW6a1|+P2oa5A7=4qFwq#n?0J>?DZTL`aTiqibBS)Y}7n| z_*JnVAQ!+h+J=YCWXO>g$Pb<4qoilS0U0~w9OZ&heiS)BwjzS^dr*E4%I=9-S==gi zMx={vQyw(Sx}cBPfl&L`0skS3b`6`;U>ni)`Q>dX&9=3+ii`qZi@5Q`$n#pdjpBDJ z;dIzonWAxqyFV~aXKS&2w&%){5B-Gvr-k#Zf)D;ni&IF2arQKwR3k@M@yH z^)ku}94R|??Kd3%WXNK+(Hep^+ZYq*;*_J;?QOC)Bg*YToe#ifx`hqN*Zo&TUcFumKzc)a8c;*g0RYf`zjFb`Ic)XPvF&bb?1SU`Hef#;x}<|K*P#P2p8;Lctp(SC zcsh-Ad=&Ukz4Fir;16hd*Q+4Vzn^g?*JK~pq%VT{(7B$1&h_t<9k|+`ijf7%}Hhe^A!%eb9e51l0|C2-gPt^WPsK+r7rV%?Q&d<%u&FRGCN#^{Pj2y2#za@<}4qEt*nCqpDq|jr; z>K;+=w07tkTX)hn^;S;XCO(K0k*9&Hw0YY0lLzlN&em}@P>;2X#P-=mUU33=`l`@# zD`fe6(;X!o6z5>~h~DY!n0eIm_l_q{4=Zm$d%x12;F>O^ObKL9U*x00o4U<9z)5up zt_S)8%wrfY%TZsugyp~&TLBC9_uA+%>I7e*8 zkr;LOqqO^t>Zz^bw^9D<_$S+3Cv`LT_@<}hL~9gtjm&N5xPW^XU{sWa(dj#Z+w;xM zsMl`chdO&*ox396#~b>DJU+9Z!aC z5pi(fnBRnaUN3a4;m-!)X#3}=%eUyugZ$&$0z{IZjG?}2%n9M;)Kwn`FMkaD`%&=k zqer?x7oFxg(8^Pwm9K+Vo>UqFeJsb?_F`=-W`FZKtaZ#hKVt&$f;^o%5b6RKo&zpC z1zh+#aN$Yd!V} z*7}>ENBPMB^P%?RqnDmVc+iG8HabPp$07Wb4b%7ZgbhzX_)#0~LiiCIz8c}*w_(?Z z(x=rEgePhG>DHge`Hf&s3=f&r^5pz>+O#?@o!}kEf-hLtBUo49@?%GS-8DoTOf(PF;C8HU{h6W1R20t)tKA8ea$cHcht8`$GL5|Qr*9dR%!Hnz%Y^MK|_5|vWM|>*y%MZjhIPeJb|8=yxg?UY(Jn-R1qBj10>5F9} zcSHsDQ!tL6d)iv2;+a0Ea*%7?kiXmJAO0ozdu{&ydj806A7lNN9cwH!p2_H+a+b1{ zdlr*Dp57vygU#ICu%d#PzH3q?{nH9BWiojxqmpSsAt$FQgo#tfv1P@M!C# ztp0jn`%kj6nqxlIc>i)Vc@D>W6Z!nGF&9{RIVpaSGSlHK<>rr1lAFgtM{J+{EVQ!d zq&D_b#*17(X{?m{lkHvz$NYPv|1;T6dw_O;)BT-2KNoA=0U1KOz}X8TLxxX4Z+vvm zQnZ(X3|W2(8G^d#>$zWBNB(6pWH@%3F&~Ev>3|G5FJ`7fC!gAqHR`v0(7Z7TICkg& z;$OdGEwpE*N6mpdW?30AQ+%N0<>$6vWG+98eEj2}`EjC?(1wn*pN}Vb_f$N|x7+X} z&!&wXHFbH^$cHSyc%wT=kJ&!2wLJP#vsUo<3^VT>rNIM2pVU{P=D|BGjqV*aJJi=^ zdiIC-x*rvOH4k#*FCwZ-X_#$341V3Fe(JsC{T~usNgcqt9KpKCzT~gF2I#Lz?Xv53 zhuWea^qx@s;jBE@wEvQM+%r0=^GHd#o`b)n-0o1B!`$0&yoGBp#XNceZB_Cg@}n>h zS_pjPeuwB%X8(iDR@V`pwcqOgdta6H=rdoxdy0AR?rkR3aVB`rSXtKtccYE}a?il+ z7bv|^=j*dHcR*-^?XzFDA4B{9O8o(C&y_x&`X%+A3hJ?}4_ax(Tqj%E9j>#MX`S5> zm*$a=+O`OrQ?(ba|F85J*nV5Yj#pn_E5`e;qnnypJ`Eo849X4Q`3>t|r(Ai8Hi_K> zWnRSkSB>dD+!njjkTzjkHZ#w7pqbVchT%h_)Z2Rwr|Ek;y4U*aPKLvy823@(TO1SS zGL3%Hw@1%8hkjLo1^PCjKRv7-Pn45!9w87y9L1k!ysaM_{~G~e@{ey>gyY?YKD_!L zw@Z2^wDf#A(paw3P$t#?_zGvwgwnv>r`>E1E-MSnN)Wv?Yv?qz%y zPH0_s7t;4e@AOa6*HYxb2CM(^R-&E>(|hh5bJJbXFGu!{1tzqH^0!KUN6($7_1zP_ z*GGw_yT;x#AoTbj0^ADGM-_!Q)_0uTQq^;c(y)SZ7ds}sU|7Cm4Qf~P| z<_>TgT0|z|%5g2a#!9(?z2oja?cOnLk*(b`_P*$sJqKI9g0;@DTx-wX=<+*#E{e@V z6TrtjA6%A*`R(v3nwVtwhLf5!iH}YRt_kOc+T-wi^V@HPvjy)^n~${5U}o6Yq6oS| zhwwS91z*QQUJ5e3yoqd~)ahlN9U9~tqTlu#M!6rKK1s^f8_$Lte^we#@$sSrSMt#- z{iOJQ>!4ImvHI&83|Bwsab|aZeH#PcmRhS`!sBHP@}ZMQk#M~yq^~vKGxq&;vxa^3 zNC#{9Sgt{KdsKsbyzDoCnJul8q(Xgqg>Wv-aL*(jz@sV!6ZL|L4;D=G@qh%Ae8^k7 zCe24lg2{UIw5!g7`=w6r+rD1zg@SzaO0buY0ZrvYtDgds@_dk80QXwM+45qT>E)wa zf(bsBYAPQOXzF2GKQy;`_0@dzNU*ObsJ@zy{hC^@-WRU^Ul2x%WcTvXu9e$u$&)4- zYKQy{?Mx46&(IottkZV-46WJ^jHg+WR`by-!347vdlNro0l}!m3{N`>L4)&NE(Mc= zc%0B6>uABGD@aiMP;ytgr2WQ`VvxkY(5$xVtUAKk${2e2P=KfS=+jg_-q%#V#<*3f z?t|4=^I^xmJgB~!52NF*R}ZGZzX2)Gz?L*=Z8(XoN6eiuJ}pG~=(EXuMiq{H#5_%| zcNu^;jp(4)u<*l1Zyf_qt5*ov8|nXb^Q&M=DF&E!hO-rkd->>-V3v`^pd3) z?644K!1C(VSM#C3NDls;BGK15&S7U&BXQf|+zseGMPVJTvv`!F21@*YZ)7 zV4@mSU&}{YVOp;qfR{^ulN9XVZ+MZR1nUL+T|t5;I*y3&t64*B>ik-mYhZ>Ah z&5`Ph8^vLw}IL$yy)j9tE_L0%BHtIjZWAOQ~UMs%ODMwdh(I9}?ma!I>_ zQmakqFN6iuQ6NCS9nN+VnU7%!ruX5|q>I<;sTUMMUYqjT2iLJ%>a6BN0hD0%?`e?L z6^jzTCGeA;A=@>&#NDUe#c|_Xfh&>TCJfDnVW=Y{@Lc>PknMdi4N{P9XZd zMxb)B?Ibt>%K(?xM;_cCXIAbDS`6mH>g*n5eG|DJ`)Bx&Ey}PfOBn8zuKHNzpax$t zPC4l#iVbU!DE5j5r$_X@IF^mL0ra^>*^2U35kk5MEBSauQ#qn`9X}t6#(kWXqH!O) znXZkpn|m7D?>6?PRFmXGS?NkXc4;c75|fsa>}p7Zb>IgW?LYiEwt9fhwCw z^Py-gch71!X+9Pzrt!hHP9h>*p4H=nf(;ZLVwF0bR4J&lhL5>Q7;}T_YwG^XhwG~b0`LXob}*>3x*FsL$jH9a(q;C9 z=j2_MLzElw>iPl2SyVfD#dj9Zs#D~?j~uy(uQB(1nM`kRO<#T1p}Lc!uHT?8|BzxV z)v}piCGWm1!OUxTyy`Wq0{@iLt*&bU2^LiLmUsY<7d6NqpLj!qAFRHH4^@Gato{>a zi61PumX8-Dm}Nm__zfBtSDX~br}FkRAFtVDK2@Dazh+^`9ueT7GDTIQxiwFhP?-Icke`X~g4`}L(9|TIN-qTI3wm!o{wpLg?-eUrp)$Qq} znFuZqdhOdCbk#>g`E3ol>UHVV$A|KtmA$rMq;eeHT8C|`j?%}rcWaPszf^Bu#bY2a zI2Gk4t2h&7WUGdP>Z`&9m6fh^cgp<=!zc19mGo1~7zJ{g4;6pCd~B6qI^5Dhsk8cf zLBU@pV^opqskiHmHP;(!5RrFtTIZ(*py?s|o#L2mCU za!Wz~r)qgH$o*xknC?fg;+MkNcE-JY3`;P>hk9Xp`A`Kl!-qA9`Dm7&8hEv~w3-j4 zjr5M7rPcM8()E^B*IQ~J6K!b?AF9-*b_Ff1skfA>x3s3-QUexgOKbU1qk=z#Xj@ua zZz)-CX>Glw0EPHRkQ4X$RO-yKzIq26Lta4efjtb%h>XIU08*t+bp^ z<*C6cb{W+ykiCLWCGM3AZSze2VEetqnOAkaTyCEUJRvLjRH|5Y!l?U*$$Y+O8oFnj zY9%EO1v5&xTzUYvMwyi7gI?(d6l4CglHbe6;V}Z(6JxY!2*&k-tNA!61=B3p)g(b) zy(YKAL75-tst0Iul$}eRKGu15tOR+%-(0EQSFhezuiodXKf!58^~`QO_G^$W9g>zZ zY>77mBFL8H0<}8&v-%;alVY92QYTffld9JV(DNnKc|hu9>);3wsToO3CQk6qNVdiB z&}mwfVOMsCElas`n!WE3+yajw4IXT=ciPo)VHbvYj|_9=19m#p^;xxTiG3=W}^l)PmTRbZLB?f|-Bpv`bI|OKn za6#AgO(?~W3-?K_RjvUh^AdYrBFHeG-;)Je#mCz=na}ak$*ReCOdr=U)t_LTrs)H- zw|H0|Yv0jetbMK^Z$Nxa=NVj6Sf4U434E`qA&IbiT1w^l;Prc9=Q^{0DA~PyM9*mG z?Nh=(_;=CQ!56+5>@(&nalS{KEa%ew8N;6)vKjrEYCNCGCli&7{E(1MP9_TGH-4vH zy^yQQ)i4$L*&Umj&PX~hXZ@#>Q{`7pPTu6?4^m`?s!ZEl&Q*Ea3~#0}*F6-JZAjh~M*>|{cIvn=y#~RYiZBG~zkEd$oa;8v? zhwktam>x6^x>0lT-(36bw$BdxbQR43Q$xW-F^uAEqj!-%$O9PNLrCk4u@JkUjMjwdOi*YQi5#2{( zxi?V0IaGegmQUkD^<_px)gSlwwk_}KyFXW+bKVgu?@R)!uv_cNzcd|-Di#jieGbn2 zqrY>=rValZ>9kBZ_g#_tI`NN=0IGDoC(Y}ZrPGJ-wo&`)rcnD_pI%#!>&~?pAFAi_ z-?#ZJM?87OmSg!J){C3Ih~C`od^hgT*=f$3u+(ep=j8mCY(Cw9+%e^L!O_sTkK*&R zQC0e-Q_ROH;X7=ZUpJrgqSosa@^E@T2(w`oy8q16LeEZi(XW9vy_Pt*t{e*3UX)pa6=~P+^gUL$n=8VZDs@1X?%oR46T)dKu^L94VD8G1xTzmk$8O=bjKy;M`wp8L( zQyz+^%BeV7ES4)~Q$Ehi2;;mx(&%-U@lAP*ioZQr$+1|WC|9^u3^_e3R5Dc*C?(Pz zhL@Vf%ZWJeGRx>BYX#mfmr2V+^XXiXvnm${O?fbvr`#}@RK7M?&6!dz&Wrwd<=`f* zzZu;^U{x~ZO_}=Lbf#FVmTJ|w+!n{n`zpmkLIf6XBPpb|#O1m?b!?r#Q94F)GOkWQY*#N#X?5zR7|fo8D49GSbSruSYl}f71l>@&5ZZw(sO2G z**9>B3}t$`n2l$KN;zsO=}I+@k(9Tfg>N`VlHj=^Q9 zGW?-AvfwN_r0P&SkpwA$Ggzjf z#o}Z_xg8v* zz(R2#T_)owk=mh{my1R6Y%F!0XotZj9EVl@FhqP5%+|JR1+ow@(}YReStrxFUIUmg zP?R_BmJ|6>5gY}ylqdjm%9V;qaqS3;QhCnoxwGaHS%Dw9qGgP7^(Kiln*a+nq!-EO z{h=U61(e~vMbzt!L!3HNS>RP_r4pK}*ijSMZlGX%agv$IA-$H*XFw6)&x3I?^hzxm zPk{(9(p)7~G+AJmgSWkJDUKXreS=_I1&}4B3+iq#Wr%~aaa_g1gY*o10iyD*T$9e{ zq<6(3VaNh)N%NLKq&&)ZZ0LQfP+6#!#wz8!FcCE;iDr`zs zHk(pbxSn9nK+bFstc22mUcjla^ujXYynb7nu3w<*xMZdy2+ayYvw4HCF0#OHbE29W zfCR@>lSQx^PyrCHkV**CAnq#OmJ{IpyhK|#1F6sgxmKuEz{UDYgYn9iJO@Rt5f!V^(34qom1mA%NnU ze5q=IBMmvVlkm+I(gLrPTq|tI?c@BV81h()jDQ-%g7OeB&OA5SNme?!merSs#fdav!BAHVK~>lZCspn_6CC<>0D@&ue5qz+zFEv2qt zCyZtCA`VFxfhtZ$AoqI9<=t{YHc3RV6WSEyV;GMVe2Pg}_-ut`lfc9caaAt3hF0xE zfwagQj5MLza1mHrPHf@r*1C2BIUqkq0c8MOdp6o11SUvVR;}GEN(ki1AkdJbN1ss9 zuwbI*ZW3A~5bH`{u8=B=k|o$Cm+58dcXfk$;(Dh%L{KHET5(0K0&yFGG&VvrDI^DB z8<1@S`OAX%oSVH*odUC*a@scKBGg@JY5@HLV4yc%8koonKjN5+6(~K%@@Z2^SoE_9 zBh)0k8|VvVZlekcXd?anK&v#DG`te9A!Zigb8E{wY=~)DDO3z3uJLrp2U<%$9Zjf zomhT_7q9@OH(@7U8+AR{}SaS zPW7-92VEi?G{oj>WKf-^nzE#fK9Ff;Vlu5(x6%jX3|5Og3YcCiRVk!1R`6zv<$S^_ zgXy@i!9lP@RpwNJoNTXb%F+}PJ30$yVX~zfjRmgrP?ZWKEucKGFReDbFb7#_F$FMo z%{Hq3r>L(LhN>c0pkk`tq^3P@ve(~aK=W2{6Db1oPvvz*l@o1BsKGe_QUU-WqCgI* zD}n|95gBSc(!vT%)jH!VTPmA`TL*eGOkx%71Gzz{RkRus@fsfSc&!t|E|YE3&7xK~ z7Bp91P+r16cL{I)?Qx)U0MOYE(nF?rj&vn!osP}fPSe$ zu1TDMHp|~lp-2S#L6eSCR^l+nffdAE%lPR7tEQ@D+E8FcX~05_T|steF*P#6as~*V zqd`ki-7f~6a&uX6)vK_?bayBmlCl*9{coEq%~YMfz*q++~~kyvOer=-!C7ks zokbQ}zd1?ww+eR9aUQ(FE{-CSGf`MEBl9c|0dx366BW)wh|wZ(IkT~%YOCNDG?etL zj#>J+)bec5K@EmVxtLVeA}9+JPYPYpuxGYl+3MEoTIXIe`;xh>7xx=-xGFeyexrpm zND}5ZSDQ?nl+D?YVL)f0vMlC!K^8b3!Z*`jDaI=sk_2U{SlSY@U}b`t0$Ec$J3wKi z!W$D+=yRB}<{0I+61kMk2wN#PF#Lp&tq7xPB42{6+)Tficvc#8?xl;?%x6#P=z@x- zikbsB?R-P%%Bk|q>6El4pQoqxCmPUvRWmguFY&v(@Sj`4p$dO_FM9aAyH}|`$|A9 z{tnVya0275Usu*6H49~@)IoiMt`3WA5QrGB4CJ8ALdsH5V7$2oKOCSrNOEJQst5ex zE|v78ZR(+MDzOlpDOCoNCO(h;n|z`_r%oF6rpJ}h+$?ID=*mKNy2ONB4h?S}$P^mX zI-}$#rYcsS{_kK}M4b^aZFEJ|(*dF`RI*5H)Jx)l9dC&Bn}h_5Rp-}Fl&ljD5K>-R zg?SRMs^80D?4bJBp;1yimU4kBQQabxl9^HpV1%Se6}XK=3ru^?q@7(1>FpUJX;}5%=+!Dw+K|1bOcOP zo)ymt(khy(!%IyTr6Fe~I?azB`?B?uQvb>kkRf|i++x9&*ZN{j9M(c8c_=Ux+SN_* z0!(2eMadpiDU=Gp12K>R4{;b<16_A#bi=5UfW{7%JhVyiC#1GlHbL>J8;(ooU%Lus zqf|c zIkxPEmDgXp)QI9OO<3nze_HmbpfIRecd9c$cFRZox8jGY#DxmUvgq#LprW(_qoJ0~ z8f#Y7t%!8S=>yiWEsR1{T}8AS_o~E;Dei*`v?2)?Qt>QSFPD}bH)AavyP?D1eG`wE z?v#}BHPOF|#S-1i;)5gKNXuBuo2_3cSCnlMYaFGs;op34f)OGRN?T2ost%yXWphno z&K0xxHJe{^Wd9qAYlRGry@DB*ij_vaWWfz|1;S<`9~WV13UtH{Z3(pg_y-)}f#?X_ ztyaXiEyn?v@Ci_ntfFuSk#MD4DP!AIQMeIQtV%sMN9t@lPd_V5bv;^x~%m zxCa=*6t^p$2{!qy))Q=~i)_)&CTX~0IY*YB+=}(*81;gIRV1=mO35uocE(gw<$h^_ zJ8W?}k_di`6?nO!R&s77Ktr0S5~I>e_NJfv4gw@%OsZ59o=9&B*e>{M;~@tcK0|ql!i)a6`vEMl>WkOUm;c;W@+~y zE2<1~t3mhMz@TVe>kcdz#Lx1|b2TKJ5@ATH2F1?5&)WyN^| zl)5PCs4Z6jRxy#{ar@(cs!($;4yv@$k!U&MCX_ABQh$-mm~4Xks5Mnw)7*!dT@TKw z2j}X>`KG+?>rxR($7PNffw-~j>A5n?2l87Qqu{aiActCb#QM= zSBhkjvR!5=ved8JO_U7WR0~*lf3{=~t|Y7zhHfUY25G zgCYioAS{kWlzRFDdGGd05GW=vG^l!btZ5~L-q)PD1-tx@fgQve7 zB!s$UPr|6X$z(XJkk}74N3-fnfWB&hf%c$qxnmLNL?$X*F~D!0&QRlw8#`icSx2R~ zquEX>fgZrVR zI6iXxWY%T!eYt#h%J&tnKn-SkqDp6)-DDSs{D4sJ2A=#$>uChbK~)P2oqMX2Q2=_` zs|NSZ6ofi?;7l~nO#kc-`JN@;v*mk^d|%;q^$SIjQVHFUA1sO*Lh4A>Jl(Vm+LcJC|p zcbm~CRlHLisTcW9R~Z#8mHgaX7Yjtm)vlVFyBl;Kuvu%?>7l+NryD}|<=2&!)p9#>hSRprxfY(@PH?c z^NOBL72>ug+UjL)cTaZlh2tB$B;=VUZ|y&zw_~O5{HFYjIs{80nvtjpJb{z)n_97)^9VwwPfZG(5+sP?2HO0yF)jtJmiau2SzPy+Q!KndpPs^4c zbV#?Cle7D;*+%NmCgf0&-MwT`4|rG)T`HdzS7tG^eQked(C+N1{+Mwa)HPwn=}O6M zmuBPc1VT191jRdv)ebPOnxP(?%-M|^Y6-QxJsZSEX-+uTHA!Fgt(C)Psck~OlYwpw z_QgQT7+Rv-FV=$|cZ`F%4{kBl>XtZ=7#LM91-u87pkGHhnK;*--`SqG5&0}kHz_N& zIkAPRD>(0Yd>bEk|8x9Hm*83P%@KnD2^>47GDCWSbvZWSo0 zqA_q=uNs&&roU7_Ne&s3;=4y~`PCWUfO>Y@irX5qjOg~F2CKWM!96UUTkVZf$sPY9 zpD)zF5;o_^Sk&JrW_77p9OM~qT|K8O2dAUt^ipOc6dZ2o@cbsFruDKU%iR4}vnU?y zi#qwL$GgM^g?h%iO0r2FEX-J4#cn;=qtF?gv=M~lle}Ua(1KqDOP}3dBoaG?4c+PFb)so`05lNiRl<0Ss z5z(Cn8lvZrUiZY%>`P@l%9Pbnn}TSi%`2M^pcQT_P|8`1D~hQ0QjHT?u? z$}Y%Db9%P3oYWn?yd0DI~isc0XR&e7c9mun= zDk4q+%4i~fS{XLlC|IWjP2!*<0zqvq(fHiXwpDkm9LmX7R8hBktdd_TSGZy7e7;G6 zY1JLxPz8?%M)aJYV?OdwUO)j#`H{3XtsW|axTZT@+&`2PdM-!_LXgKA^Rigsy<}2= z)m6k`5$~;i>B4OQ1L4$rp5EwO_uK*yZ@mGaVk=JkDt}S8e$1N3JFF545p200kI0B5b_dwh^(@6GMQsJklt>_g z=oNh(Mr3N>LUczH<072(95_9u&TFo34Fo%UitMUHrsEdG&bdi90RbzqQ+oOP%P(ayO{zOT@&S~KAGQ&#yB_hxv`Mtq&nw6X~i-{PAI4o|SVxpPEO%Ve_|CF+#5 zKE(tc7_djM2P>Hjg;p{H%UZEZ5w5qlwpo(-CCy`CKJcBc_L6qXzw3m+mIDg3#?{ zv&41c9FrUaU5L!N^dx^y+#X9|v%%>yFn?Q(#&oS z#jWp34-hF%^($|b(~CUDn*&dwgmI2?>n2dYFd0OqKQAwVW5D3dG{4pQmh~o1slrkz zmFruWM3IW_ySR4KZbiY*Od+lUm6DkN0z^7HC-pPGu0{46sLPvWf+#egmHJR$l0F&a8^_ zqRUaz`W9Kp{1M`-*eg+hd-koI5tcBObx|-w-M2wx2!WugZvZ zcUVbE2ZJzNObJ4NFl{$X93_>gzt_Zh(x%+E3vW4>Gm?RI>+4I6hWlC}eRk)!&Z3JP~ zuhwokRa4xC?kMKWN%tAJ7mSP*bbKpLzT!Ly6Ib(B7cCu_jpP%ZdWv37y*lkt)iiNV zkUfck=nko=5u{Ae>MFuWgF}R}G&ME*+-s3^jnW?BE;-ylu;lv7G$yDnlI6?zd zvHCaVr+ar(y`|1wW^p@w;$BoCcV;9RFYAk$BJgP5rpQsO#Zngh3H#A`BC%x33G4Yf z`S`gQ^MOd0p$u$Rs~e!uR~B+GuA4x?F%UI})c;nXH>|Y5o$OG3u6{1th_vPj z2Fu^%pg?_3PHZhHF0Otn>74_eRs}5@&IUP&1S`Li8**E1S=q53sH?ga9@eD?NJLF=0xQkwK_CK| zpbloBbGUcA8V@tg94O{9GYJ%k{h8$qTAvA(7HaKGi?}l@<P+#J>G#F6FS$&V zcnsEIJy^V+ZLp_dIKNy$PtPZdwX$08hDwGt^8#p-3X}E?Htv{Yv+ni4(5Vxl#eREy zLX2c6{(1;VxtZ|tOEp3Rl&(n&WN<>Eayk;^w5Al=tlL`kC84ol>KQI{Gd zi>nIH7OgKww|=%#(_@162o$X%F>9qyBwSkpSrTDh47L3aWUB#45No` zyyynVX19Su*A~SC5AW6rRy~oNg1iN-Cl_TD!J!m+4XnQ8)TBycX;xI3(}EzNHXz!#+~toQO*{M zVrvF3@aAQ|*eQ7l?n~!XE`}_IA*WRK=dutrxq`($(N$z%0T}gFc|AY@JI1|eEeEqj zwgnF93Y2&E;%F}L= z>kcZn=;@+W({g#|{;1fa**x=@BFf}cAO^s*C+gg*wAP%^w<)#Ntn&uA7yqmmpDg@sl+CDgW-zfOuBRC687UBPaHCeda@kyyEe`U^2GNC_XNbqfuU>nWa7S2)4cIz%j-8|HNH}{UXg_a)F zwr762%#Y`Sa)~*pm4Sz)T#>;)^$UUGvi!MEE$q0>5Ukc zec9EWh$R=qFnAche)ES~ak8DPQdLcLYD?;Sq8ldHZ?_wDuPRUrtbL_o%Ar}D_{KR#W zDED{pYZkv|^J|Wvk=?T9i6hxRl{b;}WRkoCug#G$l&w3EJ3BntVBflx*Z)KKI%@%4 z1*(q6#pc&n*sP4Ck^zNN7-CKoo`UWRU_>gF-AYmGWMP1PMTuAh?AQ`_opYA_)N>YMMp$tv&O4+-wafaYS~=?8LP5zKI_cKVd`Af=dw$$?OP|= zhLd@zlMZ@ba_ObvL%4LMSdu?djMJZYrQ`6;MxB4!Z~txRf!#*@ZE(S#E&Od@_;q)k ztJA%7gc+=#%yGI-II5;A{(Y1JKbrbKhW)+#e+Py9A^&()Q~uxrS1aTf{?ldr>7nTh z5zRpGpMLjmsTN$h=?e%BSlfeo7YvhQReV(y zD7z&67W9CkypkA&&QI!uj~c>}^8dr*k5uT$HQfbo`q4aNc;3AQDyf&(onxq%TcFRw zyn08c;yv2(>h((M3_j%V^^Q%Yr#U#Ud&N-ie|I5B#hy+>d_pQtH}4Vp$ILCzCu3f> zopqDH;sxr}xGpQ*x%a8bUt#q^yW(xa@*mR+^iP>8Fzk%v@2J?d=l|+`QTXrmI%m`y zSv>ZEn^`aPH(9WKOOy5u?-bh?%JbUSFLhwPM_x#!&M%!mUS7UFsf_tumzC~+G~_Fp z%Fj1Eb>RBl_f~$Nv8h!4@(UYH!F+R*d|~;Ady|237doY%)blnd4ikDpQpPB-_>WIHV!r+a8B zf4YUU4$N2VpxXSy>0>TkuX+dYcUSDyH)D9i5SH>&O4RoGWMKOTC+we$9q_ zN2K!eHOa_V_LKZRg;S~gd?#k)EBkK#>+;A{e!lZF^0oc+z&>;H@|~NJZ+en1^cx%U z9hJ(@cXdX-wObDCJ2x-iz>Iv`lYF6H*^n4Nz-XD+|@V>ja= zU(Hm0zCSYZZT$AYzIyZW{g#n$Pm*s;D(0)5%FkCZ`@no1zK{J&=RNZBg|dSAhJTQi z?%O)#tCK45`p7ndBQ>U^~srH!dUJ;AF$- zP$cGSQXt<9`SSLSCzs1gb!mTKzVJ8S`pv61HCZU-@~i!?UN|-tJjHl4srN*I^_x|| z0>!D${gd@uG?h9n75l3W?F-vXn1_P-`XxKM)ddO)teOKJ1&!~P;<%KF>%%B1%J)l+%P zHFNmEss5=rFpi(u{zFp3Qu+JyF#gSk<);2AUxkeL(A4;pbzL^rzdyuf^Y)X4(tY&r zN>=t5@shlev;L_)6;scr;{H23^-t3;@PbXpN2c#%79M5O^$Q-k!|Av5?BOC*>llZq(+~4Od&#*z1{XduAF&S~eBUOlx&4_Dc#5FVG+8J@3RGBdC z|8x5FGvX66;uACClQQBa8F90WxL)e0tav^W9~Dwn4|qvbNFURt6o`*c;<*Ll23fH` z`n>q0tb*rj6;h`p@ty*4%dB|koxC{oCBL;md`?#Cf9pKN;ru8kD?jd%mCC`}Pfp+NEj*ehf8~G-aXLOE zHB%h!qfjn+y(})U{K7W7G9!K=BYq_#-k1?@$%uDk#QQShg9>ayAwD7_J|-hRE+ej& z5uYp$>$F_*`aLIOc$bX$3UORsN2G>{!#Q%fWJ|j}qy9Y^@vMyak&Jk8M*N&OoRgMI zUaxOw4BwOyf1VNV61PpSzZ$8W0=uLzysUU%y8Sg%RmG#y)2p3oBrczh>!dms%D+!Y z*d8v)$k#t3zCI(qB_p1c5#OH?&&!CH70SOqNtpis|GxYF=|i~uFU|{mvsLhmI3KR1 zFF^J=TgHVY1v~&Y1sIme-v2YL$m)~ACmDkOUB38 z)!MhLAO6(~{~CpVCxw5F(*x3l^&5o$>3{XpRhy)ro)G>w4FA&4PW-S>Ewq=~`6Yp)7lA*U}WPN&O{(%;|} zCHv zEHF4+vJ%#4vW5I(rzPQs^0A|j|NUe>j+Cwy#`>p^I>Q{MulK)p@IPJB`wt&+{=a;% znRy9dTqNo4%q@|0cYCRU*M+O%!qxl9Yb|_CIdssq;r<&v zy3Q^h&)2eB#p6s0!@F#C*D`aNBCn|Mslz92a-3wDmj)a)*)^odS(a$1xd%#HVJ z$?lm-f9{ywJD#^?UzUs?ygZ)QW%rHuxXbRBN}s4@5038-vy*?Ng7xG1eXs&62aCn` zC?P(V-PxP{cnxpl9h|~BT*%d2%h$P)pYc2X$bBrH6)nw5%;oWHz*E?k=d%amAR5v<9kJd<5{B}Z^PXK*2( z;~U(}Z@HHxN}E1wvMJAGS6;~x9M2hC$mjS5H}hNWWr;GT&!+6ii+Kfy@m4P73w)c~ z_#?xckl-Oah9|NWFJgaQ$D25jGr5$j`4%_x8y<9Uv=VFbM4rxb*@L%n3jfVFxtZJf zD|5<4%kgL)&t`1L-W<#uIe{~|kk9cAZsxb#%Myn~k6=wU<(cftD>;JWIfD!N9N*w( ze#^ZqQQq`flTCRhyYfno;CRm9LcYPx{FZxJqC)g&9?xcM$Kf2ydpMU*a24O+CVs`; ztaNC!I!|Ovc4SXp#gV*&_i;X-;)`6*Pq~A8S>&*2dG_N_-om>$gA4dH*YZ6UuNbYs zs%*fs*@b<1EpOr7e1uPO4d3P$+{r&#^6=>4tj-hJk{x*!NAeEd$N7AUFLFKivDgvO zLs^Zl@*D1B$x7<;7}n!yJd0h}m)CMEmv9x|;3j^>-ON5RT9!xgc%IC&*p*jsIB(}P z&gXKjE%H#8y0yy*QAgIGv06EZ^sE%>GxjG%K+to3Je} z;^n-SV|gzh;xew`dT!zO+{co~MvvfeY|J*ikeBgV-pZ+*&lP-`TlfS2V(IG9qgaQh z@*MWyK;Foye2`1Hn(O!xzveG2Q6qX7kL8JM#q)V7hj0uh@c}O8Dz4*Ze#1R1dR+8S z{)-LSlIQUf4(4c1;v6pF3tZ37xRd)?re?GX>+&?7%ey(7&+=8i&oB5R_j7rz=o-Gw zPq>3cYDX)u8c$#gc4RLO;*FfhS$v$&@pXR0JI@FXUysmScD)@8f(v#TU7rpK=F(XVLo6LwOAA@l>{FH}>VV zyoGmj4j1!zzRnN%C4XjCgJ>C6W-T^h8(zTP9Kz9@$XQ&#r@5BzaSOlY9u_$vTAs(S z9#3U^c4a?a$6Gm(_w!M%;973r7JkRQEY>i3D66pn+p!aSaR5hf9H(&}U*I}!<~Q8K z(kDibU=226E1t(*9LP}|&*^-G%lQ)D;iufe-&wR#v;wQLK8NuZ-px5&%;)(!KjfGE znb{{r4`wcB@oVm8p~lg2Jeu`*8qeXy9Kewr&zqY>C-DI;<|?k^W}ezK+KIh+6Yu71 zZsu3q&EuLy8?iMzu{W>gO`Oa*e1fa_CO_u4{GG*4jvmGqoW_UwBwyqPe#Rg8Crh0Y zt;Cva!nVAKm-AYV<&aaOBX~Qfvg~Qm!+9(lvIRS^2M2Hj$8j3x@mapY_qmNfGrM{8 zVCJ$ePvzO{&i)+1J2;(>@@c-zkNGwCvDoR+@;sWyvkA}O1?0eJTBq$e2pLSEB?Zq3!;bc7}jTV z_TW_<#XC8Jk8vem-{Lmz;y#w>9IeP>*^n)G5qon8M{^?o)g@Y=XR{lx;4t3G8GMAx z`5&(5r#zyo_Oc;cumdmS5RT!UoX$u29ADzw{Dj}Ke7ES)tjkk)7Q3(?hw(N}%TRDXf^GUwMxA_Ub<$jjDGd+s z_ykw;V}8ruS*&;TFdob8{DnDvqKEJp)@O4*$i;k}+gR$dXhj~&hHSwO?7;yX!Ev0% zd3=&@^HYAq-&pu^^TVTg3eRE}-om>%hl}|f9MX!lgU^Sk=mb{AB^EOW5!+er2asxl(5B!s*hDIx~CY$ggUe4=y8>jIRKF#&q z$^9&IZL|vO@-&{yo*cx{oWwa?!WX!npK&Mmv&?nTT()Ny_Tw<##%X+$AMrDO$sPQS zg@#3&aS%uHe$MA=zRsQ8%Ob<0<=Kqwco8q>^}L-^`7od4%Y2WY^A{GnK6)^#@OXA+ ze~#cp&g4R_<~nZXm;90YdC-XHNj!&LIFQ$KEMMk3{EXi-XJoV@tFjK8uocf`S6;@! z9Ld{wH)nAHm-8il$S?R8ON`P!9?OPo$#Z!zhx1c@$3izm%dr|8u`RoD0B_`EKE!2Q z!}Z+4@A)Sy-xxifr|@iE%&T|68Rd-QNt=ZS2|j_k>Y`52dQ1)t|`hR(Or z(_wQ~xx@VMU2frC78xHc!^*79W;~N!cm=2OL9XKK{E%PrXJ*}Lx~$AvY{E9YfW0|{ zqdAc?`52$!%Y2Xj6D@O^IM&&<9% zdN6ZYm#6Yh6DM;HpWte~ z$@WvD7qJho<`~|^SzO4Ke1#kNId^eCOHYedW^Fd(ne4)T9LC!?mGk%%e`dM+qV+kF zw{a0y@&Ni#gQb%F6n`=NUo+zHdco4kaf6L##Nj6gk5A5f*h&3Mctx;m@_vUy zj5o^g+l@C-{3zFP7x%Hm%xD!>50+1k@2opB=09O(%-e?T)$hh@l;6Tfl|L!|kN7=q zQT~Pa2l3D1LbIZWu+FSF`~-1Jp3kncVtacA>m}Q_@}ay*`FQa(KCFC^cqLz!?{&Vb zd<%CPujK4#`Ps33m04YRL-A?ib7pIA@bFZs2QLjK%lUHkM{uBT#dglob#PLp2|15S;znge~c$oNhPLO9Z?^kc0 z;fs|o*dTcyEv_0oDp?P#H7CwT-8pf(E!al=j^bV%#G!`Y zD85_#lK55eJL3NallAbG@}ErqSN@^A$lO@J%-mRh2ycR}%Dan4@=i`Re5QD= z_;K-4@iPy__N;j*w)X?^X8y{(Ec9?3uk^z)&mrQY#8t%&ACC1K^BkVXUh4N1_vcXK zk2ZXq@(H}3v$=#%ai#Isa=knsh)d0jp3Jtqp0{%fALD z{5ahqyoq;nn(-eLFXM}Rhns`RdMW%!wDcpf{7BYhUBgd*B(|e9I~snWxGQ@rA7s4A zd_ei5>OIaE`7+;DZ;SYI?%_Tbel*rA&BGs!<&{~NC-7wT&Iu;Vr)#iAa-89%!El^W zZv@A42Im-mq4+s|#4Uz@BQCZeT9K6(#Njo>^@GXsX|o`<<1F@Ne-1X@NaKwW-zlCf zet;W!@MFALaqa`1YZ;4q8Jxn6yx&ZYCKMPW42V@R(!s= zv$(gopZFT_@I|qGqj;0y6AYgrek7Qj2QK6ji{kt|sopDGr~U`xkHue!cZh!#{~<22 zIL0Lx$M`VTWmCh?WLNey{7Uidi(~ulQ+Pfv;sEt-=6zhum$-@Fv(S=gMb=@v_9+ z_sGA1s||mVAM#`F;%=5$7A?&xtjgNUV!KXS7N>W*^47eF-FSt1*NU&_B;Lz;T)<_f z^P>1=zRM4|P5xct-7N8>`CwI6=P5j$7qTk{a4_$BGPY-i_yIl?OkVeoJQ>^Z9A8j> z9Y5uE{>V~KMJon#lH-TCiMWUOO7S4^$Y7!5_$Qua_=Dob;wQ!b7QZL{OuS9JOTJ&k zS<7QwWO zT{D=xKOGS~NLVx35hvpC$G=!IGx^Oe+;JK;vjk9u+g|Q*n zG4@lMb6%3)eAFl;e`3!0$#M+kCnR|a#ovgxEfnWxf#IS5?83=RFABpG*A$A=+Ys!O z%#ZjJ`M1fxy-;jN#hhsSoLH|j2XlE&Tz_kW7bfE;7Ctc$`Alf4@+_Q8K+yKXIt>M;ZTe8pms1 zG%oK>MdN&T2*aBu^AUz8c2~cb`h(?}7rZLj9>i}Jjjx+cMdRycPtmxXQsyJ4SR6k$ zF{f|RF6FhAcL?Q|$Now~`2gipipBX_P|S8xEVgrLsMjnxZx8hnUkl{}ll2%Jlq?VR zixrRc!#<|)$;t9bERtBZcx+!T>lKgn8yAoB(Y$z^kM`_r_`KqlNAcLcam8c%LcgS; ze6sST>aUf5d+|7bzZ&){%aw=yW0>!?skq&}nTp%phERTZJT8Ra%GF>s2``y9~;(oVCgSg)f)7>3BGWLI6__S2IAMhfH;a(cybzDkZKExL% z+eucepPpVj$CI|PfAP?+$=b2ie1?0b{LH@b& zuMD-Xbe!-tBea4FYtE5m{d=CXO7)_(`f ztCQum)Oy}-{TH*{H4i4sy#sq$|6|2dxXSjiT;5gk=33r0EbqMSy}9K*IdA(99v4<- z;$^YF_z>r^2E%?LZ0EIY=N*&}Wtg9^zh2Jo81@f2HSG^-#`CjK-iLdbK0m8zyQ&?} zYs2|@HF0>ohx7D?;_!M3=j-joVY!C$_U__dskohv6^H$3IFFwzo|lT}^DD(+xuw6C z5{La@IKST~4)c+n8_ze>?a7L-llJ1Up2B(mP;uCwgxAe1@!a5Xae0S0Z1>^)z<1(Z zS+Tw0elO|y&yI1*eCDtu%diTovVrB$h^O#$cCcJJu^W4GFo$v^NAot0=lz_`d0fCH ze2UNU-+Y;`a}z(|7yO#Paxb$ix56yNvOJ8Hcnpu_iEP3aJcDPmBRjJ@ui_96=P2I7 z+j$r7;r*P=d0fC}_&i_YD}0|HaVxiR2Y2!>X4}4s^B|UI-u738RaujDcnVKvTej!< zyofz`DX-vF4EH|@uhTKSop*93=kO6OIagO71Bmvbdw;D7iA-{$-L zh}-!cf97xei|PArBp%EPti~EVDR`9oa3r?i8N85Pc?mD$01oCbj^xd}jZ=9)=W-q& z=Mp~6=lCLD=0Jd0h~gO~9N4(BM|8O%+# zA5P;8F60wj!DqRKYq^f=`2jcc8-CB-+{67WR3uu0rCEW8vj%JP1fIlG*@EqOHaoF1 z`?5c;=5@S*H*p*%@Lt}>N4Sv7xPq&=hU@trH**WWK-TZ_5S)^#R1P^CrR$~p; z>YRT)6vpAQ_xPq&=hOcrR-{lAVl>g-}?&crd&mzU5 zC3r9^@JQyeE>B=np32s2#}4eoZtTf{yqeeZ29D)8PU5|s!3VgQ%eaPXxsL1k0XOr% z{F2{s7x%MJ@n}hw;bE-ATCB@PY|7Kwn(f(v7qJ^J<>kDJLpX+Gc_$}v8fWl9&gUX7 zIYkyTig zwOE&p*pw}J2G3?kcHzbB!+sphp&ZH4oWy%MlXLh87xGCy&DDI7uk$T_!ma$8JNOfS z<)6$tC|Z`~S&3D6ENikpPh=~$<+(hcUD<kne$M7RF5nVA#h3UB z-{L#m%5B`io&1%1S-f=gAeLuER%b0XU?a9>J9c0v_GVuWSR<9Xl@mCb4{|;i zaVekS^L&GE^L>8At=z^P+{s_Lm&MCO4`O*%WEECr12*C*Je_UXp554!ec7K^^E%$h zn|TK(ayB32V_eMTT*)o|gUa3ZI0I_L0VF60wj!DqRKYq^f=`2jcc8-CB-+{67Wba1pB4`pQ@ z&3eJ(lJ}i##?yE%&u3Tm;AOmmgE^EVIhwa|Jn!dh&f@|;!{_-DU*TJPhnx5bzu?#W zfj=>;T(mGtu`CZ`CDvpeHeyqr&elAe9od=P*@yi&j3apqZ|7aShcoy9=kqZx;|i|j zYuvz%{FtBdYwqAr{FQ$(`;h3ttiU6g%j&GfraYCc*^V99iQU+f19>%X;;o#*>72ud z`6Qp_YQD$~+{lml8GqnU{GETYRQPPRX0ko;Fjiu1*5gTR#uhw-XR{+avpajUFR$YW z-o#rufs=V3XYwIF!o^(1HC)SeT+a`;O;@kZXv@w|((`5+f?5uf5Se1ZSryZnG#_&LAf_xzJthenIB6f3a` ztFsmxun|vX3wGoM?9N^s6in9DH5|bkIf?gj1|Q&jKE{}5kKWNZs%|O zgV~2gi|`;G%!)jcRau>l*p#QUHQTcTFJd=d%FB5zujd$!<(-_wX`I2wxR}eilCN?d z-{Xh;j9>6){>HzUT`^jm2eCXWvN~(A0UNP3+pz;Xu{Zm2Ag|_4yp z;aa}O54nY(^BaE8eM}u5EyhwT&x)+Vs;tGjJc-TNf@km?p2se{m;*SNqj?L*^Da*1 z{anCBe2UNT6~4ib_$jw>JNIxO3mp+H$|A|4%PyL4*i8)Mv?|)Rh-XvI&M>2igMs9K*#d>VW z=4{2bY|qZ@&R*=p!5qrr9K~^*z{#A#^mQWDTnA9ibpVNrxH4EhUiTAR!?k>kZ*mhq z;Z|V)>vkxI za}>t~lh^YEPUaL&=PWMZA}-}}uH-7d#y7cv8@ZL+xSii|7k6_H_pw-^RQh#Nie*`z zxva(-tj)$ena$aX9oUJT*`573fP*=dV>p)MIDykSi*q@TOSzmYxr(pxO>W>uZsj&^ n=Xc!0eGEJ9U=GW&JS*}@)?jVcV?#D)E4F2Oc4l|>VjuoLf7BVu literal 0 HcwPel00001 diff --git a/release/src-rt/shared/hndpmu.c b/release/src-rt/shared/hndpmu.c old mode 100644 new mode 100755 index 40cd75e293..689ed2a40e --- a/release/src-rt/shared/hndpmu.c +++ b/release/src-rt/shared/hndpmu.c @@ -342,7 +342,7 @@ si_pmu_paref_ldo_enable(si_t *sih, osl_t *osh, bool enable) uint16 BCMINITFN(si_pmu_fast_pwrup_delay)(si_t *sih, osl_t *osh) { - uint delay = PMU_MAX_TRANSITION_DLY; + uint delay_val = PMU_MAX_TRANSITION_DLY; chipcregs_t *cc; uint origidx; #ifdef BCMDBG @@ -369,89 +369,90 @@ BCMINITFN(si_pmu_fast_pwrup_delay)(si_t *sih, osl_t *osh) case BCM43234_CHIP_ID: case BCM43237_CHIP_ID: case BCM4331_CHIP_ID: case BCM43431_CHIP_ID: + case BCM43131_CHIP_ID: case BCM43227_CHIP_ID: case BCM43228_CHIP_ID: case BCM43428_CHIP_ID: case BCM6362_CHIP_ID: case BCM4342_CHIP_ID: case BCM4313_CHIP_ID: - delay = ISSIM_ENAB(sih) ? 70 : 3700; + delay_val = ISSIM_ENAB(sih) ? 70 : 3700; break; case BCM4328_CHIP_ID: - delay = 7000; + delay_val = 7000; break; case BCM4325_CHIP_ID: if (ISSIM_ENAB(sih)) - delay = 70; + delay_val = 70; else { uint32 ilp = si_ilp_clock(sih); - delay = (si_pmu_res_uptime(sih, osh, cc, RES4325_HT_AVAIL) + + delay_val = (si_pmu_res_uptime(sih, osh, cc, RES4325_HT_AVAIL) + D11SCC_SLOW2FAST_TRANSITION) * ((1000000 + ilp - 1) / ilp); - delay = (11 * delay) / 10; + delay_val = (11 * delay_val) / 10; } break; case BCM4329_CHIP_ID: if (ISSIM_ENAB(sih)) - delay = 70; + delay_val = 70; else { uint32 ilp = si_ilp_clock(sih); - delay = (si_pmu_res_uptime(sih, osh, cc, RES4329_HT_AVAIL) + + delay_val = (si_pmu_res_uptime(sih, osh, cc, RES4329_HT_AVAIL) + D11SCC_SLOW2FAST_TRANSITION) * ((1000000 + ilp - 1) / ilp); - delay = (11 * delay) / 10; + delay_val = (11 * delay_val) / 10; } break; case BCM4315_CHIP_ID: if (ISSIM_ENAB(sih)) - delay = 70; + delay_val = 70; else { uint32 ilp = si_ilp_clock(sih); - delay = (si_pmu_res_uptime(sih, osh, cc, RES4315_HT_AVAIL) + + delay_val = (si_pmu_res_uptime(sih, osh, cc, RES4315_HT_AVAIL) + D11SCC_SLOW2FAST_TRANSITION) * ((1000000 + ilp - 1) / ilp); - delay = (11 * delay) / 10; + delay_val = (11 * delay_val) / 10; } break; case BCM4319_CHIP_ID: if (ISSIM_ENAB(sih)) - delay = 70; + delay_val = 70; else { #ifdef BCMUSBDEV /* For USB HT is always available, even durring IEEE PS, * so need minimal delay */ - delay = 100; + delay_val = 100; #else /* BCMUSBDEV */ /* For SDIO, total delay in getting HT available */ /* Adjusted for uptime XTAL=672us, HTAVail=128us */ uint32 ilp = si_ilp_clock(sih); - delay = si_pmu_res_uptime(sih, osh, cc, RES4319_HT_AVAIL); - PMU_MSG(("si_ilp_clock (Hz): %u delay (ilp clks): %u\n", ilp, delay)); - delay = (delay + D11SCC_SLOW2FAST_TRANSITION) * (1000000 / ilp); - PMU_MSG(("delay (us): %u\n", delay)); - delay = (11 * delay) / 10; - PMU_MSG(("delay (us): %u\n", delay)); + delay_val = si_pmu_res_uptime(sih, osh, cc, RES4319_HT_AVAIL); + PMU_MSG(("si_ilp_clock (Hz): %u delay (ilp clks): %u\n", ilp, delay_val)); + delay_val = (delay_val + D11SCC_SLOW2FAST_TRANSITION) * (1000000 / ilp); + PMU_MSG(("delay (us): %u\n", delay_val)); + delay_val = (11 * delay_val) / 10; + PMU_MSG(("delay (us): %u\n", delay_val)); /* VDDIO_RF por delay = 3.4ms */ - if (delay < 3400) delay = 3400; + if (delay_val < 3400) delay_val = 3400; #endif /* BCMUSBDEV */ } break; case BCM4336_CHIP_ID: if (ISSIM_ENAB(sih)) - delay = 70; + delay_val = 70; else { uint32 ilp = si_ilp_clock(sih); - delay = (si_pmu_res_uptime(sih, osh, cc, RES4336_HT_AVAIL) + + delay_val = (si_pmu_res_uptime(sih, osh, cc, RES4336_HT_AVAIL) + D11SCC_SLOW2FAST_TRANSITION) * ((1000000 + ilp - 1) / ilp); - delay = (11 * delay) / 10; + delay_val = (11 * delay_val) / 10; } break; case BCM4330_CHIP_ID: if (ISSIM_ENAB(sih)) - delay = 70; + delay_val = 70; else { uint32 ilp = si_ilp_clock(sih); - delay = (si_pmu_res_uptime(sih, osh, cc, RES4330_HT_AVAIL) + + delay_val = (si_pmu_res_uptime(sih, osh, cc, RES4330_HT_AVAIL) + D11SCC_SLOW2FAST_TRANSITION) * ((1000000 + ilp - 1) / ilp); - delay = (11 * delay) / 10; + delay_val = (11 * delay_val) / 10; } break; default: @@ -465,7 +466,7 @@ BCMINITFN(si_pmu_fast_pwrup_delay)(si_t *sih, osl_t *osh) /* Return to original core */ si_setcoreidx(sih, origidx); - return (uint16)delay; + return (uint16)delay_val; } #endif /* !_CFE_ || CFG_WL */ @@ -2320,6 +2321,7 @@ BCMATTACHFN(si_pmu_pll_init)(si_t *sih, osl_t *osh, uint xtalfreq) case BCM43235_CHIP_ID: case BCM43236_CHIP_ID: case BCM43238_CHIP_ID: case BCM43234_CHIP_ID: case BCM43237_CHIP_ID: case BCM4331_CHIP_ID: case BCM43431_CHIP_ID: + case BCM43131_CHIP_ID: case BCM43227_CHIP_ID: case BCM43228_CHIP_ID: case BCM43428_CHIP_ID: @@ -2390,6 +2392,7 @@ BCMINITFN(si_pmu_alp_clock)(si_t *sih, osl_t *osh) case BCM43235_CHIP_ID: case BCM43236_CHIP_ID: case BCM43238_CHIP_ID: case BCM43234_CHIP_ID: case BCM43237_CHIP_ID: case BCM4331_CHIP_ID: case BCM43431_CHIP_ID: + case BCM43131_CHIP_ID: case BCM43227_CHIP_ID: case BCM43228_CHIP_ID: case BCM43428_CHIP_ID: @@ -2480,7 +2483,7 @@ BCMINITFN(si_pmu5_clock)(si_t *sih, osl_t *osh, chipcregs_t *cc, uint pll0, uint static uint32 BCMINITFN(si_4706_pmu_clock)(si_t *sih, osl_t *osh, chipcregs_t *cc, uint pll0, uint m) { - uint32 w; + uint32 w, ndiv, p1div, p2div; uint32 clock; /* Strictly there is an m5 divider, but I'm not sure we use it */ @@ -2489,12 +2492,14 @@ BCMINITFN(si_4706_pmu_clock)(si_t *sih, osl_t *osh, chipcregs_t *cc, uint pll0, return 0; } - /* Get N divider to determine CPU clock */ + /* Get N, P1 and P2 dividers to determine CPU clock */ W_REG(osh, &cc->pllcontrol_addr, pll0 + PMU6_4706_PROCPLL_OFF); - w = (R_REG(NULL, &cc->pllcontrol_data) & PMU6_4706_PROC_NDIV_INT_MASK) >> - PMU6_4706_PROC_NDIV_INT_SHIFT; + w = R_REG(NULL, &cc->pllcontrol_data); + ndiv = (w & PMU6_4706_PROC_NDIV_INT_MASK) >> PMU6_4706_PROC_NDIV_INT_SHIFT; + p1div = (w & PMU6_4706_PROC_P1DIV_MASK) >> PMU6_4706_PROC_P1DIV_SHIFT; + p2div = (w & PMU6_4706_PROC_P2DIV_MASK) >> PMU6_4706_PROC_P2DIV_SHIFT; /* Fixed reference clock 25MHz and m = 2 */ - clock = w * 25000000 / 2; + clock = (25000000 / 2) * ndiv * p2div / p1div; if (m == PMU5_MAINPLL_MEM) clock = clock / 2; else if (m == PMU5_MAINPLL_SI) @@ -3468,6 +3473,7 @@ si_pmu_spuravoid_pllupdate(si_t *sih, chipcregs_t *cc, osl_t *osh, uint8 spuravo tmp = PCTL_PLL_PLLCTL_UPD; break; + case BCM43131_CHIP_ID: case BCM43227_CHIP_ID: case BCM43228_CHIP_ID: case BCM43428_CHIP_ID: @@ -3858,7 +3864,7 @@ si_pmu_radio_enable(si_t *sih, bool enable) /* Wait for a particular clock level to be on the backplane */ uint32 -si_pmu_waitforclk_on_backplane(si_t *sih, osl_t *osh, uint32 clk, uint32 delay) +si_pmu_waitforclk_on_backplane(si_t *sih, osl_t *osh, uint32 clk, uint32 delay_val) { chipcregs_t *cc; uint origidx; @@ -3870,8 +3876,8 @@ si_pmu_waitforclk_on_backplane(si_t *sih, osl_t *osh, uint32 clk, uint32 delay) cc = si_setcoreidx(sih, SI_CC_IDX); ASSERT(cc != NULL); - if (delay) - SPINWAIT(((R_REG(osh, &cc->pmustatus) & clk) != clk), delay); + if (delay_val) + SPINWAIT(((R_REG(osh, &cc->pmustatus) & clk) != clk), delay_val); /* Return to original core */ si_setcoreidx(sih, origidx); diff --git a/release/src-rt/shared/hndpmu.o b/release/src-rt/shared/hndpmu.o new file mode 100644 index 0000000000000000000000000000000000000000..28b57eaea8de5f89cc26e9b1cee5c24beed50b94 GIT binary patch literal 256736 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 literal 0 HcwPel00001 diff --git a/release/src-rt/shared/linux_gpio.o b/release/src-rt/shared/linux_gpio.o new file mode 100644 index 0000000000000000000000000000000000000000..2e761ca6c61b6c941f11afb84904fcea47e75d8e GIT binary patch literal 80116 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 z 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
    wI2tIc}S&VB76rQc}3-g;`IA$lSdkrGkW zHkJ|wABum%EA~^*v7*%r(t*t2Vh!GI?Wt&C5R|<`E#}^vCs#f&e z&GlBL$x28;N)y_4M0+F`=xFuxl$kSpd!XD_6e1MGC{Yj6JE8PPd#~OwjU_$lU&Q0+ z(7&BiM!mPATWt~Bvqo(HJ{a}U#h>1xd#Gcdo!?&k(X+c>?~J<}9b;3695kx?&_6Ei z{>`>$cD}EBPWSKL^S#bYccXK=?nd`-JBQ?#m*nqF9lNDYIeXNojcP@ zK&Q%sZwfo-bOqU)b`9o^dE?zq3FyX%KRa6fe{iB6ug6IXh^M{XoC!P64YmvBc6A4P z+>+imVf@@+)LZk#mUqnAHdrk+T5wZ$FiD)Nj!6?F1PJyU9ZWdDj~^3U{f!AbTRkq2 zdR!oNxM0GV)pjrY1o{tSb3&!0q;=OiYken5{l^El%J zf{8ot*)id?7lWOH)ng|daGyjqx5~ZF?T~9rgN>f3^p~c%z5{&!)8qw z^Rh_K{K?zPIobw02cN!R;+Q?e5u7_#?oG~}+d9|!A-HdhT>FAQzuPfUDRpSoKdJj^ z_Ku_6#0g{O3m2T%9h?^Ur$gF!!FgkXYcCiZTz7$%DIU#42`;DPb81^d#|7K$v*g0A&vjnWF?^qfj%XUDG8lKj?Iwo6*szO|L@l2*1$ zTA7rjwH?u_L&1ME<+|2StrPW=>NxFo>A3O9u6=A{&sk znU5Oc<%pv()M&Yvp?H#|pi#=k(OL;RGL1%E&17E?g>g1iqi?=Q*ekapN7pj-xDeEb z!dyKU7Sv|MVj@Fzc0&y}0*{ZvfwEX$J)lxG^B)J=7J6u0Xh?->nf$asjcHiVgla}|nK2T`;GC{T35ML=Y z??N5CxGD~hcz^0bN##NfU4pFKkN9zcc(v~RiF;9RhT=Qe?g2SX+&XtC!fY-hZ9$|Z zE}5K@)o*g`MyB2fvsSS<%9gariy3`JNM#``)~jW|Rf}D!Qk#r9mO;J}YEla+sY=)< zhlv{~{zxV#j-^~yJP8aU+zP)YnJ};+9G? zN)y(z?jMHIDc*zXo{HBU*dg3e7`n4rtVro~EjOyxwIf6h!Xb+sf@7B~TzFKtc-iuW z#~icbsO1Y61eKn8wONaU-a^#V+b~}%Ux;%m2-O@VHzj^4NTG!xsjgR`SPDyJ{ik#? z`Fvf3w;YK;7D{>}1vxEmu4}2Ot#4%(MSjBGOeJ5Ewrog9Qms^r#n6H@*^*sxZ;;Ox zLS6V0Ym*1@V5TNL7{)b;Rz-4h*6`veHNyIkMV&H;LK{pPYpFl2mkU))MP{@^!e%93 z^`RyG?t<3}pskieVRlVJ+PzO3FJlD+4QZ*8jw_9TN|_$n8;MgrP{_G|ZRN#2Ji>4= zZkAa!l>Cb(0E-stR>f1d;sSESC!+(4s?2p(@&(#L?BDC{mKN zrkDvCDXP(j)^K(HMgT;VLC@Nr|pXT=O{Eg zV0H7{OGwrzXxZ6P+4lPglyOvyiq&KgMOCbq#nVYInhhrNp~KM|O770DE$wZ_TW#4i zu|fH!^=mO+QxOH}@{p?xoSs@KjMtR4 z?mF<(Ce+QK$zx$CSE!k;wFn+1VHPITA>w6;-xBNa?5&pa$(bhA%~%G#G`waZTut;v z)m*lnIf`WDX?iczes#ICTn`#k)l*iz6|+uKSkaqLWVukTHE1cWTzO2Suqzb*XvT3dm;ab#dja^9N)EiB1t~WO~?K z7waht=3RpHq%c;6sJ1F+W#q$pBO9ugbF;bh$OS8wEDVobK5zNLaQ=}?7cX1ncE;|& z-GD${3=yl654yxR63?^gh8-nphDC+B<#g)MwOp#DNiEl?a&7V_PKQ{UbSG=~6k|Og zD+1ORdaG%>;}XdMc~jz2zl^(wRT0K|W{oBmz2$o&k!iWKSWp>oGeq=D(tB1uUf-Y@ zY*ErB5f-hoTvOZ^=>ziu2W${&)3qI>sFJIj17ea9iHo_m&`y)epa?w&FM2)By3?pH z4eA#gUdfikD^{f`a#=T-)EgpOt){1*OFYn)9~suo+K4Y`W%bI1rJ15?UfNL%jHwPO zG>YBb%OFY!h6%gr)~J#f52xSlwOH_;9uc3scG|FZ7fX?KouHbV6k_6hyDX`JH0QRO zRfA#H)x9*mQ8mzNIYhk0aH;!HtRRVP&%yLvu2hXp272n5iW-xQx=eDLR_S6v2B>AgRi1VVYC~j0 z?yRY*B(Q)-uHKO7L_{d@J|i5`N+Ho_rW9jShiz+ZmX6>g;Hm|L?LCGl#d zAH}MwAydysTH9*t?QcqLFjKFnZV$718ShN@AzV3_ot9EW(M!Z!m)#<#T6|MS{{cZG z$8eEr$WDwyHt!Lii(?dPBdY=s!D`kTRh@ak_7to2at6OAADWISiN0}%#+C9&UwWXZ zZn_0UyJ+ zxEku#Wkc!q-{b|td;hl6?)b23N&<`a;njt8CF(6jRm2gx^D>-SWQs`2u zgD*w_X@gYNg3DSc zJx~`HDahqS!-^LrHI&fD3Tx=7D28=$9L1QFRe10cbY_sSq9&?Qv=c69yN$i$tZBWu z)v65SykSMTCf=aPf&TkdqNTNnL>a}Qgn81(DtE2GHbN-HfHzgY)C(erk%mfYuX-$m zke<=-*KZ)3w}B!aWQ^Ff9X=g?9wlnaVj(P=Ett*LP)tpn1~TG5i@4=9<=Bqu{vDM+5qMw=-uYFM**IeZ|dX%i)hEfy_XF@FB| zSyN|Boi%<+PoQd~AzH26PwT0A(_y4F3pEO^_Nhl>`JjsRNto*XpeL?|abH%OC0DJj zNd-t&>q15KKv?Wm^^Aq;r6pa1$%!^<>%+8X#>R*#NBTHLk!@GkX{ngnw2O*M8_3iJMKtQbZYB@BaT_Vc@IF-il4QedjwUAIWnTk81eFh+k@tL46^RMO;_uROpz zk`O&7QG>Wpx&Q1>iK`+DtZX*az1X7`FIay3QPL`l7uW#Mln~W(HDp3%;kK*hT3(!) zUeaPMXUf&qkVe!!vX=l+HIrpy&D)e)QN^JRsN>djxdv-xOC5@Mdt%FizEqopmVl7! z<$6o)`X04NDy#_zS3hp7v_nPFy2IHJ%b&~}OAot3k+9mnR+9wZ+L8&Ch46O&nyA%W zso#?MsoD|bBrIEJ?T{Yap|4et+ap*N-@?Diu_d`?D^cmTC~Xk%G(;cux9ut7XEv}< z83@S-5nQV|GXFFsRF+L>1OqcHRVO-9?^=yeMF&;BUv-5VWlMjWK1)(1Iq@9gQ1wEy zqG3Q{Sljlz&z*etn6*0I3aPb=)g% zeo2HUjC-S^`K79g%{43On9waZl)BKyZJrK1jmSgwvc#<9+$?5;@Gy<;%bA|YLwHYM zhOPzHnge3aoQ)0d8f}3{3Lfk&RE9Y)fsYZ3c%;`f3)yO3Gwf!>0`D0QeP!fT;-dUG z+(L(~7%)(|9k6jyZ6vAGOpVNoG>NOWhWO24!<>^ak+hO$ImLHU%TtS5i6f7q)c_T0 za@XSAalJx5anqZXTB+HiYZkl*bVO-uh=K`o?hShDH!E?bSTMIaTaWTO3!)BoDbuX@ zbcvXSqfMDGkW|E`hmi@Bi=SsJ+(&jM(V8$4-!bwMatl)Dn7xZ=T@x9D5k5VCz(orDkkvwsxcJNE%m@-_$cj)u}&eCy+zw$%h_HL>^3#C-+R7B_HC@lC*tpm}2p8o5f;)$KQ5& z^M%Bol6SNb?4Fy;NK+I0mSeI&QX>3fR=Fy>Vsqi+;PtrT@w5b6YF9VYK?)}vx3UZ1E=es8Tx0Y&Eo~xW~^FF%NAW! ztH#4^`Jy8=y(4bCs!20FK_!+EH?*eZs)qlOkZft6WEm6Sn4=N;Okjv#jaMz?P)wOpEw-eoZq{nMzKKd{ihD4wyD$`gAitm7@DM zQe}7Sy?U>lAc~GMREo=4nEo{HYIy?c`3RH{la|DPucO zl7TCBTm)94lRPsrV!hT7W)$LFJ(37fn@)4Cxn7+lNeMzS5m;zVX5uQe<`7NShpu|H z;FytL)U;eo0wC~ohYa;hv8dx!A_SdOaJNq9jw(7E5o*Rk+g<7^V%OKKCHV(w4J)Fd zqLlY>8uVzE*cwSiC0A>jPSZTEC`8eGBPMXg*Y^ZNdWt8pk7g^SD=qC6dR9K|C7AGw z{3YIgwT3@aGj9&R$&A0|YD|ObC=~ess*BNw|{R0}k+*U5@vY>{U&kfZ!ivQjT>csfyBh=S(#D^(37byI>hpNSD)$tHk; zI0-v_V5pI)sApQ}_fSA5FT{~_nKuu?azHk{Q|qa!UevLy^F~c~*7BOjp3(j~v;B3J z&jJpVefmm`cs{hdkxN=avHg1_5ojY^e5403?F73|W3=Y|)MTlbke;&5hEcmc2l8=M z^_WdWFnVe|o~2hMt zPs^kxS!(%Gl?Yoi6iw0ENl1`h6r$rVUYqs;EaDdPp9pYB@vTuM+Cl7-^@&owQ2vC3p}u8wfAH4)a(6%6K<>O`Iy%c2?Ayq+3l zETYBvlK_}0{AEWTvvl4P&*_)@JkT=D(l%H#T*I36Y&rEdKuoh(k$O&5&A;A_=7R&z zUjzlMLCVm!CWeY0{fbM+%}Xib!z8o1QgkvGGZ2ax>nyX!9hyP6K!QA$r53fETt;7o z68RDU3#P3gQclUjh>A(7`q_bLj#l=@LJ*s7)d3Ti#8a{aV^k5t6M0rwc7^i4O_@)h zZGZQ-zX#ag1Cs-q5^iQ1nz3Q>(UPjYHc0z)Jwo0mU_Dw+ExTwBlU7UHET3r7Ld8a( zE_ty;VxecoH2XW<{?4$!Gwttz$uwuBY8E5olar;Y`2so&@){M!8Br)2k=x4amO?iJ z)o)4oDmiua^?kS|GoK+7MRK{BR*jj{gKWK;$=jNnT;jx%<`juHX%Jy1297mUXf1b2 zdtt*;uqv~CDt_)Jc$}wWcK8Z#9m3@`K9|*+^7d02j z4K$cDb>jokpHNWCuc4l;0~jc0TJ{DnD4Cs%d9*;vclRkW5suYyaZ75EpA9Y=-6Od^ zubYHpP2zCRRV4mZY~h%@(Y^>v23=WQWNdz}Q4Eu{EwQSMxKwSJ57(>=YQW^dMI8CE z9BD8g(V{*EfIo50eZ*u%#-i7i$v zOQu6?YSPqdK)b0<3d+PWB3g;6N@gg1k~u3kQPw{4yKy(Q(X^1$W&t&ErtO$Y%$GyA zgCg}R*c!>y`g%;)+A@%u21J?^wJ9i9>e!*y7-U(FseMh!*!-amOwaV#gs7e9(NH7f zs|(E2^4@c)_6&v3Z%dUD>FsGRtWxjK%4;p!8a8)lIbqi$Zf4q&B34#LaK$xiGZG`&Tf*0j6$8}Toa)4iW(hDFsUk~zcrtb zsrQ&y>+6(4QFNs>L8GxI6rqxCuh&}RRBEW103Yg>Ax)Bq%-EZeG6j^imLANkQO``Y zP|2606n)VNu6^^|B7|(lVo{F@~lW`8Tgvd?r2B#S>vQ~pSA6_mZz zblOW}A#d4QMsvI}HX|Li?Nppxh=n5(97=fR4|RkM6Ck^kPIFj_znP8KXw=!4(-p4n zL&Z^V(rKPD9VQ%%E_FuDiSxw5u!Npn2`5BrWr>D{x#r${k&awXG+F#st5!?8e$u-m zar9aXCTty*S^)xd{bvEAiu>tdYc?pc7ru(a;v4ZZ^jseV3BD}^s16af)W>QnJvVe zH-EV%_*>cH#S8S}KI2_#-S|LDrHZ>1nWUKdiE6I#`&hbR^(|*A^4qWp!pL*i)&qf$ zTzf*zZn|u1O!Y~u&@&%yru})nkQJgWIZ77n`9eRFV#Z{vXTz+hv%um+HAR{;$!qvy zfvZMWt-|!q+^IKDBbkfC9;28e%i&i&iH=tp*JGV1LZdKa>`sQxQu{)kWPBTZ1garX z6`LhQvh1{}Qc#PFIwYza127ALb?A|js2%=ahBQ%%BJzO}7O zSaz8>EV?$^l#shabb-YHo*5Aj$X6Dyyj5jgMzg3?X%t_HW3iGiit~jq8sLfNuMwze z*TjR=-}6bpT~8t=>+e+d+v2sv<<%)>vplg!kiPa=bL&30=HpA3#EWg~7n4$MXjtOw zm+884IZ-6O)Yhg}P`B2#wr(?MEwC?I-P3E-EV$ z#j`2+IvO#S3i1QF-&S#!i72|h(B!yI;ajpwe2ikoOrOQYp8NuX!JJ3B3fsgOt;n`1!1!_ zp{uG?pO|f`T!t)MsSbF4+q4fUCB2Mhf`-TEA@kmPc57LQIm^CSxrgqw#l)<8OPL?* zVKD_{*hA6}zVN_1zQ^^EEh^IGaFL8~Q3Qn~9Z3M_IXWG#g`ToKXk(8BTOGYq;#$2u zXQSO0dmcL}D4(>ps1xx@-TbHp(?&=Z3TjMb4vQ<$B(gVo&SWF0Otz_07bwkS)p{sj zMLo8%mie$4n>q8vxHw3}Hma;LTEndEO-jc;1XNjAod3Ewi=dNs#k}h~*DP7gavaR|J0>ROwN+E=>fW4AA_(zp-!8J9{G54=38NfDNtKPmiRdCTUey21J~k;WRZzG z)u@ML?T&SP)8mBXkrquTr4nBLNVg`{lZkWb5!R@vRY)GL@kCORWk7z?t3J()Co{|0 zu+(wQ0q&kh20ftuR09O2*uf!ny^{PM!=Gufh2V(=1SLFC3@7lTja{k zT`3oti=m0_W}%WJ?cUBiF$t2_^{tk^j9SCB&lVOW@5u0ZfuhZr^|t*lX*p|0&)2k; zR^+wfqTEH~#Cs`-k)(P<)+GPuFYxfUe%RkBGp5cqKT_(L2&Sk$p9*De+!NV0u57_) zw%V+F2p6c8Bv44^U^IanW_gf76T-!!jgKCtS1oQ5uhZ866fL1+gGjt7U-D#0_jYTl z?;7w3o*6J(JrkN4S8vC2j)|91FZ4vVs7Vv*VKS$qMSAAlZbpq_GHsH2u5sApQtN)S zCMH3)xAH}U^5L=|?%2s!#7ffIuZ4eLZIZpw5Ms_esC2M{` zEr)9TW(BKid+dc7r68Gx*4EVud7j-D{kMBk?S9STk=VTp?@5-Q@ialDSt|LeGg}r( z=BH5$$>lNNT}xON*A#^dplyA-x)bvsSxT{J5pxBt=>sy5G6?NV9e@GLR_eo_6w*FRR+G9Tq5qb2(UPT6 zYh7p7m&^u@!t}PO;K`>{q)e!6&b3CSB0Umc=&jG3A%A^IrdkCJ5jDe1;2jm+^7{iv z7U*iSq(7^A*(ZxMKu~p%Ud-59*0=1)WMLnR!L4V+T(=ZkpC)c&AHw=juG@^7r81)0 zfce={8TCLb5p#rc?RG{X>BfAb5TkMu=Ekg0)YV0~l2z4em-j|XtubTKOY&?JzN|m} z;>8z}z%Y4wgA8ZZQsntUDYGW@3D4Ga%>^sO-VS^+13i9EEWTGg zph1^CRxzm4*U5tHVwynLfkvfT@`QF0i`HAgh(9bg zY<_{|W4dg?p6##>8<-JBshN#oagaUi(X88yX>0JBHqUF^o{8H5V~}r(0R%JwZ8dAAupv%L zl&m+?XZm#f^k}EVEDZBSck1-ow~G57dQGM?bfTnCmcJ?|{`_B$W&F)}RfZa_hikKa zai)c#KAjMY!_&-a-|KTHwL*JY=+b!~OFxfI8nC?{u2`{g;Vqgrys2zOkVN=;WJ)dP z`=uT{7nH0AQ~e{=&=sQXhl@Q;VN*+PfjmG{hr#mz8W=}C%x!pry=6G@=v~(*@{vyF zL}7&$*BO@yKcu3Ax>C`cp@f|}>dfKuJ8jRU`#P9*&}E&{Xg8!auzEpUE==N1&roLS zJxvQ*i`9C#_{jNMPs_6F;{{@Q#PDg{^PjIw68mPWHBuhB<(v9cXAFNx(I)Ekp$vaa z+^2}ud#l!M1X;K)6`7`grt6;>`e&v|kK0mvG+3p^m$&=60()Z6i_}&9ZXuc3N-+}28t+S7%(ib-B&feskjJ&DVOH;Gr(M?r1R6E>$uZdNk zTFw`;&7P?uPExz6wh?BsS#Pi-e5^whdO8kNzCO_!Ql z3HHuB%M06P`y{vE_M@NX-_?~%9iOB->`S{u{b{y+OV`up*M?QRnoDnrR`jk;{gyFr zf7nmSFTSOZ4Nuh=P1WxIi_fbUefkh<93Kk)h`pN9i~c~JT|{mcx8 z*KguRe~As(Y1Pl)b=3a!rZ-aiJ|h3WKh+d^+)c?%rH)%Q;<&M!`RjT{9;g3~K)QZQ zq<%w(di}Nx+Vv|1!^^w!3qi2e=I!&6^7N%W>GB?!IjVKP`cA5(yrE#Y9Ne^_{UV?s zXt&?lBaXZ6e>v_lj+?>uJsbRmLFwak|1H7r@?PA~e(_LpoPP8lj!xgl>vA9Znk2oC z?Sl4w+#3upZ^Py77Z?RWyS%%D;pJUCYm~i1Ov~FLXqWf1z{^YI@2#%{!T8j9iJU$f z3@>l_e(iRCZ_qC9`Cxec##}M{#Y##2^xtDim$y#J(>~Jjb_&|%>D!mn<8tVV;jeZ| zzW**5Uf#z2M%npV-Y!AAykOMu^49$?9!e8&4e3J6U zj2d2E*X&WjQGu5?E=cK(5#@DV83ga7`ZxJHVMKY$rM$TvUY_c*q`X-p%KPV4K`=RW zUQ*t)5#?QcK>L0t1nu&U7*XEdR}X(dR#M)A5#?==^7NHvTHc;PySz_~D6e|;aQ&B* zcif2bo|5v$2VS1)+N8XQ@}_azXQaG$=C{uq#s3ZDAUW=o*MeaC_F=8#bnK58uD7$##4Hwj=hZEun627o5O% zf2rSgK~Laq=6bZNB_Ji+?yxtmX!6$3E+S!cM%an#^j#K`5dzSIPPCfqj zN5>{EnLkbcOxILIp9EkM=mkkmJk0g_5_gNvcmQbFs}lH)w^N1w1hl13r8vDzwW-fm zvk_HNKPO*XlX}Ufzd~@>Wq8uH^`mcTf_->JZ5^!Lg6aK^v97y2w(wVFc5LN+soUe( zo~snqw3_2jQ|{=#NyljS4?8Bfj#s`H>S*ogcAs0fkA$mW4)($ro&wK-7sD&yjqqOh z0DJ^K1z&)#!#}}IaEnpSZQ!nOJe&e&z=Pot@K|^v?1R_CTj9O%VfZ9`9{vvg75)>B z?r?4gcY}Mw8Sr3u1Uwd=2qV~lr^3&|%i-7I-S8p!Jp2dj?sR?-&V~(m8ay9vfH%Us z;Dhkz@Fn<1_%FCsmva}mH{1`-heyK@mf%vL!aCkI40rtVG z;7#yu_z?U#{5AX&d>6iFv~ySZ0k}V02#s1TzDzG0p0~4f=|O& z;YQfGg>wR&4(Gw6VFvcYPr=W@+u#H6DfkN92)nj)j)fE9EVuwJhk4k5XTXc$HSjk0 z0DKC*0yo00t++m%1sA~OumR727sG4dZSVp36nq7~12^B=xf9$Q?hhBi<6sXw3tj@R zgLl9O;nVOn_*XdkJd;$Ie z{vB?>keXa4K8@Gq4IzhUdaB!|UPg@CWb- z_yT+b{uA!Br*kqq04|3E@KbO-ycFI5?}87(r{Sw`Bh-IoNVz?n0H?u2;WBsvEWuC0 z&%!UmufaRvgYf6@6}S<0?d2Q`C&F290XzYg;mL44yd2&P?}a~w&%rm~zmn@ta*l^n z;T-r8_%T?74R{W`1YQeogFk>jgD=6i;Ja{}y`AIWWOxw#2s|G4!a;Zz`~tiNejDBo zpMWpIKf-^*ZT4}#A5Mjbz-916Sb?X&^Wj(EE%1Nfqj1azoV&pT;NfsN%)%Nx1c2RO?K`C_kuIwVQ?8-1y6!Q@GN*4ydK^Te+Hk2ufX5Kw_xWK=lkJgcswk?v*E?? zYIrAn0R9ZV2;YR8;FeRJJHttE7Ca0d1y6(}xE7ubFM-#$M0@uS0@ayoq@Im+ld=CBr{vB>U&G}xqC!7usg-hWo*b4{X8So-_ z6}%aK7d`@?fv>{1;i&1(ZQ(e$FFX(~f-7JS_QO-*dUzSU0p1CJ2%m&6!#Ck3xaADz zE^s281`mNt;KyMv9DrxQi{O>;7I+W*F?#Z?g%Hs8E`IK23Nt8;1Ik3 zUJ9>+x5E42qwrbyd$`#w=XP*B{17|@E{CgO1+Igig#G+cJJrh z3GNA}!$aXx_z4)nL3l5G1U>^_g>S=Avz^<*ad2OFAUpyd2aE7!IAwq5hv8!QG1vnK z;F<7Z_*Hl-{62gfK74@l=kOKyHtaaixg8u2&w!W08{k9m8Tjkuybn7k!wQJHS2QbT}6t2~UJ&xDK8RFNHV2yWpen8Tbl(8+IJ#+zyV1AA*O#rEnGO zgKObA@JsM|cnAC;dX`CHNM6 z7jCn_ISx*S2f>fP<6$oxgzMp#;dSr<_%i$x9JP?^!f|jiJP3XS9uIrrAUq3x0bT>| zg^$3e;cwxa@SkwY!=1apeP9Mw;K}ejcp1DA-VGmy&%pVMoJYbFU>{ry&w>}htKc2* ze)t%C7XAVL18#AIb6Tm)Cb0&Kw3;YIK&_)YjAd=kD4{{(}@&TZlQ;S@LreiVKj zMsNsz23`WMg}1>Uz@NdF;5%^Zk2rUM`@sF-;cx}a!?o}{_%*o066c1axX+`Vla6uD zgonYS;c8fgr@-~_a(FYm4?YQh4R<)!xhI?n=fh)R4#x0w_<8tM_-*(D_$2%_d>eKy zcfJo!g0tX(Z~;6Do(N0uQ*b@p0KW$Bgg<~!z!%^fa1%Uwg)@W$@B(-_ybazDUx3@J zbnXJDz=PmoxEl7sL3jrIJiHoy3*HAGgU`b^;3oLKEqI1?TQ zkA|yZ6`lgu!wvB3@H_Ak_zUUJY-7_rM>)f56Q{%7xS6 zp>Qeu1dQMyJQH3FzY1@K1FM~%h8M!Gz?fXBeqa1fpeKM${hcfrTtM))q=vd=jl?h9wbdGG`n!9jQ?{5-r0eh>Z#J`G=m z8)0Y3xjmc!r@=$vG8n^C;d;0MehuCMAAmoDZ^BJ*%d&H4xG$Uy4}-_S9PEdu!t>#! z@N4i+_yhO^{4Lz9;@l4I4QIeZ;1c+8*b4{X7vWdoH{k8?9{4bP8omPm41=n3U${S9 z2#}_d;uye?{9o!vGh4bK%@C4Wg*TVJiGI%4r7ycOjU+_2ZFL3-C=S+AQ zTmf^i4$p+2hgZX!;oa~d_;dI!+;OdQ0-O!!!6k4#{4%^A-VT2PUxa^ve}$ty>D(Ib z1owbb-~n(xTn3Mad02z%;Ai0#@aynF_%rw-d=qYhTdkvBa4$F)UJGx7KZd`Aufu=C zF(-3>a27lqehi)j*TA#k7vXjAcKAd1D*OxF>=fsF;a+e*xDc*@1=xgV!Y{yU;XUwa z_$vH29CNC39Gnaff**m$!$J53cn$nEydORRUxa^z|Ay~5&AA(#4ClZla1|`Ub#Mc` z3El&L0-uGi!%cAOPjOv18P0)A;3`;x>)?5C1H1{|1AhXag|EX+aO+QVeK;A;flJ^j zSc2=|d2j=~3El&L0-uGi!%cAO)44vJ4ClZla1|`Ub?`j60p0}ffj@!I!q?#@xb+!a zA5MmI;1akBmf$*g9=r+O1D}L1z|J$B+rnMp2jKp2Av_jlU=^MW&xK!x*TdW458xB< z1^5R1C*0yJ=T2}hI1|o;N5T`~NpJ|B1uuqI!-wFL@Fn<1_%FECXPmphy4_{X9CUV98 zf57hZoI5DD68VC=p6AC;V*gAy51t4kAf!G6wbD#wX`#BpaT$BJJK*K^$GIPOx8 zyN2x>*#0)#_roXP)9immIbQCI?Z3g!_0Db9`}MYmyYl-aI33P`i{P;we;i!J@5S|g z{XVvvY_Dbe47ShZybIvP?7sru2ybWq-SB_-{b9=aDcjGm{VdzBvHcIWN1Y$oGccRM zEtJx}?>XO(+x~n%ZXBEhr^ADlT_T5UFK7FBwhL^Z#P)!)GYCG(_Ggsu6FtlJmy|n8 zT+Q|!@Dcbc_(!-2ZgGKgN4O`P29Je3umL{>&xe=6yW!LD*YGX)Z@ATk&VAs1@Cdj9 zW?>DUl5lijYWDPlk2YCUcbKX0_~KCbfs*Lhrzn;O`=IlAP2Ur~NY{5X#LEyumi z{*C$`_^|IVX)zdrxpHC^t9{nOY#i~V!-_Zj|f9^J1WZTBwN z4Y!74Qq*$BQjgu(9?$kft?x|lpRQT-k6stffeUp1ezgCd{@$RZ-?Y4=IBvBbH=FwH z2)FU;>v&bUP&t~&w)UUO(=4_R;P|81R(a6-D6w4|QEnI93T_K`=e#}P2jNtB2s{if zhD+fpxEl7rKDZX10?&l!zzgBU@G^J>ybj(7zXflH55R}vWAI7%OZYr|1O5sA4Q_&4 zjdE@acZBbQ6X0HOGMonYhX=vK;NfruJRYuwdDsW5Z~(4_pMqz?^WcT>3iwrcE4%~# w5IzEbp%giJ7XBLk29DNt*}P2~FCA_99IxC8`P_#0m5fC`6ZsqazmLEF8}T#yssI20 literal 0 HcwPel00001 diff --git a/release/src-rt/shared/linux_osl.c b/release/src-rt/shared/linux_osl.c old mode 100644 new mode 100755 index dde3239240..a4eef7d44c --- a/release/src-rt/shared/linux_osl.c +++ b/release/src-rt/shared/linux_osl.c @@ -67,10 +67,10 @@ struct osl_info { uint magic; void *pdev; atomic_t malloced; + atomic_t pktalloced; /* Number of allocated packet buffers */ uint failed; uint bustype; bcm_mem_link_t *dbgmem_list; - spinlock_t dbgmem_lock; #if defined(DSLCPE_DELAY) shared_osl_t *oshsh; /* osh shared */ #endif @@ -78,6 +78,7 @@ struct osl_info { spinlock_t pktlist_lock; pktlist_info_t pktlist; #endif /* BCMDBG_PKT */ + spinlock_t dbgmem_lock; spinlock_t pktalloc_lock; }; @@ -414,8 +415,8 @@ osl_pktfastget(osl_t *osh, uint len) /* Init skb struct */ skb->next = skb->prev = NULL; - skb->data = skb->head + 16; - skb->tail = skb->head + 16; + skb->data = skb->head + NET_SKB_PAD_ALLOC; + skb->tail = skb->data; skb->len = 0; skb->cloned = 0; @@ -554,7 +555,11 @@ osl_pktfastfree(osl_t *osh, struct sk_buff *skb) skb->destructor = NULL; ctfpool = (ctfpool_t *)CTFPOOLPTR(osh, skb); +#if 0 ASSERT(ctfpool != NULL); +#else + if (ctfpool == NULL) return; +#endif /* Add object to the ctfpool */ CTFPOOL_LOCK(ctfpool, flags); @@ -594,8 +599,14 @@ osl_pktfree(osl_t *osh, void *p, bool send) spin_unlock_irqrestore(&osh->pktlist_lock, flags); #endif +#ifdef CTFMAP + /* Clear the map ptr before freeing */ + PKTCLRCTF(osh, skb); + CTFMAPPTR(osh, skb) = NULL; +#endif /* CTFMAP */ + #ifdef CTFPOOL - if (PKTISFAST(osh, skb)) + if ((PKTISFAST(osh, skb)) && (atomic_read(&skb->users) == 1)) osl_pktfastfree(osh, skb); else { #else /* CTFPOOL */ @@ -1100,6 +1111,13 @@ osl_pktdup(osl_t *osh, void *skb) void * p; unsigned long flags; + /* clear the CTFBUF flag if set and map the reset of the buffer + * before cloning + */ +#ifdef CTFMAP + PKTCTFMAP(osh, skb); +#endif + if ((p = skb_clone((struct sk_buff*)skb, GFP_ATOMIC)) == NULL) return NULL; diff --git a/release/src-rt/shared/linux_osl.o b/release/src-rt/shared/linux_osl.o new file mode 100644 index 0000000000000000000000000000000000000000..c67e95902056d68dce82040069ba8d409191498d GIT binary patch literal 112728 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
    RADIUS server IP address\n"); + printf("\t-p RADIUS server UDP port\n"); +#endif /* #ifdef NAS_WKSP_BUILD_NAS_AUTH */ + printf("\t-k WPA pre-shared key\n"); + printf("\t-r RADIUS server secret\n"); + printf("\t-m Authentication protocol - %d:WPA | %d:WPA-PSK | %d:802.1x\n", + WPA, WPA_PSK, RADIUS); +#ifdef BCMWPA2 + printf("\t %d:WPA2 | %d:WPA2-PSK\n", + WPA2, WPA2_PSK); +#endif + printf("\t-s Service Set Identity\n"); + printf("\t-w Crypto algorithm - %d:WEP | %d:TKIP | %d:AES\n", + WEP_ENABLED, TKIP_ENABLED, AES_ENABLED); + printf("\t-I WEP key index - 2 | 3\n"); + printf("\t-K WEP key\n"); + printf("\t-t Radius Session timeout/PMK Caching duration (ms)\n"); + printf("\t-N NAS id\n"); +#ifdef BCMDBG + printf("\t-v Verbose mode - 0:off | 1:console\n"); +#endif /* #ifdef BCMDBG */ + printf("\nThe -i option must be present before any other per interface options " + "to specify the wireless interface\n"); + printf("\n"); +#endif /* #ifdef BCMDBG */ +}; + +/* +* Parse command line and populate nas_wksp_t structure. +* It takes short form options only as described in function usage(). +* Field 'nwcbs' in 'nwksp' indicates the number of elements populated +* upon return. +*/ +int +nas_wksp_parse_cmd(int argc, char *argv[], nas_wksp_t *nwksp) +{ + nas_wpa_cb_t *nwcb = NULL; /* pointer to current nas_wpa_cb_t */ + int i = -1; /* index of current interface */ + int opt; + int unit; + +#if defined(__ECOS) + initopt(); +#endif + + /* parse command line parameters */ + while ((opt = getopt(argc, argv, NAS_OPT_LIST)) != EOF) { + switch (opt) { + case 'i': + if (i + 1 >= NAS_WKSP_MAX_NUM_INTERFACES) { + NASDBG("too many interfaces specified\n"); + return -1; + } + break; +#ifdef BCMDBG + case 'v': + break; +#endif + default: + if (i < 0) { + NASDBG("no I/F specified\n"); + return -1; + } + break; + } + + /* save parameters in user-provided structure */ + switch (opt) { + /* i/f dependant parameters */ + case 'i': + /* check if i/f exists and retrieve the i/f index */ + if (wl_probe(optarg) || + wl_ioctl(optarg, WLC_GET_INSTANCE, &unit, sizeof(unit))) { + NASDBG("%s: not a wireless interface\n", optarg); + break; + } + /* ignore errorous interface and reuse nas_wpa_cb_t */ + if (i >= 0 && (nwcb->flags & NAS_WPA_CB_FLAG_ERROR)) + NASMSG("%s: error parsing options, ignored\n", nwcb->nas.interface); + /* advance nas_wpa_cb_t index & alloc new nas_wpa_cb_t */ + else if ((++ i) < NAS_WKSP_MAX_NUM_INTERFACES) { + nwcb = (nas_wpa_cb_t *)malloc(sizeof(nas_wpa_cb_t)); + assert(nwcb); + } + /* init nas_wpa_cb_t */ + memset(nwcb, 0, sizeof(nwcb[0])); + nwcb->nwksp = nwksp; + nwcb->unit = unit; +#if !defined(NAS_WKSP_BUILD_NAS_AUTH) && defined(NAS_WKSP_BUILD_NAS_SUPPL) + nwcb->flags |= NAS_WPA_CB_FLAG_SUPPL; + nwcb->nas.flags |= NAS_FLAG_SUPPLICANT; +#endif /* #if !defined(NAS_WKSP_BUILD_NAS_AUTH) && defined(NAS_WKSP_BUILD_NAS_SUPPL) */ +#if defined(NAS_WKSP_BUILD_NAS_AUTH) && !defined(NAS_WKSP_BUILD_NAS_SUPPL) + nwcb->flags |= NAS_WPA_CB_FLAG_AUTH; + nwcb->nas.flags |= NAS_FLAG_AUTHENTICATOR; +#endif /* #if defined(NAS_WKSP_BUILD_NAS_AUTH) && !defined(NAS_WKSP_BUILD_NAS_SUPPL) */ + nwcb->nas.wan = NAS_WKSP_UNK_FILE_DESC; + nwcb->nas.server.sin_port = htons(RADIUS_PORT); + nwcb->nas.wsec = TKIP_ENABLED|AES_ENABLED; + nwcb->nas.wpa = &nwcb->wpa; + nwcb->nas.appl = nwcb; +#ifdef BCMDBG + nwcb->nas.debug = 1; +#endif +#ifdef BCMWPA2 + nwcb->nas.disable_preauth = 0; +#endif + nwcb->nas.ssn_to = 36000; /* 10hrs */ + nwcb->wpa.nas = &nwcb->nas; + strncpy(nwcb->nas.interface, optarg, IFNAMSIZ); + NASDBG("nas[%d].interface %s\n", i, optarg); + /* Get interface address */ + if (wl_hwaddr(nwcb->nas.interface, nwcb->nas.ea.octet)) { + NASDBG("%s: failed to get hwaddr\n", nwcb->nas.interface); + nwcb->flags |= NAS_WPA_CB_FLAG_ERROR; + break; + } + NASDBG("nas[%d].hwaddr %02x:%02x:%02x:%02x:%02x:%02x\n", + i, + nwcb->nas.ea.octet[0], nwcb->nas.ea.octet[1], + nwcb->nas.ea.octet[2], nwcb->nas.ea.octet[3], + nwcb->nas.ea.octet[4], nwcb->nas.ea.octet[5]); + nwksp->nwcb[i] = nwcb; + break; + case 'k': + /* Save key parameter. What contraints to apply + * are unknown until mode is also known. + */ + strncpy((char *)nwcb->psk, optarg, NAS_WKSP_MAX_USER_KEY_LEN); + nwcb->psk[NAS_WKSP_MAX_USER_KEY_LEN] = 0; + NASDBG("nas[%d].psk %s\n", i, optarg); + break; + case 'r': + /* Save key parameter. What contraints to apply + * are unknown until mode is also known. + */ + strncpy((char *)nwcb->secret, optarg, NAS_WKSP_MAX_USER_KEY_LEN); + nwcb->secret[NAS_WKSP_MAX_USER_KEY_LEN] = 0; + NASDBG("nas[%d].secret %s\n", i, optarg); + break; + case 'm': + /* update auth mode */ + nwcb->nas.mode = (int)strtoul(optarg, NULL, 0); + NASDBG("nas[%d].mode %s\n", i, optarg); + break; +#if defined(NAS_WKSP_BUILD_NAS_AUTH) && defined(NAS_WKSP_BUILD_NAS_SUPPL) + case 'A': + /* nas as authenticator */ + nwcb->flags |= NAS_WPA_CB_FLAG_AUTH; + nwcb->nas.flags |= NAS_FLAG_AUTHENTICATOR; + NASDBG("nas[%d].role authenticator\n", i); + break; + case 'S': + /* nas as supplicant */ + nwcb->flags |= NAS_WPA_CB_FLAG_SUPPL; + nwcb->nas.flags |= NAS_FLAG_SUPPLICANT; + NASDBG("nas[%d].role supplicant\n", i); + break; +#endif /* #if defined(NAS_WKSP_BUILD_NAS_AUTH) && defined(NAS_WKSP_BUILD_NAS_SUPPL) */ +#ifdef NAS_WKSP_BUILD_NAS_AUTH + case 'g': + /* update group key rekey interval */ + nwcb->wpa.gtk_rekey_secs = (int)strtoul(optarg, NULL, 0); + NASDBG("nas[%d].gtk.rekey %s\n", i, optarg); + break; + case 'h': +#ifdef NAS_RADIUS + /* update radius server address */ + nwcb->nas.server.sin_family = AF_INET; + nwcb->nas.server.sin_addr.s_addr = inet_addr(optarg); + NASDBG("nas[%d].server.address %s\n", i, optarg); +#endif /* #ifdef NAS_RADIUS */ + break; + case 'p': + /* update radius server port number */ + nwcb->nas.server.sin_port = htons((int)strtoul(optarg, NULL, 0)); + NASDBG("nas[%d].server.port %s\n", i, optarg); + break; +#endif /* #ifdef NAS_WKSP_BUILD_NAS_AUTH */ + case 's': + /* update ssid info */ + strncpy(nwcb->nas.ssid, optarg, DOT11_MAX_SSID_LEN); + NASDBG("nas[%d].ssid %s\n", i, optarg); + break; + case 'w': + /* update wsec value */ + nwcb->nas.wsec = (int)strtoul(optarg, NULL, 0); + NASDBG("nas[%d].wsec %s\n", i, optarg); + break; + case 'D': + /* nas in WDS mode */ + nwcb->flags |= NAS_WPA_CB_FLAG_WDS; + nwcb->nas.flags |= NAS_FLAG_WDS; + NASDBG("nas[%d].flags %08x\n", i, nwcb->nas.flags); + /* remote address */ + if (wl_ioctl(nwcb->nas.interface, WLC_WDS_GET_REMOTE_HWADDR, + nwcb->nas.remote, sizeof(nwcb->nas.remote))) { + NASDBG("%s: failed to get remote hwaddr\n", nwcb->nas.interface); + nwcb->flags |= NAS_WPA_CB_FLAG_ERROR; + break; + } + NASDBG("nas[%d].remote %02x:%02x:%02x:%02x:%02x:%02x\n", + i, + nwcb->nas.remote[0], nwcb->nas.remote[1], + nwcb->nas.remote[2], nwcb->nas.remote[3], + nwcb->nas.remote[4], nwcb->nas.remote[5]); + break; +#ifdef BCMDBG + case 'v': + /* verbose - 0:no | others:yes */ + /* for workspace */ + if (i < 0) { + debug_nwksp = (int)strtoul(optarg, NULL, 0); + } + /* for nas */ + else + nwcb->nas.debug = (bool)strtoul(optarg, NULL, 0); + break; +#endif + + case 'I': + /* WEP key index */ + nwcb->index = (int)strtoul(optarg, NULL, 0); + NASDBG("nas[%d].wep.index %s\n", i, optarg); + break; + + case 'K': + /* WEP key */ + strncpy((char *)nwcb->wep, optarg, NAS_WKSP_MAX_USER_KEY_LEN); + nwcb->wep[NAS_WKSP_MAX_USER_KEY_LEN] = 0; + NASDBG("nas[%d].wep %s\n", i, optarg); + break; + case 't': + nwcb->nas.ssn_to = (int)strtoul(optarg, NULL, 0); + NASDBG("nas[%d].ssn.timeout %s\n", i, optarg); + break; +#ifdef BCMWPA2 + case 'd': + nwcb->nas.disable_preauth = strtoul(optarg, NULL, 0) == 0; + NASDBG("nas[%d].disable_preauth %d\n", i, nwcb->nas.disable_preauth); + break; +#endif + case 'N': + strncpy(nwcb->nas.nas_id, optarg, MAX_NAS_ID_LEN); + NASDBG("nas[%d].nas_id %s\n", i, optarg); + break; + default: + /* display wrong option and quit */ + NASDBG("unknown option -%c, ignored\n", opt); + break; + } + } + + /* return to caller # of i/f */ + nwksp->nwcbs = i + 1; + + return 0; +} + +/* listen to sockets and call handlers to process packets */ +int +nas_wksp_main_loop(nas_wksp_t *nwksp) +{ + int ret; + + /* init nas */ + ret = nas_wksp_init(nwksp); + + /* nas wksp initialization finished */ + nas_wksp_inited = 1; + if (ret) { + NASMSG("Unable to initialize NAS. Quitting...\n"); + nas_wksp_free_workspace(nwksp); + return -1; + } + +#if !defined(DEBUG) && !defined(__ECOS) + /* Daemonize */ + if (daemon(1, 1) == -1) { + /* clean up nas workspace */ + nas_wksp_cleanup(nwksp); + /* free workspace context */ + nas_wksp_free_workspace(nwksp); + perror("nas_wksp_main_loop: daemon\n"); + exit(errno); + } +#endif + + while (1) { + /* check user command for shutdown */ + if (nwksp->flags & NAS_WKSP_FLAG_SHUTDOWN) { + /* clean up nas workspace */ + nas_wksp_cleanup(nwksp); + + /* free workspace context */ + nas_wksp_free_workspace(nwksp); + + NASDBG("NAS shutdown...\n"); + return 0; + } + + /* do packets dispatch */ + nas_wksp_dispatch_packet(nwksp); + } +} + +/* listen to sockets and call handlers to process packets */ +void +nas_wksp_dispatch_packet(nas_wksp_t *nwksp) +{ + fd_set fdset; + int i, len, width, status, bytes; + nas_wpa_cb_t *nwcb = NULL; + uint8 *pkt; + bcm_event_t *pvt_data; + struct timeval tv; + + /* init file descriptor set */ + FD_ZERO(&nwksp->fdset); + nwksp->fdmax = -1; + + /* build file descriptor set now to save time later */ + if (nwksp->eapd != NAS_WKSP_UNK_FILE_DESC) { + FD_SET(nwksp->eapd, &nwksp->fdset); + if (nwksp->eapd > nwksp->fdmax) + nwksp->fdmax = nwksp->eapd; + } + for (i = 0; i < nwksp->nwcbs; i ++) { + nwcb = nwksp->nwcb[i]; + + /* ignore the interface if there was any error */ + if (nwcb->flags & NAS_WPA_CB_FLAG_ERROR) { + /* NASMSG("%s: ignore i/f due to error(s)\n", nwcb->nas.interface); */ + continue; + } +#ifdef NAS_WKSP_BUILD_NAS_AUTH + if (nwcb->nas.wan != NAS_WKSP_UNK_FILE_DESC) { + FD_SET(nwcb->nas.wan, &nwksp->fdset); + if (nwcb->nas.wan > nwksp->fdmax) + nwksp->fdmax = nwcb->nas.wan; + } +#endif /* #ifdef NAS_WKSP_BUILD_NAS_AUTH */ + } + /* check if there is any sockets in the fd set */ + if (nwksp->fdmax == -1) { + /* do shutdown procedure */ + nwksp->flags = NAS_WKSP_FLAG_SHUTDOWN; + NASMSG("Threr is no any sockets in the fd set, shutdown...\n"); + return; + } + + pkt = nwksp->packet; + len = sizeof(nwksp->packet); + width = nwksp->fdmax + 1; + fdset = nwksp->fdset; + /* set timeout value */ + tv.tv_sec = 1; + tv.tv_usec = 0; + + /* enable timer handling */ + bcm_timer_module_enable(nwksp->timer, 1); + + /* listen to data availible on all sockets */ + status = select(width, &fdset, NULL, NULL, &tv); + + /* disable timer handling */ + bcm_timer_module_enable(nwksp->timer, 0); + + /* got something */ + if (status > 0) { + /* the data is driver indication message or encapsulated 802.1x frame */ + if (nwksp->eapd != NAS_WKSP_UNK_FILE_DESC && FD_ISSET(nwksp->eapd, &fdset)) { + char *ifname = (char *)pkt; + eapol_header_t *eapol = (eapol_header_t *)(ifname + IFNAMSIZ); + + if ((bytes = recv(nwksp->eapd, pkt, len, 0)) > 0) { + /* strip prepend ifname */ + bytes -= IFNAMSIZ; + + /* dispatch message to eapol, preauth, brcmevent */ + switch (ntohs(eapol->eth.ether_type)) { + case ETHER_TYPE_802_1X: /* eapol */ + NASDBG("recv eapol packet from socket %d\n", nwksp->eapd); + + nwcb = nas_wksp_find_nwcb(nwksp, eapol->eth.ether_dhost, + ifname, NAS_WKSP_NWCB_AUTO); + if (!nwcb) + return; + + /* dispatch eapol for auth or suppl */ + nas_eapol_message_dispatch(nwcb, (void *)eapol, bytes); + break; +#ifdef BCMWPA2 + case ETHER_TYPE_802_1X_PREAUTH: /* preauth */ + NASDBG("recv preauth packet from socket %d\n", + nwksp->eapd); + + nwcb = nas_wksp_find_nwcb(nwksp, eapol->eth.ether_dhost, + NULL, NAS_WKSP_NWCB_AUTO); + if (!nwcb) + return; + + preauth_dispatch(&nwcb->nas, eapol); + break; +#endif /* BCMWPA2 */ + case ETHER_TYPE_BRCM: /* brcmevent */ + NASDBG("recv brcmevent packet from eapd Socket" + "%d\n", nwksp->eapd); + + /* make sure to interpret only messages destined to NAS */ + if (nas_validate_wlpvt_message(bytes, (uint8 *)eapol)) + return; + + pvt_data = (bcm_event_t *)(ifname + IFNAMSIZ); + nwcb = nas_wksp_find_nwcb(nwksp, + pvt_data->eth.ether_dhost, + pvt_data->event.ifname, + NAS_WKSP_NWCB_AUTO); + + if (!nwcb) + return; + + /* do not process eapol message in brcmevent */ + nas_handle_wlpvt_messages(nwcb, (void *)pvt_data, bytes); + break; + } /* switch(ntohs(eapol->eth.ether_type)) */ + } /* if ((bytes = recv(nwksp->eapd, pkt, len, 0)) > 0) */ + } /* FD_ISSET(nwksp->eapd, &fdset) */ + +#ifdef NAS_WKSP_BUILD_NAS_AUTH + /* process radius data from individual interfaces */ + for (i = 0; i < nwksp->nwcbs; i ++) { + nwcb = nwksp->nwcb[i]; + /* the data is radius message */ + if ((nwcb->nas.wan != NAS_WKSP_UNK_FILE_DESC) && + FD_ISSET(nwcb->nas.wan, &fdset)) { + if (recv(nwcb->nas.wan, pkt, len, 0) <= 0) { + NASMSG("%s: recv radius error %d from socket %d\n", + nwcb->nas.interface, errno, nwcb->nas.wan); + /* Reopen the socket to the radius server if possible */ + if (NAS_RADIUS_OPEN(nwksp, nwcb) != 0) { + NASMSG("%s: open radius connection failed\n", + nwcb->nas.interface); + } + continue; /* Skip this attempt */ + } + + NASDBG("%s: recv radius packet from socket %d\n", + nwcb->nas.interface, nwcb->nas.wan); + RADIUS_DISPATCH(&nwcb->nas, (void *)pkt); + } + } +#endif /* #ifdef NAS_WKSP_BUILD_NAS_AUTH */ + + } + + return; +} + +/* establish connection to EAPD to + * receive wpa, eapol and preauth. + */ +int +nas_wksp_open_eapd(nas_wksp_t *nwksp) +{ + int reuse = 1; + struct sockaddr_in sockaddr; + + /* open loopback socket to communicate with EAPD */ + memset(&sockaddr, 0, sizeof(sockaddr)); + sockaddr.sin_family = AF_INET; + sockaddr.sin_addr.s_addr = htonl(INADDR_LOOPBACK); + sockaddr.sin_port = htons(EAPD_WKSP_NAS_UDP_SPORT); + if ((nwksp->eapd = socket(PF_INET, SOCK_DGRAM, IPPROTO_UDP)) < 0) { + NASDBG("eapd: Unable to create loopback socket\n"); + goto exit0; + } +#if defined(__ECOS) + if (setsockopt(nwksp->eapd, SOL_SOCKET, SO_REUSEPORT, (char*)&reuse, sizeof(reuse)) < 0) { + NASDBG("eapd: Unable to setsockopt to loopback socket %d.\n", nwksp->eapd); + goto exit1; + } +#else + if (setsockopt(nwksp->eapd, SOL_SOCKET, SO_REUSEADDR, (char*)&reuse, sizeof(reuse)) < 0) { + NASDBG("eapd: Unable to setsockopt to loopback socket %d.\n", nwksp->eapd); + goto exit1; + } +#endif + if (bind(nwksp->eapd, (struct sockaddr *)&sockaddr, sizeof(sockaddr)) < 0) { + NASDBG("eapd: Unable to bind to loopback socket %d\n", nwksp->eapd); + goto exit1; + } + NASDBG("eapd: opened loopback socket %d\n", nwksp->eapd); + return 0; + + /* error handling */ +exit1: + close(nwksp->eapd); + +exit0: + nwksp->eapd = NAS_WKSP_UNK_FILE_DESC; + NASDBG("eapd: failed to open loopback socket\n"); + return errno; +} + +void +nas_wksp_close_eapd(nas_wksp_t *nwksp) +{ + /* clsoe eapd socket */ + if (nwksp->eapd != NAS_WKSP_UNK_FILE_DESC) { + NASDBG("eapd: close loopback socket %d\n", nwksp->eapd); + close(nwksp->eapd); + nwksp->eapd = NAS_WKSP_UNK_FILE_DESC; + } + return; +} + +/* transmit eapol message thru the socket */ +static int +nas_wksp_eapd_send_packet(nas_t *nas, struct iovec *frags, int nfrags) +{ + nas_wpa_cb_t *nwcb = (nas_wpa_cb_t *)nas->appl; + nas_wksp_t *nwksp = nwcb->nwksp; + struct ether_header *eth; + struct msghdr mh; + struct sockaddr_in to; + struct iovec *iov; + int i, rc = 0; + + if (!nfrags || !nfrags) + return -1; + + if (frags->iov_len < sizeof(struct ether_header)) + return -1; + + /* allocate iov buffer */ + iov = malloc(sizeof(struct iovec) * (nfrags + 1)); + if (iov == NULL) + return -1; + + eth = (struct ether_header*) frags->iov_base; + + to.sin_addr.s_addr = inet_addr(EAPD_WKSP_UDP_ADDR); + to.sin_family = AF_INET; + to.sin_port = htons(EAPD_WKSP_NAS_UDP_RPORT); + + /* Save incoming interface name */ + iov[0].iov_base = (void *)&nas->interface; + iov[0].iov_len = IFNAMSIZ; + + for (i = 1; i <= nfrags; i++) { + iov[i].iov_base = frags[i-1].iov_base; + iov[i].iov_len = frags[i-1].iov_len; + } + + memset(&mh, 0, sizeof(mh)); + mh.msg_name = (void *)&to; + mh.msg_namelen = sizeof(to); + mh.msg_iov = iov; + mh.msg_iovlen = nfrags + 1; + + if (sendmsg(nwksp->eapd, &mh, 0) < 0) + rc = errno; + + free(iov); + return rc; +} + +/* transmit eapol message thru the socket */ +int +nas_eapol_send_packet(nas_t *nas, struct iovec *frags, int nfrags) +{ + return (nas_wksp_eapd_send_packet(nas, frags, nfrags)); +} + +#ifdef BCMWPA2 +/* transmit preauth message thru the socket */ +int nas_preauth_send_packet(nas_t *nas, struct iovec *frags, int nfrags) +{ + return (nas_wksp_eapd_send_packet(nas, frags, nfrags)); +} +#endif /* BCMWPA2 */ + +/* allocate NAS workspace for interfaces/instances */ +nas_wksp_t * +nas_wksp_alloc_workspace(void) +{ + nas_wksp_t *nwksp = (nas_wksp_t *)malloc(sizeof(nas_wksp_t)); + if (!nwksp) + return NULL; + + memset(nwksp, 0, sizeof(nas_wksp_t)); + + + NASDBG("allocated NAS workspace %d bytes\n", sizeof(nas_wksp_t)); + return nwksp; +} + +/* free memory taken by NAS workspace */ +void +nas_wksp_free_workspace(nas_wksp_t *nwksp) +{ + int i; + NASDBG("free NAS workspace %08x\n", (int)nwksp); + for (i = 0; i < nwksp->nwcbs; i ++) + if (nwksp->nwcb[i]) + free(nwksp->nwcb[i]); + free(nwksp); +} + +#define NAS_WKSP_MODULE_TIMER 0 +/* +* Init the timer event queue (used only by WPA stuff, +* up to one per supplicant plus: +* the group rekey timer +* MIC failure throttling timer +* 4-way handshake initiator for wds +* pmk timer for WPA2 +*/ +#define NAS_WKSP_MAX_NUM_TIMER (MAX_SUPPLICANTS + 4) + +/* init one nas instance */ +static int +nas_init_nas(nas_wksp_t *nwksp, nas_wpa_cb_t *nwcb) +{ + uint8 *data, *key; + int len; + +#if !NAS_WKSP_MODULE_TIMER + nwcb->nas.timer = nwksp->timer; +#else + bcm_timer_module_init(NAS_WKSP_MAX_NUM_TIMER, &nwcb->nas.timer); +#endif /* #if NAS_WKSP_MODULE_TIMER */ + + /* check if mode is supported */ + if (!(CHECK_AUTH(nwcb->nas.mode))) { + NASDBG("%s: auth mode %d is not supported\n", nwcb->nas.interface, nwcb->nas.mode); + nwcb->flags |= NAS_WPA_CB_FLAG_ERROR; + return 0; + } + + /* check if wsec is supported */ + if (!nwcb->nas.wsec || + (nwcb->nas.wsec & (AES_ENABLED | TKIP_ENABLED | WEP_ENABLED)) != nwcb->nas.wsec) { + NASDBG("%s: wsec 0x%x is not supported\n", nwcb->nas.interface, nwcb->nas.wsec); + nwcb->flags |= NAS_WPA_CB_FLAG_ERROR; + return 0; + } + + /* validate gtk rotation and gtk index */ + if (nwcb->flags & NAS_WPA_CB_FLAG_AUTH) { + if ((CHECK_NAS(nwcb->nas.mode)) && + WSEC_WEP_ENABLED(nwcb->nas.wsec)) { + if (nwcb->wpa.gtk_rekey_secs) { + NASDBG("%s: GTK rotation is not allowed when WEP is enabled," + " disabled\n", + nwcb->nas.interface); + nwcb->wpa.gtk_rekey_secs = 0; + } + if (nwcb->index != (GTK_INDEX_1 + 1) && nwcb->index != (GTK_INDEX_2 + 1)) { + NASDBG("%s: GTK index %d is invalid when WEP is enabled, using %d" + " instead\n", + nwcb->nas.interface, nwcb->index, GTK_INDEX_1 + 1); + nwcb->index = GTK_INDEX_1 + 1; + } + } + else if (nwcb->index && + nwcb->index != (GTK_INDEX_1 + 1) && nwcb->index != (GTK_INDEX_2 + 1)) { + NASDBG("%s: GTK index %d is invalid when used with mode %d, using %d" + " instead\n", + nwcb->nas.interface, nwcb->index, nwcb->nas.mode, GTK_INDEX_1 + 1); + nwcb->index = GTK_INDEX_1 + 1; + } + } + + /* nas type is Wireless IEEE 802.11 */ + nwcb->nas.type = NAS_PORT_TYPE_WIRELESS_IEEE80211; + + /* default key index and size */ + nwcb->wpa.gtk_index = GTK_INDEX_1; +#ifdef MFP + nwcb->wpa.igtk.id = IGTK_INDEX_1; +#endif + + if (nwcb->nas.mode & RADIUS) + nwcb->wpa.gtk_len = WEP128_KEY_SIZE; + + /* apply key constraints according to the mode */ + /* PSK pre-shared key */ + if (CHECK_PSK(nwcb->nas.mode)) { + uint8 *num = NULL; + key = nwcb->psk; + len = strlen((char *)key); + nwcb->nas.key.data = data = nwcb->wpa.pmk; + /* numeric key must be 256-bit. */ + if (len == NAS_WKSP_PSK_LEN) + num = key; + /* allow leading hex radix for a proper size number */ + else if ((len == NAS_WKSP_PSK_LEN + 2) && + (!strncmp((char *)key, "0x", 2) || !strncmp((char *)key, "0X", 2))) + num = key + 2; + if (num) { + int j = 0; + char hex[] = "XX"; + do { + hex[0] = *num++; + hex[1] = *num++; + if (!isxdigit((int)hex[0]) || + !isxdigit((int)hex[1])) { + NASDBG("%s: numeric PSK %s not 256-bit hex number\n", + nwcb->nas.interface, key); + nwcb->flags |= NAS_WPA_CB_FLAG_ERROR; + break; + } + *data++ = (uint8)strtoul(hex, NULL, 16); + } while (++j < NAS_WKSP_PSK_LEN/2); + nwcb->nas.key.length = NAS_WKSP_PSK_LEN/2; + } else { + unsigned char output[2*SHA1HashSize]; + if ((len < NAS_WKSP_PASSPHRASE_MIN) || + (len > NAS_WKSP_PASSPHRASE_MAX)) { + NASDBG("%s: %s length illegal\n", nwcb->nas.interface, key); + nwcb->flags |= NAS_WPA_CB_FLAG_ERROR; + return 0; + } + + /* perform password to hash conversion */ + if (passhash((char *)key, len, (uchar *)nwcb->nas.ssid, + strlen(nwcb->nas.ssid), output)) { + NASDBG("%s: PSK password hash failed\n", nwcb->nas.interface); + nwcb->flags |= NAS_WPA_CB_FLAG_ERROR; + return 0; + } + memcpy(data, output, PMK_LEN); + nwcb->nas.key.length = PMK_LEN; + } + nwcb->wpa.pmk_len = nwcb->nas.key.length; + } + + /* RADIUS secret */ + if (CHECK_RADIUS(nwcb->nas.mode)) { + key = nwcb->secret; + len = strlen((char *)key); + if (len > NAS_WKSP_MAX_USER_KEY_LEN) { + NASDBG("%s: %s too long, truncated\n", nwcb->nas.interface, key); + len = NAS_WKSP_MAX_USER_KEY_LEN; + } + nwcb->nas.secret.data = key; + nwcb->nas.secret.length = len; + } + + /* init mode-specific keys */ + if (CHECK_NAS(nwcb->nas.mode)) { + /* generate the initial global_key_counter and gmk */ + initialize_global_key_counter(&nwcb->wpa); + initialize_gmk(&nwcb->wpa); + } + + /* get default key size, key index */ + if (!nwcb->wpa.gtk_rekey_secs) { + /* + * Honor statically configured WEP key. Key index + * should be either 2 or 3. + */ + if (WSEC_WEP_ENABLED(nwcb->nas.wsec) && + nwcb->index && strlen((char *)nwcb->wep)) { + + uint8 wep[NAS_WKSP_MAX_USER_KEY_LEN + 1]; + char hex[] = "XX"; + key = nwcb->wep; + data = wep; + + switch (strlen((char *)key)) { + case WEP1_KEY_SIZE: + case WEP128_KEY_SIZE: + len = strlen((char *)key); + strcpy((char *)wep, (char *) key); + break; + case WEP1_KEY_HEX_SIZE: + case WEP128_KEY_HEX_SIZE: + len = strlen((char *)key) / 2; + while (*key) { + strncpy(hex, (char *) key, 2); + *data++ = (uint8)strtoul(hex, NULL, 16); + key += 2; + } + break; + default: + len = 0; + break; + } + + /* wlconf will apply wep first */ + if (len) { + bcopy(wep, nwcb->wpa.gtk, len); + nwcb->wpa.gtk_index = nwcb->index - 1; + nwcb->wpa.gtk_len = len; + nwcb->nas.flags |= NAS_FLAG_GTK_PLUMBED; + } + else { + NASDBG("%s: unable to plumb WEP key!\n", + nwcb->nas.interface); + nwcb->flags |= NAS_WPA_CB_FLAG_ERROR; + return 0; + } + } + /* + * When doing WPA (WEP is not enabled) or doing + * 802.1x without static WEP key, honor the key index. + */ + else if (nwcb->index) + nwcb->wpa.gtk_index = nwcb->index - 1; + } + + /* AP specific setup */ + if (nwcb->flags & NAS_WPA_CB_FLAG_AUTH) { + /* grab WPA capabilities, used in IE contruction */ + nas_get_wpacap(&nwcb->nas, nwcb->wpa.cap); + } + + + /* tell nas to start */ + if (nwcb->flags & NAS_WPA_CB_FLAG_ERROR) { + NASDBG("%s: unable to start NAS due to early error", + nwcb->nas.interface); + return 0; + } + + nas_start(&nwcb->nas); + + return 0; +} + +/* init all NAS instances */ +static int +nas_wksp_init_nas(nas_wksp_t *nwksp) +{ + nas_wpa_cb_t *nwcb; + int i; + + for (i = 0; i < nwksp->nwcbs; i ++) { + nwcb = nwksp->nwcb[i]; + assert(nwcb); + + nas_init_nas(nwksp, nwcb); + } + + return 0; +} + +/* cleanup one nas instance */ +static void +nas_cleanup_nas(nas_wksp_t *nwksp, nas_wpa_cb_t *nwcb) +{ + wpa_reset_countermeasures(nwcb->nas.wpa); + +#if !NAS_WKSP_MODULE_TIMER + nwcb->nas.timer = 0; +#else + bcm_timer_module_cleanup(nwcb->nas.timer); +#endif + + return; +} + +/* cleanup all nas instances */ +static void +nas_wksp_cleanup_nas(nas_wksp_t *nwksp) +{ + nas_wpa_cb_t *nwcb; + int i; + + /* init each instance */ + for (i = 0; i < nwksp->nwcbs; i ++) { + nwcb = nwksp->nwcb[i]; + assert(nwcb); + + nas_cleanup_nas(nwksp, nwcb); + } +} + +/* +* Common NAS application level routines that can be used under different +* OSs. These functions need to be re-implemented only when the application +* needs a different low level control over how NAS behaves than this +* implementation. +*/ +/* init NAS workspace */ +int +nas_wksp_init(nas_wksp_t *nwksp) +{ +#if !NAS_WKSP_MODULE_TIMER + if (bcm_timer_module_init(NAS_WKSP_MAX_NUM_TIMER*NAS_WKSP_MAX_NUM_INTERFACES, + &nwksp->timer)) { + NASMSG("bcm_timer_module_init failed\n"); + } +#endif /* #if !NAS_WKSP_MODULE_TIMER */ + + /* open connection to receive eapd messages */ + nas_wksp_open_eapd(nwksp); + +#ifdef NAS_WKSP_BUILD_NAS_AUTH + /* open connection to receive radius messages */ + (void)NAS_WKSP_OPEN_RADIUS(nwksp); +#endif /* #ifdef NAS_WKSP_BUILD_NAS_AUTH */ + + /* init each instance */ + nas_wksp_init_nas(nwksp); + + return 0; +} + +/* cleanup NAS workspace */ +void +nas_wksp_cleanup(nas_wksp_t *nwksp) +{ + /* stop running nas */ + nas_wksp_cleanup_nas(nwksp); + +#ifdef NAS_WKSP_BUILD_NAS_AUTH + /* disconnect from radius server */ + NAS_WKSP_CLOSE_RADIUS(nwksp); +#endif /* #ifdef NAS_WKSP_BUILD_NAS_AUTH */ + +#if !NAS_WKSP_MODULE_TIMER + bcm_timer_module_cleanup(nwksp->timer); +#endif /* #if !NAS_WKSP_MODULE_TIMER */ + + nas_wksp_close_eapd(nwksp); +} + +#ifdef NAS_WKSP_ON_DEMAND +static nas_wpa_cb_t* +nas_get_wsec(nas_wksp_t *nwksp, uint8 *mac, char *osifname) +{ + int ret; + wsec_info_t info; + nas_wpa_cb_t *nwcb = NULL; + + if ((ret = get_wsec(&info, (char *) mac, osifname)) != WLIFU_WSEC_SUCCESS) { + if (ret != WLIFU_ERR_NOT_SUPPORT_MODE) + NASDBG("Get wireless security settings failed," + "mac=0x%02x:%02x:%02x:%02x:%02x:%02x osifname = %s err %d\n", + mac[0], mac[1], mac[2], mac[3], mac[4], mac[5], + osifname ? : "NULL", ret); + return NULL; + } + + nwcb = (nas_wpa_cb_t *)malloc(sizeof(nas_wpa_cb_t)); + if (!nwcb) { + NASMSG("Memory allocate failed for adding new nwcb\n"); + return NULL; + } + memset(nwcb, 0, sizeof(nas_wpa_cb_t)); + + /* Set default values */ + nwcb->nwksp = nwksp; +#if !defined(NAS_WKSP_BUILD_NAS_AUTH) && defined(NAS_WKSP_BUILD_NAS_SUPPL) + nwcb->flags |= NAS_WPA_CB_FLAG_SUPPL; + nwcb->nas.flags |= NAS_FLAG_SUPPLICANT; +#endif /* #if !defined(NAS_WKSP_BUILD_NAS_AUTH) && defined(NAS_WKSP_BUILD_NAS_SUPPL) */ +#if defined(NAS_WKSP_BUILD_NAS_AUTH) && !defined(NAS_WKSP_BUILD_NAS_SUPPL) + nwcb->flags |= NAS_WPA_CB_FLAG_AUTH; + nwcb->nas.flags |= NAS_FLAG_AUTHENTICATOR; +#endif /* #if defined(NAS_WKSP_BUILD_NAS_AUTH) && !defined(NAS_WKSP_BUILD_NAS_SUPPL) */ + nwcb->nas.wan = NAS_WKSP_UNK_FILE_DESC; + nwcb->nas.server.sin_port = htons(RADIUS_PORT); + nwcb->nas.wsec = TKIP_ENABLED|AES_ENABLED; + nwcb->nas.wpa = &nwcb->wpa; + nwcb->nas.appl = nwcb; +#ifdef BCMDBG + nwcb->nas.debug = 1; +#endif +#ifdef BCMWPA2 + nwcb->nas.disable_preauth = 0; +#endif + nwcb->nas.ssn_to = 36000; /* 10hrs */ + nwcb->wpa.nas = &nwcb->nas; + + /* interface unit */ + nwcb->unit = info.unit; + NASDBG("new nwcb's unit %d\n", nwcb->unit); + /* interface name */ + strncpy(nwcb->nas.interface, info.osifname, IFNAMSIZ); + NASDBG("new nwcb's nas interface %s\n", nwcb->nas.interface); + /* interface address */ + memcpy(nwcb->nas.ea.octet, info.ea, ETHER_ADDR_LEN); + NASDBG("new nwcb's nas hwaddr %02x:%02x:%02x:%02x:%02x:%02x\n", + nwcb->nas.ea.octet[0], nwcb->nas.ea.octet[1], + nwcb->nas.ea.octet[2], nwcb->nas.ea.octet[3], + nwcb->nas.ea.octet[4], nwcb->nas.ea.octet[5]); + /* ssid info */ + strncpy(nwcb->nas.ssid, info.ssid, DOT11_MAX_SSID_LEN); + NASDBG("new nwcb's nas ssid %s\n", nwcb->nas.ssid); + /* nas auth mode */ + nwcb->nas.mode = info.akm; + NASDBG("new nwcb's nas auth mode %d\n", nwcb->nas.mode); + if (!nwcb->nas.mode) { + NASDBG("%s: Ignored interface. Invalid NAS mode\n", info.osifname); + free(nwcb); + return NULL; + } + /* wsec encryption */ + nwcb->nas.wsec = info.wsec; + NASDBG("new nwcb's nas wsec encryption mode %d\n", nwcb->nas.wsec); + if (!nwcb->nas.wsec) { + NASDBG("%s: Ignored interface. Invalid WSEC\n", info.osifname); + free(nwcb); + return NULL; + } + + /* nas role setting */ +#if defined(NAS_WKSP_BUILD_NAS_AUTH) && defined(NAS_WKSP_BUILD_NAS_SUPPL) + nwcb->flags = info.flags; + nwcb->nas.flags = info.flags; +#endif /* #if defined(NAS_WKSP_BUILD_NAS_AUTH) && defined(NAS_WKSP_BUILD_NAS_SUPPL) */ + if (info.flags & NAS_WPA_CB_FLAG_WDS) { + nwcb->flags = info.flags; + nwcb->nas.flags = info.flags; + } + NASDBG("new nwcb's nas flags %d\n", nwcb->nas.flags); + + /* remote address */ + memcpy(nwcb->nas.remote, info.remote, ETHER_ADDR_LEN); + NASDBG("new nwcb's nas remote %02x:%02x:%02x:%02x:%02x:%02x\n", + nwcb->nas.remote[0], nwcb->nas.remote[1], + nwcb->nas.remote[2], nwcb->nas.remote[3], + nwcb->nas.remote[4], nwcb->nas.remote[5]); + /* user-supplied psk passphrase */ + if (info.psk) { + strncpy((char *)nwcb->psk, info.psk, NAS_WKSP_MAX_USER_KEY_LEN); + nwcb->psk[NAS_WKSP_MAX_USER_KEY_LEN] = 0; + NASDBG("new nwcb's psk %s\n", nwcb->psk); + } + /* user-supplied radius server secret */ + if (info.secret) { + strncpy((char *)nwcb->secret, info.secret, NAS_WKSP_MAX_USER_KEY_LEN); + nwcb->secret[NAS_WKSP_MAX_USER_KEY_LEN] = 0; + NASDBG("new nwcb's secret %s\n", nwcb->secret); + } +#ifdef NAS_WKSP_BUILD_NAS_AUTH + nwcb->wpa.gtk_rekey_secs = info.gtk_rekey_secs; + NASDBG("new nwcb's wpa gtk_rekey_sec %d\n", nwcb->wpa.gtk_rekey_secs); + /* key index */ + nwcb->index = info.wep_index; + NASDBG("new nwcb's wep index %d\n", nwcb->index); + /* wep key */ + if (info.wep_key) { + strncpy((char *)nwcb->wep, info.wep_key, NAS_WKSP_MAX_USER_KEY_LEN); + nwcb->wep[NAS_WKSP_MAX_USER_KEY_LEN] = 0; + NASDBG("new nwcb's wep %s\n", nwcb->wep); + } + /* radius server host/port */ +#ifdef NAS_RADIUS + /* update radius server address */ + if (info.radius_addr) { + nwcb->nas.server.sin_family = AF_INET; + nwcb->nas.server.sin_addr.s_addr = inet_addr(info.radius_addr); + /* update radius server port number */ + nwcb->nas.server.sin_port = info.radius_port; + NASDBG("new nwcb's nas radius server address %s, port %d\n", + info.radius_addr, nwcb->nas.server.sin_port); + } +#endif /* NAS_RADIUS */ + /* 802.1x session timeout/pmk cache duration */ + nwcb->nas.ssn_to = info.ssn_to; + NASDBG("new nwcb's nas ssn timeout %d\n", nwcb->nas.ssn_to); +#endif /* #ifdef NAS_WKSP_BUILD_NAS_AUTH */ + +#ifdef BCMDBG + /* verbose - 0:no | others:yes */ + nwcb->nas.debug = info.debug; + NASDBG("new nwcb's nas debug %d\n", nwcb->nas.debug); +#endif + +#ifdef BCMWPA2 + nwcb->nas.disable_preauth = (info.preauth == 0) ? 1 : 0; + NASDBG("new nwcb's nas disable_preauth %d\n", nwcb->nas.disable_preauth); +#endif + + + /* nas id */ + if (info.nas_id) { + strncpy(nwcb->nas.nas_id, info.nas_id, MAX_NAS_ID_LEN); + NASDBG("new nwcb's nas nas_id %s\n", nwcb->nas.nas_id); + } + + + /* save to list */ + nwksp->nwcb[nwksp->nwcbs++] = nwcb; + + return nwcb; +} + +/* add new NAS instance */ +nas_wpa_cb_t * +nas_wksp_add_nwcb(nas_wksp_t *nwksp, uint8 *mac, char *osifname) +{ + nas_wpa_cb_t *nwcb = NULL; + + /* retrieve wireless security infomation for this interface */ + if (nwksp->nwcbs < NAS_WKSP_MAX_NUM_INTERFACES) { + if (!(nwcb = nas_get_wsec(nwksp, mac, osifname))) { + return NULL; + } + +#ifdef NAS_WKSP_BUILD_NAS_AUTH + /* open connection to receive radius messages */ + if (CHECK_RADIUS(nwcb->nas.mode)) { + /* open connection to radius server */ + if (NAS_RADIUS_OPEN(nwksp, nwcb) != 0) + NASMSG("%s: open radius connection failed\n", nwcb->nas.interface); + } +#endif /* #ifdef NAS_WKSP_BUILD_NAS_AUTH */ + + /* init new instance */ + nas_init_nas(nwksp, nwcb); + } + + return nwcb; +} +#endif /* #ifdef NAS_WKSP_ON_DEMAND */ + +/* find NAS instance based on MAC address and i/f name */ +nas_wpa_cb_t * +nas_wksp_find_nwcb(nas_wksp_t *nwksp, uint8 *mac, char *osifname, int mode) +{ +#ifdef BCMDBG + char eabuf[ETHER_ADDR_STR_LEN]; +#endif + nas_wpa_cb_t *nwcb = NULL; + int i; + + for (i = 0; i < nwksp->nwcbs; i ++) { + nwcb = nwksp->nwcb[i]; + assert(nwcb); + + if (!bcmp(mac, nwcb->nas.ea.octet, ETHER_ADDR_LEN)) { + if (!osifname) { + NASDBG("%s *: found %08x\n", + ether_etoa((uchar *)mac, eabuf), (uint)nwcb); + return nwcb; + } + else if (!strncmp(nwcb->nas.interface, osifname, BCM_MSG_IFNAME_MAX)) { + NASDBG("%s %s: found %08x\n", + ether_etoa((uchar *)mac, eabuf), osifname, (uint)nwcb); + return nwcb; + } + } + } + + if (mode == NAS_WKSP_NWCB_SEARCH_ENTER) + nwcb = NAS_WKSP_ADD_NWCB(nwksp, mac, osifname); + + if (!nwcb) + NASDBG("%s %s: find error\n", ether_etoa((uchar *)mac, eabuf), osifname ? : "*"); + + return nwcb; +} + +/* +** Return values are really improtant here please make sure you look +** thr'u the code before changing it. vx code depends on the return values. +** returnvalues +** 0,our packet otherwise not our packet +*/ +int +nas_validate_wlpvt_message(int bytes, uint8 *dpkt) +{ + bcm_event_t *pvt_data; + + /* the message should be at least the header to even look at it */ + if (bytes < sizeof(bcm_event_t) + 2) { + NASDBG("nas_validate_wlpvt_message: invalid length of message\n"); + goto error_exit; + } + pvt_data = (bcm_event_t *)dpkt; + if (ntohs(pvt_data->bcm_hdr.subtype) != BCMILCP_SUBTYPE_VENDOR_LONG) { + NASDBG("%s: nas_validate_wlpvt_message: not vendor specifictype\n", + pvt_data->event.ifname); + goto error_exit; + } + if (pvt_data->bcm_hdr.version != BCMILCP_BCM_SUBTYPEHDR_VERSION) { + NASDBG("%s: nas_validate_wlpvt_message: subtype header version mismatch\n", + pvt_data->event.ifname); + goto error_exit; + } + if (ntohs(pvt_data->bcm_hdr.length) < BCMILCP_BCM_SUBTYPEHDR_MINLENGTH) { + NASDBG("%s: nas_validate_wlpvt_message: subtype hdr length not even minimum\n", + pvt_data->event.ifname); + goto error_exit; + } + if (bcmp(&pvt_data->bcm_hdr.oui[0], BRCM_OUI, DOT11_OUI_LEN) != 0) { + NASDBG("%s: nas_validate_wlpvt_message: not BRCM OUI\n", pvt_data->event.ifname); + goto error_exit; + } + /* check for wl nas message types */ + switch (ntohs(pvt_data->bcm_hdr.usr_subtype)) { + case BCMILCP_BCM_SUBTYPE_EVENT: + /* wl nas message */ + /* if (pvt_data->version != BCM_MSG_VERSION) { + * atleast a debug message + * } + */ + break; + default: + goto error_exit; + break; + } + return 0; /* good packet may be this is destined to us */ +error_exit: + return -1; +} + +void +nas_eapol_message_dispatch(nas_wpa_cb_t *nwcb, void *eapol, int bytes) +{ + nas_t *nas = &nwcb->nas; + +#if defined(NAS_WKSP_BUILD_NAS_AUTH) && defined(NAS_WKSP_BUILD_NAS_SUPPL) + if (nwcb->flags & NAS_WPA_CB_FLAG_AUTH) + eapol_dispatch(nas, eapol); + else + eapol_sup_dispatch(nas, eapol); +#elif defined(NAS_WKSP_BUILD_NAS_AUTH) /* Only support authenticator */ + eapol_dispatch(nas, eapol); +#else /* Only support supplicant */ + eapol_sup_dispatch(nas, eapol); +#endif /* #if defined(NAS_WKSP_BUILD_NAS_AUTH) && defined(NAS_WKSP_BUILD_NAS_SUPPL) */ + + return; +} + +int +nas_handle_wlpvt_messages(nas_wpa_cb_t *nwcb, void *pkt, int bytes) +{ + bcm_event_t *dpkt; + + dpkt = (bcm_event_t *)pkt; + NASDBG("received event of type : %d\n", ntohs(dpkt->event.event_type)); + switch (ntohs(dpkt->bcm_hdr.usr_subtype)) { + case BCMILCP_BCM_SUBTYPE_EVENT: + /* ingore EAPOL message encapsulated ini bcmevent packet */ + if ((ntohl(dpkt->event.event_type) != WLC_E_EAPOL_MSG)) { + NASDBG("%s: recved wl wpa packet interface bytes: %d\n", + dpkt->event.ifname, bytes); + driver_message_dispatch(&nwcb->nas, dpkt); + } + break; + + default: /* not a NAS supported message so return an error */ + NASDBG("%s: ERROR: recved unknown packet interface subtype " + "0x%x bytes: %d\n", dpkt->event.ifname, + ntohs(dpkt->bcm_hdr.usr_subtype), bytes); + return -1; + } + + return 0; +} + +void +nas_wksp_clear_inited() +{ + nas_wksp_inited = 0; +} + +int nas_wksp_is_inited() +{ + return nas_wksp_inited; +} diff --git a/release/src-rt/wl/nas/nas_wksp.h b/release/src-rt/wl/nas/nas_wksp.h new file mode 100644 index 0000000000..ca3ab0d9d3 --- /dev/null +++ b/release/src-rt/wl/nas/nas_wksp.h @@ -0,0 +1,170 @@ +/* + * NAS WorkSpace - NAS application common code + * + * Copyright (C) 2010, Broadcom Corporation + * All Rights Reserved. + * + * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation; + * the contents of this file may not be disclosed to third parties, copied + * or duplicated in any form, in whole or in part, without the prior + * written permission of Broadcom Corporation. + * + * $Id: nas_wksp.h 241388 2011-02-18 03:33:22Z stakita $ + */ + +#ifndef __NAS_WKSP_H__ +#define __NAS_WKSP_H__ + +/* debug stuff */ +#ifdef BCMDBG +#include +#include +extern int debug_nwksp; +#define NASDBG(fmt, arg...) (\ +{ \ + if (debug_nwksp) { \ + printf("%s: "fmt, __FUNCTION__ , ##arg); \ + } \ +} \ +) +#define NASHEX(mem, size) (\ +{ \ + if (debug_nwksp) { \ + char buf[80]; \ + int i, j, k; \ + for (i = 0; i < size; ) { \ + j = sprintf(buf, "%04X: ", i); \ + for (k = 0; k < 16 && i < size; k++, i++) \ + j += sprintf(&buf[j], " %02X", mem[i]); \ + printf("%s\n", buf); \ + } \ + } \ +} \ +) +#else /* #if BCMDBG */ +#define NASDBG(fmt, arg...) +#define NASHEX(mem, size) +#endif /* #if BCMDBG */ +#define NASMSG(fmt, arg...) printf(fmt , ##arg) + +#include +#include +#include "bcmtimer.h" +#include "nas.h" +#include "wpa.h" + +/* + * The same source code can be built into either NAS server or + * NAS supplicant. + */ +#if !defined(NAS_WKSP_BUILD_NAS_AUTH) && !defined(NAS_WKSP_BUILD_NAS_SUPPL) +#error must defined NAS_WKSP_BUILD_NAS_AUTH and/or NAS_WKSP_BUILD_NAS_SUPPL +#endif + +#define NAS_WKSP_PSK_LEN 64 +#define NAS_WKSP_PASSPHRASE_MIN 8 +#define NAS_WKSP_PASSPHRASE_MAX 63 + +#define NAS_WKSP_MAX_USER_KEY_LEN 80 +#define NAS_WKSP_MAX_NUM_INTERFACES 16 + +#define NAS_WKSP_UNK_FILE_DESC -1 + +#define NAS_WPA_CB_FLAG_SUPPL WLIFU_WSEC_SUPPL /* use nas as supplicant */ +#define NAS_WPA_CB_FLAG_AUTH WLIFU_WSEC_AUTH /* use nas as authenticator */ +#define NAS_WPA_CB_FLAG_WDS WLIFU_WSEC_WDS /* nas in WDS mode */ +#define NAS_WPA_CB_FLAG_ERROR 0x80000000 /* error to init nas_t struct */ + +#define NAS_WKSP_FLAG_SHUTDOWN 1 /* Shutdown flag */ + +/* nas/wpa combo and lots of goodies, one per NAS instance */ +typedef struct nas_wpa_cb +{ + nas_t nas; + wpa_t wpa; + + /* user-supplied psk passphrase */ + uint8 psk[NAS_WKSP_MAX_USER_KEY_LEN + 1]; + /* user-supplied radius secret */ + uint8 secret[NAS_WKSP_MAX_USER_KEY_LEN + 1]; + /* user-supplied wep key */ + uint8 wep[NAS_WKSP_MAX_USER_KEY_LEN + 1]; + /* wep key index */ + int index; + /* run time flags */ + uint32 flags; + /* wl unit # */ + int unit; + /* back pointer */ + struct nas_wksp *nwksp; +} nas_wpa_cb_t; + +/* nas work space */ +typedef struct nas_wksp +{ + /* packet buffer for reading socket */ + uint8 packet[RADIUS_MAX_LEN]; + /* file dscc set for select() */ + fd_set fdset; + int fdmax; + /* receive/send eapol/bcmevent/preauth type packets to eapd */ + int eapd; + /* timer module id */ + bcm_timer_module_id timer; + /* run time flags */ + uint32 flags; + /* # of i/f (in/out) */ + int nwcbs; + /* nas_wpa_cb_t list */ + nas_wpa_cb_t *nwcb[NAS_WKSP_MAX_NUM_INTERFACES]; +} nas_wksp_t; + +typedef enum { + NAS_WKSP_NWCB_SEARCH_ONLY = 0, + NAS_WKSP_NWCB_SEARCH_ENTER +} nwcb_lookup_mode_t; + +#ifdef NAS_WKSP_ON_DEMAND +#define NAS_WKSP_NWCB_AUTO NAS_WKSP_NWCB_SEARCH_ENTER +#define NAS_WKSP_ADD_NWCB(nwksp, mac, osifname) nas_wksp_add_nwcb(nwksp, mac, osifname) +#else +#define NAS_WKSP_NWCB_AUTO NAS_WKSP_NWCB_SEARCH_ONLY +#define NAS_WKSP_ADD_NWCB(nwksp, mac, osifname) (NULL) +#endif /* #ifdef NAS_WKSP_ON_DEMAND */ + + +#ifdef __cplusplus +extern "C" { +#endif + +/* Common */ +void nas_wksp_display_usage(void); +int nas_wksp_parse_cmd(int argc, char *argv[], nas_wksp_t *nwksp); +nas_wksp_t *nas_wksp_alloc_workspace(void); +void nas_wksp_free_workspace(nas_wksp_t *nwksp); +nas_wpa_cb_t *nas_wksp_find_nwcb(nas_wksp_t *nwksp, uint8 *mac, char *osifname, int mode); +int nas_wksp_init(nas_wksp_t *nwksp); +void nas_wksp_cleanup(nas_wksp_t *nwksp); +int nas_wksp_main_loop(nas_wksp_t *nwksp); +void nas_wksp_dispatch_packet(nas_wksp_t *rootnwksp); +void nas_wksp_clear_inited(void); +int nas_wksp_is_inited(void); + + +/* Socket specific */ +int nas_wksp_open_eapd(nas_wksp_t *rootnwksp); +void nas_wksp_close_eapd(nas_wksp_t *rootnwksp); + +int nas_validate_wlpvt_message(int bytes, uint8 *pkt); +int nas_handle_wlpvt_messages(nas_wpa_cb_t *nwcb, void *dpkt, int bytes); +void nas_eapol_message_dispatch(nas_wpa_cb_t *nwcb, void *eapol, int bytes); + +/* OS dependent */ +int nas_safe_get_conf(char *outval, int outval_size, char *name); + + +#ifdef __cplusplus +} +#endif + +#endif /* ifndef __NAS_WKSP_H__ */ diff --git a/release/src-rt/wl/nas/nas_wksp_radius.c b/release/src-rt/wl/nas/nas_wksp_radius.c new file mode 100644 index 0000000000..f8a88324a0 --- /dev/null +++ b/release/src-rt/wl/nas/nas_wksp_radius.c @@ -0,0 +1,155 @@ +/* + * Radius support for NAS workspace + * Copyright (C) 2010, Broadcom Corporation + * All Rights Reserved. + * + * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation; + * the contents of this file may not be disclosed to third parties, copied + * or duplicated in any form, in whole or in part, without the prior + * written permission of Broadcom Corporation. + * $Id: nas_wksp_radius.c 241388 2011-02-18 03:33:22Z stakita $ + */ + +#include +#include +#include +#include +#include + +#include "nas.h" +#include "nas_wksp.h" +#include "nas_radius.h" +#include "nas_wksp_radius.h" + +#ifdef NAS_WKSP_BUILD_NAS_AUTH +/* +* Common NAS communication routines that can be used under different +* OSs. These functions need to be re-implemented only when the socket +* layer interface provided for the specific operating system is not +* the similiar kind to that in this implementation. +*/ +#define NAS_WKSP_RADIUS_TRIES 5 +#define NAS_WKSP_RADIUS_SLEEP 5 /* in seconds */ + +/* establish connection to radius server */ +int +nas_radius_open(nas_wksp_t *nwksp, nas_wpa_cb_t *nwcb) +{ + nas_t *nas = &nwcb->nas; + int n, i; + + /* + * Prevent a descriptor leak in case the connection was broken by + * the server and some one tries to re-establish the connection + * with the server. + */ + if (nas->wan != NAS_WKSP_UNK_FILE_DESC) { + NASDBG("%s: close radius socket %d\n", nas->interface, nas->wan); + close(nas->wan); + nas->wan = NAS_WKSP_UNK_FILE_DESC; + } + + /* Connect to server */ + if ((nas->wan = socket(PF_INET, SOCK_DGRAM, IPPROTO_UDP)) < 0) { + NASDBG("%s: Unable to create radius socket\n", nas->interface); + goto exit0; + } + + /* Give the RADIUS server a little time in case it's on + * the WAN. It could be opened on demand later, but it's + * good to get an open descriptor now if possible. + */ + for (i = 0; i < NAS_WKSP_RADIUS_TRIES; i ++) { + if (connect(nas->wan, (struct sockaddr *)&nas->server, sizeof(nas->server)) < 0) { + NASDBG("%s: Unable to connect radius socket %d\n", nas->interface, + nas->wan); + nas_sleep_ms(NAS_WKSP_RADIUS_SLEEP*1000); + continue; + } + n = sizeof(nas->client); + getsockname(nas->wan, (struct sockaddr *)&nas->client, (socklen_t *)&n); + NASDBG("%s: opened radius socket %d\n", nas->interface, nas->wan); + return 0; + } + + /* It should never come to here - error! */ + close(nas->wan); +exit0: + NASDBG("%s: failed to open radius socket\n", nas->interface); + nas->wan = NAS_WKSP_UNK_FILE_DESC; + return errno; +} + +/* close the connection to radius server */ +void +nas_radius_close(nas_wksp_t *nwksp, nas_wpa_cb_t *nwcb) +{ + nas_t *nas = &nwcb->nas; + if (nas->wan != NAS_WKSP_UNK_FILE_DESC) { + NASDBG("%s: close radius socket %d\n", nas->interface, nas->wan); + close(nas->wan); + nas->wan = NAS_WKSP_UNK_FILE_DESC; + } +} + +/* establish connection to radius server for each interface */ +int +nas_wksp_open_radius(nas_wksp_t *nwksp) +{ + nas_wpa_cb_t *nwcb; + int i; + + for (i = 0; i < nwksp->nwcbs; i ++) { + nwcb = nwksp->nwcb[i]; + assert(nwcb); + /* open connection to radius server */ + if (CHECK_RADIUS(nwcb->nas.mode)) { + /* open connection to radius server */ + nas_radius_open(nwksp, nwcb); + } + } + return 0; +} + +/* close connection to radius server for each interface */ +void +nas_wksp_close_radius(nas_wksp_t *nwksp) +{ + nas_wpa_cb_t *nwcb; + int i; + + for (i = 0; i < nwksp->nwcbs; i ++) { + nwcb = nwksp->nwcb[i]; + assert(nwcb); + if (CHECK_RADIUS(nwcb->nas.mode)) { + nas_radius_close(nwksp, nwcb); + } + } +} + +/* send radius packet to radius server */ +int +nas_radius_send_packet(nas_t *nas, radius_header_t *radius, int length) +{ + int ret; + nas_wpa_cb_t *nwcb = (nas_wpa_cb_t *)nas->appl; + NASDBG("%s: sending packet to radius socket %d\n", nas->interface, nas->wan); + if ((ret = send(nas->wan, (char *)radius, length, 0)) < 0) { + NASDBG("%s: send error %d to radius socket %d\n", nas->interface, errno, nas->wan); + /* Try re-opening it once before giving up. */ + /* This could happen if the peer has been reset */ + if (errno == EBADF) { + if (!nas_radius_open(nwcb->nwksp, nwcb)) { + NASDBG("%s: resending packet to radius socket %d\n", nas->interface, + nas->wan); + ret = send(nas->wan, (char *)radius, length, 0); + if (ret < 0) + NASDBG("%s: resend error %d to radius socket %d\n", + nas->interface, errno, nas->wan); + } + } + } + return ret; +} + +#endif /* #ifdef NAS_WKSP_BUILD_NAS_AUTH */ diff --git a/release/src-rt/wl/nas/nas_wksp_radius.h b/release/src-rt/wl/nas/nas_wksp_radius.h new file mode 100644 index 0000000000..6b9bd86158 --- /dev/null +++ b/release/src-rt/wl/nas/nas_wksp_radius.h @@ -0,0 +1,43 @@ +/* + * Radius support for NAS workspace + * Copyright (C) 2010, Broadcom Corporation + * All Rights Reserved. + * + * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation; + * the contents of this file may not be disclosed to third parties, copied + * or duplicated in any form, in whole or in part, without the prior + * written permission of Broadcom Corporation. + * $Id: nas_wksp_radius.h 241388 2011-02-18 03:33:22Z stakita $: + */ + +#ifndef _NAS_WKSP_RADIUS_H_ +#define _NAS_WKSP_RADIUS_H_ + +#ifdef NAS_RADIUS +/* open connection to receive radius messages */ +extern int nas_wksp_open_radius(nas_wksp_t *nwksp); +extern void nas_wksp_close_radius(nas_wksp_t *nwksp); + +extern int nas_radius_open(nas_wksp_t *nwksp, nas_wpa_cb_t *nwcb); +extern void nas_radius_close(nas_wksp_t *nwksp, nas_wpa_cb_t *nwcb); + +extern int nas_radius_send_packet(nas_t *nas, radius_header_t *radius, int length); + +#define NAS_WKSP_OPEN_RADIUS(wksp) nas_wksp_open_radius(wksp) +#define NAS_WKSP_CLOSE_RADIUS(wksp) nas_wksp_close_radius(wksp) + +#define NAS_RADIUS_OPEN(nwksp, nwcb) nas_radius_open(nwksp, nwcb) +#define NAS_RADIUS_CLOSE(nwksp, nwcb) nas_radius_close(nwksp, nwcb) + +#define NAS_RADIUS_SEND_PACKET(nas, radius, length) nas_radius_send_packet(nas, radius, length) +#else +#define NAS_WKSP_OPEN_RADIUS(wksp) (-1) +#define NAS_WKSP_CLOSE_RADIUS(wksp) + +#define NAS_RADIUS_OPEN(nwksp, nwcb) (-1) +#define NAS_RADIUS_CLOSE(nwksp, nwcb) + +#define NAS_RADIUS_SEND_PACKET(nas, radius, length) (-1) +#endif /* NAS_RADIUS */ + +#endif /* !defined(_NAS_WKSP_RADIUS_H_) */ diff --git a/release/src-rt/wl/nas/nas_wl.c b/release/src-rt/wl/nas/nas_wl.c new file mode 100644 index 0000000000..abd93941b8 --- /dev/null +++ b/release/src-rt/wl/nas/nas_wl.c @@ -0,0 +1,208 @@ +/* + * Broadcom 802.11 device interface + * + * Copyright (C) 2010, Broadcom Corporation + * All Rights Reserved. + * + * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation; + * the contents of this file may not be disclosed to third parties, copied + * or duplicated in any form, in whole or in part, without the prior + * written permission of Broadcom Corporation. + * + * $Id: nas_wl.c 248185 2011-03-23 06:37:49Z simonk $ + */ + +#include +#include +#include + +#include +#include +#include + +#include + +int +nas_authorize(nas_t *nas, struct ether_addr *ea) +{ + return wl_ioctl(nas->interface, WLC_SCB_AUTHORIZE, ea, ETHER_ADDR_LEN); +} + +int +nas_deauthorize(nas_t *nas, struct ether_addr *ea) +{ + return wl_ioctl(nas->interface, WLC_SCB_DEAUTHORIZE, ea, ETHER_ADDR_LEN); +} + +int +nas_deauthenticate(nas_t *nas, struct ether_addr *ea, int reason) +{ + scb_val_t scb_val; + + /* remove the key if one is installed */ + nas_set_key(nas, ea, NULL, 0, 0, 0, 0, 0); + scb_val.val = (uint32) reason; + memcpy(&scb_val.ea, ea, ETHER_ADDR_LEN); + return wl_ioctl(nas->interface, WLC_SCB_DEAUTHENTICATE_FOR_REASON, + &scb_val, sizeof(scb_val)); +} + +int +nas_get_group_rsc(nas_t *nas, uint8 *buf, int index) +{ + union { + int index; + uint8 rsc[EAPOL_WPA_KEY_RSC_LEN]; + } u; + + u.index = index; + if (wl_ioctl(nas->interface, WLC_GET_KEY_SEQ, &u, sizeof(u)) != 0) + return -1; + + bcopy(u.rsc, buf, EAPOL_WPA_KEY_RSC_LEN); + + return 0; +} + +int +nas_set_key(nas_t *nas, struct ether_addr *ea, uint8 *key, int len, int index, + int tx, uint32 hi, uint16 lo) +{ + wl_wsec_key_t wep; +#ifdef BCMDBG + char eabuf[ETHER_ADDR_STR_LEN]; +#endif + char ki[] = "index XXXXXXXXXXX"; + + memset(&wep, 0, sizeof(wep)); + wep.index = index; + if (ea) + memcpy(&wep.ea, ea, ETHER_ADDR_LEN); + else { + wep.flags = tx ? WL_PRIMARY_KEY : 0; + snprintf(ki, sizeof(ki), "index %d", index); + } + + wep.len = len; + if (len) + memcpy(wep.data, key, MIN(len, DOT11_MAX_KEY_SIZE)); + dbg(nas, "%s, flags %x, len %d", + ea ? (char *)ether_etoa((uchar *)ea, eabuf) : ki, + wep.flags, wep.len); + if (lo || hi) { + wep.rxiv.hi = hi; + wep.rxiv.lo = lo; + wep.iv_initialized = 1; + } + return wl_ioctl(nas->interface, WLC_SET_KEY, &wep, sizeof(wep)); +} + +int +nas_wl_tkip_countermeasures(nas_t *nas, int enable) +{ + return wl_ioctl(nas->interface, WLC_TKIP_COUNTERMEASURES, &enable, sizeof(int)); +} + +int +nas_set_ssid(nas_t *nas, char *ssid) +{ + wlc_ssid_t wl_ssid; + + strncpy((char *)wl_ssid.SSID, ssid, sizeof(wl_ssid.SSID)); + wl_ssid.SSID_len = strlen(ssid); + return wl_ioctl(nas->interface, WLC_SET_SSID, &wl_ssid, sizeof(wl_ssid)); +} + +int +nas_disassoc(nas_t *nas) +{ + return wl_ioctl(nas->interface, WLC_DISASSOC, NULL, 0); +} + +/* get WPA capabilities */ +int +nas_get_wpacap(nas_t *nas, uint8 *cap) +{ + int err; + int cap_val; + + err = wl_iovar_getint(nas->interface, "wpa_cap", &cap_val); + if (!err) { + cap[0] = (cap_val & 0xff); + cap[1] = ((cap_val >> 8) & 0xff); + } + + return err; +} + +/* get STA info */ +int +nas_get_stainfo(nas_t *nas, char *macaddr, int len, char *ret_buf, int ret_buf_len) +{ + char *tmp_ptr; + + tmp_ptr = ret_buf; + strcpy(ret_buf, "sta_info"); + tmp_ptr += strlen(ret_buf); + tmp_ptr++; + memcpy(tmp_ptr, macaddr, len); + + return wl_ioctl(nas->interface, WLC_GET_VAR, ret_buf, ret_buf_len); +} + +int +nas_get_wpa_ie(nas_t *nas, char *ret_buf, int ret_buf_len, uint32 sta_mode) +{ + int err, wpa_len = 0, ie_len = 0; + char buf[WLC_IOCTL_SMLEN]; + bcm_tlv_t *ie_getbuf; + char *buf_ptr; + int i; + + if (ret_buf == NULL) + return 0; + + memset(buf, 0, sizeof(buf)); + + err = wl_iovar_getbuf(nas->interface, "wpaie", &nas->ea, 6, buf, sizeof(buf)); + if (err != 0) + return 0; + + buf_ptr = buf; + for (i = 0; i < 2; i++) { + ie_getbuf = (bcm_tlv_t *)buf_ptr; + wpa_len = ie_getbuf->len; + if (wpa_len == 0) + break; + + if (ie_getbuf->id == DOT11_MNG_RSN_ID) { + dbg(nas, "found RSN IE of length %d\n", wpa_len); + if (sta_mode == WPA || sta_mode == WPA_PSK) { + buf_ptr += wpa_len + TLV_HDR_LEN; + continue; + } + } + else if (ie_getbuf->id != DOT11_MNG_RSN_ID) { + dbg(nas, "found WPA IE of length %d\n", wpa_len); + if (sta_mode == WPA2 || sta_mode == WPA2_PSK) { + buf_ptr += wpa_len + TLV_HDR_LEN; + continue; + } + } + + ie_len = wpa_len + TLV_HDR_LEN; + /* Got WPA ie */ + if (ie_len <= ret_buf_len) { + memcpy(ret_buf, buf_ptr, wpa_len + TLV_HDR_LEN); + printf("return %d bytes ie\n", ie_len); + return ie_len; + } + else { + dbg(nas, "Not enough buffer (%d) to copy %d bytes wpa ie\n", + ret_buf_len, ie_len); + return 0; + } + } + + return 0; +} diff --git a/release/src-rt/wl/nas/radius.h b/release/src-rt/wl/nas/radius.h new file mode 100644 index 0000000000..f7a4d4a02b --- /dev/null +++ b/release/src-rt/wl/nas/radius.h @@ -0,0 +1,182 @@ +/* + * Remote Authentication Dial In User Service (RADIUS) definitions + * + * See RFCs 2865 and 2869 + * + * Copyright (C) 2010, Broadcom Corporation + * All Rights Reserved. + * + * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation; + * the contents of this file may not be disclosed to third parties, copied + * or duplicated in any form, in whole or in part, without the prior + * written permission of Broadcom Corporation. + * + * $Id: radius.h 241388 2011-02-18 03:33:22Z stakita $ + */ + +#ifndef _radius_h_ +#define _radius_h_ + +/* RADIUS packet format */ +typedef struct { + unsigned char code; /* RADIUS code */ + unsigned char id; /* RADIUS Packet identifier */ + unsigned short length; /* Length including header */ + unsigned char vector[16]; /* Request/response authenticator */ + unsigned char attributes[1]; /* Attribute value pairs (optional) */ +} radius_header_t; + +#define RADIUS_HEADER_LEN 20 +#define RADIUS_MAX_LEN 4096 +#define RADIUS_MAX_ATTRIBUTES ((RADIUS_MAX_LEN - RADIUS_HEADER_LEN) / 255 + 1) + +/* RADIUS codes */ +#define RADIUS_ACCESS_REQUEST 1 +#define RADIUS_ACCESS_ACCEPT 2 +#define RADIUS_ACCESS_REJECT 3 +#define RADIUS_ACCOUNTING_REQUEST 4 +#define RADIUS_ACCOUNTING_RESPONSE 5 +#define RADIUS_ACCESS_CHALLENGE 11 +#define RADIUS_STATUS_SERVER 12 +#define RADIUS_STATUS_CLIENT 13 +#define RADIUS_RESERVED 255 + +/* RADIUS attributes */ +#define RD_TP_USER_NAME 1 +#define RD_TP_USER_PASSWORD 2 +#define RD_TP_CHAP_PASSWORD 3 +#define RD_TP_NAS_IP_ADDRESS 4 +#define RD_TP_NAS_PORT 5 +#define RD_TP_SERVICE_TYPE 6 +#define RD_TP_FRAMED_PROTOCOL 7 +#define RD_TP_FRAMED_IP_ADDRESS 8 +#define RD_TP_FRAMED_IP_NETMASK 9 +#define RD_TP_FRAMED_ROUTING 10 +#define RD_TP_FILTER_ID 11 +#define RD_TP_FRAMED_MTU 12 +#define RD_TP_FRAMED_COMPRESSION 13 +#define RD_TP_LOGIN_IP_HOST 14 +#define RD_TP_LOGIN_SERVICE 15 +#define RD_TP_LOGIN_TCP_PORT 16 +#define RD_TP_UNASSIGNED 17 +#define RD_TP_REPLY_MESSAGE 18 +#define RD_TP_CALLBACK_NUMBER 19 +#define RD_TP_CALLBACK_ID 20 +#define RD_TP_UNASSIGNED2 21 +#define RD_TP_FRAMED_ROUTE 22 +#define RD_TP_FRAMED_IPX_NETWORK 23 +#define RD_TP_STATE 24 +#define RD_TP_CLASS 25 +#define RD_TP_VENDOR_SPECIFIC 26 +#define RD_TP_SESSION_TIMEOUT 27 +#define RD_TP_IDLE_TIMEOUT 28 +#define RD_TP_TERMINATING_ACTION 29 +#define RD_TP_CALLED_STATION_ID 30 +#define RD_TP_CALLING_STATION_ID 31 +#define RD_TP_NAS_IDENTIFIER 32 +#define RD_TP_PROXY_STATE 33 +#define RD_TP_LOGIN_LAT_SERVICE 34 +#define RD_TP_LOGIN_LAT_NODE 35 +#define RD_TP_LOGIN_LAT_GROUP 36 +#define RD_TP_FRAMED_APPLETALK_LINK 37 +#define RD_TP_FRAMED_APPLETALK_NETWORK 38 +#define RD_TP_FRAMED_APPLETALK_ZONE 39 +#define RD_TP_ACCT_STATUS_TYPE 40 +#define RD_TP_ACCT_DELAY_TIME 41 +#define RD_TP_ACCT_INPUT_OCTETS 42 +#define RD_TP_ACCT_OUTPUT_OCTETS 43 +#define RD_TP_ACCT_SESSION_ID 44 +#define RD_TP_ACCT_AUTHENTIC 45 +#define RD_TP_ACCT_SESSION_TIME 46 +#define RD_TP_ACCT_INPUT_PACKETS 47 +#define RD_TP_ACCT_OUTPUT_PACKETS 48 +#define RD_TP_ACCT_TERMINATE_CAUSE 49 +#define RD_TP_ACCT_MULTI_SESSION_ID 50 +#define RD_TP_ACCT_LINK_COUNT 51 +#define RD_TP_ACCT_INPUT_GIGAWORDS 52 +#define RD_TP_ACCT_OUTPUT_GIGAWORDS 53 +/* 54 Unused */ +#define RD_TP_EVENT_TIMESTAMP 55 +/* 56-59 Unused */ +#define RD_TP_CHAP_CHALLENGE 60 +#define RD_TP_NAS_PORT_TYPE 61 +#define RD_TP_PORT_LIMIT 62 +#define RD_TP_LOGIN_LAT_PORT 63 +#define RD_TP_TUNNEL_TYPE 64 +#define RD_TP_TUNNEL_MEDIUM_TYPE 65 +#define RD_TP_TUNNEL_CLIENT_ENDPOINT 66 +#define RD_TP_TUNNEL_SERVER_ENDPOINT 67 +#define RD_TP_TUNNEL_CONNECTION 68 +#define RD_TP_TUNNEL_PASSWORD 69 +#define RD_TP_ARAP_PASSWORD 70 +#define RD_TP_ARAP_FEATURES 71 +#define RD_TP_ARAP_ZONE_ACCESS 72 +#define RD_TP_ARAP_SECURITY 73 +#define RD_TP_ARAP_SECURITY_DATA 74 +#define RD_TP_PASSWORD_RETRY 75 +#define RD_TP_PROMPT 76 +#define RD_TP_CONNECT_INFO 77 +#define RD_TP_CONFIGURATION_TOKEN 78 +#define RD_TP_EAP_MESSAGE 79 +#define RD_TP_MESSAGE_AUTHENTICATOR 80 +#define RD_TP_TUNNEL_PRIVATE_GROUP_ID 81 +#define RD_TP_TUNNEL_ASSIGNMENT_ID 82 +#define RD_TP_TUNNEL_TUNNEL_PREFERENCE 83 +#define RD_TP_TUNNEL_PACKETS_LOST 86 +#define RD_TP_NAS_PORT_ID 87 +#define RD_TP_TUNNEL_CLIENT_AUTH_ID 90 +#define RD_TP_TUNNEL_SERVER_AUTH_ID 91 +#define RD_TP_ASCEND_MODEM_PORTNO 120 +#define RD_TP_ASCEND_MODEM_SLOTNO 121 +#define RD_TP_ASCEND_MULTILINK_ID 187 +#define RD_TP_ASCEND_NUM_IN_MULTILINK 188 +#define RD_TP_ASCEND_FIRST_DEST 189 +#define RD_TP_ASCEND_PRE_INPUT_OCTETS 190 +#define RD_TP_ASCEND_PRE_OUTPUT_OCTETS 191 +#define RD_TP_ASCEND_PRE_INPUT_PACKETS 192 +#define RD_TP_ASCEND_PRE_OUTPUT_PACKETS 193 +#define RD_TP_ASCEND_MAXIMUM_TIME 194 +#define RD_TP_ASCEND_DISCONNECT_CAUSE 195 +#define RD_TP_ASCEND_CONNECT_PROGRESS 196 +#define RD_TP_ASCEND_DATA_RATE 197 +#define RD_TP_ASCEND_PRESESSION_TIME 198 +#define RD_TP_ASCEND_ASSIGN_IP_POOL 218 +#define RD_TP_ASCEND_XMIT_RATE 255 + +/* RADIUS vendors */ +#define RD_VENDOR_ACC 5 +#define RD_VENDOR_CISCO 9 +#define RD_VENDOR_SHIVA 166 +#define RD_VENDOR_LIVINGSTON 307 +#define RD_VENDOR_MICROSOFT 311 +#define RD_VENDOR_3COM 429 +#define RD_VENDOR_ASCEND 529 +#define RD_VENDOR_BAY 1584 +#define RD_VENDOR_FOUNDRY 1991 +#define RD_VENDOR_VERSANET 2180 +#define RD_VENDOR_REDBACK 2352 +#define RD_VENDOR_JUNIPER 2636 +#define RD_VENDOR_APTIS 2637 +#define RD_VENDOR_COSINE 3085 +#define RD_VENDOR_SHASTA 3199 +#define RD_VENDOR_NOMADIX 3309 +#define RD_VENDOR_UNISPHERE 4874 +#define RD_VENDOR_ISSANNI 5948 +#define RD_VENDOR_QUINTUM 6618 +#define RD_VENDOR_COLUBRIS 8744 +#define RD_VENDOR_COLUMBIA_UNIVERSITY 11862 + +/* Microsoft vendor-specific RADIUS attributes */ +#define RD_MS_MPPE_POLICY 7 +#define RD_MS_MPPE_TYPE 8 +#define RD_MS_MPPE_SEND 16 +#define RD_MS_MPPE_RECV 17 + + +/* RADIUS UDP port */ +#define RADIUS_PORT 1812 + +/* NAS-Port-Type */ +#define NAS_PORT_TYPE_WIRELESS_IEEE80211 19 + +#endif /* _radius_h_ */ diff --git a/release/src-rt/wl/nas/unix.c b/release/src-rt/wl/nas/unix.c new file mode 100644 index 0000000000..a966bab9f8 --- /dev/null +++ b/release/src-rt/wl/nas/unix.c @@ -0,0 +1,89 @@ +/* + * Unix support routines + * + * Copyright (C) 2010, Broadcom Corporation + * All Rights Reserved. + * + * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation; + * the contents of this file may not be disclosed to third parties, copied + * or duplicated in any form, in whole or in part, without the prior + * written permission of Broadcom Corporation. + * + * $Id: unix.c 241388 2011-02-18 03:33:22Z stakita $ + */ + +#include +#include +#include + +void initopt(void); +int getopt(int argc, char **argv, char *ostr); + +/* ****************************************** */ +/* Some support functionality to match unix */ + +/* get option letter from argument vector */ +int opterr = 1; +int optind = 1; +int optopt; /* character checked for validity */ +char *optarg; /* argument associated with option */ + +#define EMSG "" +#define BADCH ('?') + +static char *place = EMSG; /* option letter processing */ + +void initopt(void) +{ + opterr = 1; + optind = 1; + place = EMSG; /* option letter processing */ +} + +int getopt(int argc, char **argv, char *ostr) +{ + register char *oli; /* option letter list index */ + + if (!*place) { + /* update scanning pointer */ + if (optind >= argc || *(place = argv[optind]) != '-' || !*++place) { + return EOF; + } + if (*place == '-') { + /* found "--" */ + ++optind; + return EOF; + } + } + + /* option letter okay? */ + if ((optopt = (int)*place++) == (int)':' || + !(oli = strchr(ostr, optopt))) { + if (!*place) { + ++optind; + } + printf("illegal option"); + return BADCH; + } + if (*++oli != ':') { + /* don't need argument */ + optarg = NULL; + if (!*place) + ++optind; + } else { + /* need an argument */ + if (*place) { + optarg = place; /* no white space */ + } else if (argc <= ++optind) { + /* no arg */ + place = EMSG; + printf("option requires an argument"); + return BADCH; + } else { + optarg = argv[optind]; /* white space */ + } + place = EMSG; + ++optind; + } + return optopt; /* return option letter */ +} diff --git a/release/src-rt/wl/nas/wpa.c b/release/src-rt/wl/nas/wpa.c new file mode 100644 index 0000000000..4093701663 --- /dev/null +++ b/release/src-rt/wl/nas/wpa.c @@ -0,0 +1,3554 @@ +/* + * WPA, WiFi Protected Access + * + * Copyright (C) 2002, 2003 Broadcom Corporation + * + * $Id: wpa.c 278326 2011-08-18 15:10:40Z palter $ + */ + +#include +#include +#include +#include +#include + +#include +#include +#include + +#include +#include +#include +#include +#include +#include +#include +#include +#ifdef MFP +#include +#include +#endif + +#include +#include + +#ifdef __ECOS +#define timer_t int +#endif + +#ifdef BCMWPA2 +#define CHECK_WPA2(mode) ((mode) & (WPA2 | WPA2_PSK)) +#else +#define CHECK_WPA2(mode) FALSE +#endif + +#define MAX_ARRAY 1 +#define MIN_ARRAY 0 + +/* mapping from WEP key length to CRYPTO_ALGO_WEPXXX */ +#define WEP_KEY2ALGO(len) ((len) == WEP1_KEY_SIZE ? CRYPTO_ALGO_WEP1 : \ + (len) == WEP128_KEY_SIZE ? CRYPTO_ALGO_WEP128 : \ + CRYPTO_ALGO_OFF) +/* mapping from WPA_CIPHER_XXXX to CRYPTO_ALGO_XXXX */ +#define WPA_CIPHER2ALGO(cipher) ((cipher) == WPA_CIPHER_WEP_40 ? CRYPTO_ALGO_WEP1 : \ + (cipher) == WPA_CIPHER_WEP_104 ? CRYPTO_ALGO_WEP128 : \ + (cipher) == WPA_CIPHER_TKIP ? CRYPTO_ALGO_TKIP : \ + (cipher) == WPA_CIPHER_AES_CCM ? CRYPTO_ALGO_AES_CCM : \ + CRYPTO_ALGO_OFF) +#define CRYPTO_ALGO2CIPHER(algo) ((algo) == CRYPTO_ALGO_WEP1 ? WPA_CIPHER_WEP_40 : \ + (algo) == CRYPTO_ALGO_WEP128 ? WPA_CIPHER_WEP_104 : \ + (algo) == CRYPTO_ALGO_TKIP ? WPA_CIPHER_TKIP : \ + (algo) == CRYPTO_ALGO_AES_CCM ? WPA_CIPHER_AES_CCM : \ + WPA_CIPHER_NONE) +/* mapping from WPA_CIPHER_XXXX to wsec */ +#define WPA_CIPHER2WSEC(cipher) ((cipher) == WPA_CIPHER_WEP_40 ? WEP_ENABLED : \ + (cipher) == WPA_CIPHER_WEP_104 ? WEP_ENABLED : \ + (cipher) == WPA_CIPHER_TKIP ? TKIP_ENABLED : \ + (cipher) == WPA_CIPHER_AES_CCM ? AES_ENABLED : \ + 0) +/* PRF() expects to write its result sloppily. */ +#define PRF_RESULT_LEN 80 +#include + +static void wpa_calc_ptk(wpa_t *wpa, nas_sta_t *sta); +static void wpa_gen_gtk(wpa_t *wpa, nas_sta_t *sta); +static void wpa_plumb_gtk(wpa_t *wpa, int primary); +static bool wpa_encr_gtk(wpa_t *wpa, nas_sta_t *ssta, uint8 *encrypted, uint16 *encrypted_len); +#ifdef BCMSUPPL +static bool wpa_decr_gtk(wpa_t *wpa, nas_sta_t *sta, eapol_wpa_key_header_t *body); +#endif /* ifdef BCMSUPPL */ +#ifdef BCMWPA2 +static bool wpa_insert_pmkid(wpa_t *wpa, nas_sta_t *sta, eapol_header_t *eapol, uint16 *data_len); +static bool wpa_insert_gtk(wpa_t *wpa, nas_sta_t *sta, eapol_header_t *eapol, uint16 *data_len); +static bool wpa_encr_key_data(wpa_t *wpa, nas_sta_t *sta, uint8 *buffer, uint16 *data_len); +#ifdef BCMSUPPL +static bool wpa_extract_gtk(wpa_t *wpa, nas_sta_t *sta, eapol_header_t *eapol); +static bool wpa_decr_key_data(wpa_t *wpa, nas_sta_t *sta, eapol_wpa_key_header_t *body); +#endif /* ifdef BCMSUPPL */ +static itimer_status_t wpa_set_timeout(bcm_timer_id td, int secs, int msecs); +#endif /* BCMWPA2 */ +static bool wpa_check_mic(nas_sta_t *sta, eapol_header_t *eapol); +static bool wpa_send_eapol(wpa_t *wpa, nas_sta_t *sta); +static void wpa_incr_gkc(wpa_t *wpa); +static int wpa_verifystart(wpa_t *wpa, nas_sta_t *sta, eapol_header_t *eapol); +static int wpa_ptkstart(wpa_t *wpa, nas_sta_t *sta, eapol_header_t *eapol); +static int wpa_ptkinitnegotiating(wpa_t *wpa, nas_sta_t *sta, eapol_header_t *eapol); +static int wpa_ptkinitdone(wpa_t *wpa, nas_sta_t *sta, eapol_header_t *eapol); +static int wpa_ptkinitdone2(wpa_t *wpa, nas_sta_t *sta); +static void wpa_rekeyneg(wpa_t *wpa, nas_sta_t *sta, eapol_header_t *eapol); +static void wpa_setkeysdone(wpa_t *wpa, nas_sta_t *sta, eapol_header_t *eapol); +static void wpa_retransmission(bcm_timer_id td, nas_sta_t *sta); +static void wpa_new_gtk_callback(bcm_timer_id td, wpa_t *wpa); +extern int nas_get_stainfo(nas_t *nas, char *macaddr, int len, char *ret_buf, int ret_buf_len); + +#ifdef MFP +#define MFP2 1 +static void wpa_gen_igtk(wpa_t *wpa); +static void wpa_initialize_ipn(wpa_t *wpa); +#endif + +/* Definitions for interval timer periods */ +#define RETRY_SECS 1 +#define RETRY_MSECS 0 +#define NSECS_PER_MSEC 1000*1000 + +/* local prototypes */ +static int wpa_find_mckey_algo(wpa_t *wpa, uint8 *ie, int ie_len); +static int wpa_new_ptk_callback(bcm_timer_id td, wpa_t *wpa); + +/* Toggle GTK index. Indices 1 - 3 are usable; spec recommends 1 and 2. */ +#define GTK_NEXT_INDEX(wpa) ((wpa)->gtk_index == GTK_INDEX_1 ? GTK_INDEX_2 : GTK_INDEX_1) +/* Toggle GTK index. Indices 1 - 3 are usable; spec recommends 1 and 2. */ +#define IGTK_NEXT_INDEX(wpa) ((wpa)->igtk.id == IGTK_INDEX_1 ? IGTK_INDEX_2 : IGTK_INDEX_1) + +/* Set an iterval timer. */ +itimer_status_t +wpa_set_itimer(bcm_timer_module_id module, bcm_timer_id *td, + bcm_timer_cb handler, int handler_param, int secs, int msecs) +{ + struct itimerspec timer; + itimer_status_t ret = ITIMER_OK; + + timer.it_interval.tv_sec = secs; + timer.it_interval.tv_nsec = msecs * NSECS_PER_MSEC; + timer.it_value.tv_sec = secs; + timer.it_value.tv_nsec = msecs * NSECS_PER_MSEC; + + if (bcm_timer_create(module, td)) + ret = ITIMER_CREATE_ERROR; + else if (bcm_timer_connect(*td, handler, handler_param)) + ret = ITIMER_CONNECT_ERROR; + else if (bcm_timer_settime(*td, &timer)) + ret = ITIMER_SET_ERROR; + return ret; +} + +#ifdef BCMWPA2 +static itimer_status_t +wpa_set_timeout(bcm_timer_id td, int secs, int msecs) +{ + struct itimerspec timer; + itimer_status_t ret = ITIMER_OK; + + if (msecs >= 1000) { + secs = msecs / 1000; + msecs -= (secs * 1000); + } + timer.it_interval.tv_sec = secs; + timer.it_interval.tv_nsec = msecs * NSECS_PER_MSEC; + timer.it_value.tv_sec = secs; + timer.it_value.tv_nsec = msecs * NSECS_PER_MSEC; + + bcm_timer_change_expirytime(td, &timer); + + return ret; + +} +#endif /* BCMWPA2 */ + +/* remove the retransmission timer if any and do some clean up */ +void +wpa_stop_retx(nas_sta_t *sta) +{ + if (sta->td) + TIMER_DELETE(sta->td); + sta->retx_exceed_hndlr = NULL; +} + +/* ARGSUSED */ +static void +wpa_retransmission(bcm_timer_id td, nas_sta_t *sta) +{ + nas_t *nas = sta->nas; + wpa_suppl_state_t save_state; + int reason; +#ifdef BCMDBG + char eabuf[ETHER_ADDR_STR_LEN]; +#endif +#ifdef BCMWPA2 + int retry_timer; +#endif + + if (sta) + dbg(nas, "start for %s (%d)", + ether_etoa((uchar *)&sta->ea, eabuf), sta->retries + 1); + else { + dbg(nas, "called with NULL sta"); + return; + } + + if (nas->MIC_countermeasures) + /* This can happen very early during countermeasures + * when nothing should go out. Clean-up is elsewhere. + */ + return; + + else if (sta->suppl.state == WPA_SETKEYSDONE || + ((nas->flags & NAS_FLAG_WDS) && sta->suppl.state == WPA_PTKINITDONE)) { + /* Check STA state for race between interval timer firing and + * receipt of response. + */ + wpa_stop_retx(sta); + return; + } + + /* error handling when retry limit is exceeded. */ + if (++sta->retries > WPA_RETRY) { + /* don't toss the sta if it is part of the initiator/requestor */ + if (sta->wds_td) { + /* + * deauth the sta after the first batch retries and + * give it a chance for the second batch retries. + */ + if (sta->retries == WPA_RETRY + 1) { + dbg(nas, "deauthenticating %s", + ether_etoa((uchar *)&sta->ea, eabuf)); + nas_deauthenticate(nas, &sta->ea, DOT11_RC_4WH_TIMEOUT); + } + /* done the second batch retries as well */ + else if (sta->retries == (WPA_RETRY + 1) * 2) { + /* + * done for this time, it is up to the + * initiator/requestor to reschedule the + * next batch of retries. + */ + wpa_stop_retx(sta); + return; + } + /* send eapol message */ + goto xmit; + } + /* Disassoc the supplicant unless there is a handler */ + if (sta->retx_exceed_hndlr) { + sta->retx_exceed_hndlr(sta); + wpa_stop_retx(sta); + return; + } + /* force timeout so that cleanup_sta() can toss the sta for WPA2 */ + sta->pae.ssnto = 0; + /* deauth the sta - also removes any unicast key we have + * for it and deallocates its suppl struct. + */ + reason = DOT11_RC_4WH_TIMEOUT; + if (sta->suppl.retry_state == WPA_REKEYNEGOTIATING) + reason = DOT11_RC_GTK_UPDATE_TIMEOUT; + cleanup_sta(nas, sta, reason, 0); + return; + } + +xmit: /* Send eapol on to the air */ + /* increment the replay counter */ + wpa_incr_array(sta->suppl.replay, REPLAY_LEN); + + save_state = sta->suppl.state; + sta->suppl.state = sta->suppl.retry_state; + if (wpa_send_eapol(nas->wpa, sta) == FALSE) { + wpa_stop_retx(sta); + } +#ifdef BCMWPA2 + if (((sta->mode & WPA2) || (sta->mode & WPA2_PSK))) { + if (sta->td) { + if (sta->retries == 1) + retry_timer = sta->listen_interval_ms / 2; + else + retry_timer = sta->listen_interval_ms; + if (retry_timer > WPA2_DEFAULT_RETRY_MSECS) { + dbg(nas, "setting timeout to %d msec", retry_timer); + wpa_set_timeout(sta->td, 0, retry_timer); + } + } + } +#endif /* BCMWPA2 */ + sta->suppl.state = save_state; + + dbg(nas, "done"); +} + +#ifdef BCMWPA2 +void +nas_wpa_calc_pmkid(wpa_t *wpa, nas_sta_t *sta) +{ + /* PMKID = HMAC-SHA1-128(PMK, "PMK Name" | AA | SPA) */ + uint8 data[128], digest[SHA1HashSize]; + uint8 prefix[] = "PMK Name"; + int data_len = 0; + + /* create the the data portion */ + bcopy(prefix, data, strlen((char *)prefix)); + data_len += strlen((char *)prefix); + bcopy((uint8*)&wpa->nas->ea, &data[data_len], ETHER_ADDR_LEN); + data_len += ETHER_ADDR_LEN; + bcopy((uint8*)&sta->ea, &data[data_len], ETHER_ADDR_LEN); + data_len += ETHER_ADDR_LEN; + + /* generate the pmkid */ + hmac_sha1(data, data_len, sta->suppl.pmk, sta->suppl.pmk_len, digest); + bcopy(digest, sta->suppl.pmkid, WPA2_PMKID_LEN); + + dbg(wpa->nas, "PMKID"); + dump(wpa->nas, sta->suppl.pmkid, WPA2_PMKID_LEN); + + dbg(wpa->nas, "done"); +} +#endif /* BCMWPA2 */ + +static void +wpa_calc_ptk(wpa_t *wpa, nas_sta_t *sta) +{ + unsigned char data[128], prf_buff[PRF_RESULT_LEN]; + unsigned char prefix[] = "Pairwise key expansion"; + int data_len = 0; + uint8 *p; + + /* create the the data portion */ + p = wpa_array_cmp(MIN_ARRAY, (uint8*)&wpa->nas->ea, (uint8*)&sta->ea, ETHER_ADDR_LEN); + bcopy(p ? (char*)p : (char*)&wpa->nas->ea, (char*)&data[data_len], ETHER_ADDR_LEN); + data_len += ETHER_ADDR_LEN; + + p = wpa_array_cmp(MAX_ARRAY, (uint8*)&wpa->nas->ea, (uint8*)&sta->ea, ETHER_ADDR_LEN); + bcopy(p ? (char*)p : (char*)&wpa->nas->ea, (char*)&data[data_len], ETHER_ADDR_LEN); + data_len += ETHER_ADDR_LEN; + + p = wpa_array_cmp(MIN_ARRAY, (uint8*)&sta->suppl.snonce, + (uint8*)&sta->suppl.anonce, NONCE_LEN); + bcopy(p ? (char*)p : (char*)&sta->suppl.snonce, (char*)&data[data_len], NONCE_LEN); + data_len += NONCE_LEN; + + p = wpa_array_cmp(MAX_ARRAY, (uint8*)&sta->suppl.snonce, + (uint8*)&sta->suppl.anonce, NONCE_LEN); + bcopy(p ? (char*)p : (char*)&sta->suppl.snonce, (char*)&data[data_len], NONCE_LEN); + data_len += NONCE_LEN; + + /* generate the ptk */ + if (sta->suppl.ptk_len > TKIP_PTK_LEN) { + err(wpa->nas, "ptk_len = %d", sta->suppl.ptk_len); + nas_handle_error(wpa->nas, 1); + } + + dbg(wpa->nas, "STA : SUPPL PMK \n"); + dump(wpa->nas, sta->suppl.pmk, sta->suppl.pmk_len); +#ifdef MFP + if (sta->key_auth_type == KEYAUTH_SHA256) { + KDF(sta->suppl.pmk, sta->suppl.pmk_len, prefix, strlen((char *)prefix), + data, data_len, prf_buff, sta->suppl.ptk_len); + dbg(wpa->nas, "ptk with kdf SH256 \n"); + } + else +#endif + { + fPRF(sta->suppl.pmk, sta->suppl.pmk_len, prefix, strlen((char *)prefix), + data, data_len, prf_buff, sta->suppl.ptk_len); + dbg(wpa->nas, "ptk with kdf SHA1 \n"); + } + + memcpy(sta->suppl.eapol_mic_key, prf_buff, sta->suppl.ptk_len); + dbg(wpa->nas, "done"); +} + +static void +wpa_gen_gtk(wpa_t *wpa, nas_sta_t *sta) +{ + unsigned char data[256], prf_buff[PRF_RESULT_LEN]; + unsigned char prefix[] = "Group key expansion"; + int data_len = 0; + + /* Select a mcast cipher */ + dbg(wpa->nas, "wpa->nas->wsec 0x%x", wpa->nas->wsec); + switch (WPA_MCAST_CIPHER(wpa->nas->wsec, WEP_KEY2ALGO(wpa->gtk_len))) { + case WPA_CIPHER_TKIP: + dbg(wpa->nas, "TKIP"); + wpa->gtk_len = TKIP_TK_LEN; + break; + case WPA_CIPHER_AES_CCM: + dbg(wpa->nas, "AES"); + wpa->gtk_len = AES_TK_LEN; + break; + default: + dbg(wpa->nas, "not supported multicast cipher"); + return; + } + dbg(wpa->nas, "gtk_len %d", wpa->gtk_len); + + /* create the the data portion */ + bcopy((char*)&wpa->nas->ea, (char*)&data[data_len], ETHER_ADDR_LEN); + data_len += ETHER_ADDR_LEN; + bcopy(wpa->global_key_counter, wpa->gnonce, NONCE_LEN); + wpa_incr_gkc(wpa); + bcopy((char*)&wpa->gnonce, (char*)&data[data_len], NONCE_LEN); + data_len += NONCE_LEN; + + /* generate the GTK */ + fPRF(wpa->gmk, sizeof(wpa->gmk), prefix, strlen((char *)prefix), + data, data_len, prf_buff, wpa->gtk_len); + memcpy(wpa->gtk, prf_buff, wpa->gtk_len); + + /* The driver clears the IV when it gets a new key, so + * clearing RSC should be consistent with that, right? + */ + memset(wpa->gtk_rsc, 0, sizeof(wpa->gtk_rsc)); + + dbg(wpa->nas, "done"); +} + +static void +wpa_plumb_gtk(wpa_t *wpa, int primary) +{ + /* install the key */ + if (nas_set_key(wpa->nas, NULL, wpa->gtk, wpa->gtk_len, + wpa->gtk_index, primary, 0, 0) < 0) { + err(wpa->nas, "invalid multicast key"); + nas_handle_error(wpa->nas, 1); + } + wpa->nas->flags |= NAS_FLAG_GTK_PLUMBED; + dbg(wpa->nas, "done"); +} + +static void +wpa_set_gtk_timer(wpa_t *wpa) +{ + itimer_status_t ts; + + dbg(wpa->nas, "start, rekey timer = %d", wpa->gtk_rekey_secs); + if (wpa->gtk_rekey_secs) { + /* Set up an interval timer to invoke the rekey function. */ + ts = wpa_set_itimer(wpa->nas->timer, &wpa->gtk_rekey_timer, + (bcm_timer_cb)wpa_new_gtk_callback, + (int)wpa, wpa->gtk_rekey_secs, 0); + if (ts != ITIMER_OK) + dbg(wpa->nas, "GTK interval timer set failed, code %d", ts); + } + dbg(wpa->nas, "done"); +} + + +/* The timer call-back expects to pass a timer descriptor, but there's + * no use for it here. + */ +/* ARGSUSED */ +static void +wpa_new_gtk_callback(bcm_timer_id td, wpa_t *wpa) +{ + int did_one = 0; + nas_t *nas = wpa->nas; + nas_sta_t *sta = nas->sta; + itimer_status_t ts; + + dbg(nas, "start"); + + do { + /* Only a supplicant in the state of having keys + * already should be of interest for this purpose. + */ + if ((sta->used == 0) || (sta->suppl.state != WPA_SETKEYSDONE)) + continue; + + /* Found one, so cobble a new key. */ + if (!did_one) { + wpa_gen_gtk(wpa, sta); + wpa->gtk_index = GTK_NEXT_INDEX(wpa); + wpa_plumb_gtk(wpa, 0); +#ifdef MFP2 + wpa_gen_igtk(wpa); + wpa->igtk.id = IGTK_NEXT_INDEX(wpa); +#endif + did_one = 1; + } + /* Set state wpa_send_eapol uses for the group key message. */ + sta->suppl.retry_state = sta->suppl.state = WPA_REKEYNEGOTIATING; + sta->retries = 0; + wpa_stop_retx(sta); + wpa_incr_array(sta->suppl.replay, REPLAY_LEN); + + if (wpa_send_eapol(wpa, sta) == FALSE) { + cleanup_sta(nas, sta, DOT11_RC_UNSPECIFIED, 0); + + /* There is an OS on which nas has run where we got back from + * the send *after* the STA replied. If that happens, don't + * set the interval timer. + */ + } else if (sta->suppl.state == WPA_REKEYNEGOTIATING) { + /* Set a timeout for retransmission */ + ts = wpa_set_itimer(nas->timer, &sta->td, + (bcm_timer_cb)wpa_retransmission, + (int)sta, sta->wpa_msg_timeout_s, + sta->wpa_msg_timeout_ms); + if (ts != ITIMER_OK) + dbg(nas, "set of GTK update retry interval timer failed, code %d", + ts); + } + } while (++sta < (nas->sta + MAX_SUPPLICANTS)); + + /* Make it primary after it's been sent to all known supplicants. */ + if (did_one) + wpa_plumb_gtk(wpa, 1); + else { + /* If a GTK was neither sent nor plumbed, maybe we + * should revert to the state where there isn't one. + */ + } + dbg(nas, "done"); +} + +/* When we want a new group key at a time other than when the rekey + * interval timer goes off, we want to turn off the interval timer. + * Turning off that timer during a timer alarm callback can make a + * mess of what the timer module knows of its event queue, so this is + * a front-end for the cases when the work is not induced by the GTK + * rekey interval timer. + */ +static void +wpa_new_gtk(wpa_t *wpa) +{ + if (wpa->gtk_rekey_timer) + TIMER_DELETE(wpa->gtk_rekey_timer); + + wpa_new_gtk_callback((bcm_timer_id) 0, wpa); + /* Begin a new rekeying interval. */ + wpa_set_gtk_timer(wpa); + dbg(wpa->nas, "done"); +} + +static void +wpa_init_gtk(wpa_t *wpa, nas_sta_t *sta) +{ + /* Cobble the key and plumb it. */ + wpa_gen_gtk(wpa, sta); + wpa_plumb_gtk(wpa, 1); + wpa_set_gtk_timer(wpa); + + dbg(wpa->nas, "done"); +} + +static bool +wpa_encr_gtk(wpa_t *wpa, nas_sta_t *sta, uint8 *encrypted, uint16 *encrypted_len) +{ + unsigned char data[256], encrkey[32]; + rc4_ks_t rc4key; + int len = wpa->gtk_len; + + /* encrypt the gtk using RC4 */ + switch (sta->suppl.desc) { + case WPA_KEY_DESC_V1: + dbg(wpa->nas, "v1"); + /* create the iv/ptk key */ + bcopy(&wpa->global_key_counter[KEY_COUNTER_LEN-16], encrkey, 16); + bcopy(sta->suppl.eapol_encr_key, &encrkey[16], 16); + + /* copy the gtk into the encryption buffer */ + bcopy(wpa->gtk, encrypted, len); + /* encrypt the gtk using RC4 */ + prepare_key(encrkey, 32, &rc4key); + rc4(data, 256, &rc4key); /* dump 256 bytes */ + rc4(encrypted, len, &rc4key); + break; + case WPA_KEY_DESC_V2: +#ifdef MFP + case WPA_KEY_DESC_V3: +#endif + dbg(wpa->nas, "v2"); + /* pad gtk if needed - min. 16 bytes, 8 byte aligned */ + if (len < 16) { + bzero(&wpa->gtk[len], 16 - len); + len = 16; + } + else if (len % AKW_BLOCK_LEN) { + bzero(&wpa->gtk[len], AKW_BLOCK_LEN - (len % AKW_BLOCK_LEN)); + len += AKW_BLOCK_LEN - (len % AKW_BLOCK_LEN); + } + if (aes_wrap(sizeof(sta->suppl.eapol_encr_key), sta->suppl.eapol_encr_key, + len, wpa->gtk, encrypted)) { + dbg(wpa->nas, "encrypt failed"); + return FALSE; + } + break; + default: + dbg(wpa->nas, "sta->suppl.desc = %d", sta->suppl.desc); + return FALSE; + } + + /* tell the calling func how long the encrypted data is */ + *encrypted_len = len; + return TRUE; +} + +#ifdef BCMSUPPL +static bool +wpa_decr_gtk(wpa_t *wpa, nas_sta_t *sta, eapol_wpa_key_header_t *body) +{ + unsigned char data[256], encrkey[32]; + rc4_ks_t rc4key; + ushort key_info = ntohs(body->key_info), len; + + dbg(wpa->nas, "start"); + + wpa->gtk_len = ntohs(body->key_len); + len = ntohs(body->data_len); + + wpa->gtk_index = (key_info & WPA_KEY_INDEX_MASK) >> WPA_KEY_INDEX_SHIFT; + dbg(wpa->nas, "gtk_index %d", wpa->gtk_index); + + switch (sta->suppl.desc) { + case WPA_KEY_DESC_V1: + /* decrypt the gtk using RC4 */ + dbg(wpa->nas, "v1"); + bcopy(body->iv, encrkey, 16); + bcopy(sta->suppl.eapol_encr_key, &encrkey[16], 16); + + /* decrypt the gtk using RC4 */ + prepare_key(encrkey, 32, &rc4key); + rc4(data, 256, &rc4key); /* dump 256 bytes */ + rc4(body->data, len, &rc4key); + bcopy(body->data, wpa->gtk, wpa->gtk_len); + break; + case WPA_KEY_DESC_V2: +#ifdef MFP + case WPA_KEY_DESC_V3: +#endif + /* decrypt the gtk using AES */ + dbg(wpa->nas, "v2"); + if (aes_unwrap(sizeof(sta->suppl.eapol_encr_key), sta->suppl.eapol_encr_key, + len, body->data, wpa->gtk)) { + dbg(wpa->nas, "unencrypt failed"); + return FALSE; + } + break; + default: + return FALSE; + } + + return TRUE; +} +#endif /* BCMSUPPL */ +#ifdef MFP2 +static int +wpa_insert_igtk(wpa_t *wpa, eapol_header_t *eapol, uint16 *data_len) +{ + uint16 len = *data_len; + eapol_wpa_key_header_t *body = (eapol_wpa_key_header_t *)eapol->body; + eapol_wpa2_encap_data_t *data_encap; + eapol_wpa2_key_igtk_encap_t *igtk_encap; + + if (!(wpa->nas->flags & NAS_FLAG_IGTK_PLUMBED)) { + wpa_gen_igtk(wpa); + wpa->nas->flags |= NAS_FLAG_IGTK_PLUMBED; + } + data_encap = (eapol_wpa2_encap_data_t *) (body->data + len); + data_encap->type = DOT11_MNG_PROPR_ID; + data_encap->length = (EAPOL_WPA2_ENCAP_DATA_HDR_LEN - TLV_HDR_LEN) + + EAPOL_WPA2_KEY_IGTK_ENCAP_HDR_LEN + wpa->igtk.len; + bcopy(WPA2_OUI, data_encap->oui, DOT11_OUI_LEN); + data_encap->subtype = WPA2_KEY_DATA_SUBTYPE_IGTK; + len += EAPOL_WPA2_ENCAP_DATA_HDR_LEN; + igtk_encap = (eapol_wpa2_key_igtk_encap_t *) (body->data + len); + igtk_encap->key_id = wpa->igtk.id; + *(uint32 *)igtk_encap->ipn = wpa->igtk.ipn_lo; + *(uint16 *)(igtk_encap->ipn + 4) = wpa->igtk.ipn_hi; + + bcopy(wpa->igtk.key, igtk_encap->key, wpa->igtk.len); + len += wpa->igtk.len + EAPOL_WPA2_KEY_IGTK_ENCAP_HDR_LEN; + + /* return the adjusted data len */ + *data_len = len; + printf("leave igtk_len=%d\n", wpa->igtk.len); + return TRUE; +} +#endif /* #ifdef MFP */ + +#ifdef BCMWPA2 +static bool +wpa_insert_gtk(wpa_t *wpa, nas_sta_t *sta, eapol_header_t *eapol, uint16 *data_len) +{ + int len = *data_len; + eapol_wpa_key_header_t *body = (eapol_wpa_key_header_t *)eapol->body; + eapol_wpa2_encap_data_t *data_encap; + eapol_wpa2_key_gtk_encap_t *gtk_encap; + + dbg(wpa->nas, "data len before gtk %d", len); + /* make sure we have a GTK plumbed */ + if (!(wpa->nas->flags & NAS_FLAG_GTK_PLUMBED)) + wpa_init_gtk(wpa, sta); + else { + if (nas_get_group_rsc(wpa->nas, &wpa->gtk_rsc[0], wpa->gtk_index)) { + /* Don't use what we don't have. */ + memset(wpa->gtk_rsc, 0, sizeof(wpa->gtk_rsc)); + dbg(wpa->nas, "failed to find group key RSC"); + } + } + + /* insert GTK into eapol message */ + /* body->key_len = htons(wpa->gtk_len); */ + /* key_len is PTK len, gtk len is implicit in encapsulation */ + data_encap = (eapol_wpa2_encap_data_t *) (body->data + len); + data_encap->type = DOT11_MNG_PROPR_ID; + data_encap->length = (EAPOL_WPA2_ENCAP_DATA_HDR_LEN - TLV_HDR_LEN) + + EAPOL_WPA2_KEY_GTK_ENCAP_HDR_LEN + wpa->gtk_len; + bcopy(WPA2_OUI, data_encap->oui, DOT11_OUI_LEN); + data_encap->subtype = WPA2_KEY_DATA_SUBTYPE_GTK; + len += EAPOL_WPA2_ENCAP_DATA_HDR_LEN; + + gtk_encap = (eapol_wpa2_key_gtk_encap_t *) (body->data + len); + gtk_encap->flags = (wpa->gtk_index << WPA2_GTK_INDEX_SHIFT) & WPA2_GTK_INDEX_MASK; + bcopy(wpa->gtk, gtk_encap->gtk, wpa->gtk_len); + len += wpa->gtk_len + EAPOL_WPA2_KEY_GTK_ENCAP_HDR_LEN; + dbg(wpa->nas, "data len including gtk %d", len); + + /* copy in the gtk rsc */ + bcopy(wpa->gtk_rsc, body->rsc, sizeof(body->rsc)); + + /* return the adjusted data len */ + *data_len = len; + + return (TRUE); +} + +#ifdef BCMSUPPL +static bool +wpa_extract_gtk(wpa_t *wpa, nas_sta_t *sta, eapol_header_t *eapol) +{ + eapol_wpa_key_header_t *body = (eapol_wpa_key_header_t *)eapol->body; + eapol_wpa2_encap_data_t *data_encap; + eapol_wpa2_key_gtk_encap_t *gtk_encap; + + int len = ntohs(body->data_len); + ushort key_info = ntohs(body->key_info); + + /* look for a GTK */ + data_encap = wpa_find_gtk_encap(body->data, len); + if (data_encap) { + dbg(wpa->nas, "found gtk encap"); + gtk_encap = (eapol_wpa2_key_gtk_encap_t *)data_encap->data; + /* wpa->gtk_len = ntohs(body->key_len); */ + /* key_len is PTK len, gtk len is implicit in encap len */ + wpa->gtk_len = data_encap->length - ((EAPOL_WPA2_ENCAP_DATA_HDR_LEN - TLV_HDR_LEN) + + EAPOL_WPA2_KEY_GTK_ENCAP_HDR_LEN); + dbg(wpa->nas, "gtk len %d", wpa->gtk_len); + wpa->gtk_index = (gtk_encap->flags & WPA2_GTK_INDEX_MASK) >> WPA2_GTK_INDEX_SHIFT; + dbg(wpa->nas, "gtk index %d", wpa->gtk_index); + bcopy(gtk_encap->gtk, wpa->gtk, wpa->gtk_len); + dbg(wpa->nas, "gtk:"); + dump(wpa->nas, wpa->gtk, wpa->gtk_len); + if (!(key_info & WPA_KEY_ENCRYPTED_DATA)) { + dbg(wpa->nas, "gtk wasn't encrypted!"); + return (FALSE); + } + } else { + dbg(wpa->nas, "didn't find gtk encap"); + return (FALSE); + } + + return (TRUE); +} +#endif /* BCMSUPPL */ + +static bool +wpa_insert_pmkid(wpa_t *wpa, nas_sta_t *sta, eapol_header_t *eapol, uint16 *data_len) +{ + int len = *data_len; + eapol_wpa_key_header_t *body = (eapol_wpa_key_header_t *)eapol->body; + eapol_wpa2_encap_data_t *data_encap; + uint8 *pmkid; + + dbg(wpa->nas, "data len before pmkid %d", len); + + /* insert PMKID into eapol message */ + data_encap = (eapol_wpa2_encap_data_t *) (body->data + len); + data_encap->type = DOT11_MNG_PROPR_ID; + data_encap->length = (EAPOL_WPA2_ENCAP_DATA_HDR_LEN - TLV_HDR_LEN) + WPA2_PMKID_LEN; + bcopy(WPA2_OUI, data_encap->oui, DOT11_OUI_LEN); + data_encap->subtype = WPA2_KEY_DATA_SUBTYPE_PMKID; + len += EAPOL_WPA2_ENCAP_DATA_HDR_LEN; + + pmkid = (uint8 *) (body->data + len); + bcopy(sta->suppl.pmkid, pmkid, WPA2_PMKID_LEN); + len += WPA2_PMKID_LEN; + dbg(wpa->nas, "data len including pmkid %d", len); + + /* return the adjusted data len */ + *data_len = len; + + return (TRUE); +} + + +static bool +wpa_encr_key_data(wpa_t *wpa, nas_sta_t *sta, uint8 *buffer, uint16 *data_len) +{ + unsigned char data[256], encrkey[32]; + rc4_ks_t rc4key; + int len = *data_len; + + dbg(wpa->nas, "before encrypt (len=%d):", len); + dump(wpa->nas, buffer, len); + + switch (sta->suppl.desc) { + case WPA_KEY_DESC_V1: + dbg(wpa->nas, "v1"); + /* create the iv/ptk key */ + bcopy(&wpa->global_key_counter[KEY_COUNTER_LEN-16], encrkey, 16); + bcopy(sta->suppl.eapol_encr_key, &encrkey[16], 16); + /* encrypt the key data */ + prepare_key(encrkey, 32, &rc4key); + rc4(data, 256, &rc4key); /* dump 256 bytes */ + rc4(buffer, len, &rc4key); + break; + case WPA_KEY_DESC_V2: +#ifdef MFP + case WPA_KEY_DESC_V3: +#endif + dbg(wpa->nas, "v2"); + /* pad if needed - min. 16 bytes, 8 byte aligned */ + /* padding is 0xdd followed by 0's */ + if (len < 2*AKW_BLOCK_LEN) { + buffer[len] = WPA2_KEY_DATA_PAD; + bzero(&buffer[len+1], 2*AKW_BLOCK_LEN - (len+1)); + len = 2*AKW_BLOCK_LEN; + } else if (len % AKW_BLOCK_LEN) { + buffer[len] = WPA2_KEY_DATA_PAD; + bzero(&buffer[len+1], AKW_BLOCK_LEN - ((len+1) % AKW_BLOCK_LEN)); + len += AKW_BLOCK_LEN - (len % AKW_BLOCK_LEN); + } + if (aes_wrap(sizeof(sta->suppl.eapol_encr_key), sta->suppl.eapol_encr_key, + len, buffer, buffer)) { + dbg(wpa->nas, "encrypt failed"); + return FALSE; + } + len += 8; + break; + default: + dbg(wpa->nas, "unknown descriptor type sta->suppl.desc = %d", sta->suppl.desc); + return FALSE; + } + + dbg(wpa->nas, "after encrypt (len=%d):", len); + dump(wpa->nas, buffer, len); + + /* tell the calling func how long the encrypted data is */ + *data_len = len; + return TRUE; +} + +#ifdef BCMSUPPL +static bool +wpa_decr_key_data(wpa_t *wpa, nas_sta_t *sta, eapol_wpa_key_header_t *body) +{ + unsigned char data[256], encrkey[32]; + rc4_ks_t rc4key; + ushort len; + + len = ntohs(body->data_len); + + dbg(wpa->nas, "before decrypt:"); + dump(wpa->nas, body->data, len); + + switch (sta->suppl.desc) { + case WPA_KEY_DESC_V1: + dbg(wpa->nas, "v1"); + /* create the iv/ptk key */ + bcopy(body->iv, encrkey, 16); + bcopy(sta->suppl.eapol_encr_key, &encrkey[16], 16); + /* decrypt the key data */ + prepare_key(encrkey, 32, &rc4key); + rc4(data, 256, &rc4key); /* dump 256 bytes */ + rc4(body->data, len, &rc4key); + break; + case WPA_KEY_DESC_V2: +#ifdef MFP + case WPA_KEY_DESC_V3: +#endif + dbg(wpa->nas, "v2"); + if (aes_unwrap(sizeof(sta->suppl.eapol_encr_key), sta->suppl.eapol_encr_key, + len, body->data, body->data)) { + dbg(wpa->nas, "unencrypt failed"); + return FALSE; + } + break; + default: + dbg(wpa->nas, "unknown descriptor type %d", sta->suppl.desc); + return FALSE; + } + + dbg(wpa->nas, "after decrypt:"); + dump(wpa->nas, body->data, len); + + return TRUE; +} +#endif /* BCMSUPPL */ +#endif /* BCMWPA2 */ + +static void +wpa_countermeasures_cb(timer_t td, nas_t *nas) +{ + nas->MIC_countermeasures = 0; + (void) nas_wl_tkip_countermeasures(nas, FALSE); + TIMER_DELETE(nas->wpa->countermeasures_timer); +} + +void wpa_reset_countermeasures(wpa_t *wpa) +{ + if (wpa && wpa->countermeasures_timer) + wpa_countermeasures_cb((timer_t)wpa->countermeasures_timer, wpa->nas); +} + +void +wpa_mic_error(wpa_t *wpa, nas_sta_t *msta, bool from_driver) +{ + time_t now, since; + nas_t *nas = wpa->nas; + nas_sta_t *sta; itimer_status_t ts; +#ifdef BCMDBG + char eabuf[ETHER_ADDR_STR_LEN]; +#endif + + now = time(NULL); + nas->MIC_failures++; + dbg(nas, "MIC error %d at time %d, STA %s, %s", nas->MIC_failures, + (int) now, ether_etoa((uchar *)&msta->ea, eabuf), + (from_driver) ? "detected by driver" : "reported by STA"); + + if (nas->flags & NAS_FLAG_SUPPLICANT) { + /* Until this gets more thought do no harm. */ + dbg(nas, "Supplicant MIC error notices not yet handled"); + return; + } + since = now - nas->prev_MIC_error; + nas->prev_MIC_error = now; + + /* If within the time limit we have to toss all the STAs. */ + if ((nas->MIC_failures != 0) && (since < WPA_TKIP_CM_DETECT)) { + dbg(nas, "Second MIC failure in %d seconds, taking countermeasures", + (int) since); + nas->MIC_countermeasures = 1; + nas_wl_tkip_countermeasures(nas, TRUE); + ts = wpa_set_itimer(wpa->nas->timer, &wpa->countermeasures_timer, + (bcm_timer_cb) wpa_countermeasures_cb, + (int) nas, WPA_TKIP_CM_BLOCK, 0); + if (ts != ITIMER_OK) + dbg(nas, "Setting TKIP countermeasures interval timer failed, code %d", ts); + + /* Everybody out of the pool! */ + sta = nas->sta; + do { + if (sta->used) + cleanup_sta(nas, sta, DOT11_RC_MIC_FAILURE, 0); + } while (sta++ < nas->sta + MAX_SUPPLICANTS); + + /* Try getting them all with a broadcast. */ + /* nas_deauthenticate(nas, ðer_bcast); */ + + /* Clobber any vestige of group keys. */ + if (wpa->gtk_rekey_timer) + TIMER_DELETE(wpa->gtk_rekey_timer); + nas_set_key(nas, NULL, NULL, 0, wpa->gtk_index, 0, 0, 0); + nas_set_key(nas, NULL, NULL, 0, GTK_NEXT_INDEX(wpa), 0, 0, 0); + nas->flags &= ~NAS_FLAG_GTK_PLUMBED; + } + dbg(nas, "done"); +} + +static bool +wpa_check_mic(nas_sta_t *sta, eapol_header_t *eapol) +{ + eapol_wpa_key_header_t *body = (eapol_wpa_key_header_t *)eapol->body; + unsigned char digest[2*MIC_KEY_LEN], mic[MIC_KEY_LEN]; + int mic_length; + ushort key_info = ntohs(body->key_info); + + /* eapol pkt from the version field on */ + mic_length = 4 + EAPOL_WPA_KEY_LEN + ntohs(body->data_len); + + bcopy((char*)&body->mic, mic, MIC_KEY_LEN); + bzero((char*)&body->mic, MIC_KEY_LEN); + + /* Create the MIC for the pkt */ + switch (key_info & (WPA_KEY_DESC_V1 | WPA_KEY_DESC_V2)) { + case WPA_KEY_DESC_V1: + hmac_md5(&eapol->version, mic_length, sta->suppl.eapol_mic_key, + MIC_KEY_LEN, digest); + break; + case WPA_KEY_DESC_V2: + dbg(sta->nas, "using sha1 for V2"); + hmac_sha1(&eapol->version, mic_length, + sta->suppl.eapol_mic_key, MIC_KEY_LEN, digest); + break; +#ifdef MFP + case WPA_KEY_DESC_V3: + dbg(sta->nas, "using aes cmac for V3"); + aes_cmac_calc(&eapol->version, mic_length, + sta->suppl.eapol_mic_key, MIC_KEY_LEN, digest); + break; +#endif + default: + dbg(sta->nas, "unknown descriptor type %d", key_info); + return FALSE; + } + + /* compare against the MIC contents */ + if (bcmp(digest, mic, MIC_KEY_LEN) == 0) { + dbg(sta->nas, "match"); + return (TRUE); + } else { + dbg(sta->nas, "fail"); + return (FALSE); + } +} + +static uint8 +wpa_auth2akm(wpa_t *wpa, uint32 auth) +{ + switch (auth) { + case WPA_AUTH_PSK: + return RSN_AKM_PSK; + case WPA_AUTH_UNSPECIFIED: + return RSN_AKM_UNSPECIFIED; +#ifdef BCMWPA2 + case WPA2_AUTH_PSK: + return RSN_AKM_PSK; + case WPA2_AUTH_UNSPECIFIED: + return RSN_AKM_UNSPECIFIED; +#endif + case WPA_AUTH_DISABLED: + default: + return RSN_AKM_NONE; + } +} + +static int +wpa_build_ie(wpa_t *wpa, uint32 wsec, uint32 algo, uint32 sta_mode, + uint8 *buf, uint16 *len) +{ + wpa_suite_mcast_t *mcast = NULL; + wpa_suite_ucast_t *ucast = NULL; + wpa_suite_auth_key_mgmt_t *auth = NULL; + uint16 count; + uint16 tag_len; /* tag length */ + uint16 buf_len; /* buf length */ + int sup = wpa->nas->flags & NAS_FLAG_SUPPLICANT; + int wds = wpa->nas->flags & NAS_FLAG_WDS; + uint8 *cap; + uint32 mode; + + buf_len = *len; + *len = 0; + mode = wpa->nas->mode; + + /* for now, only !wds and !sup */ + if (!wds && !sup) { + uint8 *ptr = buf; + uint16 bytes; + + if (sta_mode & (WPA2 | WPA2_PSK | WPA | WPA_PSK)) { + /* get wpa ie */ + bytes = nas_get_wpa_ie(wpa->nas, (char*)ptr, buf_len, sta_mode); + + dbg(wpa->nas, "WPA IE"); + dump(wpa->nas, ptr, bytes); + + buf_len -= bytes; + ptr += bytes; + } + + /* update total wsec IE length */ + *len = ptr - buf; + return 0; + } + +#ifdef BCMWPA2 + if ((mode & (WPA2 | WPA2_PSK)) && (sta_mode & (WPA2 | WPA2_PSK))) { + wpa_rsn_ie_fixed_t *wpaie = (wpa_rsn_ie_fixed_t *)buf; + + /* fixed portion */ + if (buf_len < WPA_RSN_IE_FIXED_LEN) + return -1; + buf_len -= TLV_HDR_LEN; + wpaie->tag = DOT11_MNG_RSN_ID; + wpaie->version.low = (uint8)WPA2_VERSION; + wpaie->version.high = (uint8)(WPA2_VERSION>>8); + tag_len = WPA_RSN_IE_TAG_FIXED_LEN; + + /* multicast suite */ + if (tag_len + WPA_SUITE_LEN > buf_len) + return -1; + mcast = (wpa_suite_mcast_t *)&wpaie[1]; + if (wds) { + bcopy(BRCM_OUI, mcast->oui, WPA_OUI_LEN); + mcast->type = 0; /* no mcast cipher */ + } + else { + bcopy(WPA2_OUI, mcast->oui, WPA_OUI_LEN); + if (sup) { + if (WSEC_WEP_ENABLED(wsec)) { + mcast->type = WPA_MCAST_CIPHER(wsec, algo); + } + else { + /* supplicant has to follow authenticator's mcast algo */ + mcast->type = CRYPTO_ALGO2CIPHER(algo); + } + } + else { + mcast->type = WPA_MCAST_CIPHER(wsec, algo); + } + } + tag_len += WPA_SUITE_LEN; + + /* unicast suite list */ + if (tag_len + WPA_IE_SUITE_COUNT_LEN > buf_len) + return -1; + ucast = (wpa_suite_ucast_t *)&mcast[1]; + count = 0; + tag_len += WPA_IE_SUITE_COUNT_LEN; + if (WSEC_AES_ENABLED(wsec)) { + if (tag_len + WPA_SUITE_LEN > buf_len) + return -1; + bcopy(WPA2_OUI, ucast->list[count].oui, WPA_OUI_LEN); + ucast->list[count].type = WPA_CIPHER_AES_CCM; + tag_len += WPA_SUITE_LEN; + count ++; + if (sup || wds) + goto uni2_done; + } + if (WSEC_TKIP_ENABLED(wsec)) { + if (tag_len + WPA_SUITE_LEN > buf_len) + return -1; + bcopy(WPA2_OUI, ucast->list[count].oui, WPA_OUI_LEN); + ucast->list[count].type = WPA_CIPHER_TKIP; + tag_len += WPA_SUITE_LEN; + count ++; + if (sup || wds) + goto uni2_done; + } + if (!count) { + if (tag_len + WPA_SUITE_LEN > buf_len) + return -1; + bcopy(WPA2_OUI, ucast->list[count].oui, WPA_OUI_LEN); + ucast->list[count].type = WPA_CIPHER_NONE; + tag_len += WPA_SUITE_LEN; + count ++; + } +uni2_done: + ucast->count.low = (uint8)count; + ucast->count.high = (uint8)(count>>8); + + /* authenticated key management suite list */ + if (tag_len + WPA_IE_SUITE_COUNT_LEN > buf_len) + return -1; + auth = (wpa_suite_auth_key_mgmt_t *)&ucast->list[count]; + count = 0; + tag_len += WPA_IE_SUITE_COUNT_LEN; + if (mode & WPA2) { + if (tag_len + WPA_SUITE_LEN > buf_len) + return -1; + bcopy(WPA2_OUI, auth->list[count].oui, WPA_OUI_LEN); + auth->list[count].type = wpa_auth2akm(wpa, wpa_mode2auth(WPA2)); + tag_len += WPA_SUITE_LEN; + count ++; + if (sup || wds) + goto akm2_done; + } + if (mode & WPA2_PSK) { + if (tag_len + WPA_SUITE_LEN > buf_len) + return -1; + bcopy(WPA2_OUI, auth->list[count].oui, WPA_OUI_LEN); + auth->list[count].type = wpa_auth2akm(wpa, wpa_mode2auth(WPA2_PSK)); + tag_len += WPA_SUITE_LEN; + count ++; + if (sup || wds) + goto akm2_done; + } + if (!count) { + if (tag_len + WPA_SUITE_LEN > buf_len) + return -1; + bcopy(WPA2_OUI, auth->list[count].oui, WPA_OUI_LEN); + auth->list[count].type = wpa_auth2akm(wpa, WPA_AUTH_NONE); + tag_len += WPA_SUITE_LEN; + count ++; + } +akm2_done: + auth->count.low = (uint8)count; + auth->count.high = (uint8)(count>>8); + + /* WPA capabilities */ + if (!wds) { + cap = (uint8 *)&auth->list[count]; + cap[0] = wpa->cap[0]; + cap[1] = wpa->cap[1]; + tag_len += WPA_CAP_LEN; + } + + /* update tag length */ + wpaie->length = (uint8)tag_len; + dbg(wpa->nas, "WPA2 IE"); + dump(wpa->nas, buf, tag_len + TLV_HDR_LEN); + buf += tag_len + TLV_HDR_LEN; + + /* update used buffer length */ + *len += TLV_HDR_LEN + tag_len; + + /* for wds use first found AKM no mix-mode anymore */ + if (wds) + return 0; + } +#endif /* BCMWPA2 */ + if ((mode & (WPA | WPA_PSK)) && (sta_mode & (WPA | WPA_PSK))) { + wpa_ie_fixed_t *wpaie = (wpa_ie_fixed_t *)buf; + + /* fixed portion */ + if (buf_len < WPA_IE_FIXED_LEN) + return -1; + buf_len -= TLV_HDR_LEN; + wpaie->tag = DOT11_MNG_WPA_ID; + bcopy(WPA_OUI"\x01", wpaie->oui, WPA_IE_OUITYPE_LEN); + wpaie->version.low = (uint8)WPA_VERSION; + wpaie->version.high = (uint8)(WPA_VERSION>>8); + tag_len = WPA_IE_TAG_FIXED_LEN; + + /* multicast suite */ + if (tag_len + WPA_SUITE_LEN > buf_len) + return -1; + mcast = (wpa_suite_mcast_t *)&wpaie[1]; + if (wds) { + bcopy(BRCM_OUI, mcast->oui, WPA_OUI_LEN); + mcast->type = 0; /* no mcast cipher */ + } + else { + bcopy(WPA_OUI, mcast->oui, WPA_OUI_LEN); + if (sup) { + if (WSEC_WEP_ENABLED(wsec)) { + mcast->type = WPA_MCAST_CIPHER(wsec, algo); + } + else { + /* supplicant has to follow authenticator's mcast algo */ + mcast->type = CRYPTO_ALGO2CIPHER(algo); + } + } + else { + mcast->type = WPA_MCAST_CIPHER(wsec, algo); + } + } + tag_len += WPA_SUITE_LEN; + + /* unicast suite list */ + if (tag_len + WPA_IE_SUITE_COUNT_LEN > buf_len) + return -1; + ucast = (wpa_suite_ucast_t *)&mcast[1]; + count = 0; + tag_len += WPA_IE_SUITE_COUNT_LEN; + if (WSEC_AES_ENABLED(wsec)) { + if (tag_len + WPA_SUITE_LEN > buf_len) + return -1; + bcopy(WPA_OUI, ucast->list[count].oui, WPA_OUI_LEN); + ucast->list[count].type = WPA_CIPHER_AES_CCM; + tag_len += WPA_SUITE_LEN; + count ++; + if (sup || wds) + goto uni_done; + } + if (WSEC_TKIP_ENABLED(wsec)) { + if (tag_len + WPA_SUITE_LEN > buf_len) + return -1; + bcopy(WPA_OUI, ucast->list[count].oui, WPA_OUI_LEN); + ucast->list[count].type = WPA_CIPHER_TKIP; + tag_len += WPA_SUITE_LEN; + count ++; + if (sup || wds) + goto uni_done; + } + if (!count) { + if (tag_len + WPA_SUITE_LEN > buf_len) + return -1; + bcopy(WPA_OUI, ucast->list[count].oui, WPA_OUI_LEN); + ucast->list[count].type = WPA_CIPHER_NONE; + tag_len += WPA_SUITE_LEN; + count ++; + } +uni_done: + ucast->count.low = (uint8)count; + ucast->count.high = (uint8)(count>>8); + + /* authenticated key management suite list */ + if (tag_len + WPA_IE_SUITE_COUNT_LEN > buf_len) + return -1; + auth = (wpa_suite_auth_key_mgmt_t *)&ucast->list[count]; + count = 0; + tag_len += WPA_IE_SUITE_COUNT_LEN; + if (mode & WPA) { + if (tag_len + WPA_SUITE_LEN > buf_len) + return -1; + bcopy(WPA_OUI, auth->list[count].oui, WPA_OUI_LEN); + auth->list[count].type = wpa_auth2akm(wpa, wpa_mode2auth(WPA)); + tag_len += WPA_SUITE_LEN; + count ++; + if (sup || wds) + goto akm_done; + } + if (mode & WPA_PSK) { + if (tag_len + WPA_SUITE_LEN > buf_len) + return -1; + bcopy(WPA_OUI, auth->list[count].oui, WPA_OUI_LEN); + auth->list[count].type = wpa_auth2akm(wpa, wpa_mode2auth(WPA_PSK)); + tag_len += WPA_SUITE_LEN; + count ++; + if (sup || wds) + goto akm_done; + } + if (!count) { + if (tag_len + WPA_SUITE_LEN > buf_len) + return -1; + bcopy(WPA_OUI, auth->list[count].oui, WPA_OUI_LEN); + auth->list[count].type = wpa_auth2akm(wpa, WPA_AUTH_NONE); + tag_len += WPA_SUITE_LEN; + count ++; + } +akm_done: + auth->count.low = (uint8)count; + auth->count.high = (uint8)(count>>8); + + /* WPA capabilities */ + if (!wds) { + cap = (uint8 *)&auth->list[count]; + cap[0] = wpa->cap[0]; + cap[1] = wpa->cap[1]; + tag_len += WPA_CAP_LEN; + } + + /* update tag length */ + wpaie->length = (uint8)tag_len; + dbg(wpa->nas, "WPA IE"); + dump(wpa->nas, buf, tag_len + TLV_HDR_LEN); + buf += tag_len + TLV_HDR_LEN; + + /* update used buffer length */ + *len += TLV_HDR_LEN + tag_len; + } + + return 0; +} + +static bool +wpa_send_eapol(wpa_t *wpa, nas_sta_t *sta) +{ + struct iovec frags; + unsigned char mic[SHA1HashSize]; /* size of largest digest */ + unsigned char buffer[1024]; + eapol_header_t *eapol = (eapol_header_t *)buffer; + eapol_wpa_key_header_t *body = (eapol_wpa_key_header_t *)eapol->body; + int key_index, mic_length = 0; + nas_t *nas = wpa->nas; + uint16 data_len = 0; +#ifdef BCMDBG + char eabuf[ETHER_ADDR_STR_LEN]; +#endif + + dbg(nas, "message for %s", ether_etoa((uchar *)&sta->ea, eabuf)); + + bzero(buffer, 1024); + + memcpy(&eapol->eth.ether_dhost, &sta->ea, ETHER_ADDR_LEN); + memcpy(&eapol->eth.ether_shost, &nas->ea, ETHER_ADDR_LEN); + eapol->eth.ether_type = htons(ETHER_TYPE_802_1X); + eapol->version = sta->eapol_version; + eapol->type = EAPOL_KEY; + eapol->length = EAPOL_WPA_KEY_LEN; + + frags.iov_base = (caddr_t) buffer; + frags.iov_len = EAPOL_HEADER_LEN + EAPOL_WPA_KEY_LEN; + + /* Set the key type to WPA */ +#ifdef BCMWPA2 + if ((sta->mode & (WPA2_PSK | WPA2))) + body->type = EAPOL_WPA2_KEY; + else +#endif + body->type = EAPOL_WPA_KEY; + /* set the replay count */ + bcopy(sta->suppl.replay, body->replay, REPLAY_LEN); + + /* Fill in the WPA key descriptor */ + switch (sta->suppl.state) { + case WPA_PTKSTART: + dbg(nas, "WPA_PTKSTART"); + /* Set Key length */ + body->key_len = htons(sta->suppl.tk_len); + /* Set the Key info flags */ + body->key_info = htons(sta->suppl.desc | WPA_KEY_ACK | WPA_KEY_PAIRWISE); + /* set the nonce */ + bcopy(sta->suppl.anonce, body->nonce, NONCE_LEN); + +#ifdef BCMWPA2 + if ((sta->mode & (WPA2_PSK | WPA2))) { + wpa_insert_pmkid(wpa, sta, eapol, &data_len); + body->data_len = htons(data_len); + /* add the data field length (WPA IE) */ + frags.iov_len += data_len; + eapol->length += data_len; + } +#endif /* BCMWPA2 */ + + eapol->length = htons(eapol->length); + break; + + case WPA_PTKINITNEGOTIATING: + dbg(nas, "WPA_PTKINITNEGOTIATING"); + /* Set Key length */ + body->key_len = htons(sta->suppl.tk_len); + /* Set the Key info flags */ + body->key_info = htons(sta->suppl.desc | WPA_KEY_INDEX_0 | WPA_KEY_ACK | + WPA_KEY_PAIRWISE | WPA_KEY_INSTALL | WPA_KEY_MIC); +#ifdef BCMWPA2 + if ((sta->mode & (WPA2 | WPA2_PSK))) + body->key_info |= htons(WPA_KEY_SECURE | WPA_KEY_ENCRYPTED_DATA); +#endif + if (nas->flags & NAS_FLAG_WDS) + body->key_info |= htons(WPA_KEY_SECURE); + + /* set the nonce */ + bcopy(sta->suppl.anonce, body->nonce, NONCE_LEN); + + /* Copy the WPA IE sent in the beacon + * since the body eapol_wpa_key_header_t is a pointer masked over the buffer + * we need to retreive the actual size left + */ + data_len = sizeof(buffer) - (sizeof(eapol_wpa_key_header_t) - sizeof(body->data)); + + if (wpa_build_ie(wpa, nas->wsec, WEP_KEY2ALGO(wpa->gtk_len), + sta->mode, body->data, &data_len)) { + dbg(nas, "failed to build WPA IE"); + return FALSE; + } + +#ifdef BCMWPA2 + if ((sta->mode & (WPA2 | WPA2_PSK))) { + if (!wpa_insert_gtk(wpa, sta, eapol, &data_len)) { + err(nas, "insertion of gtk failed"); + nas_handle_error(nas, 1); + } +#ifdef MFP2 + wpa_insert_igtk(wpa, eapol, &data_len); + /* wpa_key->data_len = hton16(data_len); */ +#endif + /* copy in the iv and encrypt the key data field */ + bcopy(&wpa->global_key_counter[KEY_COUNTER_LEN-16], body->iv, 16); + if (!wpa_encr_key_data(wpa, sta, body->data, &data_len)) { + err(nas, "encryption of key data failed"); + nas_handle_error(nas, 1); + } + } +#endif /* BCMWPA2 */ + body->data_len = htons(data_len); + /* add the data field length (WPA IE) */ + frags.iov_len += data_len; + eapol->length += data_len; + eapol->length = htons(eapol->length); + + /* How much data to MIC */ + mic_length = 4 + EAPOL_WPA_KEY_LEN + data_len; + break; + + case WPA_REKEYNEGOTIATING: + dbg(nas, "WPA_REKEYNEGOTIATING"); + + body->key_info = htons(sta->suppl.desc | WPA_KEY_SECURE | + WPA_KEY_ACK | WPA_KEY_MIC); + +#ifdef BCMWPA2 + if ((sta->mode & (WPA2 | WPA2_PSK))) { + if (!wpa_insert_gtk(wpa, sta, eapol, &data_len)) { + err(nas, "insertion of gtk failed"); + nas_handle_error(nas, 1); + } +#ifdef MFP2 + wpa_insert_igtk(wpa, eapol, &data_len); + /* wpa_key->data_len = hton16(data_len); */ +#endif + /* copy in the iv and encrypt the key data field */ + bcopy(&wpa->global_key_counter[KEY_COUNTER_LEN-16], body->iv, 16); + body->key_info |= htons(WPA_KEY_SECURE | WPA_KEY_ENCRYPTED_DATA); + if (!wpa_encr_key_data(wpa, sta, body->data, &data_len)) { + err(nas, "encryption of key data failed"); + nas_handle_error(nas, 1); + } + } else { +#endif /* BCMWPA2 */ + /* Set Key length */ + body->key_len = htons(wpa->gtk_len); + /* Set the Key info flags */ + key_index = (wpa->gtk_index << WPA_KEY_INDEX_SHIFT) & WPA_KEY_INDEX_MASK; + body->key_info |= htons(key_index); + + /* set the nonce */ + bcopy(wpa->gnonce, body->nonce, NONCE_LEN); + + /* copy in the key IV */ + bcopy(&wpa->global_key_counter[KEY_COUNTER_LEN-16], body->iv, 16); + bcopy(wpa->gtk_rsc, body->rsc, sizeof(body->rsc)); + + /* encrypt the gtk and put it in the data field */ + if (!wpa_encr_gtk(wpa, sta, body->data, &data_len)) { + err(nas, "encryption of GTK failed"); + nas_handle_error(nas, 1); + } + switch (sta->suppl.desc) { + case WPA_KEY_DESC_V1: + break; + case WPA_KEY_DESC_V2: +#ifdef MFP + case WPA_KEY_DESC_V3: +#endif + data_len += 8; + break; + default: + err(nas, "unknown descriptor type %d", sta->suppl.desc); + nas_handle_error(nas, 1); + } +#ifdef BCMWPA2 + } +#endif + body->data_len = htons(data_len); + + /* fix up the length */ + frags.iov_len += data_len; + eapol->length += data_len; + eapol->length = htons(eapol->length); + /* How much data to MIC */ + mic_length = 4 + EAPOL_WPA_KEY_LEN + data_len; + break; + +#ifdef BCMSUPPL + case WPA_SUP_INITIALIZE: + dbg(nas, "WPA_SUP_INITIALIZE"); + /* Set Key length */ + body->key_len = htons(sta->suppl.tk_len); + /* Set the Key info flags */ + body->key_info = htons(sta->suppl.desc | WPA_KEY_INDEX_0 | + WPA_KEY_REQ | WPA_KEY_PAIRWISE); + /* set the nonce */ + bcopy(sta->suppl.snonce, body->nonce, NONCE_LEN); + eapol->length = htons(eapol->length); + break; + + case WPA_SUP_STAKEYSTARTG: + case WPA_SUP_STAKEYSTARTP: + dbg(nas, "WPA_SUP_STAKEYSTARTP/G"); + /* Set Key length */ + body->key_len = htons(sta->suppl.tk_len); + /* Set the Key info flags */ + body->key_info = htons(sta->suppl.desc | WPA_KEY_INDEX_0 | WPA_KEY_MIC); + switch (sta->suppl.state) { + case WPA_SUP_STAKEYSTARTP: + body->key_info |= htons(WPA_KEY_PAIRWISE); + switch (sta->suppl.pk_state) { + case EAPOL_SUP_PK_MSG1: + data_len = sizeof(body->data); + if (wpa_build_ie(wpa, nas->wsec, sta->algo, + sta->mode, body->data, &data_len)) { + dbg(nas, "failed to build WPA IE"); + return FALSE; + } + body->data_len = htons(data_len); + + /* add the data field length (WPA IE) */ + frags.iov_len += data_len; + eapol->length += data_len; + + /* expect message #3 after sending message #2 */ + sta->suppl.pk_state = EAPOL_SUP_PK_MSG3; + break; + case EAPOL_SUP_PK_MSG3: + /* send message #4 and we are done with pairwise */ + if (nas->flags & NAS_FLAG_WDS) + body->key_info |= htons(WPA_KEY_SECURE); +#ifdef BCMWPA2 + if ((sta->mode & (WPA2 | WPA2_PSK))) + body->key_info |= htons(WPA_KEY_SECURE); +#endif + sta->suppl.pk_state = EAPOL_SUP_PK_DONE; + break; + default: + dbg(nas, "Unexpected supplicant pk state %d", sta->suppl.pk_state); + break; + } + break; + case WPA_SUP_STAKEYSTARTG: + body->key_info |= htons(WPA_KEY_SECURE); + break; + default: + /* just to satisfy the compiler, no way to get here */ + break; + } + + /* set the nonce */ + bcopy(sta->suppl.snonce, body->nonce, NONCE_LEN); + + eapol->length = htons(eapol->length); + + /* How much data to MIC */ + mic_length = 4 + EAPOL_WPA_KEY_LEN + data_len; + + switch (sta->suppl.desc) { + case WPA_KEY_DESC_V1: + case WPA_KEY_DESC_V2: +#ifdef MFP + case WPA_KEY_DESC_V3: +#endif + break; + default: + dbg(nas, "unknown descriptor type %d", sta->suppl.desc); + if (!(nas->flags & NAS_FLAG_WDS)) { + nas_disassoc(nas); + nas_sleep_ms(500); + nas_set_ssid(nas, nas->ssid); + } + return FALSE; + } + break; +#endif /* BCMSUPPL */ + + default: + /* error state; callers will bail */ + dbg(nas, "Unexpected supplicant state %d", sta->suppl.state); + return FALSE; + } + + if (sta->retries) + dbg(nas, "eapol retry"); + + if (mic_length) { + /* calculate the MIC and copy it in */ + switch (sta->suppl.desc) { + case WPA_KEY_DESC_V1: + hmac_md5(&buffer[sizeof(struct ether_header)], mic_length, + sta->suppl.eapol_mic_key, MIC_KEY_LEN, mic); + break; + case WPA_KEY_DESC_V2: + hmac_sha1(&buffer[sizeof(struct ether_header)], mic_length, + sta->suppl.eapol_mic_key, MIC_KEY_LEN, mic); + break; +#ifdef MFP + case WPA_KEY_DESC_V3: + dbg(nas, "using aes cmac for V3"); + aes_cmac_calc(&buffer[sizeof(struct ether_header)], mic_length, + sta->suppl.eapol_mic_key, MIC_KEY_LEN, mic); + break; +#endif + default: + err(nas, "unknown descriptor type %d", sta->suppl.desc); + nas_handle_error(nas, 1); + } + bcopy(mic, (char*)body->mic, MIC_KEY_LEN); + } + + /* send the pkt */ + nas_eapol_send_packet(nas, &frags, 1); + + dbg(nas, "done"); + return (TRUE); +} + +/* only handle single mode! */ +int +wpa_mode2auth(int mode) +{ + switch (mode) { + case WPA_PSK: + return WPA_AUTH_PSK; + case WPA: + return WPA_AUTH_UNSPECIFIED; +#ifdef BCMWPA2 + case WPA2_PSK: + return WPA2_AUTH_PSK; + case WPA2: + return WPA2_AUTH_UNSPECIFIED; +#endif /* BCMWPA2 */ + case RADIUS: + default: + return WPA_AUTH_DISABLED; + } +} + +/* only handle single mode! */ +int +wpa_auth2mode(int auth) +{ + switch (auth) { + case WPA_AUTH_PSK: + return WPA_PSK; + case WPA_AUTH_UNSPECIFIED: + return WPA; +#ifdef BCMWPA2 + case WPA2_AUTH_PSK: + return WPA2_PSK; + case WPA2_AUTH_UNSPECIFIED: + return WPA2; +#endif /* BCMWPA2 */ + case WPA_AUTH_DISABLED: + default: + return RADIUS; + } +} + +static uint32 +wpa_akm2auth(uint32 akm) +{ + switch (akm) { + case RSN_AKM_PSK: + return WPA_AUTH_PSK; + case RSN_AKM_UNSPECIFIED: + return WPA_AUTH_UNSPECIFIED; + case RSN_AKM_NONE: + default: + return WPA_AUTH_NONE; + } +} + +#ifdef BCMWPA2 +static uint32 +wpa2_akm2auth(uint32 akm) +{ +#ifdef MFP + /* for PMF : clear the bit which is not relevant here */ + akm &= ~0x4; +#endif + + switch (akm) { + case RSN_AKM_PSK: + return WPA2_AUTH_PSK; + case RSN_AKM_UNSPECIFIED: + return WPA2_AUTH_UNSPECIFIED; + case RSN_AKM_NONE: + default: + return WPA_AUTH_NONE; + } +} +#endif /* BCMWPA2 */ + +/* decode WPA IE to retrieve supplicant wsec, auth mode, and pmk cached */ +/* pmkc - 0:no pmkid in ie, -1:pmkid not found, 1:pmkid found */ +static int +wpa_parse_ie(wpa_t *wpa, uint8 *ie, int ie_len, uint32 *wsec, uint32 *mode, + uint32 *pmkc, nas_sta_t *sta) +{ + int type, len; + wpa_suite_mcast_t *mcast = NULL; + wpa_suite_ucast_t *ucast = NULL; + wpa_suite_auth_key_mgmt_t *mgmt = NULL; + uint8 *cap = NULL; + uint8 *oui; +#ifdef BCMWPA2 + wpa_pmkid_list_t *pmkid = NULL; +#endif + uint16 count; + uint32 m = 0; + uint32 (*akm2auth)(uint32 akm) = NULL; + + + /* validate ie length */ + if (!bcm_valid_tlv((bcm_tlv_t *)ie, ie_len)) { + dbg(wpa->nas, "IE is too short"); + return -1; + } + + /* type specific header processing */ + switch ((type = *ie)) { +#ifdef BCMWPA2 + case DOT11_MNG_RSN_ID: { + wpa_rsn_ie_fixed_t *rsnie = (wpa_rsn_ie_fixed_t *)ie; + if (rsnie->length < WPA_RSN_IE_TAG_FIXED_LEN) { + dbg(wpa->nas, "invalid RSN IE header"); + return -1; + } + if (ltoh16_ua((uint8 *)&rsnie->version) != WPA2_VERSION) { + dbg(wpa->nas, "unsupported RSN IE version"); + return -1; + } + mcast = (wpa_suite_mcast_t *)(rsnie + 1); + len = ie_len - WPA_RSN_IE_FIXED_LEN; + oui = (uint8*)WPA2_OUI; + akm2auth = wpa2_akm2auth; + break; + } +#endif /* BCMWPA2 */ + case DOT11_MNG_WPA_ID: { + wpa_ie_fixed_t *wpaie = (wpa_ie_fixed_t *)ie; + if (wpaie->length < WPA_IE_TAG_FIXED_LEN || + bcmp(wpaie->oui, WPA_OUI "\x01", WPA_IE_OUITYPE_LEN)) { + dbg(wpa->nas, "invalid WPA IE header"); + return -1; + } + if (ltoh16_ua((uint8 *)&wpaie->version) != WPA_VERSION) { + dbg(wpa->nas, "unsupported WPA IE version"); + return -1; + } + mcast = (wpa_suite_mcast_t *)(wpaie + 1); + len = ie_len - WPA_IE_FIXED_LEN; + oui = (uint8*)WPA_OUI; + akm2auth = wpa_akm2auth; + break; + } + default: + dbg(wpa->nas, "unsupported IE type"); + return -1; + } + + /* init return values - no mcast cipher and no ucast cipher */ + if (wsec) + *wsec = 0; + if (mode) + *mode = 0; + if (pmkc) + *pmkc = 0; + /* Check for multicast suite */ + if (len >= WPA_SUITE_LEN) { + if (!bcmp(mcast->oui, oui, DOT11_OUI_LEN)) { + if (wsec) + *wsec |= WPA_CIPHER2WSEC(mcast->type); + } + len -= WPA_SUITE_LEN; + } + /* Check for unicast suite(s) */ + if (len >= WPA_IE_SUITE_COUNT_LEN) { + ucast = (wpa_suite_ucast_t *)&mcast[1]; + count = ltoh16_ua((uint8 *)&ucast->count); + len -= WPA_IE_SUITE_COUNT_LEN; + if (count != 1) { + dbg(wpa->nas, "# of unicast cipher suites %d", count); + return -1; + } + if (!bcmp(ucast->list[0].oui, oui, DOT11_OUI_LEN)) { + if (wsec) + *wsec |= WPA_CIPHER2WSEC(ucast->list[0].type); + } + len -= WPA_SUITE_LEN; + } + /* Check for auth key management suite(s) */ + if (len >= WPA_IE_SUITE_COUNT_LEN) { + mgmt = (wpa_suite_auth_key_mgmt_t *)&ucast->list[1]; + count = ltoh16_ua((uint8 *)&mgmt->count); + len -= WPA_IE_SUITE_COUNT_LEN; + if (count != 1) { + dbg(wpa->nas, "# of AKM suites %d", count); + return -1; + } + if (!bcmp(mgmt->list[0].oui, oui, DOT11_OUI_LEN)) { +#ifdef MFP + uint16 keyauth_type = mgmt->list[0].type; + if (keyauth_type == KEYAUTH_SHA256) { + dbg(wpa->nas, "key auth using SHA256"); + sta->key_auth_type = KEYAUTH_SHA256; + } + else +#endif + sta->key_auth_type = KEYAUTH_SHA1; + + m = wpa_auth2mode(akm2auth(mgmt->list[0].type)); + if (mode) + *mode = m; + } + len -= WPA_SUITE_LEN; + } + dbg(wpa->nas, "wsec 0x%x mode 0x%x", *wsec, *mode); + + /* Check for capabilities */ + if (len >= WPA_CAP_LEN) { + cap = (uint8 *)&mgmt->list[1]; + len -= WPA_CAP_LEN; + } + +#ifdef BCMWPA2 + /* Check for PMKID(s) */ + dbg(wpa->nas, "checking for PMK id"); + switch (type) { + case DOT11_MNG_RSN_ID: { + uint16 i; + if (len < WPA_IE_SUITE_COUNT_LEN || m != WPA2 || !sta) { + dbg(wpa->nas, "no PMK id"); + break; + } + if (pmkc) + *pmkc = -1; + pmkid = (wpa_pmkid_list_t *)(cap + WPA_CAP_LEN); + count = ltoh16_ua((uint8 *)&pmkid->count); + for (i = 0, len -= WPA_IE_SUITE_COUNT_LEN; + i < count && len >= WPA2_PMKID_LEN; + i ++, len -= WPA2_PMKID_LEN) { + if (bcmp(pmkid->list[i], sta->suppl.pmkid, WPA2_PMKID_LEN)) + continue; + dbg(wpa->nas, "found cached PMK id"); + dump(wpa->nas, sta->suppl.pmkid, WPA2_PMKID_LEN); + if (pmkc) + *pmkc = 1; + break; + } + if (pmkc) + if (*pmkc != 1) + dbg(wpa->nas, "NO PMK cache hit"); + + break; + } + default: + dbg(wpa->nas, "no RSN id"); + break; + } +#endif /* BCMWPA2 */ + + return 0; +} + +#ifdef BCMSUPPL +/* decode WPA IE to verify authenticator wsec and auth mode */ +/* return 0 if authenticator supports what we are configured for */ +static int +wpa_check_ie(wpa_t *wpa, uint8 *ie, int ie_len, uint32 wsec, uint32 mode) +{ + int type, len; + wpa_suite_mcast_t *mcast = NULL; + wpa_suite_ucast_t *ucast = NULL; + wpa_suite_auth_key_mgmt_t *mgmt = NULL; + uint8 *oui; + uint16 count = 0, i; + uint32 (*akm2auth)(uint32 akm) = NULL; + + /* validate ie length */ + if (!bcm_valid_tlv((bcm_tlv_t *)ie, ie_len)) { + dbg(wpa->nas, "IE is too short"); + return -1; + } + + /* type specific header processing */ + switch ((type = *ie)) { +#ifdef BCMWPA2 + case DOT11_MNG_RSN_ID: { + wpa_rsn_ie_fixed_t *rsnie = (wpa_rsn_ie_fixed_t *)ie; + if (rsnie->length < WPA_RSN_IE_TAG_FIXED_LEN) { + dbg(wpa->nas, "invalid RSN IE header"); + return -1; + } + if (ltoh16_ua((uint8 *)&rsnie->version) != WPA2_VERSION) { + dbg(wpa->nas, "unsupported RSN IE version"); + return -1; + } + mcast = (wpa_suite_mcast_t *)&rsnie[1]; + len = ie_len - WPA_RSN_IE_FIXED_LEN; + oui = (uint8 *)WPA2_OUI; + akm2auth = wpa2_akm2auth; + break; + } +#endif /* BCMWPA2 */ + case DOT11_MNG_WPA_ID: { + wpa_ie_fixed_t *wpaie = (wpa_ie_fixed_t *)ie; + if (wpaie->length < WPA_IE_TAG_FIXED_LEN || + bcmp(wpaie->oui, WPA_OUI "\x01", WPA_IE_OUITYPE_LEN)) { + dbg(wpa->nas, "invalid WPA IE header"); + return -1; + } + if (ltoh16_ua((uint8 *)&wpaie->version) != WPA_VERSION) { + dbg(wpa->nas, "unsupported WPA IE version"); + return -1; + } + mcast = (wpa_suite_mcast_t *)&wpaie[1]; + len = ie_len - WPA_IE_FIXED_LEN; + oui = (uint8 *)WPA_OUI; + akm2auth = wpa_akm2auth; + break; + } + default: + dbg(wpa->nas, "unsupported IE type"); + return -1; + } + + /* Check for multicast suite */ + if (len >= WPA_SUITE_LEN) { + if (!bcmp(mcast->oui, oui, DOT11_OUI_LEN)) + wsec &= ~WPA_CIPHER2WSEC(mcast->type); + len -= WPA_SUITE_LEN; + } + /* Check for unicast suite(s) */ + if (len >= WPA_IE_SUITE_COUNT_LEN) { + ucast = (wpa_suite_ucast_t *)&mcast[1]; + count = ltoh16_ua((uint8 *)&ucast->count); + for (i = 0, len -= WPA_IE_SUITE_COUNT_LEN; + i < count && len >= WPA_SUITE_LEN; + i ++, len -= WPA_SUITE_LEN) { + if (!bcmp(ucast->list[i].oui, oui, DOT11_OUI_LEN)) + wsec &= ~WPA_CIPHER2WSEC(ucast->list[i].type); + } + } + /* Check for auth key management suite(s) */ + if (len >= WPA_IE_SUITE_COUNT_LEN) { + mgmt = (wpa_suite_auth_key_mgmt_t *)&ucast->list[count]; + count = ltoh16_ua((uint8 *)&mgmt->count); + for (i = 0, len -= WPA_IE_SUITE_COUNT_LEN; + i < count && len >= WPA_SUITE_LEN; + i ++, len -= WPA_SUITE_LEN) { + if (!bcmp(mgmt->list[i].oui, oui, DOT11_OUI_LEN)) + mode &= ~wpa_auth2mode(akm2auth(mgmt->list[i].type)); + } + } + + return wsec + mode; +} +#endif /* BCMSUPPL */ + +/* parse WPA IE to retrieve key algo (converted from WPA cipher) */ +static int +wpa_find_mckey_algo(wpa_t *wpa, uint8 *ie, int ie_len) +{ + int len; + wpa_suite_mcast_t *mcast; + uint8 *oui; + + /* validate ie length */ + if (!bcm_valid_tlv((bcm_tlv_t *)ie, ie_len)) { + dbg(wpa->nas, "IE is too short"); + return -1; + } + + /* type specific header processing */ + switch (*ie) { +#ifdef BCMWPA2 + case DOT11_MNG_RSN_ID: { + wpa_rsn_ie_fixed_t *rsnie = (wpa_rsn_ie_fixed_t *)ie; + if (rsnie->length < WPA_RSN_IE_TAG_FIXED_LEN) { + dbg(wpa->nas, "invalid RSN IE header"); + return -1; + } + if (ltoh16_ua((uint8 *)&rsnie->version) != WPA2_VERSION) { + dbg(wpa->nas, "unsupported RSN IE version"); + return -1; + } + mcast = (wpa_suite_mcast_t *)(rsnie + 1); + len = ie_len - WPA_RSN_IE_FIXED_LEN; + oui = (uint8*)WPA2_OUI; + break; + } +#endif /* BCMWPA2 */ + case DOT11_MNG_WPA_ID: { + wpa_ie_fixed_t *wpaie = (wpa_ie_fixed_t *)ie; + if (wpaie->length < WPA_IE_TAG_FIXED_LEN || + bcmp(wpaie->oui, WPA_OUI "\x01", WPA_IE_OUITYPE_LEN)) { + dbg(wpa->nas, "invalid WPA IE header"); + return -1; + } + if (ltoh16_ua((uint8 *)&wpaie->version) != WPA_VERSION) { + dbg(wpa->nas, "unsupported WPA IE version"); + return -1; + } + mcast = (wpa_suite_mcast_t *)(wpaie + 1); + len = ie_len - WPA_IE_FIXED_LEN; + oui = (uint8*)WPA_OUI; + break; + } + default: + dbg(wpa->nas, "unsupported IE type"); + return -1; + } + + /* Check for multicast suite */ + if (len >= WPA_SUITE_LEN) { + if (!bcmp(mcast->oui, oui, DOT11_OUI_LEN)) + return WPA_CIPHER2ALGO(mcast->type); + } + + return CRYPTO_ALGO_OFF; +} + +/* setup supplicant info in sta stucture */ +/* + * wsec - crypto bitvec, WEP_ENABLED/TKIP_ENABLED/AES_ENABLED + * algo - key algo, CRYPRO_ALGO_WEPXXXX, only when WEP_ENABLED + */ +int +wpa_set_suppl(wpa_t *wpa, nas_sta_t *sta, uint32 mode, uint32 wsec, uint32 algo) +{ + nas_t *nas = wpa->nas; + /* check if we support the requested mode */ + if (mode != (mode & nas->mode)) { + dbg(wpa->nas, "not supported mode 0x%x", mode); + return 1; + } + /* check if we support the requested cipher */ + if (wsec != (wsec & nas->wsec)) { + dbg(wpa->nas, "not supported wsec 0x%x", wsec); + return 1; + } + /* update sta supplicant info */ +#ifdef MFP + if (sta->key_auth_type == KEYAUTH_SHA256) { + dbg(wpa->nas, "PMF AES"); + sta->suppl.ptk_len = AES_PTK_LEN; + sta->suppl.tk_len = AES_TK_LEN; + sta->suppl.desc = WPA_KEY_DESC_V3; + } + else +#endif + if (WSEC_AES_ENABLED(wsec)) { + dbg(wpa->nas, "AES"); + sta->suppl.ptk_len = AES_PTK_LEN; + sta->suppl.tk_len = AES_TK_LEN; + sta->suppl.desc = WPA_KEY_DESC_V2; + } + else if (WSEC_TKIP_ENABLED(wsec)) { + dbg(wpa->nas, "TKIP"); + sta->suppl.ptk_len = TKIP_PTK_LEN; + sta->suppl.tk_len = TKIP_TK_LEN; + sta->suppl.desc = WPA_KEY_DESC_V1; + } + else { + dbg(wpa->nas, "unsupported WPA unicast ciphers"); + return 1; + } + dbg(wpa->nas, "ptk_len %d tk_len %d", sta->suppl.ptk_len, sta->suppl.tk_len); + sta->mode = mode; + sta->eapol_version = WPA_EAPOL_VERSION; + +#ifdef BCMWPA2 + if (mode & (WPA2 | WPA2_PSK)) + sta->eapol_version = WPA2_EAPOL_VERSION; +#endif /* BCMWPA2 */ + + sta->wsec = wsec; + sta->algo = algo; + + dbg(wpa->nas, "mode %d wsec %d algo %d", mode, wsec, algo); + return 0; +} + +/* This function does what we used to do with the EAPOL key message + * synthesized by the driver, except that now there's no EAPOL key + * message. + */ +int +wpa_driver_assoc_msg(wpa_t *wpa, bcm_event_t *dpkt, nas_sta_t *sta) +{ + nas_t *nas = wpa->nas; + wl_event_msg_t *event = &(dpkt->event); + uint8 *data = (uint8 *)(event + 1); + uint16 len = ntoh32(event->datalen); + uint32 mode, wsec; + itimer_status_t ts; +#ifdef BCMDBG + char eabuf[ETHER_ADDR_STR_LEN]; +#endif + uint32 algo, pmkc; + wpa_ie_fixed_t *wpaie; + uint8 *parse = data; + int parse_len = len; + int wpaie_len = 0; + + +#ifdef BCMWPA2 + sta_info_t *sta_info; + char sta_info_buf[300] __attribute__((aligned(4))); +#endif + + dbg(nas, "nas->wsec 0x%x nas->mode 0x%x", nas->wsec, nas->mode); + + /* reset WPA IE length */ + sta->suppl.assoc_wpaie_len = 0; + + /* search WPA IE */ + wpaie = bcm_find_wpaie(parse, parse_len); +#ifdef BCMWPA2 + /* search RSN IE */ + if (!wpaie) + wpaie = (wpa_ie_fixed_t *)bcm_parse_tlvs(data, len, DOT11_MNG_RSN_ID); +#endif /* BCMWPA2 */ + if (wpaie) + wpaie_len = wpaie->length + TLV_HDR_LEN; + + /* non-WPA sta comes in without WPA IE */ + if (!wpaie_len && WSEC_WEP_ENABLED(nas->wsec)) { + /* Authorize sta right away if we are configured to do WEP. */ + if (!(nas->mode & RADIUS)) { + nas_set_key(nas, &sta->ea, nas->wpa->gtk, nas->wpa->gtk_len, + nas->wpa->gtk_index, 0, 0, 0); + dbg(nas, "authorize %s (WEP)", ether_etoa((uchar *)&sta->ea, eabuf)); + nas_authorize(nas, &sta->ea); + return 0; + } + /* 802.1x request */ + else { + sta->mode = RADIUS; + sta->wsec = WEP_ENABLED; + sta->algo = CRYPTO_ALGO_WEP128; + dbg(wpa->nas, "mode %d wsec %d algo %d", sta->mode, + sta->wsec, sta->algo); + return 0; + } + } + + /* WPA capabilities, used in IE contruction */ + if ((nas->flags & NAS_FLAG_SUPPLICANT) && + nas_get_wpacap(nas, wpa->cap)) { + dbg(nas, "WPA capabilities retrival failed"); + return 1; + } + + /* If there was a stale timer descriptor, get rid of it. */ + wpa_stop_retx(sta); + sta->retries = 0; + + /* Check supplicant WPA IE against NAS config */ + if (nas->flags & NAS_FLAG_AUTHENTICATOR) { + if (wpa_parse_ie(wpa, (uint8*)wpaie, wpaie_len, &wsec, &mode, &pmkc, sta)) { + dbg(nas, "parse supplicant WPA IE failed"); + dump(nas, data, len); + return 1; + } + + } +#ifdef BCMSUPPL + /* check authenticator WPA IE to see if it supports our config */ + else { + if (wpa_check_ie(wpa, (uint8*)wpaie, wpaie_len, nas->wsec, nas->mode)) { + dbg(nas, "check authenticator WPA IE failed"); + dump(nas, data, len); + return 1; + } + wsec = nas->wsec; + mode = nas->mode; + } +#endif /* BCMSUPPL */ + + /* find mcast key algo. only needed when WEP as mcast key */ + algo = wpa_find_mckey_algo(wpa, (uint8*)wpaie, wpaie_len); + + /* update supplicant info */ + if (wpa_set_suppl(wpa, sta, mode, wsec, algo)) { + dbg(nas, "update STA suppl struct failed"); + return 1; + } + + sta->wpa_msg_timeout_s = RETRY_SECS; + sta->wpa_msg_timeout_ms = RETRY_MSECS; + +#ifdef BCMWPA2 + if ((sta->mode & WPA2) || (sta->mode & WPA2_PSK)) { + /* Query the Driver for the STA capabilities */ + bzero(sta_info_buf, 300); + nas_get_stainfo(nas, (char *)&sta->ea, sizeof(struct ether_addr), sta_info_buf, + 300); + sta_info = (sta_info_t *)sta_info_buf; + dbg(nas, "sta_info ver: %d listen_interval_ms: %dms", + sta_info->ver, sta_info->listen_interval_inms); + sta->wpa_msg_timeout_s = WPA2_DEFAULT_RETRY_SECS; + sta->wpa_msg_timeout_ms = WPA2_DEFAULT_RETRY_MSECS; + sta->listen_interval_ms = sta_info->listen_interval_inms; + } +#endif /* BCMWPA2 */ + /* Save the WPA IE */ + bcopy((uint8*)wpaie, sta->suppl.assoc_wpaie, wpaie_len); + sta->suppl.assoc_wpaie_len = wpaie_len; + + if (CHECK_PSK(sta->mode)) { + sta->suppl.pmk_len = wpa->pmk_len; + bcopy(wpa->pmk, sta->suppl.pmk, wpa->pmk_len); + } + +#ifdef BCMSUPPL + /* No need to start handshake for supplicant */ + if (nas->flags & NAS_FLAG_SUPPLICANT) { + /* fill the snonce */ + bcopy(wpa->global_key_counter, sta->suppl.snonce, NONCE_LEN); + wpa_incr_gkc(wpa); + dbg(nas, "done"); + return 0; + } +#endif /* BCMSUPPL */ + + /* If STA wants TKIP and we're in countermeasures, toss + * it. Driver will block these, but there's a race early + * in the period making this check is necessary. + */ + if (nas->MIC_countermeasures && WSEC_TKIP_ENABLED(wsec)) { + cleanup_sta(nas, sta, DOT11_RC_MIC_FAILURE, 0); + return 0; + } + + /* Get the anonce */ + bcopy(wpa->global_key_counter, sta->suppl.anonce, NONCE_LEN); + wpa_incr_gkc(wpa); + +#ifdef MFP2 + wpa_initialize_ipn(wpa); +#endif + + /* The driver could have a stale pairwise key which would cause the + * exchange to be encrypted. Be sure it's cleared. + */ + nas_set_key(nas, &sta->ea, NULL, 0, 0, 0, 0, 0); + sta->suppl.retry_state = sta->suppl.state; + sta->suppl.state = WPA_PTKSTART; + + /* WPA mode needs RADIUS server acceptance before beginning + * the 4-way handshake. + */ + if (sta->mode & WPA) { + /* send Identity Request */ + send_identity_req(nas, sta); + return 0; + } +#ifdef BCMWPA2 + /* WPA2 supports PMK caching. */ + else if (sta->mode & WPA2) { + dbg(nas, "checking for a PMK Cache"); + /* pmk found and valid, start 4-way */ + if (pmkc == 1 && sta->pae.ssnto) + ; + else { + /* send Identity Request */ + send_identity_req(nas, sta); + return 0; + } + } + else if (sta->mode & WPA2_PSK) { + /* + * Calculate the PMK ID for the PSK case. + * In the WPA2 case it gets done when the Radius Accept is received + */ + nas_wpa_calc_pmkid(wpa, sta); + } +#endif /* BCMWPA2 */ + + /* send the initial pkt in the 4 way exchange */ + sta->retries = 0; + if (wpa_send_eapol(wpa, sta) == FALSE) + return 1; + + wpa->ptk_rekey_secs = 0; + wpa->ptk_rekey_timer = 0; + + /* move to next state */ + sta->suppl.retry_state = sta->suppl.state; + sta->suppl.state = WPA_PTKINITNEGOTIATING; + + /* set a timeout for retransmission */ + ts = wpa_set_itimer(nas->timer, &sta->td, (bcm_timer_cb)wpa_retransmission, + (int) sta, sta->wpa_msg_timeout_s, sta->wpa_msg_timeout_ms); + if (ts != ITIMER_OK) + dbg(nas, "Setting PTKINITNEGOTIATING interval timer failed, code %d", ts); + + dbg(nas, "done"); + return 0; +} + +static int +wpa_new_ptk_callback(bcm_timer_id td, wpa_t *wpa) +{ + nas_t *nas = wpa->nas; + nas_sta_t *sta = nas->sta; + itimer_status_t ts; + + dbg(nas, "nas->wsec %d", nas->wsec); + + /* If there was a stale timer descriptor, get rid of it. */ + wpa_stop_retx(sta); + sta->retries = 0; + + /* No need to start handshake for supplicant */ + if (nas->flags & NAS_FLAG_SUPPLICANT) { + dbg(nas, "done"); + return 0; + } + + /* Get the anonce */ + bcopy(wpa->global_key_counter, sta->suppl.anonce, NONCE_LEN); + wpa_incr_gkc(wpa); + + sta->suppl.retry_state = sta->suppl.state; + sta->suppl.state = WPA_PTKSTART; + + /* send the initial pkt in the 4 way exchange */ + sta->retries = 0; + if (wpa_send_eapol(wpa, sta) == FALSE) + return 1; + + /* move to next state */ + sta->suppl.retry_state = sta->suppl.state; + sta->suppl.state = WPA_PTKINITNEGOTIATING; + + /* set a timeout for retransmission */ + ts = wpa_set_itimer(nas->timer, &sta->td, (bcm_timer_cb)wpa_retransmission, + (int) sta, sta->wpa_msg_timeout_s, sta->wpa_msg_timeout_ms); + if (ts != ITIMER_OK) + dbg(nas, "Setting PTKINITNEGOTIATING interval timer failed, code %d", ts); + + dbg(nas, "done"); + return 0; +} + +/* +* WDS notes: +* +* 1. We need to send out EAPOL key message with WPA_KEY_REQ bit set to +* the originating STA if we are supplicant so that the authenticator +* on that STA can initiate the key exchange. +* 2. We need to initiate key exchange with the originating STA if we are +* authenticator and no key exchange is currently in progress. +*/ +int wpa_driver_disassoc_msg(wpa_t *wpa, bcm_event_t *dpkt, nas_sta_t *sta) +{ + wl_event_msg_t *event = &(dpkt->event); + uint8 *data = (uint8 *)(event + 1); + uint16 len = ntoh32(event->datalen); + + nas_t *nas = wpa->nas; + uint16 reason; +#ifdef BCMDBG + char eabuf[ETHER_ADDR_STR_LEN]; +#endif + + /* non-WDS processing */ + if (!(nas->flags & NAS_FLAG_WDS)) { + /* free sta */ + return 1; + } + + /* we must check reason code and then decide what to do */ + if (len != 2) { + dbg(nas, "reason code length error in driver disassoc message"); + return 1; + } + /* TODO:reason = *(uint16 *)(dpkt+1); */ + reason = *(uint16 *) data; + reason = ntoh16(reason); + if (reason != DOT11_RC_AUTH_INVAL) { + dbg(nas, "reason code is not DOT11_RC_AUTH_INVAL"); + return 1; + } + + /* use existing sta or create a new one */ + if (!sta) { + sta = lookup_sta(nas, (struct ether_addr *)&dpkt->eth.ether_shost, + SEARCH_ENTER); + if (!sta) { + dbg(nas, "sta %s not available", ether_etoa((uchar *)&dpkt->eth.ether_shost, + eabuf)); + return 1; + } + } + + /* don't interrupt on-going negotiation */ + if (sta->td) { + dbg(nas, "sta %s is busy", ether_etoa((uchar *)&dpkt->eth.ether_shost, eabuf)); + return 0; + } + + +#ifdef BCMSUPPL + /* we are supplicant */ + if (nas->flags & NAS_FLAG_SUPPLICANT) + wpa_request(wpa, sta); +#endif + /* we are authenticator and no key exchange in progress */ + if (nas->flags & NAS_FLAG_AUTHENTICATOR) + wpa_start(wpa, sta); + + dbg(nas, "done"); + return 0; +} + +/* */ +static int +wpa_verifystart(wpa_t *wpa, nas_sta_t *sta, eapol_header_t *eapol) +{ + eapol_wpa_key_header_t *body = (eapol_wpa_key_header_t *)eapol->body; + nas_t *nas = wpa->nas; + uint32 mode; + + /* Is this a eapol-wpa-key request pkt */ + if ((ntohs(body->key_info) & WPA_KEY_REQ) == 0) { + dbg(nas, "This was not a request pkt"); + return 1; + } + + /* ensure the timer was cleared */ + wpa_stop_retx(sta); + + /* check supplicant auth mode. */ + if (wpa_parse_ie(wpa, body->data, ntohs(body->data_len), NULL, &mode, NULL, NULL)) { + dbg(nas, "parse supplicant WPA IE failed"); + return 1; + } + if ((mode & nas->mode) != mode) { + dbg(nas, "unsupported mode 0x%x", mode); + return 1; + } + + /* Save the WPA IE */ + bcopy(body->data, sta->suppl.assoc_wpaie, ntohs(body->data_len)); + sta->suppl.assoc_wpaie_len = ntohs(body->data_len); + + /* Get the anonce */ + bcopy(wpa->global_key_counter, sta->suppl.anonce, NONCE_LEN); + wpa_incr_gkc(wpa); + + /* Move to next state */ + sta->suppl.retry_state = sta->suppl.state; + sta->suppl.state = WPA_PTKSTART; + sta->retries = 0; + return 0; +} + + +static int +wpa_ptkstart(wpa_t *wpa, nas_sta_t *sta, eapol_header_t *eapol) +{ + eapol_wpa_key_header_t *body = (eapol_wpa_key_header_t *)eapol->body; + unsigned short key_info; + itimer_status_t ts; + + /* Is this a key request? */ + if (!((key_info = ntohs(body->key_info)) & WPA_KEY_REQ)) { + dbg(wpa->nas, "invalid EAPOL WPA key request"); + return 0; + } + if ((key_info & WPA_KEY_ERROR) != 0) { + dbg(wpa->nas, "KEY_ERROR flag set during PTKINIT"); + return 1; + } + /* ensure the timer was cleared */ + wpa_stop_retx(sta); + + /* send the initial pkt in the 4 way exchange */ + sta->retries = 0; + if (wpa_send_eapol(wpa, sta) == FALSE) + return 1; + + /* move to next state */ + sta->suppl.retry_state = sta->suppl.state; + sta->suppl.state = WPA_PTKINITNEGOTIATING; + + /* set a timeout for retransmission */ + ts = wpa_set_itimer(wpa->nas->timer, &sta->td, (bcm_timer_cb)wpa_retransmission, + (int) sta, sta->wpa_msg_timeout_s, sta->wpa_msg_timeout_ms); + if (ts != ITIMER_OK) + dbg(wpa->nas, "Setting PTKINITNEGOTIATING interval timer failed, code %d", ts); + + dbg(wpa->nas, "done"); + return 0; +} + +static void +wpa_goto_rekeyneg(nas_sta_t *sta) +{ + dbg(sta->nas, "Falling thru to group key negotiation"); + + wpa_ptkinitdone2(sta->nas->wpa, sta); +} + +static int +wpa_ptkinitnegotiating(wpa_t *wpa, nas_sta_t *sta, eapol_header_t *eapol) +{ + eapol_wpa_key_header_t *body = (eapol_wpa_key_header_t *)eapol->body; + ushort key_info, wpaie_len; + unsigned int required_flags, prohibited_flags; + itimer_status_t ts; + + /* Check that the packet looks like the correct response */ + required_flags = WPA_KEY_PAIRWISE | WPA_KEY_MIC; + prohibited_flags = WPA_KEY_ACK | WPA_KEY_INDEX_MASK; + key_info = ntohs(body->key_info); + + if (((key_info & required_flags) != required_flags) || + ((key_info & prohibited_flags) != 0)) { + dbg(wpa->nas, "Ignoring key response with incorrect key_info 0x%04x", + key_info); + return 0; + } + + /* check the replay counter */ + if (bcmp(body->replay, sta->suppl.replay, REPLAY_LEN) != 0) { + /* Ignore this message */ + dbg(wpa->nas, "failed replay check; ignoring"); + return 0; + } + + /* kill timeouts from previous state */ + wpa_stop_retx(sta); + + /* Check the WPA IE */ + wpaie_len = ntohs(body->data_len); + if (!wpaie_len || wpaie_len != sta->suppl.assoc_wpaie_len || + bcmp(body->data, sta->suppl.assoc_wpaie, wpaie_len) != 0) { + dbg(wpa->nas, "WPA IE mismatch"); + dbg(wpa->nas, "WPA IE in 4-way handshake message #2"); + dump(wpa->nas, body->data, wpaie_len); + dbg(wpa->nas, "WPA IE in driver assoc indication"); + dump(wpa->nas, sta->suppl.assoc_wpaie, wpaie_len); + return 1; + } + + /* Get the snonce */ + bcopy(body->nonce, sta->suppl.snonce, NONCE_LEN); + + /* generate the PTK */ + wpa_calc_ptk(wpa, sta); + + /* check the MIC */ + if (wpa_check_mic(sta, eapol) == FALSE) { + /* "Silently" discard (8.5.3.2) */ + dbg(wpa->nas, "MIC check failed; ignoring message"); + ts = wpa_set_itimer(wpa->nas->timer, &sta->td, (bcm_timer_cb)wpa_retransmission, + (int) sta, sta->wpa_msg_timeout_s, sta->wpa_msg_timeout_ms); + if (ts != ITIMER_OK) + dbg(wpa->nas, "Setting PTKSTART retry interval timer failed, code %d", ts); + return 0; + } + + /* increment the replay counter */ + wpa_incr_array(sta->suppl.replay, REPLAY_LEN); + + /* send pkt 3 */ + sta->retries = 0; + if (wpa_send_eapol(wpa, sta) == FALSE) + return 1; + + /* install the special handler to fall thru to group key exchange if + * sending m3 of 4-way handshake exceeds max. retries, which basically + * means m3 or m4 is lost + */ + if (sta->mode & (WPA | WPA_PSK)) + sta->retx_exceed_hndlr = wpa_goto_rekeyneg; + + /* set a timeout for retransmission */ + ts = wpa_set_itimer(wpa->nas->timer, &sta->td, (bcm_timer_cb)wpa_retransmission, + (int) sta, sta->wpa_msg_timeout_s, sta->wpa_msg_timeout_ms); + if (ts != ITIMER_OK) + dbg(wpa->nas, "Setting PTKINITDONE retry interval timer failed, code %d", ts); + + /* move to next state */ + sta->suppl.retry_state = sta->suppl.state; + sta->suppl.state = WPA_PTKINITDONE; + dbg(wpa->nas, "done"); + return 0; +} + +static int +wpa_ptkinitdone(wpa_t *wpa, nas_sta_t *sta, eapol_header_t *eapol) +{ + eapol_wpa_key_header_t *body = (eapol_wpa_key_header_t *)eapol->body; + nas_t *nas = wpa->nas; + ushort key_info; + unsigned int required_flags, prohibited_flags; + + /* Check that the packet looks like the correct response */ + required_flags = WPA_KEY_PAIRWISE | WPA_KEY_MIC; +#ifdef BCMWPA2 + if ((sta->mode & (WPA2 | WPA2_PSK))) + required_flags |= WPA_KEY_SECURE; +#endif + if (nas->flags & NAS_FLAG_WDS) + required_flags |= WPA_KEY_SECURE; + prohibited_flags = WPA_KEY_ACK | WPA_KEY_INDEX_MASK; + key_info = ntohs(body->key_info); + + if (((key_info & required_flags) != required_flags) || + ((key_info & prohibited_flags) != 0)) { + dbg(nas, "Ignoring key response with incorrect key_info 0x%04x", + key_info); + return 0; + } + + /* check the replay counter */ + if (bcmp(body->replay, sta->suppl.replay, REPLAY_LEN) != 0) { + /* Ignore this message. */ + dbg(nas, "failed replay check; ignoring"); + return 0; + } + + /* check the MIC */ + if (wpa_check_mic(sta, eapol) == FALSE) { + /* "silently" discard (8.5.3.4) */ + dbg(nas, "MIC check failed; ignoring message"); + return 0; + } + + /* Update key and start group key exchange if necessary */ + return wpa_ptkinitdone2(wpa, sta); +} + +/* plumb the pairwise key and start group key exchange */ +static int +wpa_ptkinitdone2(wpa_t *wpa, nas_sta_t *sta) +{ + nas_t *nas = wpa->nas; + itimer_status_t ts; +#ifdef BCMDBG + char eabuf[ETHER_ADDR_STR_LEN]; +#endif + + /* kill timeouts from previous state */ + wpa_stop_retx(sta); + + /* plumb pairwise key */ + if (nas_set_key(nas, &sta->ea, sta->suppl.temp_encr_key, + sta->suppl.tk_len, 0, 1, 0, 0) < 0) { + dbg(nas, "unicast key rejected by driver, assuming too many associated STAs"); + cleanup_sta(nas, sta, DOT11_RC_BUSY, 0); + return 0; + } + + /* not perform group key exchange if not required so */ + if ((nas->flags & NAS_FLAG_WDS) || + CHECK_WPA2(sta->mode)) { + if (sta->wds_td) + TIMER_DELETE(sta->wds_td); + + nas_sleep_ms(500); + + /* Authorize supplicant */ + dbg(nas, "authorize %s (WPA)", ether_etoa((uchar *)&sta->ea, eabuf)); + nas_authorize(nas, &sta->ea); + + sta->suppl.state = sta->suppl.retry_state = WPA_SETKEYSDONE; + + return 0; + } + + /* increment the replay counter */ + wpa_incr_array(sta->suppl.replay, REPLAY_LEN); + + /* Initiate the group key exchange */ + sta->suppl.state = WPA_REKEYNEGOTIATING; + + /* set the GTK if not already done */ + if (!(nas->flags & NAS_FLAG_GTK_PLUMBED)) { + wpa_init_gtk(wpa, sta); +#ifdef MFP2 + wpa_gen_igtk(wpa); + wpa->igtk.id = IGTK_NEXT_INDEX(wpa); +#endif + } + else { + + if (nas_get_group_rsc(nas, &wpa->gtk_rsc[0], wpa->gtk_index)) { + /* Don't use what we don't have. */ + memset(wpa->gtk_rsc, 0, sizeof(wpa->gtk_rsc)); + dbg(nas, "failed to find group key RSC"); + } + } + + sta->retries = 0; + if (wpa_send_eapol(wpa, sta) == FALSE) { + return 1; + } + sta->suppl.retry_state = WPA_REKEYNEGOTIATING; + + /* set a timeout for retransmission */ + ts = wpa_set_itimer(nas->timer, &sta->td, (bcm_timer_cb)wpa_retransmission, + (int) sta, sta->wpa_msg_timeout_s, sta->wpa_msg_timeout_ms); + if (ts != ITIMER_OK) + dbg(nas, "Setting REKEYNEGOTIATING retry interval timer failed, code %d", ts); + return 0; +} + +static void +wpa_rekeyneg(wpa_t *wpa, nas_sta_t *sta, eapol_header_t *eapol) +{ + eapol_wpa_key_header_t *body = (eapol_wpa_key_header_t *)eapol->body; + ushort key_info; + unsigned int required_flags, prohibited_flags; +#ifdef BCMDBG + char eabuf[ETHER_ADDR_STR_LEN]; +#endif + + /* Check that the packet looks like the correct response. + * WPA_KEY_ERROR is not really "prohibited". It's set as + * though it is to simplify its special case. + */ + required_flags = WPA_KEY_SECURE | WPA_KEY_MIC; + prohibited_flags = WPA_KEY_ACK | WPA_KEY_PAIRWISE | WPA_KEY_ERROR; + key_info = ntohs(body->key_info); + + if (((key_info & required_flags) != required_flags) || + ((key_info & prohibited_flags) != 0)) { + /* Pick off MIC failure reports and the like that + * arrive while we're in a group key exchange. + */ + if ((key_info & WPA_KEY_ERROR) != 0) { + wpa_setkeysdone(wpa, sta, eapol); + } else { + dbg(wpa->nas, "Ignoring key response with incorrect key_info 0x%04x", + key_info); + } + return; + } + + /* check the replay counter */ + if (bcmp(body->replay, sta->suppl.replay, REPLAY_LEN) != 0) { + /* Ignore the message. */ + dbg(wpa->nas, "failed replay check; ignoring"); + return; + } + + /* check the MIC */ + if (wpa_check_mic(sta, eapol) == FALSE) { + dbg(wpa->nas, "MIC check failed; ignoring message"); + return; + } + + /* kill timeouts from previous state */ + wpa_stop_retx(sta); + + /* Authorize supplicant */ + dbg(wpa->nas, "authorize %s (WPA)", ether_etoa((uchar *)&sta->ea, eabuf)); + nas_authorize(wpa->nas, &sta->ea); + + /* These states need more thought. */ + sta->suppl.state = sta->suppl.retry_state = WPA_SETKEYSDONE; + dbg(wpa->nas, "Group key exchange with %s completed", + ether_etoa((uchar *)&sta->ea, eabuf)); + + /* set PTK rekey timer */ + if (wpa->ptk_rekey_secs) { + itimer_status_t ts = wpa_set_itimer(wpa->nas->timer, &wpa->ptk_rekey_timer, + (bcm_timer_cb)wpa_new_ptk_callback, + (int)wpa, wpa->ptk_rekey_secs, 0); + if (ts != ITIMER_OK) + dbg(wpa->nas, "PTK interval timer set failed, code %d", ts); + } + + return; +} + +static void +wpa_setkeysdone(wpa_t *wpa, nas_sta_t *sta, eapol_header_t *eapol) +{ + eapol_wpa_key_header_t *body = (eapol_wpa_key_header_t *)eapol->body; + unsigned int required_flags, prohibited_flags, MIC_failure_flags; + ushort key_info; + + dbg(wpa->nas, "start"); + + /* Is this a proper WPA key request? */ + required_flags = WPA_KEY_REQ; + prohibited_flags = WPA_KEY_ACK; + key_info = ntohs(body->key_info); + if (((key_info & required_flags) != required_flags) || + ((key_info & prohibited_flags) != 0)) { + + if (((key_info & WPA_KEY_REQ) == 0) && + !bcmp(body->replay, sta->suppl.replay, REPLAY_LEN)) { + /* Silently ignore redundant tardy reply */ + } else { + dbg(wpa->nas, "Ignoring invalid EAPOL WPA key request, key_info 0x%04x", + key_info); + } + return; + } + /* The combination of REQ, ERROR, and MIC is the STA's way + * of informing the authenticator of a MIC failure. + */ + MIC_failure_flags = WPA_KEY_ERROR | WPA_KEY_REQ | WPA_KEY_MIC; + if ((key_info & MIC_failure_flags) == MIC_failure_flags) { + wpa_mic_error(wpa, sta, FALSE); + return; + } + + if (key_info & WPA_KEY_PAIRWISE) { + /* A STA wants its pairwise key updated. */ + sta->suppl.state = WPA_PTKSTART; + /* This will fall into the 4-way handshake on return. */ + + } else { + /* It's a request to update group keys for all. */ + /* Some places in the spec say there should be a 4-way + * handshake for the requester, too. + */ + wpa_new_gtk(wpa); + } + dbg(wpa->nas, "done"); + return; +} + +#ifdef BCMDBG +static char *sta_state[] = { + /* authenticator states */ + /* 4 way pkt exchange state machine */ + "WPA_DISCONNECT", + "WPA_DISCONNECTED", + "WPA_INITIALIZE", + "WPA_AUTHENTICATION2", + "WPA_INITPMK", + "WPA_INITPSK", + "WPA_PTKSTART", + "WPA_PTKINITNEGOTIATING", + "WPA_PTKINITDONE", + "WPA_UPDATEKEYS", + "WPA_INTEGRITYFAILURE", + "WPA_KEYUPDATE", + /* group key state machine */ + "WPA_REKEYNEGOTIATING", + "WPA_KEYERRROR", + "WPA_REKEYESTABLISHED", + /* Authenticator, group key */ + "WPA_SETKEYS", + "WPA_SETKEYSDONE", +#ifdef BCMSUPPL + /* supplicant states */ + "WPA_SUP_DISCONNECTED", + "WPA_SUP_INITIALIZE", + "WPA_SUP_AUTHENTICATION", + "WPA_SUP_STAKEYSTARTP", + "WPA_SUP_STAKEYSTARTG", + "WPA_SUP_KEYUPDATE" +#endif /* BCMSUPPL */ +}; +static char* +sta_state_name(int state) +{ + return state < sizeof(sta_state)/sizeof(sta_state[0]) ? + sta_state[state] : "unknown"; +} +#endif /* BCMDBG */ + +#ifdef BCMSUPPL +/* + * Traverse a string of 1-byte tag/1-byte length/variable-length value + * triples, returning a pointer to the substring whose first element + * matches tag + */ +int +eapol_sup_process_key(wpa_t *wpa, eapol_header_t *eapol, nas_sta_t *sta) +{ + eapol_wpa_key_header_t *body = (eapol_wpa_key_header_t *)eapol->body; + ushort key_info = ntohs(body->key_info); + ushort data_len = ntohs(body->data_len); + /* uint8 TSnonce[NONCE_LEN]; */ + bool UpdatePTK = FALSE; +#ifdef BCMWPA2 + bool UpdateGTK = FALSE; +#endif + eapol_sup_pk_state_t state = EAPOL_SUP_PK_UNKNOWN; + + /* get replay counter from recieved frame */ + bcopy(body->replay, sta->suppl.replay, REPLAY_LEN); + + dbg(wpa->nas, "start"); + if (key_info & WPA_KEY_MIC) { + dbg(wpa->nas, "MIC"); + if (wpa_check_mic(sta, eapol) == FALSE) { + dbg(wpa->nas, "MIC Failed"); + state = EAPOL_SUP_PK_MICFAILED; + } else { + dbg(wpa->nas, "MIC OK"); + state = EAPOL_SUP_PK_MICOK; + } + } + +#ifdef BCMWPA2 +/* decrypt key data field */ + if ((sta->mode & (WPA2 | WPA2_PSK)) && + (key_info & WPA_KEY_ENCRYPTED_DATA)) + if (!wpa_decr_key_data(wpa, sta, body)) { + err(wpa->nas, "decryption of key data failed"); + nas_handle_error(wpa->nas, 1); + } +#endif /* BCMWPA2 */ + + + if (key_info & WPA_KEY_PAIRWISE) { + sta->suppl.state = WPA_SUP_STAKEYSTARTP; + /* 4-way handshke message 1 - reset state to EAPOL_SUP_PK_MSG1 */ + if (!(key_info & WPA_KEY_MIC)) { + nas_set_key(wpa->nas, &sta->ea, NULL, 0, 0, 0, 0, 0); + sta->suppl.pk_state = EAPOL_SUP_PK_MSG1; + } + /* 4-way handshake message 3 - validate current state */ + else if (sta->suppl.pk_state != EAPOL_SUP_PK_MSG3) + return state; + } + else + sta->suppl.state = WPA_SUP_STAKEYSTARTG; + + /* Per 802.11i spec, silently drop MIC failures */ + if (key_info & WPA_KEY_PAIRWISE) { + dbg(wpa->nas, "Pairwise"); + /* Pairwise Key */ + if (state != EAPOL_SUP_PK_MICFAILED) { + dbg(wpa->nas, "!Failed"); + /* bcopy(suppl->snonce, TSNonce, NONCE_LEN); */ + if (key_info & WPA_KEY_INSTALL) { +#ifdef BCMWPA2 + if ((sta->mode & (WPA2 | WPA2_PSK))) { + bcm_tlv_t *rsnie; + int len = ntohs(body->data_len); + + dbg(wpa->nas, "data_len %d", len); + + rsnie = bcm_parse_tlvs(body->data, len, DOT11_MNG_RSN_ID); + if (rsnie) + dbg(wpa->nas, "found rsnie"); + else + dbg(wpa->nas, "didn't find rsnie"); + + if (!(UpdateGTK = wpa_extract_gtk(wpa, sta, eapol))) { + err(wpa->nas, "extraction of gtk from eapol message" + " failed"); + nas_handle_error(wpa->nas, 1); + } + + } else +#endif /* BCMWPA2 */ + /* Check message 3 WPA IE against probe response IE. */ + if (!data_len || data_len != sta->suppl.assoc_wpaie_len || + bcmp(body->data, sta->suppl.assoc_wpaie, data_len)) { + dbg(wpa->nas, "WPA IE mismatch"); + dbg(wpa->nas, "WPA IE in 4-way handdshake message #3"); + dump(wpa->nas, body->data, data_len); + dbg(wpa->nas, "WPA IE in driver assoc indication"); + dump(wpa->nas, sta->suppl.assoc_wpaie, + sta->suppl.assoc_wpaie_len); + return EAPOL_SUP_PK_ERROR; + } + } + bcopy(body->nonce, sta->suppl.anonce, NONCE_LEN); + wpa_calc_ptk(wpa, sta); + } + + if (state == EAPOL_SUP_PK_MICOK) { + dbg(wpa->nas, "MICOK"); + if (key_info & WPA_KEY_INSTALL) + UpdatePTK = TRUE; + else { + dbg(wpa->nas, "INSTALL flag not set in msg 3 key_info; no PTK" + " installed"); + } + } + } else if (state == EAPOL_SUP_PK_MICOK) { + dbg(wpa->nas, "Group, MICOK"); +#ifdef BCMWPA2 + if ((sta->mode & (WPA2 | WPA2_PSK))) { + if (!(UpdateGTK = wpa_extract_gtk(wpa, sta, eapol))) { + err(wpa->nas, "extraction of gtk from eapol message failed"); + nas_handle_error(wpa->nas, 1); + } + } else { +#endif /* BCMWPA2 */ + /* Group Key */ + if (!wpa_decr_gtk(wpa, sta, body)) { + dbg(wpa->nas, "unencrypt failed"); + state = EAPOL_SUP_PK_MICFAILED; + } else { + dbg(wpa->nas, "unencrypt ok, plumb gtk"); + wpa_plumb_gtk(wpa, key_info & WPA_KEY_INSTALL); + /* nas_deauthenticate(wpa->nas, suppl->ea) */ + } +#ifdef BCMWPA2 + } +#endif + } else { + dbg(wpa->nas, "Group, !MICOK"); + state = EAPOL_SUP_PK_MICFAILED; + } + + if ((key_info & WPA_KEY_ACK) && (state != EAPOL_SUP_PK_MICFAILED)) { + dbg(wpa->nas, "ACK, !Failed"); +/* Send EAPOL(0, 1, 0, 0, 0, K, 0, TSNonce, 0, MIC(TPTK), 0) */ + if (wpa_send_eapol(wpa, sta) == FALSE) { + dbg(wpa->nas, "error: can't send eapol msg to AP"); + return EAPOL_SUP_PK_ERROR; + } + } + if (UpdatePTK == TRUE) { + dbg(wpa->nas, "UpdatePTK"); + nas_sleep_ms(100); + + if (nas_set_key(wpa->nas, &sta->ea, sta->suppl.temp_encr_key, sta->suppl.tk_len, 0, + 1, 0, 0) < 0) { + dbg(wpa->nas, "nas_set_key() failed"); + nas_deauthenticate(wpa->nas, &sta->ea, DOT11_RC_BUSY); + } + } +#ifdef BCMWPA2 + if (UpdateGTK == TRUE) { + dbg(wpa->nas, "UpdateGTK"); + wpa_plumb_gtk(wpa, key_info & WPA_KEY_INSTALL); + } +#endif + if ((state == EAPOL_SUP_PK_MICOK) && (key_info & WPA_KEY_SECURE)) { +#ifdef BCMDBG + char eabuf[ETHER_ADDR_STR_LEN]; +#endif + + /* Authorize authenticator */ + dbg(wpa->nas, "authorize %s (WPA)", ether_etoa((uchar *)&sta->ea, eabuf)); + nas_authorize(wpa->nas, &sta->ea); + + /* We are done! no more retries */ + wpa_stop_retx(sta); + if (sta->wds_td) + TIMER_DELETE(sta->wds_td); + } + + dbg(wpa->nas, "done"); + return state; +} + +/* Process a WPA-EAPOL-Key packet at the supplicant */ +int +process_sup_wpa(wpa_t *wpa, eapol_header_t *eapol, nas_sta_t *sta) +{ +#ifdef BCMDBG + nas_t *nas = wpa->nas; + char eabuf[ETHER_ADDR_STR_LEN]; + eapol_wpa_key_header_t *wpa_key = (eapol_wpa_key_header_t *)eapol->body; + uint16 key_info = ntohs(wpa_key->key_info); +#endif + + dbg(nas, "start for %s", ether_etoa((uchar *)&sta->ea, eabuf)); + dbg(nas, "state %s key info %04x", sta_state_name(sta->suppl.state), key_info); + + if (sta->suppl.state == WPA_SUP_AUTHENTICATION) + sta->suppl.state = WPA_SUP_STAKEYSTARTP; + if (sta->suppl.retry_state == WPA_SUP_AUTHENTICATION) + sta->suppl.retry_state = WPA_SUP_STAKEYSTARTP; + + /* Proceed with the key exchange... */ + +/* !!! most of this belongs somewhere else. only STAKEYSTAT is handled here */ + /* New WPA state */ + switch (sta->suppl.state) { + case WPA_SUP_DISCONNECTED: + dbg(nas, "WPA_SUP_DISCONNECTED"); + /* StaDisconnect() */ + /* fall through */ + case WPA_SUP_INITIALIZE: + dbg(nas, "WPA_SUP_INITIALIZE: %s", ether_etoa((uchar *)&sta->ea, eabuf)); +/* + MSK = 0 + 802.1X:; portEnabled = FALSE + Remove PTK + Remove GTK(0..N) + 802.1X:portValid = FALSE +*/ + break; + case WPA_SUP_AUTHENTICATION: + dbg(nas, "WPA_SUP_AUTHENTICATION: %s", ether_etoa((uchar *)&sta->ea, eabuf)); +/* + SNonce = Counter++ + PTK=GTK(0..N) = 0 + CANonce = 0 + 802.1X::portValid = FALSE + 802.1X::portControl = Auto + 802.1X::portEnabled = FALSE +*/ + break; + case WPA_SUP_STAKEYSTARTP: + case WPA_SUP_STAKEYSTARTG: + dbg(nas, "WPA_SUP_STAKEYSTARTP/G: %s", ether_etoa((uchar *)&sta->ea, eabuf)); + /* ensure the timer was cleared */ + wpa_stop_retx(sta); + if (eapol_sup_process_key(wpa, eapol, sta) == EAPOL_SUP_PK_ERROR) + return 1; + break; + case WPA_SUP_KEYUPDATE: + dbg(nas, "WPA_SUP_KEYUPDATE: %s", ether_etoa((uchar *)&sta->ea, eabuf)); +/* + SNonce = Counter++ + Remove PTK + Remove GTK(0..N) + Send EAPOL() + IntegrityFailed = False + Updatekeys = False +*/ + break; + default: + dbg(nas, "error: WPA state not recognized %d for sta %s", + sta->suppl.state, ether_etoa((uchar *)&sta->ea, eabuf)); + return 1; + } + dbg(nas, "done"); + return 0; +} +#endif /* BCMSUPPL */ + +/* Process a WPA-EAPOL-Key packet */ +int +process_wpa(wpa_t *wpa, eapol_header_t *eapol, nas_sta_t *sta) +{ + int ret = 0; + nas_t *nas = wpa->nas; +#ifdef BCMDBG + char eabuf[ETHER_ADDR_STR_LEN]; +#endif + eapol_wpa_key_header_t *wpa_key = (eapol_wpa_key_header_t *)eapol->body; + uint16 key_info = ntohs(wpa_key->key_info); + + dbg(nas, "start for %s", ether_etoa((uchar *)&sta->ea, eabuf)); + dbg(nas, "state %s key info %04x", sta_state_name(sta->suppl.state), key_info); + + /* + * Supplicant requested a 4-way handshake. May or may not honor + * the request depending on our own state. + */ + if ((nas->flags & NAS_FLAG_WDS) && + (key_info & WPA_KEY_REQ) && (key_info & WPA_KEY_PAIRWISE)) { + if (sta->suppl.state == WPA_AUTHENTICATION2 || + sta->suppl.state == WPA_PTKINITNEGOTIATING || + sta->suppl.state == WPA_SETKEYSDONE || + sta->suppl.state == WPA_DISCONNECT) { + /* + * Start handshake if when there is no initiator in progress. + */ + if (!sta->wds_td) { + wpa_start(wpa, sta); + } + } + return 0; + } + + /* If STA wants TKIP and we're in countermeasures, toss + * it. Driver will block these, but there's a race early + * in the period making this check is necessary. + */ + if (nas->MIC_countermeasures && WSEC_TKIP_ENABLED(sta->wsec)) { + cleanup_sta(nas, sta, DOT11_RC_MIC_FAILURE, 0); + return 0; + } + + /* New WPA state */ + switch (sta->suppl.state) { + case WPA_SETKEYSDONE: + /* A supplicant in this state is probably here + * asking to be rekeyed. + */ + dbg(nas, "SETKEYSDONE: %s", ether_etoa((uchar *)&sta->ea, eabuf)); + wpa_setkeysdone(wpa, sta, eapol); + if (sta->suppl.state != WPA_PTKSTART) + return 0; + /* fall through */ + case WPA_AUTHENTICATION2: + dbg(nas, "AUTHENTICATION2: %s", ether_etoa((uchar *)&sta->ea, eabuf)); + if (wpa_verifystart(wpa, sta, eapol)) { + return 1; + } + else if (!sta || ((sta->mode & WPA) && + (sta->suppl.retry_state != WPA_PTKSTART))) + /* WPA-mode will be back if RADIUS auth works. */ + return 0; + /* fall through */ + + case WPA_PTKSTART: + dbg(nas, "PTKSTART: %s", ether_etoa((uchar *)&sta->ea, eabuf)); + ret = wpa_ptkstart(wpa, sta, eapol); + break; + + case WPA_PTKINITNEGOTIATING: + dbg(nas, "PTKINITNEGOTIATING: %s", ether_etoa((uchar *)&sta->ea, eabuf)); + ret = wpa_ptkinitnegotiating(wpa, sta, eapol); + break; + + case WPA_PTKINITDONE: + dbg(nas, "PTKINITDONE: %s", ether_etoa((uchar *)&sta->ea, eabuf)); + ret = wpa_ptkinitdone(wpa, sta, eapol); + break; + + case WPA_REKEYNEGOTIATING: + dbg(nas, "WPA_REKEYNEGOTIATING: %s", ether_etoa((uchar *)&sta->ea, eabuf)); + wpa_rekeyneg(wpa, sta, eapol); + break; + + default: + dbg(nas, "error: WPA state not recognized"); + break; + } + dbg(nas, "done"); + return ret; +} + + +/* generate the initial global_key_counter */ +void +initialize_global_key_counter(wpa_t *wpa) +{ + unsigned char buff[32], prf_buff[PRF_RESULT_LEN]; + unsigned char prefix[] = "Init Counter"; + + nas_rand128(&buff[0]); + nas_rand128(&buff[16]); + /* Still not exactly right, but better. */ + fPRF(buff, sizeof(buff), prefix, strlen((char *)prefix), + (unsigned char *) &wpa->nas->ea, ETHER_ADDR_LEN, + prf_buff, KEY_COUNTER_LEN); + memcpy(wpa->global_key_counter, prf_buff, KEY_COUNTER_LEN); + memcpy(wpa->initial_gkc, wpa->global_key_counter, KEY_COUNTER_LEN); +} + +#ifdef MFP2 +/* generate the initial global_key_counter */ +static void +wpa_initialize_ipn(wpa_t *wpa) +{ + unsigned char buff[32], prf_buff[PRF_RESULT_LEN]; + unsigned char prefix[] = "Init Counter"; + + printf("%s: enter\n", __FUNCTION__); + nas_rand128(&buff[0]); + nas_rand128(&buff[16]); + /* Still not exactly right, but better. */ + fPRF(buff, sizeof(buff), prefix, strlen((char *)prefix), + (unsigned char *) &wpa->nas->ea, ETHER_ADDR_LEN, + prf_buff, KEY_COUNTER_LEN); + memcpy(&wpa->igtk.ipn_lo, prf_buff, sizeof(uint32)); + memcpy(&wpa->igtk.ipn_hi, prf_buff+sizeof(uint32), sizeof(uint16)); + printf("%s: done\n", __FUNCTION__); +} + +static void +wpa_gen_igtk(wpa_t *wpa) +{ + unsigned char data[256], prf_buff[PRF_RESULT_LEN]; + unsigned char prefix[] = "Group key expansion"; + int data_len = 0; + + printf("%s: enter\n", __FUNCTION__); + wpa->igtk.len = AES_TK_LEN; + + /* create the the data portion */ + bcopy((char*)&wpa->nas->ea, (char*)&data[data_len], ETHER_ADDR_LEN); + data_len += ETHER_ADDR_LEN; + *(uint32 *)&data[data_len] = wpa->igtk.ipn_lo; + *(uint16 *)&data[data_len+sizeof(uint32)] = wpa->igtk.ipn_hi; + data_len += 6; + wpa->igtk.ipn_lo++; + if (wpa->igtk.ipn_lo == 0) + wpa->igtk.ipn_hi++; + + /* generate the GTK */ + fPRF(wpa->gmk, sizeof(wpa->gmk), prefix, strlen((char *)prefix), + data, data_len, prf_buff, AES_TK_LEN); + memcpy(wpa->igtk.key, prf_buff, AES_TK_LEN); + printf("WPA plugin IGTK, ID %d len %d ", wpa->igtk.id, wpa->igtk.len); + nas_set_key(wpa->nas, &wpa->nas->ea, wpa->igtk.key, wpa->igtk.len, wpa->igtk.id, 0, + wpa->igtk.ipn_lo, wpa->igtk.ipn_hi); +} +#endif /* MFP */ + +static void +wpa_incr_gkc(wpa_t *wpa) +{ + wpa_incr_array(wpa->global_key_counter, KEY_COUNTER_LEN); + + /* if key counter is now equal to the original one, reset it */ + if (!bcmp(wpa->global_key_counter, wpa->initial_gkc, KEY_COUNTER_LEN)) + initialize_global_key_counter(wpa); +} + +void +initialize_gmk(wpa_t *wpa) +{ + unsigned char *gmk = (unsigned char *)wpa->gmk; + + nas_rand128(&gmk[0]); + nas_rand128(&gmk[16]); +} + +#ifdef BCMSUPPL +/* build and send EAPOL key request message */ +static void +request_pkinit(bcm_timer_id timer, int data) +{ + nas_sta_t *sta = (nas_sta_t *)data; + nas_t *nas = sta->nas; + wpa_t *wpa = nas->wpa; + + /* If there was a stale timer descriptor, get rid of it. */ + wpa_stop_retx(sta); + + /* + * build expected authenticator wpaie so that we can compare + * what's carried in message #3 of the 4-way handshake. + * No WEP supported when doing WPA over WDS. + */ + sta->suppl.assoc_wpaie_len = sizeof(sta->suppl.assoc_wpaie); + wpa_build_ie(wpa, nas->wsec, CRYPTO_ALGO_OFF, nas->mode, + sta->suppl.assoc_wpaie, &sta->suppl.assoc_wpaie_len); + + /* we should have no key installed in the MAC by now */ + sta->suppl.retry_state = sta->suppl.state; + sta->suppl.state = WPA_SUP_INITIALIZE; + + /* WPA mode needs RADIUS server acceptance before beginning + * the 4-way handshake. + */ + if (nas->mode & WPA) + return; + + /* send the key request pkt to start the 4 way exchange */ + sta->retries = 0; + if (wpa_send_eapol(wpa, sta) == FALSE) + return; + + /* move to next state */ + sta->suppl.retry_state = sta->suppl.state; + sta->suppl.state = WPA_SUP_AUTHENTICATION; + + /* set a timeout for retransmission */ + if (wpa_set_itimer(nas->timer, &sta->td, (bcm_timer_cb)wpa_retransmission, + (int)sta, sta->wpa_msg_timeout_s, sta->wpa_msg_timeout_ms) != ITIMER_OK) + dbg(nas, "Setting WPA_SUP_AUTHENTICATION interval timer failed"); +} + +/* send EAPOL key request message */ +void +wpa_request(wpa_t *wpa, nas_sta_t *sta) +{ + struct itimerspec its; + itimer_status_t ret = ITIMER_OK; + nas_t *nas = wpa->nas; + + /* remove previous timer if any */ + if (sta->wds_td) + TIMER_DELETE(sta->wds_td); + + /* + * start the reqeust right away only when the + * supplicant is not in key exchange process. + */ + sta->wpa_msg_timeout_s = RETRY_SECS; + sta->wpa_msg_timeout_ms = RETRY_MSECS; + + if (sta->suppl.pk_state == EAPOL_SUP_PK_UNKNOWN || + sta->suppl.pk_state == EAPOL_SUP_PK_DONE) { + /* kick off the negotiation */ + request_pkinit(0, (int)sta); + } + /* delay the next request(s) */ + else { + dbg(nas, "delay request, handshake in progress"); + wpa_stop_retx(sta); + } + + /* set up retry timer */ + its.it_interval.tv_sec = wpa->wds_to ? : 60; + its.it_interval.tv_nsec = 0 * NSECS_PER_MSEC; + its.it_value.tv_sec = wpa->wds_to ? : 60; + its.it_value.tv_nsec = 0 * NSECS_PER_MSEC; + + if (bcm_timer_create(nas->timer, &sta->wds_td)) + ret = ITIMER_CREATE_ERROR; + else if (bcm_timer_connect(sta->wds_td, request_pkinit, (int)sta)) + ret = ITIMER_CONNECT_ERROR; + else if (bcm_timer_settime(sta->wds_td, &its)) + ret = ITIMER_SET_ERROR; + if (ret) + dbg(nas, "failed to set up pairwise key requestor timer"); +} +#endif /* BCMSUPPL */ + +/* pretend to have received a assoc message from the driver. */ +static void +start_pkinit(bcm_timer_id timer, int data) +{ + + + char msg[sizeof(bcm_event_t) + 128 + 2]; + bcm_event_t *assoc = (bcm_event_t *)msg; + + wl_event_msg_t *event = &(assoc->event); + uint8 *databuf = (uint8 *)(event + 1); + + nas_sta_t *sta = (nas_sta_t *)data; + nas_t *nas = sta->nas; + wpa_t *wpa = nas->wpa; + uint16 len = sizeof(msg); /* - sizeof(bcm_event_t); */ + + /* wpa message header */ + bcopy(nas->ea.octet, assoc->eth.ether_dhost, ETHER_ADDR_LEN); + bcopy(sta->ea.octet, assoc->eth.ether_shost, ETHER_ADDR_LEN); + assoc->eth.ether_type = htons(ETHER_TYPE_BRCM); + + /* assoc->version = BCM_MSG_VERSION; */ + event->event_type = hton32(WLC_E_ASSOC_IND); + + strncpy(event->ifname, nas->interface, sizeof(event->ifname)); + /* append wpa ie */ + if (wpa_build_ie(wpa, sta->wsec, sta->algo, + sta->mode, databuf, &len)) { + dbg(nas, "wpa_build_ie failed"); + return; + } + + if (len > 128) { + dbg(nas, "wpa_build_ie failed: length greater than 128 bytes"); + return; + } + + event->datalen = hton32(len); + event->version = hton16(BCM_EVENT_MSG_VERSION); + event->status = 0; /* TODO: Is value OK ??? */ + event->reason = 0; /* TODO: Is value OK ??? */ + event->auth_type = 0; /* TODO: Is value OK ??? */ + event->flags = 0; /* TODO: Is value OK ??? */ + bcopy(sta->ea.octet, event->addr.octet, ETHER_ADDR_LEN); + + /* BCM Vendor specifc header... */ + assoc->bcm_hdr.subtype = htons(BCMILCP_SUBTYPE_VENDOR_LONG); + assoc->bcm_hdr.version = BCMILCP_BCM_SUBTYPEHDR_VERSION; + bcopy(BRCM_OUI, &assoc->bcm_hdr.oui[0], DOT11_OUI_LEN); + /* vendor spec header length + pvt data length (private indication hdr + actual message + * itself) + */ + assoc->bcm_hdr.length = htons(BCMILCP_BCM_SUBTYPEHDR_MINLENGTH + BCM_MSG_LEN + len); + assoc->bcm_hdr.usr_subtype = htons(BCMILCP_BCM_SUBTYPE_EVENT); + + /* Last 2 bytes of the message should be 0x00 0x00 to signal that there are no ethertypes + * which are following this + */ + msg[sizeof(bcm_event_t) + len ] = 0x00; + msg[sizeof(bcm_event_t) + len + 1 ] = 0x00; + + dbg(nas, "start_pkinit: sending fake msg to driver_message_dispatch"); + driver_message_dispatch(nas, assoc); + +} + +void +wpa_start(wpa_t *wpa, nas_sta_t *sta) +{ + struct itimerspec its; + itimer_status_t ret = ITIMER_OK; + nas_t *nas = wpa->nas; + + /* remove previous timer if any */ + if (sta->wds_td) + TIMER_DELETE(sta->wds_td); + + /* kick off the negotiation */ + start_pkinit(0, (int)sta); + + /* set up retry timer */ + its.it_interval.tv_sec = wpa->wds_to ? : 60; + its.it_interval.tv_nsec = 0 * NSECS_PER_MSEC; + its.it_value.tv_sec = wpa->wds_to ? : 60; + its.it_value.tv_nsec = 0 * NSECS_PER_MSEC; + + if (bcm_timer_create(nas->timer, &sta->wds_td)) + ret = ITIMER_CREATE_ERROR; + else if (bcm_timer_connect(sta->wds_td, start_pkinit, (int)sta)) + ret = ITIMER_CONNECT_ERROR; + else if (bcm_timer_settime(sta->wds_td, &its)) + ret = ITIMER_SET_ERROR; + if (ret) + dbg(nas, "failed to set up pairwise key initiator timer"); +} diff --git a/release/src-rt/wl/nas/wpa.h b/release/src-rt/wl/nas/wpa.h new file mode 100644 index 0000000000..a683806a1d --- /dev/null +++ b/release/src-rt/wl/nas/wpa.h @@ -0,0 +1,263 @@ +/* + * WPA definitions + * + * Copyright (C) 2002 Broadcom Corporation + * + * $Id: wpa.h 245219 2011-03-09 02:06:06Z kenlo $ + */ + +#ifndef _wpa_h_ +#define _wpa_h_ + +#include +#include +#include +#include +#include +#include +#define REPLAY_LEN 8 +#define NONCE_LEN 32 +#define PMK_LEN 32 +#define GMK_LEN 32 +#define KEY_COUNTER_LEN 32 + +#define WEP1_PTK_LEN 48 +#define WEP1_TK_LEN 5 +#define WEP128_PTK_LEN 48 +#define WEP128_TK_LEN 13 + +#define TKIP_PTK_LEN 64 +#define TKIP_TK_LEN 32 + +#define AES_PTK_LEN 48 +#define AES_TK_LEN 16 + +#define MIC_KEY_LEN 16 +#define MAX_WPA_IE 256 + +#define WPA_RETRY 7 + +#ifdef BCMWPA2 +/* WPA2 timeout initial values */ +#define WPA2_DEFAULT_RETRY_MSECS 990 +#define WPA2_DEFAULT_RETRY_SECS 0 +#endif + +typedef uint8 wpaie_buf_t[MAX_WPA_IE]; + +/* GTK plumbing index values */ +#define GTK_INDEX_1 1 +#define GTK_INDEX_2 2 + +/* IGTK plumbing index values */ +#define IGTK_INDEX_1 4 +#define IGTK_INDEX_2 5 + +#define KEYAUTH_SHA1 4 +#define KEYAUTH_SHA256 6 + +/* WPA states */ +typedef enum { + /* authenticator states */ + /* 4 way pkt exchange state machine */ + WPA_DISCONNECT, + WPA_DISCONNECTED, + WPA_INITIALIZE, + WPA_AUTHENTICATION2, + WPA_INITPMK, + WPA_INITPSK, + WPA_PTKSTART, + WPA_PTKINITNEGOTIATING, + WPA_PTKINITDONE, + WPA_UPDATEKEYS, + WPA_INTEGRITYFAILURE, + WPA_KEYUPDATE, + /* group key state machine */ + WPA_REKEYNEGOTIATING, + WPA_KEYERRROR, + WPA_REKEYESTABLISHED, + /* Authenticator, group key */ + WPA_SETKEYS, + WPA_SETKEYSDONE, +#ifdef BCMSUPPL + /* supplicant states */ + WPA_SUP_DISCONNECTED, + WPA_SUP_INITIALIZE, + WPA_SUP_AUTHENTICATION, + WPA_SUP_STAKEYSTARTP, + WPA_SUP_STAKEYSTARTG, + WPA_SUP_KEYUPDATE +#endif +} wpa_suppl_state_t; + +#ifdef BCMSUPPL +typedef enum { + EAPOL_SUP_PK_ERROR, + EAPOL_SUP_PK_UNKNOWN, + EAPOL_SUP_PK_MICOK, + EAPOL_SUP_PK_MICFAILED, + EAPOL_SUP_PK_MSG1, + EAPOL_SUP_PK_MSG3, + EAPOL_SUP_PK_DONE +} eapol_sup_pk_state_t; +#endif + +/* Declare incomplete types so references needn't be "void *". */ +struct wpa; +struct nas; + +#ifdef MFP +typedef struct wsec_igtk_info { + /* integrated group key stuff */ + uint8 key[BIP_KEY_SIZE+8]; /* integrated group transient key, +8 since AES wrapped */ + uint16 id; /* integrated group transient key id */ + uint32 ipn_lo; /* integrated group transient key IPN */ + uint16 ipn_hi; /* integrated group transient key IPN */ + ushort len; +} igtk_info_t; +#endif + +/* WPA - supplicant */ +typedef struct wpa_suppl { + wpaie_buf_t assoc_wpaie; /* WPA info element in assoc resp */ + uint16 assoc_wpaie_len; + wpa_suppl_state_t state; /* WPA state */ + wpa_suppl_state_t retry_state; /* WPA state for retries */ + uint8 pmk[PMK_LEN]; /* pairwise master key */ + uint32 pmk_len; +#ifdef BCMWPA2 + uint8 pmkid[WPA2_PMKID_LEN]; +#endif /* BCMWPA2 */ + uint16 ptk_len; /* PTK len, used in PRF calculation */ + uint16 tk_len; /* TK len, used when loading key into driver */ + uint16 desc; /* key descriptor type */ + uint8 anonce[NONCE_LEN]; + uint8 snonce[NONCE_LEN]; + uint8 replay[REPLAY_LEN]; /* replay counter used by authenticator */ + uint8 replay_req[REPLAY_LEN]; /* replay counter from suppl req pkt */ + uint8 eapol_mic_key[16]; /* Pair Wise transient Key */ + uint8 eapol_encr_key[16]; + uint8 temp_encr_key[16]; + uint8 temp_tx_key[8]; + uint8 temp_rx_key[8]; +#ifdef BCMSUPPL + /* need to differentiate message 1 and 3 in 4 way handshake */ + eapol_sup_pk_state_t pk_state; +#endif +} wpa_suppl_t; + +/* This coalesces the WPA supplicant and RADIUS PAE structs. + * Everything is needed in WPA mode, but the supplicant is not needed + * in RADIUS mode and the pae is not needed in WPA_PSK mode. + * Unneeded pieces could be malloc'ed in an initialization function. + * Dynamic heap use is probably a bad idea. + */ +typedef struct nas_sta { + ushort used; /* flags use of item */ + ushort retries; /* count retries for timeout */ + struct ether_addr ea; /* STA's ethernet address */ + struct nas_sta *next; + time_t last_use; /* use timestamp */ + bcm_timer_id td; /* timer modules cookie */ + struct nas *nas; /* point back to nas */ + /* These two things might be allocated dynamicly... */ + pae_t pae; + wpa_suppl_t suppl; + /* WDS pairwise key initiator/requestor timeout timer */ + bcm_timer_id wds_td; + uint32 mode; /* Authentication mode */ + uint8 key_auth_type; /* hash used for key auth (SHA256 or SHA1) */ + uint32 wsec; /* Authenticator: supplicant requested mcast and unicast cryptos */ + /* Supplicant: supplicant user-cfg'd mcast and unicast cryptos */ + uint16 algo; /* Supplicant: auth's mcast key algo when WEP as mcast crypto */ + uint16 flags; /* runtime flags */ + uint32 wpa_msg_timeout_s; /* WPA Messgae message timeout retry interval in seconds */ + uint32 wpa_msg_timeout_ms; /* WPA Messgae message timeout retry interval in mseconds */ + uint32 listen_interval_ms; /* Listen Interval from the Drivers point of view */ + /* deauth. timer for a delay before deauth. sta using wl ioctl */ + bcm_timer_id deauth_td; /* deauthentication timer */ + uint16 rxauths; /* reAuthCount */ + uint16 tx_when; /* txWhen */ + uint16 auth_while; /* authWhile */ + uint16 quiet_while; /* quietWhile */ + uint8 eapol_version; /* eapol version */ + /* handler for retransmission exceeding limit */ + void (*retx_exceed_hndlr)(struct nas_sta *sta); + /* RC4 key replay counter */ + uint32 rc4keysec; /* last key timestamp, initialized at state AUTHENTICATED */ + uint32 rc4keyusec; + uint32 rc4keycntr; /* use it with last key timestamp if gettimeofday doesn't return usec */ +} nas_sta_t; + +/* nas_sta_t flags */ + +#define KEYAUTH_SHA256 6 +#ifdef BCMWPA2 +#define STA_FLAG_PRE_AUTH 0x0001 /* STA is doing pre-auth */ +#endif + +/* WPA - Authenticator struct */ +typedef struct wpa { + uint8 global_key_counter[KEY_COUNTER_LEN]; /* global key counter */ + uint8 initial_gkc[KEY_COUNTER_LEN]; /* initial GKC value */ + uint8 pmk[PMK_LEN]; /* pairwise master key */ + uint pmk_len; + uint8 gmk[GMK_LEN]; /* group master key */ + uint8 gtk[TKIP_TK_LEN]; /* groupwise tmp key */ + uint8 gtk_encr[TKIP_TK_LEN]; /* groupwise tmp key, RC4 encrypted */ + uint8 gtk_rsc[8]; + uint gtk_len; + int gtk_index; /* where or whether gtk was plumbed */ + int gtk_rekey_secs; /* rotational period */ +#ifdef MFP + igtk_info_t igtk; +#endif + int ptk_rekey_secs; /* rotational period */ + uint8 gnonce[NONCE_LEN]; + struct nas *nas; /* back pointer to the nas struct */ + /* Interval timer descriptor for GTK updates. + * Non-zero means the timer is in use. Check the analogous field + * of the wpa_t to see whether it should ever be set. + */ + bcm_timer_id gtk_rekey_timer; + bcm_timer_id ptk_rekey_timer; + bcm_timer_id countermeasures_timer; + /* WPA capabilities */ + uint8 cap[WPA_CAP_LEN]; + /* WDS pairwise key initiator/requestor timeout interval */ + uint32 wds_to; +} wpa_t; + +extern int process_wpa(wpa_t *wpa, eapol_header_t *eapol, nas_sta_t *sta); +#ifdef BCMSUPPL +extern int process_sup_wpa(wpa_t *wpa, eapol_header_t *eapol, nas_sta_t *sta); +#endif +extern void initialize_global_key_counter(wpa_t *wpa); +extern void initialize_gmk(wpa_t *wpa); +extern int wpa_driver_assoc_msg(wpa_t *wpa, bcm_event_t *dpkt, nas_sta_t *sta); +extern int wpa_driver_disassoc_msg(wpa_t *wpa, bcm_event_t *dpkt, nas_sta_t *sta); +extern void wpa_mic_error(wpa_t *wpa, nas_sta_t *sta, bool from_driver); +extern int wpa_set_suppl(wpa_t *wpa, nas_sta_t *sta, uint32 mode, uint32 wsec, uint32 algo); +#ifdef BCMSUPPL +extern void wpa_request(wpa_t *wpa, nas_sta_t *sta); +#endif +extern void wpa_start(wpa_t *wpa, nas_sta_t *sta); + +extern int wpa_mode2auth(int mode); +extern int wpa_auth2mode(int auth); +#ifdef BCMWPA2 +extern void nas_wpa_calc_pmkid(wpa_t *wpa, nas_sta_t *sta); +#endif + +typedef enum { ITIMER_OK = 0, ITIMER_CREATE_ERROR, ITIMER_CONNECT_ERROR, + ITIMER_SET_ERROR } itimer_status_t; + +/* Set an iterval timer. */ +extern itimer_status_t wpa_set_itimer(bcm_timer_module_id module, bcm_timer_id *td, + bcm_timer_cb handler, int handler_param, + int secs, int msecs); + +extern void wpa_stop_retx(nas_sta_t *sta); +extern void wpa_reset_countermeasures(wpa_t *wpa); + +#endif /* _wpa_h_ */ diff --git a/release/src-rt/wl/sys/wlc_channel.c b/release/src-rt/wl/sys/wlc_channel.c new file mode 100644 index 0000000000..ac83f069d6 --- /dev/null +++ b/release/src-rt/wl/sys/wlc_channel.c @@ -0,0 +1,10784 @@ +/* + * Common interface to channel definitions. + * Copyright (C) 2010, Broadcom Corporation + * All Rights Reserved. + * + * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation; + * the contents of this file may not be disclosed to third parties, copied + * or duplicated in any form, in whole or in part, without the prior + * written permission of Broadcom Corporation. + * + * $Id: wlc_channel.c,v 1.322.2.57 2011-02-11 05:42:13 Exp $ + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#ifdef BCMSUP_PSK +#include +#include +#endif /* BCMSUP_PSK */ +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +typedef struct wlc_cm_band { + uint8 locale_flags; /* locale_info_t flags */ + chanvec_t valid_channels; /* List of valid channels in the country */ +#ifdef BAND5G + const chanvec_t *radar_channels; /* List of radar sensitive channels */ +#endif + struct wlc_channel_txchain_limits chain_limits; /* per chain power limit */ + uint8 PAD[4]; +} wlc_cm_band_t; + +struct wlc_cm_info { + wlc_pub_t *pub; + wlc_info_t *wlc; + char srom_ccode[WLC_CNTRY_BUF_SZ]; /* Country Code in SROM */ + uint srom_regrev; /* Regulatory Rev for the SROM ccode */ + const country_info_t *country; /* current country def */ + char ccode[WLC_CNTRY_BUF_SZ]; /* current internal Country Code */ + uint regrev; /* current Regulatory Revision */ + char country_abbrev[WLC_CNTRY_BUF_SZ]; /* current advertised ccode */ + wlc_cm_band_t bandstate[MAXBANDS]; /* per-band state (one per phy/radio) */ + /* quiet channels currently for radar sensitivity or 11h support */ + chanvec_t quiet_channels; /* channels on which we cannot transmit */ + + /* restricted channels */ + chanvec_t restricted_channels; /* copy of the global restricted channels of the */ + /* current local */ + bool has_restricted_ch; + + /* regulatory class */ + rcvec_t valid_rcvec; /* List of valid regulatory class in the country */ + const rcinfo_t *rcinfo_list[MAXRCLIST]; /* regulatory class info list */ +}; + +static int wlc_channels_init(wlc_cm_info_t *wlc_cm, const country_info_t *country); +static void wlc_set_country_common( + wlc_cm_info_t *wlc_cm, const char* country_abbrev, const char* ccode, uint regrev, + const country_info_t *country); +static int wlc_country_aggregate_map( + wlc_cm_info_t *wlc_cm, const char *ccode, char *mapped_ccode, uint *mapped_regrev); +static const country_info_t* wlc_country_lookup_direct(const char* ccode, uint regrev); +static const country_info_t* wlc_countrycode_map( + wlc_cm_info_t *wlc_cm, const char *ccode, char *mapped_ccode, uint *mapped_regrev); +static void wlc_channels_commit(wlc_cm_info_t *wlc_cm); +static void wlc_chanspec_list(wlc_info_t *wlc, wl_uint32_list_t *list, chanspec_t chanspec_mask); +static bool wlc_buffalo_map_locale(struct wlc_info *wlc, const char* abbrev); +static bool wlc_japan_ccode(const char *ccode); +static bool wlc_us_ccode(const char *ccode); +static void wlc_channel_min_txpower_limits_with_local_constraint(wlc_cm_info_t *wlc_cm, + txppr_t *txpwr, uint8 local_constraint_qdbm); +void wlc_locale_add_channels(chanvec_t *target, const chanvec_t *channels); +static void wlc_rcinfo_init(wlc_cm_info_t *wlc_cm); +static void wlc_regclass_vec_init(wlc_cm_info_t *wlc_cm); +#ifdef WL11N +static const locale_mimo_info_t * wlc_get_mimo_2g(uint8 locale_idx); +static const locale_mimo_info_t * wlc_get_mimo_5g(uint8 locale_idx); +#endif /* WL11N */ +static void wlc_upd_restricted_chanspec_flag(wlc_cm_info_t *wlc_cm); +static int wlc_channel_update_txchain_offsets(wlc_cm_info_t *wlc_cm, txppr_t *txpwr); +#if defined(BCMDBG) || defined(BCMDBG_DUMP) +static int wlc_channel_dump_reg_ppr(void *handle, struct bcmstrbuf *b); +static int wlc_channel_dump_reg_local_ppr(void *handle, struct bcmstrbuf *b); +static int wlc_channel_dump_srom_ppr(void *handle, struct bcmstrbuf *b); +static int wlc_channel_dump_margin(void *handle, struct bcmstrbuf *b); +#endif + +typedef void (*wlc_channel_mapfn_t)(void *context, uint8 *a, uint8 *b); + +/* QDB() macro takes a dB value and converts to a quarter dB value */ +#ifdef QDB +#undef QDB +#endif +#define QDB(n) ((n) * WLC_TXPWR_DB_FACTOR) + +/* Regulatory Matrix Spreadsheet (CLM) MIMO v3.8.6.4 + * + CLM v4.1.3 + * + CLM v4.2.4 + * + CLM v4.3.1 (Item-1 only EU/9 and Q2/4) + * + CLM v4.3.3 + * + CLMv 4.3.4_3x3 changes(Skip changes for a13/14). + * + CLMv 4.4.4_3x3 ALl changes except Item-2 and Item-4 + * + CLMv 4.5.3_3x3 changes for Item-5(Cisco Evora (change AP3500i to Evora)). + * + CLMv 4.5.3_3x3 changes for Item-3(Create US/61 for BCM94331HM, based on US/53 power levels). + * + CLMv 4.5.5 3x3 (changes from Create US/63 only) + * + CLMv 4.5.6 3x3 changes(An6-3 for Cisco E1200/E1550) + * + CLMv 4.4.4 3x3 changes(Create EU/13 (locales 3r-5, 3rn-4) + * + CLMv 4.5.3 3x3 changes(Create IL/4 (locale 13-3) for Juniper AX411) + * + */ + +/* + * Some common channel sets + */ + +/* No channels */ +static const chanvec_t chanvec_none = { + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00} +}; + +/* All 2.4 GHz HW channels */ +const chanvec_t chanvec_all_2G = { + {0xfe, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00} +}; + +/* All 5 GHz HW channels */ +const chanvec_t chanvec_all_5G = { + {0x00, 0x00, 0x00, 0x00, 0x54, 0x55, 0x11, 0x11, + 0x01, 0x00, 0x00, 0x00, 0x10, 0x11, 0x11, 0x11, + 0x11, 0x11, 0x20, 0x22, 0x22, 0x00, 0x00, 0x11, + 0x11, 0x11, 0x11, 0x01} +}; + +/* Regulatory Matrix Spreadsheet (CLM) MIMO v3.1 ** WITH MODIFICATIONS ** */ + +/* Parts of CLM v3.7.4 have been incoporated to support a high gain + * antenna system. The additions are the differences added between + * CLM v3.7.3 and v3.7.4. + * Adding country revisions: JP/7 US/29 X0/6 X3/5 X1/5 X2/5 + * Adding supporting locales: 3l, 3jn_1, ,,, + * + * Adding the changes introduced in CLM v3.7.7, v3.7.8, and v3.7.9 + * Adding the changes introduced in CLM v4.2.3 + * Adding the changes introduced in CLM v4.3.3 + */ + +/* + * Radar channel sets + */ + +/* No radar */ +#define radar_set_none chanvec_none + +#ifdef BAND5G +static const chanvec_t radar_set1 = { /* Channels 52 - 64, 100 - 140 */ + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x11, /* 52 - 60 */ + 0x01, 0x00, 0x00, 0x00, 0x10, 0x11, 0x11, 0x11, /* 64, 100 - 124 */ + 0x11, 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 128 - 140 */ + 0x00, 0x00, 0x00, 0x00} +}; +#endif /* BAND5G */ + +/* + * Restricted channel sets + */ + +#define restricted_set_none chanvec_none + +/* Channels 34, 38, 42, 46 */ +static const chanvec_t restricted_set_japan_legacy = { + {0x00, 0x00, 0x00, 0x00, 0x44, 0x44, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00} +}; + +/* Channels 12, 13 */ +static const chanvec_t restricted_set_2g_short = { + {0x00, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00} +}; + +/* Channel 165 */ +static const chanvec_t restricted_chan_165 = { + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00} +}; + +/* Channels 36 - 48 & 149 - 165 */ +static const chanvec_t restricted_low_hi = { + {0x00, 0x00, 0x00, 0x00, 0x10, 0x11, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x20, 0x22, 0x22, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00} +}; + +/* Channels 12 - 14 */ +static const chanvec_t restricted_set_12_13_14 = { + {0x00, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00} +}; + +/* Channels 52-64, 100-140 and 149-165 */ +static const chanvec_t restricted_set_52_above = { + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x11, + 0x01, 0x00, 0x00, 0x00, 0x10, 0x11, 0x11, 0x11, + 0x11, 0x11, 0x20, 0x22, 0x22, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00} +}; + + +#define WLC_REGCLASS_USA_2G_20MHZ 12 +#define WLC_REGCLASS_EUR_2G_20MHZ 4 +#define WLC_REGCLASS_JPN_2G_20MHZ 30 +#define WLC_REGCLASS_JPN_2G_20MHZ_CH14 31 + +#ifdef WL11N +/* + * bit map of supported regulatory class for USA, Europe & Japan + */ +static const rcvec_t rclass_us = { /* 1-5, 12, 22-25, 27-30, 32-33 */ + {0x3e, 0x10, 0xc0, 0x7b, 0x03} +}; +static const rcvec_t rclass_eu = { /* 1-4, 5-12 */ + {0xfe, 0x1f, 0x00, 0x00, 0x00} +}; +static const rcvec_t rclass_jp = { /* 1, 30-32 */ + {0x01, 0x00, 0x00, 0xc0, 0x01} +}; +#endif /* WL11N */ + +#ifdef BAND5G +/* + * channel to regulatory class map for USA + */ +static const rcinfo_t rcinfo_us_20 = { + 24, + { + { 36, 1}, { 40, 1}, { 44, 1}, { 48, 1}, { 52, 2}, { 56, 2}, { 60, 2}, { 64, 2}, + {100, 4}, {104, 4}, {108, 4}, {112, 4}, {116, 4}, {120, 4}, {124, 4}, {128, 4}, + {132, 4}, {136, 4}, {140, 4}, {149, 3}, {153, 3}, {157, 3}, {161, 3}, {165, 5} + } +}; +#endif /* BAND5G */ + +#ifdef WL11N +/* control channel at lower sb */ +static const rcinfo_t rcinfo_us_40lower = { + 18, + { + { 1, 32}, { 2, 32}, { 3, 32}, { 4, 32}, { 5, 32}, { 6, 32}, { 7, 32}, { 36, 22}, + { 44, 22}, { 52, 23}, { 60, 23}, {100, 24}, {108, 24}, {116, 24}, {124, 24}, {132, 24}, + {149, 25}, {157, 25}, { 0, 0}, { 0, 0}, { 0, 0}, { 0, 0}, { 0, 0}, { 0, 0} + } +}; +/* control channel at upper sb */ +static const rcinfo_t rcinfo_us_40upper = { + 18, + { + { 5, 33}, { 6, 33}, { 7, 33}, { 8, 33}, { 9, 33}, { 10, 33}, { 11, 33}, { 40, 27}, + { 48, 27}, { 56, 28}, { 64, 28}, {104, 29}, {112, 29}, {120, 29}, {128, 29}, {136, 29}, + {153, 30}, {161, 30}, { 0, 0}, { 0, 0}, { 0, 0}, { 0, 0}, { 0, 0}, { 0, 0} + } +}; +#endif /* WL11N */ + +#ifdef BAND5G +/* + * channel to regulatory class map for Europe + */ +static const rcinfo_t rcinfo_eu_20 = { + 19, + { + { 36, 1}, { 40, 1}, { 44, 1}, { 48, 1}, { 52, 2}, { 56, 2}, { 60, 2}, { 64, 2}, + {100, 3}, {104, 3}, {108, 3}, {112, 3}, {116, 3}, {120, 3}, {124, 3}, {128, 3}, + {132, 3}, {136, 3}, {140, 3}, { 0, 0}, { 0, 0}, { 0, 0}, { 0, 0}, { 0, 0} + } +}; +#endif /* BAND5G */ + +#ifdef WL11N +static const rcinfo_t rcinfo_eu_40lower = { + 18, + { + { 1, 11}, { 2, 11}, { 3, 11}, { 4, 11}, { 5, 11}, { 6, 11}, { 7, 11}, { 8, 11}, + { 9, 11}, { 36, 5}, { 44, 5}, { 52, 6}, { 60, 6}, {100, 7}, {108, 7}, {116, 7}, + {124, 7}, {132, 7}, { 0, 0}, { 0, 0}, { 0, 0}, { 0, 0}, { 0, 0}, { 0, 0} + } +}; +static const rcinfo_t rcinfo_eu_40upper = { + 18, + { + { 5, 12}, { 6, 12}, { 7, 12}, { 8, 12}, { 9, 12}, { 10, 12}, { 11, 12}, { 12, 12}, + { 13, 12}, { 40, 8}, { 48, 8}, { 56, 9}, { 64, 9}, {104, 10}, {112, 10}, {120, 10}, + {128, 10}, {136, 10}, { 0, 0}, { 0, 0}, { 0, 0}, { 0, 0}, { 0, 0}, { 0, 0} + } +}; +#endif /* WL11N */ + +#ifdef BAND5G +/* + * channel to regulatory class map for Japan + */ +static const rcinfo_t rcinfo_jp_20 = { + 8, + { + { 34, 1}, { 38, 1}, { 42, 1}, { 46, 1}, { 52, 32}, { 56, 32}, { 60, 32}, { 64, 32}, + { 0, 0}, { 0, 0}, { 0, 0}, { 0, 0}, { 0, 0}, { 0, 0}, { 0, 0}, { 0, 0}, + { 0, 0}, { 0, 0}, { 0, 0}, { 0, 0}, { 0, 0}, { 0, 0}, { 0, 0}, { 0, 0} + } +}; +#endif /* BAND5G */ + +#ifdef WL11N +static const rcinfo_t rcinfo_jp_40 = { + 0, + { + { 0, 0}, { 0, 0}, { 0, 0}, { 0, 0}, { 0, 0}, { 0, 0}, { 0, 0}, { 0, 0}, + { 0, 0}, { 0, 0}, { 0, 0}, { 0, 0}, { 0, 0}, { 0, 0}, { 0, 0}, { 0, 0}, + { 0, 0}, { 0, 0}, { 0, 0}, { 0, 0}, { 0, 0}, { 0, 0}, { 0, 0}, { 0, 0} + } +}; +#endif + +#ifdef WL11D + +/* All 5 GHz channels restricted */ +#define restricted_set_11d_5G chanvec_all_5G + +/* All 2.4 GHz channels restricted */ +#define restricted_set_11d_2G chanvec_all_2G + +#endif /* WL11D */ + +#define LOCALE_CHAN_01_11 (1<<0) +#define LOCALE_CHAN_12_13 (1<<1) +#define LOCALE_CHAN_14 (1<<2) +#define LOCALE_SET_5G_LOW_JP1 (1<<3) /* 34-48, step 2 */ +#define LOCALE_SET_5G_LOW_JP2 (1<<4) /* 34-46, step 4 */ +#define LOCALE_SET_5G_LOW1 (1<<5) /* 36-48, step 4 */ +#define LOCALE_SET_5G_LOW2 (1<<6) /* 52 */ +#define LOCALE_SET_5G_LOW3 (1<<7) /* 56-64, step 4 */ +#define LOCALE_SET_5G_MID1 (1<<8) /* 100-116, step 4 */ +#define LOCALE_SET_5G_MID2 (1<<9) /* 120-124, step 4 */ +#define LOCALE_SET_5G_MID3 (1<<10) /* 128 */ +#define LOCALE_SET_5G_HIGH1 (1<<11) /* 132-140, step 4 */ +#define LOCALE_SET_5G_HIGH2 (1<<12) /* 149-161, step 4 */ +#define LOCALE_SET_5G_HIGH3 (1<<13) /* 165 */ +#define LOCALE_CHAN_52_140_ALL (1<<14) +#define LOCALE_SET_5G_HIGH4 (1<<15) /* 184-216 */ + +#define LOCALE_CHAN_36_64 LOCALE_SET_5G_LOW1 | LOCALE_SET_5G_LOW2 | LOCALE_SET_5G_LOW3 +#define LOCALE_CHAN_52_64 LOCALE_SET_5G_LOW2 | LOCALE_SET_5G_LOW3 +#define LOCALE_CHAN_100_124 LOCALE_SET_5G_MID1 | LOCALE_SET_5G_MID2 +#define LOCALE_CHAN_100_140 \ + LOCALE_SET_5G_MID1 | LOCALE_SET_5G_MID2 | LOCALE_SET_5G_MID3 | LOCALE_SET_5G_HIGH1 +#define LOCALE_CHAN_149_165 LOCALE_SET_5G_HIGH2 | LOCALE_SET_5G_HIGH3 +#define LOCALE_CHAN_184_216 LOCALE_SET_5G_HIGH4 + +#define LOCALE_CHAN_01_14 (LOCALE_CHAN_01_11 | LOCALE_CHAN_12_13 | LOCALE_CHAN_14) + +#define LOCALE_RADAR_SET_NONE 0 +#define LOCALE_RADAR_SET_1 1 + +#define LOCALE_RESTRICTED_NONE 0 +#define LOCALE_RESTRICTED_SET_2G_SHORT 1 +#define LOCALE_RESTRICTED_CHAN_165 2 +#define LOCALE_CHAN_ALL_5G 3 +#define LOCALE_RESTRICTED_JAPAN_LEGACY 4 +#define LOCALE_RESTRICTED_11D_2G 5 +#define LOCALE_RESTRICTED_11D_5G 6 +#define LOCALE_RESTRICTED_LOW_HI 7 +#define LOCALE_RESTRICTED_12_13_14 8 +#define LOCALE_RESTRICTED_52_ABOVE 9 + +#define IS_CCODE_REV(cm, cntry, rev) (!strncmp(cm->ccode, cntry, WLC_CNTRY_BUF_SZ) && \ + (cm->regrev == (rev))) + +/* global memory to provide working buffer for expanded locale */ + +#ifdef BAND5G /* RADAR */ +static const chanvec_t * g_table_radar_set[] = +{ + &chanvec_none, + &radar_set1 +}; +#endif + +static const chanvec_t * g_table_restricted_chan[] = +{ + &chanvec_none, /* restricted_set_none */ + &restricted_set_2g_short, + &restricted_chan_165, + &chanvec_all_5G, + &restricted_set_japan_legacy, + &chanvec_all_2G, /* restricted_set_11d_2G */ + &chanvec_all_5G, /* restricted_set_11d_5G */ + &restricted_low_hi, + &restricted_set_12_13_14, + &restricted_set_52_above +}; + +static const chanvec_t locale_2g_01_11 = { + {0xfe, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00} +}; +static const chanvec_t locale_2g_12_13 = { + {0x00, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00} +}; +static const chanvec_t locale_2g_14 = { + {0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00} +}; + +static const chanvec_t locale_5g_LOW_JP1 = { + {0x00, 0x00, 0x00, 0x00, 0x54, 0x55, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00} +}; +static const chanvec_t locale_5g_LOW_JP2 = { + {0x00, 0x00, 0x00, 0x00, 0x44, 0x44, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00} +}; +static const chanvec_t locale_5g_LOW1 = { + {0x00, 0x00, 0x00, 0x00, 0x10, 0x11, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00} +}; +static const chanvec_t locale_5g_LOW2 = { + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00} +}; +static const chanvec_t locale_5g_LOW3 = { + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x11, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00} +}; +static const chanvec_t locale_5g_MID1 = { + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x10, 0x11, 0x11, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00} +}; +static const chanvec_t locale_5g_MID2 = { + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x11, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00} +}; +static const chanvec_t locale_5g_MID3 = { + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00} +}; +static const chanvec_t locale_5g_HIGH1 = { + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x10, 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00} +}; +static const chanvec_t locale_5g_HIGH2 = { + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x20, 0x22, 0x02, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00} +}; +static const chanvec_t locale_5g_HIGH3 = { + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00} +}; +static const chanvec_t locale_5g_52_140_ALL = { + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x11, + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, + 0x11, 0x11, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00} +}; +static const chanvec_t locale_5g_HIGH4 = { + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x11, + 0x11, 0x11, 0x11, 0x11} +}; + +static const chanvec_t * g_table_locale_base[] = +{ + &locale_2g_01_11, + &locale_2g_12_13, + &locale_2g_14, + &locale_5g_LOW_JP1, + &locale_5g_LOW_JP2, + &locale_5g_LOW1, + &locale_5g_LOW2, + &locale_5g_LOW3, + &locale_5g_MID1, + &locale_5g_MID2, + &locale_5g_MID3, + &locale_5g_HIGH1, + &locale_5g_HIGH2, + &locale_5g_HIGH3, + &locale_5g_52_140_ALL, + &locale_5g_HIGH4 +}; +void wlc_locale_add_channels(chanvec_t *target, const chanvec_t *channels) +{ + uint8 i; + for (i = 0; i < sizeof(chanvec_t); i++) { + target->vec[i] |= channels->vec[i]; + } +} + +void wlc_locale_get_channels(const locale_info_t * locale, chanvec_t *channels) +{ + uint8 i; + + bzero(channels, sizeof(chanvec_t)); + + for (i = 0; i < ARRAYSIZE(g_table_locale_base); i++) { + if (locale->valid_channels & (1<= ARRAYSIZE(g_locale_2g_table)) { + WL_ERROR(("wl%d: locale 2g index size out of range\n", locale_idx)); + return NULL; + } + return g_locale_2g_table[locale_idx]; +#else + return NULL; +#endif +} + +const locale_info_t * wlc_get_locale_5g(uint8 locale_idx) +{ +#ifdef BAND5G + if (locale_idx >= ARRAYSIZE(g_locale_5g_table)) { + WL_ERROR(("wl%d: locale 5g index size out of range\n", locale_idx)); + return NULL; + } + return g_locale_5g_table[locale_idx]; +#else + return NULL; +#endif +} + +#ifdef WL11N +const locale_mimo_info_t * wlc_get_mimo_2g(uint8 locale_idx) +{ + if (locale_idx >= ARRAYSIZE(g_mimo_2g_table)) { + WL_ERROR(("wl%d: mimo 2g index size out of range\n", locale_idx)); + return NULL; + } + return g_mimo_2g_table[locale_idx]; +} + +const locale_mimo_info_t * wlc_get_mimo_5g(uint8 locale_idx) +{ + if (locale_idx >= ARRAYSIZE(g_mimo_5g_table)) { + WL_ERROR(("wl%d: mimo 5g index size out of range\n", locale_idx)); + return NULL; + } + return g_mimo_5g_table[locale_idx]; +} +#endif /* #ifdef WL11N */ + +static bool +wlc_autocountry_lookup(char *cc) +{ + uint i; + + for (i = 0; i < ARRAYSIZE(def_autocountry); i++) + if (!strcmp(def_autocountry[i], cc)) + return TRUE; + + return FALSE; +} + +wlc_cm_info_t * +BCMATTACHFN(wlc_channel_mgr_attach)(wlc_info_t *wlc) +{ + wlc_cm_info_t *wlc_cm; + char country_abbrev[WLC_CNTRY_BUF_SZ]; + const country_info_t *country; + wlc_pub_t *pub = wlc->pub; +#ifdef PCOEM_LINUXSTA + bool use_row = TRUE; +#endif + + WL_TRACE(("wl%d: wlc_channel_mgr_attach\n", wlc->pub->unit)); + + if ((wlc_cm = (wlc_cm_info_t *)MALLOC(pub->osh, sizeof(wlc_cm_info_t))) == NULL) { + WL_ERROR(("wl%d: %s: out of memory, malloced %d bytes", pub->unit, + __FUNCTION__, MALLOCED(pub->osh))); + return NULL; + } + bzero((char *)wlc_cm, sizeof(wlc_cm_info_t)); + wlc_cm->pub = pub; + wlc_cm->wlc = wlc; + wlc->cmi = wlc_cm; + + /* init the per chain limits to max power so they have not effect */ + memset(&wlc_cm->bandstate[BAND_2G_INDEX].chain_limits, WLC_TXPWR_MAX, + sizeof(struct wlc_channel_txchain_limits)); + memset(&wlc_cm->bandstate[BAND_5G_INDEX].chain_limits, WLC_TXPWR_MAX, + sizeof(struct wlc_channel_txchain_limits)); + + /* get the SPROM country code or local, required to initialize channel set below */ + bzero(country_abbrev, WLC_CNTRY_BUF_SZ); + if (wlc->pub->sromrev > 1) { + /* get country code */ + char *ccode = getvar(wlc->pub->vars, "ccode"); + if (ccode) + strncpy(country_abbrev, ccode, WLC_CNTRY_BUF_SZ - 1); + } else { + uint locale_num; + + /* get locale */ + locale_num = (uint)getintvar(wlc->pub->vars, "cc"); + /* get mapped country */ + if (locale_num < ARRAYSIZE(def_country)) + strncpy(country_abbrev, def_country[locale_num], + sizeof(country_abbrev) - 1); + } + strncpy(wlc_cm->srom_ccode, country_abbrev, WLC_CNTRY_BUF_SZ - 1); + wlc_cm->srom_regrev = getintvar(wlc->pub->vars, "regrev"); + + /* For "some" apple boards with KR2, make them as KR3 as they have passed the + * FCC test but with wrong SROM contents + */ + if ((pub->sih->boardvendor == VENDOR_APPLE) && + ((pub->sih->boardtype == BCM943224M93) || + (pub->sih->boardtype == BCM943224M93A))) { + if ((wlc_cm->srom_regrev == 2) && + !strncmp(country_abbrev, "KR", WLC_CNTRY_BUF_SZ)) { + wlc_cm->srom_regrev = 3; + } + } + + /* Correct SROM contents of an Apple board */ + if ((pub->sih->boardvendor == VENDOR_APPLE) && + (pub->sih->boardtype == 0x93) && + !strncmp(country_abbrev, "JP", WLC_CNTRY_BUF_SZ) && + (wlc_cm->srom_regrev == 4)) { + wlc_cm->srom_regrev = 6; + } + + country = wlc_country_lookup(wlc, country_abbrev); + + /* default to US if country was not specified or not found */ + if (country == NULL) { + strncpy(country_abbrev, "US", sizeof(country_abbrev) - 1); + country = wlc_country_lookup(wlc, country_abbrev); + } + + ASSERT(country != NULL); + + /* save default country for exiting 11d regulatory mode */ + strncpy(wlc->country_default, country_abbrev, WLC_CNTRY_BUF_SZ - 1); + + /* initialize autocountry_default to driver default */ + if (wlc_autocountry_lookup(country_abbrev)) + strncpy(wlc->autocountry_default, country_abbrev, WLC_CNTRY_BUF_SZ - 1); + else + strncpy(wlc->autocountry_default, "B2", WLC_CNTRY_BUF_SZ - 1); + +#ifdef PCOEM_LINUXSTA + if ((CHIPID(pub->sih->chip) != BCM4311_CHIP_ID) && + (CHIPID(pub->sih->chip) != BCM4312_CHIP_ID) && + (CHIPID(pub->sih->chip) != BCM4313_CHIP_ID) && + (CHIPID(pub->sih->chip) != BCM4321_CHIP_ID) && + (CHIPID(pub->sih->chip) != BCM4322_CHIP_ID) && + (CHIPID(pub->sih->chip) != BCM43224_CHIP_ID) && + (CHIPID(pub->sih->chip) != BCM43225_CHIP_ID) && + (CHIPID(pub->sih->chip) != BCM43421_CHIP_ID) && + (CHIPID(pub->sih->chip) != BCM4342_CHIP_ID) && + (CHIPID(pub->sih->chip) != BCM43131_CHIP_ID) && + (CHIPID(pub->sih->chip) != BCM43227_CHIP_ID) && + (CHIPID(pub->sih->chip) != BCM43228_CHIP_ID) && + (CHIPID(pub->sih->chip) != BCM43428_CHIP_ID)) { + WL_ERROR(("wl%d: %s: Unsupported Chip (%x)\n", pub->unit, __FUNCTION__, + pub->sih->chip)); + wlc->cmi = NULL; + wlc_channel_mgr_detach(wlc_cm); + return NULL; + } + if ((pub->sih->boardvendor == VENDOR_HP) && (!bcmp(country_abbrev, "US", 2) || + !bcmp(country_abbrev, "JP", 2) || !bcmp(country_abbrev, "IL", 2))) + use_row = FALSE; + + /* use RoW locale if set */ + if (use_row) { + bzero(country_abbrev, WLC_CNTRY_BUF_SZ); + strncpy(country_abbrev, "XW", WLC_CNTRY_BUF_SZ); + } + + /* Enable Auto Country Discovery */ + strncpy(wlc->autocountry_default, country_abbrev, WLC_CNTRY_BUF_SZ - 1); + + /* enable regulatory */ + wlc->_regulatory_domain = TRUE; +#endif /* PCOEM_LINUXSTA */ + + /* Calling set_countrycode() once do not generate any event, if called more than + * once generates COUNTRY_CODE_CHANGED event which will cause the driver to crash + * since bsscfg structure is still not initialized + */ + wlc_set_countrycode(wlc_cm, country_abbrev); + +#if defined(BCMDBG) || defined(BCMDBG_DUMP) + wlc_dump_register(wlc->pub, "txpwr_reg", + (dump_fn_t)wlc_channel_dump_reg_ppr, (void *)wlc_cm); + wlc_dump_register(wlc->pub, "txpwr_local", + (dump_fn_t)wlc_channel_dump_reg_local_ppr, (void *)wlc_cm); + wlc_dump_register(wlc->pub, "txpwr_srom", + (dump_fn_t)wlc_channel_dump_srom_ppr, (void *)wlc_cm); + wlc_dump_register(wlc->pub, "txpwr_margin", + (dump_fn_t)wlc_channel_dump_margin, (void *)wlc_cm); +#endif /* BCMDBG || BCMDBG_DUMP */ + + return wlc_cm; +} + +void +BCMATTACHFN(wlc_channel_mgr_detach)(wlc_cm_info_t *wlc_cm) +{ + if (wlc_cm) + MFREE(wlc_cm->pub->osh, wlc_cm, sizeof(wlc_cm_info_t)); +} + +const char* wlc_channel_country_abbrev(wlc_cm_info_t *wlc_cm) +{ + return wlc_cm->country_abbrev; +} + +const char* wlc_channel_ccode(wlc_cm_info_t *wlc_cm) +{ + return wlc_cm->ccode; +} + +uint wlc_channel_regrev(wlc_cm_info_t *wlc_cm) +{ + return wlc_cm->regrev; +} + +uint8 wlc_channel_locale_flags(wlc_cm_info_t *wlc_cm) +{ + wlc_info_t *wlc = wlc_cm->wlc; + + return wlc_cm->bandstate[wlc->band->bandunit].locale_flags; +} + +uint8 wlc_channel_locale_flags_in_band(wlc_cm_info_t *wlc_cm, uint bandunit) +{ + return wlc_cm->bandstate[bandunit].locale_flags; +} + +/* + * return the first valid chanspec for the locale, if one is not found and hw_fallback is true + * then return the first h/w supported chanspec. + */ +chanspec_t +wlc_default_chanspec(wlc_cm_info_t *wlc_cm, bool hw_fallback) +{ + wlc_info_t *wlc = wlc_cm->wlc; + chanspec_t chspec; + + chspec = wlc_create_chspec(wlc, 0); + /* try to find a chanspec thats valid in this locale */ + if ((chspec = wlc_next_chanspec(wlc_cm, chspec, CHAN_TYPE_ANY, 0)) == INVCHANSPEC) + /* try to find a chanspec valid for this hardware */ + if (hw_fallback) + chspec = wlc_phy_chanspec_band_firstch(wlc_cm->wlc->band->pi, + wlc->band->bandtype); + + return chspec; +} + +/* + * Return the next channel's chanspec. + */ +chanspec_t +wlc_next_chanspec(wlc_cm_info_t *wlc_cm, chanspec_t cur_chanspec, int type, bool any_band) +{ + uint8 ch; + uint8 cur_chan = CHSPEC_CHANNEL(cur_chanspec); + chanspec_t chspec; + + /* 0 is an invalid chspec, routines trying to find the first available channel should + * now be using wlc_default_chanspec (above) + */ + ASSERT(cur_chanspec); + + /* Try all channels in current band */ + ch = cur_chan + 1; + for (; ch <= MAXCHANNEL; ch++) { + if (ch == MAXCHANNEL) + ch = 0; + if (ch == cur_chan) + break; + /* create the next channel spec */ + chspec = cur_chanspec & ~WL_CHANSPEC_CHAN_MASK; + chspec |= ch; + if (wlc_valid_chanspec(wlc_cm, chspec)) { + if ((type == CHAN_TYPE_ANY) || + (type == CHAN_TYPE_CHATTY && !wlc_quiet_chanspec(wlc_cm, chspec)) || + (type == CHAN_TYPE_QUIET && wlc_quiet_chanspec(wlc_cm, chspec))) + return chspec; + } + } + + if (!any_band) + return ((chanspec_t)INVCHANSPEC); + + /* Couldn't find any in current band, try other band */ + ch = cur_chan + 1; + for (; ch <= MAXCHANNEL; ch++) { + if (ch == MAXCHANNEL) + ch = 0; + if (ch == cur_chan) + break; + + /* create the next channel spec */ + chspec = cur_chanspec & ~(WL_CHANSPEC_CHAN_MASK | WL_CHANSPEC_BAND_MASK); + chspec |= ch; + if (CHANNEL_BANDUNIT(wlc, ch) == BAND_2G_INDEX) + chspec |= WL_CHANSPEC_BAND_2G; + else + chspec |= WL_CHANSPEC_BAND_5G; + if (wlc_valid_chanspec_db(wlc_cm, chspec)) { + if ((type == CHAN_TYPE_ANY) || + (type == CHAN_TYPE_CHATTY && !wlc_quiet_chanspec(wlc_cm, chspec)) || + (type == CHAN_TYPE_QUIET && wlc_quiet_chanspec(wlc_cm, chspec))) + return chspec; + } + } + + return ((chanspec_t)INVCHANSPEC); +} + +/* return chanvec for a given country code and band */ +bool +wlc_channel_get_chanvec(struct wlc_info *wlc, const char* country_abbrev, + int bandtype, chanvec_t *channels) +{ + const country_info_t *country; + const locale_info_t *locale = NULL; + + country = wlc_country_lookup(wlc, country_abbrev); + if (country == NULL) + return FALSE; + + if (bandtype == WLC_BAND_2G) + locale = wlc_get_locale_2g(country->locale_2G); + else if (bandtype == WLC_BAND_5G) + locale = wlc_get_locale_5g(country->locale_5G); + if (locale == NULL) + return FALSE; + + wlc_locale_get_channels(locale, channels); + return TRUE; +} + +/* set the driver's current country and regulatory information using a country code + * as the source. Lookup built in country information found with the country code. + */ +int +wlc_set_countrycode(wlc_cm_info_t *wlc_cm, const char* ccode) +{ + char country_abbrev[WLC_CNTRY_BUF_SZ]; + + WL_NONE(("wl%d: %s: ccode \"%s\"\n", wlc_cm->wlc->pub->unit, __FUNCTION__, ccode)); + + /* substitute an external ccode for some application specific built-in country codes, + * othewise, use the given abbrev + */ + if (wlc_japan_ccode(ccode)) + strncpy(country_abbrev, "JP", WLC_CNTRY_BUF_SZ-1); + else if (wlc_us_ccode(ccode)) + strncpy(country_abbrev, "US", WLC_CNTRY_BUF_SZ-1); + else + strncpy(country_abbrev, ccode, WLC_CNTRY_BUF_SZ-1); + country_abbrev[WLC_CNTRY_BUF_SZ-1] = '\0'; + return wlc_set_countrycode_rev(wlc_cm, country_abbrev, ccode, -1); +} + +int +wlc_set_countrycode_rev(wlc_cm_info_t *wlc_cm, + const char* country_abbrev, + const char* ccode, int regrev) +{ +#ifdef BCMDBG + wlc_info_t *wlc = wlc_cm->wlc; +#endif + const country_info_t *country; + char mapped_ccode[WLC_CNTRY_BUF_SZ]; + uint mapped_regrev = 0; + + WL_NONE(("wl%d: %s: (country_abbrev \"%s\", ccode \"%s\", regrev %d) SPROM \"%s\"/%u\n", + wlc->pub->unit, __FUNCTION__, + country_abbrev, ccode, regrev, wlc_cm->srom_ccode, wlc_cm->srom_regrev)); + + /* if regrev is -1, lookup the mapped country code, + * otherwise use the ccode and regrev directly + */ + if (regrev == -1) { + /* map the country code to a built-in country code, regrev, and country_info */ + country = wlc_countrycode_map(wlc_cm, ccode, mapped_ccode, &mapped_regrev); + if (country) + WL_NONE(("wl%d: %s: mapped to \"%s\"/%u\n", + wlc->pub->unit, __FUNCTION__, ccode, mapped_regrev)); + else + WL_NONE(("wl%d: %s: failed lookup\n", + wlc->pub->unit, __FUNCTION__)); + } else { + /* find the matching built-in country definition */ + country = wlc_country_lookup_direct(ccode, regrev); + strncpy(mapped_ccode, ccode, WLC_CNTRY_BUF_SZ-1); + mapped_ccode[WLC_CNTRY_BUF_SZ-1] = '\0'; + mapped_regrev = regrev; + } + + if (country == NULL) + return BCME_BADARG; + + /* set the driver state for the country */ + wlc_set_country_common(wlc_cm, country_abbrev, mapped_ccode, mapped_regrev, country); + + return 0; +} + +/* set the driver's current country and regulatory information using a country code + * as the source. Look up built in country information found with the country code. + */ +static void +wlc_set_country_common(wlc_cm_info_t *wlc_cm, + const char* country_abbrev, + const char* ccode, uint regrev, const country_info_t *country) +{ +#ifdef WL11N + const locale_mimo_info_t * li_mimo; +#endif + const locale_info_t * locale; + wlc_info_t *wlc = wlc_cm->wlc; + const country_info_t *prev_country = wlc_cm->country; + char prev_country_abbrev[WLC_CNTRY_BUF_SZ]; + + ASSERT(country != NULL); + + /* save current country state */ + wlc_cm->country = country; + + bzero(&prev_country_abbrev, WLC_CNTRY_BUF_SZ); + strncpy(prev_country_abbrev, wlc_cm->country_abbrev, WLC_CNTRY_BUF_SZ - 1); + + strncpy(wlc_cm->country_abbrev, country_abbrev, WLC_CNTRY_BUF_SZ-1); + strncpy(wlc_cm->ccode, ccode, WLC_CNTRY_BUF_SZ-1); + wlc_cm->regrev = regrev; + +#ifdef WL11N + /* disable/restore nmode based on country regulations */ + li_mimo = BAND_5G(wlc->band->bandtype) ? + wlc_get_mimo_5g(country->locale_mimo_5G) : + wlc_get_mimo_2g(country->locale_mimo_2G); + if (li_mimo && (li_mimo->flags & WLC_NO_MIMO)) { + wlc_set_nmode(wlc, OFF); + wlc->stf->no_cddstbc = TRUE; + } else { + wlc->stf->no_cddstbc = FALSE; + if (N_ENAB(wlc->pub) != wlc->protection->nmode_user) + wlc_set_nmode(wlc, wlc->protection->nmode_user); + } + + wlc_stf_ss_update(wlc, wlc->bandstate[BAND_2G_INDEX]); + wlc_stf_ss_update(wlc, wlc->bandstate[BAND_5G_INDEX]); +#endif /* WL11N */ + /* set or restore gmode as required by regulatory */ + locale = wlc_get_locale_2g(country->locale_2G); + if (locale && (locale->flags & WLC_NO_OFDM)) + wlc_set_gmode(wlc, GMODE_LEGACY_B, FALSE); + else + wlc_set_gmode(wlc, wlc->protection->gmode_user, FALSE); + +#if defined(AP) && defined(RADAR) + if ((NBANDS(wlc) == 2) || IS_SINGLEBAND_5G(wlc->deviceid)) { + phy_radar_detect_mode_t mode; + const locale_info_t * li; + + li = wlc_get_locale_5g(country->locale_5G); + mode = ISDFS_EU(li->flags) ? RADAR_DETECT_MODE_EU:RADAR_DETECT_MODE_FCC; + wlc_phy_radar_detect_mode_set(wlc->band->pi, mode); + } +#endif /* AP && RADAR */ + + wlc_channels_init(wlc_cm, country); + + /* Country code changed */ + if (prev_country && + strncmp(wlc_cm->country_abbrev, prev_country_abbrev, + strlen(wlc_cm->country_abbrev)) != 0) + wlc_mac_event(wlc, WLC_E_COUNTRY_CODE_CHANGED, NULL, + 0, 0, 0, wlc_cm->country_abbrev, strlen(wlc_cm->country_abbrev) + 1); + + return; +} + +/* Lookup a country info structure from a null terminated country code + * The lookup is case sensitive. + */ +const country_info_t* +wlc_country_lookup(struct wlc_info *wlc, const char* ccode) +{ + const country_info_t *country; + char mapped_ccode[WLC_CNTRY_BUF_SZ]; + uint mapped_regrev; + + WL_NONE(("wl%d: %s: ccode \"%s\", SPROM \"%s\"/%u\n", + wlc->pub->unit, __FUNCTION__, ccode, wlc->cmi->srom_ccode, wlc->cmi->srom_regrev)); + + /* map the country code to a built-in country code, regrev, and country_info struct */ + country = wlc_countrycode_map(wlc->cmi, ccode, mapped_ccode, &mapped_regrev); + + if (country) + WL_NONE(("wl%d: %s: mapped to \"%s\"/%u\n", + wlc->pub->unit, __FUNCTION__, mapped_ccode, mapped_regrev)); + else + WL_NONE(("wl%d: %s: failed lookup\n", + wlc->pub->unit, __FUNCTION__)); + + return country; +} + +static const country_info_t* +wlc_countrycode_map(wlc_cm_info_t *wlc_cm, const char *ccode, + char *mapped_ccode, uint *mapped_regrev) +{ + wlc_info_t *wlc = wlc_cm->wlc; + const country_info_t *country; + uint srom_regrev = wlc_cm->srom_regrev; + const char *srom_ccode = wlc_cm->srom_ccode; + int mapped; + + /* check for currently supported ccode size */ + if (strlen(ccode) > (WLC_CNTRY_BUF_SZ - 1)) { + WL_ERROR(("wl%d: %s: ccode \"%s\" too long for match\n", + wlc->pub->unit, __FUNCTION__, ccode)); + return NULL; + } + + /* default mapping is the given ccode and regrev 0 */ + strncpy(mapped_ccode, ccode, WLC_CNTRY_BUF_SZ); + *mapped_regrev = 0; + + /* Map locale for buffalo if needed */ + if (wlc_buffalo_map_locale(wlc, ccode)) { + strncpy(mapped_ccode, "J10", WLC_CNTRY_BUF_SZ); + country = wlc_country_lookup_direct(mapped_ccode, *mapped_regrev); + if (country) + return country; + } + + /* If the desired country code matches the srom country code, + * then the mapped country is the srom regulatory rev. + * Otherwise look for an aggregate mapping. + */ + if (!strcmp(srom_ccode, ccode)) { + WL_NONE(("wl%d: %s: srom ccode and ccode \"%s\" match\n", + wlc->pub->unit, __FUNCTION__, ccode)); + *mapped_regrev = srom_regrev; + mapped = 0; + } else { + mapped = wlc_country_aggregate_map(wlc_cm, ccode, mapped_ccode, mapped_regrev); + if (mapped) + WL_NONE(("wl%d: %s: found aggregate mapping \"%s\"/%u\n", + wlc->pub->unit, __FUNCTION__, mapped_ccode, *mapped_regrev)); + } + + /* CLM 8.2, JAPAN + * Use the regrev=1 Japan country definition by default for chips newer than + * our d11 core rev 5 4306 chips, or for AP's of any vintage. + * For STAs with a 4306, use the legacy Japan country def "JP/0". + * Only do the conversion if JP/0 was not specified by a mapping or by an + * sprom with a regrev: + * Sprom has no specific info about JP's regrev if it's less than rev 3 or it does + * not specify "JP" as its country code => + * (strcmp("JP", srom_ccode) || (wlc->pub->sromrev < 3)) + */ + if (!strcmp("JP", mapped_ccode) && *mapped_regrev == 0 && + !mapped && (strcmp("JP", srom_ccode) || (wlc->pub->sromrev < 3)) && + (AP_ENAB(wlc->pub) || D11REV_GT(wlc->pub->corerev, 5))) { + *mapped_regrev = 1; + WL_NONE(("wl%d: %s: Using \"JP/1\" instead of legacy \"JP/0\" since we %s\n", + wlc->pub->unit, __FUNCTION__, + AP_ENAB(wlc->pub) ? "are operating as an AP" : "are newer than 4306")); + } + + WL_NONE(("wl%d: %s: searching for country using ccode/rev \"%s\"/%u\n", + wlc->pub->unit, __FUNCTION__, mapped_ccode, *mapped_regrev)); + + /* find the matching built-in country definition */ + country = wlc_country_lookup_direct(mapped_ccode, *mapped_regrev); + + /* if there is not an exact rev match, default to rev zero */ + if (country == NULL && *mapped_regrev != 0) { + *mapped_regrev = 0; + WL_NONE(("wl%d: %s: No country found, use base revision \"%s\"/%u\n", + wlc->pub->unit, __FUNCTION__, mapped_ccode, *mapped_regrev)); + country = wlc_country_lookup_direct(mapped_ccode, *mapped_regrev); + } + + if (country == NULL) + WL_NONE(("wl%d: %s: No country found, failed lookup\n", + wlc->pub->unit, __FUNCTION__)); + + return country; +} + +static int +wlc_country_aggregate_map(wlc_cm_info_t *wlc_cm, const char *ccode, + char *mapped_ccode, uint *mapped_regrev) +{ +#ifdef BCMDBG + wlc_info_t *wlc = wlc_cm->wlc; +#endif + const struct wlc_aggregate_cc_map_lookup *cc_lookup; + const struct wlc_cc_map *map; + const char *srom_ccode = wlc_cm->srom_ccode; + uint srom_regrev = (uint8)wlc_cm->srom_regrev; + + /* Use "ww", WorldWide, for the lookup value for '\0\0' */ + if (srom_ccode[0] == '\0') + srom_ccode = "ww"; + + /* Check for a match in the aggregate country list */ + WL_NONE(("wl%d: %s: searching for agg map for srom ccode/rev \"%s\"/%u\n", + wlc->pub->unit, __FUNCTION__, srom_ccode, srom_regrev)); + + map = NULL; + for (cc_lookup = aggregate_cc_maps; cc_lookup->cc[0]; cc_lookup++) { + if (!strcmp(srom_ccode, cc_lookup->cc) && srom_regrev == cc_lookup->rev) { + map = cc_lookup->map; + break; + } + } + + if (!map) + WL_NONE(("wl%d: %s: no map for \"%s\"/%u\n", + wlc->pub->unit, __FUNCTION__, srom_ccode, srom_regrev)); + else + WL_NONE(("wl%d: %s: found map for \"%s\"/%u\n", + wlc->pub->unit, __FUNCTION__, srom_ccode, srom_regrev)); + + /* Check if the given country code is mapped in the cc_map */ + while (map && map->cc[0] != '\0') { + WL_NONE(("wl%d: %s: checking match of \"%s\" with map \"%s\" -> \"%s\"/%u\n", + wlc->pub->unit, __FUNCTION__, ccode, + map->cc, map->mapped_cc, map->mapped_rev)); + /* if there is a match, use it to look up a country */ + if (!strcmp(map->cc, ccode)) { + WL_NONE(("wl%d: %s: mapped lookup for \"%s\" found country \"%s\"/%u\n", + wlc->pub->unit, __FUNCTION__, + ccode, map->mapped_cc, map->mapped_rev)); + strncpy(mapped_ccode, map->mapped_cc, WLC_CNTRY_BUF_SZ); + *mapped_regrev = map->mapped_rev; + return TRUE; + } + map++; + } + + return FALSE; +} + +/* Lookup a country info structure from a null terminated country + * abbreviation and regrev directly with no translation. + */ +static const country_info_t* +wlc_country_lookup_direct(const char* ccode, uint regrev) +{ + uint size, i; + + /* find a country in the regrev country table */ + size = ARRAYSIZE(cntry_rev_locales); + for (i = 0; i < size; i++) { + if (strcmp(ccode, cntry_rev_locales[i].abbrev) == 0 && + regrev == cntry_rev_locales[i].rev) { + return &cntry_rev_locales[i].country; + } + } + + /* all other country def arrays are for regrev == 0, so if regrev is non-zero, fail */ + if (regrev > 0) + return NULL; + + /* find matched table entry from country code */ + size = ARRAYSIZE(cntry_locales); + for (i = 0; i < size; i++) { + if (strcmp(ccode, cntry_locales[i].abbrev) == 0) { + return &cntry_locales[i].country; + } + } + + /* search alternative country code list of countries that do not support + * any 802.11 channels + */ + size = ARRAYSIZE(country_nochannel); + for (i = 0; i < size; i++) { + if (strcmp(ccode, country_nochannel[i]) == 0) { + return &country_nochannel_locale; + } + } + + return NULL; +} + +#if defined(STA) && defined(WL11D) +/* Lookup a country info structure considering only legal country codes as found in + * a Country IE; two ascii alpha followed by " ", "I", or "O". + * Do not match any user assigned application specifc codes that might be found in the driver table. + */ +const country_info_t* +wlc_country_lookup_ext(wlc_info_t *wlc, const char *ccode) +{ + char country_str_lookup[WLC_CNTRY_BUF_SZ] = { 0 }; + + /* only allow ascii alpha uppercase for the first 2 chars, and " ", "I", "O" for the 3rd */ + if (!((0x80 & ccode[0]) == 0 && bcm_isupper(ccode[0]) && + (0x80 & ccode[1]) == 0 && bcm_isupper(ccode[1]) && + (ccode[2] == ' ' || ccode[2] == 'I' || ccode[2] == 'O'))) + return NULL; + + /* for lookup in the driver table of country codes, only use the first + * 2 chars, ignore the 3rd character " ", "I", "O" qualifier + */ + country_str_lookup[0] = ccode[0]; + country_str_lookup[1] = ccode[1]; + + /* do not match ISO 3166-1 user assigned country codes that may be in the driver table */ + if (!strcmp("AA", country_str_lookup) || /* AA */ + !strcmp("ZZ", country_str_lookup) || /* ZZ */ + country_str_lookup[0] == 'X' || /* XA - XZ */ + (country_str_lookup[0] == 'Q' && /* QM - QZ */ + (country_str_lookup[1] >= 'M' && country_str_lookup[1] <= 'Z'))) + return NULL; + +#ifdef MACOSX + if (!strcmp("NA", country_str_lookup)) + return NULL; +#endif /* MACOSX */ + + return wlc_country_lookup(wlc, country_str_lookup); +} +#endif /* STA && WL11D */ + +static int +wlc_channels_init(wlc_cm_info_t *wlc_cm, const country_info_t *country) +{ + wlc_info_t *wlc = wlc_cm->wlc; + uint i, j; + wlcband_t * band; + const locale_info_t * li; + chanvec_t sup_chan; +#ifdef WL11N + const locale_mimo_info_t *li_mimo; +#endif /* WL11N */ + +#ifdef AP + bzero(wlc->ap->chan_blocked, sizeof(wlc->ap->chan_blocked)); +#endif + + bzero(&wlc_cm->restricted_channels, sizeof(chanvec_t)); + + band = wlc->band; + for (i = 0; i < NBANDS(wlc); i++, band = wlc->bandstate[OTHERBANDUNIT(wlc)]) { + + li = BAND_5G(band->bandtype) ? + wlc_get_locale_5g(country->locale_5G) : + wlc_get_locale_2g(country->locale_2G); + wlc_cm->bandstate[band->bandunit].locale_flags = li->flags; +#ifdef WL11N + li_mimo = BAND_5G(band->bandtype) ? + wlc_get_mimo_5g(country->locale_mimo_5G) : + wlc_get_mimo_2g(country->locale_mimo_2G); + + /* merge the mimo non-mimo locale flags */ + wlc_cm->bandstate[band->bandunit].locale_flags |= li_mimo->flags; +#endif /* WL11N */ + + /* initialize restricted channels */ + for (j = 0; j < sizeof(chanvec_t); j++) { + wlc_cm->restricted_channels.vec[j] |= + g_table_restricted_chan[li->restricted_channels]->vec[j]; + } +#ifdef BAND5G /* RADAR */ + wlc_cm->bandstate[band->bandunit].radar_channels = + g_table_radar_set[li->radar_channels]; +#endif + + /* set the channel availability, + * masking out the channels that may not be supported on this phy + */ + wlc_phy_chanspec_band_validch(band->pi, band->bandtype, &sup_chan); + wlc_locale_get_channels(li, + &wlc_cm->bandstate[band->bandunit].valid_channels); + for (j = 0; j < sizeof(chanvec_t); j++) + wlc_cm->bandstate[band->bandunit].valid_channels.vec[j] &= + sup_chan.vec[j]; + } + + wlc_upd_restricted_chanspec_flag(wlc_cm); + wlc_quiet_channels_reset(wlc_cm); + wlc_channels_commit(wlc_cm); + wlc_rcinfo_init(wlc_cm); + wlc_regclass_vec_init(wlc_cm); + + return (0); +} + +/* Update the radio state (enable/disable) and tx power targets + * based on a new set of channel/regulatory information + */ +static void +wlc_channels_commit(wlc_cm_info_t *wlc_cm) +{ + wlc_info_t *wlc = wlc_cm->wlc; + uint chan; + txppr_t txpwr; + + /* search for the existence of any valid channel */ + for (chan = 0; chan < MAXCHANNEL; chan++) { + if (VALID_CHANNEL20_DB(wlc, chan)) { + break; + } + } + if (chan == MAXCHANNEL) + chan = INVCHANNEL; + + /* based on the channel search above, set or clear WL_RADIO_COUNTRY_DISABLE */ + if (chan == INVCHANNEL) { + /* country/locale with no valid channels, set the radio disable bit */ + mboolset(wlc->pub->radio_disabled, WL_RADIO_COUNTRY_DISABLE); + WL_ERROR(("wl%d: %s: no valid channel for \"%s\" nbands %d bandlocked %d\n", + wlc->pub->unit, __FUNCTION__, + wlc_cm->country_abbrev, NBANDS(wlc), wlc->bandlocked)); + } else if (mboolisset(wlc->pub->radio_disabled, WL_RADIO_COUNTRY_DISABLE)) { + /* country/locale with valid channel, clear the radio disable bit */ + mboolclr(wlc->pub->radio_disabled, WL_RADIO_COUNTRY_DISABLE); + } + + /* Now that the country abbreviation is set, if the radio supports 2G, then + * set channel 14 restrictions based on the new locale. + */ + if (NBANDS(wlc) > 1 || BAND_2G(wlc->band->bandtype)) { + wlc_phy_chanspec_ch14_widefilter_set(wlc->band->pi, wlc_japan(wlc) ? TRUE : FALSE); + } + + if (wlc->pub->up && chan != INVCHANNEL) { + /* recompute tx power for new country info */ + + + /* Where do we get a good chanspec? wlc, phy, set it ourselves? */ + wlc_channel_reg_limits(wlc_cm, wlc->chanspec, &txpwr); + + wlc_channel_min_txpower_limits_with_local_constraint(wlc_cm, &txpwr, WLC_TXPWR_MAX); + + /* Where do we get a good chanspec? wlc, phy, set it ourselves? */ + wlc_phy_txpower_limit_set(wlc->band->pi, &txpwr, wlc->chanspec); + } +} + +/* reset the quiet channels vector to the union of the restricted and radar channel sets */ +void +wlc_quiet_channels_reset(wlc_cm_info_t *wlc_cm) +{ + wlc_info_t *wlc = wlc_cm->wlc; + uint i; + wlcband_t *band; + + /* initialize quiet channels for restricted channels */ + bcopy(&wlc_cm->restricted_channels, &wlc_cm->quiet_channels, sizeof(chanvec_t)); + + band = wlc->band; + for (i = 0; i < NBANDS(wlc); i++, band = wlc->bandstate[OTHERBANDUNIT(wlc)]) { +#ifdef BAND5G /* RADAR */ + /* initialize quiet channels for radar if we are in spectrum management mode */ + if (WL11H_ENAB(wlc)) { + uint j; + const chanvec_t *chanvec; + chanvec = wlc_cm->bandstate[band->bandunit].radar_channels; + for (j = 0; j < sizeof(chanvec_t); j++) + wlc_cm->quiet_channels.vec[j] |= chanvec->vec[j]; + } +#endif + } +} + +bool +wlc_quiet_chanspec(wlc_cm_info_t *wlc_cm, chanspec_t chspec) +{ + return (N_ENAB(wlc_cm->wlc->pub) && CHSPEC_IS40(chspec) ? + (isset(wlc_cm->quiet_channels.vec, LOWER_20_SB(CHSPEC_CHANNEL(chspec))) || + isset(wlc_cm->quiet_channels.vec, UPPER_20_SB(CHSPEC_CHANNEL(chspec)))) : + isset(wlc_cm->quiet_channels.vec, CHSPEC_CHANNEL(chspec))); +} + +void +wlc_set_quiet_chanspec(wlc_cm_info_t *wlc_cm, chanspec_t chspec) +{ + if (N_ENAB(wlc_cm->wlc->pub) && CHSPEC_IS40(chspec)) { + setbit(wlc_cm->quiet_channels.vec, LOWER_20_SB(CHSPEC_CHANNEL(chspec))); + setbit(wlc_cm->quiet_channels.vec, UPPER_20_SB(CHSPEC_CHANNEL(chspec))); + } else + setbit(wlc_cm->quiet_channels.vec, CHSPEC_CHANNEL(chspec)); +} + +void +wlc_clr_quiet_chanspec(wlc_cm_info_t *wlc_cm, chanspec_t chspec) +{ + if (N_ENAB(wlc_cm->wlc->pub) && CHSPEC_IS40(chspec)) { + clrbit(wlc_cm->quiet_channels.vec, LOWER_20_SB(CHSPEC_CHANNEL(chspec))); + clrbit(wlc_cm->quiet_channels.vec, UPPER_20_SB(CHSPEC_CHANNEL(chspec))); + } else + clrbit(wlc_cm->quiet_channels.vec, CHSPEC_CHANNEL(chspec)); +} + +/* Is the channel valid for the current locale? (but don't consider channels not + * available due to bandlocking) + */ +bool +wlc_valid_channel20_db(wlc_cm_info_t *wlc_cm, uint val) +{ + wlc_info_t *wlc = wlc_cm->wlc; + + return (VALID_CHANNEL20(wlc, val) || + (!wlc->bandlocked && VALID_CHANNEL20_IN_BAND(wlc, OTHERBANDUNIT(wlc), val))); +} + +/* Is the channel valid for the current locale and specified band? */ +bool +wlc_valid_channel20_in_band(wlc_cm_info_t *wlc_cm, uint bandunit, uint val) +{ + return ((val < MAXCHANNEL) && isset(wlc_cm->bandstate[bandunit].valid_channels.vec, val)); +} + +/* Is the channel valid for the current locale and current band? */ +bool +wlc_valid_channel20(wlc_cm_info_t *wlc_cm, uint val) +{ + wlc_info_t *wlc = wlc_cm->wlc; + + return ((val < MAXCHANNEL) && + isset(wlc_cm->bandstate[wlc->band->bandunit].valid_channels.vec, val)); +} + +/* Is the 40 MHz allowed for the current locale and specified band? */ +bool +wlc_valid_40chanspec_in_band(wlc_cm_info_t *wlc_cm, uint bandunit) +{ + wlc_info_t *wlc = wlc_cm->wlc; + + return (((wlc_cm->bandstate[bandunit].locale_flags & (WLC_NO_MIMO | WLC_NO_40MHZ)) == 0) && + wlc->bandstate[bandunit]->mimo_cap_40); +} + + +/* Set tx power limits */ +/* BMAC_NOTE: this only needs a chanspec so that it can choose which 20/40 limits + * to save in phy state. Would not need this if we ether saved all the limits and + * applied them only when we were on the correct channel, or we restricted this fn + * to be called only when on the correct channel. + */ +static void +wlc_channel_min_txpower_limits_with_local_constraint(wlc_cm_info_t *wlc_cm, + txppr_t *txpwr, uint8 local_constraint_qdbm) +{ + int j; +#ifdef WL11N + bool ishtphy = WLCISHTPHY(wlc_cm->wlc->band); + uint8 *ptxpwr; +#endif + /* CCK Rates */ + for (j = 0; j < WL_NUM_RATES_CCK; j++) { + txpwr->cck[j] = MIN(txpwr->cck[j], local_constraint_qdbm); + } + + /* 20 MHz Legacy OFDM SISO */ + for (j = 0; j < WL_NUM_RATES_OFDM; j++) { + txpwr->ofdm[j] = MIN(txpwr->ofdm[j], local_constraint_qdbm); + } + +#ifdef WL11N + /* 20 MHz Legacy OFDM CDD */ + for (j = 0; j < WL_NUM_RATES_OFDM; j++) { + txpwr->ofdm_cdd[j] = MIN(txpwr->ofdm_cdd[j], local_constraint_qdbm); + } + + /* 40 MHz Legacy OFDM SISO */ + for (j = 0; j < WL_NUM_RATES_OFDM; j++) { + txpwr->ofdm_40[j] = MIN(txpwr->ofdm_40[j], local_constraint_qdbm); + } + + /* 40 MHz Legacy OFDM CDD */ + for (j = 0; j < WL_NUM_RATES_OFDM; j++) { + txpwr->ofdm_40_cdd[j] = MIN(txpwr->ofdm_40_cdd[j], local_constraint_qdbm); + } + + /* 20MHz MCS 0-7 SISO or 1 Nsts to 1 Tx */ + ptxpwr = ishtphy ? txpwr->u20.ht.s1x1 : txpwr->u20.n.siso; + for (j = 0; j < WL_NUM_RATES_MCS_1STREAM; j++) { + ptxpwr[j] = MIN(ptxpwr[j], local_constraint_qdbm); + } + + /* 20MHz MCS 0-7 CDD or 1 Nsts to 2 Tx */ + ptxpwr = ishtphy ? txpwr->u20.ht.s1x2 : txpwr->u20.n.cdd; + for (j = 0; j < WL_NUM_RATES_MCS_1STREAM; j++) { + txpwr->u20.n.cdd[j] = MIN(ptxpwr[j], local_constraint_qdbm); + } + + /* 20MHz MCS 0-7 STBC or 1 Nsts to 3 Tx */ + ptxpwr = ishtphy ? txpwr->ht.u20s1x3 : txpwr->u20.n.stbc; + for (j = 0; j < WL_NUM_RATES_MCS_1STREAM; j++) { + ptxpwr[j] = MIN(ptxpwr[j], local_constraint_qdbm); + } + + /* 20MHz MCS 8-15 MIMO or 2 Nsts to 2 Tx */ + ptxpwr = ishtphy ? txpwr->u20.ht.s2x2 : txpwr->u20.n.sdm; + for (j = 0; j < WL_NUM_RATES_MCS_1STREAM; j++) + ptxpwr[j] = MIN(ptxpwr[j], local_constraint_qdbm); + + /* 20MHz 2 Nsts to 3 Tx & 3 Nsts to 3 Tx */ + if (ishtphy) { + ptxpwr = txpwr->ht.u20s2x3; + for (j = 0; j < WL_NUM_RATES_MCS_1STREAM; j++) { + ptxpwr[j] = MIN(ptxpwr[j], local_constraint_qdbm); + } + ptxpwr = txpwr->u20.ht.s3x3; + for (j = 0; j < WL_NUM_RATES_MCS_1STREAM; j++) { + ptxpwr[j] = MIN(ptxpwr[j], local_constraint_qdbm); + } + } + + /* 40MHz MCS 0-7 SISO or 1 Nsts to 1 Tx */ + ptxpwr = ishtphy ? txpwr->u40.ht.s1x1 : txpwr->u40.n.siso; + for (j = 0; j < WL_NUM_RATES_MCS_1STREAM; j++) { + ptxpwr[j] = MIN(ptxpwr[j], local_constraint_qdbm); + } + + /* 40MHz MCS 0-7 CDD or 1 Nsts to 2 Tx */ + ptxpwr = ishtphy ? txpwr->u40.ht.s1x2 : txpwr->u40.n.cdd; + for (j = 0; j < WL_NUM_RATES_MCS_1STREAM; j++) { + ptxpwr[j] = MIN(ptxpwr[j], local_constraint_qdbm); + } + + /* 40MHz MCS 0-7 STBC or 1 Nsts to 3 Tx */ + ptxpwr = ishtphy ? txpwr->ht.u40s1x3 : txpwr->u40.n.stbc; + for (j = 0; j < WL_NUM_RATES_MCS_1STREAM; j++) { + ptxpwr[j] = MIN(ptxpwr[j], local_constraint_qdbm); + } + + /* 40MHz MCS 8-15 MIMO or 2 Nsts to 2 Tx */ + ptxpwr = ishtphy ? txpwr->u40.ht.s2x2 : txpwr->u40.n.sdm; + for (j = 0; j < WL_NUM_RATES_MCS_1STREAM; j++) + ptxpwr[j] = MIN(ptxpwr[j], local_constraint_qdbm); + + /* 20MHz 2 Nsts to 3 Tx & 3 Nsts to 3 Tx */ + if (ishtphy) { + ptxpwr = txpwr->ht.u40s2x3; + for (j = 0; j < WL_NUM_RATES_MCS_1STREAM; j++) { + ptxpwr[j] = MIN(ptxpwr[j], local_constraint_qdbm); + } + ptxpwr = txpwr->u40.ht.s3x3; + for (j = 0; j < WL_NUM_RATES_MCS_1STREAM; j++) { + ptxpwr[j] = MIN(ptxpwr[j], local_constraint_qdbm); + } + + /* 20in40MHz CCK */ + for (j = 0; j < WL_NUM_RATES_CCK; j++) + txpwr->cck_20ul[j] = MIN(txpwr->cck_20ul[j], local_constraint_qdbm); + + /* 20in40MHz OFDM */ + for (j = 0; j < WL_NUM_RATES_OFDM; j++) + txpwr->ofdm_20ul[j] = MIN(txpwr->ofdm_20ul[j], local_constraint_qdbm); + + /* 20in40MHz OFDM CDD */ + for (j = 0; j < WL_NUM_RATES_OFDM; j++) + txpwr->ofdm_20ul_cdd[j] = MIN(txpwr->ofdm_20ul_cdd[j], + local_constraint_qdbm); + + /* 20in40MHz 1 Nsts to 1 Tx */ + for (j = 0; j < WL_NUM_RATES_MCS_1STREAM; j++) + txpwr->ht20ul.s1x1[j] = MIN(txpwr->ht20ul.s1x1[j], local_constraint_qdbm); + + /* 20in40MHz 1 Nsts to 2 Tx */ + for (j = 0; j < WL_NUM_RATES_MCS_1STREAM; j++) + txpwr->ht20ul.s1x2[j] = MIN(txpwr->ht20ul.s1x2[j], local_constraint_qdbm); + + /* 20in40MHz 1 Nsts to 3 Tx */ + for (j = 0; j < WL_NUM_RATES_MCS_1STREAM; j++) + txpwr->ht.ul20s1x3[j] = MIN(txpwr->ht.ul20s1x3[j], local_constraint_qdbm); + + /* 20in40MHz 2 Nsts to 2 Tx */ + for (j = 0; j < WL_NUM_RATES_MCS_1STREAM; j++) + txpwr->ht20ul.s2x2[j] = MIN(txpwr->ht20ul.s2x2[j], local_constraint_qdbm); + + /* 40MHz MCS 2 Nsts to 3 Tx */ + for (j = 0; j < WL_NUM_RATES_MCS_1STREAM; j++) + txpwr->ht.ul20s2x3[j] = MIN(txpwr->ht.ul20s2x3[j], local_constraint_qdbm); + + /* 40MHz MCS 3 Nsts to 3 Tx */ + for (j = 0; j < WL_NUM_RATES_MCS_1STREAM; j++) + txpwr->ht20ul.s3x3[j] = MIN(txpwr->ht20ul.s3x3[j], local_constraint_qdbm); + } + /* 40MHz MCS 32 */ + txpwr->mcs32 = MIN(txpwr->mcs32, local_constraint_qdbm); +#endif /* WL11N */ + +} + +static void +wlc_channel_txpower_limits(wlc_cm_info_t *wlc_cm, txppr_t *txpwr) +{ + uint8 local_constraint; + wlc_info_t *wlc = wlc_cm->wlc; + + local_constraint = wlc_local_constraint_qdbm(wlc); + + wlc_channel_reg_limits(wlc_cm, wlc->chanspec, txpwr); + + wlc_channel_min_txpower_limits_with_local_constraint(wlc_cm, txpwr, local_constraint); +} + +void +wlc_channel_set_chanspec(wlc_cm_info_t *wlc_cm, chanspec_t chanspec, uint8 local_constraint_qdbm) +{ + wlc_info_t *wlc = wlc_cm->wlc; + txppr_t txpwr; + + wlc_channel_reg_limits(wlc_cm, chanspec, &txpwr); + + wlc_channel_min_txpower_limits_with_local_constraint(wlc_cm, &txpwr, local_constraint_qdbm); + + wlc_channel_update_txchain_offsets(wlc_cm, &txpwr); + + wlc_bmac_set_chanspec(wlc->hw, chanspec, (wlc_quiet_chanspec(wlc_cm, chanspec) != 0), + &txpwr); +} + +int +wlc_channel_set_txpower_limit(wlc_cm_info_t *wlc_cm, uint8 local_constraint_qdbm) +{ + wlc_info_t *wlc = wlc_cm->wlc; + txppr_t txpwr; + + wlc_channel_reg_limits(wlc_cm, wlc->chanspec, &txpwr); + + wlc_channel_min_txpower_limits_with_local_constraint(wlc_cm, &txpwr, local_constraint_qdbm); + + wlc_channel_update_txchain_offsets(wlc_cm, &txpwr); + + wlc_phy_txpower_limit_set(wlc->band->pi, &txpwr, wlc->chanspec); + + return 0; +} + +void +wlc_channel_reg_limits(wlc_cm_info_t *wlc_cm, chanspec_t chanspec, txppr_t *txpwr) +{ + wlc_info_t *wlc = wlc_cm->wlc; + uint i; + uint chan; + int maxpwr; + int delta; + const country_info_t *country; + wlcband_t * band; + const locale_info_t * li; + int conducted_max; + int conducted_ofdm_max; +#ifdef WL11N + const locale_mimo_info_t *li_mimo; + int maxpwr20, maxpwr40; + int maxpwr_idx; + uint j; +#endif /* WL11N */ + bool is_4331 = FALSE; + bool filt_war = FALSE; + + if ((wlc->pub->sih->boardvendor == VENDOR_APPLE) && + ((wlc->pub->sih->boardtype == BCM94331X19) || + (wlc->pub->sih->boardtype == BCM94331PCIEBT3Ax_SSID))) + is_4331 = TRUE; + + bzero(txpwr, sizeof(txppr_t)); + + + /* Lookup channel in autocountry_default if not in current country */ + if (!wlc_valid_chanspec_db(wlc_cm, chanspec)) { + country = wlc_country_lookup(wlc, wlc->autocountry_default); + if (country == NULL) + return; + } + else + country = wlc_cm->country; + chan = CHSPEC_CHANNEL(chanspec); + band = wlc->bandstate[CHSPEC_WLCBANDUNIT(chanspec)]; + li = BAND_5G(band->bandtype) ? + wlc_get_locale_5g(country->locale_5G) : + wlc_get_locale_2g(country->locale_2G); + +#ifdef WL11N + li_mimo = BAND_5G(band->bandtype) ? + wlc_get_mimo_5g(country->locale_mimo_5G) : + wlc_get_mimo_2g(country->locale_mimo_2G); +#endif /* WL11N */ + + /* The maxtxpwr for a locale may be specified using either a conducted limit + * (measured before the antenna) or EIRP (measured after the antenna). + * The WLC_EIRP flag is used to distinguish between the two cases. + * The max power limits returned by this routine are all conducted values so + * they might need to be adjusted to account for the board's antenna gain. + */ + + /* Compute a delta to remove from the locale table value. In the EIRP case this + * is simply the antenna gain and would typically be 0 in the conducted case. But + * because we/Broadcom do not want to allow more than a 6 dB antennal gain to a + * conducted locale's table value, the delta to remove can be the excess over 6 dB + * of antenna gain. + */ + + if (li->flags & WLC_EIRP) { + delta = band->antgain; + } else { + delta = 0; + if (band->antgain > QDB(6) && !is_4331) + delta = band->antgain - QDB(6); /* Excess over 6 dB */ + } + + if (is_4331 && (li->flags & WLC_FILT_WAR) && (chan == 1 || chan == 13)) + filt_war = TRUE; + wlc_bmac_filter_war_upd(wlc->hw, filt_war); + + /* Need to set the txpwr_local_max to external reg max for + * this channel as per the locale selected for AP. + */ + if (AP_ONLY(wlc->pub)) { + wlc->txpwr_local_max = wlc_get_reg_max_power_for_channel(wlc->cmi, + CHSPEC_CHANNEL(wlc->chanspec), TRUE); + } + + /* Some EIRP locales also have a conducted CCK or OFDM limit. */ + if (li == &locale_g) { + conducted_max = QDB(22); + conducted_ofdm_max = 82; /* 20.5 dBm */ + } else if (li == &locale_h || li == &locale_i) { + conducted_max = QDB(22); + conducted_ofdm_max = QDB(22); + } else { + conducted_max = WLC_TXPWR_MAX; + conducted_ofdm_max = WLC_TXPWR_MAX; + } + + /* CCK txpwr limits for 2.4G band */ + if (BAND_2G(band->bandtype)) { + maxpwr = li->maxpwr[CHANNEL_POWER_IDX_2G_CCK(chan)]; + + /* special cases for 2.4G CCK */ + if (li == &locale_a2) { + if (chan == 11) + maxpwr = QDB(19); + else if (chan == 14) + maxpwr = QDB(16); + } else if (li == &locale_b2) { + if (chan == 14) + maxpwr = 54; /* 13.5 dBm */ + } else if (li == &locale_b2_1 || li == &locale_b2_2) { + if (chan == 11 || chan == 14) + maxpwr = QDB(16); + } else if (li == &locale_b2_6) { + if (chan == 11) + maxpwr = QDB(16); + } else if (li == &locale_b5) { + if (chan == 14) + maxpwr = 42; /* 10.5 dBm */ + } else if (li == &locale_a4 || + li == &locale_a4_2 || + li == &locale_a4_3) { + if (chan == 2) + maxpwr = QDB(22); + else if (chan == 10) + maxpwr = QDB(21); + } else if (li == &locale_a4_4) { + if ((chan == 2) || (chan == 10)) + maxpwr = 98; /* 24.5 dBm */ + } else if (li == &locale_a5) { + if (chan == 10) + maxpwr = QDB(20); + } else if (li == &locale_b5_2) { + if (chan == 14) + maxpwr = QDB(10); + } else if (li == &locale_b5_3 || li == &locale_c_2) { + if (chan == 14) + maxpwr = QDB(15); + } else if (li == &locale_a12) { + if (chan == 7 || chan == 8) + maxpwr = QDB(16); + if (chan == 9) + maxpwr = QDB(12); + if (chan == 10) + maxpwr = QDB(15); + } + + maxpwr = maxpwr - delta; + maxpwr = MAX(maxpwr, 0); + maxpwr = MIN(maxpwr, conducted_max); + + for (i = 0; i < WL_NUM_RATES_CCK; i++) + txpwr->cck[i] = (uint8)maxpwr; + } + + /* Some locales is EIRP for CCK and conducted for OFDM, fix for OFDM now */ + if (li == &locale_b3 || li == &locale_b4 || li == &locale_k || + li == &locale_b_1) { + delta = 0; + if (band->antgain > QDB(6)) + delta = band->antgain - QDB(6); /* Excess over 6 dB */ + } + + /* OFDM txpwr limits for 2.4G or 5G bands */ + if (BAND_2G(band->bandtype)) { + maxpwr = li->maxpwr[CHANNEL_POWER_IDX_2G_OFDM(chan)]; + + /* special cases for 2.4G OFDM */ + if (li == &locale_a2) { + if (chan == 11) + maxpwr = 66; /* 16.5 dBm */ + } else if (li == &locale_b2) { + if (chan == 11) + maxpwr = 70; /* 17.5 dBm */ + } else if (li == &locale_b2_1 || li == &locale_b2_2) { + if (chan == 11) + maxpwr = QDB(16); + } else if (li == &locale_b2_3 || li == &locale_b2_5) { + if (chan == 13) + maxpwr = 46 /* 11.5 dBm */; + } else if (li == &locale_b2_6) { + if (chan == 11) + maxpwr = QDB(16); + } else if (li == &locale_k) { + if (chan == 13) + maxpwr = QDB(14); + } else if (li == &locale_b5) { + if (chan == 11) + maxpwr = 62; /* 15.5 dBm */ + } else if (li == &locale_a4 || li == &locale_a4_2) { + if (chan == 2 || chan == 10) + maxpwr = QDB(20); + } else if (li == &locale_a4_3) { + if (chan == 2 || chan == 10) + maxpwr = QDB(19); + } else if (li == &locale_a4_4) { + if (chan == 2 || chan == 10) + maxpwr = 86; /* 21.5 dBm */ + } else if (li == &locale_a5) { + if (chan == 2 || chan == 10) + maxpwr = QDB(19); + } else if (li == &locale_a5_1) { + if (chan == 2 || chan == 10) + maxpwr = QDB(16); + } else if (li == &locale_a6_2) { + if (chan == 2 || chan == 10) + maxpwr = QDB(18); + } else if (li == &locale_a6 || li == &locale_a6_1) { + if (chan == 2 || chan == 10) + maxpwr = QDB(20); + } else if (li == &locale_a9) { + if (chan == 2 || chan == 10) + maxpwr = QDB(16); + else if (chan == 3 || chan == 9) + maxpwr = 70; /* 17.5 dBm */ + } else if (li == &locale_b5_2) { + if (chan == 12 || chan == 13) + maxpwr = QDB(15); + } else if (li == &locale_b5_3) { + if (chan == 11) + maxpwr = 51; /* 12.75 */ + } else if (li == &locale_i_1) { + if (chan == 12) + maxpwr = QDB(16); + if (chan == 13) + maxpwr = QDB(14); + } else if (li == &locale_a3_1) { + if (chan == 2) + maxpwr = QDB(16); + else if (chan == 10) + maxpwr = QDB(15); + } else if (li == &locale_a12) { + if (chan == 2) + maxpwr = QDB(11); + else if (chan == 3 || chan == 8) + maxpwr = QDB(14); + else if (chan == 4 || chan == 7) + maxpwr = QDB(15); + else if (chan == 5 || chan == 6) + maxpwr = QDB(16); + else if (chan == 9) + maxpwr = QDB(12); + } + } else { + maxpwr = li->maxpwr[CHANNEL_POWER_IDX_5G(chan)]; + +#ifdef BAND5G + /* special cases for 5G OFDM */ + if (li == &locale_8b) { + if (chan == 100) { + maxpwr = 58; /* 14.5 dBm */ + } else if (chan >= 104 && chan <= 136) { + maxpwr = QDB(17); + } else if (chan == 140) { + maxpwr = QDB(15); + } + } else if (li == &locale_29b) { + if (chan == 100) { + maxpwr = 62; /* 15.5 dBm */ + } else if (chan >= 132 && chan <= 140) { + maxpwr = QDB(20); + } + } else if ((li == &locale_29b_1) || (li == &locale_29b_3)) { + if (chan == 100) { + maxpwr = 74; /* 18.5 dBm */ + } else if (chan == 140) { + maxpwr = QDB(17); + } + } else if (li == &locale_29d) { + if (chan >= 132 && chan <= 140) + maxpwr = 78 /* 19.5 */; + } else if (li == &locale_11_2) { + if (chan == 100) { + maxpwr = QDB(14); + } + } else if (li == &locale_19_1) { + if (chan >= 104 && chan <= 136) { + maxpwr = QDB(17); + } else if (chan == 140) { + maxpwr = 50; /* 12.5 dBm */ + } + } else if (li == &locale_19_2) { + if (chan == 100 || chan == 140) { + maxpwr = QDB(16); + } else if (chan == 149 || chan == 165) { + maxpwr = 78 /* 19.5 */; + } + } else if (li == &locale_19h_1) { + if (chan == 140) { + maxpwr = 58 /* 14.5 */; + } + } else if (li == &locale_19_3) { + if (chan == 100) { + maxpwr = QDB(13); + } + } else if (li == &locale_19_4) { + if (chan == 36) { + maxpwr = QDB(13); + } + if (chan == 100) { + maxpwr = 62 /* 15.5 dBm */; + } + } else if (li == &locale_19a_1) { + if (chan == 100) { + maxpwr = QDB(14); + } + } else if (li == &locale_19l_1) { + if (chan == 140) { + maxpwr = QDB(15); + } + } else if (li == &locale_19l_2) { + if (chan == 100) { + maxpwr = /* 14.5 dBm */ 58; + } else if (chan == 140) { + maxpwr = QDB(15); + } + } else if (li == &locale_3l) { + if (chan >= 132 && chan <= 140) { + maxpwr = 54; /* 13.5 dBm */ + } + } +#endif /* BAND5G */ + } + + maxpwr = maxpwr - delta; + maxpwr = MAX(maxpwr, 0); + maxpwr = MIN(maxpwr, conducted_ofdm_max); + + /* Keep OFDM lmit below CCK limit */ + if (BAND_2G(band->bandtype)) + maxpwr = MIN(maxpwr, txpwr->cck[0]); + + for (i = 0; i < WL_NUM_RATES_OFDM; i++) { + txpwr->ofdm[i] = (uint8)maxpwr; + } + +#ifdef WL11N + for (i = 0; i < WL_NUM_RATES_OFDM; i++) { + /* OFDM 40 MHz SISO has the same power as the corresponding MCS0-7 rate unless + * overriden by the locale specific code. We set this value to 0 as a + * flag (presumably 0 dBm isn't a possibility) and then copy the MCS0-7 value + * to the 40 MHz value if it wasn't explicitly set. + */ + txpwr->ofdm_40[i] = 0; + + txpwr->ofdm_cdd[i] = (uint8)maxpwr; + + /* OFDM 40 MHz CDD has the same power as the corresponding MCS0-7 rate unless + * overriden by the locale specific code. We set this value to 0 as a + * flag (presumably 0 dBm isn't a possibility) and then copy the MCS0-7 value + * to the OFDM value if it wasn't explicitly set. + */ + txpwr->ofdm_40_cdd[i] = 0; + } +#endif /* WL11N */ + +#ifdef WL11N + /* MIMO/HT specific limits */ + + /* Compute a delta to remove from the locale table value. In the EIRP case this + * is simply the antenna gain and would typically be 0 in the conducted case. But + * because we/Broadcom do not want to allow more than a 6 dB antennal gain to a + * conducted locale's table value, the delta to remove can be the excess over 6 dB + * of antenna gain. + */ + + if (li_mimo->flags & WLC_EIRP) { + delta = band->antgain; + } else { + delta = 0; + if (band->antgain > QDB(6)) + delta = band->antgain - QDB(6); /* Excess over 6 dB */ + } + + if (BAND_2G(band->bandtype)) + maxpwr_idx = (chan - 1); + else + maxpwr_idx = CHANNEL_POWER_IDX_5G(chan); + + maxpwr20 = li_mimo->maxpwr20[maxpwr_idx]; + maxpwr40 = li_mimo->maxpwr40[maxpwr_idx]; + + if (li_mimo == &locale_3bn) { + if (chan == 100) { + maxpwr20 = QDB(20); + maxpwr40 = QDB(18); + } + } + + if (li_mimo == &locale_8an) { + if (chan >= 100 && chan <= 102) { + maxpwr40 = 62; /* 15.5 dBm */ + } + } + + if (li_mimo == &locale_8bn) { + if (chan >= 100 && chan <= 102) { + maxpwr40 = 62; /* 15.5 dBm */ + } + } + + /* Fix channel only splits here */ + if (li_mimo == &locale_8cn) { + if (chan >= 100 && chan <= 108) { + maxpwr20 = QDB(13); + maxpwr40 = QDB(12); + } else if (chan >= 110 && chan <= 132) { + maxpwr20 = 58; /* 14.5 dBm */ + maxpwr40 = QDB(17); + } else if (chan >= 134 && chan <= 136) { + maxpwr20 = 58; /* 14.5 dBm */ + maxpwr20 = 62; /* 15.5 dBm */ + } else if (chan == 140) { + maxpwr20 = 54; /* 13.5 dBm */ + maxpwr40 = QDB(18); /* 13.5 dBm */ + } + } + if (li_mimo == &locale_19n || + li_mimo == &locale_19an || + li_mimo == &locale_19bn || + li_mimo == &locale_19hn || + li_mimo == &locale_19ln || + li_mimo == &locale_19rn) { + /* Fixup 100-102, 104-140 channel split */ + if (chan >= 104 && chan <= 140) { + if (li_mimo == &locale_19bn || + li_mimo == &locale_19hn || + li_mimo == &locale_19rn) + maxpwr20 = 66; /* 16.5 dBm */ + else + maxpwr20 = QDB(17); + + if (li_mimo == &locale_19an || + li_mimo == &locale_19ln) + maxpwr40 = QDB(17); + else + maxpwr40 = 74; /* 18.5 dBm */ + } + } + + if (li_mimo == &locale_19hn_2) { + if (chan >= 100 && chan <= 102) { + maxpwr20 = 82; /* 20.5 */ + maxpwr40 = QDB(18); + } else if (chan == 60) { + maxpwr20 = 82; /* 20.5 */ + maxpwr40 = 86; /* 21.5 */ + } + } + + if (li_mimo == &locale_19n_1) { + if (chan >= 104 && chan <= 136) { + maxpwr20 = QDB(17); + maxpwr40 = QDB(16); + } else if (chan == 140) { + maxpwr20 = 54; /* 13.5 dBm */ + maxpwr40 = 0; + } + } + + if (li_mimo == &locale_19n_2) { + if (chan >= 100 && chan <= 102) { + maxpwr20 = QDB(13); + maxpwr40 = QDB(13); + } else if (chan >= 128 && chan <= 136) { + maxpwr20 = QDB(14); + maxpwr40 = QDB(13); + } else if (chan >= 159 && chan <= 161) { + maxpwr20 = 82 /* 20.5 */; + maxpwr40 = 82; + } else if (chan == 140) { + maxpwr20 = QDB(13); + maxpwr40 = 0; + } else if (chan == 165) { + maxpwr20 = 78 /* 19.5 */; + maxpwr40 = 0; + } else if (chan == 149) { + maxpwr20 = QDB(18); + maxpwr40 = 0; + } + } + + if (li_mimo == &locale_19n_3) { + if (chan >= 40 && chan <= 48) { + maxpwr20 = 58; /* 14.5 dBm */ + maxpwr40 = 58; /* 14.5 dBm */ + } else if (chan >= 104 && chan <= 140) { + maxpwr20 = 58; /* 14.5 dBm */ + maxpwr40 = 54; /* 13.5 dBm */ + } + } + + if (li_mimo == &locale_29bn) { + if (chan == 100) { + maxpwr20 = QDB(16); + maxpwr40 = QDB(13); + } else if (chan >= 104 && chan <= 116) { + maxpwr20 = QDB(16); + maxpwr40 = QDB(15); + } + } + + if (li_mimo == &locale_29dn) { + if (chan >= 132 && chan <= 140) { + maxpwr20 = 74 /* 18.5 */; + maxpwr40 = 62 /* 15.5 */; + } + } + + if (li_mimo == &locale_19hn_1) { + if (chan == 140) { + maxpwr20 = 58 /* 14.5 */; + maxpwr40 = 0; + } else if (chan >= 100 && chan <= 102) { + maxpwr20 = 58 /* 14.5 */; + maxpwr40 = 58 /* 14.5 */; + } else if (chan >= 134 && chan <= 136) { + maxpwr20 = 70 /* 17.5 */; + maxpwr40 = 70 /* 17.5 */; + } + } + + if (li_mimo == &locale_29bn_1) { + if (chan == 100) { + maxpwr20 = QDB(18); + maxpwr40 = QDB(16); + } else if (chan == 140) { + maxpwr20 = 66 /* 16.5 */; + maxpwr40 = 0; + } else if (chan >= 132 && chan <= 136) { + maxpwr40 = 74; /* 18.5 dBm */ + } + } + + if (li_mimo == &locale_29bn_3) { + if (chan == 100) { + maxpwr20 = QDB(18); + maxpwr40 = QDB(16); + } else if (chan == 140) { + maxpwr20 = 66 /* 16.5 */; + maxpwr40 = 0; + } else if (chan >= 132 && chan <= 136) { + maxpwr40 = QDB(19); + } + } + + if (li_mimo == &locale_19ln_1) { + if (chan >= 100 && chan <= 108) { + maxpwr20 = QDB(13); + maxpwr40 = QDB(12); + } + if (chan >= 110 && chan <= 132) { + maxpwr40 = 70; /* 18.5 dBm */ + } + if (chan >= 134 && chan <= 136) { + maxpwr40 = 62; /* 15.5 dBm */ + } + if (chan == 140) { + maxpwr20 = 54; /* 13.5 dBm */ + maxpwr40 = QDB(18); + } + if (chan >= 149 && chan < 165) { + maxpwr20 = QDB(17); + } + } + + if (li_mimo == &locale_19ln_2) { + if (chan >= 110 && chan <= 132) { + maxpwr20 = /* 14.5 dBm */ 58; + maxpwr40 = QDB(17); + } + if (chan >= 134 && chan <= 136) { + maxpwr20 = /* 14.5 dBm */ 58; + maxpwr40 = 62; /* 15.5 dBm */ + } + if (chan == 140) { + maxpwr20 = 54; /* 13.5 dBm */ + maxpwr40 = QDB(18); + } + } + + if (li_mimo == &locale_19ln_3) { + if (chan >= 100 && chan <= 102) { + maxpwr20 = QDB(16); + maxpwr40 = QDB(13); + } + } + + if (li_mimo == &locale_3ln || + li_mimo == &locale_11ln) { + if (chan >= 132 && chan <= 140) { + maxpwr20 = QDB(11); + } + } + + if (li_mimo == &locale_6an_1) { + if (chan >= 36 && chan <= 38) { + maxpwr40 = QDB(13); + } else if (chan >= 52 && chan <= 54) { + maxpwr40 = QDB(17); + } + } + + if (li_mimo == &locale_8an_1) { + if (chan >= 100 && chan <= 102) { + maxpwr20 = QDB(17); + maxpwr40 = QDB(15); + } + } + + if (li_mimo == &locale_29dn_2) { + if (chan >= 52 && chan <= 54) { + maxpwr20 = QDB(17); + maxpwr40 = QDB(17); + } else if (chan >= 100 && chan <= 108) { + maxpwr20 = QDB(17); + maxpwr40 = QDB(15); + } + } + + if (li_mimo == &locale_25hn) { + if ((chan >= 100 && chan <= 124)|| + (chan >= 149 && chan <= 161)) { + maxpwr20 = QDB(16); + maxpwr40 = QDB(16); + } + } + + /* CLM v4.6.6 */ + if (li_mimo == &locale_3n_1) { + if (chan >= 100 && chan <= 102) { + maxpwr20 = QDB(21); + } + } + + maxpwr20 = maxpwr20 - delta; + maxpwr20 = MAX(maxpwr20, 0); + maxpwr40 = maxpwr40 - delta; + maxpwr40 = MAX(maxpwr40, 0); + + /* First fill in the tx power limits based solely on the internal local table + * structure. Then modify those values for locales that can't be fully described + * by the current table structure. + */ + + /* Fill in the MCS 0-7 (SISO) rates */ + for (i = 0; i < WL_NUM_RATES_MCS_1STREAM; i++) { + + /* 20 MHz has the same power as the corresponding OFDM rate unless + * overriden by the locale specific code. + */ + txpwr->u20.n.siso[i] = txpwr->ofdm[i]; + + /* 40 MHz has the same power as the corresponding CDD rate unless + * overriden by the locale specific code. Because we don't know + * the CDD value yet, the locale specific code and set it, and + * because the locale specific code might want a different + * value for MCS 0-7 SISO vs. CDD, we set this value to 0 as a + * flag (presumably 0 dBm isn't a possibility) and then copy the CDD value + * to the SISO value if it wasn't explicitly set. + */ + txpwr->u40.n.siso[i] = 0; + } + + /* Fill in the MCS 0-7 CDD rates */ + for (i = 0; i < WL_NUM_RATES_MCS_1STREAM; i++) { + txpwr->u20.n.cdd[i] = (uint8)maxpwr20; + txpwr->u40.n.cdd[i] = (uint8)maxpwr40; + } + + /* These locales have SISO expressed in the table and override CDD later */ + if (li_mimo == &locale_an1_t1 || + li_mimo == &locale_an1_t2 || + li_mimo == &locale_an1_t3 || + li_mimo == &locale_an1_t5 || + li_mimo == &locale_an2_5 || + li_mimo == &locale_an6_1 || + li_mimo == &locale_an6_6 || + li_mimo == &locale_bn2_3 || + li_mimo == &locale_bn2_8 || + li_mimo == &locale_bn || + li_mimo == &locale_cn || + li_mimo == &locale_cn_3 || + li_mimo == &locale_bn2_4 || + li_mimo == &locale_bn_9 || + li_mimo == &locale_an_2 || + li_mimo == &locale_an7_8 || + li_mimo == &locale_kn5) { + + if (li_mimo == &locale_bn2_3) { + maxpwr20 = QDB(16); + maxpwr40 = 0; + + if (chan == 3) { + maxpwr40 = QDB(15); + } else if (chan >= 4 && chan <= 8) { + maxpwr40 = QDB(16); + } else if (chan == 9) { + maxpwr40 = QDB(14); + } else if (chan == 12 || chan == 13) { + maxpwr20 = QDB(11); + } + } + + if (li_mimo == &locale_bn2_8) { + maxpwr20 = QDB(16); + maxpwr40 = 0; + + if (chan == 3) { + maxpwr40 = 54; /* 13.5 QDB */ + } else if (chan >= 4 && chan <= 8) { + maxpwr40 = QDB(16); + } else if (chan == 9) { + maxpwr40 = QDB(13); + } else if (chan == 12 || chan == 13) { + maxpwr20 = QDB(11); + } + } + + if (li_mimo == &locale_bn_9 || + li_mimo == &locale_kn5) { + maxpwr20 = 66; /* 16.5 dBm */ + + if (chan >= 3 && chan <= 11) { + if (li_mimo == &locale_bn_9) + maxpwr40 = 54; /* 13.5 QDB */ + else if (li_mimo == &locale_kn5) + maxpwr40 = 66; /* 16.5 dBm */ + } + } + + if (li_mimo == &locale_an2_5) { + if (chan == 1) { + maxpwr20 = 50; /* 12.5 dBm */ + } + if (chan == 11) { + maxpwr20 = 66; /* 16.5 dBm */ + } + if (chan == 3) { + maxpwr40 = QDB(11); + } + if (chan == 9) { + maxpwr40 = 58; /* 14.5 dBm */ + } + } + + + if (li_mimo == &locale_bn || li_mimo == &locale_cn) { + maxpwr20 = QDB(16); + maxpwr40 = 0; + + if (chan >= 3 && chan <= 11) { + maxpwr40 = QDB(16); + } + } + + if (li_mimo == &locale_cn_3) { + maxpwr20 = 70; /* 17.5 dBm */ + maxpwr40 = 0; + + if (chan >= 3 && chan <= 11) { + maxpwr40 = 70; /* 17.5 dBm */ + } + } + + if (li_mimo == &locale_an6_6) { + maxpwr20 = QDB(17); + maxpwr40 = 0; + + if (chan == 11) + maxpwr20 = QDB(16); + if (chan == 3 || chan == 9) + maxpwr40 = QDB(14); + else if (chan >= 4 && chan <= 8) + maxpwr20 = QDB(17); + } + + for (i = 0; i < WL_NUM_RATES_MCS_1STREAM; i++) { + txpwr->u20.n.siso[i] = (uint8)maxpwr20; + txpwr->u40.n.siso[i] = (uint8)maxpwr40; + } + } + + /* Fill in the MCS 0-7 STBC rates */ + for (i = 0; i < WL_NUM_RATES_MCS_1STREAM; i++) { + /* MCS0-7 20 and 40 MHz STBC rates have the same powers as the corresponding + * MCS0-7 20 and 40 MHz CDD rates unless overriden by the locale specific code. + * We set this value to 0 as a flag (presumably 0 dBm isn't a possibility) + * and then copy the CDD values to the STBC values if they weren't explicitly set. + */ + txpwr->u20.n.stbc[i] = 0; + txpwr->u40.n.stbc[i] = 0; + } + + /* Fill in the MCS 8-15 SDM rates */ + for (i = 0; i < WL_NUM_RATES_MCS_1STREAM; i++) { + txpwr->u20.n.sdm[i] = (uint8)maxpwr20; + txpwr->u40.n.sdm[i] = (uint8)maxpwr40; + } + + /* Fill in MCS32 */ + txpwr->mcs32 = (uint8)maxpwr40; + + /* Now override the N enable limits for those locales where + * the defaults are not correct. + */ + + if (li_mimo == &locale_an1_t1 || + li_mimo == &locale_an1_t2 || + li_mimo == &locale_an1_t5) { + uint max_low_mcs, max_mid_mcs, max_high_mcs; + + /* Fixup CDD/SDM and per-MCS */ + max_low_mcs = 0; + max_mid_mcs = 0; + max_high_mcs = 0; + + if (li_mimo == &locale_an1_t1) { + if (chan == 1) { + maxpwr20 = QDB(14); + } else if (chan == 2) { + maxpwr20 = QDB(16); + } else if (chan == 3) { + maxpwr20 = QDB(19); + max_low_mcs = QDB(13); + max_mid_mcs = QDB(14); + max_high_mcs = 58; /* 14.5 dBm */ + } else if (chan >= 4 && chan <= 8) { + maxpwr20 = QDB(19); + max_low_mcs = QDB(14); + max_mid_mcs = QDB(15); + max_high_mcs = 62; /* 15.5 dBm */ + } else if (chan == 9) { + maxpwr20 = QDB(19); + max_low_mcs = QDB(12); + max_mid_mcs = QDB(13); + max_high_mcs = 54; /* 13.5 dBm */ + } else if (chan == 10) { + maxpwr20 = QDB(16); + } else if (chan == 11) { + maxpwr20 = QDB(14); + } + } else if (li_mimo == &locale_an1_t2) { + if (chan == 1) { + maxpwr20 = QDB(14); + } else if (chan == 2) { + maxpwr20 = 62; /* 15.5 dBm */ + } else if (chan == 3) { + maxpwr20 = QDB(19); + max_low_mcs = 50; /* 12.5 dBm */ + max_mid_mcs = 54; /* 13.5 dBm */ + max_high_mcs = QDB(14); + } else if (chan >= 4 && chan <= 8) { + maxpwr20 = QDB(19); + max_low_mcs = QDB(13); + max_mid_mcs = QDB(14); + max_high_mcs = 58; /* 14.5 dBm */ + } else if (chan == 9) { + maxpwr20 = 74; /* 18.5 dBm */ + max_low_mcs = QDB(12); + max_mid_mcs = QDB(13); + max_high_mcs = 54; /* 13.5 dBm */ + } else if (chan == 10) { + maxpwr20 = 62; /* 15.5 dBm */ + } else if (chan == 11) { + maxpwr20 = 54; /* 13.5 dBm */ + } + } else if (li_mimo == &locale_an1_t5) { + if (chan == 1) { + maxpwr20 = QDB(11); + } else if (chan == 2) { + maxpwr20 = QDB(15); + } else if (chan >= 3 && chan <= 8) { + maxpwr20 = QDB(17); + } else if (chan == 9) { + maxpwr20 = 66; /* 16.5 dBm */ + } else if (chan == 10) { + maxpwr20 = QDB(15); + } else if (chan == 11) { + maxpwr20 = 42; /* 10.5 dBm */ + } + } + + for (i = 0; i < WL_NUM_RATES_MCS_1STREAM; i++) { + txpwr->u20.n.cdd[i] = (uint8)maxpwr20; + + /* MCS 0-4 are in the low set + * MCS 5-7 are in the mid set + */ + if (i <= 4) + txpwr->u40.n.cdd[i] = (uint8)max_low_mcs; + else + txpwr->u40.n.cdd[i] = (uint8)max_mid_mcs; + } + + for (i = 0; i < WL_NUM_RATES_MCS_1STREAM; i++) { + txpwr->u20.n.sdm[i] = (uint8)maxpwr20; + + /* MCS 8-11 (i: 0-3) are in the mid set + * MCS 12-15 (i: 4-7) are in the high set + */ + if (i <= 3) + txpwr->u40.n.sdm[i] = (uint8)max_mid_mcs; + else + txpwr->u40.n.sdm[i] = (uint8)max_high_mcs; + } + } + + /* Fixup 40Mhz per-mcs limits */ + if (li_mimo == &locale_an1_t4 || + li_mimo == &locale_an6 || + li_mimo == &locale_an6_2) { + uint max_low_mcs, max_mid_mcs, max_high_mcs; + + /* Fixup per-MCS */ + max_low_mcs = 0; + max_mid_mcs = 0; + max_high_mcs = 0; + + if (li_mimo == &locale_an1_t4) { + if (chan == 3 || chan == 9) { + max_low_mcs = QDB(10); + max_mid_mcs = QDB(11); + max_high_mcs = 46; /* 11.5 dBm */ + } else if (chan >= 4 && chan <= 8) { + max_low_mcs = QDB(12); + max_mid_mcs = QDB(13); + max_high_mcs = 54; /* 13.5 dBm */ + } + } else if (li_mimo == &locale_an6) { + if (chan == 3) { + max_low_mcs = 66; /* 16.5 dBm */ + max_mid_mcs = 70; /* 17.5 dBm */ + max_high_mcs = QDB(18); + } else if (chan == 4) { + max_low_mcs = 70; /* 17.5 dBm */ + max_mid_mcs = 74; /* 18.5 dBm */ + max_high_mcs = QDB(19); + } else if (chan >= 5 && chan <= 7) { + max_low_mcs = QDB(19); + max_mid_mcs = QDB(20); + max_high_mcs = 82; /* 20.5 dBm */ + } else if (chan == 8) { + max_low_mcs = 70; /* 17.5 dBm */ + max_mid_mcs = 74; /* 18.5 dBm */ + max_high_mcs = QDB(19); + } else if (chan == 9) { + max_low_mcs = 62; /* 15.5 dBm */ + max_mid_mcs = 66; /* 16.5 dBm */ + max_high_mcs = QDB(17); + } + } else if (li_mimo == &locale_an6_2) { + if (chan == 3) { + max_low_mcs = 46; /* 11.5 dBm */ + max_mid_mcs = QDB(12); + max_high_mcs = 50; /* 12.5 dBm */ + } else if (chan == 4) { + max_low_mcs = QDB(12); + max_mid_mcs = 50; /* 12.5 dBm */ + max_high_mcs = QDB(13); + } else if (chan >= 5 && chan <= 7) { + max_low_mcs = 50; /* 12.5 dBm */ + max_mid_mcs = 54; /* 13.5 dBm */ + max_high_mcs = 58; /* 14.5 dBm */ + } else if (chan == 8) { + max_low_mcs = QDB(12); + max_mid_mcs = QDB(13); + max_high_mcs = QDB(14); + } else if (chan == 9) { + max_low_mcs = 46; /* 11.5 dBm */ + max_mid_mcs = 50; /* 12.5 dBm */ + max_high_mcs = 54; /* 13.5 dBm */ + } + } + + for (i = 0; i < WL_NUM_RATES_MCS_1STREAM; i++) { + /* MCS 0-4 are in the low set + * MCS 5-7 are in the mid set + */ + if (i <= 4) + txpwr->u40.n.cdd[i] = (uint8)max_low_mcs; + else + txpwr->u40.n.cdd[i] = (uint8)max_mid_mcs; + } + + for (i = 0; i < WL_NUM_RATES_MCS_1STREAM; i++) { + /* MCS 8-11 (i: 0-3) are in the mid set + * MCS 12-15 (i: 4-7) are in the high set + */ + if (i <= 3) + txpwr->u40.n.sdm[i] = (uint8)max_mid_mcs; + else + txpwr->u40.n.sdm[i] = (uint8)max_high_mcs; + } + } + + /* Per MCS fixup for CLM 4.2.3 */ + if ((li_mimo == &locale_1cn) || (li_mimo == &locale_8cn) || + (li_mimo == &locale_19ln_4) || (li_mimo == &locale_11ln_4)) { + uint max_low_mcs, max_mid_mcs, max_high_mcs, max_mid_mcs_sdm; + + max_low_mcs = 0; + max_mid_mcs = 0; + max_high_mcs = 0; + max_mid_mcs_sdm = 0; + if ((((li_mimo == &locale_1cn) || (li_mimo == &locale_19ln_4)) && + (chan >= 36 && chan <= 48)) || (((li_mimo == &locale_11ln_4) || + (li_mimo == &locale_8cn)) && (chan >= 56 && chan <= 64))) { + max_low_mcs = 26; /* 6.5 dBm */ + max_mid_mcs = 26; /* MCS 4-7 */ + max_mid_mcs_sdm = QDB(10); /* MCS 7-11 (SDM) */ + max_high_mcs = QDB(11); + + for (i = 0; i < WL_NUM_RATES_MCS_1STREAM; i++) { + /* MCS 0-4 are in the low set + * MCS 5-7 are in the mid set + */ + if (i <= 4) + txpwr->u20.n.cdd[i] = (uint8)max_low_mcs; + else + txpwr->u20.n.cdd[i] = (uint8)max_mid_mcs; + } + + for (i = 0; i < WL_NUM_RATES_MCS_1STREAM; i++) { + /* MCS 8-11 (i: 0-3) are in the mid set + * MCS 12-15 (i: 4-7) are in the high set + */ + if (i <= 3) + txpwr->u20.n.sdm[i] = (uint8)max_mid_mcs_sdm; + else + txpwr->u20.n.sdm[i] = (uint8)max_high_mcs; + } + } + /* fixup 40MHz */ + if ((((li_mimo == &locale_1cn) || (li_mimo == &locale_19ln_4)) && + (chan >= 36 && chan <= 48)) || (((li_mimo == &locale_11ln_4) || + (li_mimo == &locale_8cn)) && (chan >= 56 && chan <= 64))) { + max_low_mcs = QDB(9); + max_mid_mcs = QDB(9); + max_mid_mcs_sdm = QDB(12); /* MCS 7-11 (SDM) */ + max_high_mcs = QDB(14); + + for (i = 0; i < WL_NUM_RATES_MCS_1STREAM; i++) { + /* MCS 0-4 are in the low set + * MCS 5-7 are in the mid set + */ + if (i <= 4) + txpwr->u40.n.cdd[i] = (uint8)max_low_mcs; + else + txpwr->u40.n.cdd[i] = (uint8)max_mid_mcs; + } + + for (i = 0; i < WL_NUM_RATES_MCS_1STREAM; i++) { + /* MCS 8-11 (i: 0-3) are in the mid set + * MCS 12-15 (i: 4-7) are in the high set + */ + if (i <= 3) + txpwr->u40.n.sdm[i] = (uint8)max_mid_mcs_sdm; + else + txpwr->u40.n.sdm[i] = (uint8)max_high_mcs; + } + } + } + + /* Per MCS fixup for CLM 4.8.2 */ + if ((li_mimo == &locale_29bn_3) && (chan >= 36 && chan <= 48)) { + for (i = 0; i < WL_NUM_RATES_MCS_1STREAM; i++) { + txpwr->u20.n.cdd[i] = QDB(10); + txpwr->u40.n.cdd[i] = QDB(12); + } + } + + + /* Fixup 40Mhz per-mcs limits */ + if (li_mimo == &locale_an8_t2) { + uint max_low_mcs, max_mid_mcs, max_high_mcs, max_mid_mcs_sdm; + + /* Fixup per-MCS */ + max_low_mcs = 0; + max_mid_mcs = 0; + max_high_mcs = 0; + max_mid_mcs_sdm = 0; + + if (chan == 3) { + max_low_mcs = QDB(13); + max_mid_mcs = QDB(14); + max_high_mcs = 58; /* 14.5 dBm */ + } else if (chan >= 4 && chan <= 8) { + max_low_mcs = QDB(14); + max_mid_mcs = QDB(15); + max_high_mcs = 62; /* 15.5 dBm */ + } else if (chan == 9) { + max_low_mcs = QDB(13); + max_mid_mcs = QDB(14); + max_high_mcs = 58; /* 14.5 dBm */ + } + + for (i = 0; i < WL_NUM_RATES_MCS_1STREAM; i++) { + /* MCS 0-4 are in the low set + * MCS 5-7 are in the mid set + */ + if (i <= 4) + txpwr->u40.n.cdd[i] = (uint8)max_low_mcs; + else + txpwr->u40.n.cdd[i] = (uint8)max_mid_mcs; + } + + for (i = 0; i < WL_NUM_RATES_MCS_1STREAM; i++) { + /* MCS 8-11 (i: 0-3) are in the mid set + * MCS 12-15 (i: 4-7) are in the high set + */ + if (i <= 3) + txpwr->u40.n.sdm[i] = (uint8)max_mid_mcs; + else + txpwr->u40.n.sdm[i] = (uint8)max_high_mcs; + } + } + + if (li_mimo == &locale_11ln_2) { + maxpwr20 = 0; + maxpwr40 = 0; + + /* Fixup SISO */ + if (chan >= 36 && chan <= 48) { + maxpwr20 = QDB(14); + maxpwr40 = QDB(13); + } else if (chan >= 52 && chan <= 64) { + maxpwr20 = 58; /* 14.5 dBm */ + maxpwr40 = QDB(13); + } else if (chan >= 100 && chan <= 140) { + maxpwr20 = QDB(15); + maxpwr40 = QDB(16); + } else if (chan >= 149 && chan <= 165) { + maxpwr20 = 70; /* 17.5 dBm */ + maxpwr40 = QDB(18); + } + for (i = 0; i < WL_NUM_RATES_MCS_1STREAM; i++) { + txpwr->u20.n.siso[i] = (uint8)maxpwr20; + txpwr->u40.n.siso[i] = (uint8)maxpwr40; + } + } + + if (li_mimo == &locale_19n_1 || + li_mimo == &locale_19n_2 || + li_mimo == &locale_3jn_4 || + li_mimo == &locale_3rn_3 || + li_mimo == &locale_5ln_2 || + li_mimo == &locale_6an_1 || + li_mimo == &locale_7cn_1 || + li_mimo == &locale_8an_1 || + li_mimo == &locale_13n_2 || + li_mimo == &locale_25hn || + li_mimo == &locale_29dn_2 || + li_mimo == &locale_3en || + li_mimo == &locale_bn7 || + li_mimo == &locale_2n) { + /* Fixup SISO */ + + if (li_mimo == &locale_19n_1) { + maxpwr20 = 0; + maxpwr40 = 0; + + if (chan >= 36 && chan <= 44) { + maxpwr20 = QDB(14); + maxpwr40 = QDB(14); + } else if (chan >= 46 && chan <= 48) { + maxpwr20 = QDB(17); + maxpwr40 = QDB(16); + } else if (chan >= 52 && chan <= 60) { + maxpwr20 = QDB(14); + maxpwr40 = QDB(16); + } else if (chan >= 62 && chan <= 64) { + maxpwr20 = QDB(13); + maxpwr40 = QDB(14); + } else if (chan >= 100 && chan <= 108) { + maxpwr20 = QDB(17); + maxpwr40 = QDB(14); + } else if (chan >= 110 && chan <= 140) { + maxpwr20 = 50; /* 12.5 dBm */ + maxpwr40 = QDB(16); + } else if (chan >= 149 && chan <= 165) { + maxpwr20 = QDB(17); + maxpwr40 = QDB(16); + } + } else if (li_mimo == &locale_19n_2) { + if (chan >= 36 && chan <= 48) { + maxpwr20 = QDB(14); + maxpwr40 = QDB(13); + } else if (chan >= 52 && chan <= 140) { + maxpwr20 = QDB(16); + maxpwr40 = QDB(16); + } else if (chan >= 149 && chan <= 165) { + maxpwr20 = QDB(18); + maxpwr40 = QDB(18); + } + } else if (li_mimo == &locale_3jn_4) { + maxpwr20 = 0; + maxpwr40 = 0; + + if (chan >= 36 && chan <= 48) { + maxpwr20 = QDB(15); + maxpwr40 = QDB(13); + } else if (chan >= 52 && chan <= 64) { + maxpwr20 = QDB(10); + maxpwr40 = QDB(10); + } else if (chan >= 100 && chan <= 140) { + maxpwr20 = QDB(16); + maxpwr40 = QDB(16); + } + } else if (li_mimo == &locale_3rn_3) { + maxpwr20 = 0; + maxpwr40 = 0; + + if ((chan >= 36 && chan <= 64) || + (chan >= 100 && chan <= 116) || + (chan >= 132 && chan <= 140)) { + maxpwr20 = QDB(16); + maxpwr40 = QDB(16); + } + } else if (li_mimo == &locale_2n) { + maxpwr20 = QDB(16); + maxpwr40 = QDB(16); + } else if (li_mimo == &locale_5ln_2) { + maxpwr20 = 0; + maxpwr40 = 0; + + if (chan >= 36 && chan <= 64) { + maxpwr20 = QDB(15); + maxpwr40 = QDB(16); + } else if (chan >= 149 && chan <= 165) { + maxpwr20 = QDB(16); + maxpwr40 = QDB(16); + } + } else if (li_mimo == &locale_6an_1) { + maxpwr20 = 0; + maxpwr40 = 0; + + if (chan >= 36 && chan <= 38) { + maxpwr20 = QDB(15); + maxpwr40 = QDB(14); + } else if ((chan >= 40 && chan <= 48) || + (chan >= 52 && chan <= 64)) { + maxpwr20 = QDB(15); + maxpwr40 = QDB(17); + } else if (chan >= 149 && chan <= 165) { + maxpwr20 = QDB(17); + maxpwr40 = QDB(17); + } + } else if (li_mimo == &locale_7cn_1) { + maxpwr20 = 0; + maxpwr40 = 0; + + if (chan >= 149 && chan <= 165) { + maxpwr20 = QDB(16); + maxpwr40 = QDB(16); + } + } else if (li_mimo == &locale_8an_1) { + maxpwr20 = 0; + maxpwr40 = 0; + + if (chan >= 56 && chan <= 64) { + maxpwr20 = QDB(15); + maxpwr40 = QDB(17); + } else if (chan >= 100 && chan <= 102) { + maxpwr20 = QDB(17); + maxpwr40 = QDB(16); + } else if ((chan >= 104 && chan <= 140) || + (chan >= 149 && chan <= 165)) { + maxpwr20 = QDB(17); + maxpwr40 = QDB(17); + } + } else if (li_mimo == &locale_13n_2) { + maxpwr20 = 0; + maxpwr40 = 0; + + if (chan >= 36 && chan <= 64) { + maxpwr20 = QDB(16); + maxpwr40 = QDB(16); + } + } else if (li_mimo == &locale_25hn) { + maxpwr20 = 0; + maxpwr40 = 0; + + if (chan >= 36 && chan <= 48) { + maxpwr20 = QDB(15); + maxpwr40 = QDB(16); + } else if (chan >= 52 && chan <= 64) { + maxpwr20 = QDB(16); + maxpwr40 = QDB(16); + } else if ((chan >= 100 && chan <= 124) || + (chan >= 149 && chan <= 161)) { + maxpwr20 = QDB(16); + maxpwr40 = QDB(16); + } + } else if (li_mimo == &locale_29dn_2) { + maxpwr20 = 0; + maxpwr40 = 0; + + if (chan >= 36 && chan <= 38) { + maxpwr20 = QDB(15); + maxpwr40 = QDB(14); + } else if (chan >= 40 && chan <= 48) { + maxpwr20 = QDB(15); + maxpwr40 = QDB(17); + } else if (chan >= 100 && chan <= 108) { + maxpwr20 = QDB(17); + maxpwr40 = QDB(16); + } else if ((chan >= 52 && chan <= 64) || + (chan >= 110 && chan <= 116) || + (chan >= 132 && chan <= 140) || + (chan >= 149 && chan <= 165)) { + maxpwr20 = QDB(17); + maxpwr40 = QDB(17); + } + } else if (li_mimo == &locale_3en) { + if (chan >= 36 && chan <= 140) { + maxpwr20 = QDB(21); + maxpwr40 = QDB(20); + } + } + + if (li_mimo == &locale_bn7) { + maxpwr20 = QDB(19); + maxpwr40 = 0; + if (chan >= 3 && chan <= 11) { + maxpwr40 = QDB(16); + } + } + + for (i = 0; i < WL_NUM_RATES_MCS_1STREAM; i++) { + txpwr->u20.n.siso[i] = (uint8)maxpwr20; + txpwr->u40.n.siso[i] = (uint8)maxpwr40; + } + } + + if (li_mimo == &locale_19n_3) { + maxpwr20 = 0; + maxpwr40 = 0; + + /* Fixup SISO */ + if (chan >= 36 && chan <= 38) { + maxpwr20 = QDB(13); + maxpwr40 = QDB(11); + } else if (chan >= 40 && chan <= 48) { + maxpwr20 = 62; /* 15.5 dBm */ + maxpwr40 = 58; /* 14.5 dBm */ + } else if (chan >= 52 && chan <= 60) { + maxpwr20 = 62; /* 15.5 dBm */ + maxpwr40 = 58; /* 14.5 dBm */ + } else if (chan >= 62 && chan <= 64) { + maxpwr20 = QDB(13); + maxpwr40 = 46; /* 11.5 dBm */ + } else if (chan >= 100 && chan <= 102) { + maxpwr20 = 62; /* 15.5 dBm */ + maxpwr40 = 58; /* 14.5 dBm */ + } else if (chan >= 104 && chan <= 140) { + maxpwr20 = 58; /* 14.5 dBm */ + maxpwr40 = 54; /* 13.5 dBm */ + } else if (chan >= 149 && chan <= 165) { + maxpwr20 = 58; /* 14.5 dBm */ + maxpwr40 = 54; /* 13.5 dBm */ + } + for (i = 0; i < WL_NUM_RATES_MCS_1STREAM; i++) { + txpwr->u20.n.siso[i] = (uint8)maxpwr20; + txpwr->u40.n.siso[i] = (uint8)maxpwr40; + } + } + + + if (li_mimo == &locale_19bn || + li_mimo == &locale_19hn || + li_mimo == &locale_19ln || + li_mimo == &locale_19rn || + li_mimo == &locale_19ln_1 || + li_mimo == &locale_19ln_2 || + li_mimo == &locale_19ln_4) { + /* Fixup SISO */ + maxpwr20 = 0; + maxpwr40 = 0; + + if (chan >= 36 && chan <= 44) { + maxpwr20 = QDB(14); + maxpwr40 = QDB(13); + if (li_mimo == &locale_19ln_1) + maxpwr40 = 58; /* 14.5 dBm */ + + if (li_mimo == &locale_19ln_2) + maxpwr20 = QDB(13); + + if (li_mimo == &locale_19ln_4) { + maxpwr20 = QDB(13); + maxpwr40 = QDB(16); + } + + } else if (chan >= 46 && chan <= 48) { + if ((li_mimo == &locale_19ln_2) || (li_mimo == &locale_19ln_4)) { + maxpwr20 = QDB(13); + maxpwr40 = QDB(16); + } else { + maxpwr20 = QDB(14); + maxpwr40 = 66; /* 16.5 dBm */ + } + } else if (chan >= 52 && chan <= 60) { + maxpwr20 = 70; /* 17.5 dBm */ + maxpwr40 = QDB(17); + } else if (chan >= 62 && chan <= 64) { + if ((li_mimo == &locale_19ln_2) || (li_mimo == &locale_19ln_4)) { + maxpwr20 = 58; /* 14.5 dBm */ + maxpwr40 = QDB(11); + } else { + maxpwr20 = 58; /* 14.5 dBm */ + maxpwr40 = QDB(13); + } + } else if (chan >= 100 && chan <= 108) { + if (li_mimo == &locale_19ln_2) + maxpwr20 = 58; /* 14.5 dBm */ + else + maxpwr20 = QDB(17); + maxpwr40 = 62; /* 15.5 dBm */ + if (li_mimo == &locale_19ln_4) { + maxpwr20 = 58; /* 14.5 dBm */ + maxpwr40 = 54; /* 13.5 dBm */ + } + } else if (chan >= 110 && chan <= 140) { + maxpwr20 = QDB(17); + maxpwr40 = QDB(18); + if (chan >= 134 && chan <= 136) { + if (li_mimo == &locale_19ln_1) + maxpwr40 = QDB(17); + else if ((li_mimo == &locale_19ln_2) || (li_mimo == &locale_19ln_4)) + maxpwr40 = QDB(15); + } + if (chan == 140 && + (li_mimo == &locale_19ln_2 || (li_mimo == &locale_19ln_1) || + (li_mimo == &locale_19ln_4))) { + maxpwr20 = QDB(15); + maxpwr40 = 0; + } + } else if (chan >= 149 && chan <= 165) { + maxpwr20 = 70; /* 17.5 dBm */ + maxpwr40 = 74; /* 18.5 dBm */ + } + + for (i = 0; i < WL_NUM_RATES_MCS_1STREAM; i++) { + txpwr->u20.n.siso[i] = (uint8)maxpwr20; + txpwr->u40.n.siso[i] = (uint8)maxpwr40; + } + } + + if (li_mimo == &locale_19hn_1) { + /* Fixup SISO */ + maxpwr20 = 0; + maxpwr40 = 0; + + if (chan >= 36 && chan <= 48) { + maxpwr20 = QDB(14); + maxpwr40 = 62 /* 15.5 */; + } else if (chan >= 52 && chan <= 60) { + maxpwr20 = 70 /* 17.5 */; + maxpwr40 = 70; + } else if (chan >= 62 && chan <= 64) { + maxpwr20 = 62; + maxpwr40 = 62; + } else if (chan >= 100 && chan <= 102) { + maxpwr20 = 66 /* 16.5 */; + maxpwr40 = 62; + } else if (chan >= 104 && chan <= 132) { + maxpwr20 = 66 /* 16.5 */; + maxpwr40 = 66; + } else if (chan >= 134 && chan <= 136) { + maxpwr20 = 66 /* 16.5 */; + maxpwr40 = 70; + } else if (chan == 140) { + maxpwr20 = 58 /* 14.5 */; + } else if (chan >= 149 && chan <= 165) { + maxpwr20 = 74 /* 18.5 */; + maxpwr40 = 70; + } + + for (i = 0; i < WL_NUM_RATES_MCS_1STREAM; i++) { + txpwr->u20.n.siso[i] = (uint8)maxpwr20; + txpwr->u40.n.siso[i] = (uint8)maxpwr40; + } + } + /* CLM 4.2.3 fixup chan 100-140 CDD power */ + if ((li_mimo == &locale_19ln_4) || (li_mimo == &locale_11ln_4)) { + if (chan >= 100 && chan <= 108) { + maxpwr20 = QDB(13); + maxpwr40 = QDB(12); + } else if (chan >= 110 && chan <= 132) { + maxpwr20 = 58; /* 14.5 dBm */ + maxpwr40 = QDB(17); + } else if (chan >= 134 && chan <= 136) { + maxpwr20 = 58; /* 14.5 dBm */ + maxpwr40 = 62; /* 15.5 dBm */ + } else if (chan == 140) { + maxpwr20 = QDB(17); + maxpwr40 = QDB(18); + } + if ((chan >= 100) && (chan <= 140)) { + for (i = 0; i < WL_NUM_RATES_MCS_1STREAM; i++) { + txpwr->u20.n.cdd[i] = (uint8)maxpwr20; + txpwr->u40.n.cdd[i] = (uint8)maxpwr40; + } + } + } + + if (li_mimo == &locale_29n || li_mimo == &locale_29an) { + /* Fixup SISO */ + maxpwr20 = 0; + maxpwr40 = 0; + + if (chan >= 36 && chan <= 48) { + maxpwr20 = QDB(14); + maxpwr40 = QDB(14); + } else if ((chan >= 52 && chan <= 64) || + (chan >= 100 && chan <= 140) || + (chan >= 149 && chan <= 165)) { + maxpwr20 = QDB(16); + maxpwr40 = QDB(16); + } + + for (i = 0; i < WL_NUM_RATES_MCS_1STREAM; i++) { + txpwr->u20.n.siso[i] = (uint8)maxpwr20; + txpwr->u40.n.siso[i] = (uint8)maxpwr40; + } + } + + /* Copy the 40 MHz MCS0-7 CDD value to the 40 MHz OFDM CDD value if it wasn't + * provided explicitly. When doing so, the constellation and coding rates of + * the corresponding Legacy OFDM and MCS rates should be matched in the same way + * as done in wlc_phy_mcs_to_ofdm_powers_nphy(). Specifically, the power of 9 Mbps + * Legacy OFDM is set to the power of MCS-0 (same as 6 Mbps power) since no equivalent + * of 9 Mbps exists in the 11n standard in terms of constellation and coding rate. + */ + for (i = 0, j = 0; i < WL_NUM_RATES_OFDM; i++, j++) { + if (txpwr->ofdm_40_cdd[i] == 0) + txpwr->ofdm_40_cdd[i] = txpwr->u40.n.cdd[j]; + if (i == 0) { + i = i + 1; + if (txpwr->ofdm_40_cdd[i] == 0) + txpwr->ofdm_40_cdd[i] = txpwr->u40.n.cdd[j]; + } + } + + /* Copy the 40 MHZ MCS 0-7 CDD value to the 40 MHZ MCS 0-7 SISO value if it wasn't + * provided explicitly. Note the CDD value might be zero if 40 MHZ operations are + * not allowed. + */ + + for (i = 0; i < WL_NUM_RATES_MCS_1STREAM; i++) { + if (txpwr->u40.n.siso[i] == 0) + txpwr->u40.n.siso[i] = txpwr->u40.n.cdd[i]; + } + + /* Copy the 40 MHz MCS0-7 SISO value to the 40 MHz OFDM SISO value if it wasn't + * provided explicitly. When doing so, the constellation and coding rates of + * the corresponding Legacy OFDM and MCS rates should be matched in the same way + * as done in wlc_phy_mcs_to_ofdm_powers_nphy(). Specifically, the power of 9 Mbps + * Legacy OFDM is set to the power of MCS-0 (same as 6 Mbps power) since no equivalent + * of 9 Mbps exists in the 11n standard in terms of constellation and coding rate. + */ + for (i = 0, j = 0; i < WL_NUM_RATES_OFDM; i++, j++) { + if (txpwr->ofdm_40[i] == 0) + txpwr->ofdm_40[i] = txpwr->u40.n.siso[j]; + if (i == 0) { + i = i + 1; + if (txpwr->ofdm_40[i] == 0) + txpwr->ofdm_40[i] = txpwr->u40.n.siso[j]; + } + } + + /* Copy the 20 and 40 MHz MCS0-7 CDD values to the corresponding STBC values if they weren't + * provided explicitly. + */ + for (i = 0; i < WL_NUM_RATES_MCS_1STREAM; i++) { + if (txpwr->u20.n.stbc[i] == 0) + txpwr->u20.n.stbc[i] = txpwr->u20.n.cdd[i]; + + if (txpwr->u40.n.stbc[i] == 0) + txpwr->u40.n.stbc[i] = txpwr->u40.n.cdd[i]; + } + +#if HTCONF + if (WLCISHTPHY(wlc->band)) { + n2x2_t u20pl, u40pl, u20npl, u40npl; + + li_mimo = NULL; + if (IS_CCODE_REV(wlc_cm, "Q2", 4)) { + li_mimo = BAND_5G(band->bandtype) ? + wlc_get_mimo_5g(LOCALE_MIMO_IDX_27en_3n) : + wlc_get_mimo_2g(LOCALE_MIMO_IDX_an6_4_3n); + } else if (IS_CCODE_REV(wlc_cm, "EU", 9)) { + li_mimo = BAND_5G(band->bandtype) ? + wlc_get_mimo_5g(LOCALE_MIMO_IDX_18n_1_3n) : + wlc_get_mimo_2g(LOCALE_MIMO_IDX_bn_10_3n); + } else if (IS_CCODE_REV(wlc_cm, "US", 61) || + (IS_CCODE_REV(wlc_cm, "US", 53))) { + li_mimo = BAND_5G(band->bandtype) ? + wlc_get_mimo_5g(LOCALE_MIMO_IDX_19_3n) : + wlc_get_mimo_2g(LOCALE_MIMO_IDX_a_3n); + } else if (IS_CCODE_REV(wlc_cm, "US", 72)) { + li_mimo = BAND_5G(band->bandtype) ? + wlc_get_mimo_5g(LOCALE_MIMO_IDX_19_3n) : + wlc_get_mimo_2g(LOCALE_MIMO_IDX_an6_4_3n); + } else if (IS_CCODE_REV(wlc_cm, "US", 73)) { + li_mimo = BAND_5G(band->bandtype) ? + wlc_get_mimo_5g(LOCALE_MIMO_IDX_29_3n) : + wlc_get_mimo_2g(LOCALE_MIMO_IDX_a1_3n); + } else if (IS_CCODE_REV(wlc_cm, "GB", 6)) { + li_mimo = BAND_5G(band->bandtype) ? + wlc_get_mimo_5g(LOCALE_MIMO_IDX_3_3n) : + wlc_get_mimo_2g(LOCALE_MIMO_IDX_b2_3n); + } + + + /* Copy the 20 in 40MHz CCK, OFDM, MCS0-7 values to the + * corresponding values if they weren't provided explicitly. + */ + for (i = 0; i < WL_NUM_RATES_CCK; i++) { + if (li_mimo == &locale_a_3n) { + /* Using CCK CDD 1x3 power limits for 1x2 as well + * As they are not defined in CLM. + */ + if ((chan == 1) || (chan == 11)) { + txpwr->cck_cdd.s1x2[i] = QDB(16); + txpwr->cck_cdd.s1x3[i] = QDB(16); + txpwr->cck_20ul_cdd.s1x2[i] = QDB(16); + txpwr->cck_20ul_cdd.s1x3[i] = QDB(16); + } else if ((chan >= 2) && (chan <= 10)) { + txpwr->cck_cdd.s1x2[i] = QDB(18); + txpwr->cck_cdd.s1x3[i] = QDB(18); + txpwr->cck_20ul_cdd.s1x2[i] = QDB(18); + txpwr->cck_20ul_cdd.s1x3[i] = QDB(18); + } + } + + if (li_mimo == &locale_a1_3n) { + /* Using CCK CDD 1x3 power limits for 1x2 as well + * As they are not defined in CLM. + */ + if (chan == 1) { + txpwr->cck_cdd.s1x2[i] = QDB(22); + txpwr->cck_cdd.s1x3[i] = QDB(21); + txpwr->cck_20ul_cdd.s1x2[i] = QDB(22); + txpwr->cck_20ul_cdd.s1x3[i] = QDB(21); + } else if ((chan >= 2) && (chan <= 10)) { + txpwr->cck_cdd.s1x2[i] = 94; /* 23.5 dBm */ + txpwr->cck_cdd.s1x3[i] = QDB(18); + txpwr->cck_20ul_cdd.s1x2[i] = 94; /* 23.5 dBm */ + txpwr->cck_20ul_cdd.s1x3[i] = QDB(18); + } else if (chan == 11) { + txpwr->cck_cdd.s1x2[i] = QDB(22); /* 21.5 dBm */ + txpwr->cck_cdd.s1x3[i] = 86; + txpwr->cck_20ul_cdd.s1x2[i] = QDB(22); + txpwr->cck_20ul_cdd.s1x3[i] = 86; + } + } + + if (li_mimo == &locale_an6_7) { + /* Using CCK CDD 1x2 power limits for 1x3 as well + * As they are not defined in CLM. + */ + if (chan == 1) { + txpwr->cck_cdd.s1x2[i] = QDB(22); + txpwr->cck_cdd.s1x3[i] = QDB(21); + txpwr->cck_20ul_cdd.s1x2[i] = QDB(22); + txpwr->cck_20ul_cdd.s1x3[i] = QDB(21); + } else if ((chan >= 2) && (chan <= 10)) { + txpwr->cck_cdd.s1x2[i] = 94; /* 23.5 dBm */ + txpwr->cck_cdd.s1x3[i] = QDB(22); + txpwr->cck_20ul_cdd.s1x2[i] = 94; + txpwr->cck_20ul_cdd.s1x3[i] = QDB(22); + } else if (chan == 11) { + txpwr->cck_cdd.s1x2[i] = QDB(22); + txpwr->cck_cdd.s1x3[i] = 86; /* 21.5 dBm */ + txpwr->cck_20ul_cdd.s1x2[i] = QDB(22); + txpwr->cck_20ul_cdd.s1x3[i] = 86; + } + } + + if (txpwr->cck_20ul[i] == 0) + txpwr->cck_20ul[i] = txpwr->cck[i]; + if (txpwr->cck_cdd.s1x2[i] == 0) + txpwr->cck_cdd.s1x2[i] = txpwr->cck[i]; + if (txpwr->cck_cdd.s1x3[i] == 0) + txpwr->cck_cdd.s1x3[i] = txpwr->cck[i]; + if (txpwr->cck_20ul_cdd.s1x2[i] == 0) + txpwr->cck_20ul_cdd.s1x2[i] = txpwr->cck_20ul[i]; + if (txpwr->cck_20ul_cdd.s1x3[i] == 0) + txpwr->cck_20ul_cdd.s1x3[i] = txpwr->cck_20ul[i]; + + } + + for (i = 0; i < WL_NUM_RATES_OFDM; i++) { + if (txpwr->ofdm_20ul[i] == 0) + txpwr->ofdm_20ul[i] = txpwr->ofdm[i]; + if (txpwr->ofdm_20ul_cdd[i] == 0) + txpwr->ofdm_20ul_cdd[i] = txpwr->ofdm_cdd[i]; + } + + + if (li_mimo) { + maxpwr20 = li_mimo->maxpwr20[maxpwr_idx]; + maxpwr40 = li_mimo->maxpwr40[maxpwr_idx]; + + if (li_mimo == &locale_19_3n) { + if ((chan >= 100) && (chan <= 108)) { + maxpwr20 = QDB(13); + maxpwr40 = QDB(12); + } else if ((chan >= 134) && (chan <= 136)) { + maxpwr20 = 58; /* 14.5dbm */ + maxpwr40 = 62; /* 15.5dbm */ + } else if (chan == 140) { + maxpwr20 = 54; /* 13.5dbm */ + maxpwr40 = QDB(18); + } + } + + if (li_mimo == &locale_29_3n) { + if ((chan >= 100) && (chan <= 102)) { + maxpwr20 = QDB(15); + maxpwr40 = 42; /* 10.5 dBm */ + } else if ((chan >= 104) && (chan <= 140)) { + maxpwr20 = 62; /* 15.5dbm */ + maxpwr40 = QDB(18); + } else if ((chan >= 161) && (chan <= 165)) { + maxpwr40 = 0; + } + } + } + + for (i = 0; i < WL_NUM_RATES_MCS_1STREAM; i++) { + if (li_mimo) { + u20pl.sdm[i] = (uint8)maxpwr20; + u20pl.cdd[i] = (uint8)maxpwr20; + u40pl.sdm[i] = (uint8)maxpwr40; + u40pl.cdd[i] = (uint8)maxpwr40; + } else { + u20pl.sdm[i] = txpwr->u20.n.sdm[i]; + u20pl.cdd[i] = txpwr->u20.n.cdd[i]; + u40pl.sdm[i] = txpwr->u40.n.sdm[i]; + u40pl.cdd[i] = txpwr->u40.n.cdd[i]; + } + } + + /* txpwr->u20/40 declared is union of n/ht powerlimits, + * so save the powerlimits for n, for using them later to fill ht. + */ + bcopy(&txpwr->u20, &u20npl, sizeof(n2x2_t)); + bcopy(&txpwr->u40, &u40npl, sizeof(n2x2_t)); + + for (i = 0; i < WL_NUM_RATES_MCS_1STREAM; i++) { + txpwr->u20.ht.s2x2[i] = u20npl.sdm[i]; + txpwr->u20.ht.s3x3[i] = u20pl.sdm[i]; + txpwr->ht.u20s1x3[i] = u20pl.cdd[i]; + txpwr->ht.u20s2x3[i] = u20pl.sdm[i]; + + txpwr->u40.ht.s2x2[i] = u40npl.sdm[i]; + txpwr->u40.ht.s3x3[i] = u40pl.sdm[i]; + txpwr->ht.u40s1x3[i] = u40pl.cdd[i]; + txpwr->ht.u40s2x3[i] = u40pl.sdm[i]; + + txpwr->ht20ul.s1x1[i] = u20npl.siso[i]; + txpwr->ht20ul.s1x2[i] = u20npl.cdd[i]; + txpwr->ht20ul.s2x2[i] = u20npl.sdm[i]; + txpwr->ht20ul.s3x3[i] = u20pl.sdm[i]; + txpwr->ht.ul20s1x3[i] = u20pl.cdd[i]; + txpwr->ht.ul20s2x3[i] = u20pl.sdm[i]; +#ifdef NOT_YET + txpwr->stbc.s2x2[i] = txpwr->u20.ht.s2x2[i]; + txpwr->stbc.s2x3[i] = txpwr->ht.u20s2x3[i]; + txpwr->stbc.u40_s2x2[i] = txpwr->u40.ht.s2x2[i]; + txpwr->stbc.u40_s2x3[i] = txpwr->ht.u40s2x3[i]; + txpwr->stbc.ul20_s2x2[i] = txpwr->ht20ul.s2x2[i]; + txpwr->stbc.ul20_s2x3[i] = txpwr->ht.ul20s2x3[i]; +#endif + if (li_mimo == &locale_19_3n) { + if ((chan >= 36) && (chan <= 48)) { + /* MCS 0-7 has seperate CDD limits defined, + * set them here + */ + txpwr->ht.u20s1x3[i] = 14; /* 3.5 dbm */ + txpwr->ht.u40s1x3[i] = QDB(7); + txpwr->ht.ul20s1x3[i] = 14; /* 3.5 dbm */ + + /* MCS 0-7 has seperate STBC limits defined, + * set them here + */ +#ifdef NOT_YET + txpwr->stbc.s2x3[i] = QDB(7); + txpwr->stbc.u40_s2x3[i] = QDB(9); + txpwr->stbc.ul20_s2x3[i] = QDB(7); +#endif + + if (i <= 3) { + txpwr->ht.u20s2x3[i] = QDB(8); + txpwr->ht.u40s2x3[i] = QDB(10); + } else { + txpwr->ht.u20s2x3[i] = QDB(9); + txpwr->ht.u40s2x3[i] = QDB(12); + } + if (i <= 2) { + txpwr->u20.ht.s3x3[i] = QDB(8); + txpwr->u40.ht.s3x3[i] = QDB(10); + } else if (i <= 5) { + txpwr->u20.ht.s3x3[i] = QDB(9); + txpwr->u40.ht.s3x3[i] = QDB(12); + } else { + txpwr->u20.ht.s3x3[i] = QDB(10); + txpwr->u40.ht.s3x3[i] = QDB(13); + } + } + } + + if (li_mimo == &locale_29_3n) { + if ((chan >= 36) && (chan <= 48)) { + /* MCS 0-7 has seperate CDD limits defined, + * set them here + */ + txpwr->ht.ul20s1x3[i] = 0; + txpwr->ht.u20s1x3[i] = 0; /* disabled */ + txpwr->ht.u40s1x3[i] = 0; + + + /* MCS 0-7 has seperate STBC limits defined, + * set them here + */ +#ifdef NOT_YET + txpwr->stbc.s2x3[i] = QDB(10); + txpwr->stbc.u40_s2x3[i] = QDB(13); + txpwr->stbc.ul20_s2x3[i] = QDB(10); +#endif + + /* SDM (MCS8-15) */ + txpwr->ht.u20s2x3[i] = 41; /* 10.25 dBm */ + txpwr->ht.u40s2x3[i] = QDB(13); + txpwr->ht.ul20s2x3[i] = 41; + + } + if ((chan >= 52) && (chan <= 60)) { + /* MCS 0-7 has seperate CDD limits defined, + * set them here + */ + txpwr->ht.ul20s1x3[i] = 46 /* 11.5 */; + txpwr->ht.u40s1x3[i] = 54; /* 13.5 */ + txpwr->ht.u20s1x3[i] = 46; + + /* MCS 0-7 has seperate STBC limits defined, + * set them here + */ +#ifdef NOT_YET + txpwr->stbc.s2x3[i] = 62; /* 15.5 */ + txpwr->stbc.u40_s2x3[i] = QDB(18); + txpwr->stbc.ul20_s2x3[i] = 62; +#endif + } + + if ((chan >= 62) && (chan <= 64)) { + /* MCS 0-7 has seperate CDD limits defined, + * set them here + */ + txpwr->ht.ul20s1x3[i] = 46 /* 11.5 */; + txpwr->ht.u40s1x3[i] = 46; + txpwr->ht.u20s1x3[i] = 46; + + /* MCS 0-7 has seperate STBC limits defined, + * set them here + */ +#ifdef NOT_YET + txpwr->stbc.s2x3[i] = QDB(15); + txpwr->stbc.u40_s2x3[i] = 50; /* 12.5 dBm */ + txpwr->stbc.ul20_s2x3[i] = QDB(15); +#endif + } + + if ((chan >= 100) && (chan <= 102)) { + /* MCS 0-7 has seperate CDD limits defined, + * set them here + */ + txpwr->ht.ul20s1x3[i] = 54 /* 13.5 */; + txpwr->ht.u40s1x3[i] = 38; /* 9.5 */ + txpwr->ht.u20s1x3[i] = 54; + + /* MCS 0-7 has seperate STBC limits defined, + * set them here + */ +#ifdef NOT_YET + txpwr->stbc.s2x3[i] = QDB(15); + txpwr->stbc.u40_s2x3[i] = 42; /* 10.5 dBm */ + txpwr->stbc.ul20_s2x3[i] = QDB(15); +#endif + } + + if ((chan >= 104) && (chan <= 140)) { + /* MCS 0-7 has seperate CDD limits defined, + * set them here + */ + txpwr->ht.ul20s1x3[i] = 54 /* 13.5 */; + txpwr->ht.u40s1x3[i] = 53; /* 13.25 */ + txpwr->ht.u20s1x3[i] = 54; + + /* MCS 0-7 has seperate STBC limits defined, + * set them here + */ +#ifdef NOT_YET + txpwr->stbc.s2x3[i] = 62; /* 15.5 dBm */ + txpwr->stbc.u40_s2x3[i] = QDB(18); + txpwr->stbc.ul20_s2x3[i] = 62; +#endif + } + + } + } + } +#endif /* HTCONF */ +#endif /* WL11N */ + + WL_NONE(("Channel(chanspec) %d (0x%4.4x)\n", CHSPEC_CHANNEL(chanspec), chanspec)); +#ifdef WLC_LOW + /* Convoluted WL debug conditional execution of function to avoid warnings. */ + WL_NONE(("%s", (wlc_phy_txpower_limits_dump(txpwr, WLCISHTPHY(wlc->band)), ""))); +#endif /* WLC_LOW */ + + return; +} + +/* Returns TRUE if currently set country is Japan or variant */ +bool +wlc_japan(struct wlc_info *wlc) +{ + return wlc_japan_ccode(wlc->cmi->country_abbrev); +} + +/* JP, J1 - J10 are Japan ccodes */ +static bool +wlc_japan_ccode(const char *ccode) +{ + return (ccode[0] == 'J' && + (ccode[1] == 'P' || (ccode[1] >= '1' && ccode[1] <= '9'))); +} + +/* Q2 is an alternate USA ccode */ +static bool +wlc_us_ccode(const char *ccode) +{ + return (!strncmp("US", ccode, 3) || !strncmp("Q2", ccode, 3)); +} + +void +wlc_rcinfo_init(wlc_cm_info_t *wlc_cm) +{ + if (wlc_us_ccode(wlc_cm->country_abbrev)) { +#ifdef BAND5G + wlc_cm->rcinfo_list[WLC_RCLIST_20] = &rcinfo_us_20; +#endif +#ifdef WL11N + if (N_ENAB(wlc_cm->wlc->pub)) { + wlc_cm->rcinfo_list[WLC_RCLIST_40L] = &rcinfo_us_40lower; + wlc_cm->rcinfo_list[WLC_RCLIST_40U] = &rcinfo_us_40upper; + } +#endif + } else if (wlc_japan_ccode(wlc_cm->country_abbrev)) { +#ifdef BAND5G + wlc_cm->rcinfo_list[WLC_RCLIST_20] = &rcinfo_jp_20; +#endif +#ifdef WL11N + if (N_ENAB(wlc_cm->wlc->pub)) { + wlc_cm->rcinfo_list[WLC_RCLIST_40L] = &rcinfo_jp_40; + wlc_cm->rcinfo_list[WLC_RCLIST_40U] = &rcinfo_jp_40; + } +#endif + } else { +#ifdef BAND5G + wlc_cm->rcinfo_list[WLC_RCLIST_20] = &rcinfo_eu_20; +#endif +#ifdef WL11N + if (N_ENAB(wlc_cm->wlc->pub)) { + wlc_cm->rcinfo_list[WLC_RCLIST_40L] = &rcinfo_eu_40lower; + wlc_cm->rcinfo_list[WLC_RCLIST_40U] = &rcinfo_eu_40upper; + } +#endif + } +} + +static void +wlc_regclass_vec_init(wlc_cm_info_t *wlc_cm) +{ + uint8 i, idx; + chanspec_t chanspec; +#ifdef WL11N + wlc_info_t *wlc = wlc_cm->wlc; + bool saved_cap_40, saved_db_cap_40 = TRUE; +#endif + rcvec_t *rcvec = &wlc_cm->valid_rcvec; + +#ifdef WL11N + /* save 40 MHz cap */ + saved_cap_40 = wlc->band->mimo_cap_40; + wlc->band->mimo_cap_40 = TRUE; + if (NBANDS(wlc) > 1) { + saved_db_cap_40 = wlc->bandstate[OTHERBANDUNIT(wlc)]->mimo_cap_40; + wlc->bandstate[OTHERBANDUNIT(wlc)]->mimo_cap_40 = TRUE; + } +#endif + + bzero(rcvec, MAXRCVEC); + for (i = 0; i < MAXCHANNEL; i++) { + chanspec = CH20MHZ_CHSPEC(i); + if (wlc_valid_chanspec_db(wlc_cm, chanspec)) { + if ((idx = wlc_get_regclass(wlc_cm, chanspec))) + setbit(rcvec, idx); + } +#if defined(WL11N) && !defined(WL11N_20MHZONLY) + if (N_ENAB(wlc->pub)) { + chanspec = CH40MHZ_CHSPEC(i, WL_CHANSPEC_CTL_SB_LOWER); + if (wlc_valid_chanspec_db(wlc_cm, chanspec)) { + if ((idx = wlc_get_regclass(wlc_cm, chanspec))) + setbit(rcvec, idx); + } + chanspec = CH40MHZ_CHSPEC(i, WL_CHANSPEC_CTL_SB_UPPER); + if (wlc_valid_chanspec_db(wlc_cm, chanspec)) { + if ((idx = wlc_get_regclass(wlc_cm, chanspec))) + setbit(rcvec, idx); + } + } +#endif /* defined(WL11N) && !defined(WL11N_20MHZONLY) */ + } +#ifdef WL11N + /* restore 40 MHz cap */ + wlc->band->mimo_cap_40 = saved_cap_40; + if (NBANDS(wlc) > 1) + wlc->bandstate[OTHERBANDUNIT(wlc)]->mimo_cap_40 = saved_db_cap_40; +#endif +} + +#ifdef WL11N +uint8 +wlc_rclass_extch_get(wlc_cm_info_t *wlc_cm, uint8 rclass) +{ + const rcinfo_t *rcinfo; + uint8 i, extch = DOT11_EXT_CH_NONE; + + if (!isset(wlc_cm->valid_rcvec.vec, rclass)) { + WL_ERROR(("wl%d: %s %d regulatory class not supported\n", + wlc_cm->wlc->pub->unit, wlc_cm->country_abbrev, rclass)); + return extch; + } + + /* rcinfo consist of control channel at lower sb */ + rcinfo = wlc_cm->rcinfo_list[WLC_RCLIST_40L]; + for (i = 0; rcinfo && i < rcinfo->len; i++) { + if (rclass == rcinfo->rctbl[i].rclass) { + /* ext channel is opposite of control channel */ + extch = DOT11_EXT_CH_UPPER; + goto exit; + } + } + + /* rcinfo consist of control channel at upper sb */ + rcinfo = wlc_cm->rcinfo_list[WLC_RCLIST_40U]; + for (i = 0; rcinfo && i < rcinfo->len; i++) { + if (rclass == rcinfo->rctbl[i].rclass) { + /* ext channel is opposite of control channel */ + extch = DOT11_EXT_CH_LOWER; + break; + } + } +exit: + WL_INFORM(("wl%d: %s regulatory class %d has ctl chan %s\n", + wlc_cm->wlc->pub->unit, wlc_cm->country_abbrev, rclass, + ((!extch) ? "NONE" : (((extch == DOT11_EXT_CH_LOWER) ? "LOWER" : "UPPER"))))); + + return extch; +} + +/* get the ordered list of supported reg class, with current reg class + * as first element + */ +uint8 +wlc_get_regclass_list(wlc_cm_info_t *wlc_cm, uint8 *rclist, uint lsize, + chanspec_t chspec, bool ie_order) +{ + uint8 i, cur_rc = 0, idx = 0; + + ASSERT(rclist != NULL); + ASSERT(lsize > 1); + + if (ie_order) { + cur_rc = wlc_get_regclass(wlc_cm, chspec); + if (!cur_rc) { + WL_ERROR(("wl%d: current regulatory class is not found\n", + wlc_cm->wlc->pub->unit)); + return 0; + } + rclist[idx++] = cur_rc; /* first element is current reg class */ + } + + for (i = 0; i < MAXREGCLASS && idx < lsize; i++) { + if (i != cur_rc && isset(wlc_cm->valid_rcvec.vec, i)) + rclist[idx++] = i; + } + + if (i < MAXREGCLASS && idx == lsize) { + WL_ERROR(("wl%d: regulatory class list full %d\n", wlc_cm->wlc->pub->unit, idx)); + ASSERT(0); + } + + return idx; +} +#endif /* WL11N */ + +static uint8 +wlc_get_2g_regclass(wlc_cm_info_t *wlc_cm, uint8 chan) +{ + if (wlc_us_ccode(wlc_cm->country_abbrev)) + return WLC_REGCLASS_USA_2G_20MHZ; + else if (wlc_japan_ccode(wlc_cm->country_abbrev)) { + if (chan < 14) + return WLC_REGCLASS_JPN_2G_20MHZ; + else + return WLC_REGCLASS_JPN_2G_20MHZ_CH14; + } else + return WLC_REGCLASS_EUR_2G_20MHZ; +} + +uint8 +wlc_get_regclass(wlc_cm_info_t *wlc_cm, chanspec_t chanspec) +{ + const rcinfo_t *rcinfo = NULL; + uint8 i; + uint8 chan; + +#ifdef WL11N + if (CHSPEC_IS40(chanspec)) { + chan = wf_chspec_ctlchan(chanspec); + if (CHSPEC_SB_UPPER(chanspec)) + rcinfo = wlc_cm->rcinfo_list[WLC_RCLIST_40U]; + else + rcinfo = wlc_cm->rcinfo_list[WLC_RCLIST_40L]; + } else +#endif /* WL11N */ + { + chan = CHSPEC_CHANNEL(chanspec); + if (CHSPEC_IS2G(chanspec)) + return (wlc_get_2g_regclass(wlc_cm, chan)); + rcinfo = wlc_cm->rcinfo_list[WLC_RCLIST_20]; + } + + for (i = 0; rcinfo != NULL && i < rcinfo->len; i++) { + if (chan == rcinfo->rctbl[i].chan) + return (rcinfo->rctbl[i].rclass); + } + + WL_INFORM(("wl%d: No regulatory class assigned for %s channel %d\n", + wlc_cm->wlc->pub->unit, wlc_cm->country_abbrev, chan)); + + return 0; +} + +#if defined(BCMDBG) || defined(BCMDBG_DUMP) +int +wlc_dump_rclist(const char *name, uint8 *rclist, uint8 rclen, struct bcmstrbuf *b) +{ + uint i; + + if (!rclen) + return 0; + + bcm_bprintf(b, "%s [ ", name ? name : ""); + for (i = 0; i < rclen; i++) { + bcm_bprintf(b, "%d ", rclist[i]); + } + bcm_bprintf(b, "]"); + bcm_bprintf(b, "\n"); + + return 0; +} + +/* format a qdB value as integer and decimal fraction in a bcmstrbuf */ +static void +wlc_channel_dump_qdb(struct bcmstrbuf *b, uint qdb) +{ + const char fraction[4][4] = {" ", ".25", ".5 ", ".75"}; + + bcm_bprintf(b, "%2d%s", + qdb / WLC_TXPWR_DB_FACTOR, + fraction[qdb % WLC_TXPWR_DB_FACTOR]); +} + +/* helper function for wlc_channel_dump_txppr() to print one set of power targets with label */ +static void +wlc_channel_dump_pwr_range(struct bcmstrbuf *b, const char *label, uint8 *ptr, uint count) +{ + uint i; + + bcm_bprintf(b, "%s ", label); + for (i = 0; i < count; i++) { + wlc_channel_dump_qdb(b, ptr[i]); + bcm_bprintf(b, " "); + } + bcm_bprintf(b, "\n"); +} + +/* helper function to print a target range line with the typical 8 targets */ +static void +wlc_channel_dump_pwr_range8(struct bcmstrbuf *b, const char *label, uint8 *ptr) +{ + wlc_channel_dump_pwr_range(b, label, ptr, 8); +} + +/* format the contents of a txppr_t struction for a bcmstrbuf */ +static void +wlc_channel_dump_txppr(struct bcmstrbuf *b, txppr_t *txppr, int is_ht_format) +{ + bcm_bprintf(b, "20MHz:\n"); + wlc_channel_dump_pwr_range(b, "CCK ", txppr->cck, 4); + wlc_channel_dump_pwr_range8(b, "OFDM ", txppr->ofdm); + wlc_channel_dump_pwr_range8(b, "OFDM-CDD ", txppr->ofdm_cdd); + + if (!is_ht_format) { + wlc_channel_dump_pwr_range8(b, "MCS-SISO ", txppr->u20.n.siso); + wlc_channel_dump_pwr_range8(b, "MCS-CDD ", txppr->u20.n.cdd); + wlc_channel_dump_pwr_range8(b, "MCS STBC ", txppr->u20.n.stbc); + wlc_channel_dump_pwr_range8(b, "MCS 8~15 ", txppr->u20.n.sdm); + } else { + wlc_channel_dump_pwr_range8(b, "1 Nsts 1 Tx ", txppr->u20.ht.s1x1); + wlc_channel_dump_pwr_range8(b, "1 Nsts 2 Tx ", txppr->u20.ht.s1x2); + wlc_channel_dump_pwr_range8(b, "1 Nsts 3 Tx ", txppr->ht.u20s1x3); + wlc_channel_dump_pwr_range8(b, "2 Nsts 2 Tx ", txppr->u20.ht.s2x2); + wlc_channel_dump_pwr_range8(b, "2 Nsts 3 Tx ", txppr->ht.u20s2x3); + wlc_channel_dump_pwr_range8(b, "3 Nsts 3 Tx ", txppr->u20.ht.s3x3); + } + + bcm_bprintf(b, "\n40MHz:\n"); + wlc_channel_dump_pwr_range8(b, "OFDM ", txppr->ofdm_40); + wlc_channel_dump_pwr_range8(b, "OFDM-CDD ", txppr->ofdm_40_cdd); + + if (!is_ht_format) { + wlc_channel_dump_pwr_range8(b, "MCS-SISO ", txppr->u40.n.siso); + wlc_channel_dump_pwr_range8(b, "MCS-CDD ", txppr->u40.n.cdd); + wlc_channel_dump_pwr_range8(b, "MCS STBC ", txppr->u40.n.stbc); + wlc_channel_dump_pwr_range8(b, "MCS 8~15 ", txppr->u40.n.sdm); + } else { + wlc_channel_dump_pwr_range8(b, "1 Nsts 1 Tx ", txppr->u40.ht.s1x1); + wlc_channel_dump_pwr_range8(b, "1 Nsts 2 Tx ", txppr->u40.ht.s1x2); + wlc_channel_dump_pwr_range8(b, "1 Nsts 3 Tx ", txppr->ht.u40s1x3); + wlc_channel_dump_pwr_range8(b, "2 Nsts 2 Tx ", txppr->u40.ht.s2x2); + wlc_channel_dump_pwr_range8(b, "2 Nsts 3 Tx ", txppr->ht.u40s2x3); + wlc_channel_dump_pwr_range8(b, "3 Nsts 3 Tx ", txppr->u40.ht.s3x3); + } + + bcm_bprintf(b, "MCS32 %2d\n", txppr->mcs32); + + bcm_bprintf(b, "\n20 in 40MHz:\n"); + wlc_channel_dump_pwr_range(b, "CCK ", txppr->cck_20ul, 4); + wlc_channel_dump_pwr_range8(b, "OFDM ", txppr->ofdm_20ul); + wlc_channel_dump_pwr_range8(b, "OFDM-CDD ", txppr->ofdm_20ul_cdd); + + wlc_channel_dump_pwr_range8(b, "1 Nsts 1 Tx ", txppr->ht20ul.s1x1); + wlc_channel_dump_pwr_range8(b, "1 Nsts 2 Tx ", txppr->ht20ul.s1x2); + wlc_channel_dump_pwr_range8(b, "1 Nsts 3 Tx ", txppr->ht.ul20s1x3); + wlc_channel_dump_pwr_range8(b, "2 Nsts 2 Tx ", txppr->ht20ul.s2x2); + wlc_channel_dump_pwr_range8(b, "2 Nsts 3 Tx ", txppr->ht.ul20s2x3); + wlc_channel_dump_pwr_range8(b, "3 Nsts 3 Tx ", txppr->ht20ul.s3x3); + + bcm_bprintf(b, "\n"); +} +#endif /* BCMDBG || BCMDBG_DUMP */ + +/* + * if (wlc->country_list_extended) all country listable. + * else J1 - J10 is excluded. + */ +static bool +wlc_country_listable(struct wlc_info *wlc, const char *countrystr) +{ + bool listable = TRUE; + + if (wlc->country_list_extended == FALSE) { + if (countrystr[0] == 'J' && + (countrystr[1] >= '1' && countrystr[1] <= '9')) + listable = FALSE; + } + + return listable; +} + +static bool +wlc_buffalo_map_locale(struct wlc_info *wlc, const char* abbrev) +{ + if ((wlc->pub->sih->boardvendor == VENDOR_BUFFALO) && + D11REV_GT(wlc->pub->corerev, 5) && !strcmp("JP", abbrev)) + return TRUE; + else + return FALSE; +} + +int +wlc_get_channels_in_country(struct wlc_info *wlc, void *arg) +{ + chanvec_t channels; + wl_channels_in_country_t *cic = (wl_channels_in_country_t *)arg; + chanvec_t sup_chan; + uint count, need, i; + + if ((cic->band != WLC_BAND_5G) && (cic->band != WLC_BAND_2G)) { + WL_ERROR(("Invalid band %d\n", cic->band)); + return BCME_BADBAND; + } + + if ((NBANDS(wlc) == 1) && (cic->band != (uint)wlc->band->bandtype)) { + WL_ERROR(("Invalid band %d for card\n", cic->band)); + return BCME_BADBAND; + } + + if (wlc_channel_get_chanvec(wlc, cic->country_abbrev, cic->band, &channels) == FALSE) { + WL_ERROR(("Invalid country %s\n", cic->country_abbrev)); + return BCME_NOTFOUND; + } + + wlc_phy_chanspec_band_validch(wlc->band->pi, cic->band, &sup_chan); + for (i = 0; i < sizeof(chanvec_t); i++) + sup_chan.vec[i] &= channels.vec[i]; + + /* find all valid channels */ + for (count = 0, i = 0; i < sizeof(sup_chan.vec)*NBBY; i++) { + if (isset(sup_chan.vec, i)) + count++; + } + + need = sizeof(wl_channels_in_country_t) + count*sizeof(cic->channel[0]); + + if (need > cic->buflen) { + /* too short, need this much */ + WL_ERROR(("WLC_GET_COUNTRY_LIST: Buffer size: Need %d Received %d\n", + need, cic->buflen)); + cic->buflen = need; + return BCME_BUFTOOSHORT; + } + + for (count = 0, i = 0; i < sizeof(sup_chan.vec)*NBBY; i++) { + if (isset(sup_chan.vec, i)) + cic->channel[count++] = i; + } + + cic->count = count; + return 0; +} + +int +wlc_get_country_list(struct wlc_info *wlc, void *arg) +{ + chanvec_t channels; + wl_country_list_t *cl = (wl_country_list_t *)arg; + const locale_info_t *locale = NULL; + chanvec_t sup_chan; + uint count, need, i, j; + uint cntry_locales_size = ARRAYSIZE(cntry_locales); + + if (cl->band_set == FALSE) { + /* get for current band */ + cl->band = wlc->band->bandtype; + } + + if ((cl->band != WLC_BAND_5G) && (cl->band != WLC_BAND_2G)) { + WL_ERROR(("Invalid band %d\n", cl->band)); + return BCME_BADBAND; + } + + if ((NBANDS(wlc) == 1) && (cl->band != (uint)wlc->band->bandtype)) { + WL_INFORM(("Invalid band %d for card\n", cl->band)); + cl->count = 0; + return 0; + } + + wlc_phy_chanspec_band_validch(wlc->band->pi, cl->band, &sup_chan); + + for (count = 0, i = 0; i < cntry_locales_size; i++) { + locale = (cl->band == WLC_BAND_5G) ? + wlc_get_locale_5g(cntry_locales[i].country.locale_5G) : + wlc_get_locale_2g(cntry_locales[i].country.locale_2G); + + wlc_locale_get_channels(locale, &channels); + + for (j = 0; j < sizeof(sup_chan.vec); j++) { + if (sup_chan.vec[j] & channels.vec[j]) { + count++; + break; + } + } + } + + need = sizeof(wl_country_list_t) + count*WLC_CNTRY_BUF_SZ; + + if (need > cl->buflen) { + /* too short, need this much */ + WL_ERROR(("WLC_GET_COUNTRY_LIST: Buffer size: Need %d Received %d\n", + need, cl->buflen)); + cl->buflen = need; + return BCME_BUFTOOSHORT; + } + + for (count = 0, i = 0; i < cntry_locales_size; i++) { + locale = (cl->band == WLC_BAND_5G) ? + wlc_get_locale_5g(cntry_locales[i].country.locale_5G) : + wlc_get_locale_2g(cntry_locales[i].country.locale_2G); + + wlc_locale_get_channels(locale, &channels); + + for (j = 0; j < sizeof(sup_chan.vec); j++) { + if (sup_chan.vec[j] & channels.vec[j]) { + if ((wlc_country_listable(wlc, cntry_locales[i].abbrev) == + TRUE)) { + strncpy(&cl->country_abbrev[count*WLC_CNTRY_BUF_SZ], + cntry_locales[i].abbrev, WLC_CNTRY_BUF_SZ); + count++; + } + break; + } + } + } + + cl->count = count; + return 0; +} + +/* Get regulatory max power for a given channel in a given locale. + * for external FALSE, it returns limit for brcm hw + * ---- for 2.4GHz channel, it returns cck limit, not ofdm limit. + * for external TRUE, it returns 802.11d Country Information Element - + * Maximum Transmit Power Level. + */ +int8 +wlc_get_reg_max_power_for_channel(wlc_cm_info_t *wlc_cm, int chan, bool external) +{ + int8 maxpwr; + int indx; + const locale_info_t *li; + + if (chan <= CH_MAX_2G_CHANNEL) { + indx = CHANNEL_POWER_IDX_2G_CCK(chan); /* 2.4 GHz cck index */ + li = wlc_get_locale_2g(wlc_cm->country->locale_2G); + } else { + indx = CHANNEL_POWER_IDX_5G(chan); /* 5 GHz channel */ + li = wlc_get_locale_5g(wlc_cm->country->locale_5G); + } + + maxpwr = external ? li->pub_maxpwr[indx] : li->maxpwr[indx]; + + return (maxpwr); +} + +/* + * Validate the chanspec for this locale, for 40MHZ we need to also check that the sidebands + * are valid 20MZH channels in this locale and they are also a legal HT combination + */ +static bool +wlc_valid_chanspec_ext(wlc_cm_info_t *wlc_cm, chanspec_t chspec, bool dualband) +{ + wlc_info_t *wlc = wlc_cm->wlc; + uint8 channel = CHSPEC_CHANNEL(chspec); + + /* check the chanspec */ + if (wf_chspec_malformed(chspec)) { + WL_ERROR(("wl%d: malformed chanspec 0x%x\n", wlc->pub->unit, chspec)); + ASSERT(0); + return FALSE; + } + + if (CHANNEL_BANDUNIT(wlc_cm->wlc, channel) != CHSPEC_WLCBANDUNIT(chspec)) + return FALSE; + + /* Check a 20Mhz channel */ + if (CHSPEC_IS20(chspec)) { + if (dualband) + return (VALID_CHANNEL20_DB(wlc_cm->wlc, channel)); + else + return (VALID_CHANNEL20(wlc_cm->wlc, channel)); + } + + /* We know we are now checking a 40MHZ channel, so we should only be here + * for NPHYS + */ + if (WLCISNPHY(wlc->band) || WLCISHTPHY(wlc->band) || + (WLCISSSLPNPHY(wlc->band) && SSLPNREV_GT(wlc->band->phyrev, 2))) { + uint8 upper_sideband = 0, idx; + uint8 num_ch20_entries = sizeof(chan20_info)/sizeof(struct chan20_info); + + if (!VALID_40CHANSPEC_IN_BAND(wlc, CHSPEC_WLCBANDUNIT(chspec))) + return FALSE; + + if (dualband) { + if (!VALID_CHANNEL20_DB(wlc, LOWER_20_SB(channel)) || + !VALID_CHANNEL20_DB(wlc, UPPER_20_SB(channel))) + return FALSE; + } else { + if (!VALID_CHANNEL20(wlc, LOWER_20_SB(channel)) || + !VALID_CHANNEL20(wlc, UPPER_20_SB(channel))) + return FALSE; + } + + /* find the lower sideband info in the sideband array */ + for (idx = 0; idx < num_ch20_entries; idx++) { + if (chan20_info[idx].sb == LOWER_20_SB(channel)) + upper_sideband = chan20_info[idx].adj_sbs; + } + /* check that the lower sideband allows an upper sideband */ + if ((upper_sideband & (CH_UPPER_SB | CH_EWA_VALID)) == (CH_UPPER_SB | CH_EWA_VALID)) + return TRUE; + return FALSE; + } + + return FALSE; +} + +bool +wlc_valid_chanspec(wlc_cm_info_t *wlc_cm, chanspec_t chspec) +{ + return wlc_valid_chanspec_ext(wlc_cm, chspec, FALSE); +} + +bool +wlc_valid_chanspec_db(wlc_cm_info_t *wlc_cm, chanspec_t chspec) +{ + return wlc_valid_chanspec_ext(wlc_cm, chspec, TRUE); +} + +/* + * Fill in 'list' with validated chanspecs, looping through channels using the chanspec_mask. + */ +static void +wlc_chanspec_list(wlc_info_t *wlc, wl_uint32_list_t *list, chanspec_t chanspec_mask) +{ + uint8 channel; + chanspec_t chanspec; + + for (channel = 0; channel < MAXCHANNEL; channel++) { + chanspec = (chanspec_mask | channel); + if (!wf_chspec_malformed(chanspec) && + ((NBANDS(wlc) > 1) ? wlc_valid_chanspec_db(wlc->cmi, chanspec) : + wlc_valid_chanspec(wlc->cmi, chanspec))) { + list->element[list->count] = chanspec; + list->count++; + } + } +} + +/* + * Returns a list of valid chanspecs meeting the provided settings + */ +void +wlc_get_valid_chanspecs(wlc_cm_info_t *wlc_cm, wl_uint32_list_t *list, bool bw20, bool band2G, + const char *abbrev) +{ + wlc_info_t *wlc = wlc_cm->wlc; + chanspec_t chanspec; + const country_info_t* country; + const locale_info_t *locale = NULL; + chanvec_t saved_valid_channels, saved_db_valid_channels; +#ifdef WL11N + uint8 saved_locale_flags = 0, saved_db_locale_flags = 0; + const locale_mimo_info_t *li_mimo = NULL; + bool saved_cap_40 = TRUE, saved_db_cap_40 = TRUE; +#endif /* WL11N */ + + /* Check if this is a valid band for this card */ + if ((NBANDS(wlc) == 1) && + (BAND_5G(wlc->band->bandtype) == band2G)) + return; + + /* see if we need to look up country. Else, current locale */ + if (strcmp(abbrev, "")) { + country = wlc_country_lookup(wlc, abbrev); + + if (country == NULL) { + WL_ERROR(("Invalid country \"%s\"\n", abbrev)); + return; + } + + locale = band2G ? + wlc_get_locale_2g(country->locale_2G) : + wlc_get_locale_5g(country->locale_5G); + +#ifdef WL11N + li_mimo = band2G ? + wlc_get_mimo_2g(country->locale_mimo_2G) : + wlc_get_mimo_5g(country->locale_mimo_5G); +#endif /* WL11N */ + } + + /* Save current locales */ + if (locale != NULL) { + bcopy(&wlc->cmi->bandstate[wlc->band->bandunit].valid_channels, + &saved_valid_channels, sizeof(chanvec_t)); + wlc_locale_get_channels(locale, + &wlc->cmi->bandstate[wlc->band->bandunit].valid_channels); + if (NBANDS(wlc) > 1) { + bcopy(&wlc->cmi->bandstate[OTHERBANDUNIT(wlc)].valid_channels, + &saved_db_valid_channels, sizeof(chanvec_t)); + wlc_locale_get_channels(locale, + &wlc->cmi->bandstate[OTHERBANDUNIT(wlc)].valid_channels); + } + } + +#ifdef WL11N + if (li_mimo != NULL) { + saved_locale_flags = wlc_cm->bandstate[wlc->band->bandunit].locale_flags; + wlc_cm->bandstate[wlc->band->bandunit].locale_flags = li_mimo->flags; + if (NBANDS(wlc) > 1) { + saved_db_locale_flags = wlc_cm->bandstate[OTHERBANDUNIT(wlc)].locale_flags; + wlc_cm->bandstate[OTHERBANDUNIT(wlc)].locale_flags = li_mimo->flags; + } + } + + /* save 40 MHz cap */ + saved_cap_40 = wlc->band->mimo_cap_40; + wlc->band->mimo_cap_40 = TRUE; + if (NBANDS(wlc) > 1) { + saved_db_cap_40 = wlc->bandstate[OTHERBANDUNIT(wlc)]->mimo_cap_40; + wlc->bandstate[OTHERBANDUNIT(wlc)]->mimo_cap_40 = TRUE; + } + +#endif /* WL11N */ + + /* Go through 2G 20MHZ chanspecs */ + if (band2G && bw20) { + chanspec = WL_CHANSPEC_BAND_2G | WL_CHANSPEC_BW_20 | WL_CHANSPEC_CTL_SB_NONE; + wlc_chanspec_list(wlc, list, chanspec); + } + + /* Go through 5G 20 MHZ chanspecs */ + if (!band2G && bw20) { + chanspec = WL_CHANSPEC_BAND_5G | WL_CHANSPEC_BW_20 | WL_CHANSPEC_CTL_SB_NONE; + wlc_chanspec_list(wlc, list, chanspec); + } + + /* Go through 2G 40MHZ chanspecs only if N mode and 40MHZ are both enabled */ + if (band2G && !bw20 && + N_ENAB(wlc->pub) && wlc->bandstate[BAND_2G_INDEX]->mimo_cap_40) { + chanspec = WL_CHANSPEC_BAND_2G | WL_CHANSPEC_BW_40 | WL_CHANSPEC_CTL_SB_UPPER; + wlc_chanspec_list(wlc, list, chanspec); + chanspec = WL_CHANSPEC_BAND_2G | WL_CHANSPEC_BW_40 | WL_CHANSPEC_CTL_SB_LOWER; + wlc_chanspec_list(wlc, list, chanspec); + } + + /* Go through 5G 40MHZ chanspecs only if N mode and 40MHZ are both enabled */ + if (!band2G && !bw20 && + N_ENAB(wlc->pub) && ((NBANDS(wlc) > 1) || IS_SINGLEBAND_5G(wlc->deviceid)) && + wlc->bandstate[BAND_5G_INDEX]->mimo_cap_40) { + chanspec = WL_CHANSPEC_BAND_5G | WL_CHANSPEC_BW_40 | WL_CHANSPEC_CTL_SB_UPPER; + wlc_chanspec_list(wlc, list, chanspec); + chanspec = WL_CHANSPEC_BAND_5G | WL_CHANSPEC_BW_40 | WL_CHANSPEC_CTL_SB_LOWER; + wlc_chanspec_list(wlc, list, chanspec); + } + +#ifdef WL11N + /* restore 40 MHz cap */ + wlc->band->mimo_cap_40 = saved_cap_40; + if (NBANDS(wlc) > 1) + wlc->bandstate[OTHERBANDUNIT(wlc)]->mimo_cap_40 = saved_db_cap_40; + + if (li_mimo != NULL) { + wlc_cm->bandstate[wlc->band->bandunit].locale_flags = saved_locale_flags; + if ((NBANDS(wlc) > 1)) + wlc_cm->bandstate[OTHERBANDUNIT(wlc)].locale_flags = saved_db_locale_flags; + } +#endif /* WL11N */ + + /* Restore the locales if switched */ + if (locale != NULL) { + bcopy(&saved_valid_channels, + &wlc->cmi->bandstate[wlc->band->bandunit].valid_channels, + sizeof(chanvec_t)); + if ((NBANDS(wlc) > 1)) + bcopy(&saved_db_valid_channels, + &wlc->cmi->bandstate[OTHERBANDUNIT(wlc)].valid_channels, + sizeof(chanvec_t)); + } +} + +/* query the channel list given a country and a regulatory class */ +uint8 +wlc_rclass_get_channel_list(wlc_cm_info_t *cmi, char *abbrev, uint8 rclass, + bool bw20, wl_uint32_list_t *list) +{ + const rcinfo_t *rcinfo = NULL; + uint8 ch2g_start = 0, ch2g_end = 0; + int i; + + if (wlc_us_ccode(abbrev)) { + if (rclass == WLC_REGCLASS_USA_2G_20MHZ) { + ch2g_start = 1; + ch2g_end = 11; + } +#ifdef BAND5G + else + rcinfo = &rcinfo_us_20; +#endif + } else if (wlc_japan_ccode(abbrev)) { + if (rclass == WLC_REGCLASS_JPN_2G_20MHZ) { + ch2g_start = 1; + ch2g_end = 13; + } + else if (rclass == WLC_REGCLASS_JPN_2G_20MHZ_CH14) { + ch2g_start = 14; + ch2g_end = 14; + } +#ifdef BAND5G + else + rcinfo = &rcinfo_jp_20; +#endif + } else { + if (rclass == WLC_REGCLASS_EUR_2G_20MHZ) { + ch2g_start = 1; + ch2g_end = 11; + } +#ifdef BAND5G + else + rcinfo = &rcinfo_eu_20; +#endif + } + + list->count = 0; + if (rcinfo == NULL) { + for (i = ch2g_start; i <= ch2g_end; i ++) + list->element[list->count ++] = i; + } + else { + for (i = 0; i < rcinfo->len; i ++) { + if (rclass == rcinfo->rctbl[i].rclass) + list->element[list->count ++] = rcinfo->rctbl[i].chan; + } + } + + return (uint8)list->count; +} + +/* Return true if the channel is a valid channel that is radar sensitive + * in the current country/locale + */ +bool +wlc_radar_chanspec(wlc_cm_info_t *wlc_cm, chanspec_t chspec) +{ +#ifdef BAND5G /* RADAR */ + uint channel = CHSPEC_CHANNEL(chspec); + const chanvec_t *radar_channels; + + /* The radar_channels chanvec may be a superset of valid channels, + * so be sure to check for a valid channel first. + */ + + if (!chspec || !wlc_valid_chanspec_db(wlc_cm, chspec)) { + return FALSE; + } + + if (CHSPEC_IS5G(chspec)) { + radar_channels = wlc_cm->bandstate[BAND_5G_INDEX].radar_channels; + + if (CHSPEC_IS40(chspec)) { + if (isset(radar_channels->vec, LOWER_20_SB(channel)) || + isset(radar_channels->vec, UPPER_20_SB(channel))) + return TRUE; + } else if (isset(radar_channels->vec, channel)) { + return TRUE; + } + } +#endif /* BAND5G */ + return FALSE; +} + +/* Return true if the channel is a valid channel that is radar sensitive + * in the current country/locale + */ +bool +wlc_restricted_chanspec(wlc_cm_info_t *wlc_cm, chanspec_t chspec) +{ + uint channel = CHSPEC_CHANNEL(chspec); + chanvec_t *restricted_channels; + + /* The restriced_channels chanvec may be a superset of valid channels, + * so be sure to check for a valid channel first. + */ + + if (!chspec || !wlc_valid_chanspec_db(wlc_cm, chspec)) { + return FALSE; + } + + restricted_channels = &wlc_cm->restricted_channels; + + if (CHSPEC_IS40(chspec)) { + if (isset(restricted_channels->vec, LOWER_20_SB(channel)) || + isset(restricted_channels->vec, UPPER_20_SB(channel))) + return TRUE; + } else if (isset(restricted_channels->vec, channel)) { + return TRUE; + } + + return FALSE; +} + +void +wlc_clr_restricted_chanspec(wlc_cm_info_t *wlc_cm, chanspec_t chspec) +{ + if (CHSPEC_IS40_UNCOND(chspec)) { + clrbit(wlc_cm->restricted_channels.vec, LOWER_20_SB(CHSPEC_CHANNEL(chspec))); + clrbit(wlc_cm->restricted_channels.vec, UPPER_20_SB(CHSPEC_CHANNEL(chspec))); + } else + clrbit(wlc_cm->restricted_channels.vec, CHSPEC_CHANNEL(chspec)); + + wlc_upd_restricted_chanspec_flag(wlc_cm); +} + +static void +wlc_upd_restricted_chanspec_flag(wlc_cm_info_t *wlc_cm) +{ + uint j; + + for (j = 0; j < (int)sizeof(chanvec_t); j++) + if (wlc_cm->restricted_channels.vec[j]) { + wlc_cm->has_restricted_ch = TRUE; + return; + } + + wlc_cm->has_restricted_ch = FALSE; +} + +bool +wlc_has_restricted_chanspec(wlc_cm_info_t *wlc_cm) +{ + return wlc_cm->has_restricted_ch; +} + +#if defined(BCMDBG) || defined(BCMDBG_DUMP) +#define QDB_FRAC(x) (x) / WLC_TXPWR_DB_FACTOR, fraction[(x) % WLC_TXPWR_DB_FACTOR] +int +wlc_channel_dump_locale(void *handle, struct bcmstrbuf *b) +{ + wlc_info_t *wlc = (wlc_info_t*)handle; + txppr_t txpwr; + char max_cck_str[32]; + int chan, i; + int restricted; + int radar = 0; + int max_cck, max_ofdm; + int max_ht20 = 0, max_ht40 = 0; + char fraction[4][4] = {" ", ".25", ".5", ".75"}; + char flagstr[64]; + const bcm_bit_desc_t fc_flags[] = { + {WLC_EIRP, "EIRP"}, + {WLC_DFS_TPC, "DFS/TPC"}, + {WLC_NO_OFDM, "No OFDM"}, + {WLC_NO_40MHZ, "No 40MHz"}, + {WLC_NO_MIMO, "No MIMO"}, + {WLC_RADAR_TYPE_EU, "EU_RADAR"}, + {0, NULL} + }; + uint8 rclist[MAXRCLISTSIZE], rclen; + chanspec_t chanspec; + int quiet; + + bcm_bprintf(b, "srom_ccode \"%s\" srom_regrev %u\n", + wlc->cmi->srom_ccode, wlc->cmi->srom_regrev); + + if (NBANDS(wlc) > 1) { + bcm_format_flags(fc_flags, wlc->cmi->bandstate[BAND_2G_INDEX].locale_flags, + flagstr, 64); + bcm_bprintf(b, "2G Flags: %s\n", flagstr); + bcm_format_flags(fc_flags, wlc->cmi->bandstate[BAND_5G_INDEX].locale_flags, + flagstr, 64); + bcm_bprintf(b, "5G Flags: %s\n", flagstr); + } else { + bcm_format_flags(fc_flags, wlc->cmi->bandstate[wlc->band->bandunit].locale_flags, + flagstr, 64); + bcm_bprintf(b, "%dG Flags: %s\n", BAND_2G(wlc->band->bandtype)?2:5, flagstr); + } + + if (N_ENAB(wlc->pub)) + bcm_bprintf(b, " Ch Rdr/reS max HT 20/40\n"); + else + bcm_bprintf(b, " Ch Rdr/reS max\n"); + + for (chan = 0; chan < MAXCHANNEL; chan++) { + chanspec = CH20MHZ_CHSPEC(chan); + if (!wlc_valid_chanspec_db(wlc->cmi, chanspec)) { + chanspec = CH40MHZ_CHSPEC(chan, WL_CHANSPEC_CTL_SB_LOWER); + if (!wlc_valid_chanspec_db(wlc->cmi, chanspec)) + continue; + } + + radar = wlc_radar_chanspec(wlc->cmi, chanspec); + restricted = wlc_restricted_chanspec(wlc->cmi, chanspec); + quiet = wlc_quiet_chanspec(wlc->cmi, chanspec); + + wlc_channel_reg_limits(wlc->cmi, chanspec, &txpwr); + + max_cck = txpwr.cck[0]; + max_ofdm = txpwr.ofdm[0]; +#ifdef WL11N + max_ht20 = txpwr.u20.n.cdd[0]; + max_ht40 = txpwr.u40.n.cdd[0]; +#endif /* WL11N */ + + if (CHSPEC_IS2G(chanspec)) + snprintf(max_cck_str, sizeof(max_cck_str), + "%2d%s/", QDB_FRAC(max_cck)); + else + strncpy(max_cck_str, " ", sizeof(max_cck_str)); + + if (N_ENAB(wlc->pub)) + bcm_bprintf(b, "%s%3d %s%s%s %s%2d%s %2d%s/%2d%s\n", + (CHSPEC_IS40(chanspec)?">":" "), chan, + (radar ? "R" : " "), (restricted ? "S" : " "), + (quiet ? "Q" : " "), + max_cck_str, QDB_FRAC(max_ofdm), + QDB_FRAC(max_ht20), QDB_FRAC(max_ht40)); + else + bcm_bprintf(b, "%s%3d %s%s%s %s%2d%s\n", + (CHSPEC_IS40(chanspec)?">":" "), chan, + (radar ? "R" : " "), (restricted ? "S" : " "), + (quiet ? "Q" : " "), + max_cck_str, QDB_FRAC(max_ofdm)); + } + + bzero(rclist, MAXRCLISTSIZE); + chanspec = wlc->pub->associated ? + wlc->home_chanspec : WLC_BAND_PI_RADIO_CHANSPEC; + rclen = wlc_get_regclass_list(wlc->cmi, rclist, MAXRCLISTSIZE, chanspec, FALSE); + if (rclen) { + bcm_bprintf(b, "supported regulatory class:\n"); + for (i = 0; i < rclen; i++) + bcm_bprintf(b, "%d ", rclist[i]); + bcm_bprintf(b, "\n"); + } + + bcm_bprintf(b, "has_restricted_ch %s\n", wlc->cmi->has_restricted_ch ? "TRUE" : "FALSE"); + +#if HTCONF + { + struct wlc_channel_txchain_limits *lim; + + lim = &wlc->cmi->bandstate[BAND_2G_INDEX].chain_limits; + bcm_bprintf(b, "chain limits 2g:"); + for (i = 0; i < WLC_CHAN_NUM_TXCHAIN; i++) + bcm_bprintf(b, " %2d%s", QDB_FRAC(lim->chain_limit[i])); + bcm_bprintf(b, "\n"); + + lim = &wlc->cmi->bandstate[BAND_5G_INDEX].chain_limits; + bcm_bprintf(b, "chain limits 5g:"); + for (i = 0; i < WLC_CHAN_NUM_TXCHAIN; i++) + bcm_bprintf(b, " %2d%s", QDB_FRAC(lim->chain_limit[i])); + bcm_bprintf(b, "\n"); + } +#endif /* HTCONF */ + + return 0; +} + +#endif /* BCMDBG || BCMDBG_DUMP */ + +#ifndef INT8_MIN +#define INT8_MIN 0x80 +#endif +#ifndef INT8_MAX +#define INT8_MAX 0x7F +#endif + +/* Perform an element by element min of txppr structs a and b, and + * store the result in a. + */ +static void +wlc_channel_txpwr_vec_combine_min(txppr_t *a, txppr_t *b) +{ + uint i; + + for (i = 0; i < sizeof(txppr_t); i++) + ((uint8*)a)[i] = MIN(((uint8*)a)[i], ((uint8*)b)[i]); +} + +static void +wlc_channel_margin_summary_mapfn(void *context, uint8 *a, uint8 *b) +{ + uint8 margin; + uint8 *pmin = (uint8*)context; + + if (*a > *b) + margin = *a - *b; + else + margin = 0; + + *pmin = MIN(*pmin, margin); +} + +static void +wlc_channel_max_summary_mapfn(void *context, uint8 *a, uint8 *ignore) +{ + uint8 *pmax = (uint8*)context; + + *pmax = MAX(*pmax, *a); +} + +/* Map the given function with its context value over the two + * uint8 vectors + */ +static void +wlc_channel_map_uint8_vec_binary(wlc_channel_mapfn_t fn, void* context, uint len, + uint8 *vec_a, uint8 *vec_b) +{ + uint i; + + for (i = 0; i < len; i++) + (fn)(context, vec_a + i, vec_b + i); +} + +/* Map the given function with its context value over the power targets + * appropriate for the given band and bandwidth in two txppr structs. + * If the band is 2G, DSSS/CCK rates will be included. + * If the bandwidth is 20MHz, only 20MHz targets are included. + * If the bandwidth is 40MHz, both 40MHz and 20in40 targets are included. + */ +static void +wlc_channel_map_txppr_binary(wlc_channel_mapfn_t fn, void* context, uint bandtype, uint bw, + txppr_t *a, txppr_t *b) +{ + +/* macro for the typical 8 rates in a group (OFDM, MCS0-7, 8-15, 16-23) */ +#define MAP_GROUP(member) \ + wlc_channel_map_uint8_vec_binary(fn, context, 8, a->member, b->member) + + if (bw == WL_CHANSPEC_BW_20) { + if (bandtype == WL_CHANSPEC_BAND_2G) { + wlc_channel_map_uint8_vec_binary(fn, context, WL_NUM_RATES_CCK, + a->cck, b->cck); + } + + MAP_GROUP(ofdm); + } + +#ifdef WL11N + /* map over 20MHz rates for 20MHz channels */ + if (bw == WL_CHANSPEC_BW_20) { + if (bandtype == WL_CHANSPEC_BAND_2G) { + wlc_channel_map_uint8_vec_binary(fn, context, WL_NUM_RATES_CCK, + a->cck_cdd.s1x2, b->cck_cdd.s1x2); + wlc_channel_map_uint8_vec_binary(fn, context, WL_NUM_RATES_CCK, + a->cck_cdd.s1x3, b->cck_cdd.s1x3); + } + + MAP_GROUP(ofdm_cdd); + + MAP_GROUP(u20.ht.s1x1); + MAP_GROUP(u20.ht.s1x2); + MAP_GROUP(ht.u20s1x3); + + MAP_GROUP(u20.ht.s2x2); + MAP_GROUP(ht.u20s2x3); + + MAP_GROUP(u20.ht.s3x3); + + } else + /* map over 40MHz and 20in40 rates for 40MHz channels */ + { + MAP_GROUP(ofdm_40); + MAP_GROUP(ofdm_40_cdd); + + MAP_GROUP(u40.ht.s1x1); + MAP_GROUP(u40.ht.s1x2); + MAP_GROUP(ht.u40s1x3); + + MAP_GROUP(u40.ht.s2x2); + MAP_GROUP(ht.u40s2x3); + + MAP_GROUP(u40.ht.s3x3); + + /* 20in40 legacy */ + if (bandtype == WL_CHANSPEC_BAND_2G) { + wlc_channel_map_uint8_vec_binary(fn, context, WL_NUM_RATES_CCK, + a->cck_20ul, b->cck_20ul); + wlc_channel_map_uint8_vec_binary(fn, context, WL_NUM_RATES_CCK, + a->cck_20ul_cdd.s1x2, + b->cck_20ul_cdd.s1x2); + wlc_channel_map_uint8_vec_binary(fn, context, WL_NUM_RATES_CCK, + a->cck_20ul_cdd.s1x3, + b->cck_20ul_cdd.s1x3); + } + MAP_GROUP(ofdm_20ul); + MAP_GROUP(ofdm_20ul_cdd); + + /* 20in40 HT */ + MAP_GROUP(ht20ul.s1x1); + MAP_GROUP(ht20ul.s1x2); + MAP_GROUP(ht20ul.s2x2); + MAP_GROUP(ht20ul.s3x3); + MAP_GROUP(ht.ul20s1x3); + MAP_GROUP(ht.ul20s2x3); + + /* MCS 32 oddball */ + wlc_channel_map_uint8_vec_binary(fn, context, 1, + &a->mcs32, &b->mcs32); + } +#endif /* WL11N */ +} + +/* calculate the offset from each per-rate power target in txpwr to the supplied + * limit (or zero if txpwr[x] is less than limit[x]), and return the smallest + * offset of relevant rates for bandtype/bw. + */ +static uint8 +wlc_channel_txpwr_margin(txppr_t *txpwr, txppr_t *limit, uint bandtype, uint bw) +{ + uint8 margin = 0xff; + + wlc_channel_map_txppr_binary(wlc_channel_margin_summary_mapfn, &margin, + bandtype, bw, txpwr, limit); + + return margin; +} + +/* calculate the max power target of relevant rates for bandtype/bw */ +static uint8 +wlc_channel_txpwr_max(txppr_t *txpwr, uint bandtype, uint bw) +{ + uint8 pwr_max = 0; + + wlc_channel_map_txppr_binary(wlc_channel_max_summary_mapfn, &pwr_max, + bandtype, bw, txpwr, NULL); + + return pwr_max; +} + +struct txp_range { + int start; + int end; +}; + +static const struct txp_range txp_ranges_2g_20[] = { + {0, 51}, + {153, 168}, + {201, 208}, + {-1, -1} +}; + +static const struct txp_range txp_ranges_2g_40[] = { + {52, 152}, + {169, 200}, + {209, 216}, + {-1, -1} +}; + +static const struct txp_range txp_ranges_5g_20[] = { + {4, 51}, + {153, 168}, + {-1, -1} +}; + +static const struct txp_range txp_ranges_5g_40[] = { + {52, 100}, + {105, 152}, + {169, 200}, + {-1, -1} +}; + +/* return a txppr_t struct with the phy srom limits for the given channel */ +static void +wlc_channel_srom_limits(wlc_cm_info_t *wlc_cm, chanspec_t chanspec, + txppr_t *srommin, txppr_t *srommax) +{ + wlc_info_t *wlc = wlc_cm->wlc; + wlc_phy_t *pi = wlc->band->pi; + const struct txp_range *txp_ranges; + int range_idx, start, end, txp_rate_idx; + uint8 min_srom, max_srom; + uint channel = wf_chspec_ctlchan(chanspec); + + if (srommin != NULL) + memset(srommin, 0, sizeof(txppr_t)); + if (srommax != NULL) + memset(srommax, 0, sizeof(txppr_t)); + + if (!WLCISHTPHY(wlc_cm->wlc->band)) + return; + + if (CHSPEC_IS2G(chanspec)) { + if (CHSPEC_IS20(chanspec)) + txp_ranges = txp_ranges_2g_20; + else + txp_ranges = txp_ranges_2g_40; + } else { + if (CHSPEC_IS20(chanspec)) + txp_ranges = txp_ranges_5g_20; + else + txp_ranges = txp_ranges_5g_40; + } + + for (range_idx = 0; txp_ranges[range_idx].start != -1; range_idx++) { + start = txp_ranges[range_idx].start; + end = txp_ranges[range_idx].end; + + for (txp_rate_idx = start; txp_rate_idx <= end; txp_rate_idx++) { + wlc_phy_txpower_sromlimit(pi, channel, &min_srom, &max_srom, txp_rate_idx); + + if (srommin != NULL) + ((uint8*)srommin)[txp_rate_idx] = min_srom; + if (srommax != NULL) + ((uint8*)srommax)[txp_rate_idx] = max_srom; + } + } +} + +/* Set a per-chain power limit for the given band + * Per-chain offsets will be used to make sure the max target power does not exceed + * the per-chain power limit + */ +int +wlc_channel_band_chain_limit(wlc_cm_info_t *wlc_cm, uint bandtype, + struct wlc_channel_txchain_limits *lim) +{ + wlc_info_t *wlc = wlc_cm->wlc; + txppr_t txpwr; + int bandunit = (bandtype == WLC_BAND_2G) ? BAND_2G_INDEX : BAND_5G_INDEX; + + if (!WLCISHTPHY(wlc_cm->wlc->band)) + return BCME_UNSUPPORTED; + + wlc_cm->bandstate[bandunit].chain_limits = *lim; + + if (CHSPEC_WLCBANDUNIT(wlc->chanspec) != bandunit) + return 0; + + /* update the current tx chain offset if we just updated this band's limits */ + wlc_channel_txpower_limits(wlc_cm, &txpwr); + wlc_channel_update_txchain_offsets(wlc_cm, &txpwr); + + return 0; +} + +/* update the per-chain tx power offset given the current power targets to implement + * the correct per-chain tx power limit + */ +static int +wlc_channel_update_txchain_offsets(wlc_cm_info_t *wlc_cm, txppr_t *txpwr) +{ + wlc_info_t *wlc = wlc_cm->wlc; + struct wlc_channel_txchain_limits *lim; + wl_txchain_pwr_offsets_t offsets; + chanspec_t chanspec; + txppr_t srompwr; + int i, err; + int max_pwr; + int band, bw; + int limits_present = FALSE; + uint8 delta, margin, err_margin; +#ifdef BCMDBG + char chanbuf[CHANSPEC_STR_LEN]; +#endif + + if (!WLCISHTPHY(wlc->band)) + return BCME_UNSUPPORTED; + + chanspec = wlc->chanspec; + band = CHSPEC_BAND(chanspec); + bw = CHSPEC_BW(chanspec); + + /* initialze the offsets to a default of no offset */ + memset(&offsets, 0, sizeof(wl_txchain_pwr_offsets_t)); + + lim = &wlc_cm->bandstate[CHSPEC_WLCBANDUNIT(chanspec)].chain_limits; + + /* see if there are any chain limits specified */ + for (i = 0; i < WLC_CHAN_NUM_TXCHAIN; i++) { + if (lim->chain_limit[i] < WLC_TXPWR_MAX) { + limits_present = TRUE; + break; + } + } + + /* if there are no limits, we do not need to do any calculations */ + if (limits_present) { + + /* find the max power target for this channel and impose + * a txpwr delta per chain to meet the specified chain limits + * Bound the delta by the tx power margin + */ + + /* get the srom min powers */ + wlc_channel_srom_limits(wlc_cm, wlc->chanspec, &srompwr, NULL); + + /* find the dB margin we can use to adjust tx power */ + margin = wlc_channel_txpwr_margin(txpwr, &srompwr, band, bw); + + /* reduce the margin by the error margin 1.5dB backoff */ + err_margin = 6; /* 1.5 dB in qdBm */ + margin = (margin >= err_margin) ? margin - err_margin : 0; + + /* get the srom max powers */ + wlc_channel_srom_limits(wlc_cm, wlc->chanspec, NULL, &srompwr); + + /* combine the srom limits with the given regulatory limits + * to find the actual channel max + */ + wlc_channel_txpwr_vec_combine_min(&srompwr, txpwr); + + max_pwr = (int)wlc_channel_txpwr_max(&srompwr, band, bw); + + WL_NONE(("wl%d: %s: channel %s max_pwr %d margin %d\n", + wlc->pub->unit, __FUNCTION__, + wf_chspec_ntoa(wlc->chanspec, chanbuf), max_pwr, margin)); + + /* for each chain, calculate an offset that keeps the max tx power target + * no greater than the chain limit + */ + for (i = 0; i < WLC_CHAN_NUM_TXCHAIN; i++) { + WL_NONE(("wl%d: %s: chain_limit[%d] %d", + wlc->pub->unit, __FUNCTION__, + i, lim->chain_limit[i])); + if (lim->chain_limit[i] < max_pwr) { + delta = max_pwr - lim->chain_limit[i]; + + WL_NONE((" desired delta -%u lim delta -%u", + delta, MIN(delta, margin))); + + /* limit to the margin allowed for our adjustmets */ + delta = MIN(delta, margin); + + offsets.offset[i] = -delta; + } + WL_NONE(("\n")); + } + } else { + WL_NONE(("wl%d: %s skipping limit calculation since limits are MAX\n", + wlc->pub->unit, __FUNCTION__)); + } + + err = wlc_iovar_op(wlc, "txchain_pwr_offset", NULL, 0, + &offsets, sizeof(wl_txchain_pwr_offsets_t), IOV_SET, NULL); + if (err) { + WL_ERROR(("wl%d: txchain_pwr_offset failed: error %d\n", + wlc->pub->unit, err)); + } + + return err; +} + +#if defined(BCMDBG) || defined(BCMDBG_DUMP) +static int +wlc_channel_dump_reg_ppr(void *handle, struct bcmstrbuf *b) +{ + wlc_cm_info_t *wlc_cm = (wlc_cm_info_t*)handle; + wlc_info_t *wlc = wlc_cm->wlc; + txppr_t txpwr; + char chanbuf[CHANSPEC_STR_LEN]; + + wlc_channel_reg_limits(wlc_cm, wlc->chanspec, &txpwr); + + bcm_bprintf(b, "Regulatory Limits for channel %s\n", + wf_chspec_ntoa(wlc->chanspec, chanbuf)); + wlc_channel_dump_txppr(b, &txpwr, WLCISHTPHY(wlc->band)); + + return 0; +} + +/* dump of regulatory power with local constraint factored in for the current channel */ +static int +wlc_channel_dump_reg_local_ppr(void *handle, struct bcmstrbuf *b) +{ + wlc_cm_info_t *wlc_cm = (wlc_cm_info_t*)handle; + wlc_info_t *wlc = wlc_cm->wlc; + txppr_t txpwr; + char chanbuf[CHANSPEC_STR_LEN]; + + wlc_channel_txpower_limits(wlc_cm, &txpwr); + + bcm_bprintf(b, "Regulatory Limits with constraint for channel %s\n", + wf_chspec_ntoa(wlc->chanspec, chanbuf)); + wlc_channel_dump_txppr(b, &txpwr, WLCISHTPHY(wlc->band)); + + return 0; +} + +/* dump of srom per-rate max/min values for the current channel */ +static int +wlc_channel_dump_srom_ppr(void *handle, struct bcmstrbuf *b) +{ + wlc_cm_info_t *wlc_cm = (wlc_cm_info_t*)handle; + wlc_info_t *wlc = wlc_cm->wlc; + txppr_t srompwr; + char chanbuf[CHANSPEC_STR_LEN]; + + wlc_channel_srom_limits(wlc_cm, wlc->chanspec, NULL, &srompwr); + + bcm_bprintf(b, "PHY/SROM Max Limits for channel %s\n", + wf_chspec_ntoa(wlc->chanspec, chanbuf)); + wlc_channel_dump_txppr(b, &srompwr, WLCISHTPHY(wlc->band)); + + wlc_channel_srom_limits(wlc_cm, wlc->chanspec, &srompwr, NULL); + + bcm_bprintf(b, "PHY/SROM Min Limits for channel %s\n", + wf_chspec_ntoa(wlc->chanspec, chanbuf)); + wlc_channel_dump_txppr(b, &srompwr, WLCISHTPHY(wlc->band)); + + return 0; +} + +static void +wlc_channel_margin_calc_mapfn(void *ignore, uint8 *a, uint8 *b) +{ + if (*a > *b) + *a = *a - *b; + else + *a = 0; +} + +/* dumps dB margin between a rate an the lowest allowable power target, and + * summarize the min of the margins for the current channel + */ +static int +wlc_channel_dump_margin(void *handle, struct bcmstrbuf *b) +{ + wlc_cm_info_t *wlc_cm = (wlc_cm_info_t*)handle; + wlc_info_t *wlc = wlc_cm->wlc; + txppr_t txpwr, srommin; + chanspec_t chanspec; + int band, bw; + uint8 margin; + char chanbuf[CHANSPEC_STR_LEN]; + + chanspec = wlc->chanspec; + band = CHSPEC_BAND(chanspec); + bw = CHSPEC_BW(chanspec); + + memset(&txpwr, 0, sizeof(txppr_t)); + memset(&srommin, 0, sizeof(txppr_t)); + + wlc_channel_txpower_limits(wlc_cm, &txpwr); + + /* get the srom min powers */ + wlc_channel_srom_limits(wlc_cm, wlc->chanspec, &srommin, NULL); + + /* find the dB margin we can use to adjust tx power */ + margin = wlc_channel_txpwr_margin(&txpwr, &srommin, band, bw); + + /* calulate the per-rate margins */ + wlc_channel_map_txppr_binary(wlc_channel_margin_calc_mapfn, NULL, + band, bw, &txpwr, &srommin); + + bcm_bprintf(b, "Power margin for channel %s, min = %u\n", + wf_chspec_ntoa(wlc->chanspec, chanbuf), margin); + wlc_channel_dump_txppr(b, &txpwr, WLCISHTPHY(wlc->band)); + + return 0; +} +#endif /* BCMDBG || BCMDBG_DUMP */ diff --git a/release/src-rt/wlconf/wlconf.c b/release/src-rt/wlconf/wlconf.c old mode 100644 new mode 100755 index 2bd928600c..df727526ab --- a/release/src-rt/wlconf/wlconf.c +++ b/release/src-rt/wlconf/wlconf.c @@ -582,7 +582,7 @@ wlconf_set_wme(char *name, char *prefix) return; } -#if defined(linux) +#if defined(linux) || defined(__NetBSD__) #include static void sleep_ms(const unsigned int ms) @@ -1030,7 +1030,7 @@ wlconf_del_wet_tunnel_vndr_ie(char *name, int bsscfg_idx, uchar *oui) break; } } - bufaddr = ieinfo->vndr_ie_data.oui + ieinfo->vndr_ie_data.len; + bufaddr = (char *)ieinfo->vndr_ie_data.oui + ieinfo->vndr_ie_data.len; } if (!found) @@ -1121,7 +1121,7 @@ wlconf(char *name) char tmp[100], prefix[PREFIX_LEN]; char var[80], *next, *str, *addr = NULL; /* Pay attention to buffer length requirements when using this */ - char buf[WLC_IOCTL_MAXLEN]; + char buf[WLC_IOCTL_SMLEN*2] __attribute__ ((aligned(4))); char *country; wlc_rev_info_t rev; channel_info_t ci; @@ -1249,10 +1249,11 @@ wlconf(char *name) if (bcmerr == BCME_RANGE) break; } - if (ret) + if (ret) { WLCONF_DBG("%d:(%s): setting bsscfg #%d iovar \"bss\" to 0" " (down) failed, ret = %d, bcmerr = %d\n", __LINE__, name, i, ret, bcmerr); + } } /* Get the list of BSS Configs */ @@ -1275,7 +1276,7 @@ wlconf(char *name) /* create a wlX.Y_ifname nvram setting */ for (i = 1; i < bclist->count; i++) { bsscfg = &bclist->bsscfgs[i]; -#if defined(linux) || defined(__ECOS) +#if defined(linux) || defined(__ECOS) || defined(__NetBSD__) strcpy(var, bsscfg->ifname); #endif nvram_set(strcat_r(bsscfg->prefix, "ifname", tmp), var); @@ -1390,7 +1391,7 @@ wlconf(char *name) WL_IOCTL(name, WLC_SET_INFRA, &val, sizeof(val)); /* Set The AP MAX Associations Limit */ - if (ap | apsta) { + if (ap || apsta) { max_assoc = val = atoi(nvram_safe_get(strcat_r(prefix, "maxassoc", tmp))); if (val > 0) { WL_IOVAR_SETINT(name, "maxassoc", val); @@ -1398,6 +1399,8 @@ wlconf(char *name) WL_IOVAR_GETINT(name, "maxassoc", &max_assoc); } } + if (!wet && !sta) + WL_IOVAR_SETINT(name, "mpc", OFF); for (i = 0; i < bclist->count; i++) { char *subprefix; @@ -1431,7 +1434,8 @@ wlconf(char *name) brcm_prop_ie_t wet_tunnel_ie; wet_tunnel_ie.type = WET_TUNNEL_IE_TYPE; wet_tunnel_ie.cap = htons(1); - wlconf_set_wet_tunnel_vndr_ie(name, bsscfg->idx, BRCM_PROP_OUI, + wlconf_set_wet_tunnel_vndr_ie(name, + bsscfg->idx, (uchar *)BRCM_PROP_OUI, (uchar *)&(wet_tunnel_ie.type), sizeof(wet_tunnel_ie.type)+sizeof(wet_tunnel_ie.cap)); WL_IOVAR_SETINT(name, "ap_tunneling", 1); @@ -1588,7 +1592,8 @@ wlconf(char *name) if ((rev.chipnum == BCM4716_CHIP_ID) || (rev.chipnum == BCM47162_CHIP_ID) || (rev.chipnum == BCM4748_CHIP_ID) || (rev.chipnum == BCM4331_CHIP_ID) || - (rev.chipnum == BCM43431_CHIP_ID)) { + (rev.chipnum == BCM43431_CHIP_ID) || (rev.chipnum == BCM5357_CHIP_ID) || + (rev.chipnum == BCM53572_CHIP_ID) || (rev.chipnum == BCM43236_CHIP_ID)) { int pam_mode = WLC_N_PREAMBLE_GF_BRCM; /* default GF-BRCM */ strcat_r(prefix, "mimo_preamble", tmp); @@ -1601,6 +1606,18 @@ wlconf(char *name) WL_IOVAR_SETINT(name, "mimo_preamble", pam_mode); } + if ((rev.chipnum == BCM5357_CHIP_ID) || (rev.chipnum == BCM53572_CHIP_ID)) { + val = atoi(nvram_safe_get("coma_sleep")); + if (val > 0) { + struct {int sleep; int delay;} setbuf; + nvram_unset("coma_sleep"); + nvram_commit(); + setbuf.sleep = val; + setbuf.delay = 1; + WL_IOVAR_SET(name, "coma", &setbuf, sizeof(setbuf)); + } + } + /* Get current phy type */ WL_IOCTL(name, WLC_GET_PHYTYPE, &phytype, sizeof(phytype)); printf("%s: PHYTYPE: %d\n", __FUNCTION__, phytype); @@ -1785,9 +1802,8 @@ wlconf(char *name) int control = WLC_PROTECTION_CTL_OFF; /* Set n protection override and control algorithm */ - strcat_r(prefix, "nmode_protection", tmp); - - if (nvram_match(tmp, "auto")) { + str = nvram_get(strcat_r(prefix, "nmode_protection", tmp)); + if (!str || !strcmp(str, "auto")) { override = WLC_PROTECTION_AUTO; control = WLC_PROTECTION_CTL_OVERLAP; } diff --git a/release/src-rt/wnrtool/ambitCfg.h b/release/src-rt/wnrtool/ambitCfg.h new file mode 100755 index 0000000000..5836682eec --- /dev/null +++ b/release/src-rt/wnrtool/ambitCfg.h @@ -0,0 +1,129 @@ + +#ifndef _AMBITCFG_H +#define _AMBITCFG_H + +#define WW_VERSION 1 /* WW SKUs */ +#define NA_VERSION 2 /* NA SKUs */ +#define JP_VERSION 3 +#define GR_VERSION 4 +#define PR_VERSION 5 +#define KO_VERSION 6 +#define RU_VERSION 7 +#define SS_VERSION 8 +#define PT_VERSION 9 +#define TWC_VERSION 10 +#define BRIC_VERSION 11 +#define SK_VERSION 12 + + +#define WLAN_REGION WW_VERSION +#define FW_REGION WW_VERSION /* true f/w region */ + +/*formal version control*/ +#define AMBIT_HARDWARE_VERSION "U12H17200" +#define AMBIT_SOFTWARE_VERSION "V1.0.0.10" +#define AMBIT_UI_VERSION "30.0.43" +#define STRING_TBL_VERSION "1.0.0.10_2.1.17.1" + +#define AMBIT_PRODUCT_NAME "WNR3500Lv2" +#define AMBIT_PRODUCT_DESCRIPTION "Netgear Wireless Router WNR3500Lv2" +#define UPnP_MODEL_URL "WNR3500Lv2.aspx" +#define UPnP_MODEL_DESCRIPTION "NETGEAR WNR3500Lv2 N300 Wireless Gigabit Router" +#define DOCUMENT_URL "http://documentation.netgear.com//wnr3500lv2/enu/202-10832-01/index.htm" +#define NO_USB_SUPPORT "N" + +#define AMBIT_NVRAM_VERSION "1" /* digital only */ + +#ifdef AMBIT_UPNP_SA_ENABLE +#define SMART_WIZARD_SPEC_VERSION "0.7" /* This is specification version of smartwizard 2.0 */ +#endif +/**************************************************************************** + * Board-specific defintions + * + ****************************************************************************/ + +/* Interface definitions */ +#define WAN_IF_NAME_NUM "eth0" +#define LAN_IF_NAME_NUM "vlan1" +#define WLAN_IF_NAME_NUM "eth1" +#define WDS_IF_NAME_NUM "wds0.1" /* WDS interface */ + +#ifdef MULTIPLE_SSID +#define WLAN_BSS1_NAME_NUM "wl0.1" /* Multiple BSSID #2 */ +#define WLAN_BSS2_NAME_NUM "wl0.2" /* Multiple BSSID #3 */ +#define WLAN_BSS3_NAME_NUM "wl0.3" /* Multiple BSSID #4 */ +#endif /* MULTIPLE_SSID */ + +/* GPIO definitions */ +#define GPIO_POWER_LED_GREEN 3 +#define GPIO_POWER_LED_GREEN_STR "3" +#define GPIO_POWER_LED_AMBER 7 +#define GPIO_POWER_LED_AMBER_STR "7" + +#define GPIO_WAN_LED 2 + +#define LANG_TBL_MTD_RD "/dev/mtdblock" +#define LANG_TBL_MTD_WR "/dev/mtd" + +#define ML_MTD_RD "/dev/mtdblock" +#define ML_MTD_WR "/dev/mtd" + +/* MTD definitions */ +#define BOOT_MTD_RD "/dev/mtdblock0" +#define BOOT_MTD_WR "/dev/mtd0" + +#define KERNEL_MTD_RD "/dev/mtdblock14" +#define KERNEL_MTD_WR "/dev/mtd14" + +#define ROOTFS_MTD_RD "/dev/mtdblock15" +#define ROOTFS_MTD_WR "/dev/mtd15" + +#define LANG_TBL1_MTD_RD "/dev/mtdblock7" +#define LANG_TBL1_MTD_WR "/dev/mtd7" +#define LANG_TBL2_MTD_RD "/dev/mtdblock8" +#define LANG_TBL2_MTD_WR "/dev/mtd8" + +#define ML1_MTD_RD "/dev/mtdblock7" +#define ML1_MTD_WR "/dev/mtd7" +#define ML2_MTD_RD "/dev/mtdblock8" +#define ML2_MTD_WR "/dev/mtd8" + +#define ST_SUPPORT_NUM (7) /* The maxium value can be 2-10. */ +#define LANG_TBL_MTD_START (7) +#define LANG_TBL_MTD_END (LANG_TBL_MTD_START + ST_SUPPORT_NUM - 1) +#define FLASH_MTD_ML_SIZE (0x20000) +#define BUILTIN_LANGUAGE "English" + +#define ML3_MTD_RD "/dev/mtdblock9" +#define ML3_MTD_WR "/dev/mtd9" +#define ML4_MTD_RD "/dev/mtdblock10" +#define ML4_MTD_WR "/dev/mtd10" +#define ML5_MTD_RD "/dev/mtdblock11" +#define ML5_MTD_WR "/dev/mtd11" +#define ML6_MTD_RD "/dev/mtdblock12" +#define ML6_MTD_WR "/dev/mtd12" +#define ML7_MTD_RD "/dev/mtdblock13" +#define ML7_MTD_WR "/dev/mtd13" + +#define TF1_MTD_RD "/dev/mtdblock5" +#define TF1_MTD_WR "/dev/mtd5" +#define TF2_MTD_RD "/dev/mtdblock6" +#define TF2_MTD_WR "/dev/mtd6" + +#define POT_MTD_RD "/dev/mtdblock3" +#define POT_MTD_WR "/dev/mtd3" + +#define POT2_MTD_RD "/dev/mtdblock4" +#define POT2_MTD_WR "/dev/mtd4" + +#define BD_MTD_RD "/dev/mtdblock2" +#define BD_MTD_WR "/dev/mtd2" + +#define NVRAM_MTD_RD "/dev/mtdblock1" +#define NVRAM_MTD_WR "/dev/mtd1" + +#define BRCM_NVRAM /* use broadcom nvram instead of ours */ + +#define BACKUP_FILE_KEY "NtgrBak" + +#endif /*_AMBITCFG_H*/ diff --git a/release/src-rt/wnrtool/compatible_WNR3500Lv2.txt b/release/src-rt/wnrtool/compatible_WNR3500Lv2.txt new file mode 100755 index 0000000000..0d8cc098b7 --- /dev/null +++ b/release/src-rt/wnrtool/compatible_WNR3500Lv2.txt @@ -0,0 +1 @@ +U12H172T00_NETGEAR diff --git a/release/src-rt/wnrtool/gzip b/release/src-rt/wnrtool/gzip new file mode 100755 index 0000000000000000000000000000000000000000..000ceaf678524cdb6efde2897bce493fed1ebd5a GIT binary patch literal 64524 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 z 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 literal 0 HcwPel00001 diff --git a/release/src-rt/wnrtool/loader.lzma b/release/src-rt/wnrtool/loader.lzma new file mode 100644 index 0000000000000000000000000000000000000000..a8566a37369ef5957319e797722581e19bef5ae8 GIT binary patch literal 2192 zcwPaJ2ygdY004jhuo3_O000000004eFQ4S~=28O&zb<*Xn{g}J>qa%?azRD zRR;n#9)^CdxRDw){;ycV%>DDZb}$H2naH1daFRLt4G*v-5OdGi^k9yAi@;vDjneDJ z!+r7=q&%KcQvE>E^D#Y^xJ2*aE;2(VW|I-8P+UxhPjOC&iH3)P z{qJQdD@_=jO*N01vxiJ^C}q|(J+jKK>Yd**bshRqparU-%RA{hrr(OVNvmQspf5C5 zgb-4kvmu`{A7{^^)Paq?^rjKE>wa6aqQ zj+%U?oa^Lat=d6p9>9cyVVur#)XTyuJX8J}lynws{F2U7m69>mXN6uZ%tqcZolT|i#leooiKBr@-p4tth~ewWdh_s-*J$#t)7?PHBgTf#*p^A1 zaXpsYjkukWu;YZ1yPw{2YoUd3iX=?53vt~dIxP2e_Oq)phW5IFN57eYg(LWq{s=Ur zp4;6(3$LM>|5COnjJ!`yJ_pNfN(ke!!j(`S->WoCYtv*gdrf6QzN|?|oT$bqm=BK= zGDGSr2Jiq&#A8N@Dwqz5(yt)8$qALKps}FmlQFccfx&Q)0)d>eP~3>+F8a^y&^H#gSP9CIpw{?e)8 zg5dG+App~x!VY=HQnb-|XZhZ;d*p#Bsv4FsVH5KCmaoGCr5$`TDQy*7F^(3?;a|vq z|G`BJk&!wdNC`m9{p2bW_PDh1(gX-X#E7!A}!mjy*2dN-IF~Hsn%#>t-UL$+uO>*A!e z0MzWkC{FQ|mdxEaOD`Iu-$qZXcdd82|S`b(C zl$N*()y*_kD?6;S=pDPd%UqdfZAEE0UbkRvE<(^FDE^g5Iv^4Y1vVPN3-FvskeaXi z6)`K$LdjuYo2PPLU*e;y%@`&9`3TIAV`sWL1r)%?3%!Ii6>he2VqiSv6kA_7k449H z^7^yvV0D8=hz**66iw$UoL~XXrKP8Z)Mq}NT1#gpyCm?*h5;R`%@ojX?dL8gO@kQf z7?3K<4d9=U@eikyBQAq>N?*^eO5l=}Kvj$JC0;`%>#5J8Lz{x3sg0$GRh@D8F3rD|Cnb zY8#7f{!uaK<$+t9^ii?&Pbyha8>nay7y7(vP+}vcY0c01xaS=0dUIv+CJ@6zr4TA{ ze%XXygEfBn1d1H>K&ODHZlm_dKF^X~I`WEHzZ4Lca=1ZA2J7(ARUy8L4d<+=Dz!>^ zPw(WE|IhcV-zEPXITfsHt||oIa1rwPih5}ycP4Fhi8~OpIATeh&M(;!fWA4COY6&C zm6Q&fc5ETeK<1NAxXzMJP1$jiKt}t1^p8ivan0|sn6OX%=e2<@C*F{2*2e1_OaDGL zi^#K@63mnfvuQE4>V5qE6+Ex8;pt3d7t_fUnTjXhY!OyMT^ZUA6FnDlsJg?u4+(n3 zwy9z!1Uz7TyaG}CV~mMSK?l6J2R;G^PhwVVBD~&DnKEnVP}Yd zIZNh#e|iydCuA*MVuX;(+tGrsMU}TaSmAw0HV(0*0lSc298M_D$RH;i8-7A literal 0 HcwPel00001 diff --git a/release/src-rt/wnrtool/lzma b/release/src-rt/wnrtool/lzma new file mode 100755 index 0000000000000000000000000000000000000000..f53424055a72a630a41e6ca7bf1e393dcb6f858e GIT binary patch literal 53969 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 Y?2J_}#`lWMclw5l?L(EPL8htw7q}9zF8}}l literal 0 HcwPel00001 diff --git a/release/src-rt/wnrtool/mkchkimg b/release/src-rt/wnrtool/mkchkimg new file mode 100755 index 0000000000000000000000000000000000000000..c6e36ae152f9f915be090b75c159d3946358fa13 GIT binary patch literal 9887 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 ZSG&Q3a=%yB)o7^K-3?6=@3OFp{5SDPv%~-Z literal 0 HcwPel00001 diff --git a/release/src-rt/wnrtool/packet b/release/src-rt/wnrtool/packet new file mode 100755 index 0000000000000000000000000000000000000000..b17c6c7c34d15c784f51195a5bde7d605dac8b77 GIT binary patch literal 14105 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 literal 0 HcwPel00001 diff --git a/release/src-rt/wnrtool/trx b/release/src-rt/wnrtool/trx new file mode 100755 index 0000000000000000000000000000000000000000..03fe0bed75d3f8c72d91fd0a3d1ec635d2ec5808 GIT binary patch literal 33391 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 P$UQX3Z2ND>%jf?O+L6q_ literal 0 HcwPel00001 diff --git a/release/src-rt/wnrtool/trx.c b/release/src-rt/wnrtool/trx.c new file mode 100644 index 0000000000..22e2637e1c --- /dev/null +++ b/release/src-rt/wnrtool/trx.c @@ -0,0 +1,355 @@ +/* + * Copyright (C) 2004 Manuel Novoa III + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + +/* July 29, 2004 + * + * This is a hacked replacement for the 'trx' utility used to create + * wrt54g .trx firmware files. It isn't pretty, but it does the job + * for me. + * + * As an extension, you can specify a larger maximum length for the + * .trx file using '-m'. It will be rounded up to be a multiple of 4K. + * NOTE: This space will be malloc()'d. + * + * August 16, 2004 + * + * Sigh... Make it endian-neutral. + * + * TODO: Support '-b' option to specify offsets for each file. + * + * February 19, 2005 - mbm + * + * Add -a (align offset) and -b (absolute offset) + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#if __BYTE_ORDER == __BIG_ENDIAN +#define STORE32_LE(X) bswap_32(X) +#elif __BYTE_ORDER == __LITTLE_ENDIAN +#define STORE32_LE(X) (X) +#else +#error unkown endianness! +#endif + +uint32_t crc32buf(char *buf, size_t len); + +/**********************************************************************/ +/* from trxhdr.h */ + +#define TRX_MAGIC 0x30524448 /* "HDR0" */ +#define TRX_VERSION 1 +#define TRX_MAX_LEN 0x8A0000 +#define TRX_NO_HEADER 1 /* Do not write TRX header */ + +struct trx_header { + uint32_t magic; /* "HDR0" */ + uint32_t len; /* Length of file including header */ + uint32_t crc32; /* 32-bit CRC from flag_version to end of file */ + uint32_t flag_version; /* 0:15 flags, 16:31 version */ + uint32_t offsets[3]; /* Offsets of partitions from start of header */ +}; + +/**********************************************************************/ + +void usage(void) __attribute__ (( __noreturn__ )); + +void usage(void) +{ + fprintf(stderr, "Usage: trx [-o outfile] [-m maxlen] [-a align] [-b offset] file [file [file]]\n"); + exit(EXIT_FAILURE); +} + +int main(int argc, char **argv) +{ + FILE *out = stdout; + FILE *in; + char *ofn = NULL; + char *buf; + char *e; + int c, i; + size_t n; + uint32_t cur_len; + unsigned long maxlen = TRX_MAX_LEN; + struct trx_header *p; + + fprintf(stderr, "mjn3's trx replacement - v0.81.1\n"); + + if (!(buf = malloc(maxlen))) { + fprintf(stderr, "malloc failed\n"); + return EXIT_FAILURE; + } + + p = (struct trx_header *) buf; + + p->magic = STORE32_LE(TRX_MAGIC); + cur_len = sizeof(struct trx_header); + p->flag_version = STORE32_LE((TRX_VERSION << 16)); + + in = NULL; + i = 0; + + while ((c = getopt(argc, argv, "-:o:m:a:b:")) != -1) { + switch (c) { + case 1: + p->offsets[i++] = STORE32_LE(cur_len); + + if (!(in = fopen(optarg, "r"))) { + fprintf(stderr, "can not open \"%s\" for reading\n", optarg); + usage(); + } + n = fread(buf + cur_len, 1, maxlen - cur_len, in); + if (!feof(in)) { + fprintf(stderr, "fread failure or file \"%s\" too large\n",optarg); + fclose(in); + return EXIT_FAILURE; + } + fclose(in); +#undef ROUND +#define ROUND 4 + if (n & (ROUND-1)) { + memset(buf + cur_len + n, 0, ROUND - (n & (ROUND-1))); + n += ROUND - (n & (ROUND-1)); + } + cur_len += n; + + break; + case 'o': + ofn = optarg; + if (ofn && !(out = fopen(ofn, "w"))) { + fprintf(stderr, "can not open \"%s\" for writing\n", ofn); + usage(); + } + + break; + case 'm': + errno = 0; + maxlen = strtoul(optarg, &e, 0); + if (errno || (e == optarg) || *e) { + fprintf(stderr, "illegal numeric string\n"); + usage(); + } +#undef ROUND +#define ROUND 0x1000 + if (maxlen & (ROUND-1)) { + maxlen += (ROUND - (maxlen & (ROUND-1))); + } + if (maxlen < ROUND) { + fprintf(stderr, "maxlen too small (or wrapped)\n"); + usage(); + } + if (maxlen > TRX_MAX_LEN) { + fprintf(stderr, "WARNING: maxlen exceeds default maximum! Beware of overwriting nvram!\n"); + } + if (!(buf = realloc(buf,maxlen))) { + fprintf(stderr, "realloc failed"); + return EXIT_FAILURE; + } + break; + case 'a': + errno = 0; + n = strtoul(optarg, &e, 0); + if (errno || (e == optarg) || *e) { + fprintf(stderr, "illegal numeric string\n"); + usage(); + } + if (cur_len & (n-1)) { + n = n - (cur_len & (n-1)); + memset(buf + cur_len, 0, n); + cur_len += n; + } + break; + case 'b': + errno = 0; + n = strtoul(optarg, &e, 0); + if (errno || (e == optarg) || *e) { + fprintf(stderr, "illegal numeric string\n"); + usage(); + } + if (n < cur_len) { + fprintf(stderr, "WARNING: current length exceeds -b %d offset\n",n); + } else { + memset(buf + cur_len, 0, n - cur_len); + cur_len = n; + } + break; + default: + usage(); + } + } + + if (!in) { + fprintf(stderr, "we require atleast one filename\n"); + usage(); + } + +#undef ROUND +#define ROUND 0x1000 + n = cur_len & (ROUND-1); + if (n) { + memset(buf + cur_len, 0, ROUND - n); + cur_len += ROUND - n; + } + + p->crc32 = crc32buf((char *) &p->flag_version, + cur_len - offsetof(struct trx_header, flag_version)); + p->crc32 = STORE32_LE(p->crc32); + + p->len = STORE32_LE(cur_len); + + if (!fwrite(buf, cur_len, 1, out) || fflush(out)) { + fprintf(stderr, "fwrite failed\n"); + return EXIT_FAILURE; + } + + fclose(out); + + return EXIT_SUCCESS; +} + +/**********************************************************************/ +/* The following was grabbed and tweaked from the old snippets collection + * of public domain C code. */ + +/**********************************************************************\ +|* Demonstration program to compute the 32-bit CRC used as the frame *| +|* check sequence in ADCCP (ANSI X3.66, also known as FIPS PUB 71 *| +|* and FED-STD-1003, the U.S. versions of CCITT's X.25 link-level *| +|* protocol). The 32-bit FCS was added via the Federal Register, *| +|* 1 June 1982, p.23798. I presume but don't know for certain that *| +|* this polynomial is or will be included in CCITT V.41, which *| +|* defines the 16-bit CRC (often called CRC-CCITT) polynomial. FIPS *| +|* PUB 78 says that the 32-bit FCS reduces otherwise undetected *| +|* errors by a factor of 10^-5 over 16-bit FCS. *| +\**********************************************************************/ + +/* Copyright (C) 1986 Gary S. Brown. You may use this program, or + code or tables extracted from it, as desired without restriction.*/ + +/* First, the polynomial itself and its table of feedback terms. The */ +/* polynomial is */ +/* X^32+X^26+X^23+X^22+X^16+X^12+X^11+X^10+X^8+X^7+X^5+X^4+X^2+X^1+X^0 */ +/* Note that we take it "backwards" and put the highest-order term in */ +/* the lowest-order bit. The X^32 term is "implied"; the LSB is the */ +/* X^31 term, etc. The X^0 term (usually shown as "+1") results in */ +/* the MSB being 1. */ + +/* Note that the usual hardware shift register implementation, which */ +/* is what we're using (we're merely optimizing it by doing eight-bit */ +/* chunks at a time) shifts bits into the lowest-order term. In our */ +/* implementation, that means shifting towards the right. Why do we */ +/* do it this way? Because the calculated CRC must be transmitted in */ +/* order from highest-order term to lowest-order term. UARTs transmit */ +/* characters in order from LSB to MSB. By storing the CRC this way, */ +/* we hand it to the UART in the order low-byte to high-byte; the UART */ +/* sends each low-bit to hight-bit; and the result is transmission bit */ +/* by bit from highest- to lowest-order term without requiring any bit */ +/* shuffling on our part. Reception works similarly. */ + +/* The feedback terms table consists of 256, 32-bit entries. Notes: */ +/* */ +/* 1. The table can be generated at runtime if desired; code to do so */ +/* is shown later. It might not be obvious, but the feedback */ +/* terms simply represent the results of eight shift/xor opera- */ +/* tions for all combinations of data and CRC register values. */ +/* */ +/* 2. The CRC accumulation logic is the same for all CRC polynomials, */ +/* be they sixteen or thirty-two bits wide. You simply choose the */ +/* appropriate table. Alternatively, because the table can be */ +/* generated at runtime, you can start by generating the table for */ +/* the polynomial in question and use exactly the same "updcrc", */ +/* if your application needn't simultaneously handle two CRC */ +/* polynomials. (Note, however, that XMODEM is strange.) */ +/* */ +/* 3. For 16-bit CRCs, the table entries need be only 16 bits wide; */ +/* of course, 32-bit entries work OK if the high 16 bits are zero. */ +/* */ +/* 4. The values must be right-shifted by eight bits by the "updcrc" */ +/* logic; the shift must be unsigned (bring in zeroes). On some */ +/* hardware you could probably optimize the shift in assembler by */ +/* using byte-swap instructions. */ + +static const uint32_t crc_32_tab[] = { /* CRC polynomial 0xedb88320 */ +0x00000000, 0x77073096, 0xee0e612c, 0x990951ba, 0x076dc419, 0x706af48f, +0xe963a535, 0x9e6495a3, 0x0edb8832, 0x79dcb8a4, 0xe0d5e91e, 0x97d2d988, +0x09b64c2b, 0x7eb17cbd, 0xe7b82d07, 0x90bf1d91, 0x1db71064, 0x6ab020f2, +0xf3b97148, 0x84be41de, 0x1adad47d, 0x6ddde4eb, 0xf4d4b551, 0x83d385c7, +0x136c9856, 0x646ba8c0, 0xfd62f97a, 0x8a65c9ec, 0x14015c4f, 0x63066cd9, +0xfa0f3d63, 0x8d080df5, 0x3b6e20c8, 0x4c69105e, 0xd56041e4, 0xa2677172, +0x3c03e4d1, 0x4b04d447, 0xd20d85fd, 0xa50ab56b, 0x35b5a8fa, 0x42b2986c, +0xdbbbc9d6, 0xacbcf940, 0x32d86ce3, 0x45df5c75, 0xdcd60dcf, 0xabd13d59, +0x26d930ac, 0x51de003a, 0xc8d75180, 0xbfd06116, 0x21b4f4b5, 0x56b3c423, +0xcfba9599, 0xb8bda50f, 0x2802b89e, 0x5f058808, 0xc60cd9b2, 0xb10be924, +0x2f6f7c87, 0x58684c11, 0xc1611dab, 0xb6662d3d, 0x76dc4190, 0x01db7106, +0x98d220bc, 0xefd5102a, 0x71b18589, 0x06b6b51f, 0x9fbfe4a5, 0xe8b8d433, +0x7807c9a2, 0x0f00f934, 0x9609a88e, 0xe10e9818, 0x7f6a0dbb, 0x086d3d2d, +0x91646c97, 0xe6635c01, 0x6b6b51f4, 0x1c6c6162, 0x856530d8, 0xf262004e, +0x6c0695ed, 0x1b01a57b, 0x8208f4c1, 0xf50fc457, 0x65b0d9c6, 0x12b7e950, +0x8bbeb8ea, 0xfcb9887c, 0x62dd1ddf, 0x15da2d49, 0x8cd37cf3, 0xfbd44c65, +0x4db26158, 0x3ab551ce, 0xa3bc0074, 0xd4bb30e2, 0x4adfa541, 0x3dd895d7, +0xa4d1c46d, 0xd3d6f4fb, 0x4369e96a, 0x346ed9fc, 0xad678846, 0xda60b8d0, +0x44042d73, 0x33031de5, 0xaa0a4c5f, 0xdd0d7cc9, 0x5005713c, 0x270241aa, +0xbe0b1010, 0xc90c2086, 0x5768b525, 0x206f85b3, 0xb966d409, 0xce61e49f, +0x5edef90e, 0x29d9c998, 0xb0d09822, 0xc7d7a8b4, 0x59b33d17, 0x2eb40d81, +0xb7bd5c3b, 0xc0ba6cad, 0xedb88320, 0x9abfb3b6, 0x03b6e20c, 0x74b1d29a, +0xead54739, 0x9dd277af, 0x04db2615, 0x73dc1683, 0xe3630b12, 0x94643b84, +0x0d6d6a3e, 0x7a6a5aa8, 0xe40ecf0b, 0x9309ff9d, 0x0a00ae27, 0x7d079eb1, +0xf00f9344, 0x8708a3d2, 0x1e01f268, 0x6906c2fe, 0xf762575d, 0x806567cb, +0x196c3671, 0x6e6b06e7, 0xfed41b76, 0x89d32be0, 0x10da7a5a, 0x67dd4acc, +0xf9b9df6f, 0x8ebeeff9, 0x17b7be43, 0x60b08ed5, 0xd6d6a3e8, 0xa1d1937e, +0x38d8c2c4, 0x4fdff252, 0xd1bb67f1, 0xa6bc5767, 0x3fb506dd, 0x48b2364b, +0xd80d2bda, 0xaf0a1b4c, 0x36034af6, 0x41047a60, 0xdf60efc3, 0xa867df55, +0x316e8eef, 0x4669be79, 0xcb61b38c, 0xbc66831a, 0x256fd2a0, 0x5268e236, +0xcc0c7795, 0xbb0b4703, 0x220216b9, 0x5505262f, 0xc5ba3bbe, 0xb2bd0b28, +0x2bb45a92, 0x5cb36a04, 0xc2d7ffa7, 0xb5d0cf31, 0x2cd99e8b, 0x5bdeae1d, +0x9b64c2b0, 0xec63f226, 0x756aa39c, 0x026d930a, 0x9c0906a9, 0xeb0e363f, +0x72076785, 0x05005713, 0x95bf4a82, 0xe2b87a14, 0x7bb12bae, 0x0cb61b38, +0x92d28e9b, 0xe5d5be0d, 0x7cdcefb7, 0x0bdbdf21, 0x86d3d2d4, 0xf1d4e242, +0x68ddb3f8, 0x1fda836e, 0x81be16cd, 0xf6b9265b, 0x6fb077e1, 0x18b74777, +0x88085ae6, 0xff0f6a70, 0x66063bca, 0x11010b5c, 0x8f659eff, 0xf862ae69, +0x616bffd3, 0x166ccf45, 0xa00ae278, 0xd70dd2ee, 0x4e048354, 0x3903b3c2, +0xa7672661, 0xd06016f7, 0x4969474d, 0x3e6e77db, 0xaed16a4a, 0xd9d65adc, +0x40df0b66, 0x37d83bf0, 0xa9bcae53, 0xdebb9ec5, 0x47b2cf7f, 0x30b5ffe9, +0xbdbdf21c, 0xcabac28a, 0x53b39330, 0x24b4a3a6, 0xbad03605, 0xcdd70693, +0x54de5729, 0x23d967bf, 0xb3667a2e, 0xc4614ab8, 0x5d681b02, 0x2a6f2b94, +0xb40bbe37, 0xc30c8ea1, 0x5a05df1b, 0x2d02ef8d +}; + +#define UPDC32(octet,crc) (crc_32_tab[((crc) ^ (octet)) & 0xff] ^ ((crc) >> 8)) + +uint32_t crc32buf(char *buf, size_t len) +{ + uint32_t crc; + + crc = 0xFFFFFFFF; + + for ( ; len; --len, ++buf) + { + crc = UPDC32(*buf, crc); + } + + return crc; +} diff --git a/release/src/linux/linux/include/asm b/release/src/linux/linux/include/asm deleted file mode 120000 index bcce28406d..0000000000 --- a/release/src/linux/linux/include/asm +++ /dev/null @@ -1 +0,0 @@ -asm-mips \ No newline at end of file diff --git a/release/src/lzma/C/Compress/Lzma/.LzmaDecode.o.cmd b/release/src/lzma/C/Compress/Lzma/.LzmaDecode.o.cmd index eee8bb2f96..fc9a8fe0c9 100644 --- a/release/src/lzma/C/Compress/Lzma/.LzmaDecode.o.cmd +++ b/release/src/lzma/C/Compress/Lzma/.LzmaDecode.o.cmd @@ -1,4 +1,4 @@ -cmd_fs/squashfs/../../../../lzma/C/Compress/Lzma/LzmaDecode.o := mipsel-uclibc-gcc -Wp,-MD,fs/squashfs/../../../../lzma/C/Compress/Lzma/.LzmaDecode.o.d -nostdinc -isystem /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include -D__KERNEL__ -Iinclude -include include/linux/autoconf.h -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Werror-implicit-function-declaration -Wno-format-security -fno-delete-null-pointer-checks -I/home/vicente/tomato/release/src-rt/include -DBCMDRIVER -Dlinux -O2 -ffunction-sections -mno-check-zero-division -mabi=32 -G 0 -mno-abicalls -fno-pic -pipe -msoft-float -ggdb -ffreestanding -march=mips32r2 -Wa,-mips32r2 -Wa,--trap -Iinclude/asm-mips/mach-generic -fomit-frame-pointer -fno-stack-protector -funit-at-a-time -Wdeclaration-after-statement -Wno-pointer-sign -fno-strict-overflow -DHNDCTF -DCTFPOOL -DCTFMAP -Ifs/squashfs/../../../../lzma/C/Compress/Lzma -D"KBUILD_STR(s)=\#s" -D"KBUILD_BASENAME=KBUILD_STR(LzmaDecode)" -D"KBUILD_MODNAME=KBUILD_STR(squashfs)" -c -o fs/squashfs/../../../../lzma/C/Compress/Lzma/LzmaDecode.o fs/squashfs/../../../../lzma/C/Compress/Lzma/LzmaDecode.c +cmd_fs/squashfs/../../../../lzma/C/Compress/Lzma/LzmaDecode.o := mipsel-uclibc-gcc -Wp,-MD,fs/squashfs/../../../../lzma/C/Compress/Lzma/.LzmaDecode.o.d -nostdinc -isystem /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include -D__KERNEL__ -Iinclude -include include/linux/autoconf.h -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Werror-implicit-function-declaration -Wno-format-security -fno-delete-null-pointer-checks -I/home/vicente/repos/tomato/release/src-rt/include -DBCMDRIVER -Dlinux -O2 -ffunction-sections -mno-check-zero-division -mabi=32 -G 0 -mno-abicalls -fno-pic -pipe -msoft-float -ggdb -ffreestanding -march=mips32r2 -Wa,-mips32r2 -Wa,--trap -Iinclude/asm-mips/mach-generic -fomit-frame-pointer -fno-stack-protector -funit-at-a-time -Wdeclaration-after-statement -Wno-pointer-sign -fno-strict-overflow -DHNDCTF -DCTFPOOL -DCTFMAP -Ifs/squashfs/../../../../lzma/C/Compress/Lzma -D"KBUILD_STR(s)=\#s" -D"KBUILD_BASENAME=KBUILD_STR(LzmaDecode)" -D"KBUILD_MODNAME=KBUILD_STR(squashfs)" -c -o fs/squashfs/../../../../lzma/C/Compress/Lzma/LzmaDecode.o fs/squashfs/../../../../lzma/C/Compress/Lzma/LzmaDecode.c deps_fs/squashfs/../../../../lzma/C/Compress/Lzma/LzmaDecode.o := \ fs/squashfs/../../../../lzma/C/Compress/Lzma/LzmaDecode.c \ diff --git a/release/src/lzma/C/Compress/Lzma/LzmaDecode.o b/release/src/lzma/C/Compress/Lzma/LzmaDecode.o new file mode 100644 index 0000000000000000000000000000000000000000..0b92116304026d20d514d6f382eb99434b7d77cf GIT binary patch literal 16400 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 literal 0 HcwPel00001 diff --git a/release/src/lzma/CPP/7zip/Compress/LZMA_Alone/Alloc.o b/release/src/lzma/CPP/7zip/Compress/LZMA_Alone/Alloc.o new file mode 100644 index 0000000000000000000000000000000000000000..89921900aff31da478bbbc5ceda72385fb6d06a3 GIT binary patch literal 1504 zcwViP%}T>S5XUFB+SUrzk3&JB5mXd)wfKSbAeCw>;s*$Vo+OPa6`K~)EwoGcod{TraBBJn+hXf0>4pb47k%Fk zpTson?hLeMLYo?iM4#Or5-yv@XA@`zTf_CBtjFptn;S*fa>uu2xpJ(E!MN4rz^)B$ z04vt(z|5L$TUD1;YusXmlk=52H_TfMx5`%~$FMEkHT*qf_naMiup&Ncm8A0J3FCIw3md_{#CsTZDUh9Cd9$7P3y-%UH=06pCw#1 zYn4P?7`{5HXQ4j3gp{2Ku9~pm^sA9P(uWTMm3aU0KtJ+dBF=?=YeGqk*U^_druxLg xZlzK)nF+@&Zw0pDnd4U8u`DQwn~;1Hah9T|?~bpT0FMW_9^k?A-ymGZ{Q&$mV4(m2 literal 0 HcwPel00001 diff --git a/release/src/lzma/CPP/7zip/Compress/LZMA_Alone/BranchX86.o b/release/src/lzma/CPP/7zip/Compress/LZMA_Alone/BranchX86.o new file mode 100644 index 0000000000000000000000000000000000000000..9c0216e48970fd1eb2b9f082cfa8b21501e00964 GIT binary patch literal 2088 zcwVhl&u<$=6n?Yo#7-J^4XTi%B4VTn#k4iCC?Vwl8OLtdU@F=s4N@uT#@#AaVq3D; zZHkac+1APs43Ri;b!W>H}X7vhhb2G1pzKQK9zCGVhwTgs7H! zb&YY0{wu57baG|$PdXM>6Xd5vXgf*%(L%p!)~2kHvRYiHTk%LmUDQ0KhCDiT~r?>d)3!bUOU9&tBV#Bq)P7ED{{zQ z{)=o_RW!Tt?3YJoWs)Wa^>Yvp>|krKN7Gi(NibZ5%=^-r26z z)EczT>F+8B1w`d5WOSydvSDl`0Zfd=tLo77G6(Y$mqFj z@KAUl{KmmZp-#RTYOL#FVQ)hK`t$^#89&p0e4-B9%?2jSSt(WKAP{^w{XZys4+AxS26Iem$j z@8U&v&4lr86=r|^w?%CUDO*tOTh8E-i8NzP<{JG1j=gYPo zPJQvzPePHbHQOPJy7div%YMJQo}_SdDO+dmb2`krK8AHUW6e*#sQtDw{zmVO7SFfi ztBzp4v?9uEEB_|=rGS0L1cU9zG3y=X#Zz0_y5Px{{+hY&!RkgrN7$7gwy&>wJZJ8MQ!VVY5BZF zIsZ7!`RlrVmvGapO;Ua%_hQ}=s!pQ)IyID>k@zsMf|%4cUk literal 0 HcwPel00001 diff --git a/release/src/lzma/CPP/7zip/Compress/LZMA_Alone/C_FileIO.o b/release/src/lzma/CPP/7zip/Compress/LZMA_Alone/C_FileIO.o new file mode 100644 index 0000000000000000000000000000000000000000..7b5225a50427fc18275c14982132b0c0a81e3cd5 GIT binary patch literal 3288 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

    ;fBkfZXmyO zgz~2u$UmkdAL|dT{G|r+tEqhT97Vmf@;4gv-$?tPr=fRip8r7mmvY(Hy|m+04X*Y7 zCr!h1I$keo1=CAQ`xjMz4gL!4Z_^mp#${hg1N)aPR@&{9F^&(<_O$lL+DE(g)9~@Q~g+^RTR> z;tm7cX@G0JQCZ_m4F9oQ<}znJvAEXDReZbweue?Atrk>VznC*~=NRA<4RE&sKFI)| zY=BQOz%MYsng8^cg@4ZgFE+r3pKdE|I^3(2@~qs zkA!JlyZcb_Q3kj+i>UZ$1AL4Do;wV?iNlFn?%;6!&G?DBuKu1Ip40K#Yk*4O7XGs?~6H?>~3SP;+TH?@v-TNM7U&{V&H zj-%D0&;ND<{9yz9F$27t%B`jg-wjlsDOU8)Og>cCMf^pDUL0Lb=regzrSGun%l%J6 zpUI!s;{nVX{~Q539nhh;gPQ9 z)Dh37OBz~R>PlvE2B**$2G(*TISgh9bx+NW&U3NLMHR?}eMP%0ud5!RbV6TyeS3TD zn);U3=BB#U4Urpb*Oqc4J0jNC;=+p6^>r=Cd2!RahNk7U3+r3k8taXQS*qx~dZap+ zj?lEs3BA6a8iLtX!yLdnt7Z*Yguw#~hn>?%&Y|-O?8d`J5Jg$0p|eMSl`&# zycW&Zw64)$DBjs%L{uV2SD;W1~M98Io+$#yQ;YY=vD1&!|ipob*oo5hwCEs^h+2_ zErw^XdO?^HL{_#muREoF(;59*_0$2KPh~33=sS=>Y%6{eT&4f_*vk?(9JTg@JQ;PrgNbv?v=>TM~xbD#91eePT z;qUm6a^>^-_*4cjV(|3_^!FLiCk^N=CVl!l7@Va)U_igrtWWfutUmn`250H_8PId%^zkbgoaM8G!7CU%W&&;P>U$Ju8D})o%>W>iIB(vwr&+gJ-D7!&W_i^;H*CC z3BQ)VdS0ldAJ5>do&VKwsXuGd%2mG{Y32GDoE`5x24}}x%;2n^H!wImzbyvzcQW`4 z2G3(~)^9IkaMo|*49?1Zg2CDN`kKL6eN4>0k{xe3L!Y(pFuWqn;n%nEsbc6@KCIo`v_(6!UkPV2xQW5( z&tpjbXTN5yWa!zihyTXVvtJLp82Zr+{xE~HUk@Lrt;$Co&#MeQ`&F@k@i+W)Q+x`= zRX!@dMMJNC2fIx}ug?8m4ZZq(W50%8waYOLz53mQH)YeWrS!#`xKIaIroq+kT|o_> zZIn+JL(l$t;TIbE=P3RvL$7{Y!|QDg{mT^hFy~A7r+y!sX3nO6pVD`0=+*C9`!w`3 HsJ;FNDoU*} literal 0 HcwPel00001 diff --git a/release/src/lzma/CPP/7zip/Compress/LZMA_Alone/FileStreams.o b/release/src/lzma/CPP/7zip/Compress/LZMA_Alone/FileStreams.o new file mode 100644 index 0000000000000000000000000000000000000000..d0c578891edfca77db348aeff2af3ad397b83bd2 GIT binary patch literal 34472 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 Xm~wKpz5L*~y+VVR03T~`9EbORYZ5f_ literal 0 HcwPel00001 diff --git a/release/src/lzma/CPP/7zip/Compress/LZMA_Alone/InBuffer.o b/release/src/lzma/CPP/7zip/Compress/LZMA_Alone/InBuffer.o new file mode 100644 index 0000000000000000000000000000000000000000..be5bf512a4c2d58883c035abb48863cc40ca9a53 GIT binary patch literal 4344 zcwVhnUuauZ7(X}J+H|c+woaS5e-VOa*u`Xa)rv^Fw95(BQkK-oI>>Ib8ylM@F}c}N zWpvP1cMU=j2R;nuqxv)uL@j6}oduuD@Ijvxd>Ja*J!}&u)brhYPVddhxnqhS-20vL z`~IGDzWe25eq{8xLy{093B7>KnMw6+=6I04A3@!^ZijA%P$%VGl)K4;*V>WJVlK+P zl>30M#e%>Z%btUay4M8O?%~?J_oks0)wL&0Io3`GHn5fp{Pj76zze_owA)K}Ji|Bf z!n~J=@2T4d3PE)r)_&4`Xfr|WPs7_%9cxjq=W-p_P6u4LmJ4|C!m6*4$z(#U{=qd~ zx&!%Wx77|@Ys1>z&2eJ)Cc!t=He74p9QR^v#&ZMr*uC zokR>?obS~a(E~nx;L}fh22K6ic`pf!-yIEf)e=E`Xah?zKiM&#o=$M7u3fK$YQupp zTuXR$d+i&nbz|wfrMl;RvI7a%rD*TMhGYZ)-(SPo>RS}Kp#{G((puAjWjGIgv{?Ug zlTgL2txqvMWOBg?K!SaVKl>kahpDDrGHo5uiC7d8HVV9()`MztA`qtwv$IN` zWS1|fN+>oqak#9?=^5%SU>zu z^6Ni|#PKiE`NPd{OZ*E+Z2zG{tk2J@NSwc)Dzg3u`NQuzpZ^skj(?5LyPM&b_$$b; zXK@%csQr^1E^&O-GPcqmHs{al{zx%ieS-o&bGQpN)AvZcf8%ta*7}FfVWl}WWLL?pX~19r+Cx-h0syd z`V9g-PxaaFPLlG3js7InzeeZ7l)po9wq#akS1In7%sJ2(NbLUxc^lJdf z%F4NT-hjDC@qAY0!w;NL?!>lu)w(p5PnLnIP5rEFc>Z10SQg*sg-oNx9U32!+z zmYjTfED{FwsyvlF7db-4)}x7# zJarnN#|U5UF7o`nY0w1=zSDxgZNYb2@J}QY_gU~yDGu#>4>D=RqW`Ex|GEY5vEa-O z#PGj{)h_F#fbT~pF*)D|P%8m`5Q+WxEqZM1K+V5PeH_mE66-e%XY(9~vp#c)!&#rX O!r`pXta3Q(5B~s)$tP|A literal 0 HcwPel00001 diff --git a/release/src/lzma/CPP/7zip/Compress/LZMA_Alone/IntToString.o b/release/src/lzma/CPP/7zip/Compress/LZMA_Alone/IntToString.o new file mode 100644 index 0000000000000000000000000000000000000000..edc890ec4b41f7f0041df994b8a739dd826d4138 GIT binary patch literal 2056 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 literal 0 HcwPel00001 diff --git a/release/src/lzma/CPP/7zip/Compress/LZMA_Alone/LZMAEncoder.o b/release/src/lzma/CPP/7zip/Compress/LZMA_Alone/LZMAEncoder.o new file mode 100644 index 0000000000000000000000000000000000000000..a7ff4951ee640606680ca08b262fb52702869a0d GIT binary patch literal 57960 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 literal 0 HcwPel00001 diff --git a/release/src/lzma/CPP/7zip/Compress/LZMA_Alone/StreamUtils.o b/release/src/lzma/CPP/7zip/Compress/LZMA_Alone/StreamUtils.o new file mode 100644 index 0000000000000000000000000000000000000000..cd39f5a944df2eba4b3f1eb690e1d15a75510737 GIT binary patch literal 1704 zcwViOUuzRV5Wwg1r>1SVM)4s~p%DtEXwF1iQ45l5lJ=rOLy|*LOTDBQlA2s%vM13O z3-N@b7WxtV7(NCRL{LQgrtiL}R6!r5-sbkmWs^t|2kvI)w=+Alv%8NHsbvSlfF%rE zf}YirJC5EsO8%4J0bWe%zxiBJ|0xRk+pNATw7>cV?KK*E)m=vWr24)r7P+aJ$K9y8 zT@*@gB|!fuY^P?uDgARw-`h_I1?}5bZq|#Oj0pPsB=bh=sAJj(^7MSPG zac4sjwF?*KOxx_)QPMl+VFs9%kD2x!^6VHD&l~I*nN#p@iS=ze60HBJGtLH{xZ-TE z?OtZ1jtm>**#OV_4TmMxlQLX$Bu@KVoH)@RC`=ktF&iL@aLor*B;^f_8m2B;BP6#F zaO)D1fXg?Vz!hrMs;n4HsUewLxhjU5NGjX~t|3<>PA;t#8&Xw<{~^-=-TOF3@hH*1 zDDI=|<6y=+DSm#~B{#%H*(Zz-x9DHvPl1^~OmQpzB*hs@FWAO*DU8TZ<=VfSH@l zkLwzi-$&{%QG7&O2L$`M;K%;3Ip>H~oI`hl`LGHxcaPxoYq0p>N#XtiYxUEYE2G literal 0 HcwPel00001 diff --git a/release/src/lzma/CPP/7zip/Compress/LZMA_Alone/StringConvert.o b/release/src/lzma/CPP/7zip/Compress/LZMA_Alone/StringConvert.o new file mode 100644 index 0000000000000000000000000000000000000000..1c37166a140ea37a6a3975c3338f794b703c4181 GIT binary patch literal 3144 zcwVhmZ%i9y7=N$V(i_}*9r%G{8i*kaL?~3N0Zk0oUdPpS3!&71`%{l{KpkzdJy>y0 z)UJk01@>(welgJx>IY+DvZx;h%&pB>76%`UiGDOuWMpcTEowO5_wGG=99I&JPttqe z=hx@`J3Kd1%lGwjoBlpPGozeOXw{3oBk z-N=`nD4^U&X#M4&0o7vYSTNwyenp~?Z;4Y9&?X8sOhjZogr&k({c+Te4eTjk@6Bp+W1 zGM6_YB`3GfLQjrRW&125oC^|s{u;sdKwf7414I*`Lq)oUV=lF~$;)l4b1x}{t(nhR zxx}t+=kN8-)U%gSlKj1Wi*`72O!zKGY;m&E_ElkvV~*Vo&Pg?pu_T=j#kcw8A8cCF z5xTJUs(`Azjv8LeHE8|%7G&QnpI;_=R51Z zu6R^eHi)FXjV9jjRbhkPO{A*UKhkxLh2n+sSMA)a&s_|_&1%Rm5i*>-U9#H%*OP>* zegsri`C=5v%ZH1;2VsQmvotISOWV7bt|hhWjhhC4{pKE`0!1Mh4}5RmvpGH{!7}NnKp)y1 zpOT=2AkY^GJl@t+`@;i($hn;) za>;|Vlez%)4@0K~$CRLt_7eDA?gg9Q)i_W3UCncLzpM2v2j}W~vxaqb=be47esYYc zb#+6Cb+y6}7z&s8T~uEk;*&7njlK9-#K-A;6V>>DCp(>#gdsRe8EqWXXBlx^@JM1# z0-j+(5`bqYn+2ZHcswTN;^Kr9gHhum@Wj)}q?m$Hsk9_|`i@0AvXT%#jS0lD*hof5 zir{~-W&qUtxWif2C$iP zwF8awzpnQJEx*l#>+27haPx0h0ApPy+=df9WWov47zVpJk#$&YD%c$>0PFg@@cJba zPJx|v0$A&Jt4$#fir70`!}(5A4p5Fsu9& zK7a3HZ$O*+g{&Bg2VVrS*k~>nn-DYEbV?XcNYk;YE=ZCRlJGe!^iP3U zG<7DC8jcN!*-3aoq69lw2h;!LGbcC$6Cmrv<)Sl*&ir4BW(fmM8}JswI{rBWZjAq; z3Vy|a?>FE|6@JcU&GUx=H^%!&>-dE#_(cP5tfxVPK`s91)(R@|#`oE4h&P^g{a(@I M_4D$&DPGU_H!2!JmjD0& literal 0 HcwPel00001 diff --git a/release/src/lzma/CPP/7zip/Compress/LZMA_Alone/StringToInt.o b/release/src/lzma/CPP/7zip/Compress/LZMA_Alone/StringToInt.o new file mode 100644 index 0000000000000000000000000000000000000000..0e785a25d2546e406c06e0a063d81a4af7b4485a GIT binary patch literal 1888 zcwVhk&ubGw6n>keCb8nCB2=ib5kW1QHK}P1J(OTtyVhchZB#^vn{{i7W>b<$QhRZs z3YHS^BKnu;O`uLmyR~l|ZMgB-rB!9+VYiDNF5jZ% zdiz&`Xq1y`vqhZ1zW!nz!!%b%R&181x1MW~)>@QkSDU+8doS7?@6Y$TFW(5V8XvVE zA6U+p+V;T?OE{OyO~p^;i*<|C&n~Q4dbJWys~PoNB318#ljA(*dvX}}M%ugr(nd@g zI}naMp&J>a*ioFDLeH=yjx#Q7#sj;Kmw{SHh)>dA1pZxr26%mEUmSDvrv+RR{G@B_wvJDI5uQiPb4v8fJj|lNB z46dnbVeW2W7zMsZj{XSx5g7b-%#zs9ihzs#d-cvt8{$5Wg8jg2i}hJwUiC|Opq>f1 z&u1Ml#tXsMJ+HZ-PnMwPN*M0dA;X7!aPc-c_~1^l?|;bEkMmYcAfCn8c^j@GZVPx5 z@ixYP-i>8aU9;}2R4!UXHP+XmaAP8st5^-QN}Q=Yoy(+`E*VS9$pRy!k+5j^bNrGt g9YRtd^d*2ewikf@^OF|vEXJCE+Zf*z@HWQ30hbl~mjD0& literal 0 HcwPel00001 diff --git a/release/src/lzma/CPP/7zip/Compress/LZMA_Lib/7zCrc.o b/release/src/lzma/CPP/7zip/Compress/LZMA_Lib/7zCrc.o new file mode 100644 index 0000000000000000000000000000000000000000..eff257e77831ad92a8dfbfff697d6d8dee7a9a41 GIT binary patch literal 2400 zcwW_(&ubGw6vy8t(WbxLR4o>2>0as&v}$QwF{OW#6l6IZsKk$ZIY5~p!QNQ z_TWM2Mey(NPdtq*%}5r)s&i$8NsE@)FA$ zmd~b~c`BLm(hF1GSTW^azY)ITolDPgK4x4-(-UTTgNAhk@5%5Q4a}~Q=-;E|A4uVQwtq1axXt}5=>Pe6b%C|mdHb-iBMt~f5{i7d55S)^&! zP!m}z+zo0XolF`jbfnUjq4xFy3A1Ya}o za}hNd^fRKOu2o(4X??Ceod z8h=ROk`Ogl-L26I`xm{Jpmbl{8YeI)@F0|n^?RLPQ#Fqowb}UvVe9!dfJg384{7~j zfs6b1+B?%Yy^wckKphtL-4@qp+w@vLNXByl_sX@Gm@fd|ie7#G3bXhh zfmc=F;_30<4>*r_FLw|ZwTrkS@FwEod(7nD@^t`c0d{9fd2qgw?7P?i-;0XVK|lRC z`7gVCOflj!#5dPJHW|w#)C8z~u`qjdu*XsMhyeEV8Yv^ATgC-FK4!r15F%d1%D^~& zN$pxpA4`;N!+zIT7T1eh^qS*82PbD-jV^z+%irSSH7?%f;S5XUFB+SUrzk3&JB5mXd)wfKSbAeCw>;s*$Vo+OPa6`K~)EwoGcod{TraBBJn+hXf0>4pb47k%Fk zpTson?hLeMLYo?iM4#Or5-yv@XA@`zTf_CBtjFptn;S*fa>uu2xpJ(E!MN4rz^)B$ z04vt(z|5L$TUD1;YusXmlk=52H_TfMx5`%~$FMEkHT*qf_naMiup&Ncm8A0J3FCIw3md_{#CsTZDUh9Cd9$7P3y-%UH=06pCw#1 zYn4P?7`{5HXQ4j3gp{2Ku9~pm^sA9P(uWTMm3aU0KtJ+dBF=?=YeGqk*U^_druxLg xZlzK)nF+@&Zw0pDnd4U8u`DQwn~;1Hah9T|?~bpT0FMW_9^k?A-ymGZ{Q&$mV4(m2 literal 0 HcwPel00001 diff --git a/release/src/lzma/CPP/7zip/Compress/LZMA_Lib/CRC.o b/release/src/lzma/CPP/7zip/Compress/LZMA_Lib/CRC.o new file mode 100644 index 0000000000000000000000000000000000000000..8d12c98d8cc258b0b22b47f064e6cad2c87ea997 GIT binary patch literal 1712 zcwViP&raJw5XL_zKm!E|5{F9kke&bmrl^1rhc?A+4Qd1k!P#1yrHM+M$X-i859JYh z>|^w?%CUDO*tOTh8E-i8NzP<{JG1j=gYPo zPJQvzPePHbHQOPJy7div%YMJQo}_SdDO+dmb2`krK8AHUW6e*#sQtDw{zmVO7SFfi ztBzp4v?9uEEB_|=rGS0L1cU9zG3y=X#Zz0_y5Px{{+hY&!RkgrN7$7gwy&>wJZJ8MQ!VVY5BZF zIsZ7!`RlrVmvGapO;Ua%_hQ}=s!pQ)IyID>k@zsMf|%4cUk literal 0 HcwPel00001 diff --git a/release/src/lzma/CPP/7zip/Compress/LZMA_Lib/C_FileIO.o b/release/src/lzma/CPP/7zip/Compress/LZMA_Lib/C_FileIO.o new file mode 100644 index 0000000000000000000000000000000000000000..c5ae385d7c09ea0d47b84dd323a5822289d425be GIT binary patch literal 3720 zcwW7gUuau(6vt0)x;1OJG#f($D=ZH|x__~;f9&R1)1_%|T$V~|QMXE)rnjapNo#U5 zS1DS^99&W%f};59gZSoy$mn2HTA99;x(8o`K8REhtq+dEg!nu6p4JLNuNcvZwN%S^_ccsa8sYgGzIRWUM`ROU09$8EAz(K$j8d-SevPo z`+q@crS0Txy(^f1N7hqnkM~+()ra6CyEb_AHegC@!3*v$hnrm$mb)E{2W$L`WO4GW6TX9W+!`oqVW=busZKZgKlrhIqdc=wz$0v z47goGtyy!Z=ke0zF;C9lVbmmLSygHmMG{e0vGGIsvT{MegGj_ z#Mi+Ejrk9Ob$(xq;XfA=TJ_q>P}c;1RIS#WHc_0Gl_0n3Fmmx%WAbLOGAA5pU~cvt z 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 Y(E6@{{%cBq*g&tJzkOw(4^ch-7vf+TXaE2J literal 0 HcwPel00001 diff --git a/release/src/lzma/CPP/7zip/Compress/LZMA_Lib/FileStreams.o b/release/src/lzma/CPP/7zip/Compress/LZMA_Lib/FileStreams.o new file mode 100644 index 0000000000000000000000000000000000000000..98064e6b5a57f7e3ef4d613c05477ab952f78b57 GIT binary patch literal 38200 zcwX(D4|r9@mB8oa4?IZBODig_R$rA?Y#}7bKNV|Y67t^iFA~7I$i6(22Sh>=!+Q|a zT~kB&h=8)zcJXhcr7dl>(n_tmwML-@t86VwORKH4i!BIlajRQfZL@doJ?GtX&z+NZ z>FVyc-#XtH=Fab)GiT=9xpQac-8D5Nli)Tfl2azod-?r|mjyF-1`mc7LK zYqE8fy43nh!f}=Lmw@AH>u)g}*Fro4;uyqn>u(Vp&$RxogyY%P-xY8?7vg$|=Rw?H z{Vjmw6vRs*zQ+1X!*MIbD7Li{y| zzYg&O${QXntW@1Qmy|`$UTdeT7F5lT_dU0uA=dZ%SkJL=toNDpu-#fy_3e-Ky%y{H z<&!#fSd&=qK)mn!U1wAb%x0lA)O1?ipfo<9#} z_UrSuO%Uq&Q=Vn&*~daEzkBuRv7X(1V52jD9cqZ2SQaV4@m*2N%k(1wJTKDMj z%~)Qa{-_hvUl8ltYh~~bt7~l2^~HVr+^j~&dS6fH_tmOcsJgUbz^SE`qvOA$zgvR& z#d>}hK04C%r=2gBYI^8&TlHhM)2%X84(;!XLC53N*=I@4cI+{K@8kZq^4I>#+SuoD zS*-8r^hs9rEU)GDoxEu0lFg3p&dqLpc8@xu4>m8c{TX>=Ul!^5Kz)l1^>y@j57&{C z_-oS4zZ>dGdj>*%b)`G;{IPK4k(2b{qj{FqX(f@~7nCli&8E!>MS6GAbY7(QVVcg5 z^nQ`13nIOrrRl;*Zx2lm%dE~G56>*m9)~lD?D2?9L-u%NrY?J2l({&2T%4JZJw7RO zZuYn&b6WN|k|~PyT@>3ee6T+3G{T)5>cV#Y!&v`Z{$pvM{s;ck5%<@T|FyK$-m?iS z*nO2F6Wd)Ew&P7V!X3Q3+5x-sb+l+F1F^o{w%p)gD12Jscy(!^a~vuBh&nHOJVuoj zqRb>UqfmJQwZG{`=&W6P9y|6iyI&hNBuaaZhI(J>OO$4Y*_R^PcVJQ0-`4psoDaVr z=biRla*^F4BE7%R|2|^ZaoP;4Y44?Jt7$($(^k`dkfyDseGg4rO?wkf4~z8v15FRl zT$?=(XHwbY5t%Eq$0IYdv&Ti5s_b!bW^(rUq|Eu*@qy8#uGyy?HawxHoR*3HPSWe3RU;Um`c`9pr}HKRwp!`rX!KHAGXp*MqB?VPcS`y|NmX@NbifvThU$0ThSfLThXn` zThZHaTW$V)nvO(zPq)&sO?BZ|U!LcxD>n?$KgarBS#-pccDw0p z@b%ZhpEo3b<73AT6&F;;+h(-1rW(?nspJZkE9g;bK1t`X^Lb&GF7>7>rc^hin@`B3 zFHoDg>{m>xo|{RZn6(qif2yv}iJ3T&{NL;F_Mj7T$$bz$2p@$1`EX%8-bTBTib-)N zS(i#Tv|N|s@>c&nd(DEj@f8^xPCnmB+xd-xd_&jGQ=zWX z&>6+U!<(&#hJFm33Fokj)2!UUY7Fet2G$D4!wBn!sOTt78uLHX9@)s&3x$*(Jk zwv8+qZGozia7~fpqp>iE!t1Kr%5-37K;D;ICDL`94}7S)UCZhgH`Go0u^;ks%im&^ zzq)9KC1JOJRxVxV7xUd?$L|ZXzB)d{x#9x(+}I(`)xf!Zx^3xu<~6H`mlfINYlL%H zK3%6Yuvhau^7(IuO2YblH(VFpL%D6|?=7L)BD?(?^4tMBGd((OS)Ie6gKgZt|AFDX zpzBgv=p55)YKO9wYgVL_S6gwq(}|biQD>?(S(Z+9rBzvTGM!XqSFc=2Xj$U#=4AWl znu)cm*g4}Pz#!*7YD}51=Z+(iJ?ot{OsQ&ao|jtU&%`&_ub6asCe^tn-j+^vE=e|} zYUjQGKP0Y&bq+?U9aXxAN~b$WgS zU$AhrU4gh?fGGP{AN=|z8IlEGQ1EBqmmunf^#Xqm0fZLja>T*_m0g&#HVXrlMVLkS z49c%f=RrQV51|>)X*bSiVt#=@HH;5k#(KmG4;b{{P{H+g81(h; z6G8RAYtY}Xg6r=x=>J3o*MH8S|1%X_|3!oT%PP43%Le^dRB-)62K^%{xc)JNzJ8_$ z)qm5V|CS1_|E@v*4=T7m{zmw@a|62Vi z3hK}5*$;wPUJShc70O)y^%*C|dg}V??^}5N=P9%O?E&r6IUNoC2K)M(8gBnOWwt*M z(7rZfvj3>TewFgu|7T^k|9n9Ew<)vz=MDC&mEZoimD&D5$nk%Lp1J(xYn+(+Uw_-j%fC>tUk~cNy&KZy&k+y9E0k0quWYu)obIVEW!R3gZ(Dux4%NL|2)_q;l)1t%LMy-z&`DN z^h=H0{;h)jgJ8eLi+%QQ7VIAc`vZ{H_LnNZ{RhB4fBcUDLG&Mn5KHeA%HIh3sN(7?Y2(bX+LE>UAP||LR9FFaI@y{nCgNpX|lH^4}upSAzaD zCLd+#KB4?wQ2s_p>+({6CVeU%>MJP$>TaL;3YB#mj$8uzwKj z<9qHHc=+;{E{NiLEvUG)De+$^}hW=CA z*S93Me}!QGAlR?;VxRqag8k9!op>9hwS8SAZvT40eiRyBy%+oJuM+GJfPLEkXvFQ` zBiQc-`;}hov%f|1f1eZ6`s+PTxc#RE`vU>(KOxw!yxEDV{f)|R|23)of7pp~wf|QI z`-j0keg5b@UAX{ehK#Xfc*hTYy0}07~k_tupfm7SFZanCD>oT$%*Oxr}ymP_SXycJ5Kh> zVc`9Dk6^#?7AHpkY5QB0-~Lv?{^o%8zaZG(X0Wf{-{JOuAlTmy_H&JYo)YXI2m5sX zsP{(V_J1q2zkv1swbcG^bz)k7y(bg5uRpUeK7Rt*9}yPj?*{w*%5eV+_Hp2l%l>(S z{p|+(_bb2s`GWl@*w1zS=L+`U2K)5-Z&il-U$9>e_KUn&g;@GCf_^3F=NdoWE9f@{ ztpDSJeh28E%H+BJ%Yyzo&_9XE^ZLIf==X#EX-uBmA3egX{~gfh>(AVN8R(ZQZ+Hsy zKgoEA#ZyQ4^VH!OA2>tcva_)Kj2{R6v4vh9R^CuILYP0ozyZI@((U&l;OiyAECO;OmDAsP}3zjh}S(M*GX0xSlNlntW{vTCPC7Vf_9--~J`q z#4i^3bb((Y@Jj_=CGcv2*9v@w!1-tgd0gN#1wLEga|O;vImqV;yg}d#1b&6UuM{|6 zbwR#Z;0b{z1>PiZ-)HNb>&ouEH1^yX<-z4z00$(Ta^#Z?H;2Q;gi@^En2J+hke!DV-e0yeL;#&lM zr@-$P_`L$}7x?`G-zxAg3;Zhr-zM;{3jAvV|GK~*P^OS?zrkwa5BZog?(;wG&awaX zKXIKWj{iw|x&5zygy8f%d^BOr2kn3PuU<;sXaCDbQ_lM{*~NAep11$yqcv;3WdCb= zV@;R-L4li}`uWC@hvudch33YUYKyZ$R+jU(;*bv)xZj@+_xsb~et$Zg&l-^PUqg}e zQ8se_b#Zt^;Qs67aOrw|Sm1os9=Ul?oUcw1IG=qW=d%Lje71@Fbb<4?yO5tD@H3Su zsnoe6ql&2z;u*`D(LLdIEF~nWtb6rT6RkC>d9v=2;;v@6KOP z{$iWE^B3f^ZSKxrkf&_!&R?)6T?ZU{8teh@x4Ap7IS%m)A=6Vtse`t>JKw>425s)n zcd$IC=V|WFcaTrDxjWxMKGWvzdp*V){iA0bcL+?^jGUt@E3euR93&E5GC z@@+PE=SRpNv$;Dz!YAT>o4fO)8i^JxjvQ z-yOH(mDYRj=<9`f;Y?|ZkpH~`e+csFhBV&Edj=@i~K&DyYpZAJK{NH{)_L;ydjiR4*}01^I|OL1;A0~RT!cshnw?h7x+zf zKJNS)pD1_Q+?`*e-A909Uf9#^9q#xazvsaF?ucNwDD22rf;`^86T)WsD?z><?&$Tx1&vMM?CY!tK4>&Tu)8_8_1LpHBo4fO3 z%xCWibN_kBmUq`BDj|Mng!%b+%1Cp6IDVwg$6c?egt&I3`MK6;%e(6sD1ZG(^Yy)D zr1`o0fSr#!-$&iYZF&EA=2=@Fp9ZeoS8aL!cqXq%%e(6&D1Ta!miLcmCfM@s`U$q% zPucSRaZ$Z3@2;!hb0lfY`^OuZBH=k==i{z#;LPwro4e~9*bbi-@;PkFZ_B1p=3Se+ z>mE4cI<;7HcijVLnCIEtUH8D5*kv|%*FCZ`TX#F1m1RvG9m=zF)#Tb$O5E}aPLj>C zP@M0uh1|bA7n~7x_(DCpJs2{>#$tGi?c9_tRkcyvyM>*1cObFu6Mc1`DAXM?UDh@& zA#YdbFSYmF3GH7OkJltTH5g(WJM&eUIOJ8qn(|%h3_kW6I4;ic<3r+V@njV_oIpL=1oKDsQqGBvrnwcXyrEwP|&bxT`wVqR)x zW<|<)f8p)q+uO^00VZG3*^*Ax*3VpZP5m`$wN6+iPIY#+wI^EJo0934_BNB9Ne!vg z^4hLz>euMAGlhaXQmrip-*_|N*?Wt{Ju?l3U9lC?rI`wszZMJ)c~+{&g_hW?RNK<@ zvf6oT%*}4nyi~Hew%#tUm2NgwnTYTzO$AAmk?Z4b=x3;o_vBC;3!3g$@7W>b^GzJ$8v>X?E{+xD_slG!OwXJEW_hPuJajs6z!q`4ibHmg-O$(NZ*@OqW&lMTy~ zovCIma&aCL+yYgWzQR{T$G6!x?;`Vi0N=Dob$u>=Zv+qHGP(%h^Yyv^FbN1`vYim3^6 zPR7PBH)q~R#YRVWNW>LWz1*sHp^7gX;1{R8>GPQH-vGYQ9b zq4W6~$p_!0K;8&xT%XnX(EdD1Gx&=N?`Lje9Qzsk z<(&63_=^PZXK)3V_cPyO9NXph7)L+;ka6s1e!@8RGyg&OF6H`Pg}fa7U(7iAe>CIh z|1peXC}$k~Kb>*(e~fYT|9r;L|BZ~J|2r5*|93Nv{@=_v`oEuX^#69o(fE zBfKu?f8Nf~|Gb@}|9Lw{|MPZ^fwyz?KX2#gfBdBgIr<-eAwiD*$6v;fqyO<21LWD? zCmBcoKg~G$|6dtL|NoqE^#5-dNB`%M>#|$9{*N$@{y&>>^#26L(f^k+j$tn2=>G)c z=>O%6qyJYkj{fgq9Q}VQm%%!;GWKNM(f?`2(f?~1NB`f>IQoApL!k#Y3@d-dFx#wYkDoz90o_oIZ<@fFRVj-&96NIs6D;|f~Naw1R5gYTDc9uqje z;l(+=QN`<3NjR++V7r~YK=Q%ssriqU8*qH6`HO^OeKp@tIF9!;$7ekaL)pbShz`{5 z&j_b>Pc(n*lXal^zfAalC;wj%Ihy|~giHC;eD)EJb~OJ1;WU5x6-AVAoCE4W?H(i? z+o$Hw5>Brp{vQK6R1&^}aBR1lKT7zg38(dHB>ek?FC+Y)2=5>q$DBIgn>(8099f5M z!f`CB!+OHMLpb&S0m7;Oag9y~>i^FX9wmH$aO(eG6HfhqKjGB>j}uPI`4Zu@oI44p z<-CLNDB({LPRsdkgwt|9LpUwxw+XK#9On)?&~|bU;j~`AB%IcZe$7Mcg=;1{L40lon$xfGaBQPFzALE% z_L-V{zQzl=oPLcrif}BW4&w-?U*lC0PQS*Z>t=a`FC(0OrFR42qX?(#WArP%t%TFB z^d2Rgex>&u;n?TsaFB5Nl^$ImpkL{Q^IT59(mM~hzJ~7GtV&HM^7QMyS|U%s-n)v( z)35hZOdhZO4Md(^vptM=13$$00B~Gz$X+j~|2W3+`;AJ*8-ahC@owN-8OQH2b`eg$ zN<6?g*6U5eqeQ;6z~vt$d>rBD5FR7^T*8|PA47N-V402)dHsjqS74`xyb|~*#_@ZJ{{k}fkf;Cv literal 0 HcwPel00001 diff --git a/release/src/lzma/CPP/7zip/Compress/LZMA_Lib/InBuffer.o b/release/src/lzma/CPP/7zip/Compress/LZMA_Lib/InBuffer.o new file mode 100644 index 0000000000000000000000000000000000000000..42c0ef7797fd3c541abe02e49ac38a055ee1468a GIT binary patch literal 4336 zcwVhnL2MgE6rHux#%YRe8XzvEtt&;~ipIpHqzyths5;<@vHzWiqRDz%sf)IzO;=%<{afzT3;m{VTNMZi&pX_=(iwfdP z>p%16|M&mQ{GA=28#p%TQ53>OA%}_Gv*l`&-R{NTM@XA#+hY0=(u#U3YCn7Eax*bi z!iPGDIs|$-5dpO{AJ~1tWF5TbTRvJl7o58j=wGFC>-wgi$%wvZ)gp+S zM8;&q_}xP07O4>r2Hstyv)6rNF9BySF?kqAozs{dj~b^s)~J#1_>)Bo(YZTdZ`{^f zXl*k!?ye_U25*EQ_-0ybUQY(8F&Uz@QymP?cLZ6e&{8&=jc)MO5|^}R z)JXW28so)Sp0^_B&w&J;w4Jtdf zHv8sTi9sDahGS2l?qE+BwvWP3pFeofL;ayyZ^9q0`a`VW=l2n)+!xWV9qnd4qkgDx z7}IgAAAW}Y;ftPGZ-tFQ%y}FOp@x_rVEZ!sB>i1re`1T@H`MA$GSvs~73BIo+Qs0< zj5)%FkG2j&|63)=QS2;H{FDSEIUC)k*ZUs;eYAUM?eADgqKspBx#I?u^4A zXb&Juat_FY4ZQbFYI|x zg7>2Kp@#a|&K`dJaqZ?$Q9J#2lKb~hqIUZ4BKPml>(c2TCXN1p!AZNB)XU4LZweoQ zpkTLy*j!GD1T1|8`w)K2Le}c&4Ph#05Oyg3DLUE8RK3Wjg|RW2Hgn z+Z^l3?=WG+>+Ug34wA-q5ah56K1eK{^Vn}kJ%;!K_WM!4jrbb&d7ZtFco3K3GUA^R zdE6W9+2hz>&hwj#{as@5e}w!o#M>0P{c{TN+jYXv*-;a>>xBE}U3lIx?d|&E=iP^j zd|wE^Iz=8c4=^hEm#V6?V1CsrjLT1q&QQg`D2Naa>bRA7Sw(VI-ZYs%aI%vy{@>#Fyt&)h^Vhm1SqI+czzrAs_Y@lsIq(I<;rQN8Y`NmF zf7D_Bi34wU;M@;};XebfU4D`RzLVI(#{u6(8U^s(M9vd-*zvZ9)PI)_2sl5NP6_yV b>{kVR0sEH(oS!rNJIir?&a4PHKOg=EWq~Az literal 0 HcwPel00001 diff --git a/release/src/lzma/CPP/7zip/Compress/LZMA_Lib/LZMADecoder.o b/release/src/lzma/CPP/7zip/Compress/LZMA_Lib/LZMADecoder.o new file mode 100644 index 0000000000000000000000000000000000000000..3a63d02390c0f5f9a107bacff11132bc7793c156 GIT binary patch literal 58624 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 literal 0 HcwPel00001 diff --git a/release/src/lzma/CPP/7zip/Compress/LZMA_Lib/LZMAEncoder.o b/release/src/lzma/CPP/7zip/Compress/LZMA_Lib/LZMAEncoder.o new file mode 100644 index 0000000000000000000000000000000000000000..fe98c70b1fa6dbd2ba625f529861bb58c7f02619 GIT binary patch literal 64032 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 literal 0 HcwPel00001 diff --git a/release/src/lzma/CPP/7zip/Compress/LZMA_Lib/LZOutWindow.o b/release/src/lzma/CPP/7zip/Compress/LZMA_Lib/LZOutWindow.o new file mode 100644 index 0000000000000000000000000000000000000000..d0ae3b64dd99484a68cec85803647a0fdfbcc5cf GIT binary patch literal 1408 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 literal 0 HcwPel00001 diff --git a/release/src/lzma/CPP/7zip/Compress/LZMA_Lib/MyString.o b/release/src/lzma/CPP/7zip/Compress/LZMA_Lib/MyString.o new file mode 100644 index 0000000000000000000000000000000000000000..e26b9a217d4844d1e4c0db71fab77a24c8668723 GIT binary patch literal 2168 zcwViO%}*0i5Wr_kq2(jnVj9x~0*wa62y0is6#PiHAFwDO5vx(evMgI5(vP&;07ipJ zLDN)}vwr~x51b4K4kYjg7!xCjR}Usy5>Fm5!S}jv!}7Yl7$^fTUX|RQx*p038J1E;EfB7`Z zx2~f6g3ET*RrCBnODB1T_>=j<{lWZi;hqo??uPkqkufoUDCU0JW4b?3=r}u2=r|wh zEvmt_Rosh^KhQqTK|T&d`E#hyy)I~e$~i0-`wJZ#;ogI1XO?|~xjpM@F}oq=_U!!5 z_=NCCm=GQdQT;nHFLi#x<<~g=76XTYV6e~A9+}D})a<39xrCHXdb+tQTvsQbEy11( znhoFrO_-;5fLU}hO$|2tIy%pdSTpgpl?K8(a~7GkqpcGyAMte&joA>z7SWm{`)&La zV4ZI*Vb=YoD!_WytO2(Db#;jKzN`^gU(Pnb`YlQw>kG18fo(?-0oIK&0<2xE44d?Gh8ajWtQTqG=;R9*7U5tODppdrz(poaMO}10XLP&04FEoaV3FRBB?6ez(}Ms zqe}7<60XcfV`(X_z<&}CKH4)`USA~l=M}{(jI~T~ zoE3f@nfay)9NHlkah{HBJo~>jb)hd6vbx< z-z4@n=m|?>YI-g)!^x=>L?80}@KSJAN=H&DCA|RAsH`rfl&G4_Vi28A$~dS;&k82v zDJiXt-jc_>QFG6N=DEyMo{?lw%IN;m{lkLq5WWk4jx;%_!0Q=v?lHt0@8dO!>vJ2W MxIVXOitBUx3%WWPlmGw# literal 0 HcwPel00001 diff --git a/release/src/lzma/CPP/7zip/Compress/LZMA_Lib/MyVector.o b/release/src/lzma/CPP/7zip/Compress/LZMA_Lib/MyVector.o new file mode 100644 index 0000000000000000000000000000000000000000..f5434197df60fcb50658d1b5163d4533e9b12670 GIT binary patch literal 5312 zcwViSZERCj7=X`hhbvIq!Z4|Pgn^A&QOXMAV-8J6*>;)~HW?c@Bwg3txk^8l_HHX8 zLQ)~zTuGMr2css&_`@F>Fww-1s2f9u{E?v{8h^ka$y7u@Hy1uO&$;(K^z`mtMZ=ri zzV|%mec$t*k9*GPfx2+LMGz1Z0X>BZrGivGP=Z{XMjb{@ZuW9Nw)BF`umrm!%g zHtF4M$N5vXUAu=1@zwn9DX}i+(#^CJr6dLa1XcpB=}TP$wA^q1lnz_|ssNPBU$dv& zdqcICpY@DkIpHDQx)qi?J(HwY?&^M%#H~F>7{fmC8P@GhsRAlJ^j+#U89AJhrgX>2Z-k za1Vc3LaJ38|M?L#>~NtkRCie$tK#aD|6Dz!uP*doX|UHc*d*H@Fn;ps(W(4o;DF0N zk)NC$aK3r^Xw^qFm~dKMH%g;DtTecB>?E1Wu+r%Aj)t7aui@C&L=BSXOz7xFe^@w! z<+E7Ue2Ul0xH_fUQmNTtBg3Qw-QHhtY&`#!Ko^y!>T_eA%ndgIc z0Tzjt?*)?YO)cM>MfqMJYhHCxn(e>7jzIkDgPWpRahn)RXF6NOn3T?-`yvg&;1lH) zEgiinsdrU4o{DDDLzS4)NPmoGBaB*_D&$J9xiLf3_U9=1WM^uUIUZISyOxT+MG1Y$~}}cGwWB zfK||Vz;g6Q?MsmMrNL3Ye-7(QJ>3X>*}X|A+Cj9G(R4R^%ZQ1nPZDzy@^wa~DDrh= zvxKH;!53-U-fXlOG_QhD=w6Ik4UJ;yWKv9#)>COo^fhd4S(%lhu|41|c1OB0(WHoc z&t=lRJ?Q?(FnQ(~@BnBV==tPXMxGKVGi~ONLG%90(Y^aOf#&_4Xr_NT(#|;UI8>z_ zbcMB;yL5JoP$5>4KvESJP0t5AmX90sqeyFC*9k9!FZt|Lae`YudiWQp^Xy zpM8T&^!=ybzLEb4tFgVl{4_Eizlt(Vv+tIUAH9$0$8R4pZhsKkuPDaqeDl(WjN9J{ z?YBdjwogBQefxByr|q*mnT$dEkLkFe)9-Nayp$O(s+qQ*0Mm6JxxpXn9BimqK19a- z{}}pj1Aq4Y==)EXxzSQVg}M zwUJP}5_EmqsLpEq#S^aIMHnwN;riKNe6|VaZ{j?6AS1D=GiJmeG~vdhV>O&1%4d!| z&160|KJ5PBMRfl!k|zJ%R0u96y#~AoIJ^6N z4*Uf09Ppn6I$wqL$@+Uo<%RXha(KvMoKKC#c)rku5_K*T>I=i_|FaX!vPjxXZ)72tDF;eQ;JKRNp)oc)wZoVga` zIAs>&I7>Lr$5~+#XSGS3D;(#?VX3viALcmQw-@dOu#w|~ndK7>(Eyhl)B-r0^v z`7%@xo-gM(^P}9uadtnUoIjn*IbLSKEvWcDv{AJfjWMqH=Mg}_u1P=i=Ah8{wBqswK1B1J>vz3BIXi{ljNvXb1W?o`ZzJiIK znVzw(VJTS9R1?ByV9+bB%q>Yw0@5W#5IO_KDoL#rMiX~nzz)#$s{=6y z1Nr)O7$Ei=pou#`X>BxdMl{+KiH!_!g)F*SK?Y2>g8)pwE1EdEeh{CD0TX$`w|@pyPykIFn_sa3kUAEIkN>gBG2<|W8LLk~;@DgW5@*FBjvmWE U;FntNk(if~lUk&gTu{IO00GW2-2eap literal 0 HcwPel00001 diff --git a/release/src/lzma/CPP/7zip/Compress/LZMA_Lib/OutBuffer.o b/release/src/lzma/CPP/7zip/Compress/LZMA_Lib/OutBuffer.o new file mode 100644 index 0000000000000000000000000000000000000000..a48c9c4ad7d144bdd8a3e098065d4a036a004c68 GIT binary patch literal 4616 zcwVhnUu;uV7(Z>tDA3$qVPGSFTCnOCrL-_c>Vr_q=p~G;u}qMSl&;*mx^|uIEo^9n zIJe~HYO)87FUI)bgKs?e;)8#hOg6(45JM!INK8x!E^)*Rmq;?tckg%B+tYj17{BE9 zJLmWPJ>U6u&e`Seo}*5OgD`TC7f5|pr$cK@WBlDhHtD+SbUQ*eAom~_=-2-_jMSx+ zr2Z*QF1RJ_;M7C!k$ckAin1m;(x&+Dfir2|1xy`jQ-3pnshXs^yzkef$#2{PXJ@_s zxAmyHAMK#oXkd0G7h-Zr9Skl?Y9Y8xqxqz%hoG-6DeEMyRZ{<0Nzx2n_d)blNn5*; z6eV@UCuxI0iWh<+jpm!p|BF>pIbX6s^3bk zL_obQbu312R$8@FZIa{0?^JgtcCsH!A!-*zE#X$Lbu2~a%4@VzTgMX3tsQdPD7p5< z)P)}PXMLePj%+)m9jSrPPZQTFqI#by%^wMR^sL_P33^tN?Q{(uEhTEl+Z^|!*VUA$ z?9eLi=mX`M=xuNOrsNn2s3{L!r8salHaMG`q0-2$`MAEq=!5E=xp>$yAJ+I~o@iTCSh;l%{IR!T`08)CL;r#a8F``mgBqFzmv0JN24!|LYby)aQ{~ zYWr9E3e340VO}?T%D+aDRs}r}k~=$8qUJ;uselTRm&tGqlBn6x)U}34UUN zIPH`K-=r%c1ge6M&SQd`_^9Xz>TO27NoPucii7MN%5!-DvZGbZ?^T`?gr*^&^#&NtT!fta4rVZj~Wpy&NP+Q2%DoCeo} zFivB)Q)n6GeJGy>pZeOI@zuovg(?$8B{M|1Qa1Q78atOs#Fjy zmjDT+&zwAFy`v_Ll${3esCla!yjX~{rD9PYrTLAP6giaW?cZHdGT9OIEf1%2KOSy=ok7uW`Q3ke^f4Eg5g+S0V)*>8 z_Fcq?@8tBEJf{Q)t) zUBYM|;0)ZPk!};~`bk*78qT490P*z$%qrC+I$hv!K7Xs+fokgwE}?U{>!9|0eCSE5 z_-?`Ai(EjfT3Zq5wU7rZRx%ecJ!Tv5wKh0kb%w9A!8h389vfV+!TD}wxYdaZxYq`^ zuA0ko=K!~EUYA9uLBx%wdb0Bd-V9dR@3FxT5W^3~@fyzAo9F|? z7je$sMPDE;Vkxd74)=pqK6g>ShWbIoml0=u*@yTO4r@RA9FSYRPgvidu+e|n27gQU zQ|~KwE`O-w^}b@ZpV|1iqwClEZS{OyeNlz7V`C(JrZ*CbhePGRMN`Cn4Hd!=1Sef z{$*?Pm~HYLIgqw-+id(KZabU+aGE??F{smoZ#3bjO}JS<=BVR76aJkEf82z7oYwd@ z6Ta1iKZQ74C+z<#pxq|@?IwLDhwwW{{cnJs;DGx{otPZ(0BI(`cM@wqyG(ik=B2vbL=k=lX%Yn literal 0 HcwPel00001 diff --git a/release/src/lzma/CPP/7zip/Compress/LZMA_Lib/RangeCoderBit.o b/release/src/lzma/CPP/7zip/Compress/LZMA_Lib/RangeCoderBit.o new file mode 100644 index 0000000000000000000000000000000000000000..f321927f3503b66f855cc903b237f452703521aa GIT binary patch literal 2472 zcwWU+O;6N77=F8p>>^NB{#o2oV-)e4Z^IjmP9k*6@JgHccAz6HSA%bXCMcVcRo4Wg0r2^?BtwxTf5F) zF0&(S?dHZdjFG(aA?IuguRphEHhTta?A7^!WX@YeH8z;WH)iW=j(IPPZ8*K_c-i_W zH1-*x@$h#Ub8ml9w{>+?Dqd zGv?t8Fsmu1zblb^fzlsD+-b6A<5!kVJ&#>w`<})p*mR>Uw#fDgY%0qpUG3BnwK$$h zw8y{)&UjEW!wvFRK?VEv|Q0@HAO`x zs%9$OWN~f?$tuf4q%27bx?EG>Uy%lA-q&`DANM|}%bcQg{pe|f5Olc1FqyL8x=NCH z9~sXOJ`RU59@azi6oz^1kq6e zBepdFtZRes2VraR2ru!_OfVnX;fSZZ1K6t|lLJ^IdQaz#`w;F2W@L3y5w&?m&sI&YQm=zFS-6%J3X)`4WocTHZWYIh zqE@Txied14v1Pzt5KDTsqRh(W6~*9(OS)EW5=I`5Y9(IC-#@bW??Q}Bt5x$4qKG^a tFO%)TC)EWl>__n4&f=cwM$fMU7yfnsok{!j{yr;EyiMj_zhchs=Qq;5EBOEb literal 0 HcwPel00001 diff --git a/release/src/lzma/CPP/7zip/Compress/LZMA_Lib/StreamUtils.o b/release/src/lzma/CPP/7zip/Compress/LZMA_Lib/StreamUtils.o new file mode 100644 index 0000000000000000000000000000000000000000..818087a4210c560c3a473ee48377862a67011ccf GIT binary patch literal 1792 zcwVb_^>JfjWMqH=Mg}_u1P=jrFd^6uP?DR0gTXP>v-7WGh-c@SP>;^9!JU^qn%_ux zw4N+sI}SFc^>&G+Z|jp%?$@6D@-7SvnwLv7J-b~QJbHapcsg%+biVWHeE&Z{qdP=} z$B|J)rSqZ(fMPOGx!EAXiBF)H z$(2u{huMWsp^e3bPotUDjn9F}kBd*kkx#*qPXegIiI2mbo52I9JOZkBEk3=0XnI|^ zOZYULkpzHx^@=NVOA?cSbV(6}&VaE>QY%Ur^imQ_5*hT8ii;WalJj$OQ}cjgdHE%& zdhULqy2T}l$=M8gMX5Q7dZ`)lX+?>-sSMNr(hLmXbk2q*?f|8I(K3MmnmR=Wh<;`? z@d?;64-l}R@zsGC6g=eW*I|IzZ-6Ea)31#t&WJ{vBC(OdZXEWb3wuGukctH`H~>|+ z08N|&jql2U=_e4l0F4lszc?8naRk#Z0i^{QFvAW65}*zWK@&%JKQ_06Km{v={s853 zF+l7_w;$v#Z1!hB-JgLbjw4tx07xAR!^i*F910<#Xr6o{dZ?IwosC7&XsPP+vCcXg52LM}t B{%`;Q literal 0 HcwPel00001 diff --git a/release/src/lzma/CPP/7zip/Compress/LZMA_Lib/StringConvert.o b/release/src/lzma/CPP/7zip/Compress/LZMA_Lib/StringConvert.o new file mode 100644 index 0000000000000000000000000000000000000000..fb1ae27b375721d6ccdbf44258604889523119fe GIT binary patch literal 3440 zcwVhn-E$LF6u+Afx}{4tw9eQWblPz$(<+1pf)br^dYcX1*if040HZ)Aq+6)8NhjGt zP-@j}oUU)l=WVshsJ{5pCCPSo+-ZCH%<4wh-mH^_at4x0Pv8G z+ny9giHCHr&B+R5PR2W#xb63j@ijZ56YiP7=rv1|^aLFsMioBHP@h7P`UFu4C{a%D zRL>nYE%P)hGF7BfH=98#R0COI?;$8KS zm5n~|)93D@z>K)z6xxX`WY%^HUzPj>D_kVJS$bd#iW11!su=q8hH7!5=91JUr{{Zz zp*RJn7llW4y=CwmP9QughG%S88#;K8A?E$!0<0NH&->}7dwz*`5YRit_Xnbj?C4F4 zDtHT(o}mY3m8By14BbDZ2;OWe_;p;k^xBf(b@b3U>zzQlFDd?GUEdVl_bnp2C*AXH zF1n%*A6Imzg>gl9k`+dg?o&G5Cs*q3`4Ea85mAxu9@6_j)x9*YyHc|%JtHP5MSe!S zKYMafmIqnkLOCm5d1F7^2lvARFnqpEiHpeSTvn-RZX#bF!c}l~D?09XkIZti>aYJJ z%SanmyomGL)s~CDDL#KbH}4@<{NwTSj(epXX3)U<@x*r#c;h3H#;K>>Gisfg68bc? zwx4oJuM&9pyp3efZCr=>@MU`RqxUQFe)lhDoQl6Yw|P*Rw@HYGDj;02G5sDAC1f*Y z!U!Rv#b@I-3t+sRBt7sImexnHnGkv+$?X}>GvZjycTxgR-B~DR;j}C))b*A^}miVo@3Lnjg~h4BaIAr4vPH>azU%fvBvuEJ>y3-#LQfrYBQX?iro_nGz{M zXt#{6E4O^V=azQI`nEUf+Ws~*`z-2H+vEB@t~_n%*xdKa`i=0}i;IPu3uKv~U3LII zx7w%d;F{f@hfZ4T-&nzv6)i!7&-YSgb?9JsjPKqQY>!0}@k)>D1=p61?rsI#TBGi9 z%%^~A#9KRq&45Tbi>!EST}Ks>gJ=$dXj7$eZXhwSwxHhO{Mb_OC?BxaJ1Qkxy`%ag zJL9PRU=?(16N(xfJFQ)o)sAflf{toLK~!|4-a$5$;CQ?i?=tb2co4^9mf{fw;sICk zcqbn@h&-QA{o&jy!F5DjJeT5ut2M$$fa_o~30#Mw(J+^aa$S5Fu{t>5ipD!Txfo)_ z;ymYSXbNpi@{#BfEdX~o+?I%Ra^QclN&uAimhLsBSe@q2+m_=_18*JBG&9(h64h5~ zFGak?OH#XDuKD#EZUxKDW(THb%(VfiG5_m%H&F9ij6Ci9dIN5J$NMy_)_^~!oqyhd z69yjyD`R2{6{z3HjR5od_iE=y3^)mv+dg34zXeM5DQ%DYM}n38TMJfduUyv#>WBe1 z)^AojwuxfZAJz`waxi4fk1@0Swc7lBX~502HZ#n#f%~%AHEV$=R?|u_Zl*BC&6{im zMFntU_j0)L=>?z+eM)t8-q1wG^J;vCvF$B@A1Hux1#tXZiu2yn@?FlA(84F$V~2e4 z*ikOQyP{oPApH7f&yMa6zP(;YBzN_rNh4<%=ux9Isa+_{AV4$Mu%5e&EvP~aDALon>l~C4%hR)E`Sf~ naD6>xDvbWYsGpowgFIjVJiB##{j}$PS91K^yu4@N=komvHr}p? literal 0 HcwPel00001 diff --git a/release/src/lzma/CPP/7zip/Compress/LZMA_Lib/StringToInt.o b/release/src/lzma/CPP/7zip/Compress/LZMA_Lib/StringToInt.o new file mode 100644 index 0000000000000000000000000000000000000000..0e785a25d2546e406c06e0a063d81a4af7b4485a GIT binary patch literal 1888 zcwVhk&ubGw6n>keCb8nCB2=ib5kW1QHK}P1J(OTtyVhchZB#^vn{{i7W>b<$QhRZs z3YHS^BKnu;O`uLmyR~l|ZMgB-rB!9+VYiDNF5jZ% zdiz&`Xq1y`vqhZ1zW!nz!!%b%R&181x1MW~)>@QkSDU+8doS7?@6Y$TFW(5V8XvVE zA6U+p+V;T?OE{OyO~p^;i*<|C&n~Q4dbJWys~PoNB318#ljA(*dvX}}M%ugr(nd@g zI}naMp&J>a*ioFDLeH=yjx#Q7#sj;Kmw{SHh)>dA1pZxr26%mEUmSDvrv+RR{G@B_wvJDI5uQiPb4v8fJj|lNB z46dnbVeW2W7zMsZj{XSx5g7b-%#zs9ihzs#d-cvt8{$5Wg8jg2i}hJwUiC|Opq>f1 z&u1Ml#tXsMJ+HZ-PnMwPN*M0dA;X7!aPc-c_~1^l?|;bEkMmYcAfCn8c^j@GZVPx5 z@ixYP-i>8aU9;}2R4!UXHP+XmaAP8st5^-QN}Q=Yoy(+`E*VS9$pRy!k+5j^bNrGt g9YRtd^d*2ewikf@^OF|vEXJCE+Zf*z@HWQ30hbl~mjD0& literal 0 HcwPel00001 diff --git a/release/src/lzma/CPP/7zip/Compress/LZMA_Lib/UTFConvert.o b/release/src/lzma/CPP/7zip/Compress/LZMA_Lib/UTFConvert.o new file mode 100644 index 0000000000000000000000000000000000000000..bb689425c3ed3b4dddbecc203b3518eb876500cf GIT binary patch literal 5232 zcwVhoeQZQ{{ z0SPJfiT^6|{Bt`me#Q&8v-xmJU$LF)h8yjDijntza~U7D@`1myQZvKio;)WPnrPZe z!mP_d!hV;X!#xw?Irn?gVYx%bT@S#>7q+?hz%VP$3Q@*;pB3}Ei3qBEV4%;|N!=cK z>l6(-eiFW_a25-(w9TExM}Grjj|}~f53PXjI|V11LmAMSEI4U7lnR{(%VnX@#s@AF z?S>iW3HDSfxCZF*y)ixtOUqvOH_CVDl62(dO^h%h8|&^wDm8yJeo!C_B? z7v9Z&@n!N7d6|5Vl%L00Aq6n;!tksxRnVI8juS@0R4O@Tqflf2P38_K-X!j!4w>N1 zH>LgAjQ1uEU7V9;J}}EiZ&+?p2PAyN<)BE)RyqLKeBt%3jse{HQz3g^8+#Jtx*l_64| z(>vI5o9~c=nY_rl?Ai`!u7MzSpJ;OtalgwEZm`F%&&qODH))6c0^CRAz(CUeDP^!C z!w4UH6P_d-)R`qtlIWc@(%y&u2Eg8R_e)I*#||^|91|yjVx;{#1tki-6I zj+x@bIB`#dI}UH2E|!iw%K#OFZ}|eUA%&%o!V%n6V@}~4S_-w)=^0Z}^ExQ=(het0 zoL}1Mq{-vGLy%j)_hW*OpJ!7)EC^k~p=zs|LnR*x`D49<^^m`FpI80>L{0=sQY7P1 zNRT)_JVWuxIIY8@Gkl1-tS~&HFnmZV{Q~2Kc(*DHpAk!4P6I@KU zU?PyFSoBj1D`oykMQH?wwu7!;dLB@kQc%LjSyz_d+YbOmHJrHA57?03m4!o3fimYA z;5;8K@VyWK!$dgGK(Ezi_X$y;{Jr`cl=4rP1m5#ZsF1CskX3baVcQ=#(e^eE7;}DuB^VEr3QhWFS7UK)e*+Mp-pqF6T>S%QG5<6*?wV$oP+DWLa@Tt<+*1 z|J?&h&^}7gsRe@SH3kSe#WJ!&(BTeQ<7Ym@dZ&Uvd6=JY#5yK$*M0Oq@H3A7OMXVs z=gH5p=Ksu3g`Bj${B|x8u#K~cvb~9Vqo+B~NL&VG&J&5-K2x7B$?EfufciXt;QlHACt3;S>#Yg>=`;vsR zWx0J?UJRA-*ixl3&dMLr!B-)(toI7;`Vw?X0@n(|wqLKIMQ#HvdH9$W#6V%LGAp)QV!e$ z!mz^y$HNJfZ)u?GL#HX*BkTG1L;SEj18*3%e6|xlbPqxw!+HCgKjFj8h_dzTl&#Cm zYbgGyK3xFTp&VYuiyRUUI^s9z9SHcqFs1@ZHAk=EtTu&rYF0V%IzIL^sP?9S&=VnN zl=rBea|%USB{|^|waV1X^o*xy>4DM$#%$+m`vU0mh-)l;Z5I%PzSt;lXNI?%s+{@v zo9OVgf_Sfvc&~=|0CSNOr-^$^ss00!-_CgZap)>_8JO0v(6BC<$C{%T0DXhiv3`;k zjsirH#69cR6?Cr8rBhN1LrXC6PBmZCQGU{hvI$`$x+RWyxpK9~h(;Hp^W`iJp2hx2 zmYHBh*?qZVg2kIBiz!=JN*8+L`2urV++_}W33dIFo`Mp4$3W8)o)HyyK3syNdItA6 zmUcRvFi8s-6t5e4uo+6QiXS?w2glOf@1{58!-b?dn;Hx;n*K-?15*nUVT>Uz52@i6*x)f7NAzqGEbc3+@wZ{@bBYWu_+g(`1kv{j{Ye*Z62-?!r z5X%Z^?yaAS)z-Auf{)&dt!=T^HV8CmwNk|vTdzQGuVSN>zHNQv&dizrp8w97fA;MC z$i2OvkMsE?|1;k+|M|_Cne&=G=gjA7>*jh23K)a}b{Vr{b~yM^dpWHB|CSw*Y3umk zM(NAg0{(ZiT8{C*4QhEI|GP;oU&;Tv)$$Vlw_YtT<$s@1%ggxR4QhEg|LaoA*C<=B z>k%ORD9S{I5eTU&sI2)$%H3S1a49Y@4!cl)XjS&C1@Y>}|^SDf_R= z-mdJO%HE~ySCqX+*{>;kud??kyG_~qm3>gzZz=ol%08^@ca;6Evfo$sQDq-f_Hku@ ztn4mjcPqPB*+FHWRQ9LJKBMfYZgV)&qqH0`cA%hRHTfg2M5C?a%qrR zChWIXEG>qS zj->Zmi@k3o$3$daZw|-&)ms(>cFL-qQ&#G+Y`NF6RhH{-oLd_v7vHbH8ZSSDzhkY&P_iCL!JFHQScHXIA}4y4wLLe^G1Sz9qs z@nj_ZtGe_nvM$Om4X~o_WSl3tKC;Oh*|NE;pX>cV)Jnx)dDV0G$fgYvM$;mTH!}5D zA{<1DlISL1SzY>7fj+-SH2s|P(NA4ny}bJB>T9awyPNx}AAe_fcz9?}@tLAZcr`r! zwunE%8_1MN`c2h>dxu_&@+2x=mwsbtzld8U;8C7<=tsq8vg#$#^v~?B_yX^RZ_ADp z>3O{*S3g{7^}}|$AMUmK;hTfCsvp)`S){M#9kEt*#9HoOi~RSU4*pxZ+6TiSlQtA7 zy_+wVDil<jzaVV1Zm2p4bIe3!AR%IW_^oTcQkMNacdV^{{yIY`! z?AcR-y29>eyZzr4?f-<_#qDN4BsV7touV#1l$G(&^N}q#Rz+c_R=Yj7LABkPqrzZ~ zYU->52hUG>4n4$mhqf_0LW z&WU{8+CarXq?h-HwdG0P3>AOc&2+uUrg_0gdQ`;#=;hiTExu`L=ohRLm^fOhOGp=uMcKzd~G5h~t$J49Ij`34+ zB)z=sXkEIg>@9vEEa!U?Z?(TgHl@m|(+Bu@I{ids@*ktK4y-9k@1Fdp>hw#!zfP6a z6}%#=HdUVVq$l!v-n6`o?}V$$O6xW?l?C}eUA{ZwO_kQAe-la9mHE{nD8;kqv7rG= zpX;hZyp8mEui5lDDgJ^K|A!^Mck;W{>DPPTNX@J(cr|kIjir(Fjpb{6{C_Dg3NOZF zb1^cvX&%HH!DX;aD(z@Kc%o$=CbUdcSEs z-x`1M_W~D<7m?y#aVc5+y+RSGnp;rZy9LKR#l4@!ac}C=nPp!pky$QGeKNB=Dm6c| zT$HNrUhf}BUEIBXG)qnIUO$GVF6drAmZc_luOG)!le*WBXQ|V>*9TbY)b91gb5kco z(ih1x`+2qX?D6mJvkJP?6K371H;TU}V^s?ZQb#h&p41DOWpC=q%(5@_cxJgU^>Ai+ zRO-IWa#89|UP6}oqAcMSS;8;y5_C#yhK*{3|YvKEaZ8j%2Q>s zkZ15h@_kem@UmZ!jpj>x<QaXb>oA%1ju8x9iu_%fV4OP+p~^UHgFc;UyGu()t3 z9X^cDcbT<(&2H()uTr?Lb#TaBvJMXyj60$5<7^tgTxu$m@tNn$;5W(_z2al{6cq0B zu?GqYhkWd@0xw^F&^!BWAM5dn<;^}XPxB=ozf?KmQ?93T*QFQl^s=o5g*$xg?*)ZN zz3fXKFJFGxbJ;Uq*6kI`w|Kog&Fx<9y3Z?m$ZTfa-&d;bZz(=?(ys6=A7SFoq+g5o zY4OckyjzPmXz_Y29@gU1wD^Tuyi$u-Xz`F1KSzs~Y4J%~{A?{A)Z(RDyikk#vf^G= zq{T;RaXr0Pi+i-VxXDyuz%p~$2jQP0yftivTVs%@`I&%hEs0<EJwKT!i+z!0jMROK_e%LCP$T2X6ZR= zwQ@RMpV{V2J{1?%%wMOPF1os%v3WH$7X`}~uSm5fQy0{=v^I3K1*c7&G4;YJ6)6d) zPqyM#{wFD&f*TgHg07N+)5aC~`}j^LcB2ogb8$z-~9N?FRNk z1KY2bM@viTDmD(WcMPn=<78z9R;3u;-a5sgPYG6U@J$-nMgzOsz;+ne9s@gQV6Ph( zoLqnf`QJ&3iQg_+Td@dR zJSyGnK*?>M+Cb^8-r7KLi?23NzPYeE5W0C(G*H!3^s&IP0`J=eV**uk0-@?a`RqV& zcA%8|%ntZ##xmqba4Q*B|bNTs)r;qt{)6X=4*wAyi5 zqt$|Ay{Q@;iDq5Z(UMG96>)`D6OP2js&J&5xk%MTSME&+ja&`R)kJj~@^N$;LmIt* zI+LLOZSXhlB!)tduZ96S_HI7`$>FnT++6eY|rfu@9Fnnqr#R`C!M((M6`q z4(jZjjy-T;VpXD{Gcj^^$Ek7%S4{gvD$%hn+L}ysG&eLRY8PHHZQkPOoLDU9_T}MP zSyQ)+3t!dJ+SInz+M};+Y>X$m8WZiwI6qmfN^qApah4M2v1wDMK~&|W*2R}yxx~JM zbF4Do#5t0oyEy;EsiQfYI+}M=NB<{H9d+5% z(UF@vlWq}iWt&nBY^TU-Tjc0$R$avXoabbvx==Zuf5Vm%c8`t z8Z~R9%J#UCZ^6?uy{&mvZ3*MRqKhB@#c<()jW@DJK9q1 z?0pD7;WxM^7Lk*uS2+_lL^G z{te8%|7VoN{wtV!|BcFG|3>ECAI8eCzo-+p{{6~ge=)M?*8d@8VVp|%Pb_fn|A?~K zUp(XO)?Xh36#fIuz5gC%vHvdS-v4Q3vHugyz5fAavA-yjTYq?#8n@rI%)S3nWwHNC z=HCC$%3}Y_m=VkE55HOC?cc}T`}+<4;`w&B{v`(grGxG3{8T_mA@Ly{1pOuGy zy}|#YJp5N0{4dVKzun+}Ngn=P2LDU*@b5PGUzUgeMuY$5dHDAk{KI+pZ#DQ==i%RP z@Skn)4>Idk34Y^;0MA40g@h`UXz5O4c3wF2f6=n_>Uja7A7OTRN|imAIiJN7p{s}) zgRXTxv-13(`p;l$`#ssbTlqtIA?Vv*!OYvw?ywAOr`Y~F=G=bqzPm}k&!zr+X4Wq? z=!-W3V7vo$e{g6RlJlCP?Z)axx9WM3nWoG?|L0{ChuKzMK>kqip7w@8* z^y>}!;(Z5Qzo@{hzu%?4r@*Y=WzZMjP|)?K6Z(f;>W2vZK7+m(lhyUFCiIWF)L%;I zZ#U?RZ$;?(HxT-eFqeLc&>t}9i|U&2>qZ+ zsO#zR9}@bGA>K`WbLn`5ivav(o=P~=oT-M)I!oObm!?TzWbpJ(!f4|G} zuP6KmT=u_p9&`N%w^|mrzZn14>wg=ezu%?)*9rY9gZ@h9)c*;gf7qq|EyPyk$B)rjCKGi3D#E`+Il{BH8Lq{zA^c;?f1H+H_fHf4^)CH4 zc+K^{Qq@1+|HZX}UjP3_=(oGnzn{?GYS0%CCp{)c?T@yF%%pX@X1hwrp3-u^D;)W4L_-|tetiqLO2 z=!@?}>H5nE{lhNx7ZdvZ27U3HuC9L*p?}P!{$~mO{RVyU{VZL72cZuKzFhhb68h}R zmcjbn%&Gq(p2MqcfnN$Dsgnmrv!*dW2bp6i|`p1+$KL3mFvg!H{5&HX;{^o4# z(BDSr`|q+W))#r{`Y#ar^x(Vhl8qhucM$rA zziL_B|HU&ky8ce3uOEJ&RQfk-Tx$;Yl=9bKAdIPk>gDxm_C-R!UODc_(f+T1zkd8Y z(Xv%q`k)p+LeyW$J(lfLaZ!Kbl&05TL6KR%Ug?Lku|xkIs{bhc?J6$xMVHp~%L)B{ zr4QF%5Q18KQju9d(r?)T6&L#AqcXbw973N>uuNFPK`nkcq3{2iW%2flD$(_u3H`9r z-rZ=mY`Ud!U`7f9ECn9vWZmlb2#*rERrp?^&2 zA5?Lne;;$|KTGI$EB&R}*rERvp}+4NmOZB8LVp``>i>zVf2AMJ#t!}86Z$*vvn;Ov z`TS zSNge*KWhp79ZG*d#f853j;yZ#4MLxtVwtdpgIfF^Lcd*YINtt;nN$Dggnn4*>*p&y z{xqRqdcS4y`CEK9SJ!`?(2t#xoeqMo|0=7xPLI{ zi|+*M`WF!TeJ=ISBlHg%^u_myb^T8e`U6ToSO2dg^n(vrwoAo@zW6S(uAe0IOHR#B zm*HBxjnLn!^zrtK?=kE8cN6*{m-=@Q`iBkr;yci~{tpQKdZnN1`tQ4he))rztygiO zzl%BbUncbXU2gx2g#JdQkGFp}bLxw65@Y{!ssA>izu%z0mpSz-3H`$^^{0#>j(-nX z7V8f(r~b8sJ|xJczk<-OH|RgfocgyB`azfaw-EZ<4f^8wYhC~QgnpGup#OeQpv9jd z{A0@h6fM18{x=E#X5~LtORwvX8cSS1Du4ai5?y~1;oqi1K_p1b_W@CqbFX8{H@*l6I*X#eQgg={TnF$)!^&cnvgUUZw z`~8aW4=ew(wDdtOUNnyAKgz#MOCQwYGYS74%0E~AFC+Z-D}VSV2?X8$Cc^*NM00vQ z{#E54Vp>o?{G#bFWGK+=wsForA;L%XAC6Vf)BX_3ukn!bKd9{-ewH1+KaRNm`Icqh zQY*#&Bi_Hz_aD)}^k=U`@SkbfXS4xiz5J%Ki*T^XvXL_^`=88w{VjebG3f_;EPJEY zV5Yh@1(D9j{$TvBqStX%3H)OOzk=X(1YbaKeKZ01LV{mO@FfIaO7LX_Urz9A2wqR{ z6$Ec2coV@LpM_Jrncyo4ejUMA5#0Q>IWN<{dI!9X;Ozu=d`?dBB*E7Zyo;HFSN<|; z;`*;Iz}FMJo8UJQd;`JtQE%WI34RN~^59 z`Oy7u<$wLEld-?b|Dzo|AU8?BYh~;slIvIBjMYl+d;{W>lIwS$jCD$WhJ%aXm2W7U zxcRElYrJw5+;l}Mxamq;aA!SR+*!{SH^1EAHPo}ko%L*SeRKl2v;HlvKMew0zsm(4 zAb2sso$YIJ;~RdQJKNXd`du^dlb9)Z*~tXgM_+*JccsAf(I(&%32wg0^Qyhr$@RNg z;HMLu>gQ(?JVC-@YCPbK&T z1b2)gC|*Hu^Jk;I>S*ue(+EDD;4=t5li>PjKk!)uzlh)$6Z{f_UrKQO>1p8lQ~kih z1g|FeY=YMid=9~D2|kzL^BgSAPf=&1@dP*%e7Qi3;o0{K&_df~dV8D!(ho>(k23&2 zD!Dz*0DOW+aC@8qc!lKlI0Nu2CAY^JfPY$Ydz=AykL30^1Ms^fx5pXa4ELzy^%)Ll zl;SF=YN;v_P7LW*Q1i# z;}XE1k=!1a0RF1v_P7M(KguV#JuU&|pCY+EE&+SUe97%`2{_ZQmfRkf0R9D^>1vFz zTV;BCyaLjHU2=Q80{DRB_IL%<+slfB2AsM7Cb>P10r`mMc+W=T7{Jex+#bgOewpO< zI0oFq_@X6 zV5wGedwc`xvqf>p3$9c)N^XyP0N*aTJ?;U|fr{q^PheX!-xq=WUQxVWOUGkLvc6)0l!4?ZjFCZap<|gI~DKO z_-4g-X#4@i2Q>bK;`=pzRPn`HGilyg~7x#*>PNG=8h%VU2%X z@otSjrg)#mpC2RotvzlA{Kyz{fBW+o(chfcA%$Z_KKA%zSlKfrx5wY$_%my)$j5n| zutcV}$1`EiOh|5z*Fio>nUC|j;%1rN9{&t0dza+)_#Wi5L+0bW4%sKu+v9#vo|k3% z`V5D<`kPE|kE4c_J#n1i_BbKvP8lciab71}A=BIAuCPBXm)ss#gnU-Ze4N)6pO@+F z@kY2l+$z&MuQ$Fe)7#^>VPyv;x5p$j(!e+vB%T z&O?&h1<8cm84R2y+HNS&h>VsFi5q0(;Z4KL4EIj+qkd0-EMp z05?2Q12E?d53nZtL-&eiPqGrv`i8x!F)Cd)2BdS*7?mS72CU67cM91Um5#=Mo7YxN0IOli=3AY>Wv%qYfr8?x7rFkOn?=YW|fMlr6* z-eeb(p%{~8ZT83$pqR@Sk_Bj56?1M>XvAGFG-4+SQJn-qjTb!qo<76pW7$PJ5q+G4aix5%vbVdEUUlC44o66#N*d?b;Ws$cDA)PtZGTF zi?0b;`-Ry0*{SB{M8~wb9SK<}i(A)n&-lVbXKHnVHL5nRz<0cix)pgNGx3!|V~pB2Zb# zm6ZmTjkx=@!rE<+sj0cEQk^TIDV?)vXe%<+7|)s!CLV9>YKXU|Iuh|UEgi{J!>a5f zq18L7If3Hj6f)#_0Ww6>j>NNPn8`lLWD20qM-n&9J!3j?sT>T`&=}8uAV^G75~pXY zp-;t`jR<8QW}_O&KD}oOZaf?rE)`H+Wp}B#Y2q8xnGkZwbt;uPx=57!oSae2eV(^O zU8Qq%*??Nwbi9evll0J6Etxz=nCc~-V^*IWmrWqSJB!$RyBb!stf{D&$(L906GA+> zu00WN;fD)xqQTPwIeaSla%YR#jojZCW$(Dod4ilW74i6*)s&9u1nihRC{9lr6xSyU zikl}1ikl_}io2N!&ZP_>c#lZ@6mV# z{B8*xMh34!`3#_Z8W6|%uS5BW@6$v6@T99qzYnGFC-Qj^@neX;tGLKN#O$!bW2YZN z={pdA2JwGG9P9qrW9N_SXHer%KZj6011O)@i2OZXJ0Dy>XL{}QxPB%hj`O(~~en6XLH;x-H87g@r^z^e=$D= zY*!z_?;`lU1b>j=-zNAEP&sk`fhYR(^#9*EJb5U#S3H#m+Y3)B>gmT4JYU^>IgE?D zZI|~eJv?`yr-vu>bRHz~$yfJ-^#8Z%S0nxs;-4k>XvBYm_$eBHSMhT-{+{A9G_LUQ zY>h*JU)F%blgjXmCvcC7!!L=zpmkT(QAD*z)>tC;DD8F9MQ2x0Zhw?AfI0SeCO|O6WSr^mp`d-DE|hHL-}vlIF$bz z8i(+R#-aRsG!ErIpm8Wa{B9}u@0eZw1mZ)8!*N4oHx5LZeOwV}JmTcQ`w-uaIBu8IP&toB|M@V{F8J*{ zH~r^~<6O=&iE`q%3-jGiasQ#VD@bhD5gTW1*FMC9h#y8AZ`WDGcEPoi2za~j+h<|K zpF$jO*H010`vrcx6L0UNkf@DSqg?vV%sh{LnDBEUVJ;P`Fsqln|Tx$(FS z)R_oy%mEJT$`HqIc~>Eh-}0_Q9KYpVuW`s9k3Yazt_T|u$8Ue%jW~Y$dk5n9?QcBJ z0Q<5C2NB0_f4`1+*4y76+u*mqPeL5O{aubYe*60p#PQqTF^xn0G$D@P3hzQZi1=p2 z&qBN(@v{+s1o26T??W8F75)<9_^t3`h{Kqk2tKdP@mt}gh{Lf|gi8>|Z-v(*j^7GT zY8>jV5Alzp^ba9^KH~cjpMv;H8i)Lg)DJLXpMDLc|1kP}3cp=`4oZ*TE}w(adk~+m Ur3c-uT6%c@>}y*3D^&Xb2E-XVF8}}l literal 0 HcwPel00001 diff --git a/release/src/lzma/CPP/7zip/Compress/LZMA_Lib/liblzma.a b/release/src/lzma/CPP/7zip/Compress/LZMA_Lib/liblzma.a new file mode 100644 index 0000000000000000000000000000000000000000..b9405ad04833f0b7d7910b61622d9daf6561e06e GIT binary patch literal 311436 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�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 -mipsel-uclibc-gcc (GCC) 4.2.4 -Copyright (C) 2007 Free Software Foundation, Inc. -This is free software; see the source for copying conditions. There is NO -warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - -configure:2074: $? = 0 -configure:2076: mipsel-uclibc-gcc -v &5 -Using built-in specs. -Target: mipsel-linux-uclibc -Configured with: /home/fedork/tomato/toolchain/build_dir/toolchain-mipsel_gcc4.2.4/gcc-4.2.4/configure --prefix=/opt/brcm/hndtools-mipsel-uclibc-4.2.4 --build=i486-linux-gnu --host=i486-linux-gnu --target=mipsel-linux-uclibc --with-gnu-ld --enable-target-optspace --disable-libgomp --disable-libmudflap --disable-multilib --disable-nls --disable-__cxa_atexit --enable-libssp --enable-languages=c,c++ --enable-shared --enable-threads --enable-tls -Thread model: posix -gcc version 4.2.4 -configure:2079: $? = 0 -configure:2081: mipsel-uclibc-gcc -V &5 -mipsel-uclibc-gcc: '-V' option must have argument -configure:2084: $? = 1 -configure:2107: checking for C compiler default output file name -configure:2110: mipsel-uclibc-gcc -Os -g -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:2113: $? = 0 -configure:2159: result: a.out -configure:2164: checking whether the C compiler works -configure:2190: result: yes -configure:2197: checking whether we are cross compiling -configure:2199: result: yes -configure:2202: checking for suffix of executables -configure:2204: mipsel-uclibc-gcc -o conftest -Os -g -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:2207: $? = 0 -configure:2232: result: -configure:2238: checking for suffix of object files -configure:2259: mipsel-uclibc-gcc -c -Os -g -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:2262: $? = 0 -configure:2284: result: o -configure:2288: checking whether we are using the GNU C compiler -configure:2312: mipsel-uclibc-gcc -c -Os -g -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:2318: $? = 0 -configure:2322: test -z - || test ! -s conftest.err -configure:2325: $? = 0 -configure:2328: test -s conftest.o -configure:2331: $? = 0 -configure:2344: result: yes -configure:2350: checking whether mipsel-uclibc-gcc accepts -g -configure:2371: mipsel-uclibc-gcc -c -g conftest.c >&5 -configure:2377: $? = 0 -configure:2381: test -z - || test ! -s conftest.err -configure:2384: $? = 0 -configure:2387: test -s conftest.o -configure:2390: $? = 0 -configure:2401: result: yes -configure:2418: checking for mipsel-uclibc-gcc option to accept ANSI C -configure:2488: mipsel-uclibc-gcc -c -Os -g -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:2494: $? = 0 -configure:2498: test -z - || test ! -s conftest.err -configure:2501: $? = 0 -configure:2504: test -s conftest.o -configure:2507: $? = 0 -configure:2525: result: none needed -configure:2543: mipsel-uclibc-gcc -c -Os -g -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -conftest.c:2: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'me' -configure:2549: $? = 1 -configure: failed program was: -| #ifndef __cplusplus -| choke me -| #endif -configure:2693: checking for style of include used by make -configure:2721: result: GNU -configure:2749: checking dependency style of mipsel-uclibc-gcc -configure:2839: result: none -configure:2869: checking for a BSD-compatible install -configure:2924: result: /usr/bin/install -c -configure:2938: checking for mipsel-linux-ranlib -configure:2964: result: mipsel-uclibc-ranlib -configure:3022: checking how to run the C preprocessor -configure:3057: mipsel-uclibc-gcc -E conftest.c -configure:3063: $? = 0 -configure:3095: mipsel-uclibc-gcc -E conftest.c -conftest.c:11:28: error: ac_nonexistent.h: No such file or directory -configure:3101: $? = 1 -configure: failed program was: -| /* confdefs.h. */ -| -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE "bridge-utils" -| #define VERSION "1.0.6" -| /* end confdefs.h. */ -| #include -configure:3140: result: mipsel-uclibc-gcc -E -configure:3164: mipsel-uclibc-gcc -E conftest.c -configure:3170: $? = 0 -configure:3202: mipsel-uclibc-gcc -E conftest.c -conftest.c:11:28: error: ac_nonexistent.h: No such file or directory -configure:3208: $? = 1 -configure: failed program was: -| /* confdefs.h. */ -| -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE "bridge-utils" -| #define VERSION "1.0.6" -| /* end confdefs.h. */ -| #include -configure:3252: checking for egrep -configure:3262: result: grep -E -configure:3267: checking for ANSI C header files -configure:3292: mipsel-uclibc-gcc -c -Os -g -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:3298: $? = 0 -configure:3302: test -z - || test ! -s conftest.err -configure:3305: $? = 0 -configure:3308: test -s conftest.o -configure:3311: $? = 0 -configure:3423: result: yes -configure:3447: checking for sys/types.h -configure:3463: mipsel-uclibc-gcc -c -Os -g -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:3469: $? = 0 -configure:3473: test -z - || test ! -s conftest.err -configure:3476: $? = 0 -configure:3479: test -s conftest.o -configure:3482: $? = 0 -configure:3493: result: yes -configure:3447: checking for sys/stat.h -configure:3463: mipsel-uclibc-gcc -c -Os -g -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:3469: $? = 0 -configure:3473: test -z - || test ! -s conftest.err -configure:3476: $? = 0 -configure:3479: test -s conftest.o -configure:3482: $? = 0 -configure:3493: result: yes -configure:3447: checking for stdlib.h -configure:3463: mipsel-uclibc-gcc -c -Os -g -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:3469: $? = 0 -configure:3473: test -z - || test ! -s conftest.err -configure:3476: $? = 0 -configure:3479: test -s conftest.o -configure:3482: $? = 0 -configure:3493: result: yes -configure:3447: checking for string.h -configure:3463: mipsel-uclibc-gcc -c -Os -g -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:3469: $? = 0 -configure:3473: test -z - || test ! -s conftest.err -configure:3476: $? = 0 -configure:3479: test -s conftest.o -configure:3482: $? = 0 -configure:3493: result: yes -configure:3447: checking for memory.h -configure:3463: mipsel-uclibc-gcc -c -Os -g -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:3469: $? = 0 -configure:3473: test -z - || test ! -s conftest.err -configure:3476: $? = 0 -configure:3479: test -s conftest.o -configure:3482: $? = 0 -configure:3493: result: yes -configure:3447: checking for strings.h -configure:3463: mipsel-uclibc-gcc -c -Os -g -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:3469: $? = 0 -configure:3473: test -z - || test ! -s conftest.err -configure:3476: $? = 0 -configure:3479: test -s conftest.o -configure:3482: $? = 0 -configure:3493: result: yes -configure:3447: checking for inttypes.h -configure:3463: mipsel-uclibc-gcc -c -Os -g -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:3469: $? = 0 -configure:3473: test -z - || test ! -s conftest.err -configure:3476: $? = 0 -configure:3479: test -s conftest.o -configure:3482: $? = 0 -configure:3493: result: yes -configure:3447: checking for stdint.h -configure:3463: mipsel-uclibc-gcc -c -Os -g -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:3469: $? = 0 -configure:3473: test -z - || test ! -s conftest.err -configure:3476: $? = 0 -configure:3479: test -s conftest.o -configure:3482: $? = 0 -configure:3493: result: yes -configure:3447: checking for unistd.h -configure:3463: mipsel-uclibc-gcc -c -Os -g -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:3469: $? = 0 -configure:3473: test -z - || test ! -s conftest.err -configure:3476: $? = 0 -configure:3479: test -s conftest.o -configure:3482: $? = 0 -configure:3493: result: yes -configure:3520: checking sys/ioctl.h usability -configure:3532: mipsel-uclibc-gcc -c -Os -g -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:3538: $? = 0 -configure:3542: test -z - || test ! -s conftest.err -configure:3545: $? = 0 -configure:3548: test -s conftest.o -configure:3551: $? = 0 -configure:3561: result: yes -configure:3565: checking sys/ioctl.h presence -configure:3575: mipsel-uclibc-gcc -E conftest.c -configure:3581: $? = 0 -configure:3601: result: yes -configure:3636: checking for sys/ioctl.h -configure:3643: result: yes -configure:3520: checking sys/time.h usability -configure:3532: mipsel-uclibc-gcc -c -Os -g -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:3538: $? = 0 -configure:3542: test -z - || test ! -s conftest.err -configure:3545: $? = 0 -configure:3548: test -s conftest.o -configure:3551: $? = 0 -configure:3561: result: yes -configure:3565: checking sys/time.h presence -configure:3575: mipsel-uclibc-gcc -E conftest.c -configure:3581: $? = 0 -configure:3601: result: yes -configure:3636: checking for sys/time.h -configure:3643: result: yes -configure:3657: checking for an ANSI C-conforming const -configure:3724: mipsel-uclibc-gcc -c -Os -g -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:3730: $? = 0 -configure:3734: test -z - || test ! -s conftest.err -configure:3737: $? = 0 -configure:3740: test -s conftest.o -configure:3743: $? = 0 -configure:3754: result: yes -configure:3764: checking whether time.h and sys/time.h may both be included -configure:3789: mipsel-uclibc-gcc -c -Os -g -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:3795: $? = 0 -configure:3799: test -z - || test ! -s conftest.err -configure:3802: $? = 0 -configure:3805: test -s conftest.o -configure:3808: $? = 0 -configure:3819: result: yes -configure:3831: checking whether mipsel-uclibc-gcc needs -traditional -configure:3873: result: no -configure:3880: checking for working memcmp -configure:3950: result: no -configure:3968: checking for gethostname -configure:4025: mipsel-uclibc-gcc -o conftest -Os -g -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:4031: $? = 0 -configure:4035: test -z - || test ! -s conftest.err -configure:4038: $? = 0 -configure:4041: test -s conftest -configure:4044: $? = 0 -configure:4056: result: yes -configure:3968: checking for socket -configure:4025: mipsel-uclibc-gcc -o conftest -Os -g -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:4031: $? = 0 -configure:4035: test -z - || test ! -s conftest.err -configure:4038: $? = 0 -configure:4041: test -s conftest -configure:4044: $? = 0 -configure:4056: result: yes -configure:3968: checking for strdup -configure:4025: mipsel-uclibc-gcc -o conftest -Os -g -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -conftest.c:50: warning: conflicting types for built-in function 'strdup' -configure:4031: $? = 0 -configure:4035: test -z - || test ! -s conftest.err -configure:4038: $? = 0 -configure:4041: test -s conftest -configure:4044: $? = 0 -configure:4056: result: yes -configure:3968: checking for uname -configure:4025: mipsel-uclibc-gcc -o conftest -Os -g -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:4031: $? = 0 -configure:4035: test -z - || test ! -s conftest.err -configure:4038: $? = 0 -configure:4041: test -s conftest -configure:4044: $? = 0 -configure:4056: result: yes -configure:4071: checking for if_nametoindex -configure:4128: mipsel-uclibc-gcc -o conftest -Os -g -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:4134: $? = 0 -configure:4138: test -z - || test ! -s conftest.err -configure:4141: $? = 0 -configure:4144: test -s conftest -configure:4147: $? = 0 -configure:4159: result: yes -configure:4071: checking for if_indextoname -configure:4128: mipsel-uclibc-gcc -o conftest -Os -g -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:4134: $? = 0 -configure:4138: test -z - || test ! -s conftest.err -configure:4141: $? = 0 -configure:4144: test -s conftest -configure:4147: $? = 0 -configure:4159: result: yes -configure:4180: checking sysfs/libsysfs.h usability -configure:4192: mipsel-uclibc-gcc -c -Os -g -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -conftest.c:64:28: error: sysfs/libsysfs.h: No such file or directory -configure:4198: $? = 1 -configure: failed program was: -| /* confdefs.h. */ -| -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE "bridge-utils" -| #define VERSION "1.0.6" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_SYS_IOCTL_H 1 -| #define HAVE_SYS_TIME_H 1 -| #define TIME_WITH_SYS_TIME 1 -| #define HAVE_GETHOSTNAME 1 -| #define HAVE_SOCKET 1 -| #define HAVE_STRDUP 1 -| #define HAVE_UNAME 1 -| #define HAVE_IF_NAMETOINDEX 1 -| #define HAVE_IF_INDEXTONAME 1 -| /* end confdefs.h. */ -| #include -| #if HAVE_SYS_TYPES_H -| # include -| #endif -| #if HAVE_SYS_STAT_H -| # include -| #endif -| #if STDC_HEADERS -| # include -| # include -| #else -| # if HAVE_STDLIB_H -| # include -| # endif -| #endif -| #if HAVE_STRING_H -| # if !STDC_HEADERS && HAVE_MEMORY_H -| # include -| # endif -| # include -| #endif -| #if HAVE_STRINGS_H -| # include -| #endif -| #if HAVE_INTTYPES_H -| # include -| #else -| # if HAVE_STDINT_H -| # include -| # endif -| #endif -| #if HAVE_UNISTD_H -| # include -| #endif -| #include -configure:4221: result: no -configure:4225: checking sysfs/libsysfs.h presence -configure:4235: mipsel-uclibc-gcc -E conftest.c -conftest.c:30:28: error: sysfs/libsysfs.h: No such file or directory -configure:4241: $? = 1 -configure: failed program was: -| /* confdefs.h. */ -| -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE "bridge-utils" -| #define VERSION "1.0.6" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_SYS_IOCTL_H 1 -| #define HAVE_SYS_TIME_H 1 -| #define TIME_WITH_SYS_TIME 1 -| #define HAVE_GETHOSTNAME 1 -| #define HAVE_SOCKET 1 -| #define HAVE_STRDUP 1 -| #define HAVE_UNAME 1 -| #define HAVE_IF_NAMETOINDEX 1 -| #define HAVE_IF_INDEXTONAME 1 -| /* end confdefs.h. */ -| #include -configure:4261: result: no -configure:4296: checking for sysfs/libsysfs.h -configure:4303: result: no -configure:4384: WARNING: Missing /usr/include/sysfs/libsysfs.h -configure:4503: creating ./config.status - -## ---------------------- ## -## Running config.status. ## -## ---------------------- ## - -This file was extended by config.status, which was -generated by GNU Autoconf 2.59. Invocation command line was - - CONFIG_FILES = - CONFIG_HEADERS = - CONFIG_LINKS = - CONFIG_COMMANDS = - $ ./config.status - -on vicente-P5K-E - -config.status:696: creating doc/Makefile -config.status:696: creating libbridge/Makefile -config.status:696: creating brctl/Makefile -config.status:696: creating Makefile -config.status:696: creating bridge-utils.spec -config.status:800: creating libbridge/config.h -config.status:924: libbridge/config.h is unchanged -config.status:1104: executing depfiles commands - -## ---------------- ## -## Cache variables. ## -## ---------------- ## - -ac_cv_c_compiler_gnu=yes -ac_cv_c_const=yes -ac_cv_env_CC_set=set -ac_cv_env_CC_value=mipsel-uclibc-gcc -ac_cv_env_CFLAGS_set=set -ac_cv_env_CFLAGS_value='-Os -g -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 ' -ac_cv_env_CPPFLAGS_set= -ac_cv_env_CPPFLAGS_value= -ac_cv_env_CPP_set= -ac_cv_env_CPP_value= -ac_cv_env_LDFLAGS_set= -ac_cv_env_LDFLAGS_value= -ac_cv_env_build_alias_set=set -ac_cv_env_build_alias_value=x86_64-linux-gnu -ac_cv_env_host_alias_set=set -ac_cv_env_host_alias_value=mipsel-linux -ac_cv_env_target_alias_set= -ac_cv_env_target_alias_value= -ac_cv_exeext= -ac_cv_func_gethostname=yes -ac_cv_func_if_indextoname=yes -ac_cv_func_if_nametoindex=yes -ac_cv_func_malloc_0_nonnull=yes -ac_cv_func_memcmp_working=no -ac_cv_func_socket=yes -ac_cv_func_strdup=yes -ac_cv_func_uname=yes -ac_cv_header_inttypes_h=yes -ac_cv_header_memory_h=yes -ac_cv_header_stdc=yes -ac_cv_header_stdint_h=yes -ac_cv_header_stdlib_h=yes -ac_cv_header_string_h=yes -ac_cv_header_strings_h=yes -ac_cv_header_sys_ioctl_h=yes -ac_cv_header_sys_stat_h=yes -ac_cv_header_sys_time_h=yes -ac_cv_header_sys_types_h=yes -ac_cv_header_sysfs_libsysfs_h=no -ac_cv_header_time=yes -ac_cv_header_unistd_h=yes -ac_cv_objext=o -ac_cv_path_install='/usr/bin/install -c' -ac_cv_prog_AWK=gawk -ac_cv_prog_CC=mipsel-uclibc-gcc -ac_cv_prog_CPP='mipsel-uclibc-gcc -E' -ac_cv_prog_RANLIB=mipsel-uclibc-ranlib -ac_cv_prog_STRIP='mipsel-uclibc-strip -R .note -R .comment' -ac_cv_prog_cc_g=yes -ac_cv_prog_cc_stdc= -ac_cv_prog_egrep='grep -E' -ac_cv_prog_gcc_traditional=no -ac_cv_prog_make_make_set=yes -am_cv_CC_dependencies_compiler_type=none - -## ----------------- ## -## Output variables. ## -## ----------------- ## - -ACLOCAL='aclocal-1.9' -AMDEPBACKSLASH='\' -AMDEP_FALSE='#' -AMDEP_TRUE='' -AMTAR='tar' -AUTOCONF='autoconf' -AUTOHEADER='autoheader' -AUTOMAKE='automake-1.9' -AWK='gawk' -CC='mipsel-uclibc-gcc' -CCDEPMODE='depmode=none' -CFLAGS='-Os -g -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 ' -CPP='mipsel-uclibc-gcc -E' -CPPFLAGS='' -CYGPATH_W='echo' -DEFS='-DHAVE_CONFIG_H' -DEPDIR='.deps' -ECHO_C='' -ECHO_N='-n' -ECHO_T='' -EGREP='grep -E' -EXEEXT='' -INSTALL_DATA='${INSTALL} -m 644' -INSTALL_PROGRAM='${INSTALL}' -INSTALL_SCRIPT='${INSTALL}' -INSTALL_STRIP_PROGRAM='${SHELL} $(install_sh) -c -s' -KERNEL_HEADERS='/home/vicente/tomato/release/src-rt/linux/linux-2.6/include' -LDFLAGS='' -LIBOBJS=' memcmp$U.o' -LIBS='' -LTLIBOBJS=' memcmp$U.lo' -MAKEINFO='makeinfo' -OBJEXT='o' -PACKAGE='bridge-utils' -PACKAGE_BUGREPORT='' -PACKAGE_NAME='' -PACKAGE_STRING='' -PACKAGE_TARNAME='' -PACKAGE_VERSION='' -PATH_SEPARATOR=':' -RANLIB='mipsel-uclibc-ranlib' -SET_MAKE='' -SHELL='/bin/sh' -STRIP='mipsel-uclibc-strip -R .note -R .comment' -VERSION='1.0.6' -ac_ct_CC='' -ac_ct_RANLIB='' -ac_ct_STRIP='' -am__fastdepCC_FALSE='' -am__fastdepCC_TRUE='#' -am__include='include' -am__leading_dot='.' -am__quote='' -am__tar='${AMTAR} chof - "$$tardir"' -am__untar='${AMTAR} xf -' -bindir='${exec_prefix}/bin' -build_alias='x86_64-linux-gnu' -datadir='${prefix}/share' -exec_prefix='${prefix}' -host_alias='mipsel-linux' -includedir='${prefix}/include' -infodir='${prefix}/info' -install_sh='/home/vicente/tomato/release/src/router/bridge/install-sh' -libdir='${exec_prefix}/lib' -libexecdir='${exec_prefix}/libexec' -localstatedir='${prefix}/var' -mandir='${prefix}/man' -mkdir_p='mkdir -p --' -oldincludedir='/usr/include' -prefix='' -program_transform_name='s,x,x,' -sbindir='${exec_prefix}/sbin' -sharedstatedir='${prefix}/com' -sysconfdir='${prefix}/etc' -target_alias='' - -## ----------- ## -## confdefs.h. ## -## ----------- ## - -#define HAVE_GETHOSTNAME 1 -#define HAVE_IF_INDEXTONAME 1 -#define HAVE_IF_NAMETOINDEX 1 -#define HAVE_INTTYPES_H 1 -#define HAVE_MEMORY_H 1 -#define HAVE_SOCKET 1 -#define HAVE_STDINT_H 1 -#define HAVE_STDLIB_H 1 -#define HAVE_STRDUP 1 -#define HAVE_STRINGS_H 1 -#define HAVE_STRING_H 1 -#define HAVE_SYS_IOCTL_H 1 -#define HAVE_SYS_STAT_H 1 -#define HAVE_SYS_TIME_H 1 -#define HAVE_SYS_TYPES_H 1 -#define HAVE_UNAME 1 -#define HAVE_UNISTD_H 1 -#define PACKAGE "bridge-utils" -#define PACKAGE_BUGREPORT "" -#define PACKAGE_NAME "" -#define PACKAGE_STRING "" -#define PACKAGE_TARNAME "" -#define PACKAGE_VERSION "" -#define STDC_HEADERS 1 -#define TIME_WITH_SYS_TIME 1 -#define VERSION "1.0.6" - -configure: exit 0 diff --git a/release/src/router/bridge/config.status b/release/src/router/bridge/config.status deleted file mode 100755 index e3f5ce0c56..0000000000 --- a/release/src/router/bridge/config.status +++ /dev/null @@ -1,1195 +0,0 @@ -#! /bin/sh -# Generated by configure. -# Run this file to recreate the current configuration. -# Compiler output produced by configure, useful for debugging -# configure, is in config.log if it exists. - -debug=false -ac_cs_recheck=false -ac_cs_silent=false -SHELL=${CONFIG_SHELL-/bin/sh} -## --------------------- ## -## M4sh Initialization. ## -## --------------------- ## - -# Be Bourne compatible -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then - emulate sh - NULLCMD=: - # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which - # is contrary to our usage. Disable this feature. - alias -g '${1+"$@"}'='"$@"' -elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then - set -o posix -fi -DUALCASE=1; export DUALCASE # for MKS sh - -# Support unset when possible. -if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then - as_unset=unset -else - as_unset=false -fi - - -# Work around bugs in pre-3.0 UWIN ksh. -$as_unset ENV MAIL MAILPATH -PS1='$ ' -PS2='> ' -PS4='+ ' - -# NLS nuisances. -for as_var in \ - LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \ - LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \ - LC_TELEPHONE LC_TIME -do - if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then - eval $as_var=C; export $as_var - else - $as_unset $as_var - fi -done - -# Required to use basename. -if expr a : '\(a\)' >/dev/null 2>&1; then - as_expr=expr -else - as_expr=false -fi - -if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then - as_basename=basename -else - as_basename=false -fi - - -# Name of the executable. -as_me=`$as_basename "$0" || -$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ - X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)$' \| \ - . : '\(.\)' 2>/dev/null || -echo X/"$0" | - sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; } - /^X\/\(\/\/\)$/{ s//\1/; q; } - /^X\/\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - - -# PATH needs CR, and LINENO needs CR and PATH. -# Avoid depending upon Character Ranges. -as_cr_letters='abcdefghijklmnopqrstuvwxyz' -as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' -as_cr_Letters=$as_cr_letters$as_cr_LETTERS -as_cr_digits='0123456789' -as_cr_alnum=$as_cr_Letters$as_cr_digits - -# The user is always right. -if test "${PATH_SEPARATOR+set}" != set; then - echo "#! /bin/sh" >conf$$.sh - echo "exit 0" >>conf$$.sh - chmod +x conf$$.sh - if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then - PATH_SEPARATOR=';' - else - PATH_SEPARATOR=: - fi - rm -f conf$$.sh -fi - - - as_lineno_1=$LINENO - as_lineno_2=$LINENO - as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` - test "x$as_lineno_1" != "x$as_lineno_2" && - test "x$as_lineno_3" = "x$as_lineno_2" || { - # Find who we are. Look in the path if we contain no path at all - # relative or not. - case $0 in - *[\\/]* ) as_myself=$0 ;; - *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break -done - - ;; - esac - # We did not find ourselves, most probably we were run as `sh COMMAND' - # in which case we are not to be found in the path. - if test "x$as_myself" = x; then - as_myself=$0 - fi - if test ! -f "$as_myself"; then - { { echo "$as_me:$LINENO: error: cannot find myself; rerun with an absolute path" >&5 -echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2;} - { (exit 1); exit 1; }; } - fi - case $CONFIG_SHELL in - '') - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for as_base in sh bash ksh sh5; do - case $as_dir in - /*) - if ("$as_dir/$as_base" -c ' - as_lineno_1=$LINENO - as_lineno_2=$LINENO - as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` - test "x$as_lineno_1" != "x$as_lineno_2" && - test "x$as_lineno_3" = "x$as_lineno_2" ') 2>/dev/null; then - $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { BASH_ENV=; export BASH_ENV; } - $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; } - CONFIG_SHELL=$as_dir/$as_base - export CONFIG_SHELL - exec "$CONFIG_SHELL" "$0" ${1+"$@"} - fi;; - esac - done -done -;; - esac - - # Create $as_me.lineno as a copy of $as_myself, but with $LINENO - # uniformly replaced by the line number. The first 'sed' inserts a - # line-number line before each line; the second 'sed' does the real - # work. The second script uses 'N' to pair each line-number line - # with the numbered line, and appends trailing '-' during - # substitution so that $LINENO is not a special case at line end. - # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the - # second 'sed' script. Blame Lee E. McMahon for sed's syntax. :-) - sed '=' <$as_myself | - sed ' - N - s,$,-, - : loop - s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3, - t loop - s,-$,, - s,^['$as_cr_digits']*\n,, - ' >$as_me.lineno && - chmod +x $as_me.lineno || - { { echo "$as_me:$LINENO: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&5 -echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2;} - { (exit 1); exit 1; }; } - - # Don't try to exec as it changes $[0], causing all sort of problems - # (the dirname of $[0] is not the place where we might find the - # original and so on. Autoconf is especially sensible to this). - . ./$as_me.lineno - # Exit status is that of the last command. - exit -} - - -case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in - *c*,-n*) ECHO_N= ECHO_C=' -' ECHO_T=' ' ;; - *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;; - *) ECHO_N= ECHO_C='\c' ECHO_T= ;; -esac - -if expr a : '\(a\)' >/dev/null 2>&1; then - as_expr=expr -else - as_expr=false -fi - -rm -f conf$$ conf$$.exe conf$$.file -echo >conf$$.file -if ln -s conf$$.file conf$$ 2>/dev/null; then - # We could just check for DJGPP; but this test a) works b) is more generic - # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04). - if test -f conf$$.exe; then - # Don't use ln at all; we don't have any links - as_ln_s='cp -p' - else - as_ln_s='ln -s' - fi -elif ln conf$$.file conf$$ 2>/dev/null; then - as_ln_s=ln -else - as_ln_s='cp -p' -fi -rm -f conf$$ conf$$.exe conf$$.file - -if mkdir -p . 2>/dev/null; then - as_mkdir_p=: -else - test -d ./-p && rmdir ./-p - as_mkdir_p=false -fi - -as_executable_p="test -f" - -# Sed expression to map a string onto a valid CPP name. -as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" - -# Sed expression to map a string onto a valid variable name. -as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" - - -# IFS -# We need space, tab and new line, in precisely that order. -as_nl=' -' -IFS=" $as_nl" - -# CDPATH. -$as_unset CDPATH - -exec 6>&1 - -# Open the log real soon, to keep \$[0] and so on meaningful, and to -# report actual input values of CONFIG_FILES etc. instead of their -# values after options handling. Logging --version etc. is OK. -exec 5>>config.log -{ - echo - sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX -## Running $as_me. ## -_ASBOX -} >&5 -cat >&5 <<_CSEOF - -This file was extended by $as_me, which was -generated by GNU Autoconf 2.59. Invocation command line was - - CONFIG_FILES = $CONFIG_FILES - CONFIG_HEADERS = $CONFIG_HEADERS - CONFIG_LINKS = $CONFIG_LINKS - CONFIG_COMMANDS = $CONFIG_COMMANDS - $ $0 $@ - -_CSEOF -echo "on `(hostname || uname -n) 2>/dev/null | sed 1q`" >&5 -echo >&5 -config_files=" doc/Makefile libbridge/Makefile brctl/Makefile Makefile bridge-utils.spec" -config_headers=" libbridge/config.h" -config_commands=" depfiles" - -ac_cs_usage="\ -\`$as_me' instantiates files from templates according to the -current configuration. - -Usage: $0 [OPTIONS] [FILE]... - - -h, --help print this help, then exit - -V, --version print version number, then exit - -q, --quiet do not print progress messages - -d, --debug don't remove temporary files - --recheck update $as_me by reconfiguring in the same conditions - --file=FILE[:TEMPLATE] - instantiate the configuration file FILE - --header=FILE[:TEMPLATE] - instantiate the configuration header FILE - -Configuration files: -$config_files - -Configuration headers: -$config_headers - -Configuration commands: -$config_commands - -Report bugs to ." -ac_cs_version="\ -config.status -configured by ./configure, generated by GNU Autoconf 2.59, - with options \"'--host=mipsel-linux' '--build=x86_64-linux-gnu' '--prefix=' '--with-linux-headers=/home/vicente/tomato/release/src-rt/linux/linux-2.6/include' 'CC=mipsel-uclibc-gcc' 'CFLAGS=-Os -g -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 ' 'build_alias=x86_64-linux-gnu' 'host_alias=mipsel-linux'\" - -Copyright (C) 2003 Free Software Foundation, Inc. -This config.status script is free software; the Free Software Foundation -gives unlimited permission to copy, distribute and modify it." -srcdir=. -INSTALL="/usr/bin/install -c" -# If no file are specified by the user, then we need to provide default -# value. By we need to know if files were specified by the user. -ac_need_defaults=: -while test $# != 0 -do - case $1 in - --*=*) - ac_option=`expr "x$1" : 'x\([^=]*\)='` - ac_optarg=`expr "x$1" : 'x[^=]*=\(.*\)'` - ac_shift=: - ;; - -*) - ac_option=$1 - ac_optarg=$2 - ac_shift=shift - ;; - *) # This is not an option, so the user has probably given explicit - # arguments. - ac_option=$1 - ac_need_defaults=false;; - esac - - case $ac_option in - # Handling of the options. - -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) - ac_cs_recheck=: ;; - --version | --vers* | -V ) - echo "$ac_cs_version"; exit 0 ;; - --he | --h) - # Conflict between --help and --header - { { echo "$as_me:$LINENO: error: ambiguous option: $1 -Try \`$0 --help' for more information." >&5 -echo "$as_me: error: ambiguous option: $1 -Try \`$0 --help' for more information." >&2;} - { (exit 1); exit 1; }; };; - --help | --hel | -h ) - echo "$ac_cs_usage"; exit 0 ;; - --debug | --d* | -d ) - debug=: ;; - --file | --fil | --fi | --f ) - $ac_shift - CONFIG_FILES="$CONFIG_FILES $ac_optarg" - ac_need_defaults=false;; - --header | --heade | --head | --hea ) - $ac_shift - CONFIG_HEADERS="$CONFIG_HEADERS $ac_optarg" - ac_need_defaults=false;; - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil | --si | --s) - ac_cs_silent=: ;; - - # This is an error. - -*) { { echo "$as_me:$LINENO: error: unrecognized option: $1 -Try \`$0 --help' for more information." >&5 -echo "$as_me: error: unrecognized option: $1 -Try \`$0 --help' for more information." >&2;} - { (exit 1); exit 1; }; } ;; - - *) ac_config_targets="$ac_config_targets $1" ;; - - esac - shift -done - -ac_configure_extra_args= - -if $ac_cs_silent; then - exec 6>/dev/null - ac_configure_extra_args="$ac_configure_extra_args --silent" -fi - -if $ac_cs_recheck; then - echo "running /bin/sh ./configure " '--host=mipsel-linux' '--build=x86_64-linux-gnu' '--prefix=' '--with-linux-headers=/home/vicente/tomato/release/src-rt/linux/linux-2.6/include' 'CC=mipsel-uclibc-gcc' 'CFLAGS=-Os -g -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 ' 'build_alias=x86_64-linux-gnu' 'host_alias=mipsel-linux' $ac_configure_extra_args " --no-create --no-recursion" >&6 - exec /bin/sh ./configure '--host=mipsel-linux' '--build=x86_64-linux-gnu' '--prefix=' '--with-linux-headers=/home/vicente/tomato/release/src-rt/linux/linux-2.6/include' 'CC=mipsel-uclibc-gcc' 'CFLAGS=-Os -g -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 ' 'build_alias=x86_64-linux-gnu' 'host_alias=mipsel-linux' $ac_configure_extra_args --no-create --no-recursion -fi - -# -# INIT-COMMANDS section. -# - -AMDEP_TRUE="" ac_aux_dir="." - -for ac_config_target in $ac_config_targets -do - case "$ac_config_target" in - # Handling of arguments. - "doc/Makefile" ) CONFIG_FILES="$CONFIG_FILES doc/Makefile" ;; - "libbridge/Makefile" ) CONFIG_FILES="$CONFIG_FILES libbridge/Makefile" ;; - "brctl/Makefile" ) CONFIG_FILES="$CONFIG_FILES brctl/Makefile" ;; - "Makefile" ) CONFIG_FILES="$CONFIG_FILES Makefile" ;; - "bridge-utils.spec" ) CONFIG_FILES="$CONFIG_FILES bridge-utils.spec" ;; - "depfiles" ) CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;; - "libbridge/config.h" ) CONFIG_HEADERS="$CONFIG_HEADERS libbridge/config.h" ;; - *) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5 -echo "$as_me: error: invalid argument: $ac_config_target" >&2;} - { (exit 1); exit 1; }; };; - esac -done - -# If the user did not use the arguments to specify the items to instantiate, -# then the envvar interface is used. Set only those that are not. -# We use the long form for the default assignment because of an extremely -# bizarre bug on SunOS 4.1.3. -if $ac_need_defaults; then - test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files - test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers - test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands -fi - -# Have a temporary directory for convenience. Make it in the build tree -# simply because there is no reason to put it here, and in addition, -# creating and moving files from /tmp can sometimes cause problems. -# Create a temporary directory, and hook for its removal unless debugging. -$debug || -{ - trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' 0 - trap '{ (exit 1); exit 1; }' 1 2 13 15 -} - -# Create a (secure) tmp directory for tmp files. - -{ - tmp=`(umask 077 && mktemp -d -q "./confstatXXXXXX") 2>/dev/null` && - test -n "$tmp" && test -d "$tmp" -} || -{ - tmp=./confstat$$-$RANDOM - (umask 077 && mkdir $tmp) -} || -{ - echo "$me: cannot create a temporary directory in ." >&2 - { (exit 1); exit 1; } -} - - -# -# CONFIG_FILES section. -# - -# No need to generate the scripts if there are no CONFIG_FILES. -# This happens for instance when ./config.status config.h -if test -n "$CONFIG_FILES"; then - # Protect against being on the right side of a sed subst in config.status. - sed 's/,@/@@/; s/@,/@@/; s/,;t t$/@;t t/; /@;t t$/s/[\\&,]/\\&/g; - s/@@/,@/; s/@@/@,/; s/@;t t$/,;t t/' >$tmp/subs.sed <<\CEOF -s,@SHELL@,/bin/sh,;t t -s,@PATH_SEPARATOR@,:,;t t -s,@PACKAGE_NAME@,,;t t -s,@PACKAGE_TARNAME@,,;t t -s,@PACKAGE_VERSION@,,;t t -s,@PACKAGE_STRING@,,;t t -s,@PACKAGE_BUGREPORT@,,;t t -s,@exec_prefix@,${prefix},;t t -s,@prefix@,,;t t -s,@program_transform_name@,s,x,x,,;t t -s,@bindir@,${exec_prefix}/bin,;t t -s,@sbindir@,${exec_prefix}/sbin,;t t -s,@libexecdir@,${exec_prefix}/libexec,;t t -s,@datadir@,${prefix}/share,;t t -s,@sysconfdir@,${prefix}/etc,;t t -s,@sharedstatedir@,${prefix}/com,;t t -s,@localstatedir@,${prefix}/var,;t t -s,@libdir@,${exec_prefix}/lib,;t t -s,@includedir@,${prefix}/include,;t t -s,@oldincludedir@,/usr/include,;t t -s,@infodir@,${prefix}/info,;t t -s,@mandir@,${prefix}/man,;t t -s,@build_alias@,x86_64-linux-gnu,;t t -s,@host_alias@,mipsel-linux,;t t -s,@target_alias@,,;t t -s,@DEFS@,-DHAVE_CONFIG_H,;t t -s,@ECHO_C@,,;t t -s,@ECHO_N@,-n,;t t -s,@ECHO_T@,,;t t -s,@LIBS@,,;t t -s,@INSTALL_PROGRAM@,${INSTALL},;t t -s,@INSTALL_SCRIPT@,${INSTALL},;t t -s,@INSTALL_DATA@,${INSTALL} -m 644,;t t -s,@CYGPATH_W@,echo,;t t -s,@PACKAGE@,bridge-utils,;t t -s,@VERSION@,1.0.6,;t t -s,@ACLOCAL@,aclocal-1.9,;t t -s,@AUTOCONF@,autoconf,;t t -s,@AUTOMAKE@,automake-1.9,;t t -s,@AUTOHEADER@,autoheader,;t t -s,@MAKEINFO@,makeinfo,;t t -s,@install_sh@,/home/vicente/tomato/release/src/router/bridge/install-sh,;t t -s,@STRIP@,mipsel-uclibc-strip -R .note -R .comment,;t t -s,@ac_ct_STRIP@,,;t t -s,@INSTALL_STRIP_PROGRAM@,${SHELL} $(install_sh) -c -s,;t t -s,@mkdir_p@,mkdir -p --,;t t -s,@AWK@,gawk,;t t -s,@SET_MAKE@,,;t t -s,@am__leading_dot@,.,;t t -s,@AMTAR@,tar,;t t -s,@am__tar@,${AMTAR} chof - "$$tardir",;t t -s,@am__untar@,${AMTAR} xf -,;t t -s,@CC@,mipsel-uclibc-gcc,;t t -s,@CFLAGS@,-Os -g -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 ,;t t -s,@LDFLAGS@,,;t t -s,@CPPFLAGS@,,;t t -s,@ac_ct_CC@,,;t t -s,@EXEEXT@,,;t t -s,@OBJEXT@,o,;t t -s,@DEPDIR@,.deps,;t t -s,@am__include@,include,;t t -s,@am__quote@,,;t t -s,@AMDEP_TRUE@,,;t t -s,@AMDEP_FALSE@,#,;t t -s,@AMDEPBACKSLASH@,\,;t t -s,@CCDEPMODE@,depmode=none,;t t -s,@am__fastdepCC_TRUE@,#,;t t -s,@am__fastdepCC_FALSE@,,;t t -s,@RANLIB@,mipsel-uclibc-ranlib,;t t -s,@ac_ct_RANLIB@,,;t t -s,@CPP@,mipsel-uclibc-gcc -E,;t t -s,@EGREP@,grep -E,;t t -s,@LIBOBJS@, memcmp$U.o,;t t -s,@KERNEL_HEADERS@,/home/vicente/tomato/release/src-rt/linux/linux-2.6/include,;t t -s,@LTLIBOBJS@, memcmp$U.lo,;t t -CEOF - - # Split the substitutions into bite-sized pieces for seds with - # small command number limits, like on Digital OSF/1 and HP-UX. - ac_max_sed_lines=48 - ac_sed_frag=1 # Number of current file. - ac_beg=1 # First line for current file. - ac_end=$ac_max_sed_lines # Line after last line for current file. - ac_more_lines=: - ac_sed_cmds= - while $ac_more_lines; do - if test $ac_beg -gt 1; then - sed "1,${ac_beg}d; ${ac_end}q" $tmp/subs.sed >$tmp/subs.frag - else - sed "${ac_end}q" $tmp/subs.sed >$tmp/subs.frag - fi - if test ! -s $tmp/subs.frag; then - ac_more_lines=false - else - # The purpose of the label and of the branching condition is to - # speed up the sed processing (if there are no `@' at all, there - # is no need to browse any of the substitutions). - # These are the two extra sed commands mentioned above. - (echo ':t - /@[a-zA-Z_][a-zA-Z_0-9]*@/!b' && cat $tmp/subs.frag) >$tmp/subs-$ac_sed_frag.sed - if test -z "$ac_sed_cmds"; then - ac_sed_cmds="sed -f $tmp/subs-$ac_sed_frag.sed" - else - ac_sed_cmds="$ac_sed_cmds | sed -f $tmp/subs-$ac_sed_frag.sed" - fi - ac_sed_frag=`expr $ac_sed_frag + 1` - ac_beg=$ac_end - ac_end=`expr $ac_end + $ac_max_sed_lines` - fi - done - if test -z "$ac_sed_cmds"; then - ac_sed_cmds=cat - fi -fi # test -n "$CONFIG_FILES" - -for ac_file in : $CONFIG_FILES; do test "x$ac_file" = x: && continue - # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in". - case $ac_file in - - | *:- | *:-:* ) # input from stdin - cat >$tmp/stdin - ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; - *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; - * ) ac_file_in=$ac_file.in ;; - esac - - # Compute @srcdir@, @top_srcdir@, and @INSTALL@ for subdirectories. - ac_dir=`(dirname "$ac_file") 2>/dev/null || -$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$ac_file" : 'X\(//\)[^/]' \| \ - X"$ac_file" : 'X\(//\)$' \| \ - X"$ac_file" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$ac_file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - { if $as_mkdir_p; then - mkdir -p "$ac_dir" - else - as_dir="$ac_dir" - as_dirs= - while test ! -d "$as_dir"; do - as_dirs="$as_dir $as_dirs" - as_dir=`(dirname "$as_dir") 2>/dev/null || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - done - test ! -n "$as_dirs" || mkdir $as_dirs - fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5 -echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;} - { (exit 1); exit 1; }; }; } - - ac_builddir=. - -if test "$ac_dir" != .; then - ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` - # A "../" for each directory in $ac_dir_suffix. - ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'` -else - ac_dir_suffix= ac_top_builddir= -fi - -case $srcdir in - .) # No --srcdir option. We are building in place. - ac_srcdir=. - if test -z "$ac_top_builddir"; then - ac_top_srcdir=. - else - ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'` - fi ;; - [\\/]* | ?:[\\/]* ) # Absolute path. - ac_srcdir=$srcdir$ac_dir_suffix; - ac_top_srcdir=$srcdir ;; - *) # Relative path. - ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix - ac_top_srcdir=$ac_top_builddir$srcdir ;; -esac - -# Do not use `cd foo && pwd` to compute absolute paths, because -# the directories may not exist. -case `pwd` in -.) ac_abs_builddir="$ac_dir";; -*) - case "$ac_dir" in - .) ac_abs_builddir=`pwd`;; - [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";; - *) ac_abs_builddir=`pwd`/"$ac_dir";; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_builddir=${ac_top_builddir}.;; -*) - case ${ac_top_builddir}. in - .) ac_abs_top_builddir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;; - *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_srcdir=$ac_srcdir;; -*) - case $ac_srcdir in - .) ac_abs_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;; - *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_srcdir=$ac_top_srcdir;; -*) - case $ac_top_srcdir in - .) ac_abs_top_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;; - *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;; - esac;; -esac - - - case $INSTALL in - [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;; - *) ac_INSTALL=$ac_top_builddir$INSTALL ;; - esac - - if test x"$ac_file" != x-; then - { echo "$as_me:$LINENO: creating $ac_file" >&5 -echo "$as_me: creating $ac_file" >&6;} - rm -f "$ac_file" - fi - # Let's still pretend it is `configure' which instantiates (i.e., don't - # use $as_me), people would be surprised to read: - # /* config.h. Generated by config.status. */ - if test x"$ac_file" = x-; then - configure_input= - else - configure_input="$ac_file. " - fi - configure_input=$configure_input"Generated from `echo $ac_file_in | - sed 's,.*/,,'` by configure." - - # First look for the input files in the build tree, otherwise in the - # src tree. - ac_file_inputs=`IFS=: - for f in $ac_file_in; do - case $f in - -) echo $tmp/stdin ;; - [\\/$]*) - # Absolute (can't be DOS-style, as IFS=:) - test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 -echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - echo "$f";; - *) # Relative - if test -f "$f"; then - # Build tree - echo "$f" - elif test -f "$srcdir/$f"; then - # Source tree - echo "$srcdir/$f" - else - # /dev/null tree - { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 -echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - fi;; - esac - done` || { (exit 1); exit 1; } - sed "/^[ ]*VPATH[ ]*=/{ -s/:*\$(srcdir):*/:/; -s/:*\${srcdir}:*/:/; -s/:*@srcdir@:*/:/; -s/^\([^=]*=[ ]*\):*/\1/; -s/:*$//; -s/^[^=]*=[ ]*$//; -} - -:t -/@[a-zA-Z_][a-zA-Z_0-9]*@/!b -s,@configure_input@,$configure_input,;t t -s,@srcdir@,$ac_srcdir,;t t -s,@abs_srcdir@,$ac_abs_srcdir,;t t -s,@top_srcdir@,$ac_top_srcdir,;t t -s,@abs_top_srcdir@,$ac_abs_top_srcdir,;t t -s,@builddir@,$ac_builddir,;t t -s,@abs_builddir@,$ac_abs_builddir,;t t -s,@top_builddir@,$ac_top_builddir,;t t -s,@abs_top_builddir@,$ac_abs_top_builddir,;t t -s,@INSTALL@,$ac_INSTALL,;t t -" $ac_file_inputs | (eval "$ac_sed_cmds") >$tmp/out - rm -f $tmp/stdin - if test x"$ac_file" != x-; then - mv $tmp/out $ac_file - else - cat $tmp/out - rm -f $tmp/out - fi - -done - -# -# CONFIG_HEADER section. -# - -# These sed commands are passed to sed as "A NAME B NAME C VALUE D", where -# NAME is the cpp macro being defined and VALUE is the value it is being given. -# -# ac_d sets the value in "#define NAME VALUE" lines. -ac_dA='s,^\([ ]*\)#\([ ]*define[ ][ ]*\)' -ac_dB='[ ].*$,\1#\2' -ac_dC=' ' -ac_dD=',;t' -# ac_u turns "#undef NAME" without trailing blanks into "#define NAME VALUE". -ac_uA='s,^\([ ]*\)#\([ ]*\)undef\([ ][ ]*\)' -ac_uB='$,\1#\2define\3' -ac_uC=' ' -ac_uD=',;t' - -for ac_file in : $CONFIG_HEADERS; do test "x$ac_file" = x: && continue - # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in". - case $ac_file in - - | *:- | *:-:* ) # input from stdin - cat >$tmp/stdin - ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; - *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; - * ) ac_file_in=$ac_file.in ;; - esac - - test x"$ac_file" != x- && { echo "$as_me:$LINENO: creating $ac_file" >&5 -echo "$as_me: creating $ac_file" >&6;} - - # First look for the input files in the build tree, otherwise in the - # src tree. - ac_file_inputs=`IFS=: - for f in $ac_file_in; do - case $f in - -) echo $tmp/stdin ;; - [\\/$]*) - # Absolute (can't be DOS-style, as IFS=:) - test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 -echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - # Do quote $f, to prevent DOS paths from being IFS'd. - echo "$f";; - *) # Relative - if test -f "$f"; then - # Build tree - echo "$f" - elif test -f "$srcdir/$f"; then - # Source tree - echo "$srcdir/$f" - else - # /dev/null tree - { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 -echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - fi;; - esac - done` || { (exit 1); exit 1; } - # Remove the trailing spaces. - sed 's/[ ]*$//' $ac_file_inputs >$tmp/in - - # Handle all the #define templates only if necessary. - if grep "^[ ]*#[ ]*define" $tmp/in >/dev/null; then - # If there are no defines, we may have an empty if/fi - : - cat >$tmp/defines.sed <$tmp/out - rm -f $tmp/in - mv $tmp/out $tmp/in - - fi # grep - - # Handle all the #undef templates - cat >$tmp/undefs.sed <$tmp/out - rm -f $tmp/in - mv $tmp/out $tmp/in - - # Let's still pretend it is `configure' which instantiates (i.e., don't - # use $as_me), people would be surprised to read: - # /* config.h. Generated by config.status. */ - if test x"$ac_file" = x-; then - echo "/* Generated by configure. */" >$tmp/config.h - else - echo "/* $ac_file. Generated by configure. */" >$tmp/config.h - fi - cat $tmp/in >>$tmp/config.h - rm -f $tmp/in - if test x"$ac_file" != x-; then - if diff $ac_file $tmp/config.h >/dev/null 2>&1; then - { echo "$as_me:$LINENO: $ac_file is unchanged" >&5 -echo "$as_me: $ac_file is unchanged" >&6;} - else - ac_dir=`(dirname "$ac_file") 2>/dev/null || -$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$ac_file" : 'X\(//\)[^/]' \| \ - X"$ac_file" : 'X\(//\)$' \| \ - X"$ac_file" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$ac_file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - { if $as_mkdir_p; then - mkdir -p "$ac_dir" - else - as_dir="$ac_dir" - as_dirs= - while test ! -d "$as_dir"; do - as_dirs="$as_dir $as_dirs" - as_dir=`(dirname "$as_dir") 2>/dev/null || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - done - test ! -n "$as_dirs" || mkdir $as_dirs - fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5 -echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;} - { (exit 1); exit 1; }; }; } - - rm -f $ac_file - mv $tmp/config.h $ac_file - fi - else - cat $tmp/config.h - rm -f $tmp/config.h - fi -# Compute $ac_file's index in $config_headers. -_am_stamp_count=1 -for _am_header in $config_headers :; do - case $_am_header in - $ac_file | $ac_file:* ) - break ;; - * ) - _am_stamp_count=`expr $_am_stamp_count + 1` ;; - esac -done -echo "timestamp for $ac_file" >`(dirname $ac_file) 2>/dev/null || -$as_expr X$ac_file : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X$ac_file : 'X\(//\)[^/]' \| \ - X$ac_file : 'X\(//\)$' \| \ - X$ac_file : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X$ac_file | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'`/stamp-h$_am_stamp_count -done - -# -# CONFIG_COMMANDS section. -# -for ac_file in : $CONFIG_COMMANDS; do test "x$ac_file" = x: && continue - ac_dest=`echo "$ac_file" | sed 's,:.*,,'` - ac_source=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_dir=`(dirname "$ac_dest") 2>/dev/null || -$as_expr X"$ac_dest" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$ac_dest" : 'X\(//\)[^/]' \| \ - X"$ac_dest" : 'X\(//\)$' \| \ - X"$ac_dest" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$ac_dest" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - { if $as_mkdir_p; then - mkdir -p "$ac_dir" - else - as_dir="$ac_dir" - as_dirs= - while test ! -d "$as_dir"; do - as_dirs="$as_dir $as_dirs" - as_dir=`(dirname "$as_dir") 2>/dev/null || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - done - test ! -n "$as_dirs" || mkdir $as_dirs - fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5 -echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;} - { (exit 1); exit 1; }; }; } - - ac_builddir=. - -if test "$ac_dir" != .; then - ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` - # A "../" for each directory in $ac_dir_suffix. - ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'` -else - ac_dir_suffix= ac_top_builddir= -fi - -case $srcdir in - .) # No --srcdir option. We are building in place. - ac_srcdir=. - if test -z "$ac_top_builddir"; then - ac_top_srcdir=. - else - ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'` - fi ;; - [\\/]* | ?:[\\/]* ) # Absolute path. - ac_srcdir=$srcdir$ac_dir_suffix; - ac_top_srcdir=$srcdir ;; - *) # Relative path. - ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix - ac_top_srcdir=$ac_top_builddir$srcdir ;; -esac - -# Do not use `cd foo && pwd` to compute absolute paths, because -# the directories may not exist. -case `pwd` in -.) ac_abs_builddir="$ac_dir";; -*) - case "$ac_dir" in - .) ac_abs_builddir=`pwd`;; - [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";; - *) ac_abs_builddir=`pwd`/"$ac_dir";; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_builddir=${ac_top_builddir}.;; -*) - case ${ac_top_builddir}. in - .) ac_abs_top_builddir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;; - *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_srcdir=$ac_srcdir;; -*) - case $ac_srcdir in - .) ac_abs_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;; - *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_srcdir=$ac_top_srcdir;; -*) - case $ac_top_srcdir in - .) ac_abs_top_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;; - *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;; - esac;; -esac - - - { echo "$as_me:$LINENO: executing $ac_dest commands" >&5 -echo "$as_me: executing $ac_dest commands" >&6;} - case $ac_dest in - depfiles ) test x"$AMDEP_TRUE" != x"" || for mf in $CONFIG_FILES; do - # Strip MF so we end up with the name of the file. - mf=`echo "$mf" | sed -e 's/:.*$//'` - # Check whether this is an Automake generated Makefile or not. - # We used to match only the files named `Makefile.in', but - # some people rename them; so instead we look at the file content. - # Grep'ing the first line is not enough: some people post-process - # each Makefile.in and add a new line on top of each file to say so. - # So let's grep whole file. - if grep '^#.*generated by automake' $mf > /dev/null 2>&1; then - dirpart=`(dirname "$mf") 2>/dev/null || -$as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$mf" : 'X\(//\)[^/]' \| \ - X"$mf" : 'X\(//\)$' \| \ - X"$mf" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$mf" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - else - continue - fi - # Extract the definition of DEPDIR, am__include, and am__quote - # from the Makefile without running `make'. - DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"` - test -z "$DEPDIR" && continue - am__include=`sed -n 's/^am__include = //p' < "$mf"` - test -z "am__include" && continue - am__quote=`sed -n 's/^am__quote = //p' < "$mf"` - # When using ansi2knr, U may be empty or an underscore; expand it - U=`sed -n 's/^U = //p' < "$mf"` - # Find all dependency output files, they are included files with - # $(DEPDIR) in their names. We invoke sed twice because it is the - # simplest approach to changing $(DEPDIR) to its actual value in the - # expansion. - for file in `sed -n " - s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \ - sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do - # Make sure the directory exists. - test -f "$dirpart/$file" && continue - fdir=`(dirname "$file") 2>/dev/null || -$as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$file" : 'X\(//\)[^/]' \| \ - X"$file" : 'X\(//\)$' \| \ - X"$file" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - { if $as_mkdir_p; then - mkdir -p $dirpart/$fdir - else - as_dir=$dirpart/$fdir - as_dirs= - while test ! -d "$as_dir"; do - as_dirs="$as_dir $as_dirs" - as_dir=`(dirname "$as_dir") 2>/dev/null || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - done - test ! -n "$as_dirs" || mkdir $as_dirs - fi || { { echo "$as_me:$LINENO: error: cannot create directory $dirpart/$fdir" >&5 -echo "$as_me: error: cannot create directory $dirpart/$fdir" >&2;} - { (exit 1); exit 1; }; }; } - - # echo "creating $dirpart/$file" - echo '# dummy' > "$dirpart/$file" - done -done - ;; - esac -done - -{ (exit 0); exit 0; } diff --git a/release/src/router/bridge/doc/Makefile b/release/src/router/bridge/doc/Makefile index e56048bdb8..c0223b34be 100644 --- a/release/src/router/bridge/doc/Makefile +++ b/release/src/router/bridge/doc/Makefile @@ -1,6 +1,6 @@ DESTDIR= -KERNEL_HEADERS=-I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +KERNEL_HEADERS=-I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include INSTALL=install -s diff --git a/release/src/router/bridge/libbridge/Makefile b/release/src/router/bridge/libbridge/Makefile index bbbd01a801..31fc255852 100644 --- a/release/src/router/bridge/libbridge/Makefile +++ b/release/src/router/bridge/libbridge/Makefile @@ -1,5 +1,5 @@ -KERNEL_HEADERS=-I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +KERNEL_HEADERS=-I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include #AR=ar RANLIB=mipsel-uclibc-ranlib diff --git a/release/src/router/config_nc b/release/src/router/config_nc new file mode 100644 index 0000000000..18452ad10b --- /dev/null +++ b/release/src/router/config_nc @@ -0,0 +1,41 @@ +# +# The baseline configuration for Tomato USB. +# All other build configurations are derived from this. +# +TCONFIG_L2TP=y +TCONFIG_PPTP=y +TCONFIG_HTTPS=y +TCONFIG_SSH=y +TCONFIG_CIFS=y +TCONFIG_JFFS2=y +TCONFIG_ZEBRA=y +TCONFIG_DDNS=y +TCONFIG_L7=y +TCONFIG_L7PAT=y +TCONFIG_USB=y +TCONFIG_FTP=y +TCONFIG_SAMBASRV=y +# TCONFIG_NVRAM_64K is not set +# TCONFIG_TCPDUMP is not set +# TCONFIG_USBAP is not set +# TCONFIG_REMOVE_USBAPP is not setTCONFIG_SAMBA3=y +TCONFIG_EMF=y +# TCONFIG_JFFSV1 is not set +TCONFIG_USB=y +TCONFIG_USB_EXTRAS=y +TCONFIG_NTFS=y +TCONFIG_MEDIA_SERVER=y +# TCONFIG_OPTIMIZE_SHARED_LIBS is not set +TCONFIG_EBTABLES=y +TCONFIG_IPV6=y +TCONFIG_NOCAT=y +TCONFIG_NGINX=y +TCONFIG_ZLIB=y +TCONFIG_LZO=y +TCONFIG_OPENVPN=y +TCONFIG_FTP_SSL=y +TCONFIG_SNMP=y +TCONFIG_USERPPTP=y +TCONFIG_VLAN=y +TCONFIG_PPTPD=y +TCONFIG_DNSCRYPT=y diff --git a/release/src/router/cyassl/Makefile b/release/src/router/cyassl/Makefile index 8f646c8bef..60bc6ee4fb 100644 --- a/release/src/router/cyassl/Makefile +++ b/release/src/router/cyassl/Makefile @@ -76,13 +76,13 @@ DIST_ARCHIVES = $(distdir).tar.gz GZIP_ENV = --best distuninstallcheck_listfiles = find . -type f -print distcleancheck_listfiles = find . -type f -print -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run aclocal-1.10 -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run tar +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run aclocal-1.10 +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run tar AR = mipsel-uclibc-ar AS = mipsel-uclibc-as -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run automake-1.10 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run automake-1.10 AWK = gawk CC = mipsel-uclibc-gcc CCAS = mipsel-uclibc-gcc @@ -119,7 +119,7 @@ LIBTOOL = $(SHELL) $(top_builddir)/libtool LIPO = LN_S = ln -s LTLIBOBJS = -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run makeinfo MKDIR_P = /bin/mkdir -p NM = mipsel-uclibc-nm NMEDIT = @@ -143,10 +143,10 @@ SET_MAKE = SHELL = /bin/sh STRIP = mipsel-uclibc-strip -R .note -R .comment VERSION = 1.9.0 -abs_builddir = /home/vicente/tomato/release/src/router/cyassl -abs_srcdir = /home/vicente/tomato/release/src/router/cyassl -abs_top_builddir = /home/vicente/tomato/release/src/router/cyassl -abs_top_srcdir = /home/vicente/tomato/release/src/router/cyassl +abs_builddir = /home/vicente/repos/tomato/release/src/router/cyassl +abs_srcdir = /home/vicente/repos/tomato/release/src/router/cyassl +abs_top_builddir = /home/vicente/repos/tomato/release/src/router/cyassl +abs_top_srcdir = /home/vicente/repos/tomato/release/src/router/cyassl ac_ct_CC = ac_ct_DUMPBIN = acx_pthread_config = @@ -175,7 +175,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = $(SHELL) /home/vicente/tomato/release/src/router/cyassl/install-sh +install_sh = $(SHELL) /home/vicente/repos/tomato/release/src/router/cyassl/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = ${datarootdir}/locale diff --git a/release/src/router/cyassl/config.log b/release/src/router/cyassl/config.log deleted file mode 100644 index d5fd6a5aa9..0000000000 --- a/release/src/router/cyassl/config.log +++ /dev/null @@ -1,1241 +0,0 @@ -This file contains any messages produced by compilers while -running configure, to aid debugging if configure makes a mistake. - -It was created by configure, which was -generated by GNU Autoconf 2.61. Invocation command line was - - $ ./configure --host=mipsel-linux --build=x86_64-linux-gnu - -## --------- ## -## Platform. ## -## --------- ## - -hostname = vicente-P5K-E -uname -m = x86_64 -uname -r = 3.2.0-47-generic -uname -s = Linux -uname -v = #72-Ubuntu SMP Mon Jun 3 17:53:49 UTC 2013 - -/usr/bin/uname -p = unknown -/bin/uname -X = unknown - -/bin/arch = unknown -/usr/bin/arch -k = unknown -/usr/convex/getsysinfo = unknown -/usr/bin/hostinfo = unknown -/bin/machine = unknown -/usr/bin/oslevel = unknown -/bin/universe = unknown - -PATH: /home/vicente/tomato/release/tools -PATH: /home/vicente/tomato/release/tools -PATH: /home/vicente/tomato/release/tools -PATH: /home/vicente/tomato/release/tools -PATH: /opt/brcm/hndtools-mipsel-uclibc/bin -PATH: /opt/brcm/hndtools-mipsel-linux/bin -PATH: /usr/lib/lightdm/lightdm -PATH: /usr/local/sbin -PATH: /usr/local/bin -PATH: /usr/sbin -PATH: /usr/bin -PATH: /sbin -PATH: /bin -PATH: /usr/games - - -## ----------- ## -## Core tests. ## -## ----------- ## - -configure:2001: checking build system type -configure:2019: result: x86_64-pc-linux-gnu -configure:2041: checking host system type -configure:2056: result: mipsel-unknown-linux-gnu -configure:2078: checking target system type -configure:2093: result: mipsel-unknown-linux-gnu -configure:2136: checking for a BSD-compatible install -configure:2192: result: /usr/bin/install -c -configure:2203: checking whether build environment is sane -configure:2246: result: yes -configure:2274: checking for a thread-safe mkdir -p -configure:2313: result: /bin/mkdir -p -configure:2326: checking for gawk -configure:2342: found /usr/bin/gawk -configure:2353: result: gawk -configure:2364: checking whether make sets $(MAKE) -configure:2385: result: yes -configure:2465: checking for mipsel-linux-strip -configure:2492: result: mipsel-uclibc-strip -R .note -R .comment -configure:2594: checking for mipsel-linux-gcc -configure:2621: result: mipsel-uclibc-gcc -configure:2899: checking for C compiler version -configure:2906: mipsel-uclibc-gcc --version >&5 -mipsel-uclibc-gcc (GCC) 4.2.4 -Copyright (C) 2007 Free Software Foundation, Inc. -This is free software; see the source for copying conditions. There is NO -warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - -configure:2909: $? = 0 -configure:2916: mipsel-uclibc-gcc -v >&5 -Using built-in specs. -Target: mipsel-linux-uclibc -Configured with: /home/fedork/tomato/toolchain/build_dir/toolchain-mipsel_gcc4.2.4/gcc-4.2.4/configure --prefix=/opt/brcm/hndtools-mipsel-uclibc-4.2.4 --build=i486-linux-gnu --host=i486-linux-gnu --target=mipsel-linux-uclibc --with-gnu-ld --enable-target-optspace --disable-libgomp --disable-libmudflap --disable-multilib --disable-nls --disable-__cxa_atexit --enable-libssp --enable-languages=c,c++ --enable-shared --enable-threads --enable-tls -Thread model: posix -gcc version 4.2.4 -configure:2919: $? = 0 -configure:2926: mipsel-uclibc-gcc -V >&5 -mipsel-uclibc-gcc: '-V' option must have argument -configure:2929: $? = 1 -configure:2952: checking for C compiler default output file name -configure:2979: mipsel-uclibc-gcc -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DNO_MD4 -DNO_AES -DNO_ERROR_STRINGS -DNO_HC128 -DNO_RABBIT -DNO_PSK -DNO_DSA -DNO_DH -DNO_PWDBASED -ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC conftest.c >&5 -configure:2982: $? = 0 -configure:3020: result: a.out -configure:3037: checking whether the C compiler works -configure:3067: result: yes -configure:3074: checking whether we are cross compiling -configure:3076: result: yes -configure:3079: checking for suffix of executables -configure:3086: mipsel-uclibc-gcc -o conftest -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DNO_MD4 -DNO_AES -DNO_ERROR_STRINGS -DNO_HC128 -DNO_RABBIT -DNO_PSK -DNO_DSA -DNO_DH -DNO_PWDBASED -ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC conftest.c >&5 -configure:3089: $? = 0 -configure:3113: result: -configure:3119: checking for suffix of object files -configure:3145: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DNO_MD4 -DNO_AES -DNO_ERROR_STRINGS -DNO_HC128 -DNO_RABBIT -DNO_PSK -DNO_DSA -DNO_DH -DNO_PWDBASED conftest.c >&5 -configure:3148: $? = 0 -configure:3171: result: o -configure:3175: checking whether we are using the GNU C compiler -configure:3204: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DNO_MD4 -DNO_AES -DNO_ERROR_STRINGS -DNO_HC128 -DNO_RABBIT -DNO_PSK -DNO_DSA -DNO_DH -DNO_PWDBASED conftest.c >&5 -configure:3210: $? = 0 -configure:3227: result: yes -configure:3232: checking whether mipsel-uclibc-gcc accepts -g -configure:3262: mipsel-uclibc-gcc -c -g conftest.c >&5 -configure:3268: $? = 0 -configure:3367: result: yes -configure:3384: checking for mipsel-uclibc-gcc option to accept ISO C89 -configure:3458: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DNO_MD4 -DNO_AES -DNO_ERROR_STRINGS -DNO_HC128 -DNO_RABBIT -DNO_PSK -DNO_DSA -DNO_DH -DNO_PWDBASED conftest.c >&5 -configure:3464: $? = 0 -configure:3487: result: none needed -configure:3516: checking for style of include used by make -configure:3544: result: GNU -configure:3569: checking dependency style of mipsel-uclibc-gcc -configure:3660: result: gcc3 -configure:3676: checking whether mipsel-uclibc-gcc and cc understand -c and -o together -configure:3711: mipsel-uclibc-gcc -c conftest.c -o conftest2.o >&5 -configure:3714: $? = 0 -configure:3720: mipsel-uclibc-gcc -c conftest.c -o conftest2.o >&5 -configure:3723: $? = 0 -configure:3734: cc -c conftest.c >&5 -configure:3737: $? = 0 -configure:3745: cc -c conftest.c -o conftest2.o >&5 -configure:3748: $? = 0 -configure:3754: cc -c conftest.c -o conftest2.o >&5 -configure:3757: $? = 0 -configure:3775: result: yes -configure:3796: checking dependency style of mipsel-uclibc-gcc -configure:3887: result: gcc3 -configure:3915: checking for a BSD-compatible install -configure:3971: result: /usr/bin/install -c -configure:4322: checking for a sed that does not truncate output -configure:4401: result: /bin/sed -configure:4419: checking for grep that handles long lines and -e -configure:4493: result: /bin/grep -configure:4498: checking for egrep -configure:4576: result: /bin/grep -E -configure:4581: checking for fgrep -configure:4659: result: /bin/grep -F -configure:4694: checking for ld used by mipsel-uclibc-gcc -configure:4761: result: mipsel-uclibc-ld -configure:4770: checking if the linker (mipsel-uclibc-ld) is GNU ld -configure:4785: result: yes -configure:4797: checking for BSD- or MS-compatible name lister (nm) -configure:4846: result: mipsel-uclibc-nm -configure:4968: checking the name lister (mipsel-uclibc-nm) interface -configure:4975: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DNO_MD4 -DNO_AES -DNO_ERROR_STRINGS -DNO_HC128 -DNO_RABBIT -DNO_PSK -DNO_DSA -DNO_DH -DNO_PWDBASED conftest.c >&5 -configure:4978: mipsel-uclibc-nm "conftest.o" -configure:4981: output -00000000 B some_variable -configure:4988: result: BSD nm -configure:4991: checking whether ln -s works -configure:4995: result: yes -configure:5003: checking the maximum length of command line arguments -configure:5123: result: 3458764513820540925 -configure:5140: checking whether the shell understands some XSI constructs -configure:5150: result: yes -configure:5154: checking whether the shell understands "+=" -configure:5160: result: yes -configure:5195: checking for mipsel-uclibc-ld option to reload object files -configure:5202: result: -r -configure:5229: checking how to recognize dependent libraries -configure:5419: result: pass_all -configure:5439: checking for mipsel-linux-ar -configure:5466: result: mipsel-uclibc-ar -configure:5548: checking for mipsel-linux-strip -configure:5575: result: mipsel-uclibc-strip -R .note -R .comment -configure:5651: checking for mipsel-linux-ranlib -configure:5678: result: mipsel-uclibc-ranlib -configure:5812: checking command to parse mipsel-uclibc-nm output from mipsel-uclibc-gcc object -configure:5930: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DNO_MD4 -DNO_AES -DNO_ERROR_STRINGS -DNO_HC128 -DNO_RABBIT -DNO_PSK -DNO_DSA -DNO_DH -DNO_PWDBASED conftest.c >&5 -configure:5933: $? = 0 -configure:5937: mipsel-uclibc-nm conftest.o \| sed -n -e 's/^.*[ ]\([ABCDGIRSTW][ABCDGIRSTW]*\)[ ][ ]*\([_A-Za-z][_A-Za-z0-9]*\)$/\1 \2 \2/p' \> conftest.nm -configure:5940: $? = 0 -configure:5994: mipsel-uclibc-gcc -o conftest -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DNO_MD4 -DNO_AES -DNO_ERROR_STRINGS -DNO_HC128 -DNO_RABBIT -DNO_PSK -DNO_DSA -DNO_DH -DNO_PWDBASED -ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC conftest.c conftstm.o >&5 -configure:5997: $? = 0 -configure:6035: result: ok -configure:6914: checking how to run the C preprocessor -configure:6954: mipsel-uclibc-gcc -E conftest.c -configure:6960: $? = 0 -configure:6991: mipsel-uclibc-gcc -E conftest.c -conftest.c:10:28: error: ac_nonexistent.h: No such file or directory -configure:6997: $? = 1 -configure: failed program was: -| /* confdefs.h. */ -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE "cyassl" -| #define VERSION "1.9.0" -| /* end confdefs.h. */ -| #include -configure:7030: result: mipsel-uclibc-gcc -E -configure:7059: mipsel-uclibc-gcc -E conftest.c -configure:7065: $? = 0 -configure:7096: mipsel-uclibc-gcc -E conftest.c -conftest.c:10:28: error: ac_nonexistent.h: No such file or directory -configure:7102: $? = 1 -configure: failed program was: -| /* confdefs.h. */ -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE "cyassl" -| #define VERSION "1.9.0" -| /* end confdefs.h. */ -| #include -configure:7140: checking for ANSI C header files -configure:7170: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DNO_MD4 -DNO_AES -DNO_ERROR_STRINGS -DNO_HC128 -DNO_RABBIT -DNO_PSK -DNO_DSA -DNO_DH -DNO_PWDBASED conftest.c >&5 -configure:7176: $? = 0 -configure:7304: result: yes -configure:7328: checking for sys/types.h -configure:7349: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DNO_MD4 -DNO_AES -DNO_ERROR_STRINGS -DNO_HC128 -DNO_RABBIT -DNO_PSK -DNO_DSA -DNO_DH -DNO_PWDBASED conftest.c >&5 -configure:7355: $? = 0 -configure:7371: result: yes -configure:7328: checking for sys/stat.h -configure:7349: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DNO_MD4 -DNO_AES -DNO_ERROR_STRINGS -DNO_HC128 -DNO_RABBIT -DNO_PSK -DNO_DSA -DNO_DH -DNO_PWDBASED conftest.c >&5 -configure:7355: $? = 0 -configure:7371: result: yes -configure:7328: checking for stdlib.h -configure:7349: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DNO_MD4 -DNO_AES -DNO_ERROR_STRINGS -DNO_HC128 -DNO_RABBIT -DNO_PSK -DNO_DSA -DNO_DH -DNO_PWDBASED conftest.c >&5 -configure:7355: $? = 0 -configure:7371: result: yes -configure:7328: checking for string.h -configure:7349: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DNO_MD4 -DNO_AES -DNO_ERROR_STRINGS -DNO_HC128 -DNO_RABBIT -DNO_PSK -DNO_DSA -DNO_DH -DNO_PWDBASED conftest.c >&5 -configure:7355: $? = 0 -configure:7371: result: yes -configure:7328: checking for memory.h -configure:7349: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DNO_MD4 -DNO_AES -DNO_ERROR_STRINGS -DNO_HC128 -DNO_RABBIT -DNO_PSK -DNO_DSA -DNO_DH -DNO_PWDBASED conftest.c >&5 -configure:7355: $? = 0 -configure:7371: result: yes -configure:7328: checking for strings.h -configure:7349: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DNO_MD4 -DNO_AES -DNO_ERROR_STRINGS -DNO_HC128 -DNO_RABBIT -DNO_PSK -DNO_DSA -DNO_DH -DNO_PWDBASED conftest.c >&5 -configure:7355: $? = 0 -configure:7371: result: yes -configure:7328: checking for inttypes.h -configure:7349: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DNO_MD4 -DNO_AES -DNO_ERROR_STRINGS -DNO_HC128 -DNO_RABBIT -DNO_PSK -DNO_DSA -DNO_DH -DNO_PWDBASED conftest.c >&5 -configure:7355: $? = 0 -configure:7371: result: yes -configure:7328: checking for stdint.h -configure:7349: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DNO_MD4 -DNO_AES -DNO_ERROR_STRINGS -DNO_HC128 -DNO_RABBIT -DNO_PSK -DNO_DSA -DNO_DH -DNO_PWDBASED conftest.c >&5 -configure:7355: $? = 0 -configure:7371: result: yes -configure:7328: checking for unistd.h -configure:7349: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DNO_MD4 -DNO_AES -DNO_ERROR_STRINGS -DNO_HC128 -DNO_RABBIT -DNO_PSK -DNO_DSA -DNO_DH -DNO_PWDBASED conftest.c >&5 -configure:7355: $? = 0 -configure:7371: result: yes -configure:7387: checking for dlfcn.h -configure:7408: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DNO_MD4 -DNO_AES -DNO_ERROR_STRINGS -DNO_HC128 -DNO_RABBIT -DNO_PSK -DNO_DSA -DNO_DH -DNO_PWDBASED conftest.c >&5 -configure:7414: $? = 0 -configure:7430: result: yes -configure:7612: checking for objdir -configure:7627: result: .libs -configure:7923: checking if mipsel-uclibc-gcc supports -fno-rtti -fno-exceptions -configure:7941: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DNO_MD4 -DNO_AES -DNO_ERROR_STRINGS -DNO_HC128 -DNO_RABBIT -DNO_PSK -DNO_DSA -DNO_DH -DNO_PWDBASED -fno-rtti -fno-exceptions conftest.c >&5 -cc1: warning: command line option "-fno-rtti" is valid for C++/ObjC++ but not for C -configure:7945: $? = 0 -configure:7958: result: no -configure:7978: checking for mipsel-uclibc-gcc option to produce PIC -configure:8235: result: -fPIC -DPIC -configure:8247: checking if mipsel-uclibc-gcc PIC flag -fPIC -DPIC works -configure:8265: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DNO_MD4 -DNO_AES -DNO_ERROR_STRINGS -DNO_HC128 -DNO_RABBIT -DNO_PSK -DNO_DSA -DNO_DH -DNO_PWDBASED -fPIC -DPIC -DPIC conftest.c >&5 -configure:8269: $? = 0 -configure:8282: result: yes -configure:8306: checking if mipsel-uclibc-gcc static flag -static works -configure:8334: result: yes -configure:8349: checking if mipsel-uclibc-gcc supports -c -o file.o -configure:8370: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DNO_MD4 -DNO_AES -DNO_ERROR_STRINGS -DNO_HC128 -DNO_RABBIT -DNO_PSK -DNO_DSA -DNO_DH -DNO_PWDBASED -o out/conftest2.o conftest.c >&5 -configure:8374: $? = 0 -configure:8396: result: yes -configure:8404: checking if mipsel-uclibc-gcc supports -c -o file.o -configure:8451: result: yes -configure:8484: checking whether the mipsel-uclibc-gcc linker (mipsel-uclibc-ld) supports shared libraries -configure:9538: result: yes -configure:9575: checking whether -lc should be explicitly linked in -configure:9580: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DNO_MD4 -DNO_AES -DNO_ERROR_STRINGS -DNO_HC128 -DNO_RABBIT -DNO_PSK -DNO_DSA -DNO_DH -DNO_PWDBASED conftest.c >&5 -configure:9583: $? = 0 -configure:9598: mipsel-uclibc-gcc -shared conftest.o -v -Wl,-soname -Wl,conftest -o conftest 2\>\&1 \| /bin/grep -lc \>/dev/null 2\>\&1 -configure:9601: $? = 0 -configure:9613: result: no -configure:9777: checking dynamic linker characteristics -configure:10220: mipsel-uclibc-gcc -o conftest -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DNO_MD4 -DNO_AES -DNO_ERROR_STRINGS -DNO_HC128 -DNO_RABBIT -DNO_PSK -DNO_DSA -DNO_DH -DNO_PWDBASED -ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC -Wl,-rpath -Wl,/foo conftest.c >&5 -configure:10226: $? = 0 -configure:10456: result: GNU/Linux ld.so -configure:10558: checking how to hardcode library paths into programs -configure:10583: result: immediate -configure:11396: checking whether stripping libraries is possible -configure:11401: result: yes -configure:11436: checking if libtool supports shared libraries -configure:11438: result: yes -configure:11441: checking whether to build shared libraries -configure:11462: result: yes -configure:11465: checking whether to build static libraries -configure:11469: result: yes -configure:11507: checking whether byte ordering is bigendian -configure:11540: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DNO_MD4 -DNO_AES -DNO_ERROR_STRINGS -DNO_HC128 -DNO_RABBIT -DNO_PSK -DNO_DSA -DNO_DH -DNO_PWDBASED conftest.c >&5 -configure:11546: $? = 0 -configure:11578: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DNO_MD4 -DNO_AES -DNO_ERROR_STRINGS -DNO_HC128 -DNO_RABBIT -DNO_PSK -DNO_DSA -DNO_DH -DNO_PWDBASED conftest.c >&5 -conftest.c: In function 'main': -conftest.c:29: error: 'not' undeclared (first use in this function) -conftest.c:29: error: (Each undeclared identifier is reported only once -conftest.c:29: error: for each function it appears in.) -conftest.c:29: error: expected ';' before 'big' -configure:11584: $? = 1 -configure: failed program was: -| /* confdefs.h. */ -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE "cyassl" -| #define VERSION "1.9.0" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_DLFCN_H 1 -| #define LT_OBJDIR ".libs/" -| /* end confdefs.h. */ -| #include -| #include -| -| int -| main () -| { -| #if BYTE_ORDER != BIG_ENDIAN -| not big endian -| #endif -| -| ; -| return 0; -| } -configure:11724: result: no -configure:11744: checking for long -configure:11774: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DNO_MD4 -DNO_AES -DNO_ERROR_STRINGS -DNO_HC128 -DNO_RABBIT -DNO_PSK -DNO_DSA -DNO_DH -DNO_PWDBASED conftest.c >&5 -configure:11780: $? = 0 -configure:11795: result: yes -configure:11802: checking size of long -configure:11833: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DNO_MD4 -DNO_AES -DNO_ERROR_STRINGS -DNO_HC128 -DNO_RABBIT -DNO_PSK -DNO_DSA -DNO_DH -DNO_PWDBASED conftest.c >&5 -configure:11839: $? = 0 -configure:11870: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DNO_MD4 -DNO_AES -DNO_ERROR_STRINGS -DNO_HC128 -DNO_RABBIT -DNO_PSK -DNO_DSA -DNO_DH -DNO_PWDBASED conftest.c >&5 -conftest.c: In function 'main': -conftest.c:59: error: size of array 'test_array' is negative -configure:11876: $? = 1 -configure: failed program was: -| /* confdefs.h. */ -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE "cyassl" -| #define VERSION "1.9.0" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_DLFCN_H 1 -| #define LT_OBJDIR ".libs/" -| /* end confdefs.h. */ -| #include -| #ifdef HAVE_SYS_TYPES_H -| # include -| #endif -| #ifdef HAVE_SYS_STAT_H -| # include -| #endif -| #ifdef STDC_HEADERS -| # include -| # include -| #else -| # ifdef HAVE_STDLIB_H -| # include -| # endif -| #endif -| #ifdef HAVE_STRING_H -| # if !defined STDC_HEADERS && defined HAVE_MEMORY_H -| # include -| # endif -| # include -| #endif -| #ifdef HAVE_STRINGS_H -| # include -| #endif -| #ifdef HAVE_INTTYPES_H -| # include -| #endif -| #ifdef HAVE_STDINT_H -| # include -| #endif -| #ifdef HAVE_UNISTD_H -| # include -| #endif -| typedef long ac__type_sizeof_; -| int -| main () -| { -| static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) <= 0)]; -| test_array [0] = 0 -| -| ; -| return 0; -| } -configure:11870: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DNO_MD4 -DNO_AES -DNO_ERROR_STRINGS -DNO_HC128 -DNO_RABBIT -DNO_PSK -DNO_DSA -DNO_DH -DNO_PWDBASED conftest.c >&5 -conftest.c: In function 'main': -conftest.c:59: error: size of array 'test_array' is negative -configure:11876: $? = 1 -configure: failed program was: -| /* confdefs.h. */ -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE "cyassl" -| #define VERSION "1.9.0" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_DLFCN_H 1 -| #define LT_OBJDIR ".libs/" -| /* end confdefs.h. */ -| #include -| #ifdef HAVE_SYS_TYPES_H -| # include -| #endif -| #ifdef HAVE_SYS_STAT_H -| # include -| #endif -| #ifdef STDC_HEADERS -| # include -| # include -| #else -| # ifdef HAVE_STDLIB_H -| # include -| # endif -| #endif -| #ifdef HAVE_STRING_H -| # if !defined STDC_HEADERS && defined HAVE_MEMORY_H -| # include -| # endif -| # include -| #endif -| #ifdef HAVE_STRINGS_H -| # include -| #endif -| #ifdef HAVE_INTTYPES_H -| # include -| #endif -| #ifdef HAVE_STDINT_H -| # include -| #endif -| #ifdef HAVE_UNISTD_H -| # include -| #endif -| typedef long ac__type_sizeof_; -| int -| main () -| { -| static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) <= 1)]; -| test_array [0] = 0 -| -| ; -| return 0; -| } -configure:11870: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DNO_MD4 -DNO_AES -DNO_ERROR_STRINGS -DNO_HC128 -DNO_RABBIT -DNO_PSK -DNO_DSA -DNO_DH -DNO_PWDBASED conftest.c >&5 -conftest.c: In function 'main': -conftest.c:59: error: size of array 'test_array' is negative -configure:11876: $? = 1 -configure: failed program was: -| /* confdefs.h. */ -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE "cyassl" -| #define VERSION "1.9.0" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_DLFCN_H 1 -| #define LT_OBJDIR ".libs/" -| /* end confdefs.h. */ -| #include -| #ifdef HAVE_SYS_TYPES_H -| # include -| #endif -| #ifdef HAVE_SYS_STAT_H -| # include -| #endif -| #ifdef STDC_HEADERS -| # include -| # include -| #else -| # ifdef HAVE_STDLIB_H -| # include -| # endif -| #endif -| #ifdef HAVE_STRING_H -| # if !defined STDC_HEADERS && defined HAVE_MEMORY_H -| # include -| # endif -| # include -| #endif -| #ifdef HAVE_STRINGS_H -| # include -| #endif -| #ifdef HAVE_INTTYPES_H -| # include -| #endif -| #ifdef HAVE_STDINT_H -| # include -| #endif -| #ifdef HAVE_UNISTD_H -| # include -| #endif -| typedef long ac__type_sizeof_; -| int -| main () -| { -| static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) <= 3)]; -| test_array [0] = 0 -| -| ; -| return 0; -| } -configure:11870: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DNO_MD4 -DNO_AES -DNO_ERROR_STRINGS -DNO_HC128 -DNO_RABBIT -DNO_PSK -DNO_DSA -DNO_DH -DNO_PWDBASED conftest.c >&5 -configure:11876: $? = 0 -configure:12025: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DNO_MD4 -DNO_AES -DNO_ERROR_STRINGS -DNO_HC128 -DNO_RABBIT -DNO_PSK -DNO_DSA -DNO_DH -DNO_PWDBASED conftest.c >&5 -configure:12031: $? = 0 -configure:12025: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DNO_MD4 -DNO_AES -DNO_ERROR_STRINGS -DNO_HC128 -DNO_RABBIT -DNO_PSK -DNO_DSA -DNO_DH -DNO_PWDBASED conftest.c >&5 -configure:12031: $? = 0 -configure:12139: result: 4 -configure:12149: checking for long long -configure:12179: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DNO_MD4 -DNO_AES -DNO_ERROR_STRINGS -DNO_HC128 -DNO_RABBIT -DNO_PSK -DNO_DSA -DNO_DH -DNO_PWDBASED conftest.c >&5 -configure:12185: $? = 0 -configure:12200: result: yes -configure:12207: checking size of long long -configure:12238: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DNO_MD4 -DNO_AES -DNO_ERROR_STRINGS -DNO_HC128 -DNO_RABBIT -DNO_PSK -DNO_DSA -DNO_DH -DNO_PWDBASED conftest.c >&5 -configure:12244: $? = 0 -configure:12275: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DNO_MD4 -DNO_AES -DNO_ERROR_STRINGS -DNO_HC128 -DNO_RABBIT -DNO_PSK -DNO_DSA -DNO_DH -DNO_PWDBASED conftest.c >&5 -conftest.c: In function 'main': -conftest.c:60: error: size of array 'test_array' is negative -configure:12281: $? = 1 -configure: failed program was: -| /* confdefs.h. */ -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE "cyassl" -| #define VERSION "1.9.0" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_DLFCN_H 1 -| #define LT_OBJDIR ".libs/" -| #define SIZEOF_LONG 4 -| /* end confdefs.h. */ -| #include -| #ifdef HAVE_SYS_TYPES_H -| # include -| #endif -| #ifdef HAVE_SYS_STAT_H -| # include -| #endif -| #ifdef STDC_HEADERS -| # include -| # include -| #else -| # ifdef HAVE_STDLIB_H -| # include -| # endif -| #endif -| #ifdef HAVE_STRING_H -| # if !defined STDC_HEADERS && defined HAVE_MEMORY_H -| # include -| # endif -| # include -| #endif -| #ifdef HAVE_STRINGS_H -| # include -| #endif -| #ifdef HAVE_INTTYPES_H -| # include -| #endif -| #ifdef HAVE_STDINT_H -| # include -| #endif -| #ifdef HAVE_UNISTD_H -| # include -| #endif -| typedef long long ac__type_sizeof_; -| int -| main () -| { -| static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) <= 0)]; -| test_array [0] = 0 -| -| ; -| return 0; -| } -configure:12275: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DNO_MD4 -DNO_AES -DNO_ERROR_STRINGS -DNO_HC128 -DNO_RABBIT -DNO_PSK -DNO_DSA -DNO_DH -DNO_PWDBASED conftest.c >&5 -conftest.c: In function 'main': -conftest.c:60: error: size of array 'test_array' is negative -configure:12281: $? = 1 -configure: failed program was: -| /* confdefs.h. */ -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE "cyassl" -| #define VERSION "1.9.0" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_DLFCN_H 1 -| #define LT_OBJDIR ".libs/" -| #define SIZEOF_LONG 4 -| /* end confdefs.h. */ -| #include -| #ifdef HAVE_SYS_TYPES_H -| # include -| #endif -| #ifdef HAVE_SYS_STAT_H -| # include -| #endif -| #ifdef STDC_HEADERS -| # include -| # include -| #else -| # ifdef HAVE_STDLIB_H -| # include -| # endif -| #endif -| #ifdef HAVE_STRING_H -| # if !defined STDC_HEADERS && defined HAVE_MEMORY_H -| # include -| # endif -| # include -| #endif -| #ifdef HAVE_STRINGS_H -| # include -| #endif -| #ifdef HAVE_INTTYPES_H -| # include -| #endif -| #ifdef HAVE_STDINT_H -| # include -| #endif -| #ifdef HAVE_UNISTD_H -| # include -| #endif -| typedef long long ac__type_sizeof_; -| int -| main () -| { -| static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) <= 1)]; -| test_array [0] = 0 -| -| ; -| return 0; -| } -configure:12275: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DNO_MD4 -DNO_AES -DNO_ERROR_STRINGS -DNO_HC128 -DNO_RABBIT -DNO_PSK -DNO_DSA -DNO_DH -DNO_PWDBASED conftest.c >&5 -conftest.c: In function 'main': -conftest.c:60: error: size of array 'test_array' is negative -configure:12281: $? = 1 -configure: failed program was: -| /* confdefs.h. */ -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE "cyassl" -| #define VERSION "1.9.0" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_DLFCN_H 1 -| #define LT_OBJDIR ".libs/" -| #define SIZEOF_LONG 4 -| /* end confdefs.h. */ -| #include -| #ifdef HAVE_SYS_TYPES_H -| # include -| #endif -| #ifdef HAVE_SYS_STAT_H -| # include -| #endif -| #ifdef STDC_HEADERS -| # include -| # include -| #else -| # ifdef HAVE_STDLIB_H -| # include -| # endif -| #endif -| #ifdef HAVE_STRING_H -| # if !defined STDC_HEADERS && defined HAVE_MEMORY_H -| # include -| # endif -| # include -| #endif -| #ifdef HAVE_STRINGS_H -| # include -| #endif -| #ifdef HAVE_INTTYPES_H -| # include -| #endif -| #ifdef HAVE_STDINT_H -| # include -| #endif -| #ifdef HAVE_UNISTD_H -| # include -| #endif -| typedef long long ac__type_sizeof_; -| int -| main () -| { -| static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) <= 3)]; -| test_array [0] = 0 -| -| ; -| return 0; -| } -configure:12275: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DNO_MD4 -DNO_AES -DNO_ERROR_STRINGS -DNO_HC128 -DNO_RABBIT -DNO_PSK -DNO_DSA -DNO_DH -DNO_PWDBASED conftest.c >&5 -conftest.c: In function 'main': -conftest.c:60: error: size of array 'test_array' is negative -configure:12281: $? = 1 -configure: failed program was: -| /* confdefs.h. */ -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE "cyassl" -| #define VERSION "1.9.0" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_DLFCN_H 1 -| #define LT_OBJDIR ".libs/" -| #define SIZEOF_LONG 4 -| /* end confdefs.h. */ -| #include -| #ifdef HAVE_SYS_TYPES_H -| # include -| #endif -| #ifdef HAVE_SYS_STAT_H -| # include -| #endif -| #ifdef STDC_HEADERS -| # include -| # include -| #else -| # ifdef HAVE_STDLIB_H -| # include -| # endif -| #endif -| #ifdef HAVE_STRING_H -| # if !defined STDC_HEADERS && defined HAVE_MEMORY_H -| # include -| # endif -| # include -| #endif -| #ifdef HAVE_STRINGS_H -| # include -| #endif -| #ifdef HAVE_INTTYPES_H -| # include -| #endif -| #ifdef HAVE_STDINT_H -| # include -| #endif -| #ifdef HAVE_UNISTD_H -| # include -| #endif -| typedef long long ac__type_sizeof_; -| int -| main () -| { -| static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) <= 7)]; -| test_array [0] = 0 -| -| ; -| return 0; -| } -configure:12275: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DNO_MD4 -DNO_AES -DNO_ERROR_STRINGS -DNO_HC128 -DNO_RABBIT -DNO_PSK -DNO_DSA -DNO_DH -DNO_PWDBASED conftest.c >&5 -configure:12281: $? = 0 -configure:12430: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DNO_MD4 -DNO_AES -DNO_ERROR_STRINGS -DNO_HC128 -DNO_RABBIT -DNO_PSK -DNO_DSA -DNO_DH -DNO_PWDBASED conftest.c >&5 -configure:12436: $? = 0 -configure:12430: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DNO_MD4 -DNO_AES -DNO_ERROR_STRINGS -DNO_HC128 -DNO_RABBIT -DNO_PSK -DNO_DSA -DNO_DH -DNO_PWDBASED conftest.c >&5 -configure:12436: $? = 0 -configure:12430: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DNO_MD4 -DNO_AES -DNO_ERROR_STRINGS -DNO_HC128 -DNO_RABBIT -DNO_PSK -DNO_DSA -DNO_DH -DNO_PWDBASED conftest.c >&5 -configure:12436: $? = 0 -configure:12544: result: 8 -configure:12556: checking for socket in -lnetwork -configure:12591: mipsel-uclibc-gcc -o conftest -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DNO_MD4 -DNO_AES -DNO_ERROR_STRINGS -DNO_HC128 -DNO_RABBIT -DNO_PSK -DNO_DSA -DNO_DH -DNO_PWDBASED -ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC conftest.c -lnetwork >&5 -/home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/bin/ld: cannot find -lnetwork -collect2: ld returned 1 exit status -configure:12597: $? = 1 -configure: failed program was: -| /* confdefs.h. */ -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE "cyassl" -| #define VERSION "1.9.0" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_DLFCN_H 1 -| #define LT_OBJDIR ".libs/" -| #define SIZEOF_LONG 4 -| #define SIZEOF_LONG_LONG 8 -| /* end confdefs.h. */ -| -| /* Override any GCC internal prototype to avoid an error. -| Use char because int might match the return type of a GCC -| builtin and then its argument prototype would still apply. */ -| #ifdef __cplusplus -| extern "C" -| #endif -| char socket (); -| int -| main () -| { -| return socket (); -| ; -| return 0; -| } -configure:12615: result: no -configure:12764: checking for cos in -lm -configure:12799: mipsel-uclibc-gcc -o conftest -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DNO_MD4 -DNO_AES -DNO_ERROR_STRINGS -DNO_HC128 -DNO_RABBIT -DNO_PSK -DNO_DSA -DNO_DH -DNO_PWDBASED -ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC conftest.c -lm >&5 -conftest.c:31: warning: conflicting types for built-in function 'cos' -configure:12805: $? = 0 -configure:12823: result: yes -configure:12849: checking errno.h usability -configure:12866: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DNO_MD4 -DNO_AES -DNO_ERROR_STRINGS -DNO_HC128 -DNO_RABBIT -DNO_PSK -DNO_DSA -DNO_DH -DNO_PWDBASED conftest.c >&5 -configure:12872: $? = 0 -configure:12886: result: yes -configure:12890: checking errno.h presence -configure:12905: mipsel-uclibc-gcc -E conftest.c -configure:12911: $? = 0 -configure:12925: result: yes -configure:12953: checking for errno.h -configure:12961: result: yes -configure:13598: checking for pthread_join in LIBS=-lpthread with CFLAGS= -configure:13628: mipsel-uclibc-gcc -o conftest -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DNO_MD4 -DNO_AES -DNO_ERROR_STRINGS -DNO_HC128 -DNO_RABBIT -DNO_PSK -DNO_DSA -DNO_DH -DNO_PWDBASED -DNDEBUG -DNO_HC128 -DNO_PSK -Wall -Wno-unused -Os -fomit-frame-pointer -ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC conftest.c -lpthread >&5 -configure:13634: $? = 0 -configure:13650: result: yes -configure:13855: checking for joinable pthread attribute -configure:13880: mipsel-uclibc-gcc -o conftest -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DNO_MD4 -DNO_AES -DNO_ERROR_STRINGS -DNO_HC128 -DNO_RABBIT -DNO_PSK -DNO_DSA -DNO_DH -DNO_PWDBASED -DNDEBUG -DNO_HC128 -DNO_PSK -Wall -Wno-unused -Os -fomit-frame-pointer -ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC conftest.c -lpthread >&5 -configure:13886: $? = 0 -configure:13903: result: PTHREAD_CREATE_JOINABLE -configure:13913: checking if more special flags are required for pthreads -configure:13920: result: no -configure:14009: checking for library containing gethostbyname -configure:14050: mipsel-uclibc-gcc -o conftest -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DNO_MD4 -DNO_AES -DNO_ERROR_STRINGS -DNO_HC128 -DNO_RABBIT -DNO_PSK -DNO_DSA -DNO_DH -DNO_PWDBASED -DNDEBUG -DNO_HC128 -DNO_PSK -Wall -Wno-unused -Os -fomit-frame-pointer -ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC conftest.c -lpthread -lm >&5 -configure:14056: $? = 0 -configure:14084: result: none required -configure:14092: checking for library containing socket -configure:14133: mipsel-uclibc-gcc -o conftest -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DNO_MD4 -DNO_AES -DNO_ERROR_STRINGS -DNO_HC128 -DNO_RABBIT -DNO_PSK -DNO_DSA -DNO_DH -DNO_PWDBASED -DNDEBUG -DNO_HC128 -DNO_PSK -Wall -Wno-unused -Os -fomit-frame-pointer -ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC conftest.c -lpthread -lm >&5 -configure:14139: $? = 0 -configure:14167: result: none required -configure:14429: creating ./config.status - -## ---------------------- ## -## Running config.status. ## -## ---------------------- ## - -This file was extended by config.status, which was -generated by GNU Autoconf 2.61. Invocation command line was - - CONFIG_FILES = - CONFIG_HEADERS = - CONFIG_LINKS = - CONFIG_COMMANDS = - $ ./config.status - -on vicente-P5K-E - -config.status:895: creating Makefile -config.status:895: creating ctaocrypt/Makefile -config.status:895: creating ctaocrypt/src/Makefile -config.status:895: creating ctaocrypt/test/Makefile -config.status:895: creating ctaocrypt/benchmark/Makefile -config.status:895: creating src/Makefile -config.status:895: creating examples/Makefile -config.status:895: creating examples/client/Makefile -config.status:895: creating examples/server/Makefile -config.status:895: creating examples/echoclient/Makefile -config.status:895: creating examples/echoserver/Makefile -config.status:895: creating testsuite/Makefile -config.status:895: creating sslSniffer/Makefile -config.status:895: creating sslSniffer/sslSnifferTest/Makefile -config.status:895: creating ctaocrypt/include/config.h -config.status:1127: ctaocrypt/include/config.h is unchanged -config.status:1173: executing depfiles commands -config.status:1173: executing libtool commands - -## ---------------- ## -## Cache variables. ## -## ---------------- ## - -ac_cv_build=x86_64-pc-linux-gnu -ac_cv_c_bigendian=no -ac_cv_c_compiler_gnu=yes -ac_cv_env_CCASFLAGS_set= -ac_cv_env_CCASFLAGS_value= -ac_cv_env_CCAS_set= -ac_cv_env_CCAS_value= -ac_cv_env_CC_set=set -ac_cv_env_CC_value=mipsel-uclibc-gcc -ac_cv_env_CFLAGS_set=set -ac_cv_env_CFLAGS_value='-Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DNO_MD4 -DNO_AES -DNO_ERROR_STRINGS -DNO_HC128 -DNO_RABBIT -DNO_PSK -DNO_DSA -DNO_DH -DNO_PWDBASED' -ac_cv_env_CPPFLAGS_set= -ac_cv_env_CPPFLAGS_value= -ac_cv_env_CPP_set= -ac_cv_env_CPP_value= -ac_cv_env_LDFLAGS_set=set -ac_cv_env_LDFLAGS_value='-ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC' -ac_cv_env_LIBS_set= -ac_cv_env_LIBS_value= -ac_cv_env_build_alias_set=set -ac_cv_env_build_alias_value=x86_64-linux-gnu -ac_cv_env_host_alias_set=set -ac_cv_env_host_alias_value=mipsel-linux -ac_cv_env_target_alias_set= -ac_cv_env_target_alias_value= -ac_cv_func_malloc_0_nonnull=yes -ac_cv_header_dlfcn_h=yes -ac_cv_header_errno_h=yes -ac_cv_header_inttypes_h=yes -ac_cv_header_memory_h=yes -ac_cv_header_stdc=yes -ac_cv_header_stdint_h=yes -ac_cv_header_stdlib_h=yes -ac_cv_header_string_h=yes -ac_cv_header_strings_h=yes -ac_cv_header_sys_stat_h=yes -ac_cv_header_sys_types_h=yes -ac_cv_header_unistd_h=yes -ac_cv_host=mipsel-unknown-linux-gnu -ac_cv_lib_m_cos=yes -ac_cv_lib_network_socket=no -ac_cv_objext=o -ac_cv_path_EGREP='/bin/grep -E' -ac_cv_path_FGREP='/bin/grep -F' -ac_cv_path_GREP=/bin/grep -ac_cv_path_SED=/bin/sed -ac_cv_path_install='/usr/bin/install -c' -ac_cv_path_mkdir=/bin/mkdir -ac_cv_prog_AR=mipsel-uclibc-ar -ac_cv_prog_AWK=gawk -ac_cv_prog_CC=mipsel-uclibc-gcc -ac_cv_prog_CPP='mipsel-uclibc-gcc -E' -ac_cv_prog_RANLIB=mipsel-uclibc-ranlib -ac_cv_prog_STRIP='mipsel-uclibc-strip -R .note -R .comment' -ac_cv_prog_cc_c89= -ac_cv_prog_cc_g=yes -ac_cv_prog_cc_mipsel_uclibc_gcc_c_o=yes -ac_cv_prog_make_make_set=yes -ac_cv_search_gethostbyname='none required' -ac_cv_search_socket='none required' -ac_cv_sizeof_long=4 -ac_cv_sizeof_long_long=8 -ac_cv_target=mipsel-unknown-linux-gnu -ac_cv_type_long=yes -ac_cv_type_long_long=yes -am_cv_CCAS_dependencies_compiler_type=gcc3 -am_cv_CC_dependencies_compiler_type=gcc3 -lt_cv_deplibs_check_method=pass_all -lt_cv_file_magic_cmd='$MAGIC_CMD' -lt_cv_file_magic_test_file= -lt_cv_ld_reload_flag=-r -lt_cv_nm_interface='BSD nm' -lt_cv_objdir=.libs -lt_cv_path_LD=mipsel-uclibc-ld -lt_cv_path_NM=mipsel-uclibc-nm -lt_cv_prog_compiler_c_o=yes -lt_cv_prog_compiler_pic_works=yes -lt_cv_prog_compiler_rtti_exceptions=no -lt_cv_prog_compiler_static_works=yes -lt_cv_prog_gnu_ld=yes -lt_cv_sys_global_symbol_pipe='sed -n -e '\''s/^.*[ ]\([ABCDGIRSTW][ABCDGIRSTW]*\)[ ][ ]*\([_A-Za-z][_A-Za-z0-9]*\)$/\1 \2 \2/p'\''' -lt_cv_sys_global_symbol_to_c_name_address='sed -n -e '\''s/^: \([^ ]*\) $/ {\"\1\", (void *) 0},/p'\'' -e '\''s/^[ABCDGIRSTW]* \([^ ]*\) \([^ ]*\)$/ {"\2", (void *) \&\2},/p'\''' -lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='sed -n -e '\''s/^: \([^ ]*\) $/ {\"\1\", (void *) 0},/p'\'' -e '\''s/^[ABCDGIRSTW]* \([^ ]*\) \(lib[^ ]*\)$/ {"\2", (void *) \&\2},/p'\'' -e '\''s/^[ABCDGIRSTW]* \([^ ]*\) \([^ ]*\)$/ {"lib\2", (void *) \&\2},/p'\''' -lt_cv_sys_global_symbol_to_cdecl='sed -n -e '\''s/^T .* \(.*\)$/extern int \1();/p'\'' -e '\''s/^[ABCDGIRSTW]* .* \(.*\)$/extern char \1;/p'\''' -lt_cv_sys_max_cmd_len=3458764513820540925 - -## ----------------- ## -## Output variables. ## -## ----------------- ## - -ACLOCAL='${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run aclocal-1.10' -AMDEPBACKSLASH='\' -AMDEP_FALSE='#' -AMDEP_TRUE='' -AMTAR='${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run tar' -AR='mipsel-uclibc-ar' -AS='mipsel-uclibc-as' -AUTOCONF='${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run autoconf' -AUTOHEADER='${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run autoheader' -AUTOMAKE='${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run automake-1.10' -AWK='gawk' -BUILD_AESNI_FALSE='' -BUILD_AESNI_TRUE='#' -BUILD_ECC_FALSE='' -BUILD_ECC_TRUE='#' -BUILD_FASTMATH_FALSE='' -BUILD_FASTMATH_TRUE='#' -BUILD_HC128_FALSE='' -BUILD_HC128_TRUE='#' -BUILD_NTRU_FALSE='' -BUILD_NTRU_TRUE='#' -BUILD_RIPEMD_FALSE='' -BUILD_RIPEMD_TRUE='#' -BUILD_SHA512_FALSE='' -BUILD_SHA512_TRUE='#' -BUILD_SNIFFER_FALSE='' -BUILD_SNIFFER_TRUE='#' -CC='mipsel-uclibc-gcc' -CCAS='mipsel-uclibc-gcc' -CCASDEPMODE='depmode=gcc3' -CCASFLAGS='-Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DNO_MD4 -DNO_AES -DNO_ERROR_STRINGS -DNO_HC128 -DNO_RABBIT -DNO_PSK -DNO_DSA -DNO_DH -DNO_PWDBASED ' -CCDEPMODE='depmode=gcc3' -CFLAGS='-Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DNO_MD4 -DNO_AES -DNO_ERROR_STRINGS -DNO_HC128 -DNO_RABBIT -DNO_PSK -DNO_DSA -DNO_DH -DNO_PWDBASED -DNDEBUG -DNO_HC128 -DNO_PSK -Wall -Wno-unused -Os -fomit-frame-pointer ' -CPP='mipsel-uclibc-gcc -E' -CPPFLAGS='' -CYGPATH_W='echo' -DEFS='-DHAVE_CONFIG_H' -DEPDIR='.deps' -DLLTOOL='dlltool' -DSYMUTIL='' -DUMPBIN='' -ECHO_C='' -ECHO_N='-n' -ECHO_T='' -EGREP='/bin/grep -E' -EXEEXT='' -FGREP='/bin/grep -F' -GREP='/bin/grep' -INSTALL_DATA='${INSTALL} -m 644' -INSTALL_PROGRAM='${INSTALL}' -INSTALL_SCRIPT='${INSTALL}' -INSTALL_STRIP_PROGRAM='$(install_sh) -c -s' -LD='mipsel-uclibc-ld' -LDFLAGS='-ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC' -LIBM='-lm' -LIBOBJS='' -LIBS='-lpthread -lm ' -LIBTOOL='$(SHELL) $(top_builddir)/libtool' -LIPO='' -LN_S='ln -s' -LTLIBOBJS='' -MAKEINFO='${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run makeinfo' -NM='mipsel-uclibc-nm' -NMEDIT='' -OBJDUMP='objdump' -OBJEXT='o' -OTOOL64='' -OTOOL='' -PACKAGE='cyassl' -PACKAGE_BUGREPORT='' -PACKAGE_NAME='' -PACKAGE_STRING='' -PACKAGE_TARNAME='' -PACKAGE_VERSION='' -PATH_SEPARATOR=':' -PTHREAD_CC='mipsel-uclibc-gcc' -PTHREAD_CFLAGS='' -PTHREAD_LIBS='-lpthread' -RANLIB='mipsel-uclibc-ranlib' -SED='/bin/sed' -SET_MAKE='' -SHELL='/bin/sh' -STRIP='mipsel-uclibc-strip -R .note -R .comment' -VERSION='1.9.0' -ac_ct_CC='' -ac_ct_DUMPBIN='' -acx_pthread_config='' -am__fastdepCCAS_FALSE='#' -am__fastdepCCAS_TRUE='' -am__fastdepCC_FALSE='#' -am__fastdepCC_TRUE='' -am__include='include' -am__isrc='' -am__leading_dot='.' -am__quote='' -am__tar='${AMTAR} chof - "$$tardir"' -am__untar='${AMTAR} xf -' -bindir='${exec_prefix}/bin' -build='x86_64-pc-linux-gnu' -build_alias='x86_64-linux-gnu' -build_cpu='x86_64' -build_os='linux-gnu' -build_vendor='pc' -datadir='${datarootdir}' -datarootdir='${prefix}/share' -docdir='${datarootdir}/doc/${PACKAGE}' -dvidir='${docdir}' -exec_prefix='${prefix}' -host='mipsel-unknown-linux-gnu' -host_alias='mipsel-linux' -host_cpu='mipsel' -host_os='linux-gnu' -host_vendor='unknown' -htmldir='${docdir}' -includedir='${prefix}/include' -infodir='${datarootdir}/info' -install_sh='$(SHELL) /home/vicente/tomato/release/src/router/cyassl/install-sh' -libdir='${exec_prefix}/lib' -libexecdir='${exec_prefix}/libexec' -localedir='${datarootdir}/locale' -localstatedir='${prefix}/var' -lt_ECHO='echo' -mandir='${datarootdir}/man' -mkdir_p='/bin/mkdir -p' -oldincludedir='/usr/include' -pdfdir='${docdir}' -prefix='/usr/local/cyassl' -program_transform_name='s,x,x,' -psdir='${docdir}' -sbindir='${exec_prefix}/sbin' -sharedstatedir='${prefix}/com' -sysconfdir='${prefix}/etc' -target='mipsel-unknown-linux-gnu' -target_alias='' -target_cpu='mipsel' -target_os='linux-gnu' -target_vendor='unknown' - -## ----------- ## -## confdefs.h. ## -## ----------- ## - -#define PACKAGE_NAME "" -#define PACKAGE_TARNAME "" -#define PACKAGE_VERSION "" -#define PACKAGE_STRING "" -#define PACKAGE_BUGREPORT "" -#define PACKAGE "cyassl" -#define VERSION "1.9.0" -#define STDC_HEADERS 1 -#define HAVE_SYS_TYPES_H 1 -#define HAVE_SYS_STAT_H 1 -#define HAVE_STDLIB_H 1 -#define HAVE_STRING_H 1 -#define HAVE_MEMORY_H 1 -#define HAVE_STRINGS_H 1 -#define HAVE_INTTYPES_H 1 -#define HAVE_STDINT_H 1 -#define HAVE_UNISTD_H 1 -#define HAVE_DLFCN_H 1 -#define LT_OBJDIR ".libs/" -#define SIZEOF_LONG 4 -#define SIZEOF_LONG_LONG 8 -#define HAVE_ERRNO_H 1 -#define HAVE_PTHREAD 1 - -configure: exit 0 diff --git a/release/src/router/cyassl/config.status b/release/src/router/cyassl/config.status deleted file mode 100755 index 36e51116a2..0000000000 --- a/release/src/router/cyassl/config.status +++ /dev/null @@ -1,1950 +0,0 @@ -#! /bin/sh -# Generated by configure. -# Run this file to recreate the current configuration. -# Compiler output produced by configure, useful for debugging -# configure, is in config.log if it exists. - -debug=false -ac_cs_recheck=false -ac_cs_silent=false -SHELL=${CONFIG_SHELL-/bin/sh} -## --------------------- ## -## M4sh Initialization. ## -## --------------------- ## - -# Be more Bourne compatible -DUALCASE=1; export DUALCASE # for MKS sh -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then - emulate sh - NULLCMD=: - # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which - # is contrary to our usage. Disable this feature. - alias -g '${1+"$@"}'='"$@"' - setopt NO_GLOB_SUBST -else - case `(set -o) 2>/dev/null` in - *posix*) set -o posix ;; -esac - -fi - - - - -# PATH needs CR -# Avoid depending upon Character Ranges. -as_cr_letters='abcdefghijklmnopqrstuvwxyz' -as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' -as_cr_Letters=$as_cr_letters$as_cr_LETTERS -as_cr_digits='0123456789' -as_cr_alnum=$as_cr_Letters$as_cr_digits - -# The user is always right. -if test "${PATH_SEPARATOR+set}" != set; then - echo "#! /bin/sh" >conf$$.sh - echo "exit 0" >>conf$$.sh - chmod +x conf$$.sh - if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then - PATH_SEPARATOR=';' - else - PATH_SEPARATOR=: - fi - rm -f conf$$.sh -fi - -# Support unset when possible. -if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then - as_unset=unset -else - as_unset=false -fi - - -# IFS -# We need space, tab and new line, in precisely that order. Quoting is -# there to prevent editors from complaining about space-tab. -# (If _AS_PATH_WALK were called with IFS unset, it would disable word -# splitting by setting IFS to empty value.) -as_nl=' -' -IFS=" "" $as_nl" - -# Find who we are. Look in the path if we contain no directory separator. -case $0 in - *[\\/]* ) as_myself=$0 ;; - *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break -done -IFS=$as_save_IFS - - ;; -esac -# We did not find ourselves, most probably we were run as `sh COMMAND' -# in which case we are not to be found in the path. -if test "x$as_myself" = x; then - as_myself=$0 -fi -if test ! -f "$as_myself"; then - echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 - { (exit 1); exit 1; } -fi - -# Work around bugs in pre-3.0 UWIN ksh. -for as_var in ENV MAIL MAILPATH -do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var -done -PS1='$ ' -PS2='> ' -PS4='+ ' - -# NLS nuisances. -for as_var in \ - LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \ - LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \ - LC_TELEPHONE LC_TIME -do - if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then - eval $as_var=C; export $as_var - else - ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var - fi -done - -# Required to use basename. -if expr a : '\(a\)' >/dev/null 2>&1 && - test "X`expr 00001 : '.*\(...\)'`" = X001; then - as_expr=expr -else - as_expr=false -fi - -if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then - as_basename=basename -else - as_basename=false -fi - - -# Name of the executable. -as_me=`$as_basename -- "$0" || -$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ - X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)' \| . 2>/dev/null || -echo X/"$0" | - sed '/^.*\/\([^/][^/]*\)\/*$/{ - s//\1/ - q - } - /^X\/\(\/\/\)$/{ - s//\1/ - q - } - /^X\/\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - -# CDPATH. -$as_unset CDPATH - - - - as_lineno_1=$LINENO - as_lineno_2=$LINENO - test "x$as_lineno_1" != "x$as_lineno_2" && - test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2" || { - - # Create $as_me.lineno as a copy of $as_myself, but with $LINENO - # uniformly replaced by the line number. The first 'sed' inserts a - # line-number line after each line using $LINENO; the second 'sed' - # does the real work. The second script uses 'N' to pair each - # line-number line with the line containing $LINENO, and appends - # trailing '-' during substitution so that $LINENO is not a special - # case at line end. - # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the - # scripts with optimization help from Paolo Bonzini. Blame Lee - # E. McMahon (1931-1989) for sed's syntax. :-) - sed -n ' - p - /[$]LINENO/= - ' <$as_myself | - sed ' - s/[$]LINENO.*/&-/ - t lineno - b - :lineno - N - :loop - s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/ - t loop - s/-\n.*// - ' >$as_me.lineno && - chmod +x "$as_me.lineno" || - { echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2 - { (exit 1); exit 1; }; } - - # Don't try to exec as it changes $[0], causing all sort of problems - # (the dirname of $[0] is not the place where we might find the - # original and so on. Autoconf is especially sensitive to this). - . "./$as_me.lineno" - # Exit status is that of the last command. - exit -} - - -if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then - as_dirname=dirname -else - as_dirname=false -fi - -ECHO_C= ECHO_N= ECHO_T= -case `echo -n x` in --n*) - case `echo 'x\c'` in - *c*) ECHO_T=' ';; # ECHO_T is single tab character. - *) ECHO_C='\c';; - esac;; -*) - ECHO_N='-n';; -esac - -if expr a : '\(a\)' >/dev/null 2>&1 && - test "X`expr 00001 : '.*\(...\)'`" = X001; then - as_expr=expr -else - as_expr=false -fi - -rm -f conf$$ conf$$.exe conf$$.file -if test -d conf$$.dir; then - rm -f conf$$.dir/conf$$.file -else - rm -f conf$$.dir - mkdir conf$$.dir -fi -echo >conf$$.file -if ln -s conf$$.file conf$$ 2>/dev/null; then - as_ln_s='ln -s' - # ... but there are two gotchas: - # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. - # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. - # In both cases, we have to default to `cp -p'. - ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || - as_ln_s='cp -p' -elif ln conf$$.file conf$$ 2>/dev/null; then - as_ln_s=ln -else - as_ln_s='cp -p' -fi -rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file -rmdir conf$$.dir 2>/dev/null - -if mkdir -p . 2>/dev/null; then - as_mkdir_p=: -else - test -d ./-p && rmdir ./-p - as_mkdir_p=false -fi - -if test -x / >/dev/null 2>&1; then - as_test_x='test -x' -else - if ls -dL / >/dev/null 2>&1; then - as_ls_L_option=L - else - as_ls_L_option= - fi - as_test_x=' - eval sh -c '\'' - if test -d "$1"; then - test -d "$1/."; - else - case $1 in - -*)set "./$1";; - esac; - case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in - ???[sx]*):;;*)false;;esac;fi - '\'' sh - ' -fi -as_executable_p=$as_test_x - -# Sed expression to map a string onto a valid CPP name. -as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" - -# Sed expression to map a string onto a valid variable name. -as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" - - -exec 6>&1 - -# Save the log message, to keep $[0] and so on meaningful, and to -# report actual input values of CONFIG_FILES etc. instead of their -# values after options handling. -ac_log=" -This file was extended by $as_me, which was -generated by GNU Autoconf 2.61. Invocation command line was - - CONFIG_FILES = $CONFIG_FILES - CONFIG_HEADERS = $CONFIG_HEADERS - CONFIG_LINKS = $CONFIG_LINKS - CONFIG_COMMANDS = $CONFIG_COMMANDS - $ $0 $@ - -on `(hostname || uname -n) 2>/dev/null | sed 1q` -" - -# Files that config.status was made for. -config_files=" Makefile ctaocrypt/Makefile ctaocrypt/src/Makefile ctaocrypt/test/Makefile ctaocrypt/benchmark/Makefile src/Makefile examples/Makefile examples/client/Makefile examples/server/Makefile examples/echoclient/Makefile examples/echoserver/Makefile testsuite/Makefile sslSniffer/Makefile sslSniffer/sslSnifferTest/Makefile" -config_headers=" ctaocrypt/include/config.h" -config_commands=" depfiles libtool" - -ac_cs_usage="\ -\`$as_me' instantiates files from templates according to the -current configuration. - -Usage: $0 [OPTIONS] [FILE]... - - -h, --help print this help, then exit - -V, --version print version number and configuration settings, then exit - -q, --quiet do not print progress messages - -d, --debug don't remove temporary files - --recheck update $as_me by reconfiguring in the same conditions - --file=FILE[:TEMPLATE] - instantiate the configuration file FILE - --header=FILE[:TEMPLATE] - instantiate the configuration header FILE - -Configuration files: -$config_files - -Configuration headers: -$config_headers - -Configuration commands: -$config_commands - -Report bugs to ." - -ac_cs_version="\ -config.status -configured by ./configure, generated by GNU Autoconf 2.61, - with options \"'--host=mipsel-linux' '--build=x86_64-linux-gnu' 'build_alias=x86_64-linux-gnu' 'host_alias=mipsel-linux' 'CC=mipsel-uclibc-gcc' 'CFLAGS=-Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DNO_MD4 -DNO_AES -DNO_ERROR_STRINGS -DNO_HC128 -DNO_RABBIT -DNO_PSK -DNO_DSA -DNO_DH -DNO_PWDBASED' 'LDFLAGS=-ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC'\" - -Copyright (C) 2006 Free Software Foundation, Inc. -This config.status script is free software; the Free Software Foundation -gives unlimited permission to copy, distribute and modify it." - -ac_pwd='/home/vicente/tomato/release/src/router/cyassl' -srcdir='.' -INSTALL='/usr/bin/install -c' -MKDIR_P='/bin/mkdir -p' -# If no file are specified by the user, then we need to provide default -# value. By we need to know if files were specified by the user. -ac_need_defaults=: -while test $# != 0 -do - case $1 in - --*=*) - ac_option=`expr "X$1" : 'X\([^=]*\)='` - ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'` - ac_shift=: - ;; - *) - ac_option=$1 - ac_optarg=$2 - ac_shift=shift - ;; - esac - - case $ac_option in - # Handling of the options. - -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) - ac_cs_recheck=: ;; - --version | --versio | --versi | --vers | --ver | --ve | --v | -V ) - echo "$ac_cs_version"; exit ;; - --debug | --debu | --deb | --de | --d | -d ) - debug=: ;; - --file | --fil | --fi | --f ) - $ac_shift - CONFIG_FILES="$CONFIG_FILES $ac_optarg" - ac_need_defaults=false;; - --header | --heade | --head | --hea ) - $ac_shift - CONFIG_HEADERS="$CONFIG_HEADERS $ac_optarg" - ac_need_defaults=false;; - --he | --h) - # Conflict between --help and --header - { echo "$as_me: error: ambiguous option: $1 -Try \`$0 --help' for more information." >&2 - { (exit 1); exit 1; }; };; - --help | --hel | -h ) - echo "$ac_cs_usage"; exit ;; - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil | --si | --s) - ac_cs_silent=: ;; - - # This is an error. - -*) { echo "$as_me: error: unrecognized option: $1 -Try \`$0 --help' for more information." >&2 - { (exit 1); exit 1; }; } ;; - - *) ac_config_targets="$ac_config_targets $1" - ac_need_defaults=false ;; - - esac - shift -done - -ac_configure_extra_args= - -if $ac_cs_silent; then - exec 6>/dev/null - ac_configure_extra_args="$ac_configure_extra_args --silent" -fi - -if $ac_cs_recheck; then - echo "running CONFIG_SHELL=/bin/sh /bin/sh ./configure " '--host=mipsel-linux' '--build=x86_64-linux-gnu' 'build_alias=x86_64-linux-gnu' 'host_alias=mipsel-linux' 'CC=mipsel-uclibc-gcc' 'CFLAGS=-Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DNO_MD4 -DNO_AES -DNO_ERROR_STRINGS -DNO_HC128 -DNO_RABBIT -DNO_PSK -DNO_DSA -DNO_DH -DNO_PWDBASED' 'LDFLAGS=-ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC' $ac_configure_extra_args " --no-create --no-recursion" >&6 - CONFIG_SHELL=/bin/sh - export CONFIG_SHELL - exec /bin/sh "./configure" '--host=mipsel-linux' '--build=x86_64-linux-gnu' 'build_alias=x86_64-linux-gnu' 'host_alias=mipsel-linux' 'CC=mipsel-uclibc-gcc' 'CFLAGS=-Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DNO_MD4 -DNO_AES -DNO_ERROR_STRINGS -DNO_HC128 -DNO_RABBIT -DNO_PSK -DNO_DSA -DNO_DH -DNO_PWDBASED' 'LDFLAGS=-ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC' $ac_configure_extra_args --no-create --no-recursion -fi - -exec 5>>config.log -{ - echo - sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX -## Running $as_me. ## -_ASBOX - echo "$ac_log" -} >&5 - -# -# INIT-COMMANDS -# -AMDEP_TRUE="" ac_aux_dir="." - - -# The HP-UX ksh and POSIX shell print the target directory to stdout -# if CDPATH is set. -(unset CDPATH) >/dev/null 2>&1 && unset CDPATH - -sed_quote_subst='s/\(["`$\\]\)/\\\1/g' -double_quote_subst='s/\(["`\\]\)/\\\1/g' -delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g' -AS='mipsel-uclibc-as' -DLLTOOL='dlltool' -OBJDUMP='objdump' -macro_version='2.2.4' -macro_revision='1.2976' -enable_shared='yes' -enable_static='yes' -pic_mode='default' -enable_fast_install='yes' -host_alias='mipsel-linux' -host='mipsel-unknown-linux-gnu' -host_os='linux-gnu' -build_alias='x86_64-linux-gnu' -build='x86_64-pc-linux-gnu' -build_os='linux-gnu' -SED='/bin/sed' -Xsed='/bin/sed -e 1s/^X//' -GREP='/bin/grep' -EGREP='/bin/grep -E' -FGREP='/bin/grep -F' -LD='mipsel-uclibc-ld' -NM='mipsel-uclibc-nm' -LN_S='ln -s' -max_cmd_len='3458764513820540925' -ac_objext='o' -exeext='' -lt_unset='unset' -lt_SP2NL='tr \040 \012' -lt_NL2SP='tr \015\012 \040\040' -reload_flag=' -r' -reload_cmds='$LD$reload_flag -o $output$reload_objs' -deplibs_check_method='pass_all' -file_magic_cmd='$MAGIC_CMD' -AR='mipsel-uclibc-ar' -AR_FLAGS='cru' -STRIP='mipsel-uclibc-strip -R .note -R .comment' -RANLIB='mipsel-uclibc-ranlib' -old_postinstall_cmds='chmod 644 $oldlib~$RANLIB $oldlib' -old_postuninstall_cmds='' -old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs~$RANLIB $oldlib' -CC='mipsel-uclibc-gcc' -CFLAGS='-Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DNO_MD4 -DNO_AES -DNO_ERROR_STRINGS -DNO_HC128 -DNO_RABBIT -DNO_PSK -DNO_DSA -DNO_DH -DNO_PWDBASED -DNDEBUG -DNO_HC128 -DNO_PSK -Wall -Wno-unused -Os -fomit-frame-pointer ' -compiler='mipsel-uclibc-gcc' -GCC='yes' -lt_cv_sys_global_symbol_pipe='sed -n -e '\''s/^.*[ ]\([ABCDGIRSTW][ABCDGIRSTW]*\)[ ][ ]*\([_A-Za-z][_A-Za-z0-9]*\)$/\1 \2 \2/p'\''' -lt_cv_sys_global_symbol_to_cdecl='sed -n -e '\''s/^T .* \(.*\)$/extern int \1();/p'\'' -e '\''s/^[ABCDGIRSTW]* .* \(.*\)$/extern char \1;/p'\''' -lt_cv_sys_global_symbol_to_c_name_address='sed -n -e '\''s/^: \([^ ]*\) $/ {\"\1\", (void *) 0},/p'\'' -e '\''s/^[ABCDGIRSTW]* \([^ ]*\) \([^ ]*\)$/ {"\2", (void *) \&\2},/p'\''' -lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='sed -n -e '\''s/^: \([^ ]*\) $/ {\"\1\", (void *) 0},/p'\'' -e '\''s/^[ABCDGIRSTW]* \([^ ]*\) \(lib[^ ]*\)$/ {"\2", (void *) \&\2},/p'\'' -e '\''s/^[ABCDGIRSTW]* \([^ ]*\) \([^ ]*\)$/ {"lib\2", (void *) \&\2},/p'\''' -objdir='.libs' -SHELL='/bin/sh' -ECHO='echo' -MAGIC_CMD='file' -lt_prog_compiler_no_builtin_flag=' -fno-builtin' -lt_prog_compiler_wl='-Wl,' -lt_prog_compiler_pic=' -fPIC -DPIC' -lt_prog_compiler_static='-static' -lt_cv_prog_compiler_c_o='yes' -need_locks='no' -DSYMUTIL='' -NMEDIT='' -LIPO='' -OTOOL='' -OTOOL64='' -libext='a' -shrext_cmds='.so' -extract_expsyms_cmds='' -archive_cmds_need_lc='no' -enable_shared_with_static_runtimes='no' -export_dynamic_flag_spec='${wl}--export-dynamic' -whole_archive_flag_spec='${wl}--whole-archive$convenience ${wl}--no-whole-archive' -compiler_needs_object='no' -old_archive_from_new_cmds='' -old_archive_from_expsyms_cmds='' -archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' -archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~ - cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ - echo "local: *; };" >> $output_objdir/$libname.ver~ - $CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib' -module_cmds='' -module_expsym_cmds='' -with_gnu_ld='yes' -allow_undefined_flag='' -no_undefined_flag='' -hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' -hardcode_libdir_flag_spec_ld='' -hardcode_libdir_separator='' -hardcode_direct='no' -hardcode_direct_absolute='no' -hardcode_minus_L='no' -hardcode_shlibpath_var='unsupported' -hardcode_automatic='no' -inherit_rpath='no' -link_all_deplibs='unknown' -fix_srcfile_path='' -always_export_symbols='no' -export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' -exclude_expsyms='_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*' -include_expsyms='' -prelink_cmds='' -file_list_spec='' -variables_saved_for_relink='PATH LD_LIBRARY_PATH LD_RUN_PATH GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH' -need_lib_prefix='no' -need_version='no' -version_type='linux' -runpath_var='LD_RUN_PATH' -shlibpath_var='LD_LIBRARY_PATH' -shlibpath_overrides_runpath='no' -libname_spec='lib$name' -library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' -soname_spec='${libname}${release}${shared_ext}$major' -postinstall_cmds='' -postuninstall_cmds='' -finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' -finish_eval='' -hardcode_into_libs='yes' -sys_lib_search_path_spec='/home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/lib/gcc/mipsel-linux-uclibc/4.2.4 /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/lib/gcc /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/mipsel-linux-uclibc/lib' -sys_lib_dlsearch_path_spec='/lib /usr/lib /lib/i386-linux-gnu /usr/lib/i386-linux-gnu /lib/i686-linux-gnu /usr/lib/i686-linux-gnu /usr/local/lib /usr/lib/nvidia-settings /lib/x86_64-linux-gnu /usr/lib/x86_64-linux-gnu /usr/lib/nvidia-current /usr/lib32/nvidia-current /lib32 /usr/lib32 ' -hardcode_action='immediate' -enable_dlopen='unknown' -enable_dlopen_self='unknown' -enable_dlopen_self_static='unknown' -old_striplib='mipsel-uclibc-strip -R .note -R .comment --strip-debug' -striplib='mipsel-uclibc-strip -R .note -R .comment --strip-unneeded' - -LTCC='mipsel-uclibc-gcc' -LTCFLAGS='-Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DNO_MD4 -DNO_AES -DNO_ERROR_STRINGS -DNO_HC128 -DNO_RABBIT -DNO_PSK -DNO_DSA -DNO_DH -DNO_PWDBASED ' -compiler='mipsel-uclibc-gcc' - -# Quote evaled strings. -for var in SED GREP EGREP FGREP LD NM LN_S lt_SP2NL lt_NL2SP reload_flag deplibs_check_method file_magic_cmd AR AR_FLAGS STRIP RANLIB CC CFLAGS compiler lt_cv_sys_global_symbol_pipe lt_cv_sys_global_symbol_to_cdecl lt_cv_sys_global_symbol_to_c_name_address lt_cv_sys_global_symbol_to_c_name_address_lib_prefix SHELL ECHO lt_prog_compiler_no_builtin_flag lt_prog_compiler_wl lt_prog_compiler_pic lt_prog_compiler_static lt_cv_prog_compiler_c_o need_locks DSYMUTIL NMEDIT LIPO OTOOL OTOOL64 shrext_cmds export_dynamic_flag_spec whole_archive_flag_spec compiler_needs_object with_gnu_ld allow_undefined_flag no_undefined_flag hardcode_libdir_flag_spec hardcode_libdir_flag_spec_ld hardcode_libdir_separator fix_srcfile_path exclude_expsyms include_expsyms file_list_spec variables_saved_for_relink libname_spec library_names_spec soname_spec finish_eval old_striplib striplib; do - case `eval \\$ECHO "X\\$$var"` in - *[\\\`\"\$]*) - eval "lt_$var=\\\"\`\$ECHO \"X\$$var\" | \$Xsed -e \"\$sed_quote_subst\"\`\\\"" - ;; - *) - eval "lt_$var=\\\"\$$var\\\"" - ;; - esac -done - -# Double-quote double-evaled strings. -for var in reload_cmds old_postinstall_cmds old_postuninstall_cmds old_archive_cmds extract_expsyms_cmds old_archive_from_new_cmds old_archive_from_expsyms_cmds archive_cmds archive_expsym_cmds module_cmds module_expsym_cmds export_symbols_cmds prelink_cmds postinstall_cmds postuninstall_cmds finish_cmds sys_lib_search_path_spec sys_lib_dlsearch_path_spec; do - case `eval \\$ECHO "X\\$$var"` in - *[\\\`\"\$]*) - eval "lt_$var=\\\"\`\$ECHO \"X\$$var\" | \$Xsed -e \"\$double_quote_subst\" -e \"\$sed_quote_subst\" -e \"\$delay_variable_subst\"\`\\\"" - ;; - *) - eval "lt_$var=\\\"\$$var\\\"" - ;; - esac -done - -# Fix-up fallback echo if it was mangled by the above quoting rules. -case $lt_ECHO in -*'\$0 --fallback-echo"') lt_ECHO=`$ECHO "X$lt_ECHO" | $Xsed -e 's/\\\\\\\$0 --fallback-echo"$/$0 --fallback-echo"/'` - ;; -esac - -ac_aux_dir='.' -xsi_shell='yes' -lt_shell_append='yes' - -# See if we are running on zsh, and set the options which allow our -# commands through without removal of \ escapes INIT. -if test -n "${ZSH_VERSION+set}" ; then - setopt NO_GLOB_SUBST -fi - - - PACKAGE='cyassl' - VERSION='1.9.0' - TIMESTAMP='' - RM='rm -f' - ofile='libtool' - - - - - -# Handling of arguments. -for ac_config_target in $ac_config_targets -do - case $ac_config_target in - "ctaocrypt/include/config.h") CONFIG_HEADERS="$CONFIG_HEADERS ctaocrypt/include/config.h" ;; - "depfiles") CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;; - "libtool") CONFIG_COMMANDS="$CONFIG_COMMANDS libtool" ;; - "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;; - "ctaocrypt/Makefile") CONFIG_FILES="$CONFIG_FILES ctaocrypt/Makefile" ;; - "ctaocrypt/src/Makefile") CONFIG_FILES="$CONFIG_FILES ctaocrypt/src/Makefile" ;; - "ctaocrypt/test/Makefile") CONFIG_FILES="$CONFIG_FILES ctaocrypt/test/Makefile" ;; - "ctaocrypt/benchmark/Makefile") CONFIG_FILES="$CONFIG_FILES ctaocrypt/benchmark/Makefile" ;; - "src/Makefile") CONFIG_FILES="$CONFIG_FILES src/Makefile" ;; - "examples/Makefile") CONFIG_FILES="$CONFIG_FILES examples/Makefile" ;; - "examples/client/Makefile") CONFIG_FILES="$CONFIG_FILES examples/client/Makefile" ;; - "examples/server/Makefile") CONFIG_FILES="$CONFIG_FILES examples/server/Makefile" ;; - "examples/echoclient/Makefile") CONFIG_FILES="$CONFIG_FILES examples/echoclient/Makefile" ;; - "examples/echoserver/Makefile") CONFIG_FILES="$CONFIG_FILES examples/echoserver/Makefile" ;; - "testsuite/Makefile") CONFIG_FILES="$CONFIG_FILES testsuite/Makefile" ;; - "sslSniffer/Makefile") CONFIG_FILES="$CONFIG_FILES sslSniffer/Makefile" ;; - "sslSniffer/sslSnifferTest/Makefile") CONFIG_FILES="$CONFIG_FILES sslSniffer/sslSnifferTest/Makefile" ;; - - *) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5 -echo "$as_me: error: invalid argument: $ac_config_target" >&2;} - { (exit 1); exit 1; }; };; - esac -done - - -# If the user did not use the arguments to specify the items to instantiate, -# then the envvar interface is used. Set only those that are not. -# We use the long form for the default assignment because of an extremely -# bizarre bug on SunOS 4.1.3. -if $ac_need_defaults; then - test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files - test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers - test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands -fi - -# Have a temporary directory for convenience. Make it in the build tree -# simply because there is no reason against having it here, and in addition, -# creating and moving files from /tmp can sometimes cause problems. -# Hook for its removal unless debugging. -# Note that there is a small window in which the directory will not be cleaned: -# after its creation but before its name has been assigned to `$tmp'. -$debug || -{ - tmp= - trap 'exit_status=$? - { test -z "$tmp" || test ! -d "$tmp" || rm -fr "$tmp"; } && exit $exit_status -' 0 - trap '{ (exit 1); exit 1; }' 1 2 13 15 -} -# Create a (secure) tmp directory for tmp files. - -{ - tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` && - test -n "$tmp" && test -d "$tmp" -} || -{ - tmp=./conf$$-$RANDOM - (umask 077 && mkdir "$tmp") -} || -{ - echo "$me: cannot create a temporary directory in ." >&2 - { (exit 1); exit 1; } -} - -# -# Set up the sed scripts for CONFIG_FILES section. -# - -# No need to generate the scripts if there are no CONFIG_FILES. -# This happens for instance when ./config.status config.h -if test -n "$CONFIG_FILES"; then - -cat >"$tmp/subs-1.sed" <<\CEOF -/@[a-zA-Z_][a-zA-Z_0-9]*@/!b -s,@SHELL@,|#_!!_#|/bin/sh,g -s,@PATH_SEPARATOR@,|#_!!_#|:,g -s,@PACKAGE_NAME@,|#_!!_#|,g -s,@PACKAGE_TARNAME@,|#_!!_#|,g -s,@PACKAGE_VERSION@,|#_!!_#|,g -s,@PACKAGE_STRING@,|#_!!_#|,g -s,@PACKAGE_BUGREPORT@,|#_!!_#|,g -s,@exec_prefix@,|#_!!_#|${prefix},g -s,@prefix@,|#_!!_#|/usr/local/cyassl,g -s,@program_transform_name@,|#_!!_#|s\,x\,x\,,g -s,@bindir@,|#_!!_#|${exec_prefix}/bin,g -s,@sbindir@,|#_!!_#|${exec_prefix}/sbin,g -s,@libexecdir@,|#_!!_#|${exec_prefix}/libexec,g -s,@datarootdir@,|#_!!_#|${prefix}/share,g -s,@datadir@,|#_!!_#|${datarootdir},g -s,@sysconfdir@,|#_!!_#|${prefix}/etc,g -s,@sharedstatedir@,|#_!!_#|${prefix}/com,g -s,@localstatedir@,|#_!!_#|${prefix}/var,g -s,@includedir@,|#_!!_#|${prefix}/include,g -s,@oldincludedir@,|#_!!_#|/usr/include,g -s,@docdir@,|#_!!_#|${datarootdir}/doc/${PACKAGE},g -s,@infodir@,|#_!!_#|${datarootdir}/info,g -s,@htmldir@,|#_!!_#|${docdir},g -s,@dvidir@,|#_!!_#|${docdir},g -s,@pdfdir@,|#_!!_#|${docdir},g -s,@psdir@,|#_!!_#|${docdir},g -s,@libdir@,|#_!!_#|${exec_prefix}/lib,g -s,@localedir@,|#_!!_#|${datarootdir}/locale,g -s,@mandir@,|#_!!_#|${datarootdir}/man,g -s,@DEFS@,|#_!!_#|-DHAVE_CONFIG_H,g -s,@ECHO_C@,|#_!!_#|,g -s,@ECHO_N@,|#_!!_#|-n,g -s,@ECHO_T@,|#_!!_#|,g -s,@LIBS@,|#_!!_#|-lpthread -lm ,g -s,@build_alias@,|#_!!_#|x86_64-linux-gnu,g -s,@host_alias@,|#_!!_#|mipsel-linux,g -s,@target_alias@,|#_!!_#|,g -s,@build@,|#_!!_#|x86_64-pc-linux-gnu,g -s,@build_cpu@,|#_!!_#|x86_64,g -s,@build_vendor@,|#_!!_#|pc,g -s,@build_os@,|#_!!_#|linux-gnu,g -s,@host@,|#_!!_#|mipsel-unknown-linux-gnu,g -s,@host_cpu@,|#_!!_#|mipsel,g -s,@host_vendor@,|#_!!_#|unknown,g -s,@host_os@,|#_!!_#|linux-gnu,g -s,@target@,|#_!!_#|mipsel-unknown-linux-gnu,g -s,@target_cpu@,|#_!!_#|mipsel,g -s,@target_vendor@,|#_!!_#|unknown,g -s,@target_os@,|#_!!_#|linux-gnu,g -s,@INSTALL_PROGRAM@,|#_!!_#|${INSTALL},g -s,@INSTALL_SCRIPT@,|#_!!_#|${INSTALL},g -s,@INSTALL_DATA@,|#_!!_#|${INSTALL} -m 644,g -s,@am__isrc@,|#_!!_#|,g -s,@CYGPATH_W@,|#_!!_#|echo,g -s,@PACKAGE@,|#_!!_#|cyassl,g -s,@VERSION@,|#_!!_#|1.9.0,g -s,@ACLOCAL@,|#_!!_#|${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run aclocal-1.10,g -s,@AUTOCONF@,|#_!!_#|${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run autoconf,g -s,@AUTOMAKE@,|#_!!_#|${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run automake-1.10,g -s,@AUTOHEADER@,|#_!!_#|${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run autoheader,g -s,@MAKEINFO@,|#_!!_#|${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run makeinfo,g -s,@install_sh@,|#_!!_#|$(SHELL) /home/vicente/tomato/release/src/router/cyassl/install-sh,g -s,@STRIP@,|#_!!_#|mipsel-uclibc-strip -R .note -R .comment,g -s,@INSTALL_STRIP_PROGRAM@,|#_!!_#|$(install_sh) -c -s,g -s,@mkdir_p@,|#_!!_#|/bin/mkdir -p,g -s,@AWK@,|#_!!_#|gawk,g -s,@SET_MAKE@,|#_!!_#|,g -s,@am__leading_dot@,|#_!!_#|.,g -s,@AMTAR@,|#_!!_#|${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run tar,g -s,@am__tar@,|#_!!_#|${AMTAR} chof - "$$tardir",g -s,@am__untar@,|#_!!_#|${AMTAR} xf -,g -s,@CC@,|#_!!_#|mipsel-uclibc-gcc,g -s,@CFLAGS@,|#_!!_#|-Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DNO_MD4 -DNO_AES -DNO_ERROR_STRINGS -DNO_HC128 -DNO_RABBIT -DNO_PSK -DNO_DSA -DNO_DH -DNO_PWDBASED -DNDEBUG -DNO_HC128 -DNO_PSK -Wall -Wno-unused -Os -fomit-frame-pointer ,g -s,@LDFLAGS@,|#_!!_#|-ffunction-sections -fdata-sections -Wl\,--gc-sections -fPIC,g -s,@CPPFLAGS@,|#_!!_#|,g -s,@ac_ct_CC@,|#_!!_#|,g -s,@EXEEXT@,|#_!!_#|,g -s,@OBJEXT@,|#_!!_#|o,g -s,@DEPDIR@,|#_!!_#|.deps,g -s,@am__include@,|#_!!_#|include,g -s,@am__quote@,|#_!!_#|,g -s,@AMDEP_TRUE@,|#_!!_#|,g -s,@AMDEP_FALSE@,|#_!!_#|#,g -s,@AMDEPBACKSLASH@,|#_!!_#|\\,g -s,@CCDEPMODE@,|#_!!_#|depmode=gcc3,g -s,@am__fastdepCC_TRUE@,|#_!!_#|,g -s,@am__fastdepCC_FALSE@,|#_!!_#|#,g -s,@CCAS@,|#_!!_#|mipsel-uclibc-gcc,g -s,@CCASFLAGS@,|#_!!_#|-Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DNO_MD4 -DNO_AES -DNO_ERROR_STRINGS -DNO_HC128 -DNO_RABBIT -DNO_PSK -DNO_DSA -DNO_DH -DNO_PWDBASED ,g -s,@CCASDEPMODE@,|#_!!_#|depmode=gcc3,g -s,@am__fastdepCCAS_TRUE@,|#_!!_#|,g -s,@am__fastdepCCAS_FALSE@,|#_!!_#|#,g -s,@AS@,|#_!!_#|mipsel-uclibc-as,g -s,@DLLTOOL@,|#_!!_#|dlltool,g -s,@OBJDUMP@,|#_!!_#|objdump,g -s,@LIBTOOL@,|#_!!_#|$(SHELL) $(top_builddir)/libtool,g -s,@SED@,|#_!!_#|/bin/sed,g -CEOF -cat >"$tmp/subs-2.sed" <<\CEOF -/@[a-zA-Z_][a-zA-Z_0-9]*@/!b end -s,@GREP@,|#_!!_#|/bin/grep,g -s,@EGREP@,|#_!!_#|/bin/grep -E,g -s,@FGREP@,|#_!!_#|/bin/grep -F,g -s,@LD@,|#_!!_#|mipsel-uclibc-ld,g -s,@DUMPBIN@,|#_!!_#|,g -s,@ac_ct_DUMPBIN@,|#_!!_#|,g -s,@NM@,|#_!!_#|mipsel-uclibc-nm,g -s,@LN_S@,|#_!!_#|ln -s,g -s,@AR@,|#_!!_#|mipsel-uclibc-ar,g -s,@RANLIB@,|#_!!_#|mipsel-uclibc-ranlib,g -s,@lt_ECHO@,|#_!!_#|echo,g -s,@DSYMUTIL@,|#_!!_#|,g -s,@NMEDIT@,|#_!!_#|,g -s,@LIPO@,|#_!!_#|,g -s,@OTOOL@,|#_!!_#|,g -s,@OTOOL64@,|#_!!_#|,g -s,@CPP@,|#_!!_#|mipsel-uclibc-gcc -E,g -s,@LIBM@,|#_!!_#|-lm,g -s,@BUILD_FASTMATH_TRUE@,|#_!!_#|#,g -s,@BUILD_FASTMATH_FALSE@,|#_!!_#|,g -s,@BUILD_SNIFFER_TRUE@,|#_!!_#|#,g -s,@BUILD_SNIFFER_FALSE@,|#_!!_#|,g -s,@BUILD_AESNI_TRUE@,|#_!!_#|#,g -s,@BUILD_AESNI_FALSE@,|#_!!_#|,g -s,@BUILD_RIPEMD_TRUE@,|#_!!_#|#,g -s,@BUILD_RIPEMD_FALSE@,|#_!!_#|,g -s,@BUILD_SHA512_TRUE@,|#_!!_#|#,g -s,@BUILD_SHA512_FALSE@,|#_!!_#|,g -s,@BUILD_HC128_TRUE@,|#_!!_#|#,g -s,@BUILD_HC128_FALSE@,|#_!!_#|,g -s,@BUILD_ECC_TRUE@,|#_!!_#|#,g -s,@BUILD_ECC_FALSE@,|#_!!_#|,g -s,@BUILD_NTRU_TRUE@,|#_!!_#|#,g -s,@BUILD_NTRU_FALSE@,|#_!!_#|,g -s,@acx_pthread_config@,|#_!!_#|,g -s,@PTHREAD_CC@,|#_!!_#|mipsel-uclibc-gcc,g -s,@PTHREAD_LIBS@,|#_!!_#|-lpthread,g -s,@PTHREAD_CFLAGS@,|#_!!_#|,g -s,@LIBOBJS@,|#_!!_#|,g -s,@LTLIBOBJS@,|#_!!_#|,g -:end -s/|#_!!_#|//g -CEOF -fi # test -n "$CONFIG_FILES" - - -for ac_tag in :F $CONFIG_FILES :H $CONFIG_HEADERS :C $CONFIG_COMMANDS -do - case $ac_tag in - :[FHLC]) ac_mode=$ac_tag; continue;; - esac - case $ac_mode$ac_tag in - :[FHL]*:*);; - :L* | :C*:*) { { echo "$as_me:$LINENO: error: Invalid tag $ac_tag." >&5 -echo "$as_me: error: Invalid tag $ac_tag." >&2;} - { (exit 1); exit 1; }; };; - :[FH]-) ac_tag=-:-;; - :[FH]*) ac_tag=$ac_tag:$ac_tag.in;; - esac - ac_save_IFS=$IFS - IFS=: - set x $ac_tag - IFS=$ac_save_IFS - shift - ac_file=$1 - shift - - case $ac_mode in - :L) ac_source=$1;; - :[FH]) - ac_file_inputs= - for ac_f - do - case $ac_f in - -) ac_f="$tmp/stdin";; - *) # Look for the file first in the build tree, then in the source tree - # (if the path is not absolute). The absolute path cannot be DOS-style, - # because $ac_f cannot contain `:'. - test -f "$ac_f" || - case $ac_f in - [\\/$]*) false;; - *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";; - esac || - { { echo "$as_me:$LINENO: error: cannot find input file: $ac_f" >&5 -echo "$as_me: error: cannot find input file: $ac_f" >&2;} - { (exit 1); exit 1; }; };; - esac - ac_file_inputs="$ac_file_inputs $ac_f" - done - - # Let's still pretend it is `configure' which instantiates (i.e., don't - # use $as_me), people would be surprised to read: - # /* config.h. Generated by config.status. */ - configure_input="Generated from "`IFS=: - echo $* | sed 's|^[^:]*/||;s|:[^:]*/|, |g'`" by configure." - if test x"$ac_file" != x-; then - configure_input="$ac_file. $configure_input" - { echo "$as_me:$LINENO: creating $ac_file" >&5 -echo "$as_me: creating $ac_file" >&6;} - fi - - case $ac_tag in - *:-:* | *:-) cat >"$tmp/stdin";; - esac - ;; - esac - - ac_dir=`$as_dirname -- "$ac_file" || -$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$ac_file" : 'X\(//\)[^/]' \| \ - X"$ac_file" : 'X\(//\)$' \| \ - X"$ac_file" : 'X\(/\)' \| . 2>/dev/null || -echo X"$ac_file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - { as_dir="$ac_dir" - case $as_dir in #( - -*) as_dir=./$as_dir;; - esac - test -d "$as_dir" || { $as_mkdir_p && mkdir -p "$as_dir"; } || { - as_dirs= - while :; do - case $as_dir in #( - *\'*) as_qdir=`echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #( - *) as_qdir=$as_dir;; - esac - as_dirs="'$as_qdir' $as_dirs" - as_dir=`$as_dirname -- "$as_dir" || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || -echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - test -d "$as_dir" && break - done - test -z "$as_dirs" || eval "mkdir $as_dirs" - } || test -d "$as_dir" || { { echo "$as_me:$LINENO: error: cannot create directory $as_dir" >&5 -echo "$as_me: error: cannot create directory $as_dir" >&2;} - { (exit 1); exit 1; }; }; } - ac_builddir=. - -case "$ac_dir" in -.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; -*) - ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` - # A ".." for each directory in $ac_dir_suffix. - ac_top_builddir_sub=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,/..,g;s,/,,'` - case $ac_top_builddir_sub in - "") ac_top_builddir_sub=. ac_top_build_prefix= ;; - *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; - esac ;; -esac -ac_abs_top_builddir=$ac_pwd -ac_abs_builddir=$ac_pwd$ac_dir_suffix -# for backward compatibility: -ac_top_builddir=$ac_top_build_prefix - -case $srcdir in - .) # We are building in place. - ac_srcdir=. - ac_top_srcdir=$ac_top_builddir_sub - ac_abs_top_srcdir=$ac_pwd ;; - [\\/]* | ?:[\\/]* ) # Absolute name. - ac_srcdir=$srcdir$ac_dir_suffix; - ac_top_srcdir=$srcdir - ac_abs_top_srcdir=$srcdir ;; - *) # Relative name. - ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix - ac_top_srcdir=$ac_top_build_prefix$srcdir - ac_abs_top_srcdir=$ac_pwd/$srcdir ;; -esac -ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix - - - case $ac_mode in - :F) - # - # CONFIG_FILE - # - - case $INSTALL in - [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;; - *) ac_INSTALL=$ac_top_build_prefix$INSTALL ;; - esac - ac_MKDIR_P=$MKDIR_P - case $MKDIR_P in - [\\/$]* | ?:[\\/]* ) ;; - */*) ac_MKDIR_P=$ac_top_build_prefix$MKDIR_P ;; - esac -# If the template does not know about datarootdir, expand it. -# FIXME: This hack should be removed a few years after 2.60. -ac_datarootdir_hack=; ac_datarootdir_seen= - -case `sed -n '/datarootdir/ { - p - q -} -/@datadir@/p -/@docdir@/p -/@infodir@/p -/@localedir@/p -/@mandir@/p -' $ac_file_inputs` in -*datarootdir*) ac_datarootdir_seen=yes;; -*@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*) - { echo "$as_me:$LINENO: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5 -echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;} - ac_datarootdir_hack=' - s&@datadir@&${datarootdir}&g - s&@docdir@&${datarootdir}/doc/${PACKAGE}&g - s&@infodir@&${datarootdir}/info&g - s&@localedir@&${datarootdir}/locale&g - s&@mandir@&${datarootdir}/man&g - s&\${datarootdir}&${prefix}/share&g' ;; -esac - sed "/^[ ]*VPATH[ ]*=/{ -s/:*\$(srcdir):*/:/ -s/:*\${srcdir}:*/:/ -s/:*@srcdir@:*/:/ -s/^\([^=]*=[ ]*\):*/\1/ -s/:*$// -s/^[^=]*=[ ]*$// -} - -:t -/@[a-zA-Z_][a-zA-Z_0-9]*@/!b -s&@configure_input@&$configure_input&;t t -s&@top_builddir@&$ac_top_builddir_sub&;t t -s&@srcdir@&$ac_srcdir&;t t -s&@abs_srcdir@&$ac_abs_srcdir&;t t -s&@top_srcdir@&$ac_top_srcdir&;t t -s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t -s&@builddir@&$ac_builddir&;t t -s&@abs_builddir@&$ac_abs_builddir&;t t -s&@abs_top_builddir@&$ac_abs_top_builddir&;t t -s&@INSTALL@&$ac_INSTALL&;t t -s&@MKDIR_P@&$ac_MKDIR_P&;t t -$ac_datarootdir_hack -" $ac_file_inputs | sed -f "$tmp/subs-1.sed" | sed -f "$tmp/subs-2.sed" >$tmp/out - -test -z "$ac_datarootdir_hack$ac_datarootdir_seen" && - { ac_out=`sed -n '/\${datarootdir}/p' "$tmp/out"`; test -n "$ac_out"; } && - { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' "$tmp/out"`; test -z "$ac_out"; } && - { echo "$as_me:$LINENO: WARNING: $ac_file contains a reference to the variable \`datarootdir' -which seems to be undefined. Please make sure it is defined." >&5 -echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir' -which seems to be undefined. Please make sure it is defined." >&2;} - - rm -f "$tmp/stdin" - case $ac_file in - -) cat "$tmp/out"; rm -f "$tmp/out";; - *) rm -f "$ac_file"; mv "$tmp/out" $ac_file;; - esac - ;; - :H) - # - # CONFIG_HEADER - # - # First, check the format of the line: - cat >"$tmp/defines.sed" <<\CEOF -/^[ ]*#[ ]*undef[ ][ ]*[_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ][_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789]*[ ]*$/b def -/^[ ]*#[ ]*define[ ][ ]*[_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ][_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789]*[( ]/b def -b -:def -s/$/ / -s,^\([ #]*\)[^ ]*\([ ]*PACKAGE_NAME\)[ (].*,\1define\2 "" , -s,^\([ #]*\)[^ ]*\([ ]*PACKAGE_TARNAME\)[ (].*,\1define\2 "" , -s,^\([ #]*\)[^ ]*\([ ]*PACKAGE_VERSION\)[ (].*,\1define\2 "" , -s,^\([ #]*\)[^ ]*\([ ]*PACKAGE_STRING\)[ (].*,\1define\2 "" , -s,^\([ #]*\)[^ ]*\([ ]*PACKAGE_BUGREPORT\)[ (].*,\1define\2 "" , -s,^\([ #]*\)[^ ]*\([ ]*PACKAGE\)[ (].*,\1define\2 "cyassl" , -s,^\([ #]*\)[^ ]*\([ ]*VERSION\)[ (].*,\1define\2 "1.9.0" , -s,^\([ #]*\)[^ ]*\([ ]*STDC_HEADERS\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_SYS_TYPES_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_SYS_STAT_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_STDLIB_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_STRING_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_MEMORY_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_STRINGS_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_INTTYPES_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_STDINT_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_UNISTD_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_DLFCN_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*LT_OBJDIR\)[ (].*,\1define\2 ".libs/" , -s,^\([ #]*\)[^ ]*\([ ]*SIZEOF_LONG\)[ (].*,\1define\2 4 , -s,^\([ #]*\)[^ ]*\([ ]*SIZEOF_LONG_LONG\)[ (].*,\1define\2 8 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_ERRNO_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_PTHREAD\)[ (].*,\1define\2 1 , -s/ $// -s,^[ #]*u.*,/* & */, -CEOF - sed -f "$tmp/defines.sed" $ac_file_inputs >"$tmp/out1" -ac_result="$tmp/out1" - if test x"$ac_file" != x-; then - echo "/* $configure_input */" >"$tmp/config.h" - cat "$ac_result" >>"$tmp/config.h" - if diff $ac_file "$tmp/config.h" >/dev/null 2>&1; then - { echo "$as_me:$LINENO: $ac_file is unchanged" >&5 -echo "$as_me: $ac_file is unchanged" >&6;} - else - rm -f $ac_file - mv "$tmp/config.h" $ac_file - fi - else - echo "/* $configure_input */" - cat "$ac_result" - fi - rm -f "$tmp/out12" -# Compute $ac_file's index in $config_headers. -_am_stamp_count=1 -for _am_header in $config_headers :; do - case $_am_header in - $ac_file | $ac_file:* ) - break ;; - * ) - _am_stamp_count=`expr $_am_stamp_count + 1` ;; - esac -done -echo "timestamp for $ac_file" >`$as_dirname -- $ac_file || -$as_expr X$ac_file : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X$ac_file : 'X\(//\)[^/]' \| \ - X$ac_file : 'X\(//\)$' \| \ - X$ac_file : 'X\(/\)' \| . 2>/dev/null || -echo X$ac_file | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'`/stamp-h$_am_stamp_count - ;; - - :C) { echo "$as_me:$LINENO: executing $ac_file commands" >&5 -echo "$as_me: executing $ac_file commands" >&6;} - ;; - esac - - - case $ac_file$ac_mode in - "depfiles":C) test x"$AMDEP_TRUE" != x"" || for mf in $CONFIG_FILES; do - # Strip MF so we end up with the name of the file. - mf=`echo "$mf" | sed -e 's/:.*$//'` - # Check whether this is an Automake generated Makefile or not. - # We used to match only the files named `Makefile.in', but - # some people rename them; so instead we look at the file content. - # Grep'ing the first line is not enough: some people post-process - # each Makefile.in and add a new line on top of each file to say so. - # Grep'ing the whole file is not good either: AIX grep has a line - # limit of 2048, but all sed's we know have understand at least 4000. - if sed 10q "$mf" | grep '^#.*generated by automake' > /dev/null 2>&1; then - dirpart=`$as_dirname -- "$mf" || -$as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$mf" : 'X\(//\)[^/]' \| \ - X"$mf" : 'X\(//\)$' \| \ - X"$mf" : 'X\(/\)' \| . 2>/dev/null || -echo X"$mf" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - else - continue - fi - # Extract the definition of DEPDIR, am__include, and am__quote - # from the Makefile without running `make'. - DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"` - test -z "$DEPDIR" && continue - am__include=`sed -n 's/^am__include = //p' < "$mf"` - test -z "am__include" && continue - am__quote=`sed -n 's/^am__quote = //p' < "$mf"` - # When using ansi2knr, U may be empty or an underscore; expand it - U=`sed -n 's/^U = //p' < "$mf"` - # Find all dependency output files, they are included files with - # $(DEPDIR) in their names. We invoke sed twice because it is the - # simplest approach to changing $(DEPDIR) to its actual value in the - # expansion. - for file in `sed -n " - s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \ - sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do - # Make sure the directory exists. - test -f "$dirpart/$file" && continue - fdir=`$as_dirname -- "$file" || -$as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$file" : 'X\(//\)[^/]' \| \ - X"$file" : 'X\(//\)$' \| \ - X"$file" : 'X\(/\)' \| . 2>/dev/null || -echo X"$file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - { as_dir=$dirpart/$fdir - case $as_dir in #( - -*) as_dir=./$as_dir;; - esac - test -d "$as_dir" || { $as_mkdir_p && mkdir -p "$as_dir"; } || { - as_dirs= - while :; do - case $as_dir in #( - *\'*) as_qdir=`echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #( - *) as_qdir=$as_dir;; - esac - as_dirs="'$as_qdir' $as_dirs" - as_dir=`$as_dirname -- "$as_dir" || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || -echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - test -d "$as_dir" && break - done - test -z "$as_dirs" || eval "mkdir $as_dirs" - } || test -d "$as_dir" || { { echo "$as_me:$LINENO: error: cannot create directory $as_dir" >&5 -echo "$as_me: error: cannot create directory $as_dir" >&2;} - { (exit 1); exit 1; }; }; } - # echo "creating $dirpart/$file" - echo '# dummy' > "$dirpart/$file" - done -done - ;; - "libtool":C) - - # See if we are running on zsh, and set the options which allow our - # commands through without removal of \ escapes. - if test -n "${ZSH_VERSION+set}" ; then - setopt NO_GLOB_SUBST - fi - - cfgfile="${ofile}T" - trap "$RM -f \"$cfgfile\"; exit 1" 1 2 15 - $RM -f "$cfgfile" - - cat <<_LT_EOF >> "$cfgfile" -#! $SHELL - -# `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services. -# Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $VERSION -# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`: -# NOTE: Changes made to this file will be lost: look at ltmain.sh. -# -# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, -# 2006, 2007, 2008 Free Software Foundation, Inc. -# Written by Gordon Matzigkeit, 1996 -# -# This file is part of GNU Libtool. -# -# GNU Libtool is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License as -# published by the Free Software Foundation; either version 2 of -# the License, or (at your option) any later version. -# -# As a special exception to the GNU General Public License, -# if you distribute this file as part of a program or library that -# is built using GNU Libtool, you may include this file under the -# same distribution terms that you use for the rest of that program. -# -# GNU Libtool is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GNU Libtool; see the file COPYING. If not, a copy -# can be downloaded from http://www.gnu.org/licenses/gpl.html, or -# obtained by writing to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - - -# The names of the tagged configurations supported by this script. -available_tags="" - -# ### BEGIN LIBTOOL CONFIG - -# Assembler program. -AS=$AS - -# DLL creation program. -DLLTOOL=$DLLTOOL - -# Object dumper program. -OBJDUMP=$OBJDUMP - -# Which release of libtool.m4 was used? -macro_version=$macro_version -macro_revision=$macro_revision - -# Whether or not to build shared libraries. -build_libtool_libs=$enable_shared - -# Whether or not to build static libraries. -build_old_libs=$enable_static - -# What type of objects to build. -pic_mode=$pic_mode - -# Whether or not to optimize for fast installation. -fast_install=$enable_fast_install - -# The host system. -host_alias=$host_alias -host=$host -host_os=$host_os - -# The build system. -build_alias=$build_alias -build=$build -build_os=$build_os - -# A sed program that does not truncate output. -SED=$lt_SED - -# Sed that helps us avoid accidentally triggering echo(1) options like -n. -Xsed="\$SED -e 1s/^X//" - -# A grep program that handles long lines. -GREP=$lt_GREP - -# An ERE matcher. -EGREP=$lt_EGREP - -# A literal string matcher. -FGREP=$lt_FGREP - -# A BSD- or MS-compatible name lister. -NM=$lt_NM - -# Whether we need soft or hard links. -LN_S=$lt_LN_S - -# What is the maximum length of a command? -max_cmd_len=$max_cmd_len - -# Object file suffix (normally "o"). -objext=$ac_objext - -# Executable file suffix (normally ""). -exeext=$exeext - -# whether the shell understands "unset". -lt_unset=$lt_unset - -# turn spaces into newlines. -SP2NL=$lt_lt_SP2NL - -# turn newlines into spaces. -NL2SP=$lt_lt_NL2SP - -# How to create reloadable object files. -reload_flag=$lt_reload_flag -reload_cmds=$lt_reload_cmds - -# Method to check whether dependent libraries are shared objects. -deplibs_check_method=$lt_deplibs_check_method - -# Command to use when deplibs_check_method == "file_magic". -file_magic_cmd=$lt_file_magic_cmd - -# The archiver. -AR=$lt_AR -AR_FLAGS=$lt_AR_FLAGS - -# A symbol stripping program. -STRIP=$lt_STRIP - -# Commands used to install an old-style archive. -RANLIB=$lt_RANLIB -old_postinstall_cmds=$lt_old_postinstall_cmds -old_postuninstall_cmds=$lt_old_postuninstall_cmds - -# A C compiler. -LTCC=$lt_CC - -# LTCC compiler flags. -LTCFLAGS=$lt_CFLAGS - -# Take the output of nm and produce a listing of raw symbols and C names. -global_symbol_pipe=$lt_lt_cv_sys_global_symbol_pipe - -# Transform the output of nm in a proper C declaration. -global_symbol_to_cdecl=$lt_lt_cv_sys_global_symbol_to_cdecl - -# Transform the output of nm in a C name address pair. -global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address - -# Transform the output of nm in a C name address pair when lib prefix is needed. -global_symbol_to_c_name_address_lib_prefix=$lt_lt_cv_sys_global_symbol_to_c_name_address_lib_prefix - -# The name of the directory that contains temporary libtool files. -objdir=$objdir - -# Shell to use when invoking shell scripts. -SHELL=$lt_SHELL - -# An echo program that does not interpret backslashes. -ECHO=$lt_ECHO - -# Used to examine libraries when file_magic_cmd begins with "file". -MAGIC_CMD=$MAGIC_CMD - -# Must we lock files when doing compilation? -need_locks=$lt_need_locks - -# Tool to manipulate archived DWARF debug symbol files on Mac OS X. -DSYMUTIL=$lt_DSYMUTIL - -# Tool to change global to local symbols on Mac OS X. -NMEDIT=$lt_NMEDIT - -# Tool to manipulate fat objects and archives on Mac OS X. -LIPO=$lt_LIPO - -# ldd/readelf like tool for Mach-O binaries on Mac OS X. -OTOOL=$lt_OTOOL - -# ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4. -OTOOL64=$lt_OTOOL64 - -# Old archive suffix (normally "a"). -libext=$libext - -# Shared library suffix (normally ".so"). -shrext_cmds=$lt_shrext_cmds - -# The commands to extract the exported symbol list from a shared archive. -extract_expsyms_cmds=$lt_extract_expsyms_cmds - -# Variables whose values should be saved in libtool wrapper scripts and -# restored at link time. -variables_saved_for_relink=$lt_variables_saved_for_relink - -# Do we need the "lib" prefix for modules? -need_lib_prefix=$need_lib_prefix - -# Do we need a version for libraries? -need_version=$need_version - -# Library versioning type. -version_type=$version_type - -# Shared library runtime path variable. -runpath_var=$runpath_var - -# Shared library path variable. -shlibpath_var=$shlibpath_var - -# Is shlibpath searched before the hard-coded library search path? -shlibpath_overrides_runpath=$shlibpath_overrides_runpath - -# Format of library name prefix. -libname_spec=$lt_libname_spec - -# List of archive names. First name is the real one, the rest are links. -# The last name is the one that the linker finds with -lNAME -library_names_spec=$lt_library_names_spec - -# The coded name of the library, if different from the real name. -soname_spec=$lt_soname_spec - -# Command to use after installation of a shared archive. -postinstall_cmds=$lt_postinstall_cmds - -# Command to use after uninstallation of a shared archive. -postuninstall_cmds=$lt_postuninstall_cmds - -# Commands used to finish a libtool library installation in a directory. -finish_cmds=$lt_finish_cmds - -# As "finish_cmds", except a single script fragment to be evaled but -# not shown. -finish_eval=$lt_finish_eval - -# Whether we should hardcode library paths into libraries. -hardcode_into_libs=$hardcode_into_libs - -# Compile-time system search path for libraries. -sys_lib_search_path_spec=$lt_sys_lib_search_path_spec - -# Run-time system search path for libraries. -sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec - -# Whether dlopen is supported. -dlopen_support=$enable_dlopen - -# Whether dlopen of programs is supported. -dlopen_self=$enable_dlopen_self - -# Whether dlopen of statically linked programs is supported. -dlopen_self_static=$enable_dlopen_self_static - -# Commands to strip libraries. -old_striplib=$lt_old_striplib -striplib=$lt_striplib - - -# The linker used to build libraries. -LD=$lt_LD - -# Commands used to build an old-style archive. -old_archive_cmds=$lt_old_archive_cmds - -# A language specific compiler. -CC=$lt_compiler - -# Is the compiler the GNU compiler? -with_gcc=$GCC - -# Compiler flag to turn off builtin functions. -no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag - -# How to pass a linker flag through the compiler. -wl=$lt_lt_prog_compiler_wl - -# Additional compiler flags for building library objects. -pic_flag=$lt_lt_prog_compiler_pic - -# Compiler flag to prevent dynamic linking. -link_static_flag=$lt_lt_prog_compiler_static - -# Does compiler simultaneously support -c and -o options? -compiler_c_o=$lt_lt_cv_prog_compiler_c_o - -# Whether or not to add -lc for building shared libraries. -build_libtool_need_lc=$archive_cmds_need_lc - -# Whether or not to disallow shared libs when runtime libs are static. -allow_libtool_libs_with_static_runtimes=$enable_shared_with_static_runtimes - -# Compiler flag to allow reflexive dlopens. -export_dynamic_flag_spec=$lt_export_dynamic_flag_spec - -# Compiler flag to generate shared objects directly from archives. -whole_archive_flag_spec=$lt_whole_archive_flag_spec - -# Whether the compiler copes with passing no objects directly. -compiler_needs_object=$lt_compiler_needs_object - -# Create an old-style archive from a shared archive. -old_archive_from_new_cmds=$lt_old_archive_from_new_cmds - -# Create a temporary old-style archive to link instead of a shared archive. -old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds - -# Commands used to build a shared archive. -archive_cmds=$lt_archive_cmds -archive_expsym_cmds=$lt_archive_expsym_cmds - -# Commands used to build a loadable module if different from building -# a shared archive. -module_cmds=$lt_module_cmds -module_expsym_cmds=$lt_module_expsym_cmds - -# Whether we are building with GNU ld or not. -with_gnu_ld=$lt_with_gnu_ld - -# Flag that allows shared libraries with undefined symbols to be built. -allow_undefined_flag=$lt_allow_undefined_flag - -# Flag that enforces no undefined symbols. -no_undefined_flag=$lt_no_undefined_flag - -# Flag to hardcode \$libdir into a binary during linking. -# This must work even if \$libdir does not exist -hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec - -# If ld is used when linking, flag to hardcode \$libdir into a binary -# during linking. This must work even if \$libdir does not exist. -hardcode_libdir_flag_spec_ld=$lt_hardcode_libdir_flag_spec_ld - -# Whether we need a single "-rpath" flag with a separated argument. -hardcode_libdir_separator=$lt_hardcode_libdir_separator - -# Set to "yes" if using DIR/libNAME\${shared_ext} during linking hardcodes -# DIR into the resulting binary. -hardcode_direct=$hardcode_direct - -# Set to "yes" if using DIR/libNAME\${shared_ext} during linking hardcodes -# DIR into the resulting binary and the resulting library dependency is -# "absolute",i.e impossible to change by setting \${shlibpath_var} if the -# library is relocated. -hardcode_direct_absolute=$hardcode_direct_absolute - -# Set to "yes" if using the -LDIR flag during linking hardcodes DIR -# into the resulting binary. -hardcode_minus_L=$hardcode_minus_L - -# Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR -# into the resulting binary. -hardcode_shlibpath_var=$hardcode_shlibpath_var - -# Set to "yes" if building a shared library automatically hardcodes DIR -# into the library and all subsequent libraries and executables linked -# against it. -hardcode_automatic=$hardcode_automatic - -# Set to yes if linker adds runtime paths of dependent libraries -# to runtime path list. -inherit_rpath=$inherit_rpath - -# Whether libtool must link a program against all its dependency libraries. -link_all_deplibs=$link_all_deplibs - -# Fix the shell variable \$srcfile for the compiler. -fix_srcfile_path=$lt_fix_srcfile_path - -# Set to "yes" if exported symbols are required. -always_export_symbols=$always_export_symbols - -# The commands to list exported symbols. -export_symbols_cmds=$lt_export_symbols_cmds - -# Symbols that should not be listed in the preloaded symbols. -exclude_expsyms=$lt_exclude_expsyms - -# Symbols that must always be exported. -include_expsyms=$lt_include_expsyms - -# Commands necessary for linking programs (against libraries) with templates. -prelink_cmds=$lt_prelink_cmds - -# Specify filename containing input files. -file_list_spec=$lt_file_list_spec - -# How to hardcode a shared library path into an executable. -hardcode_action=$hardcode_action - -# ### END LIBTOOL CONFIG - -_LT_EOF - - case $host_os in - aix3*) - cat <<\_LT_EOF >> "$cfgfile" -# AIX sometimes has problems with the GCC collect2 program. For some -# reason, if we set the COLLECT_NAMES environment variable, the problems -# vanish in a puff of smoke. -if test "X${COLLECT_NAMES+set}" != Xset; then - COLLECT_NAMES= - export COLLECT_NAMES -fi -_LT_EOF - ;; - esac - - -ltmain="$ac_aux_dir/ltmain.sh" - - - # We use sed instead of cat because bash on DJGPP gets confused if - # if finds mixed CR/LF and LF-only lines. Since sed operates in - # text mode, it properly converts lines to CR/LF. This bash problem - # is reportedly fixed, but why not run on old versions too? - sed '/^# Generated shell functions inserted here/q' "$ltmain" >> "$cfgfile" \ - || (rm -f "$cfgfile"; exit 1) - - case $xsi_shell in - yes) - cat << \_LT_EOF >> "$cfgfile" - -# func_dirname file append nondir_replacement -# Compute the dirname of FILE. If nonempty, add APPEND to the result, -# otherwise set result to NONDIR_REPLACEMENT. -func_dirname () -{ - case ${1} in - */*) func_dirname_result="${1%/*}${2}" ;; - * ) func_dirname_result="${3}" ;; - esac -} - -# func_basename file -func_basename () -{ - func_basename_result="${1##*/}" -} - -# func_dirname_and_basename file append nondir_replacement -# perform func_basename and func_dirname in a single function -# call: -# dirname: Compute the dirname of FILE. If nonempty, -# add APPEND to the result, otherwise set result -# to NONDIR_REPLACEMENT. -# value returned in "$func_dirname_result" -# basename: Compute filename of FILE. -# value retuned in "$func_basename_result" -# Implementation must be kept synchronized with func_dirname -# and func_basename. For efficiency, we do not delegate to -# those functions but instead duplicate the functionality here. -func_dirname_and_basename () -{ - case ${1} in - */*) func_dirname_result="${1%/*}${2}" ;; - * ) func_dirname_result="${3}" ;; - esac - func_basename_result="${1##*/}" -} - -# func_stripname prefix suffix name -# strip PREFIX and SUFFIX off of NAME. -# PREFIX and SUFFIX must not contain globbing or regex special -# characters, hashes, percent signs, but SUFFIX may contain a leading -# dot (in which case that matches only a dot). -func_stripname () -{ - # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are - # positional parameters, so assign one to ordinary parameter first. - func_stripname_result=${3} - func_stripname_result=${func_stripname_result#"${1}"} - func_stripname_result=${func_stripname_result%"${2}"} -} - -# func_opt_split -func_opt_split () -{ - func_opt_split_opt=${1%%=*} - func_opt_split_arg=${1#*=} -} - -# func_lo2o object -func_lo2o () -{ - case ${1} in - *.lo) func_lo2o_result=${1%.lo}.${objext} ;; - *) func_lo2o_result=${1} ;; - esac -} - -# func_xform libobj-or-source -func_xform () -{ - func_xform_result=${1%.*}.lo -} - -# func_arith arithmetic-term... -func_arith () -{ - func_arith_result=$(( $* )) -} - -# func_len string -# STRING may not start with a hyphen. -func_len () -{ - func_len_result=${#1} -} - -_LT_EOF - ;; - *) # Bourne compatible functions. - cat << \_LT_EOF >> "$cfgfile" - -# func_dirname file append nondir_replacement -# Compute the dirname of FILE. If nonempty, add APPEND to the result, -# otherwise set result to NONDIR_REPLACEMENT. -func_dirname () -{ - # Extract subdirectory from the argument. - func_dirname_result=`$ECHO "X${1}" | $Xsed -e "$dirname"` - if test "X$func_dirname_result" = "X${1}"; then - func_dirname_result="${3}" - else - func_dirname_result="$func_dirname_result${2}" - fi -} - -# func_basename file -func_basename () -{ - func_basename_result=`$ECHO "X${1}" | $Xsed -e "$basename"` -} - - -# func_stripname prefix suffix name -# strip PREFIX and SUFFIX off of NAME. -# PREFIX and SUFFIX must not contain globbing or regex special -# characters, hashes, percent signs, but SUFFIX may contain a leading -# dot (in which case that matches only a dot). -# func_strip_suffix prefix name -func_stripname () -{ - case ${2} in - .*) func_stripname_result=`$ECHO "X${3}" \ - | $Xsed -e "s%^${1}%%" -e "s%\\\\${2}\$%%"`;; - *) func_stripname_result=`$ECHO "X${3}" \ - | $Xsed -e "s%^${1}%%" -e "s%${2}\$%%"`;; - esac -} - -# sed scripts: -my_sed_long_opt='1s/^\(-[^=]*\)=.*/\1/;q' -my_sed_long_arg='1s/^-[^=]*=//' - -# func_opt_split -func_opt_split () -{ - func_opt_split_opt=`$ECHO "X${1}" | $Xsed -e "$my_sed_long_opt"` - func_opt_split_arg=`$ECHO "X${1}" | $Xsed -e "$my_sed_long_arg"` -} - -# func_lo2o object -func_lo2o () -{ - func_lo2o_result=`$ECHO "X${1}" | $Xsed -e "$lo2o"` -} - -# func_xform libobj-or-source -func_xform () -{ - func_xform_result=`$ECHO "X${1}" | $Xsed -e 's/\.[^.]*$/.lo/'` -} - -# func_arith arithmetic-term... -func_arith () -{ - func_arith_result=`expr "$@"` -} - -# func_len string -# STRING may not start with a hyphen. -func_len () -{ - func_len_result=`expr "$1" : ".*" 2>/dev/null || echo $max_cmd_len` -} - -_LT_EOF -esac - -case $lt_shell_append in - yes) - cat << \_LT_EOF >> "$cfgfile" - -# func_append var value -# Append VALUE to the end of shell variable VAR. -func_append () -{ - eval "$1+=\$2" -} -_LT_EOF - ;; - *) - cat << \_LT_EOF >> "$cfgfile" - -# func_append var value -# Append VALUE to the end of shell variable VAR. -func_append () -{ - eval "$1=\$$1\$2" -} - -_LT_EOF - ;; - esac - - - sed -n '/^# Generated shell functions inserted here/,$p' "$ltmain" >> "$cfgfile" \ - || (rm -f "$cfgfile"; exit 1) - - mv -f "$cfgfile" "$ofile" || - (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile") - chmod +x "$ofile" - - ;; - - esac -done # for ac_tag - - -{ (exit 0); exit 0; } diff --git a/release/src/router/cyassl/ctaocrypt/Makefile b/release/src/router/cyassl/ctaocrypt/Makefile index 1f30fc10ad..b02a3421f1 100644 --- a/release/src/router/cyassl/ctaocrypt/Makefile +++ b/release/src/router/cyassl/ctaocrypt/Makefile @@ -60,13 +60,13 @@ ETAGS = etags CTAGS = ctags DIST_SUBDIRS = $(SUBDIRS) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run aclocal-1.10 -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run tar +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run aclocal-1.10 +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run tar AR = mipsel-uclibc-ar AS = mipsel-uclibc-as -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run automake-1.10 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run automake-1.10 AWK = gawk CC = mipsel-uclibc-gcc CCAS = mipsel-uclibc-gcc @@ -103,7 +103,7 @@ LIBTOOL = $(SHELL) $(top_builddir)/libtool LIPO = LN_S = ln -s LTLIBOBJS = -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run makeinfo MKDIR_P = /bin/mkdir -p NM = mipsel-uclibc-nm NMEDIT = @@ -127,10 +127,10 @@ SET_MAKE = SHELL = /bin/sh STRIP = mipsel-uclibc-strip -R .note -R .comment VERSION = 1.9.0 -abs_builddir = /home/vicente/tomato/release/src/router/cyassl/ctaocrypt -abs_srcdir = /home/vicente/tomato/release/src/router/cyassl/ctaocrypt -abs_top_builddir = /home/vicente/tomato/release/src/router/cyassl -abs_top_srcdir = /home/vicente/tomato/release/src/router/cyassl +abs_builddir = /home/vicente/repos/tomato/release/src/router/cyassl/ctaocrypt +abs_srcdir = /home/vicente/repos/tomato/release/src/router/cyassl/ctaocrypt +abs_top_builddir = /home/vicente/repos/tomato/release/src/router/cyassl +abs_top_srcdir = /home/vicente/repos/tomato/release/src/router/cyassl ac_ct_CC = ac_ct_DUMPBIN = acx_pthread_config = @@ -159,7 +159,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = $(SHELL) /home/vicente/tomato/release/src/router/cyassl/install-sh +install_sh = $(SHELL) /home/vicente/repos/tomato/release/src/router/cyassl/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = ${datarootdir}/locale diff --git a/release/src/router/cyassl/ctaocrypt/benchmark/Makefile b/release/src/router/cyassl/ctaocrypt/benchmark/Makefile index 09e881d3c6..76be0b793f 100644 --- a/release/src/router/cyassl/ctaocrypt/benchmark/Makefile +++ b/release/src/router/cyassl/ctaocrypt/benchmark/Makefile @@ -72,13 +72,13 @@ DIST_SOURCES = $(benchmark_SOURCES) ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run aclocal-1.10 -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run tar +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run aclocal-1.10 +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run tar AR = mipsel-uclibc-ar AS = mipsel-uclibc-as -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run automake-1.10 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run automake-1.10 AWK = gawk CC = mipsel-uclibc-gcc CCAS = mipsel-uclibc-gcc @@ -115,7 +115,7 @@ LIBTOOL = $(SHELL) $(top_builddir)/libtool LIPO = LN_S = ln -s LTLIBOBJS = -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run makeinfo MKDIR_P = /bin/mkdir -p NM = mipsel-uclibc-nm NMEDIT = @@ -139,10 +139,10 @@ SET_MAKE = SHELL = /bin/sh STRIP = mipsel-uclibc-strip -R .note -R .comment VERSION = 1.9.0 -abs_builddir = /home/vicente/tomato/release/src/router/cyassl/ctaocrypt/benchmark -abs_srcdir = /home/vicente/tomato/release/src/router/cyassl/ctaocrypt/benchmark -abs_top_builddir = /home/vicente/tomato/release/src/router/cyassl -abs_top_srcdir = /home/vicente/tomato/release/src/router/cyassl +abs_builddir = /home/vicente/repos/tomato/release/src/router/cyassl/ctaocrypt/benchmark +abs_srcdir = /home/vicente/repos/tomato/release/src/router/cyassl/ctaocrypt/benchmark +abs_top_builddir = /home/vicente/repos/tomato/release/src/router/cyassl +abs_top_srcdir = /home/vicente/repos/tomato/release/src/router/cyassl ac_ct_CC = ac_ct_DUMPBIN = acx_pthread_config = @@ -171,7 +171,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = $(SHELL) /home/vicente/tomato/release/src/router/cyassl/install-sh +install_sh = $(SHELL) /home/vicente/repos/tomato/release/src/router/cyassl/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = ${datarootdir}/locale diff --git a/release/src/router/cyassl/ctaocrypt/src/Makefile b/release/src/router/cyassl/ctaocrypt/src/Makefile index 90b25b520c..dfc4447100 100644 --- a/release/src/router/cyassl/ctaocrypt/src/Makefile +++ b/release/src/router/cyassl/ctaocrypt/src/Makefile @@ -48,13 +48,13 @@ CONFIG_CLEAN_FILES = SOURCES = DIST_SOURCES = DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run aclocal-1.10 -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run tar +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run aclocal-1.10 +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run tar AR = mipsel-uclibc-ar AS = mipsel-uclibc-as -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run automake-1.10 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run automake-1.10 AWK = gawk CC = mipsel-uclibc-gcc CCAS = mipsel-uclibc-gcc @@ -91,7 +91,7 @@ LIBTOOL = $(SHELL) $(top_builddir)/libtool LIPO = LN_S = ln -s LTLIBOBJS = -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run makeinfo MKDIR_P = /bin/mkdir -p NM = mipsel-uclibc-nm NMEDIT = @@ -115,10 +115,10 @@ SET_MAKE = SHELL = /bin/sh STRIP = mipsel-uclibc-strip -R .note -R .comment VERSION = 1.9.0 -abs_builddir = /home/vicente/tomato/release/src/router/cyassl/ctaocrypt/src -abs_srcdir = /home/vicente/tomato/release/src/router/cyassl/ctaocrypt/src -abs_top_builddir = /home/vicente/tomato/release/src/router/cyassl -abs_top_srcdir = /home/vicente/tomato/release/src/router/cyassl +abs_builddir = /home/vicente/repos/tomato/release/src/router/cyassl/ctaocrypt/src +abs_srcdir = /home/vicente/repos/tomato/release/src/router/cyassl/ctaocrypt/src +abs_top_builddir = /home/vicente/repos/tomato/release/src/router/cyassl +abs_top_srcdir = /home/vicente/repos/tomato/release/src/router/cyassl ac_ct_CC = ac_ct_DUMPBIN = acx_pthread_config = @@ -147,7 +147,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = $(SHELL) /home/vicente/tomato/release/src/router/cyassl/install-sh +install_sh = $(SHELL) /home/vicente/repos/tomato/release/src/router/cyassl/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = ${datarootdir}/locale diff --git a/release/src/router/cyassl/ctaocrypt/test/Makefile b/release/src/router/cyassl/ctaocrypt/test/Makefile index 70de8958d0..5650ec1abf 100644 --- a/release/src/router/cyassl/ctaocrypt/test/Makefile +++ b/release/src/router/cyassl/ctaocrypt/test/Makefile @@ -72,13 +72,13 @@ DIST_SOURCES = $(test_SOURCES) ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run aclocal-1.10 -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run tar +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run aclocal-1.10 +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run tar AR = mipsel-uclibc-ar AS = mipsel-uclibc-as -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run automake-1.10 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run automake-1.10 AWK = gawk CC = mipsel-uclibc-gcc CCAS = mipsel-uclibc-gcc @@ -115,7 +115,7 @@ LIBTOOL = $(SHELL) $(top_builddir)/libtool LIPO = LN_S = ln -s LTLIBOBJS = -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run makeinfo MKDIR_P = /bin/mkdir -p NM = mipsel-uclibc-nm NMEDIT = @@ -139,10 +139,10 @@ SET_MAKE = SHELL = /bin/sh STRIP = mipsel-uclibc-strip -R .note -R .comment VERSION = 1.9.0 -abs_builddir = /home/vicente/tomato/release/src/router/cyassl/ctaocrypt/test -abs_srcdir = /home/vicente/tomato/release/src/router/cyassl/ctaocrypt/test -abs_top_builddir = /home/vicente/tomato/release/src/router/cyassl -abs_top_srcdir = /home/vicente/tomato/release/src/router/cyassl +abs_builddir = /home/vicente/repos/tomato/release/src/router/cyassl/ctaocrypt/test +abs_srcdir = /home/vicente/repos/tomato/release/src/router/cyassl/ctaocrypt/test +abs_top_builddir = /home/vicente/repos/tomato/release/src/router/cyassl +abs_top_srcdir = /home/vicente/repos/tomato/release/src/router/cyassl ac_ct_CC = ac_ct_DUMPBIN = acx_pthread_config = @@ -171,7 +171,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = $(SHELL) /home/vicente/tomato/release/src/router/cyassl/install-sh +install_sh = $(SHELL) /home/vicente/repos/tomato/release/src/router/cyassl/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = ${datarootdir}/locale diff --git a/release/src/router/cyassl/examples/Makefile b/release/src/router/cyassl/examples/Makefile index 37942e71ad..8d767c8746 100644 --- a/release/src/router/cyassl/examples/Makefile +++ b/release/src/router/cyassl/examples/Makefile @@ -60,13 +60,13 @@ ETAGS = etags CTAGS = ctags DIST_SUBDIRS = $(SUBDIRS) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run aclocal-1.10 -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run tar +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run aclocal-1.10 +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run tar AR = mipsel-uclibc-ar AS = mipsel-uclibc-as -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run automake-1.10 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run automake-1.10 AWK = gawk CC = mipsel-uclibc-gcc CCAS = mipsel-uclibc-gcc @@ -103,7 +103,7 @@ LIBTOOL = $(SHELL) $(top_builddir)/libtool LIPO = LN_S = ln -s LTLIBOBJS = -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run makeinfo MKDIR_P = /bin/mkdir -p NM = mipsel-uclibc-nm NMEDIT = @@ -127,10 +127,10 @@ SET_MAKE = SHELL = /bin/sh STRIP = mipsel-uclibc-strip -R .note -R .comment VERSION = 1.9.0 -abs_builddir = /home/vicente/tomato/release/src/router/cyassl/examples -abs_srcdir = /home/vicente/tomato/release/src/router/cyassl/examples -abs_top_builddir = /home/vicente/tomato/release/src/router/cyassl -abs_top_srcdir = /home/vicente/tomato/release/src/router/cyassl +abs_builddir = /home/vicente/repos/tomato/release/src/router/cyassl/examples +abs_srcdir = /home/vicente/repos/tomato/release/src/router/cyassl/examples +abs_top_builddir = /home/vicente/repos/tomato/release/src/router/cyassl +abs_top_srcdir = /home/vicente/repos/tomato/release/src/router/cyassl ac_ct_CC = ac_ct_DUMPBIN = acx_pthread_config = @@ -159,7 +159,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = $(SHELL) /home/vicente/tomato/release/src/router/cyassl/install-sh +install_sh = $(SHELL) /home/vicente/repos/tomato/release/src/router/cyassl/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = ${datarootdir}/locale diff --git a/release/src/router/cyassl/examples/client/Makefile b/release/src/router/cyassl/examples/client/Makefile index 07f5eeeec2..0a4b39eb8c 100644 --- a/release/src/router/cyassl/examples/client/Makefile +++ b/release/src/router/cyassl/examples/client/Makefile @@ -72,13 +72,13 @@ DIST_SOURCES = $(client_SOURCES) ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run aclocal-1.10 -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run tar +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run aclocal-1.10 +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run tar AR = mipsel-uclibc-ar AS = mipsel-uclibc-as -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run automake-1.10 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run automake-1.10 AWK = gawk CC = mipsel-uclibc-gcc CCAS = mipsel-uclibc-gcc @@ -115,7 +115,7 @@ LIBTOOL = $(SHELL) $(top_builddir)/libtool LIPO = LN_S = ln -s LTLIBOBJS = -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run makeinfo MKDIR_P = /bin/mkdir -p NM = mipsel-uclibc-nm NMEDIT = @@ -139,10 +139,10 @@ SET_MAKE = SHELL = /bin/sh STRIP = mipsel-uclibc-strip -R .note -R .comment VERSION = 1.9.0 -abs_builddir = /home/vicente/tomato/release/src/router/cyassl/examples/client -abs_srcdir = /home/vicente/tomato/release/src/router/cyassl/examples/client -abs_top_builddir = /home/vicente/tomato/release/src/router/cyassl -abs_top_srcdir = /home/vicente/tomato/release/src/router/cyassl +abs_builddir = /home/vicente/repos/tomato/release/src/router/cyassl/examples/client +abs_srcdir = /home/vicente/repos/tomato/release/src/router/cyassl/examples/client +abs_top_builddir = /home/vicente/repos/tomato/release/src/router/cyassl +abs_top_srcdir = /home/vicente/repos/tomato/release/src/router/cyassl ac_ct_CC = ac_ct_DUMPBIN = acx_pthread_config = @@ -171,7 +171,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = $(SHELL) /home/vicente/tomato/release/src/router/cyassl/install-sh +install_sh = $(SHELL) /home/vicente/repos/tomato/release/src/router/cyassl/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = ${datarootdir}/locale diff --git a/release/src/router/cyassl/examples/echoclient/Makefile b/release/src/router/cyassl/examples/echoclient/Makefile index ecbcdbdb6e..b612608887 100644 --- a/release/src/router/cyassl/examples/echoclient/Makefile +++ b/release/src/router/cyassl/examples/echoclient/Makefile @@ -72,13 +72,13 @@ DIST_SOURCES = $(echoclient_SOURCES) ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run aclocal-1.10 -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run tar +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run aclocal-1.10 +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run tar AR = mipsel-uclibc-ar AS = mipsel-uclibc-as -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run automake-1.10 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run automake-1.10 AWK = gawk CC = mipsel-uclibc-gcc CCAS = mipsel-uclibc-gcc @@ -115,7 +115,7 @@ LIBTOOL = $(SHELL) $(top_builddir)/libtool LIPO = LN_S = ln -s LTLIBOBJS = -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run makeinfo MKDIR_P = /bin/mkdir -p NM = mipsel-uclibc-nm NMEDIT = @@ -139,10 +139,10 @@ SET_MAKE = SHELL = /bin/sh STRIP = mipsel-uclibc-strip -R .note -R .comment VERSION = 1.9.0 -abs_builddir = /home/vicente/tomato/release/src/router/cyassl/examples/echoclient -abs_srcdir = /home/vicente/tomato/release/src/router/cyassl/examples/echoclient -abs_top_builddir = /home/vicente/tomato/release/src/router/cyassl -abs_top_srcdir = /home/vicente/tomato/release/src/router/cyassl +abs_builddir = /home/vicente/repos/tomato/release/src/router/cyassl/examples/echoclient +abs_srcdir = /home/vicente/repos/tomato/release/src/router/cyassl/examples/echoclient +abs_top_builddir = /home/vicente/repos/tomato/release/src/router/cyassl +abs_top_srcdir = /home/vicente/repos/tomato/release/src/router/cyassl ac_ct_CC = ac_ct_DUMPBIN = acx_pthread_config = @@ -171,7 +171,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = $(SHELL) /home/vicente/tomato/release/src/router/cyassl/install-sh +install_sh = $(SHELL) /home/vicente/repos/tomato/release/src/router/cyassl/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = ${datarootdir}/locale diff --git a/release/src/router/cyassl/examples/echoserver/Makefile b/release/src/router/cyassl/examples/echoserver/Makefile index d663b4e3c8..b7510346a1 100644 --- a/release/src/router/cyassl/examples/echoserver/Makefile +++ b/release/src/router/cyassl/examples/echoserver/Makefile @@ -72,13 +72,13 @@ DIST_SOURCES = $(echoserver_SOURCES) ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run aclocal-1.10 -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run tar +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run aclocal-1.10 +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run tar AR = mipsel-uclibc-ar AS = mipsel-uclibc-as -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run automake-1.10 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run automake-1.10 AWK = gawk CC = mipsel-uclibc-gcc CCAS = mipsel-uclibc-gcc @@ -115,7 +115,7 @@ LIBTOOL = $(SHELL) $(top_builddir)/libtool LIPO = LN_S = ln -s LTLIBOBJS = -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run makeinfo MKDIR_P = /bin/mkdir -p NM = mipsel-uclibc-nm NMEDIT = @@ -139,10 +139,10 @@ SET_MAKE = SHELL = /bin/sh STRIP = mipsel-uclibc-strip -R .note -R .comment VERSION = 1.9.0 -abs_builddir = /home/vicente/tomato/release/src/router/cyassl/examples/echoserver -abs_srcdir = /home/vicente/tomato/release/src/router/cyassl/examples/echoserver -abs_top_builddir = /home/vicente/tomato/release/src/router/cyassl -abs_top_srcdir = /home/vicente/tomato/release/src/router/cyassl +abs_builddir = /home/vicente/repos/tomato/release/src/router/cyassl/examples/echoserver +abs_srcdir = /home/vicente/repos/tomato/release/src/router/cyassl/examples/echoserver +abs_top_builddir = /home/vicente/repos/tomato/release/src/router/cyassl +abs_top_srcdir = /home/vicente/repos/tomato/release/src/router/cyassl ac_ct_CC = ac_ct_DUMPBIN = acx_pthread_config = @@ -171,7 +171,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = $(SHELL) /home/vicente/tomato/release/src/router/cyassl/install-sh +install_sh = $(SHELL) /home/vicente/repos/tomato/release/src/router/cyassl/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = ${datarootdir}/locale diff --git a/release/src/router/cyassl/examples/server/Makefile b/release/src/router/cyassl/examples/server/Makefile index db8e55cef1..a444533d27 100644 --- a/release/src/router/cyassl/examples/server/Makefile +++ b/release/src/router/cyassl/examples/server/Makefile @@ -72,13 +72,13 @@ DIST_SOURCES = $(server_SOURCES) ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run aclocal-1.10 -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run tar +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run aclocal-1.10 +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run tar AR = mipsel-uclibc-ar AS = mipsel-uclibc-as -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run automake-1.10 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run automake-1.10 AWK = gawk CC = mipsel-uclibc-gcc CCAS = mipsel-uclibc-gcc @@ -115,7 +115,7 @@ LIBTOOL = $(SHELL) $(top_builddir)/libtool LIPO = LN_S = ln -s LTLIBOBJS = -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run makeinfo MKDIR_P = /bin/mkdir -p NM = mipsel-uclibc-nm NMEDIT = @@ -139,10 +139,10 @@ SET_MAKE = SHELL = /bin/sh STRIP = mipsel-uclibc-strip -R .note -R .comment VERSION = 1.9.0 -abs_builddir = /home/vicente/tomato/release/src/router/cyassl/examples/server -abs_srcdir = /home/vicente/tomato/release/src/router/cyassl/examples/server -abs_top_builddir = /home/vicente/tomato/release/src/router/cyassl -abs_top_srcdir = /home/vicente/tomato/release/src/router/cyassl +abs_builddir = /home/vicente/repos/tomato/release/src/router/cyassl/examples/server +abs_srcdir = /home/vicente/repos/tomato/release/src/router/cyassl/examples/server +abs_top_builddir = /home/vicente/repos/tomato/release/src/router/cyassl +abs_top_srcdir = /home/vicente/repos/tomato/release/src/router/cyassl ac_ct_CC = ac_ct_DUMPBIN = acx_pthread_config = @@ -171,7 +171,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = $(SHELL) /home/vicente/tomato/release/src/router/cyassl/install-sh +install_sh = $(SHELL) /home/vicente/repos/tomato/release/src/router/cyassl/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = ${datarootdir}/locale diff --git a/release/src/router/cyassl/src/Makefile b/release/src/router/cyassl/src/Makefile index 0f4e59409d..69c03f2723 100644 --- a/release/src/router/cyassl/src/Makefile +++ b/release/src/router/cyassl/src/Makefile @@ -115,13 +115,13 @@ DIST_SOURCES = $(am__libcyassl_la_SOURCES_DIST) ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run aclocal-1.10 -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run tar +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run aclocal-1.10 +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run tar AR = mipsel-uclibc-ar AS = mipsel-uclibc-as -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run automake-1.10 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run automake-1.10 AWK = gawk CC = mipsel-uclibc-gcc CCAS = mipsel-uclibc-gcc @@ -158,7 +158,7 @@ LIBTOOL = $(SHELL) $(top_builddir)/libtool LIPO = LN_S = ln -s LTLIBOBJS = -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run makeinfo MKDIR_P = /bin/mkdir -p NM = mipsel-uclibc-nm NMEDIT = @@ -182,10 +182,10 @@ SET_MAKE = SHELL = /bin/sh STRIP = mipsel-uclibc-strip -R .note -R .comment VERSION = 1.9.0 -abs_builddir = /home/vicente/tomato/release/src/router/cyassl/src -abs_srcdir = /home/vicente/tomato/release/src/router/cyassl/src -abs_top_builddir = /home/vicente/tomato/release/src/router/cyassl -abs_top_srcdir = /home/vicente/tomato/release/src/router/cyassl +abs_builddir = /home/vicente/repos/tomato/release/src/router/cyassl/src +abs_srcdir = /home/vicente/repos/tomato/release/src/router/cyassl/src +abs_top_builddir = /home/vicente/repos/tomato/release/src/router/cyassl +abs_top_srcdir = /home/vicente/repos/tomato/release/src/router/cyassl ac_ct_CC = ac_ct_DUMPBIN = acx_pthread_config = @@ -214,7 +214,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = $(SHELL) /home/vicente/tomato/release/src/router/cyassl/install-sh +install_sh = $(SHELL) /home/vicente/repos/tomato/release/src/router/cyassl/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = ${datarootdir}/locale diff --git a/release/src/router/cyassl/sslSniffer/Makefile b/release/src/router/cyassl/sslSniffer/Makefile index f5d1806405..fd7d39a318 100644 --- a/release/src/router/cyassl/sslSniffer/Makefile +++ b/release/src/router/cyassl/sslSniffer/Makefile @@ -60,13 +60,13 @@ ETAGS = etags CTAGS = ctags DIST_SUBDIRS = $(SUBDIRS) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run aclocal-1.10 -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run tar +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run aclocal-1.10 +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run tar AR = mipsel-uclibc-ar AS = mipsel-uclibc-as -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run automake-1.10 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run automake-1.10 AWK = gawk CC = mipsel-uclibc-gcc CCAS = mipsel-uclibc-gcc @@ -103,7 +103,7 @@ LIBTOOL = $(SHELL) $(top_builddir)/libtool LIPO = LN_S = ln -s LTLIBOBJS = -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run makeinfo MKDIR_P = /bin/mkdir -p NM = mipsel-uclibc-nm NMEDIT = @@ -127,10 +127,10 @@ SET_MAKE = SHELL = /bin/sh STRIP = mipsel-uclibc-strip -R .note -R .comment VERSION = 1.9.0 -abs_builddir = /home/vicente/tomato/release/src/router/cyassl/sslSniffer -abs_srcdir = /home/vicente/tomato/release/src/router/cyassl/sslSniffer -abs_top_builddir = /home/vicente/tomato/release/src/router/cyassl -abs_top_srcdir = /home/vicente/tomato/release/src/router/cyassl +abs_builddir = /home/vicente/repos/tomato/release/src/router/cyassl/sslSniffer +abs_srcdir = /home/vicente/repos/tomato/release/src/router/cyassl/sslSniffer +abs_top_builddir = /home/vicente/repos/tomato/release/src/router/cyassl +abs_top_srcdir = /home/vicente/repos/tomato/release/src/router/cyassl ac_ct_CC = ac_ct_DUMPBIN = acx_pthread_config = @@ -159,7 +159,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = $(SHELL) /home/vicente/tomato/release/src/router/cyassl/install-sh +install_sh = $(SHELL) /home/vicente/repos/tomato/release/src/router/cyassl/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = ${datarootdir}/locale diff --git a/release/src/router/cyassl/sslSniffer/sslSnifferTest/Makefile b/release/src/router/cyassl/sslSniffer/sslSnifferTest/Makefile index c2dca910f6..999fc109ea 100644 --- a/release/src/router/cyassl/sslSniffer/sslSnifferTest/Makefile +++ b/release/src/router/cyassl/sslSniffer/sslSnifferTest/Makefile @@ -72,13 +72,13 @@ DIST_SOURCES = $(snifftest_SOURCES) ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run aclocal-1.10 -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run tar +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run aclocal-1.10 +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run tar AR = mipsel-uclibc-ar AS = mipsel-uclibc-as -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run automake-1.10 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run automake-1.10 AWK = gawk CC = mipsel-uclibc-gcc CCAS = mipsel-uclibc-gcc @@ -115,7 +115,7 @@ LIBTOOL = $(SHELL) $(top_builddir)/libtool LIPO = LN_S = ln -s LTLIBOBJS = -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run makeinfo MKDIR_P = /bin/mkdir -p NM = mipsel-uclibc-nm NMEDIT = @@ -139,10 +139,10 @@ SET_MAKE = SHELL = /bin/sh STRIP = mipsel-uclibc-strip -R .note -R .comment VERSION = 1.9.0 -abs_builddir = /home/vicente/tomato/release/src/router/cyassl/sslSniffer/sslSnifferTest -abs_srcdir = /home/vicente/tomato/release/src/router/cyassl/sslSniffer/sslSnifferTest -abs_top_builddir = /home/vicente/tomato/release/src/router/cyassl -abs_top_srcdir = /home/vicente/tomato/release/src/router/cyassl +abs_builddir = /home/vicente/repos/tomato/release/src/router/cyassl/sslSniffer/sslSnifferTest +abs_srcdir = /home/vicente/repos/tomato/release/src/router/cyassl/sslSniffer/sslSnifferTest +abs_top_builddir = /home/vicente/repos/tomato/release/src/router/cyassl +abs_top_srcdir = /home/vicente/repos/tomato/release/src/router/cyassl ac_ct_CC = ac_ct_DUMPBIN = acx_pthread_config = @@ -171,7 +171,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = $(SHELL) /home/vicente/tomato/release/src/router/cyassl/install-sh +install_sh = $(SHELL) /home/vicente/repos/tomato/release/src/router/cyassl/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = ${datarootdir}/locale diff --git a/release/src/router/cyassl/testsuite/Makefile b/release/src/router/cyassl/testsuite/Makefile index 5097abc8c7..544c77987d 100644 --- a/release/src/router/cyassl/testsuite/Makefile +++ b/release/src/router/cyassl/testsuite/Makefile @@ -74,13 +74,13 @@ DIST_SOURCES = $(testsuite_SOURCES) ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run aclocal-1.10 -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run tar +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run aclocal-1.10 +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run tar AR = mipsel-uclibc-ar AS = mipsel-uclibc-as -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run automake-1.10 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run automake-1.10 AWK = gawk CC = mipsel-uclibc-gcc CCAS = mipsel-uclibc-gcc @@ -117,7 +117,7 @@ LIBTOOL = $(SHELL) $(top_builddir)/libtool LIPO = LN_S = ln -s LTLIBOBJS = -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/cyassl/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/cyassl/missing --run makeinfo MKDIR_P = /bin/mkdir -p NM = mipsel-uclibc-nm NMEDIT = @@ -141,10 +141,10 @@ SET_MAKE = SHELL = /bin/sh STRIP = mipsel-uclibc-strip -R .note -R .comment VERSION = 1.9.0 -abs_builddir = /home/vicente/tomato/release/src/router/cyassl/testsuite -abs_srcdir = /home/vicente/tomato/release/src/router/cyassl/testsuite -abs_top_builddir = /home/vicente/tomato/release/src/router/cyassl -abs_top_srcdir = /home/vicente/tomato/release/src/router/cyassl +abs_builddir = /home/vicente/repos/tomato/release/src/router/cyassl/testsuite +abs_srcdir = /home/vicente/repos/tomato/release/src/router/cyassl/testsuite +abs_top_builddir = /home/vicente/repos/tomato/release/src/router/cyassl +abs_top_srcdir = /home/vicente/repos/tomato/release/src/router/cyassl ac_ct_CC = ac_ct_DUMPBIN = acx_pthread_config = @@ -173,7 +173,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = $(SHELL) /home/vicente/tomato/release/src/router/cyassl/install-sh +install_sh = $(SHELL) /home/vicente/repos/tomato/release/src/router/cyassl/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = ${datarootdir}/locale diff --git a/release/src/router/dnscrypt/config.status b/release/src/router/dnscrypt/config.status deleted file mode 100755 index 2205341329..0000000000 --- a/release/src/router/dnscrypt/config.status +++ /dev/null @@ -1,2078 +0,0 @@ -#! /bin/sh -# Generated by configure. -# Run this file to recreate the current configuration. -# Compiler output produced by configure, useful for debugging -# configure, is in config.log if it exists. - -debug=false -ac_cs_recheck=false -ac_cs_silent=false - -SHELL=${CONFIG_SHELL-/bin/sh} -export SHELL -## -------------------- ## -## M4sh Initialization. ## -## -------------------- ## - -# Be more Bourne compatible -DUALCASE=1; export DUALCASE # for MKS sh -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then : - emulate sh - NULLCMD=: - # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which - # is contrary to our usage. Disable this feature. - alias -g '${1+"$@"}'='"$@"' - setopt NO_GLOB_SUBST -else - case `(set -o) 2>/dev/null` in #( - *posix*) : - set -o posix ;; #( - *) : - ;; -esac -fi - - -as_nl=' -' -export as_nl -# Printing a long string crashes Solaris 7 /usr/bin/printf. -as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' -as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo -as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo -# Prefer a ksh shell builtin over an external printf program on Solaris, -# but without wasting forks for bash or zsh. -if test -z "$BASH_VERSION$ZSH_VERSION" \ - && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then - as_echo='print -r --' - as_echo_n='print -rn --' -elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then - as_echo='printf %s\n' - as_echo_n='printf %s' -else - if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then - as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"' - as_echo_n='/usr/ucb/echo -n' - else - as_echo_body='eval expr "X$1" : "X\\(.*\\)"' - as_echo_n_body='eval - arg=$1; - case $arg in #( - *"$as_nl"*) - expr "X$arg" : "X\\(.*\\)$as_nl"; - arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;; - esac; - expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl" - ' - export as_echo_n_body - as_echo_n='sh -c $as_echo_n_body as_echo' - fi - export as_echo_body - as_echo='sh -c $as_echo_body as_echo' -fi - -# The user is always right. -if test "${PATH_SEPARATOR+set}" != set; then - PATH_SEPARATOR=: - (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { - (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || - PATH_SEPARATOR=';' - } -fi - - -# IFS -# We need space, tab and new line, in precisely that order. Quoting is -# there to prevent editors from complaining about space-tab. -# (If _AS_PATH_WALK were called with IFS unset, it would disable word -# splitting by setting IFS to empty value.) -IFS=" "" $as_nl" - -# Find who we are. Look in the path if we contain no directory separator. -as_myself= -case $0 in #(( - *[\\/]* ) as_myself=$0 ;; - *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break - done -IFS=$as_save_IFS - - ;; -esac -# We did not find ourselves, most probably we were run as `sh COMMAND' -# in which case we are not to be found in the path. -if test "x$as_myself" = x; then - as_myself=$0 -fi -if test ! -f "$as_myself"; then - $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 - exit 1 -fi - -# Unset variables that we do not need and which cause bugs (e.g. in -# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1" -# suppresses any "Segmentation fault" message there. '((' could -# trigger a bug in pdksh 5.2.14. -for as_var in BASH_ENV ENV MAIL MAILPATH -do eval test x\${$as_var+set} = xset \ - && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : -done -PS1='$ ' -PS2='> ' -PS4='+ ' - -# NLS nuisances. -LC_ALL=C -export LC_ALL -LANGUAGE=C -export LANGUAGE - -# CDPATH. -(unset CDPATH) >/dev/null 2>&1 && unset CDPATH - - -# as_fn_error STATUS ERROR [LINENO LOG_FD] -# ---------------------------------------- -# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are -# provided, also output the error to LOG_FD, referencing LINENO. Then exit the -# script with STATUS, using 1 if that was 0. -as_fn_error () -{ - as_status=$1; test $as_status -eq 0 && as_status=1 - if test "$4"; then - as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4 - fi - $as_echo "$as_me: error: $2" >&2 - as_fn_exit $as_status -} # as_fn_error - - -# as_fn_set_status STATUS -# ----------------------- -# Set $? to STATUS, without forking. -as_fn_set_status () -{ - return $1 -} # as_fn_set_status - -# as_fn_exit STATUS -# ----------------- -# Exit the shell with STATUS, even in a "trap 0" or "set -e" context. -as_fn_exit () -{ - set +e - as_fn_set_status $1 - exit $1 -} # as_fn_exit - -# as_fn_unset VAR -# --------------- -# Portably unset VAR. -as_fn_unset () -{ - { eval $1=; unset $1;} -} -as_unset=as_fn_unset -# as_fn_append VAR VALUE -# ---------------------- -# Append the text in VALUE to the end of the definition contained in VAR. Take -# advantage of any shell optimizations that allow amortized linear growth over -# repeated appends, instead of the typical quadratic growth present in naive -# implementations. -if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then : - eval 'as_fn_append () - { - eval $1+=\$2 - }' -else - as_fn_append () - { - eval $1=\$$1\$2 - } -fi # as_fn_append - -# as_fn_arith ARG... -# ------------------ -# Perform arithmetic evaluation on the ARGs, and store the result in the -# global $as_val. Take advantage of shells that can avoid forks. The arguments -# must be portable across $(()) and expr. -if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then : - eval 'as_fn_arith () - { - as_val=$(( $* )) - }' -else - as_fn_arith () - { - as_val=`expr "$@" || test $? -eq 1` - } -fi # as_fn_arith - - -if expr a : '\(a\)' >/dev/null 2>&1 && - test "X`expr 00001 : '.*\(...\)'`" = X001; then - as_expr=expr -else - as_expr=false -fi - -if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then - as_basename=basename -else - as_basename=false -fi - -if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then - as_dirname=dirname -else - as_dirname=false -fi - -as_me=`$as_basename -- "$0" || -$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ - X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X/"$0" | - sed '/^.*\/\([^/][^/]*\)\/*$/{ - s//\1/ - q - } - /^X\/\(\/\/\)$/{ - s//\1/ - q - } - /^X\/\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - -# Avoid depending upon Character Ranges. -as_cr_letters='abcdefghijklmnopqrstuvwxyz' -as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' -as_cr_Letters=$as_cr_letters$as_cr_LETTERS -as_cr_digits='0123456789' -as_cr_alnum=$as_cr_Letters$as_cr_digits - -ECHO_C= ECHO_N= ECHO_T= -case `echo -n x` in #((((( --n*) - case `echo 'xy\c'` in - *c*) ECHO_T=' ';; # ECHO_T is single tab character. - xy) ECHO_C='\c';; - *) echo `echo ksh88 bug on AIX 6.1` > /dev/null - ECHO_T=' ';; - esac;; -*) - ECHO_N='-n';; -esac - -rm -f conf$$ conf$$.exe conf$$.file -if test -d conf$$.dir; then - rm -f conf$$.dir/conf$$.file -else - rm -f conf$$.dir - mkdir conf$$.dir 2>/dev/null -fi -if (echo >conf$$.file) 2>/dev/null; then - if ln -s conf$$.file conf$$ 2>/dev/null; then - as_ln_s='ln -s' - # ... but there are two gotchas: - # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. - # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. - # In both cases, we have to default to `cp -pR'. - ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || - as_ln_s='cp -pR' - elif ln conf$$.file conf$$ 2>/dev/null; then - as_ln_s=ln - else - as_ln_s='cp -pR' - fi -else - as_ln_s='cp -pR' -fi -rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file -rmdir conf$$.dir 2>/dev/null - - -# as_fn_mkdir_p -# ------------- -# Create "$as_dir" as a directory, including parents if necessary. -as_fn_mkdir_p () -{ - - case $as_dir in #( - -*) as_dir=./$as_dir;; - esac - test -d "$as_dir" || eval $as_mkdir_p || { - as_dirs= - while :; do - case $as_dir in #( - *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( - *) as_qdir=$as_dir;; - esac - as_dirs="'$as_qdir' $as_dirs" - as_dir=`$as_dirname -- "$as_dir" || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - test -d "$as_dir" && break - done - test -z "$as_dirs" || eval "mkdir $as_dirs" - } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir" - - -} # as_fn_mkdir_p -if mkdir -p . 2>/dev/null; then - as_mkdir_p='mkdir -p "$as_dir"' -else - test -d ./-p && rmdir ./-p - as_mkdir_p=false -fi - - -# as_fn_executable_p FILE -# ----------------------- -# Test if FILE is an executable regular file. -as_fn_executable_p () -{ - test -f "$1" && test -x "$1" -} # as_fn_executable_p -as_test_x='test -x' -as_executable_p=as_fn_executable_p - -# Sed expression to map a string onto a valid CPP name. -as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" - -# Sed expression to map a string onto a valid variable name. -as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" - - -exec 6>&1 -## ----------------------------------- ## -## Main body of $CONFIG_STATUS script. ## -## ----------------------------------- ## -# Save the log message, to keep $0 and so on meaningful, and to -# report actual input values of CONFIG_FILES etc. instead of their -# values after options handling. -ac_log=" -This file was extended by dnscrypt-proxy $as_me 1.0, which was -generated by GNU Autoconf 2.69. Invocation command line was - - CONFIG_FILES = $CONFIG_FILES - CONFIG_HEADERS = $CONFIG_HEADERS - CONFIG_LINKS = $CONFIG_LINKS - CONFIG_COMMANDS = $CONFIG_COMMANDS - $ $0 $@ - -on `(hostname || uname -n) 2>/dev/null | sed 1q` -" - -# Files that config.status was made for. -config_files=" Makefile man/Makefile src/Makefile src/hostip/Makefile src/proxy/Makefile src/ext/Makefile src/libnacl/Makefile src/libnacl/tests/Makefile src/libnacl/okcompilers/c src/libnacl/okcompilers/do test/Makefile" -config_headers=" config.h" -config_commands=" depfiles libtool" - -ac_cs_usage="\ -\`$as_me' instantiates files and other configuration actions -from templates according to the current configuration. Unless the files -and actions are specified as TAGs, all are instantiated by default. - -Usage: $0 [OPTION]... [TAG]... - - -h, --help print this help, then exit - -V, --version print version number and configuration settings, then exit - --config print configuration, then exit - -q, --quiet, --silent - do not print progress messages - -d, --debug don't remove temporary files - --recheck update $as_me by reconfiguring in the same conditions - --file=FILE[:TEMPLATE] - instantiate the configuration file FILE - --header=FILE[:TEMPLATE] - instantiate the configuration header FILE - -Configuration files: -$config_files - -Configuration headers: -$config_headers - -Configuration commands: -$config_commands - -Report bugs to ." - -ac_cs_config="'--host=mipsel-linux' '--build=x86_64-linux-gnu' --disable-thread-support --disable-dependency-tracking --disable-libevent-install --disable-openssl --disable-shared --enable-function-sections" -ac_cs_version="\ -dnscrypt-proxy config.status 1.0 -configured by ./configure, generated by GNU Autoconf 2.69, - with options \"$ac_cs_config\" - -Copyright (C) 2012 Free Software Foundation, Inc. -This config.status script is free software; the Free Software Foundation -gives unlimited permission to copy, distribute and modify it." - -ac_pwd='/home/vicente/tomato/release/src-rt/router/dnscrypt' -srcdir='.' -INSTALL='/usr/bin/install -c' -MKDIR_P='/bin/mkdir -p' -AWK='gawk' -test -n "$AWK" || AWK=awk -# The default lists apply if the user does not specify any file. -ac_need_defaults=: -while test $# != 0 -do - case $1 in - --*=?*) - ac_option=`expr "X$1" : 'X\([^=]*\)='` - ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'` - ac_shift=: - ;; - --*=) - ac_option=`expr "X$1" : 'X\([^=]*\)='` - ac_optarg= - ac_shift=: - ;; - *) - ac_option=$1 - ac_optarg=$2 - ac_shift=shift - ;; - esac - - case $ac_option in - # Handling of the options. - -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) - ac_cs_recheck=: ;; - --version | --versio | --versi | --vers | --ver | --ve | --v | -V ) - $as_echo "$ac_cs_version"; exit ;; - --config | --confi | --conf | --con | --co | --c ) - $as_echo "$ac_cs_config"; exit ;; - --debug | --debu | --deb | --de | --d | -d ) - debug=: ;; - --file | --fil | --fi | --f ) - $ac_shift - case $ac_optarg in - *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; - '') as_fn_error $? "missing file argument" ;; - esac - as_fn_append CONFIG_FILES " '$ac_optarg'" - ac_need_defaults=false;; - --header | --heade | --head | --hea ) - $ac_shift - case $ac_optarg in - *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; - esac - as_fn_append CONFIG_HEADERS " '$ac_optarg'" - ac_need_defaults=false;; - --he | --h) - # Conflict between --help and --header - as_fn_error $? "ambiguous option: \`$1' -Try \`$0 --help' for more information.";; - --help | --hel | -h ) - $as_echo "$ac_cs_usage"; exit ;; - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil | --si | --s) - ac_cs_silent=: ;; - - # This is an error. - -*) as_fn_error $? "unrecognized option: \`$1' -Try \`$0 --help' for more information." ;; - - *) as_fn_append ac_config_targets " $1" - ac_need_defaults=false ;; - - esac - shift -done - -ac_configure_extra_args= - -if $ac_cs_silent; then - exec 6>/dev/null - ac_configure_extra_args="$ac_configure_extra_args --silent" -fi - -if $ac_cs_recheck; then - set X /bin/sh './configure' '--host=mipsel-linux' '--build=x86_64-linux-gnu' --disable-thread-support --disable-dependency-tracking --disable-libevent-install --disable-openssl --disable-shared --enable-function-sections $ac_configure_extra_args --no-create --no-recursion - shift - $as_echo "running CONFIG_SHELL=/bin/sh $*" >&6 - CONFIG_SHELL='/bin/sh' - export CONFIG_SHELL - exec "$@" -fi - -exec 5>>config.log -{ - echo - sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX -## Running $as_me. ## -_ASBOX - $as_echo "$ac_log" -} >&5 - -# -# INIT-COMMANDS -# -AMDEP_TRUE="" ac_aux_dir="." - - -# The HP-UX ksh and POSIX shell print the target directory to stdout -# if CDPATH is set. -(unset CDPATH) >/dev/null 2>&1 && unset CDPATH - -sed_quote_subst='s/\(["`$\\]\)/\\\1/g' -double_quote_subst='s/\(["`\\]\)/\\\1/g' -delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g' -macro_version='2.4.2' -macro_revision='1.3337' -enable_shared='yes' -enable_static='yes' -pic_mode='default' -enable_fast_install='yes' -SHELL='/bin/sh' -ECHO='printf %s\n' -PATH_SEPARATOR=':' -host_alias='mipsel-linux' -host='mipsel-unknown-linux-gnu' -host_os='linux-gnu' -build_alias='x86_64-linux-gnu' -build='x86_64-pc-linux-gnu' -build_os='linux-gnu' -SED='/bin/sed' -Xsed='/bin/sed -e 1s/^X//' -GREP='/bin/grep' -EGREP='/bin/grep -E' -FGREP='/bin/grep -F' -LD='mipsel-uclibc-ld' -NM='mipsel-uclibc-nm' -LN_S='ln -s' -max_cmd_len='3458764513820540925' -ac_objext='o' -exeext='' -lt_unset='unset' -lt_SP2NL='tr \040 \012' -lt_NL2SP='tr \015\012 \040\040' -lt_cv_to_host_file_cmd='func_convert_file_noop' -lt_cv_to_tool_file_cmd='func_convert_file_noop' -reload_flag=' -r' -reload_cmds='$LD$reload_flag -o $output$reload_objs' -OBJDUMP='mipsel-linux-objdump' -deplibs_check_method='pass_all' -file_magic_cmd='$MAGIC_CMD' -file_magic_glob='' -want_nocaseglob='no' -DLLTOOL='false' -sharedlib_from_linklib_cmd='printf %s\n' -AR='mipsel-uclibc-ar' -AR_FLAGS='cru' -archiver_list_spec='@' -STRIP='mipsel-uclibc-strip' -RANLIB='mipsel-uclibc-ranlib' -old_postinstall_cmds='chmod 644 $oldlib~$RANLIB $tool_oldlib' -old_postuninstall_cmds='' -old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs~$RANLIB $tool_oldlib' -lock_old_archive_extraction='no' -CC='mipsel-uclibc-gcc -std=gnu99' -CFLAGS=' -g -O2 -fPIC -fPIE -fwrapv -fno-strict-aliasing -fno-strict-overflow -Winit-self -Wwrite-strings -Wdiv-by-zero' -compiler='mipsel-uclibc-gcc -std=gnu99' -GCC='yes' -lt_cv_sys_global_symbol_pipe='sed -n -e '\''s/^.*[ ]\([ABCDGIRSTW][ABCDGIRSTW]*\)[ ][ ]*\([_A-Za-z][_A-Za-z0-9]*\)$/\1 \2 \2/p'\'' | sed '\''/ __gnu_lto/d'\''' -lt_cv_sys_global_symbol_to_cdecl='sed -n -e '\''s/^T .* \(.*\)$/extern int \1();/p'\'' -e '\''s/^[ABCDGIRSTW]* .* \(.*\)$/extern char \1;/p'\''' -lt_cv_sys_global_symbol_to_c_name_address='sed -n -e '\''s/^: \([^ ]*\)[ ]*$/ {\"\1\", (void *) 0},/p'\'' -e '\''s/^[ABCDGIRSTW]* \([^ ]*\) \([^ ]*\)$/ {"\2", (void *) \&\2},/p'\''' -lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='sed -n -e '\''s/^: \([^ ]*\)[ ]*$/ {\"\1\", (void *) 0},/p'\'' -e '\''s/^[ABCDGIRSTW]* \([^ ]*\) \(lib[^ ]*\)$/ {"\2", (void *) \&\2},/p'\'' -e '\''s/^[ABCDGIRSTW]* \([^ ]*\) \([^ ]*\)$/ {"lib\2", (void *) \&\2},/p'\''' -nm_file_list_spec='@' -lt_sysroot='' -objdir='.libs' -MAGIC_CMD='file' -lt_prog_compiler_no_builtin_flag=' -fno-builtin' -lt_prog_compiler_pic=' -fPIC -DPIC' -lt_prog_compiler_wl='-Wl,' -lt_prog_compiler_static='-static' -lt_cv_prog_compiler_c_o='yes' -need_locks='no' -MANIFEST_TOOL=':' -DSYMUTIL='' -NMEDIT='' -LIPO='' -OTOOL='' -OTOOL64='' -libext='a' -shrext_cmds='.so' -extract_expsyms_cmds='' -archive_cmds_need_lc='no' -enable_shared_with_static_runtimes='no' -export_dynamic_flag_spec='${wl}--export-dynamic' -whole_archive_flag_spec='${wl}--whole-archive$convenience ${wl}--no-whole-archive' -compiler_needs_object='no' -old_archive_from_new_cmds='' -old_archive_from_expsyms_cmds='' -archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' -archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~ - cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ - echo "local: *; };" >> $output_objdir/$libname.ver~ - $CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib' -module_cmds='' -module_expsym_cmds='' -with_gnu_ld='yes' -allow_undefined_flag='' -no_undefined_flag='' -hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' -hardcode_libdir_separator='' -hardcode_direct='no' -hardcode_direct_absolute='no' -hardcode_minus_L='no' -hardcode_shlibpath_var='unsupported' -hardcode_automatic='no' -inherit_rpath='no' -link_all_deplibs='unknown' -always_export_symbols='no' -export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' -exclude_expsyms='_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*' -include_expsyms='' -prelink_cmds='' -postlink_cmds='' -file_list_spec='' -variables_saved_for_relink='PATH LD_LIBRARY_PATH LD_RUN_PATH GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH' -need_lib_prefix='no' -need_version='no' -version_type='linux' -runpath_var='LD_RUN_PATH' -shlibpath_var='LD_LIBRARY_PATH' -shlibpath_overrides_runpath='no' -libname_spec='lib$name' -library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' -soname_spec='${libname}${release}${shared_ext}$major' -install_override_mode='' -postinstall_cmds='' -postuninstall_cmds='' -finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' -finish_eval='' -hardcode_into_libs='yes' -sys_lib_search_path_spec='/home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/lib/gcc/mipsel-linux-uclibc/4.2.4 /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/lib/gcc /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/mipsel-linux-uclibc/lib ' -sys_lib_dlsearch_path_spec='/lib /usr/lib /lib/i386-linux-gnu /usr/lib/i386-linux-gnu /lib/i686-linux-gnu /usr/lib/i686-linux-gnu /usr/local/lib /usr/lib/nvidia-settings /lib/x86_64-linux-gnu /usr/lib/x86_64-linux-gnu /usr/lib/nvidia-current /usr/lib32/nvidia-current /lib32 /usr/lib32 ' -hardcode_action='immediate' -enable_dlopen='unknown' -enable_dlopen_self='unknown' -enable_dlopen_self_static='unknown' -old_striplib='mipsel-uclibc-strip --strip-debug' -striplib='mipsel-uclibc-strip --strip-unneeded' - -LTCC='mipsel-uclibc-gcc -std=gnu99' -LTCFLAGS='-g -O2 -fPIC -fPIE -fwrapv -fno-strict-aliasing -fno-strict-overflow -Winit-self -Wwrite-strings -Wdiv-by-zero' -compiler='mipsel-uclibc-gcc -std=gnu99' - -# A function that is used when there is no print builtin or printf. -func_fallback_echo () -{ - eval 'cat <<_LTECHO_EOF -$1 -_LTECHO_EOF' -} - -# Quote evaled strings. -for var in SHELL ECHO PATH_SEPARATOR SED GREP EGREP FGREP LD NM LN_S lt_SP2NL lt_NL2SP reload_flag OBJDUMP deplibs_check_method file_magic_cmd file_magic_glob want_nocaseglob DLLTOOL sharedlib_from_linklib_cmd AR AR_FLAGS archiver_list_spec STRIP RANLIB CC CFLAGS compiler lt_cv_sys_global_symbol_pipe lt_cv_sys_global_symbol_to_cdecl lt_cv_sys_global_symbol_to_c_name_address lt_cv_sys_global_symbol_to_c_name_address_lib_prefix nm_file_list_spec lt_prog_compiler_no_builtin_flag lt_prog_compiler_pic lt_prog_compiler_wl lt_prog_compiler_static lt_cv_prog_compiler_c_o need_locks MANIFEST_TOOL DSYMUTIL NMEDIT LIPO OTOOL OTOOL64 shrext_cmds export_dynamic_flag_spec whole_archive_flag_spec compiler_needs_object with_gnu_ld allow_undefined_flag no_undefined_flag hardcode_libdir_flag_spec hardcode_libdir_separator exclude_expsyms include_expsyms file_list_spec variables_saved_for_relink libname_spec library_names_spec soname_spec install_override_mode finish_eval old_striplib striplib; do - case `eval \\$ECHO \\""\\$$var"\\"` in - *[\\\`\"\$]*) - eval "lt_$var=\\\"\`\$ECHO \"\$$var\" | \$SED \"\$sed_quote_subst\"\`\\\"" - ;; - *) - eval "lt_$var=\\\"\$$var\\\"" - ;; - esac -done - -# Double-quote double-evaled strings. -for var in reload_cmds old_postinstall_cmds old_postuninstall_cmds old_archive_cmds extract_expsyms_cmds old_archive_from_new_cmds old_archive_from_expsyms_cmds archive_cmds archive_expsym_cmds module_cmds module_expsym_cmds export_symbols_cmds prelink_cmds postlink_cmds postinstall_cmds postuninstall_cmds finish_cmds sys_lib_search_path_spec sys_lib_dlsearch_path_spec; do - case `eval \\$ECHO \\""\\$$var"\\"` in - *[\\\`\"\$]*) - eval "lt_$var=\\\"\`\$ECHO \"\$$var\" | \$SED -e \"\$double_quote_subst\" -e \"\$sed_quote_subst\" -e \"\$delay_variable_subst\"\`\\\"" - ;; - *) - eval "lt_$var=\\\"\$$var\\\"" - ;; - esac -done - -ac_aux_dir='.' -xsi_shell='yes' -lt_shell_append='yes' - -# See if we are running on zsh, and set the options which allow our -# commands through without removal of \ escapes INIT. -if test -n "${ZSH_VERSION+set}" ; then - setopt NO_GLOB_SUBST -fi - - - PACKAGE='dnscrypt-proxy' - VERSION='1.0' - TIMESTAMP='' - RM='rm -f' - ofile='libtool' - - - - - -# Handling of arguments. -for ac_config_target in $ac_config_targets -do - case $ac_config_target in - "config.h") CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;; - "depfiles") CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;; - "libtool") CONFIG_COMMANDS="$CONFIG_COMMANDS libtool" ;; - "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;; - "man/Makefile") CONFIG_FILES="$CONFIG_FILES man/Makefile" ;; - "src/Makefile") CONFIG_FILES="$CONFIG_FILES src/Makefile" ;; - "src/hostip/Makefile") CONFIG_FILES="$CONFIG_FILES src/hostip/Makefile" ;; - "src/proxy/Makefile") CONFIG_FILES="$CONFIG_FILES src/proxy/Makefile" ;; - "src/ext/Makefile") CONFIG_FILES="$CONFIG_FILES src/ext/Makefile" ;; - "src/libnacl/Makefile") CONFIG_FILES="$CONFIG_FILES src/libnacl/Makefile" ;; - "src/libnacl/tests/Makefile") CONFIG_FILES="$CONFIG_FILES src/libnacl/tests/Makefile" ;; - "src/libnacl/okcompilers/c") CONFIG_FILES="$CONFIG_FILES src/libnacl/okcompilers/c" ;; - "src/libnacl/okcompilers/do") CONFIG_FILES="$CONFIG_FILES src/libnacl/okcompilers/do" ;; - "test/Makefile") CONFIG_FILES="$CONFIG_FILES test/Makefile" ;; - - *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;; - esac -done - - -# If the user did not use the arguments to specify the items to instantiate, -# then the envvar interface is used. Set only those that are not. -# We use the long form for the default assignment because of an extremely -# bizarre bug on SunOS 4.1.3. -if $ac_need_defaults; then - test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files - test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers - test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands -fi - -# Have a temporary directory for convenience. Make it in the build tree -# simply because there is no reason against having it here, and in addition, -# creating and moving files from /tmp can sometimes cause problems. -# Hook for its removal unless debugging. -# Note that there is a small window in which the directory will not be cleaned: -# after its creation but before its name has been assigned to `$tmp'. -$debug || -{ - tmp= ac_tmp= - trap 'exit_status=$? - : "${ac_tmp:=$tmp}" - { test ! -d "$ac_tmp" || rm -fr "$ac_tmp"; } && exit $exit_status -' 0 - trap 'as_fn_exit 1' 1 2 13 15 -} -# Create a (secure) tmp directory for tmp files. - -{ - tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` && - test -d "$tmp" -} || -{ - tmp=./conf$$-$RANDOM - (umask 077 && mkdir "$tmp") -} || as_fn_error $? "cannot create a temporary directory in ." "$LINENO" 5 -ac_tmp=$tmp - -# Set up the scripts for CONFIG_FILES section. -# No need to generate them if there are no CONFIG_FILES. -# This happens for instance with `./config.status config.h'. -if test -n "$CONFIG_FILES"; then - - -ac_cr=`echo X | tr X '\015'` -# On cygwin, bash can eat \r inside `` if the user requested igncr. -# But we know of no other shell where ac_cr would be empty at this -# point, so we can use a bashism as a fallback. -if test "x$ac_cr" = x; then - eval ac_cr=\$\'\\r\' -fi -ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' /dev/null` -if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then - ac_cs_awk_cr='\\r' -else - ac_cs_awk_cr=$ac_cr -fi - -echo 'BEGIN {' >"$ac_tmp/subs1.awk" && -cat >>"$ac_tmp/subs1.awk" <<\_ACAWK && -S["am__EXEEXT_FALSE"]="" -S["am__EXEEXT_TRUE"]="#" -S["LTLIBOBJS"]="" -S["LIBOBJS"]="" -S["PROBES_SOURCE"]="probes_no_dtrace.h" -S["NACL_PATH"]="libnacl/build/localhost" -S["SAFECODE_HOME"]="" -S["DTRACE"]="#" -S["SIXJACK"]="#" -S["RONN"]="#" -S["LIBTOOL_DEPS"]="./ltmain.sh" -S["OTOOL64"]="" -S["OTOOL"]="" -S["LIPO"]="" -S["NMEDIT"]="" -S["DSYMUTIL"]="" -S["MANIFEST_TOOL"]=":" -S["RANLIB"]="mipsel-uclibc-ranlib" -S["ac_ct_AR"]="" -S["AR"]="mipsel-uclibc-ar" -S["DLLTOOL"]="false" -S["OBJDUMP"]="mipsel-linux-objdump" -S["LN_S"]="ln -s" -S["NM"]="mipsel-uclibc-nm" -S["ac_ct_DUMPBIN"]="" -S["DUMPBIN"]="" -S["LD"]="mipsel-uclibc-ld" -S["FGREP"]="/bin/grep -F" -S["SED"]="/bin/sed" -S["LIBTOOL"]="$(SHELL) $(top_builddir)/libtool" -S["CWFLAGS"]=" -Wall -Wextra -Wbad-function-cast -Wcast-align -Wcast-qual -Wchar-subscripts -Wcomment -Wfloat-equal -Wformat=2 -Wimplicit -Wmissing-declarations -"\ -"Wmissing-prototypes -Wnormalized=id -Woverride-init -Wparentheses -Wpointer-arith -Wredundant-decls -Wstrict-prototypes -Wswitch-enum" -S["EGREP"]="/bin/grep -E" -S["GREP"]="/bin/grep" -S["CPP"]="mipsel-uclibc-gcc -std=gnu99 -E" -S["am__fastdepCC_FALSE"]="#" -S["am__fastdepCC_TRUE"]="" -S["CCDEPMODE"]="depmode=gcc3" -S["am__quote"]="" -S["am__include"]="include" -S["DEPDIR"]=".deps" -S["OBJEXT"]="o" -S["EXEEXT"]="" -S["ac_ct_CC"]="" -S["CPPFLAGS"]=" -D_XPG4_2=1 -D_GNU_SOURCE=1 -D_FORTIFY_SOURCE=2 -I/usr/local/include" -S["LDFLAGS"]=" -pie -Wl,-z,relro -Wl,-z,now -Wl,-z,noexecstack -L/usr/local/lib" -S["CFLAGS"]=" -g -O2 -fPIC -fPIE -fwrapv -fno-strict-aliasing -fno-strict-overflow -Winit-self -Wwrite-strings -Wdiv-by-zero" -S["CC"]="mipsel-uclibc-gcc -std=gnu99" -S["ISODATE"]="2013-06-09" -S["am__nodep"]="_no" -S["AMDEPBACKSLASH"]="\\" -S["AMDEP_FALSE"]="#" -S["AMDEP_TRUE"]="" -S["MAINT"]="#" -S["MAINTAINER_MODE_FALSE"]="" -S["MAINTAINER_MODE_TRUE"]="#" -S["am__untar"]="$${TAR-tar} xf -" -S["am__tar"]="$${TAR-tar} chof - \"$$tardir\"" -S["AMTAR"]="$${TAR-tar}" -S["am__leading_dot"]="." -S["SET_MAKE"]="" -S["AWK"]="gawk" -S["mkdir_p"]="/bin/mkdir -p" -S["MKDIR_P"]="/bin/mkdir -p" -S["INSTALL_STRIP_PROGRAM"]="$(install_sh) -c -s" -S["STRIP"]="mipsel-uclibc-strip" -S["install_sh"]="${SHELL} /home/vicente/tomato/release/src-rt/router/dnscrypt/install-sh" -S["MAKEINFO"]="${SHELL} /home/vicente/tomato/release/src-rt/router/dnscrypt/missing --run makeinfo" -S["AUTOHEADER"]="${SHELL} /home/vicente/tomato/release/src-rt/router/dnscrypt/missing --run autoheader" -S["AUTOMAKE"]="${SHELL} /home/vicente/tomato/release/src-rt/router/dnscrypt/missing --run automake-1.12" -S["AUTOCONF"]="${SHELL} /home/vicente/tomato/release/src-rt/router/dnscrypt/missing --run autoconf" -S["ACLOCAL"]="${SHELL} /home/vicente/tomato/release/src-rt/router/dnscrypt/missing --run aclocal-1.12" -S["VERSION"]="1.0" -S["PACKAGE"]="dnscrypt-proxy" -S["CYGPATH_W"]="echo" -S["am__isrc"]="" -S["INSTALL_DATA"]="${INSTALL} -m 644" -S["INSTALL_SCRIPT"]="${INSTALL}" -S["INSTALL_PROGRAM"]="${INSTALL}" -S["host_os"]="linux-gnu" -S["host_vendor"]="unknown" -S["host_cpu"]="mipsel" -S["host"]="mipsel-unknown-linux-gnu" -S["build_os"]="linux-gnu" -S["build_vendor"]="pc" -S["build_cpu"]="x86_64" -S["build"]="x86_64-pc-linux-gnu" -S["subdirs"]=" src/libevent" -S["target_alias"]="" -S["host_alias"]="mipsel-linux" -S["build_alias"]="x86_64-linux-gnu" -S["LIBS"]="-ldl -lm " -S["ECHO_T"]="" -S["ECHO_N"]="-n" -S["ECHO_C"]="" -S["DEFS"]="-DHAVE_CONFIG_H" -S["mandir"]="${datarootdir}/man" -S["localedir"]="${datarootdir}/locale" -S["libdir"]="${exec_prefix}/lib" -S["psdir"]="${docdir}" -S["pdfdir"]="${docdir}" -S["dvidir"]="${docdir}" -S["htmldir"]="${docdir}" -S["infodir"]="${datarootdir}/info" -S["docdir"]="${datarootdir}/doc/${PACKAGE_TARNAME}" -S["oldincludedir"]="/usr/include" -S["includedir"]="${prefix}/include" -S["localstatedir"]="${prefix}/var" -S["sharedstatedir"]="${prefix}/com" -S["sysconfdir"]="${prefix}/etc" -S["datadir"]="${datarootdir}" -S["datarootdir"]="${prefix}/share" -S["libexecdir"]="${exec_prefix}/libexec" -S["sbindir"]="${exec_prefix}/sbin" -S["bindir"]="${exec_prefix}/bin" -S["program_transform_name"]="s,x,x," -S["prefix"]="/usr" -S["exec_prefix"]="${prefix}" -S["PACKAGE_URL"]="" -S["PACKAGE_BUGREPORT"]="https://github.com/opendns/dnscrypt-proxy/issues" -S["PACKAGE_STRING"]="dnscrypt-proxy 1.0" -S["PACKAGE_VERSION"]="1.0" -S["PACKAGE_TARNAME"]="dnscrypt-proxy" -S["PACKAGE_NAME"]="dnscrypt-proxy" -S["PATH_SEPARATOR"]=":" -S["SHELL"]="/bin/sh" -_ACAWK -cat >>"$ac_tmp/subs1.awk" <<_ACAWK && - for (key in S) S_is_set[key] = 1 - FS = "" - -} -{ - line = $ 0 - nfields = split(line, field, "@") - substed = 0 - len = length(field[1]) - for (i = 2; i < nfields; i++) { - key = field[i] - keylen = length(key) - if (S_is_set[key]) { - value = S[key] - line = substr(line, 1, len) "" value "" substr(line, len + keylen + 3) - len += length(value) + length(field[++i]) - substed = 1 - } else - len += 1 + keylen - } - - print line -} - -_ACAWK -if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then - sed "s/$ac_cr\$//; s/$ac_cr/$ac_cs_awk_cr/g" -else - cat -fi < "$ac_tmp/subs1.awk" > "$ac_tmp/subs.awk" \ - || as_fn_error $? "could not setup config files machinery" "$LINENO" 5 -fi # test -n "$CONFIG_FILES" - -# Set up the scripts for CONFIG_HEADERS section. -# No need to generate them if there are no CONFIG_HEADERS. -# This happens for instance with `./config.status Makefile'. -if test -n "$CONFIG_HEADERS"; then -cat >"$ac_tmp/defines.awk" <<\_ACAWK || -BEGIN { -D["PACKAGE_NAME"]=" \"dnscrypt-proxy\"" -D["PACKAGE_TARNAME"]=" \"dnscrypt-proxy\"" -D["PACKAGE_VERSION"]=" \"1.0\"" -D["PACKAGE_STRING"]=" \"dnscrypt-proxy 1.0\"" -D["PACKAGE_BUGREPORT"]=" \"https://github.com/opendns/dnscrypt-proxy/issues\"" -D["PACKAGE_URL"]=" \"\"" -D["PACKAGE"]=" \"dnscrypt-proxy\"" -D["VERSION"]=" \"1.0\"" -D["STDC_HEADERS"]=" 1" -D["HAVE_SYS_TYPES_H"]=" 1" -D["HAVE_SYS_STAT_H"]=" 1" -D["HAVE_STDLIB_H"]=" 1" -D["HAVE_STRING_H"]=" 1" -D["HAVE_MEMORY_H"]=" 1" -D["HAVE_STRINGS_H"]=" 1" -D["HAVE_INTTYPES_H"]=" 1" -D["HAVE_STDINT_H"]=" 1" -D["HAVE_UNISTD_H"]=" 1" -D["__EXTENSIONS__"]=" 1" -D["_ALL_SOURCE"]=" 1" -D["_GNU_SOURCE"]=" 1" -D["_POSIX_PTHREAD_SEMANTICS"]=" 1" -D["_TANDEM_SOURCE"]=" 1" -D["CROSS_COMPILING"]=" /**/" -D["HAVE_DLFCN_H"]=" 1" -D["LT_OBJDIR"]=" \".libs/\"" -D["_FILE_OFFSET_BITS"]=" 64" -D["HAVE_SYS_CDEFS_H"]=" 1" -D["HAVE_PATHS_H"]=" 1" -D["HAVE_PWD_H"]=" 1" -D["HAVE_GETPWNAM"]=" 1" -D["HAVE_SETRLIMIT"]=" 1" -D["restrict"]=" __restrict" -D["HAVE_CLOCK_GETTIME"]=" /**/" - for (key in D) D_is_set[key] = 1 - FS = "" -} -/^[\t ]*#[\t ]*(define|undef)[\t ]+[_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ][_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789]*([\t (]|$)/ { - line = $ 0 - split(line, arg, " ") - if (arg[1] == "#") { - defundef = arg[2] - mac1 = arg[3] - } else { - defundef = substr(arg[1], 2) - mac1 = arg[2] - } - split(mac1, mac2, "(") #) - macro = mac2[1] - prefix = substr(line, 1, index(line, defundef) - 1) - if (D_is_set[macro]) { - # Preserve the white space surrounding the "#". - print prefix "define", macro P[macro] D[macro] - next - } else { - # Replace #undef with comments. This is necessary, for example, - # in the case of _POSIX_SOURCE, which is predefined and required - # on some systems where configure will not decide to define it. - if (defundef == "undef") { - print "/*", prefix defundef, macro, "*/" - next - } - } -} -{ print } -_ACAWK - as_fn_error $? "could not setup config headers machinery" "$LINENO" 5 -fi # test -n "$CONFIG_HEADERS" - - -eval set X " :F $CONFIG_FILES :H $CONFIG_HEADERS :C $CONFIG_COMMANDS" -shift -for ac_tag -do - case $ac_tag in - :[FHLC]) ac_mode=$ac_tag; continue;; - esac - case $ac_mode$ac_tag in - :[FHL]*:*);; - :L* | :C*:*) as_fn_error $? "invalid tag \`$ac_tag'" "$LINENO" 5;; - :[FH]-) ac_tag=-:-;; - :[FH]*) ac_tag=$ac_tag:$ac_tag.in;; - esac - ac_save_IFS=$IFS - IFS=: - set x $ac_tag - IFS=$ac_save_IFS - shift - ac_file=$1 - shift - - case $ac_mode in - :L) ac_source=$1;; - :[FH]) - ac_file_inputs= - for ac_f - do - case $ac_f in - -) ac_f="$ac_tmp/stdin";; - *) # Look for the file first in the build tree, then in the source tree - # (if the path is not absolute). The absolute path cannot be DOS-style, - # because $ac_f cannot contain `:'. - test -f "$ac_f" || - case $ac_f in - [\\/$]*) false;; - *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";; - esac || - as_fn_error 1 "cannot find input file: \`$ac_f'" "$LINENO" 5;; - esac - case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac - as_fn_append ac_file_inputs " '$ac_f'" - done - - # Let's still pretend it is `configure' which instantiates (i.e., don't - # use $as_me), people would be surprised to read: - # /* config.h. Generated by config.status. */ - configure_input='Generated from '` - $as_echo "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g' - `' by configure.' - if test x"$ac_file" != x-; then - configure_input="$ac_file. $configure_input" - { $as_echo "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5 -$as_echo "$as_me: creating $ac_file" >&6;} - fi - # Neutralize special characters interpreted by sed in replacement strings. - case $configure_input in #( - *\&* | *\|* | *\\* ) - ac_sed_conf_input=`$as_echo "$configure_input" | - sed 's/[\\\\&|]/\\\\&/g'`;; #( - *) ac_sed_conf_input=$configure_input;; - esac - - case $ac_tag in - *:-:* | *:-) cat >"$ac_tmp/stdin" \ - || as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;; - esac - ;; - esac - - ac_dir=`$as_dirname -- "$ac_file" || -$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$ac_file" : 'X\(//\)[^/]' \| \ - X"$ac_file" : 'X\(//\)$' \| \ - X"$ac_file" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$ac_file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - as_dir="$ac_dir"; as_fn_mkdir_p - ac_builddir=. - -case "$ac_dir" in -.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; -*) - ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'` - # A ".." for each directory in $ac_dir_suffix. - ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'` - case $ac_top_builddir_sub in - "") ac_top_builddir_sub=. ac_top_build_prefix= ;; - *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; - esac ;; -esac -ac_abs_top_builddir=$ac_pwd -ac_abs_builddir=$ac_pwd$ac_dir_suffix -# for backward compatibility: -ac_top_builddir=$ac_top_build_prefix - -case $srcdir in - .) # We are building in place. - ac_srcdir=. - ac_top_srcdir=$ac_top_builddir_sub - ac_abs_top_srcdir=$ac_pwd ;; - [\\/]* | ?:[\\/]* ) # Absolute name. - ac_srcdir=$srcdir$ac_dir_suffix; - ac_top_srcdir=$srcdir - ac_abs_top_srcdir=$srcdir ;; - *) # Relative name. - ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix - ac_top_srcdir=$ac_top_build_prefix$srcdir - ac_abs_top_srcdir=$ac_pwd/$srcdir ;; -esac -ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix - - - case $ac_mode in - :F) - # - # CONFIG_FILE - # - - case $INSTALL in - [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;; - *) ac_INSTALL=$ac_top_build_prefix$INSTALL ;; - esac - ac_MKDIR_P=$MKDIR_P - case $MKDIR_P in - [\\/$]* | ?:[\\/]* ) ;; - */*) ac_MKDIR_P=$ac_top_build_prefix$MKDIR_P ;; - esac -# If the template does not know about datarootdir, expand it. -# FIXME: This hack should be removed a few years after 2.60. -ac_datarootdir_hack=; ac_datarootdir_seen= -ac_sed_dataroot=' -/datarootdir/ { - p - q -} -/@datadir@/p -/@docdir@/p -/@infodir@/p -/@localedir@/p -/@mandir@/p' -case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in -*datarootdir*) ac_datarootdir_seen=yes;; -*@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*) - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5 -$as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;} - ac_datarootdir_hack=' - s&@datadir@&${datarootdir}&g - s&@docdir@&${datarootdir}/doc/${PACKAGE_TARNAME}&g - s&@infodir@&${datarootdir}/info&g - s&@localedir@&${datarootdir}/locale&g - s&@mandir@&${datarootdir}/man&g - s&\${datarootdir}&${prefix}/share&g' ;; -esac -ac_sed_extra="/^[ ]*VPATH[ ]*=[ ]*/{ -h -s/// -s/^/:/ -s/[ ]*$/:/ -s/:\$(srcdir):/:/g -s/:\${srcdir}:/:/g -s/:@srcdir@:/:/g -s/^:*// -s/:*$// -x -s/\(=[ ]*\).*/\1/ -G -s/\n// -s/^[^=]*=[ ]*$// -} - -:t -/@[a-zA-Z_][a-zA-Z_0-9]*@/!b -s|@configure_input@|$ac_sed_conf_input|;t t -s&@top_builddir@&$ac_top_builddir_sub&;t t -s&@top_build_prefix@&$ac_top_build_prefix&;t t -s&@srcdir@&$ac_srcdir&;t t -s&@abs_srcdir@&$ac_abs_srcdir&;t t -s&@top_srcdir@&$ac_top_srcdir&;t t -s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t -s&@builddir@&$ac_builddir&;t t -s&@abs_builddir@&$ac_abs_builddir&;t t -s&@abs_top_builddir@&$ac_abs_top_builddir&;t t -s&@INSTALL@&$ac_INSTALL&;t t -s&@MKDIR_P@&$ac_MKDIR_P&;t t -$ac_datarootdir_hack -" -eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$ac_tmp/subs.awk" \ - >$ac_tmp/out || as_fn_error $? "could not create $ac_file" "$LINENO" 5 - -test -z "$ac_datarootdir_hack$ac_datarootdir_seen" && - { ac_out=`sed -n '/\${datarootdir}/p' "$ac_tmp/out"`; test -n "$ac_out"; } && - { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' \ - "$ac_tmp/out"`; test -z "$ac_out"; } && - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir' -which seems to be undefined. Please make sure it is defined" >&5 -$as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir' -which seems to be undefined. Please make sure it is defined" >&2;} - - rm -f "$ac_tmp/stdin" - case $ac_file in - -) cat "$ac_tmp/out" && rm -f "$ac_tmp/out";; - *) rm -f "$ac_file" && mv "$ac_tmp/out" "$ac_file";; - esac \ - || as_fn_error $? "could not create $ac_file" "$LINENO" 5 - ;; - :H) - # - # CONFIG_HEADER - # - if test x"$ac_file" != x-; then - { - $as_echo "/* $configure_input */" \ - && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" - } >"$ac_tmp/config.h" \ - || as_fn_error $? "could not create $ac_file" "$LINENO" 5 - if diff "$ac_file" "$ac_tmp/config.h" >/dev/null 2>&1; then - { $as_echo "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5 -$as_echo "$as_me: $ac_file is unchanged" >&6;} - else - rm -f "$ac_file" - mv "$ac_tmp/config.h" "$ac_file" \ - || as_fn_error $? "could not create $ac_file" "$LINENO" 5 - fi - else - $as_echo "/* $configure_input */" \ - && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" \ - || as_fn_error $? "could not create -" "$LINENO" 5 - fi -# Compute "$ac_file"'s index in $config_headers. -_am_arg="$ac_file" -_am_stamp_count=1 -for _am_header in $config_headers :; do - case $_am_header in - $_am_arg | $_am_arg:* ) - break ;; - * ) - _am_stamp_count=`expr $_am_stamp_count + 1` ;; - esac -done -echo "timestamp for $_am_arg" >`$as_dirname -- "$_am_arg" || -$as_expr X"$_am_arg" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$_am_arg" : 'X\(//\)[^/]' \| \ - X"$_am_arg" : 'X\(//\)$' \| \ - X"$_am_arg" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$_am_arg" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'`/stamp-h$_am_stamp_count - ;; - - :C) { $as_echo "$as_me:${as_lineno-$LINENO}: executing $ac_file commands" >&5 -$as_echo "$as_me: executing $ac_file commands" >&6;} - ;; - esac - - - case $ac_file$ac_mode in - "depfiles":C) test x"$AMDEP_TRUE" != x"" || { - # Autoconf 2.62 quotes --file arguments for eval, but not when files - # are listed without --file. Let's play safe and only enable the eval - # if we detect the quoting. - case $CONFIG_FILES in - *\'*) eval set x "$CONFIG_FILES" ;; - *) set x $CONFIG_FILES ;; - esac - shift - for mf - do - # Strip MF so we end up with the name of the file. - mf=`echo "$mf" | sed -e 's/:.*$//'` - # Check whether this is an Automake generated Makefile or not. - # We used to match only the files named 'Makefile.in', but - # some people rename them; so instead we look at the file content. - # Grep'ing the first line is not enough: some people post-process - # each Makefile.in and add a new line on top of each file to say so. - # Grep'ing the whole file is not good either: AIX grep has a line - # limit of 2048, but all sed's we know have understand at least 4000. - if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then - dirpart=`$as_dirname -- "$mf" || -$as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$mf" : 'X\(//\)[^/]' \| \ - X"$mf" : 'X\(//\)$' \| \ - X"$mf" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$mf" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - else - continue - fi - # Extract the definition of DEPDIR, am__include, and am__quote - # from the Makefile without running 'make'. - DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"` - test -z "$DEPDIR" && continue - am__include=`sed -n 's/^am__include = //p' < "$mf"` - test -z "am__include" && continue - am__quote=`sed -n 's/^am__quote = //p' < "$mf"` - # Find all dependency output files, they are included files with - # $(DEPDIR) in their names. We invoke sed twice because it is the - # simplest approach to changing $(DEPDIR) to its actual value in the - # expansion. - for file in `sed -n " - s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \ - sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g'`; do - # Make sure the directory exists. - test -f "$dirpart/$file" && continue - fdir=`$as_dirname -- "$file" || -$as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$file" : 'X\(//\)[^/]' \| \ - X"$file" : 'X\(//\)$' \| \ - X"$file" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - as_dir=$dirpart/$fdir; as_fn_mkdir_p - # echo "creating $dirpart/$file" - echo '# dummy' > "$dirpart/$file" - done - done -} - ;; - "libtool":C) - - # See if we are running on zsh, and set the options which allow our - # commands through without removal of \ escapes. - if test -n "${ZSH_VERSION+set}" ; then - setopt NO_GLOB_SUBST - fi - - cfgfile="${ofile}T" - trap "$RM \"$cfgfile\"; exit 1" 1 2 15 - $RM "$cfgfile" - - cat <<_LT_EOF >> "$cfgfile" -#! $SHELL - -# `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services. -# Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $VERSION -# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`: -# NOTE: Changes made to this file will be lost: look at ltmain.sh. -# -# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, -# 2006, 2007, 2008, 2009, 2010, 2011 Free Software -# Foundation, Inc. -# Written by Gordon Matzigkeit, 1996 -# -# This file is part of GNU Libtool. -# -# GNU Libtool is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License as -# published by the Free Software Foundation; either version 2 of -# the License, or (at your option) any later version. -# -# As a special exception to the GNU General Public License, -# if you distribute this file as part of a program or library that -# is built using GNU Libtool, you may include this file under the -# same distribution terms that you use for the rest of that program. -# -# GNU Libtool is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GNU Libtool; see the file COPYING. If not, a copy -# can be downloaded from http://www.gnu.org/licenses/gpl.html, or -# obtained by writing to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - - -# The names of the tagged configurations supported by this script. -available_tags="" - -# ### BEGIN LIBTOOL CONFIG - -# Which release of libtool.m4 was used? -macro_version=$macro_version -macro_revision=$macro_revision - -# Whether or not to build shared libraries. -build_libtool_libs=$enable_shared - -# Whether or not to build static libraries. -build_old_libs=$enable_static - -# What type of objects to build. -pic_mode=$pic_mode - -# Whether or not to optimize for fast installation. -fast_install=$enable_fast_install - -# Shell to use when invoking shell scripts. -SHELL=$lt_SHELL - -# An echo program that protects backslashes. -ECHO=$lt_ECHO - -# The PATH separator for the build system. -PATH_SEPARATOR=$lt_PATH_SEPARATOR - -# The host system. -host_alias=$host_alias -host=$host -host_os=$host_os - -# The build system. -build_alias=$build_alias -build=$build -build_os=$build_os - -# A sed program that does not truncate output. -SED=$lt_SED - -# Sed that helps us avoid accidentally triggering echo(1) options like -n. -Xsed="\$SED -e 1s/^X//" - -# A grep program that handles long lines. -GREP=$lt_GREP - -# An ERE matcher. -EGREP=$lt_EGREP - -# A literal string matcher. -FGREP=$lt_FGREP - -# A BSD- or MS-compatible name lister. -NM=$lt_NM - -# Whether we need soft or hard links. -LN_S=$lt_LN_S - -# What is the maximum length of a command? -max_cmd_len=$max_cmd_len - -# Object file suffix (normally "o"). -objext=$ac_objext - -# Executable file suffix (normally ""). -exeext=$exeext - -# whether the shell understands "unset". -lt_unset=$lt_unset - -# turn spaces into newlines. -SP2NL=$lt_lt_SP2NL - -# turn newlines into spaces. -NL2SP=$lt_lt_NL2SP - -# convert \$build file names to \$host format. -to_host_file_cmd=$lt_cv_to_host_file_cmd - -# convert \$build files to toolchain format. -to_tool_file_cmd=$lt_cv_to_tool_file_cmd - -# An object symbol dumper. -OBJDUMP=$lt_OBJDUMP - -# Method to check whether dependent libraries are shared objects. -deplibs_check_method=$lt_deplibs_check_method - -# Command to use when deplibs_check_method = "file_magic". -file_magic_cmd=$lt_file_magic_cmd - -# How to find potential files when deplibs_check_method = "file_magic". -file_magic_glob=$lt_file_magic_glob - -# Find potential files using nocaseglob when deplibs_check_method = "file_magic". -want_nocaseglob=$lt_want_nocaseglob - -# DLL creation program. -DLLTOOL=$lt_DLLTOOL - -# Command to associate shared and link libraries. -sharedlib_from_linklib_cmd=$lt_sharedlib_from_linklib_cmd - -# The archiver. -AR=$lt_AR - -# Flags to create an archive. -AR_FLAGS=$lt_AR_FLAGS - -# How to feed a file listing to the archiver. -archiver_list_spec=$lt_archiver_list_spec - -# A symbol stripping program. -STRIP=$lt_STRIP - -# Commands used to install an old-style archive. -RANLIB=$lt_RANLIB -old_postinstall_cmds=$lt_old_postinstall_cmds -old_postuninstall_cmds=$lt_old_postuninstall_cmds - -# Whether to use a lock for old archive extraction. -lock_old_archive_extraction=$lock_old_archive_extraction - -# A C compiler. -LTCC=$lt_CC - -# LTCC compiler flags. -LTCFLAGS=$lt_CFLAGS - -# Take the output of nm and produce a listing of raw symbols and C names. -global_symbol_pipe=$lt_lt_cv_sys_global_symbol_pipe - -# Transform the output of nm in a proper C declaration. -global_symbol_to_cdecl=$lt_lt_cv_sys_global_symbol_to_cdecl - -# Transform the output of nm in a C name address pair. -global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address - -# Transform the output of nm in a C name address pair when lib prefix is needed. -global_symbol_to_c_name_address_lib_prefix=$lt_lt_cv_sys_global_symbol_to_c_name_address_lib_prefix - -# Specify filename containing input files for \$NM. -nm_file_list_spec=$lt_nm_file_list_spec - -# The root where to search for dependent libraries,and in which our libraries should be installed. -lt_sysroot=$lt_sysroot - -# The name of the directory that contains temporary libtool files. -objdir=$objdir - -# Used to examine libraries when file_magic_cmd begins with "file". -MAGIC_CMD=$MAGIC_CMD - -# Must we lock files when doing compilation? -need_locks=$lt_need_locks - -# Manifest tool. -MANIFEST_TOOL=$lt_MANIFEST_TOOL - -# Tool to manipulate archived DWARF debug symbol files on Mac OS X. -DSYMUTIL=$lt_DSYMUTIL - -# Tool to change global to local symbols on Mac OS X. -NMEDIT=$lt_NMEDIT - -# Tool to manipulate fat objects and archives on Mac OS X. -LIPO=$lt_LIPO - -# ldd/readelf like tool for Mach-O binaries on Mac OS X. -OTOOL=$lt_OTOOL - -# ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4. -OTOOL64=$lt_OTOOL64 - -# Old archive suffix (normally "a"). -libext=$libext - -# Shared library suffix (normally ".so"). -shrext_cmds=$lt_shrext_cmds - -# The commands to extract the exported symbol list from a shared archive. -extract_expsyms_cmds=$lt_extract_expsyms_cmds - -# Variables whose values should be saved in libtool wrapper scripts and -# restored at link time. -variables_saved_for_relink=$lt_variables_saved_for_relink - -# Do we need the "lib" prefix for modules? -need_lib_prefix=$need_lib_prefix - -# Do we need a version for libraries? -need_version=$need_version - -# Library versioning type. -version_type=$version_type - -# Shared library runtime path variable. -runpath_var=$runpath_var - -# Shared library path variable. -shlibpath_var=$shlibpath_var - -# Is shlibpath searched before the hard-coded library search path? -shlibpath_overrides_runpath=$shlibpath_overrides_runpath - -# Format of library name prefix. -libname_spec=$lt_libname_spec - -# List of archive names. First name is the real one, the rest are links. -# The last name is the one that the linker finds with -lNAME -library_names_spec=$lt_library_names_spec - -# The coded name of the library, if different from the real name. -soname_spec=$lt_soname_spec - -# Permission mode override for installation of shared libraries. -install_override_mode=$lt_install_override_mode - -# Command to use after installation of a shared archive. -postinstall_cmds=$lt_postinstall_cmds - -# Command to use after uninstallation of a shared archive. -postuninstall_cmds=$lt_postuninstall_cmds - -# Commands used to finish a libtool library installation in a directory. -finish_cmds=$lt_finish_cmds - -# As "finish_cmds", except a single script fragment to be evaled but -# not shown. -finish_eval=$lt_finish_eval - -# Whether we should hardcode library paths into libraries. -hardcode_into_libs=$hardcode_into_libs - -# Compile-time system search path for libraries. -sys_lib_search_path_spec=$lt_sys_lib_search_path_spec - -# Run-time system search path for libraries. -sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec - -# Whether dlopen is supported. -dlopen_support=$enable_dlopen - -# Whether dlopen of programs is supported. -dlopen_self=$enable_dlopen_self - -# Whether dlopen of statically linked programs is supported. -dlopen_self_static=$enable_dlopen_self_static - -# Commands to strip libraries. -old_striplib=$lt_old_striplib -striplib=$lt_striplib - - -# The linker used to build libraries. -LD=$lt_LD - -# How to create reloadable object files. -reload_flag=$lt_reload_flag -reload_cmds=$lt_reload_cmds - -# Commands used to build an old-style archive. -old_archive_cmds=$lt_old_archive_cmds - -# A language specific compiler. -CC=$lt_compiler - -# Is the compiler the GNU compiler? -with_gcc=$GCC - -# Compiler flag to turn off builtin functions. -no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag - -# Additional compiler flags for building library objects. -pic_flag=$lt_lt_prog_compiler_pic - -# How to pass a linker flag through the compiler. -wl=$lt_lt_prog_compiler_wl - -# Compiler flag to prevent dynamic linking. -link_static_flag=$lt_lt_prog_compiler_static - -# Does compiler simultaneously support -c and -o options? -compiler_c_o=$lt_lt_cv_prog_compiler_c_o - -# Whether or not to add -lc for building shared libraries. -build_libtool_need_lc=$archive_cmds_need_lc - -# Whether or not to disallow shared libs when runtime libs are static. -allow_libtool_libs_with_static_runtimes=$enable_shared_with_static_runtimes - -# Compiler flag to allow reflexive dlopens. -export_dynamic_flag_spec=$lt_export_dynamic_flag_spec - -# Compiler flag to generate shared objects directly from archives. -whole_archive_flag_spec=$lt_whole_archive_flag_spec - -# Whether the compiler copes with passing no objects directly. -compiler_needs_object=$lt_compiler_needs_object - -# Create an old-style archive from a shared archive. -old_archive_from_new_cmds=$lt_old_archive_from_new_cmds - -# Create a temporary old-style archive to link instead of a shared archive. -old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds - -# Commands used to build a shared archive. -archive_cmds=$lt_archive_cmds -archive_expsym_cmds=$lt_archive_expsym_cmds - -# Commands used to build a loadable module if different from building -# a shared archive. -module_cmds=$lt_module_cmds -module_expsym_cmds=$lt_module_expsym_cmds - -# Whether we are building with GNU ld or not. -with_gnu_ld=$lt_with_gnu_ld - -# Flag that allows shared libraries with undefined symbols to be built. -allow_undefined_flag=$lt_allow_undefined_flag - -# Flag that enforces no undefined symbols. -no_undefined_flag=$lt_no_undefined_flag - -# Flag to hardcode \$libdir into a binary during linking. -# This must work even if \$libdir does not exist -hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec - -# Whether we need a single "-rpath" flag with a separated argument. -hardcode_libdir_separator=$lt_hardcode_libdir_separator - -# Set to "yes" if using DIR/libNAME\${shared_ext} during linking hardcodes -# DIR into the resulting binary. -hardcode_direct=$hardcode_direct - -# Set to "yes" if using DIR/libNAME\${shared_ext} during linking hardcodes -# DIR into the resulting binary and the resulting library dependency is -# "absolute",i.e impossible to change by setting \${shlibpath_var} if the -# library is relocated. -hardcode_direct_absolute=$hardcode_direct_absolute - -# Set to "yes" if using the -LDIR flag during linking hardcodes DIR -# into the resulting binary. -hardcode_minus_L=$hardcode_minus_L - -# Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR -# into the resulting binary. -hardcode_shlibpath_var=$hardcode_shlibpath_var - -# Set to "yes" if building a shared library automatically hardcodes DIR -# into the library and all subsequent libraries and executables linked -# against it. -hardcode_automatic=$hardcode_automatic - -# Set to yes if linker adds runtime paths of dependent libraries -# to runtime path list. -inherit_rpath=$inherit_rpath - -# Whether libtool must link a program against all its dependency libraries. -link_all_deplibs=$link_all_deplibs - -# Set to "yes" if exported symbols are required. -always_export_symbols=$always_export_symbols - -# The commands to list exported symbols. -export_symbols_cmds=$lt_export_symbols_cmds - -# Symbols that should not be listed in the preloaded symbols. -exclude_expsyms=$lt_exclude_expsyms - -# Symbols that must always be exported. -include_expsyms=$lt_include_expsyms - -# Commands necessary for linking programs (against libraries) with templates. -prelink_cmds=$lt_prelink_cmds - -# Commands necessary for finishing linking programs. -postlink_cmds=$lt_postlink_cmds - -# Specify filename containing input files. -file_list_spec=$lt_file_list_spec - -# How to hardcode a shared library path into an executable. -hardcode_action=$hardcode_action - -# ### END LIBTOOL CONFIG - -_LT_EOF - - case $host_os in - aix3*) - cat <<\_LT_EOF >> "$cfgfile" -# AIX sometimes has problems with the GCC collect2 program. For some -# reason, if we set the COLLECT_NAMES environment variable, the problems -# vanish in a puff of smoke. -if test "X${COLLECT_NAMES+set}" != Xset; then - COLLECT_NAMES= - export COLLECT_NAMES -fi -_LT_EOF - ;; - esac - - -ltmain="$ac_aux_dir/ltmain.sh" - - - # We use sed instead of cat because bash on DJGPP gets confused if - # if finds mixed CR/LF and LF-only lines. Since sed operates in - # text mode, it properly converts lines to CR/LF. This bash problem - # is reportedly fixed, but why not run on old versions too? - sed '$q' "$ltmain" >> "$cfgfile" \ - || (rm -f "$cfgfile"; exit 1) - - if test x"$xsi_shell" = xyes; then - sed -e '/^func_dirname ()$/,/^} # func_dirname /c\ -func_dirname ()\ -{\ -\ case ${1} in\ -\ */*) func_dirname_result="${1%/*}${2}" ;;\ -\ * ) func_dirname_result="${3}" ;;\ -\ esac\ -} # Extended-shell func_dirname implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_basename ()$/,/^} # func_basename /c\ -func_basename ()\ -{\ -\ func_basename_result="${1##*/}"\ -} # Extended-shell func_basename implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_dirname_and_basename ()$/,/^} # func_dirname_and_basename /c\ -func_dirname_and_basename ()\ -{\ -\ case ${1} in\ -\ */*) func_dirname_result="${1%/*}${2}" ;;\ -\ * ) func_dirname_result="${3}" ;;\ -\ esac\ -\ func_basename_result="${1##*/}"\ -} # Extended-shell func_dirname_and_basename implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_stripname ()$/,/^} # func_stripname /c\ -func_stripname ()\ -{\ -\ # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are\ -\ # positional parameters, so assign one to ordinary parameter first.\ -\ func_stripname_result=${3}\ -\ func_stripname_result=${func_stripname_result#"${1}"}\ -\ func_stripname_result=${func_stripname_result%"${2}"}\ -} # Extended-shell func_stripname implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_split_long_opt ()$/,/^} # func_split_long_opt /c\ -func_split_long_opt ()\ -{\ -\ func_split_long_opt_name=${1%%=*}\ -\ func_split_long_opt_arg=${1#*=}\ -} # Extended-shell func_split_long_opt implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_split_short_opt ()$/,/^} # func_split_short_opt /c\ -func_split_short_opt ()\ -{\ -\ func_split_short_opt_arg=${1#??}\ -\ func_split_short_opt_name=${1%"$func_split_short_opt_arg"}\ -} # Extended-shell func_split_short_opt implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_lo2o ()$/,/^} # func_lo2o /c\ -func_lo2o ()\ -{\ -\ case ${1} in\ -\ *.lo) func_lo2o_result=${1%.lo}.${objext} ;;\ -\ *) func_lo2o_result=${1} ;;\ -\ esac\ -} # Extended-shell func_lo2o implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_xform ()$/,/^} # func_xform /c\ -func_xform ()\ -{\ - func_xform_result=${1%.*}.lo\ -} # Extended-shell func_xform implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_arith ()$/,/^} # func_arith /c\ -func_arith ()\ -{\ - func_arith_result=$(( $* ))\ -} # Extended-shell func_arith implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_len ()$/,/^} # func_len /c\ -func_len ()\ -{\ - func_len_result=${#1}\ -} # Extended-shell func_len implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - -fi - -if test x"$lt_shell_append" = xyes; then - sed -e '/^func_append ()$/,/^} # func_append /c\ -func_append ()\ -{\ - eval "${1}+=\\${2}"\ -} # Extended-shell func_append implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_append_quoted ()$/,/^} # func_append_quoted /c\ -func_append_quoted ()\ -{\ -\ func_quote_for_eval "${2}"\ -\ eval "${1}+=\\\\ \\$func_quote_for_eval_result"\ -} # Extended-shell func_append_quoted implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - # Save a `func_append' function call where possible by direct use of '+=' - sed -e 's%func_append \([a-zA-Z_]\{1,\}\) "%\1+="%g' $cfgfile > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") - test 0 -eq $? || _lt_function_replace_fail=: -else - # Save a `func_append' function call even when '+=' is not available - sed -e 's%func_append \([a-zA-Z_]\{1,\}\) "%\1="$\1%g' $cfgfile > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") - test 0 -eq $? || _lt_function_replace_fail=: -fi - -if test x"$_lt_function_replace_fail" = x":"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Unable to substitute extended shell functions in $ofile" >&5 -$as_echo "$as_me: WARNING: Unable to substitute extended shell functions in $ofile" >&2;} -fi - - - mv -f "$cfgfile" "$ofile" || - (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile") - chmod +x "$ofile" - - ;; - - esac -done # for ac_tag - - -as_fn_exit 0 diff --git a/release/src/router/dnscrypt/man/Makefile b/release/src/router/dnscrypt/man/Makefile index 57b8a68836..0a1efc9f52 100644 --- a/release/src/router/dnscrypt/man/Makefile +++ b/release/src/router/dnscrypt/man/Makefile @@ -103,12 +103,12 @@ am__installdirs = "$(DESTDIR)$(man8dir)" NROFF = nroff MANS = $(man_MANS) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src-rt/router/dnscrypt/missing --run aclocal-1.12 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/missing --run aclocal-1.12 AMTAR = $${TAR-tar} AR = mipsel-uclibc-ar -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src-rt/router/dnscrypt/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src-rt/router/dnscrypt/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src-rt/router/dnscrypt/missing --run automake-1.12 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/missing --run automake-1.12 AWK = gawk CC = mipsel-uclibc-gcc -std=gnu99 CCDEPMODE = depmode=gcc3 @@ -146,7 +146,7 @@ LIPO = LN_S = ln -s LTLIBOBJS = MAINT = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src-rt/router/dnscrypt/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/missing --run makeinfo MANIFEST_TOOL = : MKDIR_P = /bin/mkdir -p NACL_PATH = libnacl/build/localhost @@ -174,10 +174,10 @@ SHELL = /bin/sh SIXJACK = # STRIP = mipsel-uclibc-strip VERSION = 1.0 -abs_builddir = /home/vicente/tomato/release/src-rt/router/dnscrypt/man -abs_srcdir = /home/vicente/tomato/release/src-rt/router/dnscrypt/man -abs_top_builddir = /home/vicente/tomato/release/src-rt/router/dnscrypt -abs_top_srcdir = /home/vicente/tomato/release/src-rt/router/dnscrypt +abs_builddir = /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/man +abs_srcdir = /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/man +abs_top_builddir = /home/vicente/repos/tomato/release/src-rt/router/dnscrypt +abs_top_srcdir = /home/vicente/repos/tomato/release/src-rt/router/dnscrypt ac_ct_AR = ac_ct_CC = ac_ct_DUMPBIN = @@ -206,7 +206,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = ${SHELL} /home/vicente/tomato/release/src-rt/router/dnscrypt/install-sh +install_sh = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = ${datarootdir}/locale diff --git a/release/src/router/dnscrypt/src/Makefile b/release/src/router/dnscrypt/src/Makefile index 04984119c7..214de04a7c 100644 --- a/release/src/router/dnscrypt/src/Makefile +++ b/release/src/router/dnscrypt/src/Makefile @@ -112,12 +112,12 @@ am__relativize = \ dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \ done; \ reldir="$$dir2" -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src-rt/router/dnscrypt/missing --run aclocal-1.12 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/missing --run aclocal-1.12 AMTAR = $${TAR-tar} AR = mipsel-uclibc-ar -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src-rt/router/dnscrypt/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src-rt/router/dnscrypt/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src-rt/router/dnscrypt/missing --run automake-1.12 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/missing --run automake-1.12 AWK = gawk CC = mipsel-uclibc-gcc -std=gnu99 CCDEPMODE = depmode=gcc3 @@ -155,7 +155,7 @@ LIPO = LN_S = ln -s LTLIBOBJS = MAINT = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src-rt/router/dnscrypt/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/missing --run makeinfo MANIFEST_TOOL = : MKDIR_P = /bin/mkdir -p NACL_PATH = libnacl/build/localhost @@ -183,10 +183,10 @@ SHELL = /bin/sh SIXJACK = # STRIP = mipsel-uclibc-strip VERSION = 1.0 -abs_builddir = /home/vicente/tomato/release/src-rt/router/dnscrypt/src -abs_srcdir = /home/vicente/tomato/release/src-rt/router/dnscrypt/src -abs_top_builddir = /home/vicente/tomato/release/src-rt/router/dnscrypt -abs_top_srcdir = /home/vicente/tomato/release/src-rt/router/dnscrypt +abs_builddir = /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/src +abs_srcdir = /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/src +abs_top_builddir = /home/vicente/repos/tomato/release/src-rt/router/dnscrypt +abs_top_srcdir = /home/vicente/repos/tomato/release/src-rt/router/dnscrypt ac_ct_AR = ac_ct_CC = ac_ct_DUMPBIN = @@ -215,7 +215,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = ${SHELL} /home/vicente/tomato/release/src-rt/router/dnscrypt/install-sh +install_sh = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = ${datarootdir}/locale diff --git a/release/src/router/dnscrypt/src/ext/Makefile b/release/src/router/dnscrypt/src/ext/Makefile index 83d01f86f1..8ae211f91e 100644 --- a/release/src/router/dnscrypt/src/ext/Makefile +++ b/release/src/router/dnscrypt/src/ext/Makefile @@ -77,12 +77,12 @@ HEADERS = $(noinst_HEADERS) ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src-rt/router/dnscrypt/missing --run aclocal-1.12 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/missing --run aclocal-1.12 AMTAR = $${TAR-tar} AR = mipsel-uclibc-ar -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src-rt/router/dnscrypt/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src-rt/router/dnscrypt/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src-rt/router/dnscrypt/missing --run automake-1.12 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/missing --run automake-1.12 AWK = gawk CC = mipsel-uclibc-gcc -std=gnu99 CCDEPMODE = depmode=gcc3 @@ -120,7 +120,7 @@ LIPO = LN_S = ln -s LTLIBOBJS = MAINT = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src-rt/router/dnscrypt/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/missing --run makeinfo MANIFEST_TOOL = : MKDIR_P = /bin/mkdir -p NACL_PATH = libnacl/build/localhost @@ -148,10 +148,10 @@ SHELL = /bin/sh SIXJACK = # STRIP = mipsel-uclibc-strip VERSION = 1.0 -abs_builddir = /home/vicente/tomato/release/src-rt/router/dnscrypt/src/ext -abs_srcdir = /home/vicente/tomato/release/src-rt/router/dnscrypt/src/ext -abs_top_builddir = /home/vicente/tomato/release/src-rt/router/dnscrypt -abs_top_srcdir = /home/vicente/tomato/release/src-rt/router/dnscrypt +abs_builddir = /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/src/ext +abs_srcdir = /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/src/ext +abs_top_builddir = /home/vicente/repos/tomato/release/src-rt/router/dnscrypt +abs_top_srcdir = /home/vicente/repos/tomato/release/src-rt/router/dnscrypt ac_ct_AR = ac_ct_CC = ac_ct_DUMPBIN = @@ -180,7 +180,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = ${SHELL} /home/vicente/tomato/release/src-rt/router/dnscrypt/install-sh +install_sh = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = ${datarootdir}/locale diff --git a/release/src/router/dnscrypt/src/hostip/Makefile b/release/src/router/dnscrypt/src/hostip/Makefile index d4a98ae1c1..2f098b92c8 100644 --- a/release/src/router/dnscrypt/src/hostip/Makefile +++ b/release/src/router/dnscrypt/src/hostip/Makefile @@ -96,12 +96,12 @@ am__can_run_installinfo = \ ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src-rt/router/dnscrypt/missing --run aclocal-1.12 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/missing --run aclocal-1.12 AMTAR = $${TAR-tar} AR = mipsel-uclibc-ar -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src-rt/router/dnscrypt/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src-rt/router/dnscrypt/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src-rt/router/dnscrypt/missing --run automake-1.12 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/missing --run automake-1.12 AWK = gawk CC = mipsel-uclibc-gcc -std=gnu99 CCDEPMODE = depmode=gcc3 @@ -139,7 +139,7 @@ LIPO = LN_S = ln -s LTLIBOBJS = MAINT = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src-rt/router/dnscrypt/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/missing --run makeinfo MANIFEST_TOOL = : MKDIR_P = /bin/mkdir -p NACL_PATH = libnacl/build/localhost @@ -167,10 +167,10 @@ SHELL = /bin/sh SIXJACK = # STRIP = mipsel-uclibc-strip VERSION = 1.0 -abs_builddir = /home/vicente/tomato/release/src-rt/router/dnscrypt/src/hostip -abs_srcdir = /home/vicente/tomato/release/src-rt/router/dnscrypt/src/hostip -abs_top_builddir = /home/vicente/tomato/release/src-rt/router/dnscrypt -abs_top_srcdir = /home/vicente/tomato/release/src-rt/router/dnscrypt +abs_builddir = /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/src/hostip +abs_srcdir = /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/src/hostip +abs_top_builddir = /home/vicente/repos/tomato/release/src-rt/router/dnscrypt +abs_top_srcdir = /home/vicente/repos/tomato/release/src-rt/router/dnscrypt ac_ct_AR = ac_ct_CC = ac_ct_DUMPBIN = @@ -199,7 +199,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = ${SHELL} /home/vicente/tomato/release/src-rt/router/dnscrypt/install-sh +install_sh = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = ${datarootdir}/locale diff --git a/release/src/router/dnscrypt/src/libevent/Makefile b/release/src/router/dnscrypt/src/libevent/Makefile index 8b71b48f72..33bf92bc47 100644 --- a/release/src/router/dnscrypt/src/libevent/Makefile +++ b/release/src/router/dnscrypt/src/libevent/Makefile @@ -308,12 +308,12 @@ distuninstallcheck_listfiles = find . -type f -print am__distuninstallcheck_listfiles = $(distuninstallcheck_listfiles) \ | sed 's|^\./|$(prefix)/|' | grep -v '$(infodir)/dir$$' distcleancheck_listfiles = find . -type f -print -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src-rt/router/dnscrypt/src/libevent/missing --run aclocal-1.12 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/src/libevent/missing --run aclocal-1.12 AMTAR = $${TAR-tar} AR = mipsel-uclibc-ar -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src-rt/router/dnscrypt/src/libevent/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src-rt/router/dnscrypt/src/libevent/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src-rt/router/dnscrypt/src/libevent/missing --run automake-1.12 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/src/libevent/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/src/libevent/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/src/libevent/missing --run automake-1.12 AWK = gawk CC = mipsel-uclibc-gcc -std=gnu99 CCDEPMODE = depmode=none @@ -350,7 +350,7 @@ LIBTOOL_DEPS = ./ltmain.sh LIPO = LN_S = ln -s LTLIBOBJS = -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src-rt/router/dnscrypt/src/libevent/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/src/libevent/missing --run makeinfo MANIFEST_TOOL = : MKDIR_P = /bin/mkdir -p NM = mipsel-uclibc-nm @@ -379,10 +379,10 @@ SHELL = /bin/sh STRIP = mipsel-uclibc-strip VERSION = 2.0.19-stable-dev ZLIB_LIBS = -abs_builddir = /home/vicente/tomato/release/src-rt/router/dnscrypt/src/libevent -abs_srcdir = /home/vicente/tomato/release/src-rt/router/dnscrypt/src/libevent -abs_top_builddir = /home/vicente/tomato/release/src-rt/router/dnscrypt/src/libevent -abs_top_srcdir = /home/vicente/tomato/release/src-rt/router/dnscrypt/src/libevent +abs_builddir = /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/src/libevent +abs_srcdir = /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/src/libevent +abs_top_builddir = /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/src/libevent +abs_top_srcdir = /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/src/libevent ac_ct_AR = ac_ct_CC = ac_ct_DUMPBIN = @@ -412,7 +412,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = ${SHELL} /home/vicente/tomato/release/src-rt/router/dnscrypt/src/libevent/install-sh +install_sh = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/src/libevent/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = ${datarootdir}/locale diff --git a/release/src/router/dnscrypt/src/libevent/config.status b/release/src/router/dnscrypt/src/libevent/config.status deleted file mode 100755 index 3586cd23e5..0000000000 --- a/release/src/router/dnscrypt/src/libevent/config.status +++ /dev/null @@ -1,2174 +0,0 @@ -#! /bin/sh -# Generated by configure. -# Run this file to recreate the current configuration. -# Compiler output produced by configure, useful for debugging -# configure, is in config.log if it exists. - -debug=false -ac_cs_recheck=false -ac_cs_silent=false - -SHELL=${CONFIG_SHELL-/bin/sh} -export SHELL -## -------------------- ## -## M4sh Initialization. ## -## -------------------- ## - -# Be more Bourne compatible -DUALCASE=1; export DUALCASE # for MKS sh -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then : - emulate sh - NULLCMD=: - # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which - # is contrary to our usage. Disable this feature. - alias -g '${1+"$@"}'='"$@"' - setopt NO_GLOB_SUBST -else - case `(set -o) 2>/dev/null` in #( - *posix*) : - set -o posix ;; #( - *) : - ;; -esac -fi - - -as_nl=' -' -export as_nl -# Printing a long string crashes Solaris 7 /usr/bin/printf. -as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' -as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo -as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo -# Prefer a ksh shell builtin over an external printf program on Solaris, -# but without wasting forks for bash or zsh. -if test -z "$BASH_VERSION$ZSH_VERSION" \ - && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then - as_echo='print -r --' - as_echo_n='print -rn --' -elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then - as_echo='printf %s\n' - as_echo_n='printf %s' -else - if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then - as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"' - as_echo_n='/usr/ucb/echo -n' - else - as_echo_body='eval expr "X$1" : "X\\(.*\\)"' - as_echo_n_body='eval - arg=$1; - case $arg in #( - *"$as_nl"*) - expr "X$arg" : "X\\(.*\\)$as_nl"; - arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;; - esac; - expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl" - ' - export as_echo_n_body - as_echo_n='sh -c $as_echo_n_body as_echo' - fi - export as_echo_body - as_echo='sh -c $as_echo_body as_echo' -fi - -# The user is always right. -if test "${PATH_SEPARATOR+set}" != set; then - PATH_SEPARATOR=: - (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { - (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || - PATH_SEPARATOR=';' - } -fi - - -# IFS -# We need space, tab and new line, in precisely that order. Quoting is -# there to prevent editors from complaining about space-tab. -# (If _AS_PATH_WALK were called with IFS unset, it would disable word -# splitting by setting IFS to empty value.) -IFS=" "" $as_nl" - -# Find who we are. Look in the path if we contain no directory separator. -as_myself= -case $0 in #(( - *[\\/]* ) as_myself=$0 ;; - *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break - done -IFS=$as_save_IFS - - ;; -esac -# We did not find ourselves, most probably we were run as `sh COMMAND' -# in which case we are not to be found in the path. -if test "x$as_myself" = x; then - as_myself=$0 -fi -if test ! -f "$as_myself"; then - $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 - exit 1 -fi - -# Unset variables that we do not need and which cause bugs (e.g. in -# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1" -# suppresses any "Segmentation fault" message there. '((' could -# trigger a bug in pdksh 5.2.14. -for as_var in BASH_ENV ENV MAIL MAILPATH -do eval test x\${$as_var+set} = xset \ - && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : -done -PS1='$ ' -PS2='> ' -PS4='+ ' - -# NLS nuisances. -LC_ALL=C -export LC_ALL -LANGUAGE=C -export LANGUAGE - -# CDPATH. -(unset CDPATH) >/dev/null 2>&1 && unset CDPATH - - -# as_fn_error STATUS ERROR [LINENO LOG_FD] -# ---------------------------------------- -# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are -# provided, also output the error to LOG_FD, referencing LINENO. Then exit the -# script with STATUS, using 1 if that was 0. -as_fn_error () -{ - as_status=$1; test $as_status -eq 0 && as_status=1 - if test "$4"; then - as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4 - fi - $as_echo "$as_me: error: $2" >&2 - as_fn_exit $as_status -} # as_fn_error - - -# as_fn_set_status STATUS -# ----------------------- -# Set $? to STATUS, without forking. -as_fn_set_status () -{ - return $1 -} # as_fn_set_status - -# as_fn_exit STATUS -# ----------------- -# Exit the shell with STATUS, even in a "trap 0" or "set -e" context. -as_fn_exit () -{ - set +e - as_fn_set_status $1 - exit $1 -} # as_fn_exit - -# as_fn_unset VAR -# --------------- -# Portably unset VAR. -as_fn_unset () -{ - { eval $1=; unset $1;} -} -as_unset=as_fn_unset -# as_fn_append VAR VALUE -# ---------------------- -# Append the text in VALUE to the end of the definition contained in VAR. Take -# advantage of any shell optimizations that allow amortized linear growth over -# repeated appends, instead of the typical quadratic growth present in naive -# implementations. -if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then : - eval 'as_fn_append () - { - eval $1+=\$2 - }' -else - as_fn_append () - { - eval $1=\$$1\$2 - } -fi # as_fn_append - -# as_fn_arith ARG... -# ------------------ -# Perform arithmetic evaluation on the ARGs, and store the result in the -# global $as_val. Take advantage of shells that can avoid forks. The arguments -# must be portable across $(()) and expr. -if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then : - eval 'as_fn_arith () - { - as_val=$(( $* )) - }' -else - as_fn_arith () - { - as_val=`expr "$@" || test $? -eq 1` - } -fi # as_fn_arith - - -if expr a : '\(a\)' >/dev/null 2>&1 && - test "X`expr 00001 : '.*\(...\)'`" = X001; then - as_expr=expr -else - as_expr=false -fi - -if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then - as_basename=basename -else - as_basename=false -fi - -if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then - as_dirname=dirname -else - as_dirname=false -fi - -as_me=`$as_basename -- "$0" || -$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ - X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X/"$0" | - sed '/^.*\/\([^/][^/]*\)\/*$/{ - s//\1/ - q - } - /^X\/\(\/\/\)$/{ - s//\1/ - q - } - /^X\/\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - -# Avoid depending upon Character Ranges. -as_cr_letters='abcdefghijklmnopqrstuvwxyz' -as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' -as_cr_Letters=$as_cr_letters$as_cr_LETTERS -as_cr_digits='0123456789' -as_cr_alnum=$as_cr_Letters$as_cr_digits - -ECHO_C= ECHO_N= ECHO_T= -case `echo -n x` in #((((( --n*) - case `echo 'xy\c'` in - *c*) ECHO_T=' ';; # ECHO_T is single tab character. - xy) ECHO_C='\c';; - *) echo `echo ksh88 bug on AIX 6.1` > /dev/null - ECHO_T=' ';; - esac;; -*) - ECHO_N='-n';; -esac - -rm -f conf$$ conf$$.exe conf$$.file -if test -d conf$$.dir; then - rm -f conf$$.dir/conf$$.file -else - rm -f conf$$.dir - mkdir conf$$.dir 2>/dev/null -fi -if (echo >conf$$.file) 2>/dev/null; then - if ln -s conf$$.file conf$$ 2>/dev/null; then - as_ln_s='ln -s' - # ... but there are two gotchas: - # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. - # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. - # In both cases, we have to default to `cp -pR'. - ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || - as_ln_s='cp -pR' - elif ln conf$$.file conf$$ 2>/dev/null; then - as_ln_s=ln - else - as_ln_s='cp -pR' - fi -else - as_ln_s='cp -pR' -fi -rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file -rmdir conf$$.dir 2>/dev/null - - -# as_fn_mkdir_p -# ------------- -# Create "$as_dir" as a directory, including parents if necessary. -as_fn_mkdir_p () -{ - - case $as_dir in #( - -*) as_dir=./$as_dir;; - esac - test -d "$as_dir" || eval $as_mkdir_p || { - as_dirs= - while :; do - case $as_dir in #( - *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( - *) as_qdir=$as_dir;; - esac - as_dirs="'$as_qdir' $as_dirs" - as_dir=`$as_dirname -- "$as_dir" || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - test -d "$as_dir" && break - done - test -z "$as_dirs" || eval "mkdir $as_dirs" - } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir" - - -} # as_fn_mkdir_p -if mkdir -p . 2>/dev/null; then - as_mkdir_p='mkdir -p "$as_dir"' -else - test -d ./-p && rmdir ./-p - as_mkdir_p=false -fi - - -# as_fn_executable_p FILE -# ----------------------- -# Test if FILE is an executable regular file. -as_fn_executable_p () -{ - test -f "$1" && test -x "$1" -} # as_fn_executable_p -as_test_x='test -x' -as_executable_p=as_fn_executable_p - -# Sed expression to map a string onto a valid CPP name. -as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" - -# Sed expression to map a string onto a valid variable name. -as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" - - -exec 6>&1 -## ----------------------------------- ## -## Main body of $CONFIG_STATUS script. ## -## ----------------------------------- ## -# Save the log message, to keep $0 and so on meaningful, and to -# report actual input values of CONFIG_FILES etc. instead of their -# values after options handling. -ac_log=" -This file was extended by $as_me, which was -generated by GNU Autoconf 2.69. Invocation command line was - - CONFIG_FILES = $CONFIG_FILES - CONFIG_HEADERS = $CONFIG_HEADERS - CONFIG_LINKS = $CONFIG_LINKS - CONFIG_COMMANDS = $CONFIG_COMMANDS - $ $0 $@ - -on `(hostname || uname -n) 2>/dev/null | sed 1q` -" - -# Files that config.status was made for. -config_files=" libevent.pc libevent_openssl.pc libevent_pthreads.pc Makefile include/Makefile test/Makefile sample/Makefile" -config_headers=" config.h" -config_commands=" depfiles libtool" - -ac_cs_usage="\ -\`$as_me' instantiates files and other configuration actions -from templates according to the current configuration. Unless the files -and actions are specified as TAGs, all are instantiated by default. - -Usage: $0 [OPTION]... [TAG]... - - -h, --help print this help, then exit - -V, --version print version number and configuration settings, then exit - --config print configuration, then exit - -q, --quiet, --silent - do not print progress messages - -d, --debug don't remove temporary files - --recheck update $as_me by reconfiguring in the same conditions - --file=FILE[:TEMPLATE] - instantiate the configuration file FILE - --header=FILE[:TEMPLATE] - instantiate the configuration header FILE - -Configuration files: -$config_files - -Configuration headers: -$config_headers - -Configuration commands: -$config_commands - -Report bugs to the package provider." - -ac_cs_config="'--disable-option-checking' '--prefix=/usr' '--host=mipsel-linux' '--build=x86_64-linux-gnu' '--disable-thread-support' '--disable-dependency-tracking' '--disable-libevent-install' '--disable-openssl' '--disable-shared' '--enable-function-sections' '--cache-file=/dev/null' '--srcdir=.' 'build_alias=x86_64-linux-gnu' 'host_alias=mipsel-linux' 'CC=mipsel-uclibc-gcc -std=gnu99' 'CFLAGS= -g -O2 -fPIC -fPIE -fwrapv -fno-strict-aliasing -fno-strict-overflow -Winit-self -Wwrite-strings -Wdiv-by-zero' 'LDFLAGS= -pie -Wl,-z,relro -Wl,-z,now -Wl,-z,noexecstack -L/usr/local/lib' 'LIBS=-ldl -lm ' 'CPPFLAGS= -D_XPG4_2=1 -D_GNU_SOURCE=1 -D_FORTIFY_SOURCE=2 -I/usr/local/include' 'CPP=mipsel-uclibc-gcc -std=gnu99 -E'" -ac_cs_version="\ -config.status -configured by ./configure, generated by GNU Autoconf 2.69, - with options \"$ac_cs_config\" - -Copyright (C) 2012 Free Software Foundation, Inc. -This config.status script is free software; the Free Software Foundation -gives unlimited permission to copy, distribute and modify it." - -ac_pwd='/home/vicente/tomato/release/src-rt/router/dnscrypt/src/libevent' -srcdir='.' -INSTALL='/usr/bin/install -c' -MKDIR_P='/bin/mkdir -p' -AWK='gawk' -test -n "$AWK" || AWK=awk -# The default lists apply if the user does not specify any file. -ac_need_defaults=: -while test $# != 0 -do - case $1 in - --*=?*) - ac_option=`expr "X$1" : 'X\([^=]*\)='` - ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'` - ac_shift=: - ;; - --*=) - ac_option=`expr "X$1" : 'X\([^=]*\)='` - ac_optarg= - ac_shift=: - ;; - *) - ac_option=$1 - ac_optarg=$2 - ac_shift=shift - ;; - esac - - case $ac_option in - # Handling of the options. - -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) - ac_cs_recheck=: ;; - --version | --versio | --versi | --vers | --ver | --ve | --v | -V ) - $as_echo "$ac_cs_version"; exit ;; - --config | --confi | --conf | --con | --co | --c ) - $as_echo "$ac_cs_config"; exit ;; - --debug | --debu | --deb | --de | --d | -d ) - debug=: ;; - --file | --fil | --fi | --f ) - $ac_shift - case $ac_optarg in - *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; - '') as_fn_error $? "missing file argument" ;; - esac - as_fn_append CONFIG_FILES " '$ac_optarg'" - ac_need_defaults=false;; - --header | --heade | --head | --hea ) - $ac_shift - case $ac_optarg in - *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; - esac - as_fn_append CONFIG_HEADERS " '$ac_optarg'" - ac_need_defaults=false;; - --he | --h) - # Conflict between --help and --header - as_fn_error $? "ambiguous option: \`$1' -Try \`$0 --help' for more information.";; - --help | --hel | -h ) - $as_echo "$ac_cs_usage"; exit ;; - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil | --si | --s) - ac_cs_silent=: ;; - - # This is an error. - -*) as_fn_error $? "unrecognized option: \`$1' -Try \`$0 --help' for more information." ;; - - *) as_fn_append ac_config_targets " $1" - ac_need_defaults=false ;; - - esac - shift -done - -ac_configure_extra_args= - -if $ac_cs_silent; then - exec 6>/dev/null - ac_configure_extra_args="$ac_configure_extra_args --silent" -fi - -if $ac_cs_recheck; then - set X /bin/sh './configure' '--disable-option-checking' '--prefix=/usr' '--host=mipsel-linux' '--build=x86_64-linux-gnu' '--disable-thread-support' '--disable-dependency-tracking' '--disable-libevent-install' '--disable-openssl' '--disable-shared' '--enable-function-sections' '--cache-file=/dev/null' '--srcdir=.' 'build_alias=x86_64-linux-gnu' 'host_alias=mipsel-linux' 'CC=mipsel-uclibc-gcc -std=gnu99' 'CFLAGS= -g -O2 -fPIC -fPIE -fwrapv -fno-strict-aliasing -fno-strict-overflow -Winit-self -Wwrite-strings -Wdiv-by-zero' 'LDFLAGS= -pie -Wl,-z,relro -Wl,-z,now -Wl,-z,noexecstack -L/usr/local/lib' 'LIBS=-ldl -lm ' 'CPPFLAGS= -D_XPG4_2=1 -D_GNU_SOURCE=1 -D_FORTIFY_SOURCE=2 -I/usr/local/include' 'CPP=mipsel-uclibc-gcc -std=gnu99 -E' $ac_configure_extra_args --no-create --no-recursion - shift - $as_echo "running CONFIG_SHELL=/bin/sh $*" >&6 - CONFIG_SHELL='/bin/sh' - export CONFIG_SHELL - exec "$@" -fi - -exec 5>>config.log -{ - echo - sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX -## Running $as_me. ## -_ASBOX - $as_echo "$ac_log" -} >&5 - -# -# INIT-COMMANDS -# -AMDEP_TRUE="#" ac_aux_dir="." - - -# The HP-UX ksh and POSIX shell print the target directory to stdout -# if CDPATH is set. -(unset CDPATH) >/dev/null 2>&1 && unset CDPATH - -sed_quote_subst='s/\(["`$\\]\)/\\\1/g' -double_quote_subst='s/\(["`\\]\)/\\\1/g' -delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g' -macro_version='2.4.2' -macro_revision='1.3337' -enable_shared='no' -enable_static='yes' -pic_mode='default' -enable_fast_install='needless' -SHELL='/bin/sh' -ECHO='printf %s\n' -PATH_SEPARATOR=':' -host_alias='mipsel-linux' -host='mipsel-unknown-linux-gnu' -host_os='linux-gnu' -build_alias='x86_64-linux-gnu' -build='x86_64-pc-linux-gnu' -build_os='linux-gnu' -SED='/bin/sed' -Xsed='/bin/sed -e 1s/^X//' -GREP='/bin/grep' -EGREP='/bin/grep -E' -FGREP='/bin/grep -F' -LD='mipsel-uclibc-ld' -NM='mipsel-uclibc-nm' -LN_S='ln -s' -max_cmd_len='3458764513820540925' -ac_objext='o' -exeext='' -lt_unset='unset' -lt_SP2NL='tr \040 \012' -lt_NL2SP='tr \015\012 \040\040' -lt_cv_to_host_file_cmd='func_convert_file_noop' -lt_cv_to_tool_file_cmd='func_convert_file_noop' -reload_flag=' -r' -reload_cmds='$LD$reload_flag -o $output$reload_objs' -OBJDUMP='mipsel-linux-objdump' -deplibs_check_method='pass_all' -file_magic_cmd='$MAGIC_CMD' -file_magic_glob='' -want_nocaseglob='no' -DLLTOOL='false' -sharedlib_from_linklib_cmd='printf %s\n' -AR='mipsel-uclibc-ar' -AR_FLAGS='cru' -archiver_list_spec='@' -STRIP='mipsel-uclibc-strip' -RANLIB='mipsel-uclibc-ranlib' -old_postinstall_cmds='chmod 644 $oldlib~$RANLIB $tool_oldlib' -old_postuninstall_cmds='' -old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs~$RANLIB $tool_oldlib' -lock_old_archive_extraction='no' -CC='mipsel-uclibc-gcc -std=gnu99' -CFLAGS=' -g -O2 -fPIC -fPIE -fwrapv -fno-strict-aliasing -fno-strict-overflow -Winit-self -Wwrite-strings -Wdiv-by-zero -Wall -fno-strict-aliasing' -compiler='mipsel-uclibc-gcc -std=gnu99' -GCC='yes' -lt_cv_sys_global_symbol_pipe='sed -n -e '\''s/^.*[ ]\([ABCDGIRSTW][ABCDGIRSTW]*\)[ ][ ]*\([_A-Za-z][_A-Za-z0-9]*\)$/\1 \2 \2/p'\'' | sed '\''/ __gnu_lto/d'\''' -lt_cv_sys_global_symbol_to_cdecl='sed -n -e '\''s/^T .* \(.*\)$/extern int \1();/p'\'' -e '\''s/^[ABCDGIRSTW]* .* \(.*\)$/extern char \1;/p'\''' -lt_cv_sys_global_symbol_to_c_name_address='sed -n -e '\''s/^: \([^ ]*\)[ ]*$/ {\"\1\", (void *) 0},/p'\'' -e '\''s/^[ABCDGIRSTW]* \([^ ]*\) \([^ ]*\)$/ {"\2", (void *) \&\2},/p'\''' -lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='sed -n -e '\''s/^: \([^ ]*\)[ ]*$/ {\"\1\", (void *) 0},/p'\'' -e '\''s/^[ABCDGIRSTW]* \([^ ]*\) \(lib[^ ]*\)$/ {"\2", (void *) \&\2},/p'\'' -e '\''s/^[ABCDGIRSTW]* \([^ ]*\) \([^ ]*\)$/ {"lib\2", (void *) \&\2},/p'\''' -nm_file_list_spec='@' -lt_sysroot='' -objdir='.libs' -MAGIC_CMD='file' -lt_prog_compiler_no_builtin_flag=' -fno-builtin' -lt_prog_compiler_pic=' -fPIC -DPIC' -lt_prog_compiler_wl='-Wl,' -lt_prog_compiler_static='-static' -lt_cv_prog_compiler_c_o='yes' -need_locks='no' -MANIFEST_TOOL=':' -DSYMUTIL='' -NMEDIT='' -LIPO='' -OTOOL='' -OTOOL64='' -libext='a' -shrext_cmds='.so' -extract_expsyms_cmds='' -archive_cmds_need_lc='yes' -enable_shared_with_static_runtimes='no' -export_dynamic_flag_spec='${wl}--export-dynamic' -whole_archive_flag_spec='${wl}--whole-archive$convenience ${wl}--no-whole-archive' -compiler_needs_object='no' -old_archive_from_new_cmds='' -old_archive_from_expsyms_cmds='' -archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' -archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~ - cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ - echo "local: *; };" >> $output_objdir/$libname.ver~ - $CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib' -module_cmds='' -module_expsym_cmds='' -with_gnu_ld='yes' -allow_undefined_flag='' -no_undefined_flag='' -hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' -hardcode_libdir_separator='' -hardcode_direct='no' -hardcode_direct_absolute='no' -hardcode_minus_L='no' -hardcode_shlibpath_var='unsupported' -hardcode_automatic='no' -inherit_rpath='no' -link_all_deplibs='unknown' -always_export_symbols='no' -export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' -exclude_expsyms='_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*' -include_expsyms='' -prelink_cmds='' -postlink_cmds='' -file_list_spec='' -variables_saved_for_relink='PATH LD_LIBRARY_PATH LD_RUN_PATH GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH' -need_lib_prefix='no' -need_version='no' -version_type='linux' -runpath_var='LD_RUN_PATH' -shlibpath_var='LD_LIBRARY_PATH' -shlibpath_overrides_runpath='no' -libname_spec='lib$name' -library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' -soname_spec='${libname}${release}${shared_ext}$major' -install_override_mode='' -postinstall_cmds='' -postuninstall_cmds='' -finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' -finish_eval='' -hardcode_into_libs='yes' -sys_lib_search_path_spec='/home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/lib/gcc/mipsel-linux-uclibc/4.2.4 /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/lib/gcc /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/mipsel-linux-uclibc/lib ' -sys_lib_dlsearch_path_spec='/lib /usr/lib /lib/i386-linux-gnu /usr/lib/i386-linux-gnu /lib/i686-linux-gnu /usr/lib/i686-linux-gnu /usr/local/lib /usr/lib/nvidia-settings /lib/x86_64-linux-gnu /usr/lib/x86_64-linux-gnu /usr/lib/nvidia-current /usr/lib32/nvidia-current /lib32 /usr/lib32 ' -hardcode_action='immediate' -enable_dlopen='unknown' -enable_dlopen_self='unknown' -enable_dlopen_self_static='unknown' -old_striplib='mipsel-uclibc-strip --strip-debug' -striplib='mipsel-uclibc-strip --strip-unneeded' - -LTCC='mipsel-uclibc-gcc -std=gnu99' -LTCFLAGS=' -g -O2 -fPIC -fPIE -fwrapv -fno-strict-aliasing -fno-strict-overflow -Winit-self -Wwrite-strings -Wdiv-by-zero -Wall -fno-strict-aliasing' -compiler='mipsel-uclibc-gcc -std=gnu99' - -# A function that is used when there is no print builtin or printf. -func_fallback_echo () -{ - eval 'cat <<_LTECHO_EOF -$1 -_LTECHO_EOF' -} - -# Quote evaled strings. -for var in SHELL ECHO PATH_SEPARATOR SED GREP EGREP FGREP LD NM LN_S lt_SP2NL lt_NL2SP reload_flag OBJDUMP deplibs_check_method file_magic_cmd file_magic_glob want_nocaseglob DLLTOOL sharedlib_from_linklib_cmd AR AR_FLAGS archiver_list_spec STRIP RANLIB CC CFLAGS compiler lt_cv_sys_global_symbol_pipe lt_cv_sys_global_symbol_to_cdecl lt_cv_sys_global_symbol_to_c_name_address lt_cv_sys_global_symbol_to_c_name_address_lib_prefix nm_file_list_spec lt_prog_compiler_no_builtin_flag lt_prog_compiler_pic lt_prog_compiler_wl lt_prog_compiler_static lt_cv_prog_compiler_c_o need_locks MANIFEST_TOOL DSYMUTIL NMEDIT LIPO OTOOL OTOOL64 shrext_cmds export_dynamic_flag_spec whole_archive_flag_spec compiler_needs_object with_gnu_ld allow_undefined_flag no_undefined_flag hardcode_libdir_flag_spec hardcode_libdir_separator exclude_expsyms include_expsyms file_list_spec variables_saved_for_relink libname_spec library_names_spec soname_spec install_override_mode finish_eval old_striplib striplib; do - case `eval \\$ECHO \\""\\$$var"\\"` in - *[\\\`\"\$]*) - eval "lt_$var=\\\"\`\$ECHO \"\$$var\" | \$SED \"\$sed_quote_subst\"\`\\\"" - ;; - *) - eval "lt_$var=\\\"\$$var\\\"" - ;; - esac -done - -# Double-quote double-evaled strings. -for var in reload_cmds old_postinstall_cmds old_postuninstall_cmds old_archive_cmds extract_expsyms_cmds old_archive_from_new_cmds old_archive_from_expsyms_cmds archive_cmds archive_expsym_cmds module_cmds module_expsym_cmds export_symbols_cmds prelink_cmds postlink_cmds postinstall_cmds postuninstall_cmds finish_cmds sys_lib_search_path_spec sys_lib_dlsearch_path_spec; do - case `eval \\$ECHO \\""\\$$var"\\"` in - *[\\\`\"\$]*) - eval "lt_$var=\\\"\`\$ECHO \"\$$var\" | \$SED -e \"\$double_quote_subst\" -e \"\$sed_quote_subst\" -e \"\$delay_variable_subst\"\`\\\"" - ;; - *) - eval "lt_$var=\\\"\$$var\\\"" - ;; - esac -done - -ac_aux_dir='.' -xsi_shell='yes' -lt_shell_append='yes' - -# See if we are running on zsh, and set the options which allow our -# commands through without removal of \ escapes INIT. -if test -n "${ZSH_VERSION+set}" ; then - setopt NO_GLOB_SUBST -fi - - - PACKAGE='libevent' - VERSION='2.0.19-stable-dev' - TIMESTAMP='' - RM='rm -f' - ofile='libtool' - - - - - -# Handling of arguments. -for ac_config_target in $ac_config_targets -do - case $ac_config_target in - "config.h") CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;; - "depfiles") CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;; - "libtool") CONFIG_COMMANDS="$CONFIG_COMMANDS libtool" ;; - "libevent.pc") CONFIG_FILES="$CONFIG_FILES libevent.pc" ;; - "libevent_openssl.pc") CONFIG_FILES="$CONFIG_FILES libevent_openssl.pc" ;; - "libevent_pthreads.pc") CONFIG_FILES="$CONFIG_FILES libevent_pthreads.pc" ;; - "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;; - "include/Makefile") CONFIG_FILES="$CONFIG_FILES include/Makefile" ;; - "test/Makefile") CONFIG_FILES="$CONFIG_FILES test/Makefile" ;; - "sample/Makefile") CONFIG_FILES="$CONFIG_FILES sample/Makefile" ;; - - *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;; - esac -done - - -# If the user did not use the arguments to specify the items to instantiate, -# then the envvar interface is used. Set only those that are not. -# We use the long form for the default assignment because of an extremely -# bizarre bug on SunOS 4.1.3. -if $ac_need_defaults; then - test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files - test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers - test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands -fi - -# Have a temporary directory for convenience. Make it in the build tree -# simply because there is no reason against having it here, and in addition, -# creating and moving files from /tmp can sometimes cause problems. -# Hook for its removal unless debugging. -# Note that there is a small window in which the directory will not be cleaned: -# after its creation but before its name has been assigned to `$tmp'. -$debug || -{ - tmp= ac_tmp= - trap 'exit_status=$? - : "${ac_tmp:=$tmp}" - { test ! -d "$ac_tmp" || rm -fr "$ac_tmp"; } && exit $exit_status -' 0 - trap 'as_fn_exit 1' 1 2 13 15 -} -# Create a (secure) tmp directory for tmp files. - -{ - tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` && - test -d "$tmp" -} || -{ - tmp=./conf$$-$RANDOM - (umask 077 && mkdir "$tmp") -} || as_fn_error $? "cannot create a temporary directory in ." "$LINENO" 5 -ac_tmp=$tmp - -# Set up the scripts for CONFIG_FILES section. -# No need to generate them if there are no CONFIG_FILES. -# This happens for instance with `./config.status config.h'. -if test -n "$CONFIG_FILES"; then - - -ac_cr=`echo X | tr X '\015'` -# On cygwin, bash can eat \r inside `` if the user requested igncr. -# But we know of no other shell where ac_cr would be empty at this -# point, so we can use a bashism as a fallback. -if test "x$ac_cr" = x; then - eval ac_cr=\$\'\\r\' -fi -ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' /dev/null` -if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then - ac_cs_awk_cr='\\r' -else - ac_cs_awk_cr=$ac_cr -fi - -echo 'BEGIN {' >"$ac_tmp/subs1.awk" && -cat >>"$ac_tmp/subs1.awk" <<\_ACAWK && -S["am__EXEEXT_FALSE"]="" -S["am__EXEEXT_TRUE"]="#" -S["LTLIBOBJS"]="" -S["INSTALL_LIBEVENT_FALSE"]="" -S["INSTALL_LIBEVENT_TRUE"]="#" -S["LIBEVENT_GC_SECTIONS"]="" -S["OPENSSL_FALSE"]="" -S["OPENSSL_TRUE"]="#" -S["PTHREADS_FALSE"]="" -S["PTHREADS_TRUE"]="#" -S["PTHREAD_CFLAGS"]="" -S["PTHREAD_LIBS"]="" -S["PTHREAD_CC"]="" -S["acx_pthread_config"]="" -S["SIGNAL_SUPPORT_FALSE"]="#" -S["SIGNAL_SUPPORT_TRUE"]="" -S["EVPORT_BACKEND_FALSE"]="" -S["EVPORT_BACKEND_TRUE"]="#" -S["EPOLL_BACKEND_FALSE"]="#" -S["EPOLL_BACKEND_TRUE"]="" -S["LIBOBJS"]="" -S["KQUEUE_BACKEND_FALSE"]="" -S["KQUEUE_BACKEND_TRUE"]="#" -S["DEVPOLL_BACKEND_FALSE"]="" -S["DEVPOLL_BACKEND_TRUE"]="#" -S["POLL_BACKEND_FALSE"]="#" -S["POLL_BACKEND_TRUE"]="" -S["SELECT_BACKEND_FALSE"]="#" -S["SELECT_BACKEND_TRUE"]="" -S["BUILD_WITH_NO_UNDEFINED_FALSE"]="" -S["BUILD_WITH_NO_UNDEFINED_TRUE"]="#" -S["BUILD_CYGWIN_FALSE"]="" -S["BUILD_CYGWIN_TRUE"]="#" -S["BUILD_WIN32_FALSE"]="" -S["BUILD_WIN32_TRUE"]="#" -S["OPENSSL_LIBS"]="" -S["OPENSSL_LIBADD"]="" -S["EV_LIB_GDI"]="" -S["EV_LIB_WS32"]="" -S["ZLIB_REGRESS_FALSE"]="" -S["ZLIB_REGRESS_TRUE"]="#" -S["ZLIB_LIBS"]="" -S["BUILD_REGRESS_FALSE"]="#" -S["BUILD_REGRESS_TRUE"]="" -S["LIBTOOL_DEPS"]="./ltmain.sh" -S["OTOOL64"]="" -S["OTOOL"]="" -S["LIPO"]="" -S["NMEDIT"]="" -S["DSYMUTIL"]="" -S["MANIFEST_TOOL"]=":" -S["RANLIB"]="mipsel-uclibc-ranlib" -S["ac_ct_AR"]="" -S["AR"]="mipsel-uclibc-ar" -S["DLLTOOL"]="false" -S["OBJDUMP"]="mipsel-linux-objdump" -S["NM"]="mipsel-uclibc-nm" -S["ac_ct_DUMPBIN"]="" -S["DUMPBIN"]="" -S["LD"]="mipsel-uclibc-ld" -S["FGREP"]="/bin/grep -F" -S["SED"]="/bin/sed" -S["LIBTOOL"]="$(SHELL) $(top_builddir)/libtool" -S["EGREP"]="/bin/grep -E" -S["GREP"]="/bin/grep" -S["CPP"]="mipsel-uclibc-gcc -std=gnu99 -E" -S["LN_S"]="ln -s" -S["am__fastdepCC_FALSE"]="" -S["am__fastdepCC_TRUE"]="#" -S["CCDEPMODE"]="depmode=none" -S["am__nodep"]="" -S["AMDEPBACKSLASH"]="" -S["AMDEP_FALSE"]="" -S["AMDEP_TRUE"]="#" -S["am__quote"]="" -S["am__include"]="include" -S["DEPDIR"]=".deps" -S["OBJEXT"]="o" -S["EXEEXT"]="" -S["ac_ct_CC"]="" -S["CPPFLAGS"]=" -D_XPG4_2=1 -D_GNU_SOURCE=1 -D_FORTIFY_SOURCE=2 -I/usr/local/include" -S["LDFLAGS"]=" -pie -Wl,-z,relro -Wl,-z,now -Wl,-z,noexecstack -L/usr/local/lib" -S["CFLAGS"]=" -g -O2 -fPIC -fPIE -fwrapv -fno-strict-aliasing -fno-strict-overflow -Winit-self -Wwrite-strings -Wdiv-by-zero -Wall -fno-strict-aliasing" -S["CC"]="mipsel-uclibc-gcc -std=gnu99" -S["host_os"]="linux-gnu" -S["host_vendor"]="unknown" -S["host_cpu"]="mipsel" -S["host"]="mipsel-unknown-linux-gnu" -S["build_os"]="linux-gnu" -S["build_vendor"]="pc" -S["build_cpu"]="x86_64" -S["build"]="x86_64-pc-linux-gnu" -S["am__untar"]="$${TAR-tar} xf -" -S["am__tar"]="$${TAR-tar} chof - \"$$tardir\"" -S["AMTAR"]="$${TAR-tar}" -S["am__leading_dot"]="." -S["SET_MAKE"]="" -S["AWK"]="gawk" -S["mkdir_p"]="/bin/mkdir -p" -S["MKDIR_P"]="/bin/mkdir -p" -S["INSTALL_STRIP_PROGRAM"]="$(install_sh) -c -s" -S["STRIP"]="mipsel-uclibc-strip" -S["install_sh"]="${SHELL} /home/vicente/tomato/release/src-rt/router/dnscrypt/src/libevent/install-sh" -S["MAKEINFO"]="${SHELL} /home/vicente/tomato/release/src-rt/router/dnscrypt/src/libevent/missing --run makeinfo" -S["AUTOHEADER"]="${SHELL} /home/vicente/tomato/release/src-rt/router/dnscrypt/src/libevent/missing --run autoheader" -S["AUTOMAKE"]="${SHELL} /home/vicente/tomato/release/src-rt/router/dnscrypt/src/libevent/missing --run automake-1.12" -S["AUTOCONF"]="${SHELL} /home/vicente/tomato/release/src-rt/router/dnscrypt/src/libevent/missing --run autoconf" -S["ACLOCAL"]="${SHELL} /home/vicente/tomato/release/src-rt/router/dnscrypt/src/libevent/missing --run aclocal-1.12" -S["VERSION"]="2.0.19-stable-dev" -S["PACKAGE"]="libevent" -S["CYGPATH_W"]="echo" -S["am__isrc"]="" -S["INSTALL_DATA"]="${INSTALL} -m 644" -S["INSTALL_SCRIPT"]="${INSTALL}" -S["INSTALL_PROGRAM"]="${INSTALL}" -S["target_alias"]="" -S["host_alias"]="mipsel-linux" -S["build_alias"]="x86_64-linux-gnu" -S["LIBS"]="-ldl -lm " -S["ECHO_T"]="" -S["ECHO_N"]="-n" -S["ECHO_C"]="" -S["DEFS"]="-DHAVE_CONFIG_H" -S["mandir"]="${datarootdir}/man" -S["localedir"]="${datarootdir}/locale" -S["libdir"]="${exec_prefix}/lib" -S["psdir"]="${docdir}" -S["pdfdir"]="${docdir}" -S["dvidir"]="${docdir}" -S["htmldir"]="${docdir}" -S["infodir"]="${datarootdir}/info" -S["docdir"]="${datarootdir}/doc/${PACKAGE}" -S["oldincludedir"]="/usr/include" -S["includedir"]="${prefix}/include" -S["localstatedir"]="${prefix}/var" -S["sharedstatedir"]="${prefix}/com" -S["sysconfdir"]="${prefix}/etc" -S["datadir"]="${datarootdir}" -S["datarootdir"]="${prefix}/share" -S["libexecdir"]="${exec_prefix}/libexec" -S["sbindir"]="${exec_prefix}/sbin" -S["bindir"]="${exec_prefix}/bin" -S["program_transform_name"]="s,x,x," -S["prefix"]="/usr" -S["exec_prefix"]="${prefix}" -S["PACKAGE_URL"]="" -S["PACKAGE_BUGREPORT"]="" -S["PACKAGE_STRING"]="" -S["PACKAGE_VERSION"]="" -S["PACKAGE_TARNAME"]="" -S["PACKAGE_NAME"]="" -S["PATH_SEPARATOR"]=":" -S["SHELL"]="/bin/sh" -_ACAWK -cat >>"$ac_tmp/subs1.awk" <<_ACAWK && - for (key in S) S_is_set[key] = 1 - FS = "" - -} -{ - line = $ 0 - nfields = split(line, field, "@") - substed = 0 - len = length(field[1]) - for (i = 2; i < nfields; i++) { - key = field[i] - keylen = length(key) - if (S_is_set[key]) { - value = S[key] - line = substr(line, 1, len) "" value "" substr(line, len + keylen + 3) - len += length(value) + length(field[++i]) - substed = 1 - } else - len += 1 + keylen - } - - print line -} - -_ACAWK -if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then - sed "s/$ac_cr\$//; s/$ac_cr/$ac_cs_awk_cr/g" -else - cat -fi < "$ac_tmp/subs1.awk" > "$ac_tmp/subs.awk" \ - || as_fn_error $? "could not setup config files machinery" "$LINENO" 5 -fi # test -n "$CONFIG_FILES" - -# Set up the scripts for CONFIG_HEADERS section. -# No need to generate them if there are no CONFIG_HEADERS. -# This happens for instance with `./config.status Makefile'. -if test -n "$CONFIG_HEADERS"; then -cat >"$ac_tmp/defines.awk" <<\_ACAWK || -BEGIN { -D["PACKAGE_NAME"]=" \"\"" -D["PACKAGE_TARNAME"]=" \"\"" -D["PACKAGE_VERSION"]=" \"\"" -D["PACKAGE_STRING"]=" \"\"" -D["PACKAGE_BUGREPORT"]=" \"\"" -D["PACKAGE_URL"]=" \"\"" -D["PACKAGE"]=" \"libevent\"" -D["VERSION"]=" \"2.0.19-stable-dev\"" -D["NUMERIC_VERSION"]=" 0x02001301" -D["STDC_HEADERS"]=" 1" -D["HAVE_SYS_TYPES_H"]=" 1" -D["HAVE_SYS_STAT_H"]=" 1" -D["HAVE_STDLIB_H"]=" 1" -D["HAVE_STRING_H"]=" 1" -D["HAVE_MEMORY_H"]=" 1" -D["HAVE_STRINGS_H"]=" 1" -D["HAVE_INTTYPES_H"]=" 1" -D["HAVE_STDINT_H"]=" 1" -D["HAVE_UNISTD_H"]=" 1" -D["HAVE_DLFCN_H"]=" 1" -D["LT_OBJDIR"]=" \".libs/\"" -D["STDC_HEADERS"]=" 1" -D["HAVE_FCNTL_H"]=" 1" -D["HAVE_STDARG_H"]=" 1" -D["HAVE_INTTYPES_H"]=" 1" -D["HAVE_STDINT_H"]=" 1" -D["HAVE_STDDEF_H"]=" 1" -D["HAVE_POLL_H"]=" 1" -D["HAVE_UNISTD_H"]=" 1" -D["HAVE_SYS_EPOLL_H"]=" 1" -D["HAVE_SYS_TIME_H"]=" 1" -D["HAVE_SYS_QUEUE_H"]=" 1" -D["HAVE_SYS_PARAM_H"]=" 1" -D["HAVE_SYS_IOCTL_H"]=" 1" -D["HAVE_SYS_SELECT_H"]=" 1" -D["HAVE_NETINET_IN_H"]=" 1" -D["HAVE_SYS_SOCKET_H"]=" 1" -D["HAVE_SYS_UIO_H"]=" 1" -D["HAVE_ARPA_INET_H"]=" 1" -D["HAVE_SYS_MMAN_H"]=" 1" -D["HAVE_SYS_SENDFILE_H"]=" 1" -D["HAVE_SYS_WAIT_H"]=" 1" -D["HAVE_NETDB_H"]=" 1" -D["HAVE_SYS_SYSCTL_H"]=" 1" -D["HAVE_TAILQFOREACH"]=" 1" -D["HAVE_TIMERADD"]=" 1" -D["HAVE_TIMERCMP"]=" 1" -D["HAVE_TIMERCLEAR"]=" 1" -D["HAVE_TIMERISSET"]=" 1" -D["HAVE_DECL_CTL_KERN"]=" 1" -D["HAVE_DECL_KERN_RANDOM"]=" 1" -D["HAVE_DECL_RANDOM_UUID"]=" 1" -D["HAVE_DECL_KERN_ARND"]=" 0" -D["TIME_WITH_SYS_TIME"]=" 1" -D["HAVE_GETTIMEOFDAY"]=" 1" -D["HAVE_VASPRINTF"]=" 1" -D["HAVE_FCNTL"]=" 1" -D["HAVE_CLOCK_GETTIME"]=" 1" -D["HAVE_STRTOK_R"]=" 1" -D["HAVE_STRSEP"]=" 1" -D["HAVE_GETNAMEINFO"]=" 1" -D["HAVE_STRLCPY"]=" 1" -D["HAVE_INET_NTOP"]=" 1" -D["HAVE_INET_PTON"]=" 1" -D["HAVE_SIGNAL"]=" 1" -D["HAVE_SIGACTION"]=" 1" -D["HAVE_STRTOLL"]=" 1" -D["HAVE_INET_ATON"]=" 1" -D["HAVE_PIPE"]=" 1" -D["HAVE_SENDFILE"]=" 1" -D["HAVE_MMAP"]=" 1" -D["HAVE_SPLICE"]=" 1" -D["HAVE_GETEUID"]=" 1" -D["HAVE_GETEGID"]=" 1" -D["HAVE_GETPROTOBYNUMBER"]=" 1" -D["HAVE_SETENV"]=" 1" -D["HAVE_UNSETENV"]=" 1" -D["HAVE_PUTENV"]=" 1" -D["HAVE_SYSCTL"]=" 1" -D["HAVE_GETADDRINFO"]=" 1" -D["SIZEOF_LONG"]=" 4" -D["HAVE_SETFD"]=" 1" -D["HAVE_SELECT"]=" 1" -D["HAVE_POLL"]=" 1" -D["HAVE_EPOLL_CTL"]=" 1" -D["HAVE_EPOLL"]=" 1" -D["HAVE_UINT64_T"]=" 1" -D["HAVE_UINT32_T"]=" 1" -D["HAVE_UINT16_T"]=" 1" -D["HAVE_UINT8_T"]=" 1" -D["HAVE_UINTPTR_T"]=" 1" -D["HAVE_FD_MASK"]=" 1" -D["SIZEOF_LONG_LONG"]=" 8" -D["SIZEOF_LONG"]=" 4" -D["SIZEOF_INT"]=" 4" -D["SIZEOF_SHORT"]=" 2" -D["SIZEOF_SIZE_T"]=" 4" -D["SIZEOF_VOID_P"]=" 4" -D["HAVE_STRUCT_IN6_ADDR"]=" 1" -D["HAVE_STRUCT_SOCKADDR_IN6"]=" 1" -D["HAVE_SA_FAMILY_T"]=" 1" -D["HAVE_STRUCT_ADDRINFO"]=" 1" -D["HAVE_STRUCT_SOCKADDR_STORAGE"]=" 1" -D["HAVE_STRUCT_IN6_ADDR_S6_ADDR32"]=" 1" -D["HAVE_STRUCT_IN6_ADDR_S6_ADDR16"]=" 1" -D["HAVE_STRUCT_SOCKADDR_STORAGE_SS_FAMILY"]=" 1" -D["DISABLE_THREAD_SUPPORT"]=" 1" - for (key in D) D_is_set[key] = 1 - FS = "" -} -/^[\t ]*#[\t ]*(define|undef)[\t ]+[_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ][_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789]*([\t (]|$)/ { - line = $ 0 - split(line, arg, " ") - if (arg[1] == "#") { - defundef = arg[2] - mac1 = arg[3] - } else { - defundef = substr(arg[1], 2) - mac1 = arg[2] - } - split(mac1, mac2, "(") #) - macro = mac2[1] - prefix = substr(line, 1, index(line, defundef) - 1) - if (D_is_set[macro]) { - # Preserve the white space surrounding the "#". - print prefix "define", macro P[macro] D[macro] - next - } else { - # Replace #undef with comments. This is necessary, for example, - # in the case of _POSIX_SOURCE, which is predefined and required - # on some systems where configure will not decide to define it. - if (defundef == "undef") { - print "/*", prefix defundef, macro, "*/" - next - } - } -} -{ print } -_ACAWK - as_fn_error $? "could not setup config headers machinery" "$LINENO" 5 -fi # test -n "$CONFIG_HEADERS" - - -eval set X " :F $CONFIG_FILES :H $CONFIG_HEADERS :C $CONFIG_COMMANDS" -shift -for ac_tag -do - case $ac_tag in - :[FHLC]) ac_mode=$ac_tag; continue;; - esac - case $ac_mode$ac_tag in - :[FHL]*:*);; - :L* | :C*:*) as_fn_error $? "invalid tag \`$ac_tag'" "$LINENO" 5;; - :[FH]-) ac_tag=-:-;; - :[FH]*) ac_tag=$ac_tag:$ac_tag.in;; - esac - ac_save_IFS=$IFS - IFS=: - set x $ac_tag - IFS=$ac_save_IFS - shift - ac_file=$1 - shift - - case $ac_mode in - :L) ac_source=$1;; - :[FH]) - ac_file_inputs= - for ac_f - do - case $ac_f in - -) ac_f="$ac_tmp/stdin";; - *) # Look for the file first in the build tree, then in the source tree - # (if the path is not absolute). The absolute path cannot be DOS-style, - # because $ac_f cannot contain `:'. - test -f "$ac_f" || - case $ac_f in - [\\/$]*) false;; - *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";; - esac || - as_fn_error 1 "cannot find input file: \`$ac_f'" "$LINENO" 5;; - esac - case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac - as_fn_append ac_file_inputs " '$ac_f'" - done - - # Let's still pretend it is `configure' which instantiates (i.e., don't - # use $as_me), people would be surprised to read: - # /* config.h. Generated by config.status. */ - configure_input='Generated from '` - $as_echo "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g' - `' by configure.' - if test x"$ac_file" != x-; then - configure_input="$ac_file. $configure_input" - { $as_echo "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5 -$as_echo "$as_me: creating $ac_file" >&6;} - fi - # Neutralize special characters interpreted by sed in replacement strings. - case $configure_input in #( - *\&* | *\|* | *\\* ) - ac_sed_conf_input=`$as_echo "$configure_input" | - sed 's/[\\\\&|]/\\\\&/g'`;; #( - *) ac_sed_conf_input=$configure_input;; - esac - - case $ac_tag in - *:-:* | *:-) cat >"$ac_tmp/stdin" \ - || as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;; - esac - ;; - esac - - ac_dir=`$as_dirname -- "$ac_file" || -$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$ac_file" : 'X\(//\)[^/]' \| \ - X"$ac_file" : 'X\(//\)$' \| \ - X"$ac_file" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$ac_file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - as_dir="$ac_dir"; as_fn_mkdir_p - ac_builddir=. - -case "$ac_dir" in -.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; -*) - ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'` - # A ".." for each directory in $ac_dir_suffix. - ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'` - case $ac_top_builddir_sub in - "") ac_top_builddir_sub=. ac_top_build_prefix= ;; - *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; - esac ;; -esac -ac_abs_top_builddir=$ac_pwd -ac_abs_builddir=$ac_pwd$ac_dir_suffix -# for backward compatibility: -ac_top_builddir=$ac_top_build_prefix - -case $srcdir in - .) # We are building in place. - ac_srcdir=. - ac_top_srcdir=$ac_top_builddir_sub - ac_abs_top_srcdir=$ac_pwd ;; - [\\/]* | ?:[\\/]* ) # Absolute name. - ac_srcdir=$srcdir$ac_dir_suffix; - ac_top_srcdir=$srcdir - ac_abs_top_srcdir=$srcdir ;; - *) # Relative name. - ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix - ac_top_srcdir=$ac_top_build_prefix$srcdir - ac_abs_top_srcdir=$ac_pwd/$srcdir ;; -esac -ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix - - - case $ac_mode in - :F) - # - # CONFIG_FILE - # - - case $INSTALL in - [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;; - *) ac_INSTALL=$ac_top_build_prefix$INSTALL ;; - esac - ac_MKDIR_P=$MKDIR_P - case $MKDIR_P in - [\\/$]* | ?:[\\/]* ) ;; - */*) ac_MKDIR_P=$ac_top_build_prefix$MKDIR_P ;; - esac -# If the template does not know about datarootdir, expand it. -# FIXME: This hack should be removed a few years after 2.60. -ac_datarootdir_hack=; ac_datarootdir_seen= -ac_sed_dataroot=' -/datarootdir/ { - p - q -} -/@datadir@/p -/@docdir@/p -/@infodir@/p -/@localedir@/p -/@mandir@/p' -case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in -*datarootdir*) ac_datarootdir_seen=yes;; -*@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*) - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5 -$as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;} - ac_datarootdir_hack=' - s&@datadir@&${datarootdir}&g - s&@docdir@&${datarootdir}/doc/${PACKAGE}&g - s&@infodir@&${datarootdir}/info&g - s&@localedir@&${datarootdir}/locale&g - s&@mandir@&${datarootdir}/man&g - s&\${datarootdir}&${prefix}/share&g' ;; -esac -ac_sed_extra="/^[ ]*VPATH[ ]*=[ ]*/{ -h -s/// -s/^/:/ -s/[ ]*$/:/ -s/:\$(srcdir):/:/g -s/:\${srcdir}:/:/g -s/:@srcdir@:/:/g -s/^:*// -s/:*$// -x -s/\(=[ ]*\).*/\1/ -G -s/\n// -s/^[^=]*=[ ]*$// -} - -:t -/@[a-zA-Z_][a-zA-Z_0-9]*@/!b -s|@configure_input@|$ac_sed_conf_input|;t t -s&@top_builddir@&$ac_top_builddir_sub&;t t -s&@top_build_prefix@&$ac_top_build_prefix&;t t -s&@srcdir@&$ac_srcdir&;t t -s&@abs_srcdir@&$ac_abs_srcdir&;t t -s&@top_srcdir@&$ac_top_srcdir&;t t -s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t -s&@builddir@&$ac_builddir&;t t -s&@abs_builddir@&$ac_abs_builddir&;t t -s&@abs_top_builddir@&$ac_abs_top_builddir&;t t -s&@INSTALL@&$ac_INSTALL&;t t -s&@MKDIR_P@&$ac_MKDIR_P&;t t -$ac_datarootdir_hack -" -eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$ac_tmp/subs.awk" \ - >$ac_tmp/out || as_fn_error $? "could not create $ac_file" "$LINENO" 5 - -test -z "$ac_datarootdir_hack$ac_datarootdir_seen" && - { ac_out=`sed -n '/\${datarootdir}/p' "$ac_tmp/out"`; test -n "$ac_out"; } && - { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' \ - "$ac_tmp/out"`; test -z "$ac_out"; } && - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir' -which seems to be undefined. Please make sure it is defined" >&5 -$as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir' -which seems to be undefined. Please make sure it is defined" >&2;} - - rm -f "$ac_tmp/stdin" - case $ac_file in - -) cat "$ac_tmp/out" && rm -f "$ac_tmp/out";; - *) rm -f "$ac_file" && mv "$ac_tmp/out" "$ac_file";; - esac \ - || as_fn_error $? "could not create $ac_file" "$LINENO" 5 - ;; - :H) - # - # CONFIG_HEADER - # - if test x"$ac_file" != x-; then - { - $as_echo "/* $configure_input */" \ - && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" - } >"$ac_tmp/config.h" \ - || as_fn_error $? "could not create $ac_file" "$LINENO" 5 - if diff "$ac_file" "$ac_tmp/config.h" >/dev/null 2>&1; then - { $as_echo "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5 -$as_echo "$as_me: $ac_file is unchanged" >&6;} - else - rm -f "$ac_file" - mv "$ac_tmp/config.h" "$ac_file" \ - || as_fn_error $? "could not create $ac_file" "$LINENO" 5 - fi - else - $as_echo "/* $configure_input */" \ - && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" \ - || as_fn_error $? "could not create -" "$LINENO" 5 - fi -# Compute "$ac_file"'s index in $config_headers. -_am_arg="$ac_file" -_am_stamp_count=1 -for _am_header in $config_headers :; do - case $_am_header in - $_am_arg | $_am_arg:* ) - break ;; - * ) - _am_stamp_count=`expr $_am_stamp_count + 1` ;; - esac -done -echo "timestamp for $_am_arg" >`$as_dirname -- "$_am_arg" || -$as_expr X"$_am_arg" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$_am_arg" : 'X\(//\)[^/]' \| \ - X"$_am_arg" : 'X\(//\)$' \| \ - X"$_am_arg" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$_am_arg" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'`/stamp-h$_am_stamp_count - ;; - - :C) { $as_echo "$as_me:${as_lineno-$LINENO}: executing $ac_file commands" >&5 -$as_echo "$as_me: executing $ac_file commands" >&6;} - ;; - esac - - - case $ac_file$ac_mode in - "depfiles":C) test x"$AMDEP_TRUE" != x"" || { - # Autoconf 2.62 quotes --file arguments for eval, but not when files - # are listed without --file. Let's play safe and only enable the eval - # if we detect the quoting. - case $CONFIG_FILES in - *\'*) eval set x "$CONFIG_FILES" ;; - *) set x $CONFIG_FILES ;; - esac - shift - for mf - do - # Strip MF so we end up with the name of the file. - mf=`echo "$mf" | sed -e 's/:.*$//'` - # Check whether this is an Automake generated Makefile or not. - # We used to match only the files named 'Makefile.in', but - # some people rename them; so instead we look at the file content. - # Grep'ing the first line is not enough: some people post-process - # each Makefile.in and add a new line on top of each file to say so. - # Grep'ing the whole file is not good either: AIX grep has a line - # limit of 2048, but all sed's we know have understand at least 4000. - if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then - dirpart=`$as_dirname -- "$mf" || -$as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$mf" : 'X\(//\)[^/]' \| \ - X"$mf" : 'X\(//\)$' \| \ - X"$mf" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$mf" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - else - continue - fi - # Extract the definition of DEPDIR, am__include, and am__quote - # from the Makefile without running 'make'. - DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"` - test -z "$DEPDIR" && continue - am__include=`sed -n 's/^am__include = //p' < "$mf"` - test -z "am__include" && continue - am__quote=`sed -n 's/^am__quote = //p' < "$mf"` - # Find all dependency output files, they are included files with - # $(DEPDIR) in their names. We invoke sed twice because it is the - # simplest approach to changing $(DEPDIR) to its actual value in the - # expansion. - for file in `sed -n " - s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \ - sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g'`; do - # Make sure the directory exists. - test -f "$dirpart/$file" && continue - fdir=`$as_dirname -- "$file" || -$as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$file" : 'X\(//\)[^/]' \| \ - X"$file" : 'X\(//\)$' \| \ - X"$file" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - as_dir=$dirpart/$fdir; as_fn_mkdir_p - # echo "creating $dirpart/$file" - echo '# dummy' > "$dirpart/$file" - done - done -} - ;; - "libtool":C) - - # See if we are running on zsh, and set the options which allow our - # commands through without removal of \ escapes. - if test -n "${ZSH_VERSION+set}" ; then - setopt NO_GLOB_SUBST - fi - - cfgfile="${ofile}T" - trap "$RM \"$cfgfile\"; exit 1" 1 2 15 - $RM "$cfgfile" - - cat <<_LT_EOF >> "$cfgfile" -#! $SHELL - -# `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services. -# Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $VERSION -# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`: -# NOTE: Changes made to this file will be lost: look at ltmain.sh. -# -# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, -# 2006, 2007, 2008, 2009, 2010, 2011 Free Software -# Foundation, Inc. -# Written by Gordon Matzigkeit, 1996 -# -# This file is part of GNU Libtool. -# -# GNU Libtool is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License as -# published by the Free Software Foundation; either version 2 of -# the License, or (at your option) any later version. -# -# As a special exception to the GNU General Public License, -# if you distribute this file as part of a program or library that -# is built using GNU Libtool, you may include this file under the -# same distribution terms that you use for the rest of that program. -# -# GNU Libtool is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GNU Libtool; see the file COPYING. If not, a copy -# can be downloaded from http://www.gnu.org/licenses/gpl.html, or -# obtained by writing to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - - -# The names of the tagged configurations supported by this script. -available_tags="" - -# ### BEGIN LIBTOOL CONFIG - -# Which release of libtool.m4 was used? -macro_version=$macro_version -macro_revision=$macro_revision - -# Whether or not to build shared libraries. -build_libtool_libs=$enable_shared - -# Whether or not to build static libraries. -build_old_libs=$enable_static - -# What type of objects to build. -pic_mode=$pic_mode - -# Whether or not to optimize for fast installation. -fast_install=$enable_fast_install - -# Shell to use when invoking shell scripts. -SHELL=$lt_SHELL - -# An echo program that protects backslashes. -ECHO=$lt_ECHO - -# The PATH separator for the build system. -PATH_SEPARATOR=$lt_PATH_SEPARATOR - -# The host system. -host_alias=$host_alias -host=$host -host_os=$host_os - -# The build system. -build_alias=$build_alias -build=$build -build_os=$build_os - -# A sed program that does not truncate output. -SED=$lt_SED - -# Sed that helps us avoid accidentally triggering echo(1) options like -n. -Xsed="\$SED -e 1s/^X//" - -# A grep program that handles long lines. -GREP=$lt_GREP - -# An ERE matcher. -EGREP=$lt_EGREP - -# A literal string matcher. -FGREP=$lt_FGREP - -# A BSD- or MS-compatible name lister. -NM=$lt_NM - -# Whether we need soft or hard links. -LN_S=$lt_LN_S - -# What is the maximum length of a command? -max_cmd_len=$max_cmd_len - -# Object file suffix (normally "o"). -objext=$ac_objext - -# Executable file suffix (normally ""). -exeext=$exeext - -# whether the shell understands "unset". -lt_unset=$lt_unset - -# turn spaces into newlines. -SP2NL=$lt_lt_SP2NL - -# turn newlines into spaces. -NL2SP=$lt_lt_NL2SP - -# convert \$build file names to \$host format. -to_host_file_cmd=$lt_cv_to_host_file_cmd - -# convert \$build files to toolchain format. -to_tool_file_cmd=$lt_cv_to_tool_file_cmd - -# An object symbol dumper. -OBJDUMP=$lt_OBJDUMP - -# Method to check whether dependent libraries are shared objects. -deplibs_check_method=$lt_deplibs_check_method - -# Command to use when deplibs_check_method = "file_magic". -file_magic_cmd=$lt_file_magic_cmd - -# How to find potential files when deplibs_check_method = "file_magic". -file_magic_glob=$lt_file_magic_glob - -# Find potential files using nocaseglob when deplibs_check_method = "file_magic". -want_nocaseglob=$lt_want_nocaseglob - -# DLL creation program. -DLLTOOL=$lt_DLLTOOL - -# Command to associate shared and link libraries. -sharedlib_from_linklib_cmd=$lt_sharedlib_from_linklib_cmd - -# The archiver. -AR=$lt_AR - -# Flags to create an archive. -AR_FLAGS=$lt_AR_FLAGS - -# How to feed a file listing to the archiver. -archiver_list_spec=$lt_archiver_list_spec - -# A symbol stripping program. -STRIP=$lt_STRIP - -# Commands used to install an old-style archive. -RANLIB=$lt_RANLIB -old_postinstall_cmds=$lt_old_postinstall_cmds -old_postuninstall_cmds=$lt_old_postuninstall_cmds - -# Whether to use a lock for old archive extraction. -lock_old_archive_extraction=$lock_old_archive_extraction - -# A C compiler. -LTCC=$lt_CC - -# LTCC compiler flags. -LTCFLAGS=$lt_CFLAGS - -# Take the output of nm and produce a listing of raw symbols and C names. -global_symbol_pipe=$lt_lt_cv_sys_global_symbol_pipe - -# Transform the output of nm in a proper C declaration. -global_symbol_to_cdecl=$lt_lt_cv_sys_global_symbol_to_cdecl - -# Transform the output of nm in a C name address pair. -global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address - -# Transform the output of nm in a C name address pair when lib prefix is needed. -global_symbol_to_c_name_address_lib_prefix=$lt_lt_cv_sys_global_symbol_to_c_name_address_lib_prefix - -# Specify filename containing input files for \$NM. -nm_file_list_spec=$lt_nm_file_list_spec - -# The root where to search for dependent libraries,and in which our libraries should be installed. -lt_sysroot=$lt_sysroot - -# The name of the directory that contains temporary libtool files. -objdir=$objdir - -# Used to examine libraries when file_magic_cmd begins with "file". -MAGIC_CMD=$MAGIC_CMD - -# Must we lock files when doing compilation? -need_locks=$lt_need_locks - -# Manifest tool. -MANIFEST_TOOL=$lt_MANIFEST_TOOL - -# Tool to manipulate archived DWARF debug symbol files on Mac OS X. -DSYMUTIL=$lt_DSYMUTIL - -# Tool to change global to local symbols on Mac OS X. -NMEDIT=$lt_NMEDIT - -# Tool to manipulate fat objects and archives on Mac OS X. -LIPO=$lt_LIPO - -# ldd/readelf like tool for Mach-O binaries on Mac OS X. -OTOOL=$lt_OTOOL - -# ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4. -OTOOL64=$lt_OTOOL64 - -# Old archive suffix (normally "a"). -libext=$libext - -# Shared library suffix (normally ".so"). -shrext_cmds=$lt_shrext_cmds - -# The commands to extract the exported symbol list from a shared archive. -extract_expsyms_cmds=$lt_extract_expsyms_cmds - -# Variables whose values should be saved in libtool wrapper scripts and -# restored at link time. -variables_saved_for_relink=$lt_variables_saved_for_relink - -# Do we need the "lib" prefix for modules? -need_lib_prefix=$need_lib_prefix - -# Do we need a version for libraries? -need_version=$need_version - -# Library versioning type. -version_type=$version_type - -# Shared library runtime path variable. -runpath_var=$runpath_var - -# Shared library path variable. -shlibpath_var=$shlibpath_var - -# Is shlibpath searched before the hard-coded library search path? -shlibpath_overrides_runpath=$shlibpath_overrides_runpath - -# Format of library name prefix. -libname_spec=$lt_libname_spec - -# List of archive names. First name is the real one, the rest are links. -# The last name is the one that the linker finds with -lNAME -library_names_spec=$lt_library_names_spec - -# The coded name of the library, if different from the real name. -soname_spec=$lt_soname_spec - -# Permission mode override for installation of shared libraries. -install_override_mode=$lt_install_override_mode - -# Command to use after installation of a shared archive. -postinstall_cmds=$lt_postinstall_cmds - -# Command to use after uninstallation of a shared archive. -postuninstall_cmds=$lt_postuninstall_cmds - -# Commands used to finish a libtool library installation in a directory. -finish_cmds=$lt_finish_cmds - -# As "finish_cmds", except a single script fragment to be evaled but -# not shown. -finish_eval=$lt_finish_eval - -# Whether we should hardcode library paths into libraries. -hardcode_into_libs=$hardcode_into_libs - -# Compile-time system search path for libraries. -sys_lib_search_path_spec=$lt_sys_lib_search_path_spec - -# Run-time system search path for libraries. -sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec - -# Whether dlopen is supported. -dlopen_support=$enable_dlopen - -# Whether dlopen of programs is supported. -dlopen_self=$enable_dlopen_self - -# Whether dlopen of statically linked programs is supported. -dlopen_self_static=$enable_dlopen_self_static - -# Commands to strip libraries. -old_striplib=$lt_old_striplib -striplib=$lt_striplib - - -# The linker used to build libraries. -LD=$lt_LD - -# How to create reloadable object files. -reload_flag=$lt_reload_flag -reload_cmds=$lt_reload_cmds - -# Commands used to build an old-style archive. -old_archive_cmds=$lt_old_archive_cmds - -# A language specific compiler. -CC=$lt_compiler - -# Is the compiler the GNU compiler? -with_gcc=$GCC - -# Compiler flag to turn off builtin functions. -no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag - -# Additional compiler flags for building library objects. -pic_flag=$lt_lt_prog_compiler_pic - -# How to pass a linker flag through the compiler. -wl=$lt_lt_prog_compiler_wl - -# Compiler flag to prevent dynamic linking. -link_static_flag=$lt_lt_prog_compiler_static - -# Does compiler simultaneously support -c and -o options? -compiler_c_o=$lt_lt_cv_prog_compiler_c_o - -# Whether or not to add -lc for building shared libraries. -build_libtool_need_lc=$archive_cmds_need_lc - -# Whether or not to disallow shared libs when runtime libs are static. -allow_libtool_libs_with_static_runtimes=$enable_shared_with_static_runtimes - -# Compiler flag to allow reflexive dlopens. -export_dynamic_flag_spec=$lt_export_dynamic_flag_spec - -# Compiler flag to generate shared objects directly from archives. -whole_archive_flag_spec=$lt_whole_archive_flag_spec - -# Whether the compiler copes with passing no objects directly. -compiler_needs_object=$lt_compiler_needs_object - -# Create an old-style archive from a shared archive. -old_archive_from_new_cmds=$lt_old_archive_from_new_cmds - -# Create a temporary old-style archive to link instead of a shared archive. -old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds - -# Commands used to build a shared archive. -archive_cmds=$lt_archive_cmds -archive_expsym_cmds=$lt_archive_expsym_cmds - -# Commands used to build a loadable module if different from building -# a shared archive. -module_cmds=$lt_module_cmds -module_expsym_cmds=$lt_module_expsym_cmds - -# Whether we are building with GNU ld or not. -with_gnu_ld=$lt_with_gnu_ld - -# Flag that allows shared libraries with undefined symbols to be built. -allow_undefined_flag=$lt_allow_undefined_flag - -# Flag that enforces no undefined symbols. -no_undefined_flag=$lt_no_undefined_flag - -# Flag to hardcode \$libdir into a binary during linking. -# This must work even if \$libdir does not exist -hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec - -# Whether we need a single "-rpath" flag with a separated argument. -hardcode_libdir_separator=$lt_hardcode_libdir_separator - -# Set to "yes" if using DIR/libNAME\${shared_ext} during linking hardcodes -# DIR into the resulting binary. -hardcode_direct=$hardcode_direct - -# Set to "yes" if using DIR/libNAME\${shared_ext} during linking hardcodes -# DIR into the resulting binary and the resulting library dependency is -# "absolute",i.e impossible to change by setting \${shlibpath_var} if the -# library is relocated. -hardcode_direct_absolute=$hardcode_direct_absolute - -# Set to "yes" if using the -LDIR flag during linking hardcodes DIR -# into the resulting binary. -hardcode_minus_L=$hardcode_minus_L - -# Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR -# into the resulting binary. -hardcode_shlibpath_var=$hardcode_shlibpath_var - -# Set to "yes" if building a shared library automatically hardcodes DIR -# into the library and all subsequent libraries and executables linked -# against it. -hardcode_automatic=$hardcode_automatic - -# Set to yes if linker adds runtime paths of dependent libraries -# to runtime path list. -inherit_rpath=$inherit_rpath - -# Whether libtool must link a program against all its dependency libraries. -link_all_deplibs=$link_all_deplibs - -# Set to "yes" if exported symbols are required. -always_export_symbols=$always_export_symbols - -# The commands to list exported symbols. -export_symbols_cmds=$lt_export_symbols_cmds - -# Symbols that should not be listed in the preloaded symbols. -exclude_expsyms=$lt_exclude_expsyms - -# Symbols that must always be exported. -include_expsyms=$lt_include_expsyms - -# Commands necessary for linking programs (against libraries) with templates. -prelink_cmds=$lt_prelink_cmds - -# Commands necessary for finishing linking programs. -postlink_cmds=$lt_postlink_cmds - -# Specify filename containing input files. -file_list_spec=$lt_file_list_spec - -# How to hardcode a shared library path into an executable. -hardcode_action=$hardcode_action - -# ### END LIBTOOL CONFIG - -_LT_EOF - - case $host_os in - aix3*) - cat <<\_LT_EOF >> "$cfgfile" -# AIX sometimes has problems with the GCC collect2 program. For some -# reason, if we set the COLLECT_NAMES environment variable, the problems -# vanish in a puff of smoke. -if test "X${COLLECT_NAMES+set}" != Xset; then - COLLECT_NAMES= - export COLLECT_NAMES -fi -_LT_EOF - ;; - esac - - -ltmain="$ac_aux_dir/ltmain.sh" - - - # We use sed instead of cat because bash on DJGPP gets confused if - # if finds mixed CR/LF and LF-only lines. Since sed operates in - # text mode, it properly converts lines to CR/LF. This bash problem - # is reportedly fixed, but why not run on old versions too? - sed '$q' "$ltmain" >> "$cfgfile" \ - || (rm -f "$cfgfile"; exit 1) - - if test x"$xsi_shell" = xyes; then - sed -e '/^func_dirname ()$/,/^} # func_dirname /c\ -func_dirname ()\ -{\ -\ case ${1} in\ -\ */*) func_dirname_result="${1%/*}${2}" ;;\ -\ * ) func_dirname_result="${3}" ;;\ -\ esac\ -} # Extended-shell func_dirname implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_basename ()$/,/^} # func_basename /c\ -func_basename ()\ -{\ -\ func_basename_result="${1##*/}"\ -} # Extended-shell func_basename implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_dirname_and_basename ()$/,/^} # func_dirname_and_basename /c\ -func_dirname_and_basename ()\ -{\ -\ case ${1} in\ -\ */*) func_dirname_result="${1%/*}${2}" ;;\ -\ * ) func_dirname_result="${3}" ;;\ -\ esac\ -\ func_basename_result="${1##*/}"\ -} # Extended-shell func_dirname_and_basename implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_stripname ()$/,/^} # func_stripname /c\ -func_stripname ()\ -{\ -\ # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are\ -\ # positional parameters, so assign one to ordinary parameter first.\ -\ func_stripname_result=${3}\ -\ func_stripname_result=${func_stripname_result#"${1}"}\ -\ func_stripname_result=${func_stripname_result%"${2}"}\ -} # Extended-shell func_stripname implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_split_long_opt ()$/,/^} # func_split_long_opt /c\ -func_split_long_opt ()\ -{\ -\ func_split_long_opt_name=${1%%=*}\ -\ func_split_long_opt_arg=${1#*=}\ -} # Extended-shell func_split_long_opt implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_split_short_opt ()$/,/^} # func_split_short_opt /c\ -func_split_short_opt ()\ -{\ -\ func_split_short_opt_arg=${1#??}\ -\ func_split_short_opt_name=${1%"$func_split_short_opt_arg"}\ -} # Extended-shell func_split_short_opt implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_lo2o ()$/,/^} # func_lo2o /c\ -func_lo2o ()\ -{\ -\ case ${1} in\ -\ *.lo) func_lo2o_result=${1%.lo}.${objext} ;;\ -\ *) func_lo2o_result=${1} ;;\ -\ esac\ -} # Extended-shell func_lo2o implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_xform ()$/,/^} # func_xform /c\ -func_xform ()\ -{\ - func_xform_result=${1%.*}.lo\ -} # Extended-shell func_xform implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_arith ()$/,/^} # func_arith /c\ -func_arith ()\ -{\ - func_arith_result=$(( $* ))\ -} # Extended-shell func_arith implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_len ()$/,/^} # func_len /c\ -func_len ()\ -{\ - func_len_result=${#1}\ -} # Extended-shell func_len implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - -fi - -if test x"$lt_shell_append" = xyes; then - sed -e '/^func_append ()$/,/^} # func_append /c\ -func_append ()\ -{\ - eval "${1}+=\\${2}"\ -} # Extended-shell func_append implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_append_quoted ()$/,/^} # func_append_quoted /c\ -func_append_quoted ()\ -{\ -\ func_quote_for_eval "${2}"\ -\ eval "${1}+=\\\\ \\$func_quote_for_eval_result"\ -} # Extended-shell func_append_quoted implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - # Save a `func_append' function call where possible by direct use of '+=' - sed -e 's%func_append \([a-zA-Z_]\{1,\}\) "%\1+="%g' $cfgfile > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") - test 0 -eq $? || _lt_function_replace_fail=: -else - # Save a `func_append' function call even when '+=' is not available - sed -e 's%func_append \([a-zA-Z_]\{1,\}\) "%\1="$\1%g' $cfgfile > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") - test 0 -eq $? || _lt_function_replace_fail=: -fi - -if test x"$_lt_function_replace_fail" = x":"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Unable to substitute extended shell functions in $ofile" >&5 -$as_echo "$as_me: WARNING: Unable to substitute extended shell functions in $ofile" >&2;} -fi - - - mv -f "$cfgfile" "$ofile" || - (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile") - chmod +x "$ofile" - - ;; - - esac -done # for ac_tag - - -as_fn_exit 0 diff --git a/release/src/router/dnscrypt/src/libevent/include/Makefile b/release/src/router/dnscrypt/src/libevent/include/Makefile index 776f7b2b77..cbd56ead27 100644 --- a/release/src/router/dnscrypt/src/libevent/include/Makefile +++ b/release/src/router/dnscrypt/src/libevent/include/Makefile @@ -130,12 +130,12 @@ HEADERS = $(nobase_include_HEADERS) $(nobase_nodist_include_HEADERS) \ ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src-rt/router/dnscrypt/src/libevent/missing --run aclocal-1.12 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/src/libevent/missing --run aclocal-1.12 AMTAR = $${TAR-tar} AR = mipsel-uclibc-ar -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src-rt/router/dnscrypt/src/libevent/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src-rt/router/dnscrypt/src/libevent/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src-rt/router/dnscrypt/src/libevent/missing --run automake-1.12 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/src/libevent/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/src/libevent/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/src/libevent/missing --run automake-1.12 AWK = gawk CC = mipsel-uclibc-gcc -std=gnu99 CCDEPMODE = depmode=none @@ -172,7 +172,7 @@ LIBTOOL_DEPS = ./ltmain.sh LIPO = LN_S = ln -s LTLIBOBJS = -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src-rt/router/dnscrypt/src/libevent/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/src/libevent/missing --run makeinfo MANIFEST_TOOL = : MKDIR_P = /bin/mkdir -p NM = mipsel-uclibc-nm @@ -201,10 +201,10 @@ SHELL = /bin/sh STRIP = mipsel-uclibc-strip VERSION = 2.0.19-stable-dev ZLIB_LIBS = -abs_builddir = /home/vicente/tomato/release/src-rt/router/dnscrypt/src/libevent/include -abs_srcdir = /home/vicente/tomato/release/src-rt/router/dnscrypt/src/libevent/include -abs_top_builddir = /home/vicente/tomato/release/src-rt/router/dnscrypt/src/libevent -abs_top_srcdir = /home/vicente/tomato/release/src-rt/router/dnscrypt/src/libevent +abs_builddir = /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/src/libevent/include +abs_srcdir = /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/src/libevent/include +abs_top_builddir = /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/src/libevent +abs_top_srcdir = /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/src/libevent ac_ct_AR = ac_ct_CC = ac_ct_DUMPBIN = @@ -234,7 +234,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = ${SHELL} /home/vicente/tomato/release/src-rt/router/dnscrypt/src/libevent/install-sh +install_sh = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/src/libevent/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = ${datarootdir}/locale diff --git a/release/src/router/dnscrypt/src/libevent/sample/Makefile b/release/src/router/dnscrypt/src/libevent/sample/Makefile index 5dc763cb7a..48dc8a8338 100644 --- a/release/src/router/dnscrypt/src/libevent/sample/Makefile +++ b/release/src/router/dnscrypt/src/libevent/sample/Makefile @@ -135,12 +135,12 @@ am__can_run_installinfo = \ ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src-rt/router/dnscrypt/src/libevent/missing --run aclocal-1.12 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/src/libevent/missing --run aclocal-1.12 AMTAR = $${TAR-tar} AR = mipsel-uclibc-ar -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src-rt/router/dnscrypt/src/libevent/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src-rt/router/dnscrypt/src/libevent/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src-rt/router/dnscrypt/src/libevent/missing --run automake-1.12 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/src/libevent/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/src/libevent/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/src/libevent/missing --run automake-1.12 AWK = gawk CC = mipsel-uclibc-gcc -std=gnu99 CCDEPMODE = depmode=none @@ -177,7 +177,7 @@ LIBTOOL_DEPS = ./ltmain.sh LIPO = LN_S = ln -s LTLIBOBJS = -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src-rt/router/dnscrypt/src/libevent/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/src/libevent/missing --run makeinfo MANIFEST_TOOL = : MKDIR_P = /bin/mkdir -p NM = mipsel-uclibc-nm @@ -206,10 +206,10 @@ SHELL = /bin/sh STRIP = mipsel-uclibc-strip VERSION = 2.0.19-stable-dev ZLIB_LIBS = -abs_builddir = /home/vicente/tomato/release/src-rt/router/dnscrypt/src/libevent/sample -abs_srcdir = /home/vicente/tomato/release/src-rt/router/dnscrypt/src/libevent/sample -abs_top_builddir = /home/vicente/tomato/release/src-rt/router/dnscrypt/src/libevent -abs_top_srcdir = /home/vicente/tomato/release/src-rt/router/dnscrypt/src/libevent +abs_builddir = /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/src/libevent/sample +abs_srcdir = /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/src/libevent/sample +abs_top_builddir = /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/src/libevent +abs_top_srcdir = /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/src/libevent ac_ct_AR = ac_ct_CC = ac_ct_DUMPBIN = @@ -239,7 +239,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = ${SHELL} /home/vicente/tomato/release/src-rt/router/dnscrypt/src/libevent/install-sh +install_sh = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/src/libevent/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = ${datarootdir}/locale diff --git a/release/src/router/dnscrypt/src/libevent/test/Makefile b/release/src/router/dnscrypt/src/libevent/test/Makefile index 5bf9389a1c..d1068eb141 100644 --- a/release/src/router/dnscrypt/src/libevent/test/Makefile +++ b/release/src/router/dnscrypt/src/libevent/test/Makefile @@ -189,12 +189,12 @@ am__tty_colors_dummy = \ am__color_tests=no am__tty_colors = $(am__tty_colors_dummy) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src-rt/router/dnscrypt/src/libevent/missing --run aclocal-1.12 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/src/libevent/missing --run aclocal-1.12 AMTAR = $${TAR-tar} AR = mipsel-uclibc-ar -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src-rt/router/dnscrypt/src/libevent/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src-rt/router/dnscrypt/src/libevent/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src-rt/router/dnscrypt/src/libevent/missing --run automake-1.12 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/src/libevent/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/src/libevent/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/src/libevent/missing --run automake-1.12 AWK = gawk CC = mipsel-uclibc-gcc -std=gnu99 CCDEPMODE = depmode=none @@ -231,7 +231,7 @@ LIBTOOL_DEPS = ./ltmain.sh LIPO = LN_S = ln -s LTLIBOBJS = -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src-rt/router/dnscrypt/src/libevent/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/src/libevent/missing --run makeinfo MANIFEST_TOOL = : MKDIR_P = /bin/mkdir -p NM = mipsel-uclibc-nm @@ -260,10 +260,10 @@ SHELL = /bin/sh STRIP = mipsel-uclibc-strip VERSION = 2.0.19-stable-dev ZLIB_LIBS = -abs_builddir = /home/vicente/tomato/release/src-rt/router/dnscrypt/src/libevent/test -abs_srcdir = /home/vicente/tomato/release/src-rt/router/dnscrypt/src/libevent/test -abs_top_builddir = /home/vicente/tomato/release/src-rt/router/dnscrypt/src/libevent -abs_top_srcdir = /home/vicente/tomato/release/src-rt/router/dnscrypt/src/libevent +abs_builddir = /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/src/libevent/test +abs_srcdir = /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/src/libevent/test +abs_top_builddir = /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/src/libevent +abs_top_srcdir = /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/src/libevent ac_ct_AR = ac_ct_CC = ac_ct_DUMPBIN = @@ -293,7 +293,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = ${SHELL} /home/vicente/tomato/release/src-rt/router/dnscrypt/src/libevent/install-sh +install_sh = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/src/libevent/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = ${datarootdir}/locale diff --git a/release/src/router/dnscrypt/src/proxy/Makefile b/release/src/router/dnscrypt/src/proxy/Makefile index 805cc03d43..e0405fb882 100644 --- a/release/src/router/dnscrypt/src/proxy/Makefile +++ b/release/src/router/dnscrypt/src/proxy/Makefile @@ -99,12 +99,12 @@ am__can_run_installinfo = \ ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src-rt/router/dnscrypt/missing --run aclocal-1.12 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/missing --run aclocal-1.12 AMTAR = $${TAR-tar} AR = mipsel-uclibc-ar -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src-rt/router/dnscrypt/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src-rt/router/dnscrypt/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src-rt/router/dnscrypt/missing --run automake-1.12 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/missing --run automake-1.12 AWK = gawk CC = mipsel-uclibc-gcc -std=gnu99 CCDEPMODE = depmode=gcc3 @@ -142,7 +142,7 @@ LIPO = LN_S = ln -s LTLIBOBJS = MAINT = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src-rt/router/dnscrypt/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/missing --run makeinfo MANIFEST_TOOL = : MKDIR_P = /bin/mkdir -p NACL_PATH = libnacl/build/localhost @@ -170,10 +170,10 @@ SHELL = /bin/sh SIXJACK = # STRIP = mipsel-uclibc-strip VERSION = 1.0 -abs_builddir = /home/vicente/tomato/release/src-rt/router/dnscrypt/src/proxy -abs_srcdir = /home/vicente/tomato/release/src-rt/router/dnscrypt/src/proxy -abs_top_builddir = /home/vicente/tomato/release/src-rt/router/dnscrypt -abs_top_srcdir = /home/vicente/tomato/release/src-rt/router/dnscrypt +abs_builddir = /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/src/proxy +abs_srcdir = /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/src/proxy +abs_top_builddir = /home/vicente/repos/tomato/release/src-rt/router/dnscrypt +abs_top_srcdir = /home/vicente/repos/tomato/release/src-rt/router/dnscrypt ac_ct_AR = ac_ct_CC = ac_ct_DUMPBIN = @@ -202,7 +202,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = ${SHELL} /home/vicente/tomato/release/src-rt/router/dnscrypt/install-sh +install_sh = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/dnscrypt/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = ${datarootdir}/locale diff --git a/release/src/router/dropbear/_MTN/format b/release/src/router/dropbear/_MTN/format deleted file mode 100644 index 0cfbf08886..0000000000 --- a/release/src/router/dropbear/_MTN/format +++ /dev/null @@ -1 +0,0 @@ -2 diff --git a/release/src/router/dropbear/_MTN/inodeprints b/release/src/router/dropbear/_MTN/inodeprints deleted file mode 100644 index 4f02feee97..0000000000 --- a/release/src/router/dropbear/_MTN/inodeprints +++ /dev/null @@ -1 +0,0 @@ -format_version "1" diff --git a/release/src/router/dropbear/_MTN/options b/release/src/router/dropbear/_MTN/options deleted file mode 100644 index f31aee0a5d..0000000000 --- a/release/src/router/dropbear/_MTN/options +++ /dev/null @@ -1,3 +0,0 @@ -database "/Users/matt/.monotone/dropbear.db" - branch "au.asn.ucc.matt.dropbear" - keydir "/Users/matt/.monotone/keys" diff --git a/release/src/router/dropbear/_MTN/revision b/release/src/router/dropbear/_MTN/revision deleted file mode 100644 index 7b6fb96a99..0000000000 --- a/release/src/router/dropbear/_MTN/revision +++ /dev/null @@ -1,5 +0,0 @@ -format_version "1" - -new_manifest [0000000000000000000000000000000000000001] - -old_revision [c7f6c45c46a2f8e2394756c68ae825d6e4dc7489] diff --git a/release/src/router/ffmpeg/config.err b/release/src/router/ffmpeg/config.err new file mode 100644 index 0000000000..f86f5968c9 --- /dev/null +++ b/release/src/router/ffmpeg/config.err @@ -0,0 +1,3310 @@ +# ./configure --enable-cross-compile --arch=mips --target_os=linux --cross-prefix=mipsel-uclibc- --enable-shared --enable-gpl --disable-doc --enable-pthreads --enable-small --disable-encoders --disable-filters --disable-muxers --disable-devices --disable-ffmpeg --disable-ffplay --disable-ffserver --disable-ffprobe --disable-avdevice --disable-swscale --disable-hwaccels --disable-network --disable-bsfs --disable-mpegaudio-hp --enable-demuxers --disable-demuxer=amr --disable-demuxer=apc --disable-demuxer=ape --disable-demuxer=ass --disable-demuxer=bethsoftvid --disable-demuxer=bfi --disable-demuxer=c93 --disable-demuxer=daud --disable-demuxer=dnxhd --disable-demuxer=dsicin --disable-demuxer=dxa --disable-demuxer=ffm --disable-demuxer=gsm --disable-demuxer=gxf --disable-demuxer=idcin --disable-demuxer=iff --disable-demuxer=image2 --disable-demuxer=image2pipe --disable-demuxer=ingenient --disable-demuxer=ipmovie --disable-demuxer=lmlm4 --disable-demuxer=mm --disable-demuxer=mmf --disable-demuxer=msnwc_tcp --disable-demuxer=mtv --disable-demuxer=mxf --disable-demuxer=nsv --disable-demuxer=nut --disable-demuxer=oma --disable-demuxer=pva --disable-demuxer=rawvideo --disable-demuxer=rl2 --disable-demuxer=roq --disable-demuxer=rpl --disable-demuxer=segafilm --disable-demuxer=shorten --disable-demuxer=siff --disable-demuxer=smacker --disable-demuxer=sol --disable-demuxer=str --disable-demuxer=thp --disable-demuxer=tiertexseq --disable-demuxer=tta --disable-demuxer=txd --disable-demuxer=vmd --disable-demuxer=voc --disable-demuxer=wc3 --disable-demuxer=wsaud --disable-demuxer=wsvqa --disable-demuxer=xa --disable-demuxer=yuv4mpegpipe --disable-decoders --enable-decoder=aac --enable-decoder=ac3 --enable-decoder=atrac3 --enable-decoder=flac --enable-decoder=h264 --enable-decoder=jpegls --enable-decoder=mp3 --enable-decoder=mpeg1video --enable-decoder=mpeg2video --enable-decoder=mpeg4 --enable-decoder=mpeg4aac --enable-decoder=mpegvideo --enable-decoder=png --enable-decoder=wmav1 --enable-decoder=wmav2 --disable-parsers --enable-parser=aac --enable-parser=ac3 --enable-parser=h264 --enable-parser=mpeg4video --enable-parser=mpegaudio --enable-parser=mpegvideo --disable-protocols --enable-protocol=file --extra-cflags='-Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib' --extra-ldflags='-ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC' --extra-libs='-L/home/vicente/repos/tomato/release/src-rt/router/zlib -lz' --enable-zlib --disable-debug --prefix= +AR=mipsel-uclibc-ar +ARCH_EXT_LIST=' + altivec + amd3dnow + amd3dnowext + armv5te + armv6 + armv6t2 + armvfp + iwmmxt + mmi + mmx + mmx2 + neon + ppc4xx + sse + ssse3 + vis +' +ARCH_LIST=' + alpha + arm + avr32 + avr32_ap + avr32_uc + bfin + ia64 + m68k + mips + mips64 + parisc + ppc + ppc64 + s390 + sh4 + sparc + sparc64 + tomi + x86 + x86_32 + x86_64 +' +AS=mipsel-uclibc-as +B=NC +BASH=/bin/sh +BASHOPTS=cmdhist:extquote:force_fignore:hostcomplete:interactive_comments:progcomp:promptvars:sourcepath +BASH_ALIASES=() +BASH_ARGC=([0]="106") +BASH_ARGV=([0]="--prefix=" [1]="--disable-debug" [2]="--enable-zlib" [3]="--extra-libs=-L/home/vicente/repos/tomato/release/src-rt/router/zlib -lz" [4]="--extra-ldflags=-ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC" [5]="--extra-cflags=-Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib" [6]="--enable-protocol=file" [7]="--disable-protocols" [8]="--enable-parser=mpegvideo" [9]="--enable-parser=mpegaudio" [10]="--enable-parser=mpeg4video" [11]="--enable-parser=h264" [12]="--enable-parser=ac3" [13]="--enable-parser=aac" [14]="--disable-parsers" [15]="--enable-decoder=wmav2" [16]="--enable-decoder=wmav1" [17]="--enable-decoder=png" [18]="--enable-decoder=mpegvideo" [19]="--enable-decoder=mpeg4aac" [20]="--enable-decoder=mpeg4" [21]="--enable-decoder=mpeg2video" [22]="--enable-decoder=mpeg1video" [23]="--enable-decoder=mp3" [24]="--enable-decoder=jpegls" [25]="--enable-decoder=h264" [26]="--enable-decoder=flac" [27]="--enable-decoder=atrac3" [28]="--enable-decoder=ac3" [29]="--enable-decoder=aac" [30]="--disable-decoders" [31]="--disable-demuxer=yuv4mpegpipe" [32]="--disable-demuxer=xa" [33]="--disable-demuxer=wsvqa" [34]="--disable-demuxer=wsaud" [35]="--disable-demuxer=wc3" [36]="--disable-demuxer=voc" [37]="--disable-demuxer=vmd" [38]="--disable-demuxer=txd" [39]="--disable-demuxer=tta" [40]="--disable-demuxer=tiertexseq" [41]="--disable-demuxer=thp" [42]="--disable-demuxer=str" [43]="--disable-demuxer=sol" [44]="--disable-demuxer=smacker" [45]="--disable-demuxer=siff" [46]="--disable-demuxer=shorten" [47]="--disable-demuxer=segafilm" [48]="--disable-demuxer=rpl" [49]="--disable-demuxer=roq" [50]="--disable-demuxer=rl2" [51]="--disable-demuxer=rawvideo" [52]="--disable-demuxer=pva" [53]="--disable-demuxer=oma" [54]="--disable-demuxer=nut" [55]="--disable-demuxer=nsv" [56]="--disable-demuxer=mxf" [57]="--disable-demuxer=mtv" [58]="--disable-demuxer=msnwc_tcp" [59]="--disable-demuxer=mmf" [60]="--disable-demuxer=mm" [61]="--disable-demuxer=lmlm4" [62]="--disable-demuxer=ipmovie" [63]="--disable-demuxer=ingenient" [64]="--disable-demuxer=image2pipe" [65]="--disable-demuxer=image2" [66]="--disable-demuxer=iff" [67]="--disable-demuxer=idcin" [68]="--disable-demuxer=gxf" [69]="--disable-demuxer=gsm" [70]="--disable-demuxer=ffm" [71]="--disable-demuxer=dxa" [72]="--disable-demuxer=dsicin" [73]="--disable-demuxer=dnxhd" [74]="--disable-demuxer=daud" [75]="--disable-demuxer=c93" [76]="--disable-demuxer=bfi" [77]="--disable-demuxer=bethsoftvid" [78]="--disable-demuxer=ass" [79]="--disable-demuxer=ape" [80]="--disable-demuxer=apc" [81]="--disable-demuxer=amr" [82]="--enable-demuxers" [83]="--disable-mpegaudio-hp" [84]="--disable-bsfs" [85]="--disable-network" [86]="--disable-hwaccels" [87]="--disable-swscale" [88]="--disable-avdevice" [89]="--disable-ffprobe" [90]="--disable-ffserver" [91]="--disable-ffplay" [92]="--disable-ffmpeg" [93]="--disable-devices" [94]="--disable-muxers" [95]="--disable-filters" [96]="--disable-encoders" [97]="--enable-small" [98]="--enable-pthreads" [99]="--disable-doc" [100]="--enable-gpl" [101]="--enable-shared" [102]="--cross-prefix=mipsel-uclibc-" [103]="--target_os=linux" [104]="--arch=mips" [105]="--enable-cross-compile") +BASH_CMDS=() +BASH_LINENO=([0]="0") +BASH_SOURCE=([0]="./configure") +BASH_VERSINFO=([0]="4" [1]="2" [2]="25" [3]="1" [4]="release" [5]="x86_64-pc-linux-gnu") +BASH_VERSION='4.2.25(1)-release' +BBEXTRAS=y +BSF_LIST='aac_adtstoasc_bsf +dump_extradata_bsf +h264_mp4toannexb_bsf +imx_dump_header_bsf +mjpega_dump_header_bsf +mp3_header_compress_bsf +mp3_header_decompress_bsf +mov2textsub_bsf +noise_bsf +remove_extradata_bsf +text2movsub_bsf' +BUILD=x86_64-linux-gnu +BUILD_DESC=NGINX +CC=mipsel-uclibc-gcc +CC_O='-o $@' +CMDLINE_APPEND=' + extra_cflags +' +CMDLINE_SELECT=' + + altivec + amd3dnow + amd3dnowext + armv5te + armv6 + armv6t2 + armvfp + iwmmxt + mmi + mmx + mmx2 + neon + ppc4xx + sse + ssse3 + vis + + + + bsfs + decoders + demuxers + encoders + filters + hwaccels + indevs + muxers + outdevs + parsers + protocols + + aandct + avcodec + avdevice + avfilter + avfilter_lavf + avformat + avisynth + beos_netserver + bzlib + dct + doc + dwt + dxva2 + fastdiv + ffmpeg + ffplay + ffprobe + ffserver + fft + golomb + gpl + gprof + gray + h264dsp + hardcoded_tables + libdc1394 + libdirac + libfaac + libfaad + libfaadbin + libgsm + libmp3lame + libnut + libopencore_amrnb + libopencore_amrwb + libopenjpeg + librtmp + libschroedinger + libspeex + libtheora + libvorbis + libvpx + libx264 + libxvid + lpc + lsp + mdct + memalign_hack + mlib + mpegaudio_hp + network + nonfree + pic + postproc + powerpc_perf + rdft + runtime_cpudetect + shared + small + sram + static + swscale + swscale_alpha + vaapi + vdpau + version3 + x11grab + zlib + + + beosthreads + os2threads + pthreads + w32threads + + asm + cross_compile + debug + extra_warnings + logging + optimizations + stripping + yasm +' +CMDLINE_SET=' + + bindir + datadir + incdir + libdir + mandir + prefix + shlibdir + + ar + arch + as + build_suffix + cc + cpu + cross_prefix + dep_cc + extra_version + host_cc + host_cflags + host_ldflags + host_libs + host_os + ld + logfile + malloc_prefix + nm + samples + source_path + strip + sysinclude + sysroot + target_exec + target_os + target_path +' +COLORTERM=gnome-terminal +COMPIZ_CONFIG_PROFILE=ubuntu +COMPONENT_LIST=' + bsfs + decoders + demuxers + encoders + filters + hwaccels + indevs + muxers + outdevs + parsers + protocols +' +CONFIGURE='./configure --host=mipsel-linux --build=x86_64-linux-gnu' +CONFIG_BCMWL5=y +CONFIG_EXTRA=' + avutil + gplv3 + lgplv3 +' +CONFIG_LINUX26=y +CONFIG_LIST=' + + bsfs + decoders + demuxers + encoders + filters + hwaccels + indevs + muxers + outdevs + parsers + protocols + + aandct + avcodec + avdevice + avfilter + avfilter_lavf + avformat + avisynth + beos_netserver + bzlib + dct + doc + dwt + dxva2 + fastdiv + ffmpeg + ffplay + ffprobe + ffserver + fft + golomb + gpl + gprof + gray + h264dsp + hardcoded_tables + libdc1394 + libdirac + libfaac + libfaad + libfaadbin + libgsm + libmp3lame + libnut + libopencore_amrnb + libopencore_amrwb + libopenjpeg + librtmp + libschroedinger + libspeex + libtheora + libvorbis + libvpx + libx264 + libxvid + lpc + lsp + mdct + memalign_hack + mlib + mpegaudio_hp + network + nonfree + pic + postproc + powerpc_perf + rdft + runtime_cpudetect + shared + small + sram + static + swscale + swscale_alpha + vaapi + vdpau + version3 + x11grab + zlib +' +CROSS_COMPILE=mipsel-uclibc- +CROSS_COMPILER=mipsel-uclibc- +DBUS_SESSION_BUS_ADDRESS=unix:abstract=/tmp/dbus-gqWzFkDBym,guid=bd1ddb9cad8e5bda9b7ece2c00000022 +DECODER_LIST='aasc_decoder +amv_decoder +anm_decoder +asv1_decoder +asv2_decoder +aura_decoder +aura2_decoder +avs_decoder +bethsoftvid_decoder +bfi_decoder +bink_decoder +bmp_decoder +c93_decoder +cavs_decoder +cdgraphics_decoder +cinepak_decoder +cljr_decoder +cscd_decoder +cyuv_decoder +dnxhd_decoder +dpx_decoder +dsicinvideo_decoder +dvvideo_decoder +dxa_decoder +eacmv_decoder +eamad_decoder +eatgq_decoder +eatgv_decoder +eatqi_decoder +eightbps_decoder +eightsvx_exp_decoder +eightsvx_fib_decoder +escape124_decoder +ffv1_decoder +ffvhuff_decoder +flashsv_decoder +flic_decoder +flv_decoder +fourxm_decoder +fraps_decoder +frwu_decoder +gif_decoder +h261_decoder +h263_decoder +h263i_decoder +h264_decoder +h264_vdpau_decoder +huffyuv_decoder +idcin_decoder +iff_byterun1_decoder +iff_ilbm_decoder +indeo2_decoder +indeo3_decoder +indeo5_decoder +interplay_video_decoder +jpegls_decoder +kgv1_decoder +kmvc_decoder +loco_decoder +mdec_decoder +mimic_decoder +mjpeg_decoder +mjpegb_decoder +mmvideo_decoder +motionpixels_decoder +mpeg_xvmc_decoder +mpeg1video_decoder +mpeg2video_decoder +mpeg4_decoder +mpeg4_vdpau_decoder +mpegvideo_decoder +mpeg_vdpau_decoder +mpeg1_vdpau_decoder +msmpeg4v1_decoder +msmpeg4v2_decoder +msmpeg4v3_decoder +msrle_decoder +msvideo1_decoder +mszh_decoder +nuv_decoder +pam_decoder +pbm_decoder +pcx_decoder +pgm_decoder +pgmyuv_decoder +png_decoder +ppm_decoder +ptx_decoder +qdraw_decoder +qpeg_decoder +qtrle_decoder +r210_decoder +rawvideo_decoder +rl2_decoder +roq_decoder +rpza_decoder +rv10_decoder +rv20_decoder +rv30_decoder +rv40_decoder +sgi_decoder +smacker_decoder +smc_decoder +snow_decoder +sp5x_decoder +sunrast_decoder +svq1_decoder +svq3_decoder +targa_decoder +theora_decoder +thp_decoder +tiertexseqvideo_decoder +tiff_decoder +tmv_decoder +truemotion1_decoder +truemotion2_decoder +tscc_decoder +txd_decoder +ulti_decoder +v210_decoder +v210x_decoder +vb_decoder +vc1_decoder +vc1_vdpau_decoder +vcr1_decoder +vmdvideo_decoder +vmnc_decoder +vp3_decoder +vp5_decoder +vp6_decoder +vp6a_decoder +vp6f_decoder +vqa_decoder +wmv1_decoder +wmv2_decoder +wmv3_decoder +wmv3_vdpau_decoder +wnv1_decoder +xan_wc3_decoder +xl_decoder +yop_decoder +zlib_decoder +zmbv_decoder +aac_decoder +ac3_decoder +alac_decoder +als_decoder +amrnb_decoder +ape_decoder +atrac1_decoder +atrac3_decoder +binkaudio_dct_decoder +binkaudio_rdft_decoder +cook_decoder +dca_decoder +dsicinaudio_decoder +eac3_decoder +flac_decoder +imc_decoder +mace3_decoder +mace6_decoder +mlp_decoder +mp1_decoder +mp2_decoder +mp3_decoder +mp3adu_decoder +mp3on4_decoder +mpc7_decoder +mpc8_decoder +nellymoser_decoder +qcelp_decoder +qdm2_decoder +ra_144_decoder +ra_288_decoder +shorten_decoder +sipr_decoder +smackaud_decoder +sonic_decoder +truehd_decoder +truespeech_decoder +tta_decoder +twinvq_decoder +vmdaudio_decoder +vorbis_decoder +wavpack_decoder +wmapro_decoder +wmav1_decoder +wmav2_decoder +wmavoice_decoder +ws_snd1_decoder +pcm_alaw_decoder +pcm_bluray_decoder +pcm_dvd_decoder +pcm_f32be_decoder +pcm_f32le_decoder +pcm_f64be_decoder +pcm_f64le_decoder +pcm_mulaw_decoder +pcm_s8_decoder +pcm_s16be_decoder +pcm_s16le_decoder +pcm_s16le_planar_decoder +pcm_s24be_decoder +pcm_s24daud_decoder +pcm_s24le_decoder +pcm_s32be_decoder +pcm_s32le_decoder +pcm_u8_decoder +pcm_u16be_decoder +pcm_u16le_decoder +pcm_u24be_decoder +pcm_u24le_decoder +pcm_u32be_decoder +pcm_u32le_decoder +pcm_zork_decoder +interplay_dpcm_decoder +roq_dpcm_decoder +sol_dpcm_decoder +xan_dpcm_decoder +adpcm_4xm_decoder +adpcm_adx_decoder +adpcm_ct_decoder +adpcm_ea_decoder +adpcm_ea_maxis_xa_decoder +adpcm_ea_r1_decoder +adpcm_ea_r2_decoder +adpcm_ea_r3_decoder +adpcm_ea_xas_decoder +adpcm_g726_decoder +adpcm_ima_amv_decoder +adpcm_ima_dk3_decoder +adpcm_ima_dk4_decoder +adpcm_ima_ea_eacs_decoder +adpcm_ima_ea_sead_decoder +adpcm_ima_iss_decoder +adpcm_ima_qt_decoder +adpcm_ima_smjpeg_decoder +adpcm_ima_wav_decoder +adpcm_ima_ws_decoder +adpcm_ms_decoder +adpcm_sbpro_2_decoder +adpcm_sbpro_3_decoder +adpcm_sbpro_4_decoder +adpcm_swf_decoder +adpcm_thp_decoder +adpcm_xa_decoder +adpcm_yamaha_decoder +dvbsub_decoder +dvdsub_decoder +pgssub_decoder +xsub_decoder +libdirac_decoder +libfaad_decoder +libgsm_decoder +libgsm_ms_decoder +libopencore_amrnb_decoder +libopencore_amrwb_decoder +libopenjpeg_decoder +libschroedinger_decoder +libspeex_decoder +libvpx_decoder' +DEFAULTS_PATH=/usr/share/gconf/ubuntu.default.path +DEMUXER_LIST='aac_demuxer +ac3_demuxer +aea_demuxer +aiff_demuxer +amr_demuxer +anm_demuxer +apc_demuxer +ape_demuxer +asf_demuxer +ass_demuxer +au_demuxer +avi_demuxer +avisynth_demuxer +avs_demuxer +bethsoftvid_demuxer +bfi_demuxer +bink_demuxer +c93_demuxer +caf_demuxer +cavsvideo_demuxer +cdg_demuxer +daud_demuxer +dirac_demuxer +dnxhd_demuxer +dsicin_demuxer +dts_demuxer +dv_demuxer +dxa_demuxer +ea_demuxer +ea_cdata_demuxer +eac3_demuxer +ffm_demuxer +filmstrip_demuxer +flac_demuxer +flic_demuxer +flv_demuxer +fourxm_demuxer +gsm_demuxer +gxf_demuxer +h261_demuxer +h263_demuxer +h264_demuxer +idcin_demuxer +iff_demuxer +image2_demuxer +image2pipe_demuxer +ingenient_demuxer +ipmovie_demuxer +iss_demuxer +iv8_demuxer +lmlm4_demuxer +m4v_demuxer +matroska_demuxer +mjpeg_demuxer +mlp_demuxer +mm_demuxer +mmf_demuxer +mov_demuxer +mp3_demuxer +mpc_demuxer +mpc8_demuxer +mpegps_demuxer +mpegts_demuxer +mpegtsraw_demuxer +mpegvideo_demuxer +msnwc_tcp_demuxer +mtv_demuxer +mvi_demuxer +mxf_demuxer +nc_demuxer +nsv_demuxer +nut_demuxer +nuv_demuxer +ogg_demuxer +oma_demuxer +pcm_alaw_demuxer +pcm_mulaw_demuxer +pcm_f64be_demuxer +pcm_f64le_demuxer +pcm_f32be_demuxer +pcm_f32le_demuxer +pcm_s32be_demuxer +pcm_s32le_demuxer +pcm_s24be_demuxer +pcm_s24le_demuxer +pcm_s16be_demuxer +pcm_s16le_demuxer +pcm_s8_demuxer +pcm_u32be_demuxer +pcm_u32le_demuxer +pcm_u24be_demuxer +pcm_u24le_demuxer +pcm_u16be_demuxer +pcm_u16le_demuxer +pcm_u8_demuxer +pva_demuxer +qcp_demuxer +r3d_demuxer +rawvideo_demuxer +rl2_demuxer +rm_demuxer +roq_demuxer +rpl_demuxer +rtsp_demuxer +sdp_demuxer +segafilm_demuxer +shorten_demuxer +siff_demuxer +smacker_demuxer +sol_demuxer +sox_demuxer +str_demuxer +swf_demuxer +thp_demuxer +tiertexseq_demuxer +tmv_demuxer +truehd_demuxer +tta_demuxer +txd_demuxer +vc1_demuxer +vc1t_demuxer +vmd_demuxer +voc_demuxer +vqf_demuxer +w64_demuxer +wav_demuxer +wc3_demuxer +wsaud_demuxer +wsvqa_demuxer +wv_demuxer +xa_demuxer +yop_demuxer +yuv4mpegpipe_demuxer +libnut_demuxer' +DEPEND_CMD='$(DEPCC) $(DEPFLAGS) $< | sed -e "/^\#.*/d" -e "s,^[[:space:]]*$(*F)\\.o,$(@D)/$(*F).o," > $(@:.o=.d)' +DEPFLAGS='$(CPPFLAGS) $(CFLAGS) -MM' +DESKTOP_SESSION=ubuntu +DIRSTACK=() +DISPLAY=:0 +DNSCRYPT=y +E1=0 +E2=1 +EBTABLES=y +ENCODER_LIST='asv1_encoder +asv2_encoder +bmp_encoder +dnxhd_encoder +dvvideo_encoder +ffv1_encoder +ffvhuff_encoder +flashsv_encoder +flv_encoder +gif_encoder +h261_encoder +h263_encoder +h263p_encoder +huffyuv_encoder +jpegls_encoder +ljpeg_encoder +mjpeg_encoder +mpeg1video_encoder +mpeg2video_encoder +mpeg4_encoder +msmpeg4v1_encoder +msmpeg4v2_encoder +msmpeg4v3_encoder +pam_encoder +pbm_encoder +pcx_encoder +pgm_encoder +pgmyuv_encoder +png_encoder +ppm_encoder +qtrle_encoder +rawvideo_encoder +roq_encoder +rv10_encoder +rv20_encoder +sgi_encoder +snow_encoder +svq1_encoder +targa_encoder +tiff_encoder +v210_encoder +wmv1_encoder +wmv2_encoder +zlib_encoder +zmbv_encoder +aac_encoder +ac3_encoder +alac_encoder +flac_encoder +mp2_encoder +nellymoser_encoder +sonic_encoder +sonic_ls_encoder +wmav1_encoder +wmav2_encoder +pcm_alaw_encoder +pcm_f32be_encoder +pcm_f32le_encoder +pcm_f64be_encoder +pcm_f64le_encoder +pcm_mulaw_encoder +pcm_s8_encoder +pcm_s16be_encoder +pcm_s16le_encoder +pcm_s24be_encoder +pcm_s24daud_encoder +pcm_s24le_encoder +pcm_s32be_encoder +pcm_s32le_encoder +pcm_u8_encoder +pcm_u16be_encoder +pcm_u16le_encoder +pcm_u24be_encoder +pcm_u24le_encoder +pcm_u32be_encoder +pcm_u32le_encoder +pcm_zork_encoder +roq_dpcm_encoder +adpcm_adx_encoder +adpcm_g726_encoder +adpcm_ima_qt_encoder +adpcm_ima_wav_encoder +adpcm_ms_encoder +adpcm_swf_encoder +adpcm_yamaha_encoder +dvbsub_encoder +dvdsub_encoder +xsub_encoder +libdirac_encoder +libfaac_encoder +libgsm_encoder +libgsm_ms_encoder +libmp3lame_encoder +libopencore_amrnb_encoder +libschroedinger_encoder +libtheora_encoder +libvorbis_encoder +libvpx_encoder +libx264_encoder +libxvid_encoder' +EUID=1000 +EXTRACFLAGS='-DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 ' +FFMPEG_CONFIGURATION='--enable-cross-compile --arch=mips --target_os=linux --cross-prefix=mipsel-uclibc- --enable-shared --enable-gpl --disable-doc --enable-pthreads --enable-small --disable-encoders --disable-filters --disable-muxers --disable-devices --disable-ffmpeg --disable-ffplay --disable-ffserver --disable-ffprobe --disable-avdevice --disable-swscale --disable-hwaccels --disable-network --disable-bsfs --disable-mpegaudio-hp --enable-demuxers --disable-demuxer=amr --disable-demuxer=apc --disable-demuxer=ape --disable-demuxer=ass --disable-demuxer=bethsoftvid --disable-demuxer=bfi --disable-demuxer=c93 --disable-demuxer=daud --disable-demuxer=dnxhd --disable-demuxer=dsicin --disable-demuxer=dxa --disable-demuxer=ffm --disable-demuxer=gsm --disable-demuxer=gxf --disable-demuxer=idcin --disable-demuxer=iff --disable-demuxer=image2 --disable-demuxer=image2pipe --disable-demuxer=ingenient --disable-demuxer=ipmovie --disable-demuxer=lmlm4 --disable-demuxer=mm --disable-demuxer=mmf --disable-demuxer=msnwc_tcp --disable-demuxer=mtv --disable-demuxer=mxf --disable-demuxer=nsv --disable-demuxer=nut --disable-demuxer=oma --disable-demuxer=pva --disable-demuxer=rawvideo --disable-demuxer=rl2 --disable-demuxer=roq --disable-demuxer=rpl --disable-demuxer=segafilm --disable-demuxer=shorten --disable-demuxer=siff --disable-demuxer=smacker --disable-demuxer=sol --disable-demuxer=str --disable-demuxer=thp --disable-demuxer=tiertexseq --disable-demuxer=tta --disable-demuxer=txd --disable-demuxer=vmd --disable-demuxer=voc --disable-demuxer=wc3 --disable-demuxer=wsaud --disable-demuxer=wsvqa --disable-demuxer=xa --disable-demuxer=yuv4mpegpipe --disable-decoders --enable-decoder=aac --enable-decoder=ac3 --enable-decoder=atrac3 --enable-decoder=flac --enable-decoder=h264 --enable-decoder=jpegls --enable-decoder=mp3 --enable-decoder=mpeg1video --enable-decoder=mpeg2video --enable-decoder=mpeg4 --enable-decoder=mpeg4aac --enable-decoder=mpegvideo --enable-decoder=png --enable-decoder=wmav1 --enable-decoder=wmav2 --disable-parsers --enable-parser=aac --enable-parser=ac3 --enable-parser=h264 --enable-parser=mpeg4video --enable-parser=mpegaudio --enable-parser=mpegvideo --disable-protocols --enable-protocol=file --extra-cflags='\''-Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib'\'' --extra-ldflags='\''-ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC'\'' --extra-libs='\''-L/home/vicente/repos/tomato/release/src-rt/router/zlib -lz'\'' --enable-zlib --disable-debug --prefix=' +FFSERVERLDFLAGS=-Wl,-E +FILTER_LIST='aspect_filter +crop_filter +format_filter +noformat_filter +null_filter +pixelaspect_filter +scale_filter +slicify_filter +unsharp_filter +vflip_filter +nullsrc_filter +nullsink_filter' +FULLNAME='$(NAME)$(BUILDSUF)' +FULL_OPENSSL=y +GDMSESSION=ubuntu +GNOME_DESKTOP_SESSION_ID=this-is-deprecated +GNOME_KEYRING_CONTROL=/tmp/keyring-Kmq9vu +GNOME_KEYRING_PID=2663 +GPG_AGENT_INFO=/tmp/keyring-Kmq9vu/gpg:0:1 +GROUPS=() +GTK_MODULES=canberra-gtk-module:canberra-gtk-module +HAVE_LIST=' + + altivec + amd3dnow + amd3dnowext + armv5te + armv6 + armv6t2 + armvfp + iwmmxt + mmi + mmx + mmx2 + neon + ppc4xx + sse + ssse3 + vis + + + bigendian + + + beosthreads + os2threads + pthreads + w32threads + + alsa_asoundlib_h + altivec_h + arpa_inet_h + attribute_may_alias + attribute_packed + bswap + closesocket + cmov + conio_h + dcbzl + dev_bktr_ioctl_bt848_h + dev_bktr_ioctl_meteor_h + dev_ic_bt8xx_h + dev_video_meteor_ioctl_meteor_h + dev_video_bktr_ioctl_bt848_h + dlfcn_h + dlopen + dos_paths + ebp_available + ebx_available + exp2 + exp2f + fast_64bit + fast_clz + fast_cmov + fast_unaligned + fork + getaddrinfo + gethrtime + GetProcessMemoryInfo + GetProcessTimes + getrusage + struct_rusage_ru_maxrss + inet_aton + inline_asm + isatty + ldbrx + libdc1394_1 + libdc1394_2 + llrint + llrintf + local_aligned_16 + local_aligned_8 + log2 + log2f + loongson + lrint + lrintf + lzo1x_999_compress + machine_ioctl_bt848_h + machine_ioctl_meteor_h + malloc_h + memalign + mkstemp + pld + posix_memalign + round + roundf + sdl + sdl_video_size + setmode + socklen_t + soundcard_h + poll_h + setrlimit + strerror_r + struct_addrinfo + struct_ipv6_mreq + struct_sockaddr_in6 + struct_sockaddr_sa_len + struct_sockaddr_storage + symver + symver_gnu_asm + symver_asm_label + sys_mman_h + sys_resource_h + sys_select_h + sys_soundcard_h + sys_videoio_h + ten_operands + termios_h + threads + truncf + vfp_args + VirtualAlloc + winsock2_h + xform_asm + yasm +' +HAVE_LIST_PUB=' + bigendian +' +HOME=/home/vicente +HOSTCC=gcc +HOSTNAME=vicente-P5K-E +HOSTTYPE=x86_64 +HWACCEL_LIST='h263_vaapi_hwaccel +h264_dxva2_hwaccel +h264_vaapi_hwaccel +mpeg2_vaapi_hwaccel +mpeg4_vaapi_hwaccel +vc1_dxva2_hwaccel +vc1_vaapi_hwaccel +wmv3_dxva2_hwaccel +wmv3_vaapi_hwaccel' +IFS=' +' +INDEV_LIST='alsa_indev +audio_beos_indev +bktr_indev +dv1394_indev +jack_indev +oss_indev +v4l2_indev +v4l_indev +vfwcap_indev +x11_grab_device_indev +libdc1394_indev' +INSTALLDIR=/home/vicente/repos/tomato/release/src-rt/router/mipsel-uclibc/install +IPV6SUPP=y +KERNELCC=mipsel-uclibc-gcc +LANG=en_US.UTF-8 +LC_ALL=C +LD=mipsel-uclibc-ld +LDFLAGS=' -ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC' +LESSCLOSE='/usr/bin/lesspipe %s %s' +LESSOPEN='| /usr/bin/lesspipe %s' +LIBDIR=/home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/lib +LIBNAME='$(LIBPREF)$(FULLNAME)$(LIBSUF)' +LIBPREF=lib +LIBSUF=.a +LIB_INSTALL_EXTRA_CMD='$$(RANLIB) "$(LIBDIR)/$(LIBNAME)"' +LINUXDIR=/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6 +LOGNAME=vicente +LS_COLORS='rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.lz=01;31:*.xz=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.axv=01;35:*.anx=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.axa=00;36:*.oga=00;36:*.spx=00;36:*.xspf=00;36:' +MACHTYPE=x86_64-pc-linux-gnu +MAKEFLAGS='w -- TCPDUMP=n NOCAT=y SNMP=y USB=USB BUILD_DESC=NGINX B=NC DNSCRYPT=y IPV6SUPP=y MEDIASRV=y NO_LIBOPT=y EBTABLES=y USBEXTRAS=y BBEXTRAS=y NTFS=y PPTPD=y USERPPTP=y OPENVPN=y NGINX=y VPN=y VLAN=y V2=-RAF-V1.1t V1=9013 MIPS32=r2' +MAKELEVEL=5 +MAKEOVERRIDES='${-*-command-variables-*-}' +MANDATORY_PATH=/usr/share/gconf/ubuntu.mandatory.path +MEDIASRV=y +MFLAGS=-w +MIPS32=r2 +MUXER_LIST='ac3_muxer +adts_muxer +aiff_muxer +amr_muxer +asf_muxer +ass_muxer +asf_stream_muxer +au_muxer +avi_muxer +avm2_muxer +crc_muxer +daud_muxer +dirac_muxer +dnxhd_muxer +dts_muxer +dv_muxer +eac3_muxer +ffm_muxer +filmstrip_muxer +flac_muxer +flv_muxer +framecrc_muxer +gif_muxer +gxf_muxer +h261_muxer +h263_muxer +h264_muxer +image2_muxer +image2pipe_muxer +ipod_muxer +m4v_muxer +matroska_muxer +matroska_audio_muxer +mjpeg_muxer +mlp_muxer +mmf_muxer +mov_muxer +mp2_muxer +mp3_muxer +mp4_muxer +mpeg1system_muxer +mpeg1vcd_muxer +mpeg1video_muxer +mpeg2dvd_muxer +mpeg2svcd_muxer +mpeg2video_muxer +mpeg2vob_muxer +mpegts_muxer +mpjpeg_muxer +mxf_muxer +mxf_d10_muxer +null_muxer +nut_muxer +ogg_muxer +pcm_alaw_muxer +pcm_mulaw_muxer +pcm_f64be_muxer +pcm_f64le_muxer +pcm_f32be_muxer +pcm_f32le_muxer +pcm_s32be_muxer +pcm_s32le_muxer +pcm_s24be_muxer +pcm_s24le_muxer +pcm_s16be_muxer +pcm_s16le_muxer +pcm_s8_muxer +pcm_u32be_muxer +pcm_u32le_muxer +pcm_u24be_muxer +pcm_u24le_muxer +pcm_u16be_muxer +pcm_u16le_muxer +pcm_u8_muxer +psp_muxer +rawvideo_muxer +rm_muxer +roq_muxer +rtp_muxer +rtsp_muxer +sox_muxer +spdif_muxer +swf_muxer +tg2_muxer +tgp_muxer +truehd_muxer +vc1t_muxer +voc_muxer +wav_muxer +webm_muxer +yuv4mpegpipe_muxer +libnut_muxer' +NGINX=y +NM=mipsel-uclibc-nm +NOCAT=y +NO_LIBOPT=y +NTFS=y +OPENVPN=y +OPTERR=1 +OPTIND=1 +OSTYPE=linux-gnu +OUTDEV_LIST='alsa_outdev +audio_beos_outdev +oss_outdev' +PARSER_LIST='aac_parser +ac3_parser +cavsvideo_parser +dca_parser +dirac_parser +dnxhd_parser +dvbsub_parser +dvdsub_parser +h261_parser +h263_parser +h264_parser +mjpeg_parser +mlp_parser +mpeg4video_parser +mpegaudio_parser +mpegvideo_parser +pnm_parser +vc1_parser +vp3_parser' +PATH=/home/vicente/repos/tomato/release/tools:/home/vicente/repos/tomato/release/tools:/home/vicente/repos/tomato/release/tools:/home/vicente/repos/tomato/release/tools:/opt/brcm/hndtools-mipsel-uclibc/bin:/opt/brcm/hndtools-mipsel-linux/bin:/usr/lib/lightdm/lightdm:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games +PATHS_LIST=' + bindir + datadir + incdir + libdir + mandir + prefix + shlibdir +' +PIPESTATUS=([0]="0") +PLATFORM=mipsel-uclibc +PLATFORMDIR=/home/vicente/repos/tomato/release/src-rt/router/mipsel-uclibc +POSIXLY_CORRECT=y +PPID=24197 +PPTPD=y +PROTOCOL_LIST='file_protocol +gopher_protocol +http_protocol +pipe_protocol +rtmp_protocol +rtmpt_protocol +rtmpe_protocol +rtmpte_protocol +rtmps_protocol +rtp_protocol +tcp_protocol +udp_protocol +concat_protocol' +PS4='+ ' +PWD=/home/vicente/repos/tomato/release/src/router/ffmpeg +RANLIB=mipsel-uclibc-ranlib +SESSION_MANAGER=local/vicente-P5K-E:@/tmp/.ICE-unix/2674,unix/vicente-P5K-E:/tmp/.ICE-unix/2674 +SHELL=/bin/bash +SHELLOPTS=braceexpand:hashall:interactive-comments:posix +SHFLAGS='-shared -Wl,-soname,$$(@F)' +SHLVL=4 +SIZE=mipsel-uclibc-size +SLIBNAME='$(SLIBPREF)$(FULLNAME)$(SLIBSUF)' +SLIBNAME_WITH_MAJOR='$(SLIBNAME).$(LIBMAJOR)' +SLIBNAME_WITH_VERSION='$(SLIBNAME).$(LIBVERSION)' +SLIBPREF=lib +SLIBSUF=.so +SNMP=y +SRCBASE=/home/vicente/repos/tomato/release/src-rt +SSH_AGENT_PID=2745 +SSH_AUTH_SOCK=/tmp/keyring-Kmq9vu/ssh +STRIP='mipsel-uclibc-strip -R .note -R .comment' +TARGETDIR=/home/vicente/repos/tomato/release/src-rt/router/mipsel-uclibc/target +TCONFIG_IPV6=y +TCPDUMP=n +TERM=xterm +THREADS_LIST=' + beosthreads + os2threads + pthreads + w32threads +' +TOMATO_EXPERIMENTAL=0 +TOOLCHAIN=/home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4 +TOP=/home/vicente/repos/tomato/release/src-rt/router +TPROFILE=N +UBUNTU_MENUPROXY=libappmenu.so +UID=1000 +USB=USB +USBEXTRAS=y +USER=vicente +USERPPTP=y +USRLIBDIR=/home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/usr/lib +V1=9013 +V2=-RAF-V1.1t +VLAN=y +VPN=y +WINDOWID=77595057 +XAUTHORITY=/home/vicente/.Xauthority +XDG_CONFIG_DIRS=/etc/xdg/xdg-ubuntu:/etc/xdg +XDG_CURRENT_DESKTOP=Unity +XDG_DATA_DIRS=/usr/share/ubuntu:/usr/share/gnome:/usr/local/share/:/usr/share/ +XDG_SEAT_PATH=/org/freedesktop/DisplayManager/Seat0 +XDG_SESSION_COOKIE=6ce843b11997f3d70f42cf2300000009-1370760529.269537-2128631165 +XDG_SESSION_PATH=/org/freedesktop/DisplayManager/Session0 +_='# ./configure --enable-cross-compile --arch=mips --target_os=linux --cross-prefix=mipsel-uclibc- --enable-shared --enable-gpl --disable-doc --enable-pthreads --enable-small --disable-encoders --disable-filters --disable-muxers --disable-devices --disable-ffmpeg --disable-ffplay --disable-ffserver --disable-ffprobe --disable-avdevice --disable-swscale --disable-hwaccels --disable-network --disable-bsfs --disable-mpegaudio-hp --enable-demuxers --disable-demuxer=amr --disable-demuxer=apc --disable-demuxer=ape --disable-demuxer=ass --disable-demuxer=bethsoftvid --disable-demuxer=bfi --disable-demuxer=c93 --disable-demuxer=daud --disable-demuxer=dnxhd --disable-demuxer=dsicin --disable-demuxer=dxa --disable-demuxer=ffm --disable-demuxer=gsm --disable-demuxer=gxf --disable-demuxer=idcin --disable-demuxer=iff --disable-demuxer=image2 --disable-demuxer=image2pipe --disable-demuxer=ingenient --disable-demuxer=ipmovie --disable-demuxer=lmlm4 --disable-demuxer=mm --disable-demuxer=mmf --disable-demuxer=msnwc_tcp --disable-demuxer=mtv --disable-demuxer=mxf --disable-demuxer=nsv --disable-demuxer=nut --disable-demuxer=oma --disable-demuxer=pva --disable-demuxer=rawvideo --disable-demuxer=rl2 --disable-demuxer=roq --disable-demuxer=rpl --disable-demuxer=segafilm --disable-demuxer=shorten --disable-demuxer=siff --disable-demuxer=smacker --disable-demuxer=sol --disable-demuxer=str --disable-demuxer=thp --disable-demuxer=tiertexseq --disable-demuxer=tta --disable-demuxer=txd --disable-demuxer=vmd --disable-demuxer=voc --disable-demuxer=wc3 --disable-demuxer=wsaud --disable-demuxer=wsvqa --disable-demuxer=xa --disable-demuxer=yuv4mpegpipe --disable-decoders --enable-decoder=aac --enable-decoder=ac3 --enable-decoder=atrac3 --enable-decoder=flac --enable-decoder=h264 --enable-decoder=jpegls --enable-decoder=mp3 --enable-decoder=mpeg1video --enable-decoder=mpeg2video --enable-decoder=mpeg4 --enable-decoder=mpeg4aac --enable-decoder=mpegvideo --enable-decoder=png --enable-decoder=wmav1 --enable-decoder=wmav2 --disable-parsers --enable-parser=aac --enable-parser=ac3 --enable-parser=h264 --enable-parser=mpeg4video --enable-parser=mpegaudio --enable-parser=mpegvideo --disable-protocols --enable-protocol=file --extra-cflags='\''-Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib'\'' --extra-ldflags='\''-ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC'\'' --extra-libs='\''-L/home/vicente/repos/tomato/release/src-rt/router/zlib -lz'\'' --enable-zlib --disable-debug --prefix=' +aac_adtstoasc_bsf_select=aac_parser +aac_decoder=yes +aac_decoder_select='mdct rdft aac_parser' +aac_demuxer=yes +aac_encoder_select=mdct +aac_parser=yes +ac3_decoder=yes +ac3_decoder_select='mdct ac3_parser' +ac3_demuxer=yes +ac3_demuxer_deps=ac3_parser +ac3_parser=yes +ac_cv_func_malloc_0_nonnull=yes +action=disable +aea_demuxer=yes +aiff_demuxer=yes +alac_encoder_select=lpc +alsa_indev=no +alsa_indev_deps='alsa_asoundlib_h snd_pcm_htimestamp' +alsa_indev_extralibs=-lasound +alsa_outdev=no +alsa_outdev_deps=alsa_asoundlib_h +alsa_outdev_extralibs=-lasound +altivec=yes +altivec_deps=ppc +amd3dnow=yes +amd3dnow_deps=mmx +amd3dnowext=yes +amd3dnowext_deps=amd3dnow +amr_demuxer=no +amrnb_decoder_select=lsp +anm_demuxer=yes +apc_demuxer=no +ape_demuxer=no +ar_default=ar +arch=mips +arch_default=x86_64 +armv5te=yes +armv5te_deps=arm +armv6=yes +armv6_deps=arm +armv6t2=yes +armv6t2_deps=arm +armvfp=yes +armvfp_deps=arm +asf_demuxer=yes +asf_stream_muxer_select=asf_muxer +asm=yes +ass_demuxer=no +atrac1_decoder_select=mdct +atrac3_decoder=yes +atrac3_decoder_select=mdct +au_demuxer=yes +audio_beos_indev=no +audio_beos_indev_deps=audio_beos +audio_beos_indev_extralibs='-lmedia -lbe' +audio_beos_outdev=no +audio_beos_outdev_deps=audio_beos +audio_beos_outdev_extralibs='-lmedia -lbe' +avcodec=yes +avdevice=no +avdevice_deps='avcodec avformat' +avfilter_lavf_deps=avformat +avformat=yes +avformat_deps=avcodec +avi_demuxer=yes +avisynth_demuxer=yes +avisynth_demuxer_deps=avisynth +avs_demuxer=yes +avutil=yes +bethsoftvid_demuxer=no +bfi_demuxer=no +bindir_default='${prefix}/bin' +bink_demuxer=yes +binkaudio_dct_decoder_select='mdct rdft dct' +binkaudio_rdft_decoder_select='mdct rdft' +bktr_indev=no +bktr_indev_deps_any='dev_bktr_ioctl_bt848_h machine_ioctl_bt848_h dev_video_bktr_ioctl_bt848_h dev_ic_bt8xx_h' +bsfs_if_any='aac_adtstoasc_bsf +dump_extradata_bsf +h264_mp4toannexb_bsf +imx_dump_header_bsf +mjpega_dump_header_bsf +mp3_header_compress_bsf +mp3_header_decompress_bsf +mov2textsub_bsf +noise_bsf +remove_extradata_bsf +text2movsub_bsf' +c93_demuxer=no +caf_demuxer=yes +cavs_decoder_select=golomb +cavsvideo_demuxer=yes +cc_default=gcc +cc_version='"unknown"' +cdg_demuxer=yes +cook_decoder_select=mdct +cpu=generic +cross_compile=yes +cross_prefix=mipsel-uclibc- +cscd_decoder_suggest=zlib +datadir_default='${prefix}/share/ffmpeg' +daud_demuxer=no +dca_decoder_select=mdct +debug=no +decoders_if_any='aasc_decoder +amv_decoder +anm_decoder +asv1_decoder +asv2_decoder +aura_decoder +aura2_decoder +avs_decoder +bethsoftvid_decoder +bfi_decoder +bink_decoder +bmp_decoder +c93_decoder +cavs_decoder +cdgraphics_decoder +cinepak_decoder +cljr_decoder +cscd_decoder +cyuv_decoder +dnxhd_decoder +dpx_decoder +dsicinvideo_decoder +dvvideo_decoder +dxa_decoder +eacmv_decoder +eamad_decoder +eatgq_decoder +eatgv_decoder +eatqi_decoder +eightbps_decoder +eightsvx_exp_decoder +eightsvx_fib_decoder +escape124_decoder +ffv1_decoder +ffvhuff_decoder +flashsv_decoder +flic_decoder +flv_decoder +fourxm_decoder +fraps_decoder +frwu_decoder +gif_decoder +h261_decoder +h263_decoder +h263i_decoder +h264_decoder +h264_vdpau_decoder +huffyuv_decoder +idcin_decoder +iff_byterun1_decoder +iff_ilbm_decoder +indeo2_decoder +indeo3_decoder +indeo5_decoder +interplay_video_decoder +jpegls_decoder +kgv1_decoder +kmvc_decoder +loco_decoder +mdec_decoder +mimic_decoder +mjpeg_decoder +mjpegb_decoder +mmvideo_decoder +motionpixels_decoder +mpeg_xvmc_decoder +mpeg1video_decoder +mpeg2video_decoder +mpeg4_decoder +mpeg4_vdpau_decoder +mpegvideo_decoder +mpeg_vdpau_decoder +mpeg1_vdpau_decoder +msmpeg4v1_decoder +msmpeg4v2_decoder +msmpeg4v3_decoder +msrle_decoder +msvideo1_decoder +mszh_decoder +nuv_decoder +pam_decoder +pbm_decoder +pcx_decoder +pgm_decoder +pgmyuv_decoder +png_decoder +ppm_decoder +ptx_decoder +qdraw_decoder +qpeg_decoder +qtrle_decoder +r210_decoder +rawvideo_decoder +rl2_decoder +roq_decoder +rpza_decoder +rv10_decoder +rv20_decoder +rv30_decoder +rv40_decoder +sgi_decoder +smacker_decoder +smc_decoder +snow_decoder +sp5x_decoder +sunrast_decoder +svq1_decoder +svq3_decoder +targa_decoder +theora_decoder +thp_decoder +tiertexseqvideo_decoder +tiff_decoder +tmv_decoder +truemotion1_decoder +truemotion2_decoder +tscc_decoder +txd_decoder +ulti_decoder +v210_decoder +v210x_decoder +vb_decoder +vc1_decoder +vc1_vdpau_decoder +vcr1_decoder +vmdvideo_decoder +vmnc_decoder +vp3_decoder +vp5_decoder +vp6_decoder +vp6a_decoder +vp6f_decoder +vqa_decoder +wmv1_decoder +wmv2_decoder +wmv3_decoder +wmv3_vdpau_decoder +wnv1_decoder +xan_wc3_decoder +xl_decoder +yop_decoder +zlib_decoder +zmbv_decoder +aac_decoder +ac3_decoder +alac_decoder +als_decoder +amrnb_decoder +ape_decoder +atrac1_decoder +atrac3_decoder +binkaudio_dct_decoder +binkaudio_rdft_decoder +cook_decoder +dca_decoder +dsicinaudio_decoder +eac3_decoder +flac_decoder +imc_decoder +mace3_decoder +mace6_decoder +mlp_decoder +mp1_decoder +mp2_decoder +mp3_decoder +mp3adu_decoder +mp3on4_decoder +mpc7_decoder +mpc8_decoder +nellymoser_decoder +qcelp_decoder +qdm2_decoder +ra_144_decoder +ra_288_decoder +shorten_decoder +sipr_decoder +smackaud_decoder +sonic_decoder +truehd_decoder +truespeech_decoder +tta_decoder +twinvq_decoder +vmdaudio_decoder +vorbis_decoder +wavpack_decoder +wmapro_decoder +wmav1_decoder +wmav2_decoder +wmavoice_decoder +ws_snd1_decoder +pcm_alaw_decoder +pcm_bluray_decoder +pcm_dvd_decoder +pcm_f32be_decoder +pcm_f32le_decoder +pcm_f64be_decoder +pcm_f64le_decoder +pcm_mulaw_decoder +pcm_s8_decoder +pcm_s16be_decoder +pcm_s16le_decoder +pcm_s16le_planar_decoder +pcm_s24be_decoder +pcm_s24daud_decoder +pcm_s24le_decoder +pcm_s32be_decoder +pcm_s32le_decoder +pcm_u8_decoder +pcm_u16be_decoder +pcm_u16le_decoder +pcm_u24be_decoder +pcm_u24le_decoder +pcm_u32be_decoder +pcm_u32le_decoder +pcm_zork_decoder +interplay_dpcm_decoder +roq_dpcm_decoder +sol_dpcm_decoder +xan_dpcm_decoder +adpcm_4xm_decoder +adpcm_adx_decoder +adpcm_ct_decoder +adpcm_ea_decoder +adpcm_ea_maxis_xa_decoder +adpcm_ea_r1_decoder +adpcm_ea_r2_decoder +adpcm_ea_r3_decoder +adpcm_ea_xas_decoder +adpcm_g726_decoder +adpcm_ima_amv_decoder +adpcm_ima_dk3_decoder +adpcm_ima_dk4_decoder +adpcm_ima_ea_eacs_decoder +adpcm_ima_ea_sead_decoder +adpcm_ima_iss_decoder +adpcm_ima_qt_decoder +adpcm_ima_smjpeg_decoder +adpcm_ima_wav_decoder +adpcm_ima_ws_decoder +adpcm_ms_decoder +adpcm_sbpro_2_decoder +adpcm_sbpro_3_decoder +adpcm_sbpro_4_decoder +adpcm_swf_decoder +adpcm_thp_decoder +adpcm_xa_decoder +adpcm_yamaha_decoder +dvbsub_decoder +dvdsub_decoder +pgssub_decoder +xsub_decoder +libdirac_decoder +libfaad_decoder +libgsm_decoder +libgsm_ms_decoder +libopencore_amrnb_decoder +libopencore_amrwb_decoder +libopenjpeg_decoder +libschroedinger_decoder +libspeex_decoder +libvpx_decoder' +demuxers_if_any='aac_demuxer +ac3_demuxer +aea_demuxer +aiff_demuxer +amr_demuxer +anm_demuxer +apc_demuxer +ape_demuxer +asf_demuxer +ass_demuxer +au_demuxer +avi_demuxer +avisynth_demuxer +avs_demuxer +bethsoftvid_demuxer +bfi_demuxer +bink_demuxer +c93_demuxer +caf_demuxer +cavsvideo_demuxer +cdg_demuxer +daud_demuxer +dirac_demuxer +dnxhd_demuxer +dsicin_demuxer +dts_demuxer +dv_demuxer +dxa_demuxer +ea_demuxer +ea_cdata_demuxer +eac3_demuxer +ffm_demuxer +filmstrip_demuxer +flac_demuxer +flic_demuxer +flv_demuxer +fourxm_demuxer +gsm_demuxer +gxf_demuxer +h261_demuxer +h263_demuxer +h264_demuxer +idcin_demuxer +iff_demuxer +image2_demuxer +image2pipe_demuxer +ingenient_demuxer +ipmovie_demuxer +iss_demuxer +iv8_demuxer +lmlm4_demuxer +m4v_demuxer +matroska_demuxer +mjpeg_demuxer +mlp_demuxer +mm_demuxer +mmf_demuxer +mov_demuxer +mp3_demuxer +mpc_demuxer +mpc8_demuxer +mpegps_demuxer +mpegts_demuxer +mpegtsraw_demuxer +mpegvideo_demuxer +msnwc_tcp_demuxer +mtv_demuxer +mvi_demuxer +mxf_demuxer +nc_demuxer +nsv_demuxer +nut_demuxer +nuv_demuxer +ogg_demuxer +oma_demuxer +pcm_alaw_demuxer +pcm_mulaw_demuxer +pcm_f64be_demuxer +pcm_f64le_demuxer +pcm_f32be_demuxer +pcm_f32le_demuxer +pcm_s32be_demuxer +pcm_s32le_demuxer +pcm_s24be_demuxer +pcm_s24le_demuxer +pcm_s16be_demuxer +pcm_s16le_demuxer +pcm_s8_demuxer +pcm_u32be_demuxer +pcm_u32le_demuxer +pcm_u24be_demuxer +pcm_u24le_demuxer +pcm_u16be_demuxer +pcm_u16le_demuxer +pcm_u8_demuxer +pva_demuxer +qcp_demuxer +r3d_demuxer +rawvideo_demuxer +rl2_demuxer +rm_demuxer +roq_demuxer +rpl_demuxer +rtsp_demuxer +sdp_demuxer +segafilm_demuxer +shorten_demuxer +siff_demuxer +smacker_demuxer +sol_demuxer +sox_demuxer +str_demuxer +swf_demuxer +thp_demuxer +tiertexseq_demuxer +tmv_demuxer +truehd_demuxer +tta_demuxer +txd_demuxer +vc1_demuxer +vc1t_demuxer +vmd_demuxer +voc_demuxer +vqf_demuxer +w64_demuxer +wav_demuxer +wc3_demuxer +wsaud_demuxer +wsvqa_demuxer +wv_demuxer +xa_demuxer +yop_demuxer +yuv4mpegpipe_demuxer +libnut_demuxer' +dirac_demuxer=yes +dirac_demuxer_deps=dirac_parser +dnxhd_demuxer=no +dnxhd_encoder_select=aandct +doc=no +doc_deps=texi2html +dsicin_demuxer=no +dts_demuxer=yes +dv1394_indev=no +dv1394_indev_deps='dv1394 dv_demuxer' +dv_demuxer=yes +dxa_decoder_select=zlib +dxa_demuxer=no +ea_cdata_demuxer=yes +ea_demuxer=yes +eac3_decoder_select=ac3_decoder +eac3_demuxer=yes +eac3_demuxer_select=ac3_parser +eamad_decoder_select=aandct +eatgq_decoder_select=aandct +eatqi_decoder_select=aandct +encoders_if_any='asv1_encoder +asv2_encoder +bmp_encoder +dnxhd_encoder +dvvideo_encoder +ffv1_encoder +ffvhuff_encoder +flashsv_encoder +flv_encoder +gif_encoder +h261_encoder +h263_encoder +h263p_encoder +huffyuv_encoder +jpegls_encoder +ljpeg_encoder +mjpeg_encoder +mpeg1video_encoder +mpeg2video_encoder +mpeg4_encoder +msmpeg4v1_encoder +msmpeg4v2_encoder +msmpeg4v3_encoder +pam_encoder +pbm_encoder +pcx_encoder +pgm_encoder +pgmyuv_encoder +png_encoder +ppm_encoder +qtrle_encoder +rawvideo_encoder +roq_encoder +rv10_encoder +rv20_encoder +sgi_encoder +snow_encoder +svq1_encoder +targa_encoder +tiff_encoder +v210_encoder +wmv1_encoder +wmv2_encoder +zlib_encoder +zmbv_encoder +aac_encoder +ac3_encoder +alac_encoder +flac_encoder +mp2_encoder +nellymoser_encoder +sonic_encoder +sonic_ls_encoder +wmav1_encoder +wmav2_encoder +pcm_alaw_encoder +pcm_f32be_encoder +pcm_f32le_encoder +pcm_f64be_encoder +pcm_f64le_encoder +pcm_mulaw_encoder +pcm_s8_encoder +pcm_s16be_encoder +pcm_s16le_encoder +pcm_s24be_encoder +pcm_s24daud_encoder +pcm_s24le_encoder +pcm_s32be_encoder +pcm_s32le_encoder +pcm_u8_encoder +pcm_u16be_encoder +pcm_u16le_encoder +pcm_u24be_encoder +pcm_u24le_encoder +pcm_u32be_encoder +pcm_u32le_encoder +pcm_zork_encoder +roq_dpcm_encoder +adpcm_adx_encoder +adpcm_g726_encoder +adpcm_ima_qt_encoder +adpcm_ima_wav_encoder +adpcm_ms_encoder +adpcm_swf_encoder +adpcm_yamaha_encoder +dvbsub_encoder +dvdsub_encoder +xsub_encoder +libdirac_encoder +libfaac_encoder +libgsm_encoder +libgsm_ms_encoder +libmp3lame_encoder +libopencore_amrnb_encoder +libschroedinger_encoder +libtheora_encoder +libvorbis_encoder +libvpx_encoder +libx264_encoder +libxvid_encoder' +extra_cflags=' -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib' +extralibs=' -L/home/vicente/repos/tomato/release/src-rt/router/zlib -lz' +fast_64bit_if_any='alpha ia64 mips64 parisc64 ppc64 sparc64 x86_64' +fast_clz_if_any='alpha armv5te avr32 mips ppc x86' +fast_unaligned_if_any='armv6 ppc x86' +fastdiv=yes +ffm_demuxer=no +ffmpeg=no +ffmpeg_deps='avcodec avformat swscale' +ffplay=no +ffplay_deps='avcodec avformat swscale sdl' +ffplay_select=rdft +ffprobe=no +ffprobe_deps='avcodec avformat' +ffserver=no +ffserver_deps='avformat ffm_muxer rtp_protocol rtsp_demuxer' +ffserver_extralibs='$ldl' +ffv1_decoder_select=golomb +file_protocol=yes +filmstrip_demuxer=yes +filters_if_any='aspect_filter +crop_filter +format_filter +noformat_filter +null_filter +pixelaspect_filter +scale_filter +slicify_filter +unsharp_filter +vflip_filter +nullsrc_filter +nullsink_filter' +flac_decoder=yes +flac_decoder_select=golomb +flac_demuxer=yes +flac_encoder_select='golomb lpc' +flashsv_decoder_select=zlib +flashsv_encoder_select=zlib +flic_demuxer=yes +flv_decoder_select=h263_decoder +flv_demuxer=yes +flv_encoder_select=h263_encoder +fourxm_demuxer=yes +gopher_protocol_deps=network +gpl=yes +gsm_demuxer=no +gxf_demuxer=no +h261_demuxer=yes +h261_encoder_select=aandct +h263_decoder_select=h263_parser +h263_demuxer=yes +h263_encoder_select=aandct +h263_vaapi_hwaccel_select='vaapi h263_decoder' +h263i_decoder_select=h263_decoder +h263p_encoder_select=h263_encoder +h264_decoder=yes +h264_decoder_select='golomb h264dsp' +h264_demuxer=yes +h264_dxva2_hwaccel_deps=dxva2api_h +h264_dxva2_hwaccel_select='dxva2 h264_decoder' +h264_parser=yes +h264_parser_select='golomb h264dsp' +h264_vaapi_hwaccel_select=vaapi +h264_vdpau_decoder_select='vdpau h264_decoder' +host_cc_default=gcc +host_cflags='-D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -O3 -g -Wall' +host_libs=-lm +host_os=linux +http_protocol_deps=network +http_protocol_select=tcp_protocol +hwaccels_if_any='h263_vaapi_hwaccel +h264_dxva2_hwaccel +h264_vaapi_hwaccel +mpeg2_vaapi_hwaccel +mpeg4_vaapi_hwaccel +vc1_dxva2_hwaccel +vc1_vaapi_hwaccel +wmv3_dxva2_hwaccel +wmv3_vaapi_hwaccel' +idcin_demuxer=no +iff_demuxer=no +image2_demuxer=no +image2pipe_demuxer=no +imc_decoder_select='fft mdct' +incdir_default='${prefix}/include' +indevs_if_any='alsa_indev +audio_beos_indev +bktr_indev +dv1394_indev +jack_indev +oss_indev +v4l2_indev +v4l_indev +vfwcap_indev +x11_grab_device_indev +libdc1394_indev' +ingenient_demuxer=no +inline_asm_deps='!tms470' +ipmovie_demuxer=no +ipod_muxer_select=mov_muxer +iss_demuxer=yes +iv8_demuxer=yes +iwmmxt=yes +iwmmxt_deps=arm +jack_indev=no +jack_indev_deps=jack_jack_h +jack_indev_extralibs=-ljack +jpegls_decoder=yes +jpegls_decoder_select=golomb +jpegls_encoder_select=golomb +l=--prefix= +libdc1394_indev=no +libdc1394_indev_deps=libdc1394 +libdir_default='${prefix}/lib' +libdirac_decoder_deps='libdirac !libschroedinger' +libdirac_encoder_deps=libdirac +libfaac_encoder_deps=libfaac +libfaad_decoder_deps=libfaad +libfaadbin_extralibs='$ldl' +libgsm_decoder_deps=libgsm +libgsm_encoder_deps=libgsm +libgsm_ms_decoder_deps=libgsm +libgsm_ms_encoder_deps=libgsm +libmp3lame_encoder_deps=libmp3lame +libnut_demuxer=yes +libnut_demuxer_deps=libnut +libnut_muxer_deps=libnut +libopencore_amrnb_decoder_deps=libopencore_amrnb +libopencore_amrnb_encoder_deps=libopencore_amrnb +libopencore_amrwb_decoder_deps=libopencore_amrwb +libopenjpeg_decoder_deps=libopenjpeg +libschroedinger_decoder_deps=libschroedinger +libschroedinger_encoder_deps=libschroedinger +libspeex_decoder_deps=libspeex +libtheora_encoder_deps=libtheora +libvorbis_encoder_deps=libvorbis +libvpx_decoder_deps=libvpx +libvpx_encoder_deps=libvpx +libx264_encoder_deps=libx264 +libxvid_encoder_deps=libxvid +list='file_protocol +gopher_protocol +http_protocol +pipe_protocol +rtmp_protocol +rtmpt_protocol +rtmpe_protocol +rtmpte_protocol +rtmps_protocol +rtp_protocol +tcp_protocol +udp_protocol +concat_protocol' +ljpeg_encoder_select=aandct +lmlm4_demuxer=no +ln_s='ln -sf' +loco_decoder_select=golomb +logfile=config.err +m4v_demuxer=yes +mandir_default='${prefix}/share/man' +matroska_audio_muxer_select=matroska_muxer +matroska_demuxer=yes +matroska_demuxer_suggest='zlib bzlib' +mdct_select=fft +mjpeg_demuxer=yes +mjpeg_encoder_select=aandct +mlp_decoder_select=mlp_parser +mlp_demuxer=yes +mm_demuxer=no +mmf_demuxer=no +mmi=yes +mmi_deps=mips +mmx=yes +mmx2=yes +mmx2_deps=mmx +mmx_deps=x86 +mov_demuxer=yes +mov_demuxer_suggest=zlib +movie_filter_deps=avfilter_lavf +mp3_decoder=yes +mp3_demuxer=yes +mp3_demuxer_deps=mpegaudio_parser +mp4_muxer_select=mov_muxer +mpc8_demuxer=yes +mpc_demuxer=yes +mpeg1_vdpau_decoder_select='vdpau mpeg1video_decoder' +mpeg1video_decoder=yes +mpeg1video_encoder_select=aandct +mpeg2_vaapi_hwaccel_select='vaapi mpeg2video_decoder' +mpeg2video_decoder=yes +mpeg2video_encoder_select=aandct +mpeg4_decoder=yes +mpeg4_decoder_select='h263_decoder mpeg4video_parser' +mpeg4_encoder_select=h263_encoder +mpeg4_vaapi_hwaccel_select='vaapi mpeg4_decoder' +mpeg4_vdpau_decoder_select='vdpau mpeg4_decoder' +mpeg4video_parser=yes +mpeg_vdpau_decoder_select='vdpau mpegvideo_decoder' +mpeg_xvmc_decoder_deps=X11_extensions_XvMClib_h +mpeg_xvmc_decoder_select=mpegvideo_decoder +mpegaudio_hp=no +mpegaudio_parser=yes +mpegps_demuxer=yes +mpegts_demuxer=yes +mpegtsraw_demuxer=yes +mpegtsraw_demuxer_select=mpegts_demuxer +mpegvideo_decoder=yes +mpegvideo_demuxer=yes +mpegvideo_parser=yes +msmpeg4v1_decoder_select=h263_decoder +msmpeg4v1_encoder_select=h263_encoder +msmpeg4v2_decoder_select=h263_decoder +msmpeg4v2_encoder_select=h263_encoder +msmpeg4v3_decoder_select=h263_decoder +msmpeg4v3_encoder_select=h263_encoder +msnwc_tcp_demuxer=no +mtv_demuxer=no +muxers_if_any='ac3_muxer +adts_muxer +aiff_muxer +amr_muxer +asf_muxer +ass_muxer +asf_stream_muxer +au_muxer +avi_muxer +avm2_muxer +crc_muxer +daud_muxer +dirac_muxer +dnxhd_muxer +dts_muxer +dv_muxer +eac3_muxer +ffm_muxer +filmstrip_muxer +flac_muxer +flv_muxer +framecrc_muxer +gif_muxer +gxf_muxer +h261_muxer +h263_muxer +h264_muxer +image2_muxer +image2pipe_muxer +ipod_muxer +m4v_muxer +matroska_muxer +matroska_audio_muxer +mjpeg_muxer +mlp_muxer +mmf_muxer +mov_muxer +mp2_muxer +mp3_muxer +mp4_muxer +mpeg1system_muxer +mpeg1vcd_muxer +mpeg1video_muxer +mpeg2dvd_muxer +mpeg2svcd_muxer +mpeg2video_muxer +mpeg2vob_muxer +mpegts_muxer +mpjpeg_muxer +mxf_muxer +mxf_d10_muxer +null_muxer +nut_muxer +ogg_muxer +pcm_alaw_muxer +pcm_mulaw_muxer +pcm_f64be_muxer +pcm_f64le_muxer +pcm_f32be_muxer +pcm_f32le_muxer +pcm_s32be_muxer +pcm_s32le_muxer +pcm_s24be_muxer +pcm_s24le_muxer +pcm_s16be_muxer +pcm_s16le_muxer +pcm_s8_muxer +pcm_u32be_muxer +pcm_u32le_muxer +pcm_u24be_muxer +pcm_u24le_muxer +pcm_u16be_muxer +pcm_u16le_muxer +pcm_u8_muxer +psp_muxer +rawvideo_muxer +rm_muxer +roq_muxer +rtp_muxer +rtsp_muxer +sox_muxer +spdif_muxer +swf_muxer +tg2_muxer +tgp_muxer +truehd_muxer +vc1t_muxer +voc_muxer +wav_muxer +webm_muxer +yuv4mpegpipe_muxer +libnut_muxer' +mvi_demuxer=yes +mxf_d10_muxer_select=mxf_muxer +mxf_demuxer=no +n=protocols +name=file_protocol +nc_demuxer=yes +need_memalign='altivec neon sse' +nellymoser_decoder_select=mdct +nellymoser_encoder_select=mdct +neon=yes +neon_deps=arm +network=no +nm_default=nm +nm_opts=-g +nsv_demuxer=no +nut_demuxer=no +nuv_demuxer=yes +objformat=elf +ogg_demuxer=yes +ogg_demuxer_select=golomb +oma_demuxer=no +op== +opt=--prefix= +optimizations=yes +option=debug +optname=prefix +optval= +oss_indev=no +oss_indev_deps_any='soundcard_h sys_soundcard_h' +oss_outdev=no +oss_outdev_deps_any='soundcard_h sys_soundcard_h' +outdevs_if_any='alsa_outdev +audio_beos_outdev +oss_outdev' +parsers_if_any='aac_parser +ac3_parser +cavsvideo_parser +dca_parser +dirac_parser +dnxhd_parser +dvbsub_parser +dvdsub_parser +h261_parser +h263_parser +h264_parser +mjpeg_parser +mlp_parser +mpeg4video_parser +mpegaudio_parser +mpegvideo_parser +pnm_parser +vc1_parser +vp3_parser' +pcm_alaw_demuxer=yes +pcm_f32be_demuxer=yes +pcm_f32le_demuxer=yes +pcm_f64be_demuxer=yes +pcm_f64le_demuxer=yes +pcm_mulaw_demuxer=yes +pcm_s16be_demuxer=yes +pcm_s16le_demuxer=yes +pcm_s24be_demuxer=yes +pcm_s24le_demuxer=yes +pcm_s32be_demuxer=yes +pcm_s32le_demuxer=yes +pcm_s8_demuxer=yes +pcm_u16be_demuxer=yes +pcm_u16le_demuxer=yes +pcm_u24be_demuxer=yes +pcm_u24le_demuxer=yes +pcm_u32be_demuxer=yes +pcm_u32le_demuxer=yes +pcm_u8_demuxer=yes +png_decoder=yes +png_decoder_select=zlib +png_encoder_select=zlib +ppc4xx=yes +ppc4xx_deps=ppc +prefix= +prefix_default=/usr/local +protocols=yes +protocols_if_any='file_protocol +gopher_protocol +http_protocol +pipe_protocol +rtmp_protocol +rtmpt_protocol +rtmpe_protocol +rtmpte_protocol +rtmps_protocol +rtp_protocol +tcp_protocol +udp_protocol +concat_protocol' +psp_muxer_select=mov_muxer +pthreads=yes +pva_demuxer=no +qcelp_decoder_select=lsp +qcp_demuxer=yes +qdm2_decoder_select='mdct rdft' +quotes='""' +r= +r3d_demuxer=yes +ranlib=ranlib +rawvideo_demuxer=no +rdft_select=fft +rl2_demuxer=no +rm_demuxer=yes +roq_demuxer=no +rpl_demuxer=no +rtmp_protocol_deps=tcp_protocol +rtp_protocol_deps=udp_protocol +rtsp_demuxer=yes +rtsp_demuxer_deps=sdp_demuxer +rtsp_muxer_deps=sdp_demuxer +rtsp_muxer_select=rtp_muxer +rv10_decoder_select=h263_decoder +rv10_encoder_select=h263_encoder +rv20_decoder_select=h263_decoder +rv20_encoder_select=h263_encoder +rv30_decoder_select='golomb h264dsp' +rv40_decoder_select='golomb h264dsp' +sdp_demuxer=yes +sdp_demuxer_deps='rtp_protocol mpegts_demuxer' +sdp_demuxer_select='asf_demuxer rm_demuxer' +segafilm_demuxer=no +shared=yes +shlibdir_default='${prefix}/lib' +shorten_decoder_select=golomb +shorten_demuxer=no +siff_demuxer=no +sipr_decoder_select=lsp +smacker_demuxer=no +small=yes +snow_decoder_select=dwt +snow_encoder_select='aandct dwt' +sol_demuxer=no +sonic_decoder_select=golomb +sonic_encoder_select=golomb +sonic_ls_encoder_select=golomb +source_path=/home/vicente/repos/tomato/release/src/router/ffmpeg +source_path_used=no +sox_demuxer=yes +spdif_muxer_select=aac_parser +sse=yes +sse_deps=mmx +ssse3=yes +ssse3_deps=sse +static=yes +str_demuxer=no +strip_default=strip +stripping=yes +svq1_encoder_select=aandct +svq3_decoder_select='golomb h264dsp' +svq3_decoder_suggest=zlib +swf_demuxer=yes +swscale=no +swscale_alpha=yes +symver=no +symver_asm_label=no +symver_gnu_asm=no +symver_if_any='symver_asm_label symver_gnu_asm' +target_os=linux +target_os_default=linux +target_path='$(CURDIR)' +tcp_protocol_deps=network +tg2_muxer_select=mov_muxer +tgp_muxer_select=mov_muxer +theora_decoder_select=vp3_decoder +thing=protocol +thp_demuxer=no +tiertexseq_demuxer=no +tiff_decoder_suggest=zlib +tiff_encoder_suggest=zlib +tmv_demuxer=yes +truehd_decoder_select=mlp_decoder +truehd_demuxer=yes +tscc_decoder_select=zlib +tta_demuxer=no +twinvq_decoder_select='mdct lsp' +txd_demuxer=no +udp_protocol_deps=network +v=PROTOCOL_LIST +v4l2_indev=no +v4l2_indev_deps_any='linux_videodev2_h sys_videoio_h' +v4l_indev=no +v4l_indev_deps=linux_videodev_h +vaapi_deps=va_va_h +value=prefix +var=prefix +vc1_decoder_select=h263_decoder +vc1_demuxer=yes +vc1_dxva2_hwaccel_deps='dxva2api_h DXVA_PictureParameters_wDecodedPictureIndex' +vc1_dxva2_hwaccel_select='dxva2 vc1_decoder' +vc1_vaapi_hwaccel_select='vaapi vc1_decoder' +vc1_vdpau_decoder_select='vdpau vc1_decoder' +vc1t_demuxer=yes +vdpau_deps='vdpau_vdpau_h vdpau_vdpau_x11_h' +vfwcap_indev=no +vfwcap_indev_deps=capCreateCaptureWindow +vfwcap_indev_extralibs=-lavicap32 +vis=yes +vis_deps=sparc +vmd_demuxer=no +voc_demuxer=no +vorbis_decoder_select=mdct +vorbis_encoder_select=mdct +vp6a_decoder_select=vp6_decoder +vp6f_decoder_select=vp6_decoder +vqf_demuxer=yes +w64_demuxer=yes +w64_demuxer_deps=wav_demuxer +wav_demuxer=yes +wc3_demuxer=no +wmapro_decoder_select=mdct +wmav1_decoder=yes +wmav1_decoder_select=mdct +wmav1_encoder_select=mdct +wmav2_decoder=yes +wmav2_decoder_select=mdct +wmav2_encoder_select=mdct +wmavoice_decoder_select='lsp rdft dct' +wmv1_decoder_select=h263_decoder +wmv1_encoder_select=h263_encoder +wmv2_decoder_select=h263_decoder +wmv2_encoder_select=h263_encoder +wmv3_decoder_select=vc1_decoder +wmv3_dxva2_hwaccel_select=vc1_dxva2_hwaccel +wmv3_vaapi_hwaccel_select=vc1_vaapi_hwaccel +wmv3_vdpau_decoder_select=vc1_vdpau_decoder +wsaud_demuxer=no +wsvqa_demuxer=no +wv_demuxer=yes +x11_grab_device_indev=no +x11_grab_device_indev_deps='x11grab XShmCreateImage' +x11_grab_device_indev_extralibs='-lX11 -lXext -lXfixes' +x86_64_suggest='cmov fast_cmov' +xa_demuxer=no +yasmexe=yasm +yop_demuxer=yes +yuv4mpegpipe_demuxer=no +zlib=yes +zlib_decoder_select=zlib +zlib_encoder_select=zlib +zmbv_decoder_select=zlib +zmbv_encoder_select=zlib +type mktemp +mktemp is /bin/mktemp +check_ld +check_cc +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 int main(void){ return 0; } +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC -o /tmp/ffconf.EiMWTqbm /tmp/ffconf.8WJL8JFg.o -L/home/vicente/repos/tomato/release/src-rt/router/zlib -lz +check_cflags -std=c99 +check_cc -std=c99 +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 int x; +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +check_cc -D_FILE_OFFSET_BITS=64 +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 #include +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -D_FILE_OFFSET_BITS=64 -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +check_cc -D_LARGEFILE_SOURCE +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 #include +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -D_LARGEFILE_SOURCE -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +check_host_cflags -std=c99 +check_host_cc -std=c99 +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 int x; +END /tmp/ffconf.DX9zK4S8.c +gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -O3 -g -Wall -std=c99 -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +check_cpp_condition stdlib.h defined(__PIC__) || defined(__pic__) || defined(PIC) +check_cpp +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 #include + 2 #if !(defined(__PIC__) || defined(__pic__) || defined(PIC)) + 3 #error "unsatisfied condition: defined(__PIC__) || defined(__pic__) || defined(PIC)" + 4 #endif +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -E -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +check_cflags -fomit-frame-pointer +check_cc -fomit-frame-pointer +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 int x; +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +check_cc +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 int ff_extern; +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +check_cc +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 void foo(void) { __asm__ volatile ("" ::); } +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +check_cc +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 void foo(char * restrict p); +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +check_cc +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 struct { int x; } __attribute__((packed)) x; +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +check_cc +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 union { int x; } __attribute__((may_alias)) x; +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +check_cc +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 unsigned int endian = 'B' << 24 | 'I' << 16 | 'G' << 8 | 'E'; +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +check_asm loongson "dmult.g $1, $2, $3" +check_as +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 void foo(void){ __asm__ volatile("dmult.g $1, $2, $3"); } +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -fPIC -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +{standard input}: Assembler messages: +{standard input}:15: Error: opcode not supported on this processor: mips32 (mips32) `dmult.g $1,$2,$3' +check_asm mmi "lq $2, 0($2)" +check_as +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 void foo(void){ __asm__ volatile("lq $2, 0($2)"); } +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -fPIC -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +{standard input}: Assembler messages: +{standard input}:15: Error: unrecognized opcode `lq $2,0($2)' +check_func dlopen +check_ld +check_cc +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 extern int dlopen(); + 2 int main(void){ dlopen(); } +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC -o /tmp/ffconf.EiMWTqbm /tmp/ffconf.8WJL8JFg.o -L/home/vicente/repos/tomato/release/src-rt/router/zlib -lz +/tmp/ffconf.8WJL8JFg.o: In function `main': +ffconf.DX9zK4S8.c:(.text.main+0x18): undefined reference to `dlopen' +collect2: ld returned 1 exit status +check_func dlopen -ldl +check_ld -ldl +check_cc +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 extern int dlopen(); + 2 int main(void){ dlopen(); } +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC -o /tmp/ffconf.EiMWTqbm /tmp/ffconf.8WJL8JFg.o -L/home/vicente/repos/tomato/release/src-rt/router/zlib -lz -ldl +check_func nanosleep +check_ld +check_cc +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 extern int nanosleep(); + 2 int main(void){ nanosleep(); } +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC -o /tmp/ffconf.EiMWTqbm /tmp/ffconf.8WJL8JFg.o -L/home/vicente/repos/tomato/release/src-rt/router/zlib -lz +check_func fork +check_ld +check_cc +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 extern int fork(); + 2 int main(void){ fork(); } +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC -o /tmp/ffconf.EiMWTqbm /tmp/ffconf.8WJL8JFg.o -L/home/vicente/repos/tomato/release/src-rt/router/zlib -lz +check_func getaddrinfo +check_ld +check_cc +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 extern int getaddrinfo(); + 2 int main(void){ getaddrinfo(); } +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC -o /tmp/ffconf.EiMWTqbm /tmp/ffconf.8WJL8JFg.o -L/home/vicente/repos/tomato/release/src-rt/router/zlib -lz +check_func gethrtime +check_ld +check_cc +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 extern int gethrtime(); + 2 int main(void){ gethrtime(); } +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC -o /tmp/ffconf.EiMWTqbm /tmp/ffconf.8WJL8JFg.o -L/home/vicente/repos/tomato/release/src-rt/router/zlib -lz +/tmp/ffconf.8WJL8JFg.o: In function `main': +ffconf.DX9zK4S8.c:(.text.main+0x18): undefined reference to `gethrtime' +collect2: ld returned 1 exit status +check_func getrusage +check_ld +check_cc +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 extern int getrusage(); + 2 int main(void){ getrusage(); } +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC -o /tmp/ffconf.EiMWTqbm /tmp/ffconf.8WJL8JFg.o -L/home/vicente/repos/tomato/release/src-rt/router/zlib -lz +check_type sys/time.h sys/resource.h struct rusage ru_maxrss +check_cc +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 + 2 #include + 3 #include + 4 const void *p = &((struct rusage *)0)->ru_maxrss; +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +check_func inet_aton +check_ld +check_cc +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 extern int inet_aton(); + 2 int main(void){ inet_aton(); } +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC -o /tmp/ffconf.EiMWTqbm /tmp/ffconf.8WJL8JFg.o -L/home/vicente/repos/tomato/release/src-rt/router/zlib -lz +check_func isatty +check_ld +check_cc +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 extern int isatty(); + 2 int main(void){ isatty(); } +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC -o /tmp/ffconf.EiMWTqbm /tmp/ffconf.8WJL8JFg.o -L/home/vicente/repos/tomato/release/src-rt/router/zlib -lz +check_func memalign +check_ld +check_cc +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 extern int memalign(); + 2 int main(void){ memalign(); } +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC -o /tmp/ffconf.EiMWTqbm /tmp/ffconf.8WJL8JFg.o -L/home/vicente/repos/tomato/release/src-rt/router/zlib -lz +check_func mkstemp +check_ld +check_cc +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 extern int mkstemp(); + 2 int main(void){ mkstemp(); } +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC -o /tmp/ffconf.EiMWTqbm /tmp/ffconf.8WJL8JFg.o -L/home/vicente/repos/tomato/release/src-rt/router/zlib -lz +check_func posix_memalign +check_ld +check_cc +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 extern int posix_memalign(); + 2 int main(void){ posix_memalign(); } +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC -o /tmp/ffconf.EiMWTqbm /tmp/ffconf.8WJL8JFg.o -L/home/vicente/repos/tomato/release/src-rt/router/zlib -lz +/tmp/ffconf.8WJL8JFg.o: In function `main': +ffconf.DX9zK4S8.c:(.text.main+0x18): undefined reference to `posix_memalign' +collect2: ld returned 1 exit status +check_func setrlimit +check_ld +check_cc +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 extern int setrlimit(); + 2 int main(void){ setrlimit(); } +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC -o /tmp/ffconf.EiMWTqbm /tmp/ffconf.8WJL8JFg.o -L/home/vicente/repos/tomato/release/src-rt/router/zlib -lz +check_func strerror_r +check_ld +check_cc +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 extern int strerror_r(); + 2 int main(void){ strerror_r(); } +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC -o /tmp/ffconf.EiMWTqbm /tmp/ffconf.8WJL8JFg.o -L/home/vicente/repos/tomato/release/src-rt/router/zlib -lz +check_func_headers io.h setmode +check_ld +check_cc +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 + 2 #include + 3 int main(int argc, char **argv){ + 4 return (long) setmode; + 5 } +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +/tmp/ffconf.DX9zK4S8.c:2:16: error: io.h: No such file or directory +/tmp/ffconf.DX9zK4S8.c: In function 'main': +/tmp/ffconf.DX9zK4S8.c:4: error: 'setmode' undeclared (first use in this function) +/tmp/ffconf.DX9zK4S8.c:4: error: (Each undeclared identifier is reported only once +/tmp/ffconf.DX9zK4S8.c:4: error: for each function it appears in.) +check_func_headers lzo/lzo1x.h lzo1x_999_compress +check_ld +check_cc +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 + 2 #include + 3 int main(int argc, char **argv){ + 4 return (long) lzo1x_999_compress; + 5 } +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +/tmp/ffconf.DX9zK4S8.c:2:23: error: lzo/lzo1x.h: No such file or directory +/tmp/ffconf.DX9zK4S8.c: In function 'main': +/tmp/ffconf.DX9zK4S8.c:4: error: 'lzo1x_999_compress' undeclared (first use in this function) +/tmp/ffconf.DX9zK4S8.c:4: error: (Each undeclared identifier is reported only once +/tmp/ffconf.DX9zK4S8.c:4: error: for each function it appears in.) +check_lib2 windows.h psapi.h GetProcessMemoryInfo -lpsapi +check_func_headers windows.h psapi.h GetProcessMemoryInfo -lpsapi +check_ld -lpsapi +check_cc +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 + 2 #include + 3 #include + 4 int main(int argc, char **argv){ + 5 return (long) GetProcessMemoryInfo; + 6 } +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +/tmp/ffconf.DX9zK4S8.c:2:21: error: windows.h: No such file or directory +/tmp/ffconf.DX9zK4S8.c:3:19: error: psapi.h: No such file or directory +/tmp/ffconf.DX9zK4S8.c: In function 'main': +/tmp/ffconf.DX9zK4S8.c:5: error: 'GetProcessMemoryInfo' undeclared (first use in this function) +/tmp/ffconf.DX9zK4S8.c:5: error: (Each undeclared identifier is reported only once +/tmp/ffconf.DX9zK4S8.c:5: error: for each function it appears in.) +check_func_headers windows.h GetProcessTimes +check_ld +check_cc +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 + 2 #include + 3 int main(int argc, char **argv){ + 4 return (long) GetProcessTimes; + 5 } +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +/tmp/ffconf.DX9zK4S8.c:2:21: error: windows.h: No such file or directory +/tmp/ffconf.DX9zK4S8.c: In function 'main': +/tmp/ffconf.DX9zK4S8.c:4: error: 'GetProcessTimes' undeclared (first use in this function) +/tmp/ffconf.DX9zK4S8.c:4: error: (Each undeclared identifier is reported only once +/tmp/ffconf.DX9zK4S8.c:4: error: for each function it appears in.) +check_func_headers windows.h VirtualAlloc +check_ld +check_cc +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 + 2 #include + 3 int main(int argc, char **argv){ + 4 return (long) VirtualAlloc; + 5 } +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +/tmp/ffconf.DX9zK4S8.c:2:21: error: windows.h: No such file or directory +/tmp/ffconf.DX9zK4S8.c: In function 'main': +/tmp/ffconf.DX9zK4S8.c:4: error: 'VirtualAlloc' undeclared (first use in this function) +/tmp/ffconf.DX9zK4S8.c:4: error: (Each undeclared identifier is reported only once +/tmp/ffconf.DX9zK4S8.c:4: error: for each function it appears in.) +check_header conio.h +check_cpp +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 #include + 2 int x; +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -E -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +/tmp/ffconf.DX9zK4S8.c:1:19: error: conio.h: No such file or directory +check_header dlfcn.h +check_cpp +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 #include + 2 int x; +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -E -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +check_header dxva2api.h +check_cpp +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 #include + 2 int x; +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -E -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +/tmp/ffconf.DX9zK4S8.c:1:22: error: dxva2api.h: No such file or directory +check_header malloc.h +check_cpp +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 #include + 2 int x; +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -E -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +check_header poll.h +check_cpp +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 #include + 2 int x; +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -E -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +check_header sys/mman.h +check_cpp +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 #include + 2 int x; +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -E -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +check_header sys/resource.h +check_cpp +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 #include + 2 int x; +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -E -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +check_header sys/select.h +check_cpp +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 #include + 2 int x; +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -E -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +check_header termios.h +check_cpp +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 #include + 2 int x; +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -E -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +check_header vdpau/vdpau.h +check_cpp +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 #include + 2 int x; +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -E -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +/tmp/ffconf.DX9zK4S8.c:1:25: error: vdpau/vdpau.h: No such file or directory +check_header vdpau/vdpau_x11.h +check_cpp +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 #include + 2 int x; +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -E -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +/tmp/ffconf.DX9zK4S8.c:1:29: error: vdpau/vdpau_x11.h: No such file or directory +check_header X11/extensions/XvMClib.h +check_cpp +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 #include + 2 int x; +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -E -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +/tmp/ffconf.DX9zK4S8.c:1:36: error: X11/extensions/XvMClib.h: No such file or directory +check_type dxva2api.h DXVA_PictureParameters wDecodedPictureIndex +check_cc +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 + 2 #include + 3 const void *p = &((DXVA_PictureParameters *)0)->wDecodedPictureIndex; +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +/tmp/ffconf.DX9zK4S8.c:2:22: error: dxva2api.h: No such file or directory +/tmp/ffconf.DX9zK4S8.c:3: error: 'DXVA_PictureParameters' undeclared here (not in a function) +/tmp/ffconf.DX9zK4S8.c:3: error: expected expression before ')' token +check_lib zlib.h zlibVersion -lz +check_header zlib.h +check_cpp +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 #include + 2 int x; +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -E -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +check_func zlibVersion +check_ld +check_cc +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 extern int zlibVersion(); + 2 int main(void){ zlibVersion(); } +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC -o /tmp/ffconf.EiMWTqbm /tmp/ffconf.8WJL8JFg.o -L/home/vicente/repos/tomato/release/src-rt/router/zlib -lz -lz +check_lib2 bzlib.h BZ2_bzlibVersion -lbz2 +check_func_headers bzlib.h BZ2_bzlibVersion -lbz2 +check_ld -lbz2 +check_cc +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 + 2 #include + 3 int main(int argc, char **argv){ + 4 return (long) BZ2_bzlibVersion; + 5 } +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +/tmp/ffconf.DX9zK4S8.c:2:19: error: bzlib.h: No such file or directory +/tmp/ffconf.DX9zK4S8.c: In function 'main': +/tmp/ffconf.DX9zK4S8.c:4: error: 'BZ2_bzlibVersion' undeclared (first use in this function) +/tmp/ffconf.DX9zK4S8.c:4: error: (Each undeclared identifier is reported only once +/tmp/ffconf.DX9zK4S8.c:4: error: for each function it appears in.) +check_func pthread_create +check_ld +check_cc +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 extern int pthread_create(); + 2 int main(void){ pthread_create(); } +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC -o /tmp/ffconf.EiMWTqbm /tmp/ffconf.8WJL8JFg.o -L/home/vicente/repos/tomato/release/src-rt/router/zlib -lz -lz +/tmp/ffconf.8WJL8JFg.o: In function `main': +ffconf.DX9zK4S8.c:(.text.main+0x18): undefined reference to `pthread_create' +collect2: ld returned 1 exit status +check_func pthread_create -pthread +check_ld -pthread +check_cc -pthread +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 extern int pthread_create(); + 2 int main(void){ pthread_create(); } +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -pthread -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC -pthread -o /tmp/ffconf.EiMWTqbm /tmp/ffconf.8WJL8JFg.o -L/home/vicente/repos/tomato/release/src-rt/router/zlib -lz -lz +check_lib math.h sin -lm +check_header math.h +check_cpp +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 #include + 2 int x; +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -pthread -E -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +check_func sin +check_ld +check_cc +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 extern int sin(); + 2 int main(void){ sin(); } +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -pthread -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +/tmp/ffconf.DX9zK4S8.c:1: warning: conflicting types for built-in function 'sin' +mipsel-uclibc-gcc -ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC -o /tmp/ffconf.EiMWTqbm /tmp/ffconf.8WJL8JFg.o -L/home/vicente/repos/tomato/release/src-rt/router/zlib -lz -lz -pthread -lm +check_lib va/va.h vaInitialize -lva +check_header va/va.h +check_cpp +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 #include + 2 int x; +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -pthread -E -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +/tmp/ffconf.DX9zK4S8.c:1:19: error: va/va.h: No such file or directory +check_mathfunc exp2 +check_ld +check_cc +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 #include + 2 float foo(float f) { return exp2(f); } + 3 int main(void){ return 0; } +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -pthread -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC -o /tmp/ffconf.EiMWTqbm /tmp/ffconf.8WJL8JFg.o -L/home/vicente/repos/tomato/release/src-rt/router/zlib -lz -lz -pthread -lm +check_mathfunc exp2f +check_ld +check_cc +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 #include + 2 float foo(float f) { return exp2f(f); } + 3 int main(void){ return 0; } +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -pthread -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC -o /tmp/ffconf.EiMWTqbm /tmp/ffconf.8WJL8JFg.o -L/home/vicente/repos/tomato/release/src-rt/router/zlib -lz -lz -pthread -lm +check_mathfunc llrint +check_ld +check_cc +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 #include + 2 float foo(float f) { return llrint(f); } + 3 int main(void){ return 0; } +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -pthread -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC -o /tmp/ffconf.EiMWTqbm /tmp/ffconf.8WJL8JFg.o -L/home/vicente/repos/tomato/release/src-rt/router/zlib -lz -lz -pthread -lm +check_mathfunc llrintf +check_ld +check_cc +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 #include + 2 float foo(float f) { return llrintf(f); } + 3 int main(void){ return 0; } +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -pthread -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC -o /tmp/ffconf.EiMWTqbm /tmp/ffconf.8WJL8JFg.o -L/home/vicente/repos/tomato/release/src-rt/router/zlib -lz -lz -pthread -lm +check_mathfunc log2 +check_ld +check_cc +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 #include + 2 float foo(float f) { return log2(f); } + 3 int main(void){ return 0; } +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -pthread -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC -o /tmp/ffconf.EiMWTqbm /tmp/ffconf.8WJL8JFg.o -L/home/vicente/repos/tomato/release/src-rt/router/zlib -lz -lz -pthread -lm +check_mathfunc log2f +check_ld +check_cc +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 #include + 2 float foo(float f) { return log2f(f); } + 3 int main(void){ return 0; } +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -pthread -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC -o /tmp/ffconf.EiMWTqbm /tmp/ffconf.8WJL8JFg.o -L/home/vicente/repos/tomato/release/src-rt/router/zlib -lz -lz -pthread -lm +check_mathfunc lrint +check_ld +check_cc +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 #include + 2 float foo(float f) { return lrint(f); } + 3 int main(void){ return 0; } +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -pthread -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC -o /tmp/ffconf.EiMWTqbm /tmp/ffconf.8WJL8JFg.o -L/home/vicente/repos/tomato/release/src-rt/router/zlib -lz -lz -pthread -lm +check_mathfunc lrintf +check_ld +check_cc +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 #include + 2 float foo(float f) { return lrintf(f); } + 3 int main(void){ return 0; } +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -pthread -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC -o /tmp/ffconf.EiMWTqbm /tmp/ffconf.8WJL8JFg.o -L/home/vicente/repos/tomato/release/src-rt/router/zlib -lz -lz -pthread -lm +check_mathfunc round +check_ld +check_cc +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 #include + 2 float foo(float f) { return round(f); } + 3 int main(void){ return 0; } +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -pthread -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC -o /tmp/ffconf.EiMWTqbm /tmp/ffconf.8WJL8JFg.o -L/home/vicente/repos/tomato/release/src-rt/router/zlib -lz -lz -pthread -lm +check_mathfunc roundf +check_ld +check_cc +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 #include + 2 float foo(float f) { return roundf(f); } + 3 int main(void){ return 0; } +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -pthread -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC -o /tmp/ffconf.EiMWTqbm /tmp/ffconf.8WJL8JFg.o -L/home/vicente/repos/tomato/release/src-rt/router/zlib -lz -lz -pthread -lm +check_mathfunc truncf +check_ld +check_cc +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 #include + 2 float foo(float f) { return truncf(f); } + 3 int main(void){ return 0; } +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -pthread -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC -o /tmp/ffconf.EiMWTqbm /tmp/ffconf.8WJL8JFg.o -L/home/vicente/repos/tomato/release/src-rt/router/zlib -lz -lz -pthread -lm +check_header linux/videodev.h +check_cpp +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 #include + 2 int x; +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -pthread -E -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +check_header linux/videodev2.h +check_cpp +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 #include + 2 int x; +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -pthread -E -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +check_header sys/videoio.h +check_cpp +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 #include + 2 int x; +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -pthread -E -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +/tmp/ffconf.DX9zK4S8.c:1:25: error: sys/videoio.h: No such file or directory +check_func_headers windows.h vfw.h capCreateCaptureWindow -lavicap32 +check_ld -lavicap32 +check_cc +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 + 2 #include + 3 #include + 4 int main(int argc, char **argv){ + 5 return (long) capCreateCaptureWindow; + 6 } +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -pthread -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +/tmp/ffconf.DX9zK4S8.c:2:21: error: windows.h: No such file or directory +/tmp/ffconf.DX9zK4S8.c:3:17: error: vfw.h: No such file or directory +/tmp/ffconf.DX9zK4S8.c: In function 'main': +/tmp/ffconf.DX9zK4S8.c:5: error: 'capCreateCaptureWindow' undeclared (first use in this function) +/tmp/ffconf.DX9zK4S8.c:5: error: (Each undeclared identifier is reported only once +/tmp/ffconf.DX9zK4S8.c:5: error: for each function it appears in.) +check_header dev/bktr/ioctl_meteor.h +check_cpp +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 #include + 2 int x; +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -pthread -E -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +/tmp/ffconf.DX9zK4S8.c:1:35: error: dev/bktr/ioctl_meteor.h: No such file or directory +check_header machine/ioctl_meteor.h +check_cpp +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 #include + 2 int x; +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -pthread -E -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +/tmp/ffconf.DX9zK4S8.c:1:34: error: machine/ioctl_meteor.h: No such file or directory +check_header dev/video/meteor/ioctl_meteor.h +check_cpp +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 #include + 2 int x; +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -pthread -E -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +/tmp/ffconf.DX9zK4S8.c:1:43: error: dev/video/meteor/ioctl_meteor.h: No such file or directory +check_header dev/ic/bt8xx.h +check_cpp +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 #include + 2 int x; +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -pthread -E -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +/tmp/ffconf.DX9zK4S8.c:1:26: error: dev/ic/bt8xx.h: No such file or directory +check_header sys/soundcard.h +check_cpp +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 #include + 2 int x; +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -pthread -E -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +check_header soundcard.h +check_cpp +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 #include + 2 int x; +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -pthread -E -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +/tmp/ffconf.DX9zK4S8.c:1:23: error: soundcard.h: No such file or directory +check_cflags -Wdeclaration-after-statement +check_cc -Wdeclaration-after-statement +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 int x; +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -pthread -Wdeclaration-after-statement -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +check_cflags -Wall +check_cc -Wall +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 int x; +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -pthread -Wdeclaration-after-statement -Wall -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +check_cflags -Wno-switch +check_cc -Wno-switch +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 int x; +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -pthread -Wdeclaration-after-statement -Wall -Wno-switch -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +check_cflags -Wdisabled-optimization +check_cc -Wdisabled-optimization +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 int x; +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -pthread -Wdeclaration-after-statement -Wall -Wno-switch -Wdisabled-optimization -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +check_cflags -Wpointer-arith +check_cc -Wpointer-arith +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 int x; +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -pthread -Wdeclaration-after-statement -Wall -Wno-switch -Wdisabled-optimization -Wpointer-arith -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +check_cflags -Wredundant-decls +check_cc -Wredundant-decls +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 int x; +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -pthread -Wdeclaration-after-statement -Wall -Wno-switch -Wdisabled-optimization -Wpointer-arith -Wredundant-decls -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +check_cflags -Wno-pointer-sign +check_cc -Wno-pointer-sign +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 int x; +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -pthread -Wdeclaration-after-statement -Wall -Wno-switch -Wdisabled-optimization -Wpointer-arith -Wredundant-decls -Wno-pointer-sign -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +check_cflags -Wcast-qual +check_cc -Wcast-qual +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 int x; +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -pthread -Wdeclaration-after-statement -Wall -Wno-switch -Wdisabled-optimization -Wpointer-arith -Wredundant-decls -Wno-pointer-sign -Wcast-qual -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +check_cflags -Wwrite-strings +check_cc -Wwrite-strings +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 int x; +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -pthread -Wdeclaration-after-statement -Wall -Wno-switch -Wdisabled-optimization -Wpointer-arith -Wredundant-decls -Wno-pointer-sign -Wcast-qual -Wwrite-strings -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +check_cflags -Wtype-limits +check_cc -Wtype-limits +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 int x; +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -pthread -Wdeclaration-after-statement -Wall -Wno-switch -Wdisabled-optimization -Wpointer-arith -Wredundant-decls -Wno-pointer-sign -Wcast-qual -Wwrite-strings -Wtype-limits -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +cc1: error: unrecognized command line option "-Wtype-limits" +check_cflags -Wundef +check_cc -Wundef +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 int x; +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -pthread -Wdeclaration-after-statement -Wall -Wno-switch -Wdisabled-optimization -Wpointer-arith -Wredundant-decls -Wno-pointer-sign -Wcast-qual -Wwrite-strings -Wundef -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +check_cflags -Wmissing-prototypes +check_cc -Wmissing-prototypes +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 int x; +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -pthread -Wdeclaration-after-statement -Wall -Wno-switch -Wdisabled-optimization -Wpointer-arith -Wredundant-decls -Wno-pointer-sign -Wcast-qual -Wwrite-strings -Wundef -Wmissing-prototypes -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +check_ldflags -Wl,--warn-common +test_ldflags -Wl,--warn-common +check_ld -Wl,--warn-common +check_cc -Wl,--warn-common +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 int main(void){ return 0; } +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -pthread -Wdeclaration-after-statement -Wall -Wno-switch -Wdisabled-optimization -Wpointer-arith -Wredundant-decls -Wno-pointer-sign -Wcast-qual -Wwrite-strings -Wundef -Wmissing-prototypes -Wl,--warn-common -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc: --warn-common: linker input file unused because linking not done +mipsel-uclibc-gcc -ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC -Wl,--warn-common -o /tmp/ffconf.EiMWTqbm /tmp/ffconf.8WJL8JFg.o -L/home/vicente/repos/tomato/release/src-rt/router/zlib -lz -lz -pthread -lm +check_ldflags -Wl,--as-needed +test_ldflags -Wl,--as-needed +check_ld -Wl,--as-needed +check_cc -Wl,--as-needed +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 int main(void){ return 0; } +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -pthread -Wdeclaration-after-statement -Wall -Wno-switch -Wdisabled-optimization -Wpointer-arith -Wredundant-decls -Wno-pointer-sign -Wcast-qual -Wwrite-strings -Wundef -Wmissing-prototypes -Wl,--as-needed -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc: --as-needed: linker input file unused because linking not done +mipsel-uclibc-gcc -ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC -Wl,--warn-common -Wl,--as-needed -o /tmp/ffconf.EiMWTqbm /tmp/ffconf.8WJL8JFg.o -L/home/vicente/repos/tomato/release/src-rt/router/zlib -lz -lz -pthread -lm +check_ldflags -Wl,-rpath-link,\$(BUILD_ROOT)/libpostproc -Wl,-rpath-link,\$(BUILD_ROOT)/libswscale -Wl,-rpath-link,\$(BUILD_ROOT)/libavfilter -Wl,-rpath-link,\$(BUILD_ROOT)/libavdevice -Wl,-rpath-link,\$(BUILD_ROOT)/libavformat -Wl,-rpath-link,\$(BUILD_ROOT)/libavcodec -Wl,-rpath-link,\$(BUILD_ROOT)/libavutil +test_ldflags -Wl,-rpath-link,\$(BUILD_ROOT)/libpostproc -Wl,-rpath-link,\$(BUILD_ROOT)/libswscale -Wl,-rpath-link,\$(BUILD_ROOT)/libavfilter -Wl,-rpath-link,\$(BUILD_ROOT)/libavdevice -Wl,-rpath-link,\$(BUILD_ROOT)/libavformat -Wl,-rpath-link,\$(BUILD_ROOT)/libavcodec -Wl,-rpath-link,\$(BUILD_ROOT)/libavutil +check_ld -Wl,-rpath-link,\$(BUILD_ROOT)/libpostproc -Wl,-rpath-link,\$(BUILD_ROOT)/libswscale -Wl,-rpath-link,\$(BUILD_ROOT)/libavfilter -Wl,-rpath-link,\$(BUILD_ROOT)/libavdevice -Wl,-rpath-link,\$(BUILD_ROOT)/libavformat -Wl,-rpath-link,\$(BUILD_ROOT)/libavcodec -Wl,-rpath-link,\$(BUILD_ROOT)/libavutil +check_cc -Wl,-rpath-link,\$(BUILD_ROOT)/libpostproc -Wl,-rpath-link,\$(BUILD_ROOT)/libswscale -Wl,-rpath-link,\$(BUILD_ROOT)/libavfilter -Wl,-rpath-link,\$(BUILD_ROOT)/libavdevice -Wl,-rpath-link,\$(BUILD_ROOT)/libavformat -Wl,-rpath-link,\$(BUILD_ROOT)/libavcodec -Wl,-rpath-link,\$(BUILD_ROOT)/libavutil +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 int main(void){ return 0; } +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -pthread -Wdeclaration-after-statement -Wall -Wno-switch -Wdisabled-optimization -Wpointer-arith -Wredundant-decls -Wno-pointer-sign -Wcast-qual -Wwrite-strings -Wundef -Wmissing-prototypes -Wl,-rpath-link,\$(BUILD_ROOT)/libpostproc -Wl,-rpath-link,\$(BUILD_ROOT)/libswscale -Wl,-rpath-link,\$(BUILD_ROOT)/libavfilter -Wl,-rpath-link,\$(BUILD_ROOT)/libavdevice -Wl,-rpath-link,\$(BUILD_ROOT)/libavformat -Wl,-rpath-link,\$(BUILD_ROOT)/libavcodec -Wl,-rpath-link,\$(BUILD_ROOT)/libavutil -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc: -rpath-link: linker input file unused because linking not done +mipsel-uclibc-gcc: \$(BUILD_ROOT)/libpostproc: linker input file unused because linking not done +mipsel-uclibc-gcc: -rpath-link: linker input file unused because linking not done +mipsel-uclibc-gcc: \$(BUILD_ROOT)/libswscale: linker input file unused because linking not done +mipsel-uclibc-gcc: -rpath-link: linker input file unused because linking not done +mipsel-uclibc-gcc: \$(BUILD_ROOT)/libavfilter: linker input file unused because linking not done +mipsel-uclibc-gcc: -rpath-link: linker input file unused because linking not done +mipsel-uclibc-gcc: \$(BUILD_ROOT)/libavdevice: linker input file unused because linking not done +mipsel-uclibc-gcc: -rpath-link: linker input file unused because linking not done +mipsel-uclibc-gcc: \$(BUILD_ROOT)/libavformat: linker input file unused because linking not done +mipsel-uclibc-gcc: -rpath-link: linker input file unused because linking not done +mipsel-uclibc-gcc: \$(BUILD_ROOT)/libavcodec: linker input file unused because linking not done +mipsel-uclibc-gcc: -rpath-link: linker input file unused because linking not done +mipsel-uclibc-gcc: \$(BUILD_ROOT)/libavutil: linker input file unused because linking not done +mipsel-uclibc-gcc -ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC -Wl,--warn-common -Wl,--as-needed -Wl,-rpath-link,\$(BUILD_ROOT)/libpostproc -Wl,-rpath-link,\$(BUILD_ROOT)/libswscale -Wl,-rpath-link,\$(BUILD_ROOT)/libavfilter -Wl,-rpath-link,\$(BUILD_ROOT)/libavdevice -Wl,-rpath-link,\$(BUILD_ROOT)/libavformat -Wl,-rpath-link,\$(BUILD_ROOT)/libavcodec -Wl,-rpath-link,\$(BUILD_ROOT)/libavutil -o /tmp/ffconf.EiMWTqbm /tmp/ffconf.8WJL8JFg.o -L/home/vicente/repos/tomato/release/src-rt/router/zlib -lz -lz -pthread -lm +check_ldflags -Wl,-Bsymbolic +test_ldflags -Wl,-Bsymbolic +check_ld -Wl,-Bsymbolic +check_cc -Wl,-Bsymbolic +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 int main(void){ return 0; } +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -pthread -Wdeclaration-after-statement -Wall -Wno-switch -Wdisabled-optimization -Wpointer-arith -Wredundant-decls -Wno-pointer-sign -Wcast-qual -Wwrite-strings -Wundef -Wmissing-prototypes -Wl,-Bsymbolic -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc: -Bsymbolic: linker input file unused because linking not done +mipsel-uclibc-gcc -ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC -Wl,--warn-common -Wl,--as-needed -Wl,-rpath-link,$(BUILD_ROOT)/libpostproc -Wl,-rpath-link,$(BUILD_ROOT)/libswscale -Wl,-rpath-link,$(BUILD_ROOT)/libavfilter -Wl,-rpath-link,$(BUILD_ROOT)/libavdevice -Wl,-rpath-link,$(BUILD_ROOT)/libavformat -Wl,-rpath-link,$(BUILD_ROOT)/libavcodec -Wl,-rpath-link,$(BUILD_ROOT)/libavutil -Wl,-Bsymbolic -o /tmp/ffconf.EiMWTqbm /tmp/ffconf.8WJL8JFg.o -L/home/vicente/repos/tomato/release/src-rt/router/zlib -lz -lz -pthread -lm +test_ldflags -Wl,--version-script,/tmp/ffconf.beQjCtvn.ver +check_ld -Wl,--version-script,/tmp/ffconf.beQjCtvn.ver +check_cc -Wl,--version-script,/tmp/ffconf.beQjCtvn.ver +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 int main(void){ return 0; } +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -pthread -Wdeclaration-after-statement -Wall -Wno-switch -Wdisabled-optimization -Wpointer-arith -Wredundant-decls -Wno-pointer-sign -Wcast-qual -Wwrite-strings -Wundef -Wmissing-prototypes -Wl,--version-script,/tmp/ffconf.beQjCtvn.ver -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc: --version-script: linker input file unused because linking not done +mipsel-uclibc-gcc: /tmp/ffconf.beQjCtvn.ver: linker input file unused because linking not done +mipsel-uclibc-gcc -ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC -Wl,--warn-common -Wl,--as-needed -Wl,-rpath-link,$(BUILD_ROOT)/libpostproc -Wl,-rpath-link,$(BUILD_ROOT)/libswscale -Wl,-rpath-link,$(BUILD_ROOT)/libavfilter -Wl,-rpath-link,$(BUILD_ROOT)/libavdevice -Wl,-rpath-link,$(BUILD_ROOT)/libavformat -Wl,-rpath-link,$(BUILD_ROOT)/libavcodec -Wl,-rpath-link,$(BUILD_ROOT)/libavutil -Wl,-Bsymbolic -Wl,--version-script,/tmp/ffconf.beQjCtvn.ver -o /tmp/ffconf.EiMWTqbm /tmp/ffconf.8WJL8JFg.o -L/home/vicente/repos/tomato/release/src-rt/router/zlib -lz -lz -pthread -lm +check_cc +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 void ff_foo(void) __asm__ ("av_foo@VERSION"); + 2 void ff_foo(void) { __asm__(""); } +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -pthread -Wdeclaration-after-statement -Wall -Wno-switch -Wdisabled-optimization -Wpointer-arith -Wredundant-decls -Wno-pointer-sign -Wcast-qual -Wwrite-strings -Wundef -Wmissing-prototypes -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +{standard input}: Assembler messages: +{standard input}:7: Error: : no such section +{standard input}:7: Error: junk at end of line, first unrecognized character is `@' +{standard input}:8: Error: junk at end of line, first unrecognized character is `@' +{standard input}:9: Error: unrecognized symbol type "VERSION" +{standard input}:9: Error: junk at end of line, first unrecognized character is `,' +{standard input}:10: Error: unrecognized opcode `av_foo@VERSION:' +{standard input}:15: Error: junk at end of line, first unrecognized character is `@' +check_cc +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 __asm__(".symver ff_foo,av_foo@VERSION"); + 2 void ff_foo(void) {} +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -pthread -Wdeclaration-after-statement -Wall -Wno-switch -Wdisabled-optimization -Wpointer-arith -Wredundant-decls -Wno-pointer-sign -Wcast-qual -Wwrite-strings -Wundef -Wmissing-prototypes -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +/tmp/ffconf.DX9zK4S8.c:2: warning: no previous prototype for 'ff_foo' +check_cflags -fno-math-errno +check_cc -fno-math-errno +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 int x; +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -pthread -Wdeclaration-after-statement -Wall -Wno-switch -Wdisabled-optimization -Wpointer-arith -Wredundant-decls -Wno-pointer-sign -Wcast-qual -Wwrite-strings -Wundef -Wmissing-prototypes -Os -fno-math-errno -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +check_cflags -fno-signed-zeros +check_cc -fno-signed-zeros +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 int x; +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -pthread -Wdeclaration-after-statement -Wall -Wno-switch -Wdisabled-optimization -Wpointer-arith -Wredundant-decls -Wno-pointer-sign -Wcast-qual -Wwrite-strings -Wundef -Wmissing-prototypes -Os -fno-math-errno -fno-signed-zeros -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +cc1: error: unrecognized command line option "-fno-signed-zeros" +check_cflags -fno-tree-vectorize +check_cc -fno-tree-vectorize +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 int x; +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -pthread -Wdeclaration-after-statement -Wall -Wno-switch -Wdisabled-optimization -Wpointer-arith -Wredundant-decls -Wno-pointer-sign -Wcast-qual -Wwrite-strings -Wundef -Wmissing-prototypes -Os -fno-math-errno -fno-tree-vectorize -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +check_cflags -Werror=implicit +check_cc -Werror=implicit +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 int x; +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -pthread -Wdeclaration-after-statement -Wall -Wno-switch -Wdisabled-optimization -Wpointer-arith -Wredundant-decls -Wno-pointer-sign -Wcast-qual -Wwrite-strings -Wundef -Wmissing-prototypes -Os -fno-math-errno -fno-tree-vectorize -Werror=implicit -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +check_cflags -Werror=missing-prototypes +check_cc -Werror=missing-prototypes +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 int x; +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -std=c99 -fomit-frame-pointer -fPIC -pthread -Wdeclaration-after-statement -Wall -Wno-switch -Wdisabled-optimization -Wpointer-arith -Wredundant-decls -Wno-pointer-sign -Wcast-qual -Wwrite-strings -Wundef -Wmissing-prototypes -Os -fno-math-errno -fno-tree-vectorize -Werror=implicit -Werror=missing-prototypes -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c +check_asm asmalign_pot ".align 3" +check_as +BEGIN /tmp/ffconf.DX9zK4S8.c + 1 void foo(void){ __asm__ volatile(".align 3"); } +END /tmp/ffconf.DX9zK4S8.c +mipsel-uclibc-gcc -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -I/home/vicente/repos/tomato/release/src-rt/router/zlib -fPIC -c -o /tmp/ffconf.8WJL8JFg.o /tmp/ffconf.DX9zK4S8.c diff --git a/release/src/router/ffmpeg/libavcodec/libavcodec-uninstalled.pc b/release/src/router/ffmpeg/libavcodec/libavcodec-uninstalled.pc index 9cbfbdbb3b..ceee490846 100644 --- a/release/src/router/ffmpeg/libavcodec/libavcodec-uninstalled.pc +++ b/release/src/router/ffmpeg/libavcodec/libavcodec-uninstalled.pc @@ -1,12 +1,12 @@ prefix= exec_prefix= libdir=${pcfiledir} -includedir=/home/vicente/tomato/release/src/router/ffmpeg +includedir=/home/vicente/repos/tomato/release/src/router/ffmpeg Name: libavcodec Description: FFmpeg codec library Version: 52.72.2 Requires: libavutil = 50.15.1 Conflicts: -Libs: ${libdir}/libavcodec.a -L/home/vicente/tomato/release/src-rt/router/zlib -lz -lz -pthread -lm +Libs: ${libdir}/libavcodec.a -L/home/vicente/repos/tomato/release/src-rt/router/zlib -lz -lz -pthread -lm Cflags: -I${includedir} diff --git a/release/src/router/ffmpeg/libavcodec/libavcodec.pc b/release/src/router/ffmpeg/libavcodec/libavcodec.pc index 1f80c90052..d093b5aeee 100644 --- a/release/src/router/ffmpeg/libavcodec/libavcodec.pc +++ b/release/src/router/ffmpeg/libavcodec/libavcodec.pc @@ -10,5 +10,5 @@ Requires: Requires.private: libavutil = 50.15.1 Conflicts: Libs: -L${libdir} -lavcodec -Libs.private: -L/home/vicente/tomato/release/src-rt/router/zlib -lz -lz -pthread -lm +Libs.private: -L/home/vicente/repos/tomato/release/src-rt/router/zlib -lz -lz -pthread -lm Cflags: -I${includedir} diff --git a/release/src/router/ffmpeg/libavdevice/libavdevice-uninstalled.pc b/release/src/router/ffmpeg/libavdevice/libavdevice-uninstalled.pc index 20a11c45d2..77d289bbd1 100644 --- a/release/src/router/ffmpeg/libavdevice/libavdevice-uninstalled.pc +++ b/release/src/router/ffmpeg/libavdevice/libavdevice-uninstalled.pc @@ -1,12 +1,12 @@ prefix= exec_prefix= libdir=${pcfiledir} -includedir=/home/vicente/tomato/release/src/router/ffmpeg +includedir=/home/vicente/repos/tomato/release/src/router/ffmpeg Name: libavdevice Description: FFmpeg device handling library Version: 52.2.0 Requires: libavformat = 52.64.2 Conflicts: -Libs: ${libdir}/libavdevice.a -L/home/vicente/tomato/release/src-rt/router/zlib -lz -lz -pthread -lm +Libs: ${libdir}/libavdevice.a -L/home/vicente/repos/tomato/release/src-rt/router/zlib -lz -lz -pthread -lm Cflags: -I${includedir} diff --git a/release/src/router/ffmpeg/libavdevice/libavdevice.pc b/release/src/router/ffmpeg/libavdevice/libavdevice.pc index 3d78de5b8a..50e427b6a2 100644 --- a/release/src/router/ffmpeg/libavdevice/libavdevice.pc +++ b/release/src/router/ffmpeg/libavdevice/libavdevice.pc @@ -10,5 +10,5 @@ Requires: Requires.private: libavformat = 52.64.2 Conflicts: Libs: -L${libdir} -lavdevice -Libs.private: -L/home/vicente/tomato/release/src-rt/router/zlib -lz -lz -pthread -lm +Libs.private: -L/home/vicente/repos/tomato/release/src-rt/router/zlib -lz -lz -pthread -lm Cflags: -I${includedir} diff --git a/release/src/router/ffmpeg/libavformat/libavformat-uninstalled.pc b/release/src/router/ffmpeg/libavformat/libavformat-uninstalled.pc index 8a77ce1564..46b304eb96 100644 --- a/release/src/router/ffmpeg/libavformat/libavformat-uninstalled.pc +++ b/release/src/router/ffmpeg/libavformat/libavformat-uninstalled.pc @@ -1,12 +1,12 @@ prefix= exec_prefix= libdir=${pcfiledir} -includedir=/home/vicente/tomato/release/src/router/ffmpeg +includedir=/home/vicente/repos/tomato/release/src/router/ffmpeg Name: libavformat Description: FFmpeg container format library Version: 52.64.2 Requires: libavcodec = 52.72.2 Conflicts: -Libs: ${libdir}/libavformat.a -L/home/vicente/tomato/release/src-rt/router/zlib -lz -lz -pthread -lm +Libs: ${libdir}/libavformat.a -L/home/vicente/repos/tomato/release/src-rt/router/zlib -lz -lz -pthread -lm Cflags: -I${includedir} diff --git a/release/src/router/ffmpeg/libavformat/libavformat.pc b/release/src/router/ffmpeg/libavformat/libavformat.pc index 7e07413c47..2d31ac7839 100644 --- a/release/src/router/ffmpeg/libavformat/libavformat.pc +++ b/release/src/router/ffmpeg/libavformat/libavformat.pc @@ -10,5 +10,5 @@ Requires: Requires.private: libavcodec = 52.72.2 Conflicts: Libs: -L${libdir} -lavformat -Libs.private: -L/home/vicente/tomato/release/src-rt/router/zlib -lz -lz -pthread -lm +Libs.private: -L/home/vicente/repos/tomato/release/src-rt/router/zlib -lz -lz -pthread -lm Cflags: -I${includedir} diff --git a/release/src/router/ffmpeg/libavutil/libavutil-uninstalled.pc b/release/src/router/ffmpeg/libavutil/libavutil-uninstalled.pc index e6c71d1dae..25a37cfb37 100644 --- a/release/src/router/ffmpeg/libavutil/libavutil-uninstalled.pc +++ b/release/src/router/ffmpeg/libavutil/libavutil-uninstalled.pc @@ -1,7 +1,7 @@ prefix= exec_prefix= libdir=${pcfiledir} -includedir=/home/vicente/tomato/release/src/router/ffmpeg +includedir=/home/vicente/repos/tomato/release/src/router/ffmpeg Name: libavutil Description: FFmpeg utility library diff --git a/release/src/router/ffmpeg/libswscale/libswscale-uninstalled.pc b/release/src/router/ffmpeg/libswscale/libswscale-uninstalled.pc index 1c436df728..47457adcfa 100644 --- a/release/src/router/ffmpeg/libswscale/libswscale-uninstalled.pc +++ b/release/src/router/ffmpeg/libswscale/libswscale-uninstalled.pc @@ -1,7 +1,7 @@ prefix= exec_prefix= libdir=${pcfiledir} -includedir=/home/vicente/tomato/release/src/router/ffmpeg +includedir=/home/vicente/repos/tomato/release/src/router/ffmpeg Name: libswscale Description: FFmpeg image rescaling library diff --git a/release/src/router/flac/Makefile b/release/src/router/flac/Makefile index 8d13f50368..8c637c5292 100644 --- a/release/src/router/flac/Makefile +++ b/release/src/router/flac/Makefile @@ -66,16 +66,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -83,7 +83,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -150,7 +150,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -161,7 +161,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -219,7 +219,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/build/Makefile b/release/src/router/flac/build/Makefile index ec0fbc4d2b..4a5ce9a8ad 100644 --- a/release/src/router/flac/build/Makefile +++ b/release/src/router/flac/build/Makefile @@ -53,16 +53,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -70,7 +70,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -137,7 +137,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -148,7 +148,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -206,7 +206,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/config.log b/release/src/router/flac/config.log deleted file mode 100644 index 081e871c02..0000000000 --- a/release/src/router/flac/config.log +++ /dev/null @@ -1,1780 +0,0 @@ -This file contains any messages produced by compilers while -running configure, to aid debugging if configure makes a mistake. - -It was created by configure, which was -generated by GNU Autoconf 2.59. Invocation command line was - - $ ./configure --host=mipsel-linux --build=x86_64-linux-gnu --enable-shared --enable-static --prefix= --disable-rpath --disable-doxygen-docs --disable-xmms-plugin --disable-cpplibs --without-libiconv-prefix --disable-altivec --disable-3dnow --disable-sse - -## --------- ## -## Platform. ## -## --------- ## - -hostname = vicente-P5K-E -uname -m = x86_64 -uname -r = 3.2.0-47-generic -uname -s = Linux -uname -v = #72-Ubuntu SMP Mon Jun 3 17:53:49 UTC 2013 - -/usr/bin/uname -p = unknown -/bin/uname -X = unknown - -/bin/arch = unknown -/usr/bin/arch -k = unknown -/usr/convex/getsysinfo = unknown -hostinfo = unknown -/bin/machine = unknown -/usr/bin/oslevel = unknown -/bin/universe = unknown - -PATH: /home/vicente/tomato/release/tools -PATH: /home/vicente/tomato/release/tools -PATH: /home/vicente/tomato/release/tools -PATH: /home/vicente/tomato/release/tools -PATH: /opt/brcm/hndtools-mipsel-uclibc/bin -PATH: /opt/brcm/hndtools-mipsel-linux/bin -PATH: /usr/lib/lightdm/lightdm -PATH: /usr/local/sbin -PATH: /usr/local/bin -PATH: /usr/sbin -PATH: /usr/bin -PATH: /sbin -PATH: /bin -PATH: /usr/games - - -## ----------- ## -## Core tests. ## -## ----------- ## - -configure:1569: checking for a BSD-compatible install -configure:1624: result: /usr/bin/install -c -configure:1635: checking whether build environment is sane -configure:1678: result: yes -configure:1711: checking for gawk -configure:1727: found /usr/bin/gawk -configure:1737: result: gawk -configure:1747: checking whether make sets $(MAKE) -configure:1767: result: yes -configure:1846: checking for mipsel-linux-strip -configure:1872: result: mipsel-uclibc-strip -R .note -R .comment -configure:1934: checking whether to enable maintainer-specific portions of Makefiles -configure:1943: result: no -configure:2040: checking build system type -configure:2058: result: x86_64-pc-linux-gnu -configure:2066: checking host system type -configure:2080: result: mipsel-unknown-linux-gnu -configure:2100: checking for style of include used by make -configure:2128: result: GNU -configure:2161: checking for mipsel-linux-gcc -configure:2187: result: mipsel-uclibc-gcc -configure:2469: checking for C compiler version -configure:2472: mipsel-uclibc-gcc --version &5 -mipsel-uclibc-gcc (GCC) 4.2.4 -Copyright (C) 2007 Free Software Foundation, Inc. -This is free software; see the source for copying conditions. There is NO -warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - -configure:2475: $? = 0 -configure:2477: mipsel-uclibc-gcc -v &5 -Using built-in specs. -Target: mipsel-linux-uclibc -Configured with: /home/fedork/tomato/toolchain/build_dir/toolchain-mipsel_gcc4.2.4/gcc-4.2.4/configure --prefix=/opt/brcm/hndtools-mipsel-uclibc-4.2.4 --build=i486-linux-gnu --host=i486-linux-gnu --target=mipsel-linux-uclibc --with-gnu-ld --enable-target-optspace --disable-libgomp --disable-libmudflap --disable-multilib --disable-nls --disable-__cxa_atexit --enable-libssp --enable-languages=c,c++ --enable-shared --enable-threads --enable-tls -Thread model: posix -gcc version 4.2.4 -configure:2480: $? = 0 -configure:2482: mipsel-uclibc-gcc -V &5 -mipsel-uclibc-gcc: '-V' option must have argument -configure:2485: $? = 1 -configure:2508: checking for C compiler default output file name -configure:2511: mipsel-uclibc-gcc -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections conftest.c >&5 -configure:2514: $? = 0 -configure:2560: result: a.out -configure:2565: checking whether the C compiler works -configure:2591: result: yes -configure:2598: checking whether we are cross compiling -configure:2600: result: yes -configure:2603: checking for suffix of executables -configure:2605: mipsel-uclibc-gcc -o conftest -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections conftest.c >&5 -configure:2608: $? = 0 -configure:2633: result: -configure:2639: checking for suffix of object files -configure:2660: mipsel-uclibc-gcc -c -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include conftest.c >&5 -configure:2663: $? = 0 -configure:2685: result: o -configure:2689: checking whether we are using the GNU C compiler -configure:2713: mipsel-uclibc-gcc -c -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include conftest.c >&5 -configure:2719: $? = 0 -configure:2723: test -z - || test ! -s conftest.err -configure:2726: $? = 0 -configure:2729: test -s conftest.o -configure:2732: $? = 0 -configure:2745: result: yes -configure:2751: checking whether mipsel-uclibc-gcc accepts -g -configure:2772: mipsel-uclibc-gcc -c -g -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include conftest.c >&5 -configure:2778: $? = 0 -configure:2782: test -z - || test ! -s conftest.err -configure:2785: $? = 0 -configure:2788: test -s conftest.o -configure:2791: $? = 0 -configure:2802: result: yes -configure:2819: checking for mipsel-uclibc-gcc option to accept ANSI C -configure:2889: mipsel-uclibc-gcc -c -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include conftest.c >&5 -configure:2895: $? = 0 -configure:2899: test -z - || test ! -s conftest.err -configure:2902: $? = 0 -configure:2905: test -s conftest.o -configure:2908: $? = 0 -configure:2926: result: none needed -configure:2944: mipsel-uclibc-gcc -c -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include conftest.c >&5 -conftest.c:2: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'me' -configure:2950: $? = 1 -configure: failed program was: -| #ifndef __cplusplus -| choke me -| #endif -configure:3085: checking dependency style of mipsel-uclibc-gcc -configure:3168: result: gcc3 -configure:3185: checking for a sed that does not truncate output -configure:3239: result: /bin/sed -configure:3242: checking for egrep -configure:3252: result: grep -E -configure:3268: checking for ld used by mipsel-uclibc-gcc -configure:3335: result: mipsel-uclibc-ld -configure:3344: checking if the linker (mipsel-uclibc-ld) is GNU ld -configure:3359: result: yes -configure:3364: checking for mipsel-uclibc-ld option to reload object files -configure:3371: result: -r -configure:3389: checking for BSD-compatible nm -configure:3431: result: mipsel-uclibc-nm -configure:3435: checking whether ln -s works -configure:3439: result: yes -configure:3446: checking how to recognise dependent libraries -configure:3618: result: pass_all -configure:3832: checking how to run the C preprocessor -configure:3867: mipsel-uclibc-gcc -E -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include conftest.c -configure:3873: $? = 0 -configure:3905: mipsel-uclibc-gcc -E -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include conftest.c -conftest.c:11:28: error: ac_nonexistent.h: No such file or directory -configure:3911: $? = 1 -configure: failed program was: -| /* confdefs.h. */ -| -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE "flac" -| #define VERSION "1.2.1" -| /* end confdefs.h. */ -| #include -configure:3950: result: mipsel-uclibc-gcc -E -configure:3974: mipsel-uclibc-gcc -E -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include conftest.c -configure:3980: $? = 0 -configure:4012: mipsel-uclibc-gcc -E -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include conftest.c -conftest.c:11:28: error: ac_nonexistent.h: No such file or directory -configure:4018: $? = 1 -configure: failed program was: -| /* confdefs.h. */ -| -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE "flac" -| #define VERSION "1.2.1" -| /* end confdefs.h. */ -| #include -configure:4062: checking for ANSI C header files -configure:4087: mipsel-uclibc-gcc -c -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include conftest.c >&5 -configure:4093: $? = 0 -configure:4097: test -z - || test ! -s conftest.err -configure:4100: $? = 0 -configure:4103: test -s conftest.o -configure:4106: $? = 0 -configure:4218: result: yes -configure:4242: checking for sys/types.h -configure:4258: mipsel-uclibc-gcc -c -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include conftest.c >&5 -configure:4264: $? = 0 -configure:4268: test -z - || test ! -s conftest.err -configure:4271: $? = 0 -configure:4274: test -s conftest.o -configure:4277: $? = 0 -configure:4288: result: yes -configure:4242: checking for sys/stat.h -configure:4258: mipsel-uclibc-gcc -c -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include conftest.c >&5 -configure:4264: $? = 0 -configure:4268: test -z - || test ! -s conftest.err -configure:4271: $? = 0 -configure:4274: test -s conftest.o -configure:4277: $? = 0 -configure:4288: result: yes -configure:4242: checking for stdlib.h -configure:4258: mipsel-uclibc-gcc -c -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include conftest.c >&5 -configure:4264: $? = 0 -configure:4268: test -z - || test ! -s conftest.err -configure:4271: $? = 0 -configure:4274: test -s conftest.o -configure:4277: $? = 0 -configure:4288: result: yes -configure:4242: checking for string.h -configure:4258: mipsel-uclibc-gcc -c -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include conftest.c >&5 -configure:4264: $? = 0 -configure:4268: test -z - || test ! -s conftest.err -configure:4271: $? = 0 -configure:4274: test -s conftest.o -configure:4277: $? = 0 -configure:4288: result: yes -configure:4242: checking for memory.h -configure:4258: mipsel-uclibc-gcc -c -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include conftest.c >&5 -configure:4264: $? = 0 -configure:4268: test -z - || test ! -s conftest.err -configure:4271: $? = 0 -configure:4274: test -s conftest.o -configure:4277: $? = 0 -configure:4288: result: yes -configure:4242: checking for strings.h -configure:4258: mipsel-uclibc-gcc -c -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include conftest.c >&5 -configure:4264: $? = 0 -configure:4268: test -z - || test ! -s conftest.err -configure:4271: $? = 0 -configure:4274: test -s conftest.o -configure:4277: $? = 0 -configure:4288: result: yes -configure:4242: checking for inttypes.h -configure:4258: mipsel-uclibc-gcc -c -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include conftest.c >&5 -configure:4264: $? = 0 -configure:4268: test -z - || test ! -s conftest.err -configure:4271: $? = 0 -configure:4274: test -s conftest.o -configure:4277: $? = 0 -configure:4288: result: yes -configure:4242: checking for stdint.h -configure:4258: mipsel-uclibc-gcc -c -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include conftest.c >&5 -configure:4264: $? = 0 -configure:4268: test -z - || test ! -s conftest.err -configure:4271: $? = 0 -configure:4274: test -s conftest.o -configure:4277: $? = 0 -configure:4288: result: yes -configure:4242: checking for unistd.h -configure:4258: mipsel-uclibc-gcc -c -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include conftest.c >&5 -configure:4264: $? = 0 -configure:4268: test -z - || test ! -s conftest.err -configure:4271: $? = 0 -configure:4274: test -s conftest.o -configure:4277: $? = 0 -configure:4288: result: yes -configure:4314: checking dlfcn.h usability -configure:4326: mipsel-uclibc-gcc -c -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include conftest.c >&5 -configure:4332: $? = 0 -configure:4336: test -z - || test ! -s conftest.err -configure:4339: $? = 0 -configure:4342: test -s conftest.o -configure:4345: $? = 0 -configure:4355: result: yes -configure:4359: checking dlfcn.h presence -configure:4369: mipsel-uclibc-gcc -E -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include conftest.c -configure:4375: $? = 0 -configure:4395: result: yes -configure:4430: checking for dlfcn.h -configure:4437: result: yes -configure:4460: checking for mipsel-linux-g++ -configure:4476: found /opt/brcm/hndtools-mipsel-uclibc/bin/mipsel-linux-g++ -configure:4486: result: mipsel-linux-g++ -configure:4544: checking for C++ compiler version -configure:4547: mipsel-linux-g++ --version &5 -mipsel-linux-g++ (GCC) 4.2.4 -Copyright (C) 2007 Free Software Foundation, Inc. -This is free software; see the source for copying conditions. There is NO -warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - -configure:4550: $? = 0 -configure:4552: mipsel-linux-g++ -v &5 -Using built-in specs. -Target: mipsel-linux-uclibc -Configured with: /home/fedork/tomato/toolchain/build_dir/toolchain-mipsel_gcc4.2.4/gcc-4.2.4/configure --prefix=/opt/brcm/hndtools-mipsel-uclibc-4.2.4 --build=i486-linux-gnu --host=i486-linux-gnu --target=mipsel-linux-uclibc --with-gnu-ld --enable-target-optspace --disable-libgomp --disable-libmudflap --disable-multilib --disable-nls --disable-__cxa_atexit --enable-libssp --enable-languages=c,c++ --enable-shared --enable-threads --enable-tls -Thread model: posix -gcc version 4.2.4 -configure:4555: $? = 0 -configure:4557: mipsel-linux-g++ -V &5 -mipsel-linux-g++: '-V' option must have argument -configure:4560: $? = 1 -configure:4563: checking whether we are using the GNU C++ compiler -configure:4587: mipsel-linux-g++ -c -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include conftest.cc >&5 -configure:4593: $? = 0 -configure:4597: test -z - || test ! -s conftest.err -configure:4600: $? = 0 -configure:4603: test -s conftest.o -configure:4606: $? = 0 -configure:4619: result: yes -configure:4625: checking whether mipsel-linux-g++ accepts -g -configure:4646: mipsel-linux-g++ -c -g -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include conftest.cc >&5 -configure:4652: $? = 0 -configure:4656: test -z - || test ! -s conftest.err -configure:4659: $? = 0 -configure:4662: test -s conftest.o -configure:4665: $? = 0 -configure:4676: result: yes -configure:4718: mipsel-linux-g++ -c -g -O2 -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include conftest.cc >&5 -configure:4724: $? = 0 -configure:4728: test -z - || test ! -s conftest.err -configure:4731: $? = 0 -configure:4734: test -s conftest.o -configure:4737: $? = 0 -configure:4763: mipsel-linux-g++ -c -g -O2 -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include conftest.cc >&5 -conftest.cc: In function 'int main()': -conftest.cc:26: error: 'exit' was not declared in this scope -configure:4769: $? = 1 -configure: failed program was: -| /* confdefs.h. */ -| -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE "flac" -| #define VERSION "1.2.1" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_DLFCN_H 1 -| /* end confdefs.h. */ -| -| int -| main () -| { -| exit (42); -| ; -| return 0; -| } -configure:4718: mipsel-linux-g++ -c -g -O2 -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include conftest.cc >&5 -conftest.cc:22: error: 'void std::exit(int)' should have been declared inside 'std' -configure:4724: $? = 1 -configure: failed program was: -| /* confdefs.h. */ -| -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE "flac" -| #define VERSION "1.2.1" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_DLFCN_H 1 -| /* end confdefs.h. */ -| extern "C" void std::exit (int) throw (); using std::exit; -| #include -| int -| main () -| { -| exit (42); -| ; -| return 0; -| } -configure:4718: mipsel-linux-g++ -c -g -O2 -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include conftest.cc >&5 -conftest.cc:22: error: 'void std::exit(int)' should have been declared inside 'std' -In file included from conftest.cc:23: -/home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdlib.h:520: error: declaration of 'void std::exit(int) throw ()' throws different exceptions -conftest.cc:22: error: from previous declaration 'void std::exit(int)' -configure:4724: $? = 1 -configure: failed program was: -| /* confdefs.h. */ -| -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE "flac" -| #define VERSION "1.2.1" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_DLFCN_H 1 -| /* end confdefs.h. */ -| extern "C" void std::exit (int); using std::exit; -| #include -| int -| main () -| { -| exit (42); -| ; -| return 0; -| } -configure:4718: mipsel-linux-g++ -c -g -O2 -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include conftest.cc >&5 -configure:4724: $? = 0 -configure:4728: test -z - || test ! -s conftest.err -configure:4731: $? = 0 -configure:4734: test -s conftest.o -configure:4737: $? = 0 -configure:4763: mipsel-linux-g++ -c -g -O2 -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include conftest.cc >&5 -configure:4769: $? = 0 -configure:4773: test -z - || test ! -s conftest.err -configure:4776: $? = 0 -configure:4779: test -s conftest.o -configure:4782: $? = 0 -configure:4807: checking dependency style of mipsel-linux-g++ -configure:4890: result: gcc3 -configure:4917: checking how to run the C++ preprocessor -configure:4948: mipsel-linux-g++ -E -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include conftest.cc -configure:4954: $? = 0 -configure:4986: mipsel-linux-g++ -E -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include conftest.cc -conftest.cc:25:28: error: ac_nonexistent.h: No such file or directory -configure:4992: $? = 1 -configure: failed program was: -| /* confdefs.h. */ -| -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE "flac" -| #define VERSION "1.2.1" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_DLFCN_H 1 -| #ifdef __cplusplus -| extern "C" void exit (int) throw (); -| #endif -| /* end confdefs.h. */ -| #include -configure:5031: result: mipsel-linux-g++ -E -configure:5055: mipsel-linux-g++ -E -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include conftest.cc -configure:5061: $? = 0 -configure:5093: mipsel-linux-g++ -E -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include conftest.cc -conftest.cc:25:28: error: ac_nonexistent.h: No such file or directory -configure:5099: $? = 1 -configure: failed program was: -| /* confdefs.h. */ -| -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE "flac" -| #define VERSION "1.2.1" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_DLFCN_H 1 -| #ifdef __cplusplus -| extern "C" void exit (int) throw (); -| #endif -| /* end confdefs.h. */ -| #include -configure:5154: checking for mipsel-linux-g77 -configure:5183: result: no -configure:5154: checking for mipsel-linux-f77 -configure:5183: result: no -configure:5154: checking for mipsel-linux-xlf -configure:5183: result: no -configure:5154: checking for mipsel-linux-frt -configure:5183: result: no -configure:5154: checking for mipsel-linux-pgf77 -configure:5183: result: no -configure:5154: checking for mipsel-linux-fort77 -configure:5183: result: no -configure:5154: checking for mipsel-linux-fl32 -configure:5183: result: no -configure:5154: checking for mipsel-linux-af77 -configure:5183: result: no -configure:5154: checking for mipsel-linux-f90 -configure:5183: result: no -configure:5154: checking for mipsel-linux-xlf90 -configure:5183: result: no -configure:5154: checking for mipsel-linux-pgf90 -configure:5183: result: no -configure:5154: checking for mipsel-linux-epcf90 -configure:5183: result: no -configure:5154: checking for mipsel-linux-f95 -configure:5183: result: no -configure:5154: checking for mipsel-linux-fort -configure:5183: result: no -configure:5154: checking for mipsel-linux-xlf95 -configure:5183: result: no -configure:5154: checking for mipsel-linux-ifc -configure:5183: result: no -configure:5154: checking for mipsel-linux-efc -configure:5183: result: no -configure:5154: checking for mipsel-linux-pgf95 -configure:5183: result: no -configure:5154: checking for mipsel-linux-lf95 -configure:5183: result: no -configure:5154: checking for mipsel-linux-gfortran -configure:5183: result: no -configure:5196: checking for g77 -configure:5225: result: no -configure:5196: checking for f77 -configure:5225: result: no -configure:5196: checking for xlf -configure:5225: result: no -configure:5196: checking for frt -configure:5225: result: no -configure:5196: checking for pgf77 -configure:5225: result: no -configure:5196: checking for fort77 -configure:5225: result: no -configure:5196: checking for fl32 -configure:5225: result: no -configure:5196: checking for af77 -configure:5225: result: no -configure:5196: checking for f90 -configure:5225: result: no -configure:5196: checking for xlf90 -configure:5225: result: no -configure:5196: checking for pgf90 -configure:5225: result: no -configure:5196: checking for epcf90 -configure:5225: result: no -configure:5196: checking for f95 -configure:5225: result: no -configure:5196: checking for fort -configure:5225: result: no -configure:5196: checking for xlf95 -configure:5225: result: no -configure:5196: checking for ifc -configure:5225: result: no -configure:5196: checking for efc -configure:5225: result: no -configure:5196: checking for pgf95 -configure:5225: result: no -configure:5196: checking for lf95 -configure:5225: result: no -configure:5196: checking for gfortran -configure:5225: result: no -configure:5237: checking for Fortran 77 compiler version -configure:5240: --version &5 -./configure: line 5241: --version: command not found -configure:5243: $? = 127 -configure:5245: -v &5 -./configure: line 5246: -v: command not found -configure:5248: $? = 127 -configure:5250: -V &5 -./configure: line 5251: -V: command not found -configure:5253: $? = 127 -configure:5261: checking whether we are using the GNU Fortran 77 compiler -configure:5275: -c conftest.F >&5 -./configure: line 5276: -c: command not found -configure:5281: $? = 127 -configure: failed program was: -| program main -| #ifndef __GNUC__ -| choke me -| #endif -| -| end -configure:5307: result: no -configure:5313: checking whether accepts -g -configure:5325: -c -g conftest.f >&5 -./configure: line 5326: -c: command not found -configure:5331: $? = 127 -configure: failed program was: -| program main -| -| end -configure:5356: result: no -configure:5386: checking the maximum length of command line arguments -configure:5478: result: 32768 -configure:5489: checking command to parse mipsel-uclibc-nm output from mipsel-uclibc-gcc object -configure:5585: mipsel-uclibc-gcc -c -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include conftest.c >&5 -configure:5588: $? = 0 -configure:5592: mipsel-uclibc-nm conftest.o \| sed -n -e 's/^.*[ ]\([ABCDGIRSTW][ABCDGIRSTW]*\)[ ][ ]*\([_A-Za-z][_A-Za-z0-9]*\)$/\1 \2 \2/p' \> conftest.nm -configure:5595: $? = 0 -configure:5647: mipsel-uclibc-gcc -o conftest -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections conftest.c conftstm.o >&5 -configure:5650: $? = 0 -configure:5688: result: ok -configure:5692: checking for objdir -configure:5707: result: .libs -configure:5759: checking for mipsel-linux-ar -configure:5785: result: mipsel-uclibc-ar -configure:5839: checking for mipsel-linux-ranlib -configure:5865: result: mipsel-uclibc-ranlib -configure:5919: checking for mipsel-linux-strip -configure:5945: result: mipsel-uclibc-strip -R .note -R .comment -configure:6271: checking if mipsel-uclibc-gcc static flag works -configure:6299: result: yes -configure:6317: checking if mipsel-uclibc-gcc supports -fno-rtti -fno-exceptions -configure:6335: mipsel-uclibc-gcc -c -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include -fno-rtti -fno-exceptions conftest.c >&5 -cc1: warning: command line option "-fno-rtti" is valid for C++/ObjC++ but not for C -configure:6339: $? = 0 -configure:6352: result: no -configure:6367: checking for mipsel-uclibc-gcc option to produce PIC -configure:6571: result: -fPIC -configure:6579: checking if mipsel-uclibc-gcc PIC flag -fPIC works -configure:6597: mipsel-uclibc-gcc -c -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include -fPIC -DPIC conftest.c >&5 -configure:6601: $? = 0 -configure:6614: result: yes -configure:6638: checking if mipsel-uclibc-gcc supports -c -o file.o -configure:6659: mipsel-uclibc-gcc -c -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include -o out/conftest2.o conftest.c >&5 -configure:6663: $? = 0 -configure:6685: result: yes -configure:6711: checking whether the mipsel-uclibc-gcc linker (mipsel-uclibc-ld) supports shared libraries -configure:7606: result: yes -configure:7632: checking whether -lc should be explicitly linked in -configure:7637: mipsel-uclibc-gcc -c -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include conftest.c >&5 -configure:7640: $? = 0 -configure:7654: mipsel-uclibc-gcc -shared conftest.o -v -Wl,-soname -Wl,conftest -o conftest 2\>\&1 \| grep -lc \>/dev/null 2\>\&1 -configure:7657: $? = 0 -configure:7669: result: no -configure:7677: checking dynamic linker characteristics -configure:8240: result: GNU/Linux ld.so -configure:8244: checking how to hardcode library paths into programs -configure:8269: result: immediate -configure:8283: checking whether stripping libraries is possible -configure:8288: result: yes -configure:9118: checking if libtool supports shared libraries -configure:9120: result: yes -configure:9123: checking whether to build shared libraries -configure:9144: result: yes -configure:9147: checking whether to build static libraries -configure:9151: result: yes -configure:9243: creating libtool -configure:9821: checking for ld used by mipsel-linux-g++ -configure:9888: result: mipsel-uclibc-ld -configure:9897: checking if the linker (mipsel-uclibc-ld) is GNU ld -configure:9912: result: yes -configure:9963: checking whether the mipsel-linux-g++ linker (mipsel-uclibc-ld) supports shared libraries -configure:10850: result: yes -configure:10868: mipsel-linux-g++ -c -g -O2 -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include conftest.cc >&5 -configure:10871: $? = 0 -configure:10967: checking for mipsel-linux-g++ option to produce PIC -configure:11235: result: -fPIC -configure:11243: checking if mipsel-linux-g++ PIC flag -fPIC works -configure:11261: mipsel-linux-g++ -c -g -O2 -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include -fPIC -DPIC conftest.cc >&5 -configure:11265: $? = 0 -configure:11278: result: yes -configure:11302: checking if mipsel-linux-g++ supports -c -o file.o -configure:11323: mipsel-linux-g++ -c -g -O2 -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include -o out/conftest2.o conftest.cc >&5 -configure:11327: $? = 0 -configure:11349: result: yes -configure:11375: checking whether the mipsel-linux-g++ linker (mipsel-uclibc-ld) supports shared libraries -configure:11400: result: yes -configure:11471: checking dynamic linker characteristics -configure:12034: result: GNU/Linux ld.so -configure:12038: checking how to hardcode library paths into programs -configure:12063: result: immediate -configure:12077: checking whether stripping libraries is possible -configure:12082: result: yes -configure:19643: checking for mipsel-linux-g++ -configure:19669: result: mipsel-linux-g++ -configure:19727: checking for C++ compiler version -configure:19730: mipsel-linux-g++ --version &5 -mipsel-linux-g++ (GCC) 4.2.4 -Copyright (C) 2007 Free Software Foundation, Inc. -This is free software; see the source for copying conditions. There is NO -warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - -configure:19733: $? = 0 -configure:19735: mipsel-linux-g++ -v &5 -Using built-in specs. -Target: mipsel-linux-uclibc -Configured with: /home/fedork/tomato/toolchain/build_dir/toolchain-mipsel_gcc4.2.4/gcc-4.2.4/configure --prefix=/opt/brcm/hndtools-mipsel-uclibc-4.2.4 --build=i486-linux-gnu --host=i486-linux-gnu --target=mipsel-linux-uclibc --with-gnu-ld --enable-target-optspace --disable-libgomp --disable-libmudflap --disable-multilib --disable-nls --disable-__cxa_atexit --enable-libssp --enable-languages=c,c++ --enable-shared --enable-threads --enable-tls -Thread model: posix -gcc version 4.2.4 -configure:19738: $? = 0 -configure:19740: mipsel-linux-g++ -V &5 -mipsel-linux-g++: '-V' option must have argument -configure:19743: $? = 1 -configure:19746: checking whether we are using the GNU C++ compiler -configure:19802: result: yes -configure:19808: checking whether mipsel-linux-g++ accepts -g -configure:19859: result: yes -configure:19901: mipsel-linux-g++ -c -g -O2 -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include conftest.cc >&5 -configure:19907: $? = 0 -configure:19911: test -z - || test ! -s conftest.err -configure:19914: $? = 0 -configure:19917: test -s conftest.o -configure:19920: $? = 0 -configure:19946: mipsel-linux-g++ -c -g -O2 -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include conftest.cc >&5 -configure:19952: $? = 0 -configure:19956: test -z - || test ! -s conftest.err -configure:19959: $? = 0 -configure:19962: test -s conftest.o -configure:19965: $? = 0 -configure:19990: checking dependency style of mipsel-linux-g++ -configure:20073: result: gcc3 -configure:20090: checking whether make sets $(MAKE) -configure:20110: result: yes -configure:20127: checking for special C compiler options needed for large files -configure:20226: result: no -configure:20232: checking for _FILE_OFFSET_BITS value needed for large files -configure:20263: mipsel-uclibc-gcc -c -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include conftest.c >&5 -conftest.c:31: warning: left shift count >= width of type -conftest.c:31: warning: left shift count >= width of type -conftest.c:33: error: size of array 'off_t_is_large' is negative -configure:20269: $? = 1 -configure: failed program was: -| /* confdefs.h. */ -| -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE "flac" -| #define VERSION "1.2.1" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_DLFCN_H 1 -| #ifdef __cplusplus -| extern "C" void exit (int) throw (); -| #endif -| /* end confdefs.h. */ -| #include -| /* Check that off_t can represent 2**63 - 1 correctly. -| We can't simply define LARGE_OFF_T to be 9223372036854775807, -| since some C++ compilers masquerading as C compilers -| incorrectly reject 9223372036854775807. */ -| #define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62)) -| int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721 -| && LARGE_OFF_T % 2147483647 == 1) -| ? 1 : -1]; -| int -| main () -| { -| -| ; -| return 0; -| } -configure:20316: mipsel-uclibc-gcc -c -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include conftest.c >&5 -configure:20322: $? = 0 -configure:20326: test -z - || test ! -s conftest.err -configure:20329: $? = 0 -configure:20332: test -s conftest.o -configure:20335: $? = 0 -configure:20347: result: 64 -configure:20357: checking for _LARGE_FILES value needed for large files -configure:20388: mipsel-uclibc-gcc -c -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include conftest.c >&5 -configure:20394: $? = 0 -configure:20398: test -z - || test ! -s conftest.err -configure:20401: $? = 0 -configure:20404: test -s conftest.o -configure:20407: $? = 0 -configure:20472: result: no -configure:20484: checking for _LARGEFILE_SOURCE value needed for large files -configure:20507: mipsel-uclibc-gcc -c -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include conftest.c >&5 -conftest.c: In function 'main': -conftest.c:30: error: 'fseeko' undeclared (first use in this function) -conftest.c:30: error: (Each undeclared identifier is reported only once -conftest.c:30: error: for each function it appears in.) -configure:20513: $? = 1 -configure: failed program was: -| /* confdefs.h. */ -| -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE "flac" -| #define VERSION "1.2.1" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_DLFCN_H 1 -| #ifdef __cplusplus -| extern "C" void exit (int) throw (); -| #endif -| #define _FILE_OFFSET_BITS 64 -| /* end confdefs.h. */ -| #include -| int -| main () -| { -| return !fseeko; -| ; -| return 0; -| } -configure:20552: mipsel-uclibc-gcc -c -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include conftest.c >&5 -configure:20558: $? = 0 -configure:20562: test -z - || test ! -s conftest.err -configure:20565: $? = 0 -configure:20568: test -s conftest.o -configure:20571: $? = 0 -configure:20583: result: 1 -configure:20597: checking for fseeko -configure:20618: mipsel-uclibc-gcc -o conftest -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections conftest.c >&5 -configure:20624: $? = 0 -configure:20628: test -z - || test ! -s conftest.err -configure:20631: $? = 0 -configure:20634: test -s conftest -configure:20637: $? = 0 -configure:20649: result: yes -configure:20660: checking for void* -configure:20684: mipsel-uclibc-gcc -c -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include conftest.c >&5 -configure:20690: $? = 0 -configure:20694: test -z - || test ! -s conftest.err -configure:20697: $? = 0 -configure:20700: test -s conftest.o -configure:20703: $? = 0 -configure:20714: result: yes -configure:20717: checking size of void* -configure:20747: mipsel-uclibc-gcc -c -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include conftest.c >&5 -configure:20753: $? = 0 -configure:20757: test -z - || test ! -s conftest.err -configure:20760: $? = 0 -configure:20763: test -s conftest.o -configure:20766: $? = 0 -configure:20788: mipsel-uclibc-gcc -c -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include conftest.c >&5 -conftest.c: In function 'main': -conftest.c:65: error: size of array 'test_array' is negative -configure:20794: $? = 1 -configure: failed program was: -| /* confdefs.h. */ -| -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE "flac" -| #define VERSION "1.2.1" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_DLFCN_H 1 -| #ifdef __cplusplus -| extern "C" void exit (int) throw (); -| #endif -| #define _FILE_OFFSET_BITS 64 -| #define _LARGEFILE_SOURCE 1 -| #define HAVE_FSEEKO 1 -| /* end confdefs.h. */ -| #include -| #if HAVE_SYS_TYPES_H -| # include -| #endif -| #if HAVE_SYS_STAT_H -| # include -| #endif -| #if STDC_HEADERS -| # include -| # include -| #else -| # if HAVE_STDLIB_H -| # include -| # endif -| #endif -| #if HAVE_STRING_H -| # if !STDC_HEADERS && HAVE_MEMORY_H -| # include -| # endif -| # include -| #endif -| #if HAVE_STRINGS_H -| # include -| #endif -| #if HAVE_INTTYPES_H -| # include -| #else -| # if HAVE_STDINT_H -| # include -| # endif -| #endif -| #if HAVE_UNISTD_H -| # include -| #endif -| int -| main () -| { -| static int test_array [1 - 2 * !(((long) (sizeof (void*))) <= 0)]; -| test_array [0] = 0 -| -| ; -| return 0; -| } -configure:20788: mipsel-uclibc-gcc -c -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include conftest.c >&5 -conftest.c: In function 'main': -conftest.c:65: error: size of array 'test_array' is negative -configure:20794: $? = 1 -configure: failed program was: -| /* confdefs.h. */ -| -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE "flac" -| #define VERSION "1.2.1" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_DLFCN_H 1 -| #ifdef __cplusplus -| extern "C" void exit (int) throw (); -| #endif -| #define _FILE_OFFSET_BITS 64 -| #define _LARGEFILE_SOURCE 1 -| #define HAVE_FSEEKO 1 -| /* end confdefs.h. */ -| #include -| #if HAVE_SYS_TYPES_H -| # include -| #endif -| #if HAVE_SYS_STAT_H -| # include -| #endif -| #if STDC_HEADERS -| # include -| # include -| #else -| # if HAVE_STDLIB_H -| # include -| # endif -| #endif -| #if HAVE_STRING_H -| # if !STDC_HEADERS && HAVE_MEMORY_H -| # include -| # endif -| # include -| #endif -| #if HAVE_STRINGS_H -| # include -| #endif -| #if HAVE_INTTYPES_H -| # include -| #else -| # if HAVE_STDINT_H -| # include -| # endif -| #endif -| #if HAVE_UNISTD_H -| # include -| #endif -| int -| main () -| { -| static int test_array [1 - 2 * !(((long) (sizeof (void*))) <= 1)]; -| test_array [0] = 0 -| -| ; -| return 0; -| } -configure:20788: mipsel-uclibc-gcc -c -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include conftest.c >&5 -conftest.c: In function 'main': -conftest.c:65: error: size of array 'test_array' is negative -configure:20794: $? = 1 -configure: failed program was: -| /* confdefs.h. */ -| -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE "flac" -| #define VERSION "1.2.1" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_DLFCN_H 1 -| #ifdef __cplusplus -| extern "C" void exit (int) throw (); -| #endif -| #define _FILE_OFFSET_BITS 64 -| #define _LARGEFILE_SOURCE 1 -| #define HAVE_FSEEKO 1 -| /* end confdefs.h. */ -| #include -| #if HAVE_SYS_TYPES_H -| # include -| #endif -| #if HAVE_SYS_STAT_H -| # include -| #endif -| #if STDC_HEADERS -| # include -| # include -| #else -| # if HAVE_STDLIB_H -| # include -| # endif -| #endif -| #if HAVE_STRING_H -| # if !STDC_HEADERS && HAVE_MEMORY_H -| # include -| # endif -| # include -| #endif -| #if HAVE_STRINGS_H -| # include -| #endif -| #if HAVE_INTTYPES_H -| # include -| #else -| # if HAVE_STDINT_H -| # include -| # endif -| #endif -| #if HAVE_UNISTD_H -| # include -| #endif -| int -| main () -| { -| static int test_array [1 - 2 * !(((long) (sizeof (void*))) <= 3)]; -| test_array [0] = 0 -| -| ; -| return 0; -| } -configure:20788: mipsel-uclibc-gcc -c -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include conftest.c >&5 -configure:20794: $? = 0 -configure:20798: test -z - || test ! -s conftest.err -configure:20801: $? = 0 -configure:20804: test -s conftest.o -configure:20807: $? = 0 -configure:20951: mipsel-uclibc-gcc -c -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include conftest.c >&5 -configure:20957: $? = 0 -configure:20961: test -z - || test ! -s conftest.err -configure:20964: $? = 0 -configure:20967: test -s conftest.o -configure:20970: $? = 0 -configure:20951: mipsel-uclibc-gcc -c -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include conftest.c >&5 -configure:20957: $? = 0 -configure:20961: test -z - || test ! -s conftest.err -configure:20964: $? = 0 -configure:20967: test -s conftest.o -configure:20970: $? = 0 -configure:21067: result: 4 -configure:21079: checking whether byte ordering is bigendian -configure:21106: mipsel-uclibc-gcc -c -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include conftest.c >&5 -configure:21112: $? = 0 -configure:21116: test -z - || test ! -s conftest.err -configure:21119: $? = 0 -configure:21122: test -s conftest.o -configure:21125: $? = 0 -configure:21149: mipsel-uclibc-gcc -c -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include conftest.c >&5 -conftest.c: In function 'main': -conftest.c:36: error: 'not' undeclared (first use in this function) -conftest.c:36: error: (Each undeclared identifier is reported only once -conftest.c:36: error: for each function it appears in.) -conftest.c:36: error: expected ';' before 'big' -configure:21155: $? = 1 -configure: failed program was: -| /* confdefs.h. */ -| -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE "flac" -| #define VERSION "1.2.1" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_DLFCN_H 1 -| #ifdef __cplusplus -| extern "C" void exit (int) throw (); -| #endif -| #define _FILE_OFFSET_BITS 64 -| #define _LARGEFILE_SOURCE 1 -| #define HAVE_FSEEKO 1 -| #define SIZEOF_VOIDP 4 -| /* end confdefs.h. */ -| #include -| #include -| -| int -| main () -| { -| #if BYTE_ORDER != BIG_ENDIAN -| not big endian -| #endif -| -| ; -| return 0; -| } -configure:21290: result: no -configure:21310: checking for socklen_t -configure:21334: mipsel-uclibc-gcc -c -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include conftest.c >&5 -configure:21340: $? = 0 -configure:21344: test -z - || test ! -s conftest.err -configure:21347: $? = 0 -configure:21350: test -s conftest.o -configure:21353: $? = 0 -configure:21364: result: yes -configure:21380: checking for getopt_long -configure:21437: mipsel-uclibc-gcc -o conftest -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections conftest.c >&5 -configure:21443: $? = 0 -configure:21447: test -z - || test ! -s conftest.err -configure:21450: $? = 0 -configure:21453: test -s conftest -configure:21456: $? = 0 -configure:21468: result: yes -configure:22222: checking for Ogg -configure:22283: result: yes -configure:22427: checking for ld used by GCC -configure:22491: result: mipsel-uclibc-ld -configure:22500: checking if the linker (mipsel-uclibc-ld) is GNU ld -configure:22513: result: yes -configure:22520: checking for shared library run path origin -configure:22533: result: done -configure:22963: checking for iconv -configure:22990: mipsel-uclibc-gcc -o conftest -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections conftest.c >&5 -conftest.c:33:19: error: iconv.h: No such file or directory -conftest.c: In function 'main': -conftest.c:37: error: 'iconv_t' undeclared (first use in this function) -conftest.c:37: error: (Each undeclared identifier is reported only once -conftest.c:37: error: for each function it appears in.) -conftest.c:37: error: expected ';' before 'cd' -conftest.c:38: error: 'cd' undeclared (first use in this function) -configure:22996: $? = 1 -configure: failed program was: -| /* confdefs.h. */ -| -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE "flac" -| #define VERSION "1.2.1" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_DLFCN_H 1 -| #ifdef __cplusplus -| extern "C" void exit (int) throw (); -| #endif -| #define _FILE_OFFSET_BITS 64 -| #define _LARGEFILE_SOURCE 1 -| #define HAVE_FSEEKO 1 -| #define SIZEOF_VOIDP 4 -| #define HAVE_SOCKLEN_T 1 -| #define HAVE_GETOPT_LONG 1 -| #define FLAC__HAS_OGG 1 -| /* end confdefs.h. */ -| #include -| #include -| int -| main () -| { -| iconv_t cd = iconv_open("",""); -| iconv(cd,NULL,NULL,NULL,NULL); -| iconv_close(cd); -| ; -| return 0; -| } -configure:23041: mipsel-uclibc-gcc -o conftest -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections conftest.c -liconv >&5 -conftest.c:33:19: error: iconv.h: No such file or directory -conftest.c: In function 'main': -conftest.c:37: error: 'iconv_t' undeclared (first use in this function) -conftest.c:37: error: (Each undeclared identifier is reported only once -conftest.c:37: error: for each function it appears in.) -conftest.c:37: error: expected ';' before 'cd' -conftest.c:38: error: 'cd' undeclared (first use in this function) -configure:23047: $? = 1 -configure: failed program was: -| /* confdefs.h. */ -| -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE "flac" -| #define VERSION "1.2.1" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_DLFCN_H 1 -| #ifdef __cplusplus -| extern "C" void exit (int) throw (); -| #endif -| #define _FILE_OFFSET_BITS 64 -| #define _LARGEFILE_SOURCE 1 -| #define HAVE_FSEEKO 1 -| #define SIZEOF_VOIDP 4 -| #define HAVE_SOCKLEN_T 1 -| #define HAVE_GETOPT_LONG 1 -| #define FLAC__HAS_OGG 1 -| /* end confdefs.h. */ -| #include -| #include -| int -| main () -| { -| iconv_t cd = iconv_open("",""); -| iconv(cd,NULL,NULL,NULL,NULL); -| iconv_close(cd); -| ; -| return 0; -| } -configure:23075: result: no, consider installing GNU libiconv -configure:23177: checking for nl_langinfo and CODESET -configure:23198: mipsel-uclibc-gcc -o conftest -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections conftest.c >&5 -configure:23204: $? = 0 -configure:23208: test -z - || test ! -s conftest.err -configure:23211: $? = 0 -configure:23214: test -s conftest -configure:23217: $? = 0 -configure:23230: result: yes -configure:23245: checking for docbook-to-man -configure:23274: result: no -configure:23245: checking for docbook2man -configure:23274: result: no -configure:23305: checking for nasm -configure:23334: result: no -configure:23365: checking for as -configure:23391: result: mipsel-uclibc-as -configure:23406: checking for gas -configure:23435: result: no -configure:23798: creating ./config.status - -## ---------------------- ## -## Running config.status. ## -## ---------------------- ## - -This file was extended by config.status, which was -generated by GNU Autoconf 2.59. Invocation command line was - - CONFIG_FILES = - CONFIG_HEADERS = - CONFIG_LINKS = - CONFIG_COMMANDS = - $ ./config.status - -on vicente-P5K-E - -config.status:858: creating Makefile -config.status:858: creating src/Makefile -config.status:858: creating src/libFLAC/Makefile -config.status:858: creating src/libFLAC/flac.pc -config.status:858: creating src/libFLAC/ia32/Makefile -config.status:858: creating src/libFLAC/ppc/Makefile -config.status:858: creating src/libFLAC/ppc/as/Makefile -config.status:858: creating src/libFLAC/ppc/gas/Makefile -config.status:858: creating src/libFLAC/include/Makefile -config.status:858: creating src/libFLAC/include/private/Makefile -config.status:858: creating src/libFLAC/include/protected/Makefile -config.status:858: creating src/libFLAC++/Makefile -config.status:858: creating src/libFLAC++/flac++.pc -config.status:858: creating src/flac/Makefile -config.status:858: creating src/metaflac/Makefile -config.status:858: creating src/monkeys_audio_utilities/Makefile -config.status:858: creating src/monkeys_audio_utilities/flac_mac/Makefile -config.status:858: creating src/monkeys_audio_utilities/flac_ren/Makefile -config.status:858: creating src/plugin_common/Makefile -config.status:858: creating src/plugin_winamp2/Makefile -config.status:858: creating src/plugin_winamp2/include/Makefile -config.status:858: creating src/plugin_winamp2/include/winamp2/Makefile -config.status:858: creating src/plugin_xmms/Makefile -config.status:858: creating src/share/Makefile -config.status:858: creating src/share/getopt/Makefile -config.status:858: creating src/share/grabbag/Makefile -config.status:858: creating src/share/replaygain_analysis/Makefile -config.status:858: creating src/share/replaygain_synthesis/Makefile -config.status:858: creating src/share/replaygain_synthesis/include/Makefile -config.status:858: creating src/share/replaygain_synthesis/include/private/Makefile -config.status:858: creating src/share/utf8/Makefile -config.status:858: creating src/test_grabbag/Makefile -config.status:858: creating src/test_grabbag/cuesheet/Makefile -config.status:858: creating src/test_grabbag/picture/Makefile -config.status:858: creating src/test_libs_common/Makefile -config.status:858: creating src/test_libFLAC/Makefile -config.status:858: creating src/test_libFLAC++/Makefile -config.status:858: creating src/test_seeking/Makefile -config.status:858: creating src/test_streams/Makefile -config.status:858: creating examples/Makefile -config.status:858: creating examples/c/Makefile -config.status:858: creating examples/c/decode/Makefile -config.status:858: creating examples/c/decode/file/Makefile -config.status:858: creating examples/c/encode/Makefile -config.status:858: creating examples/c/encode/file/Makefile -config.status:858: creating examples/cpp/Makefile -config.status:858: creating examples/cpp/decode/Makefile -config.status:858: creating examples/cpp/decode/file/Makefile -config.status:858: creating examples/cpp/encode/Makefile -config.status:858: creating examples/cpp/encode/file/Makefile -config.status:858: creating include/Makefile -config.status:858: creating include/FLAC/Makefile -config.status:858: creating include/FLAC++/Makefile -config.status:858: creating include/share/Makefile -config.status:858: creating include/share/grabbag/Makefile -config.status:858: creating include/test_libs_common/Makefile -config.status:858: creating doc/Makefile -config.status:858: creating doc/html/Makefile -config.status:858: creating doc/html/images/Makefile -config.status:858: creating doc/html/images/hw/Makefile -config.status:858: creating doc/html/ru/Makefile -config.status:858: creating m4/Makefile -config.status:858: creating man/Makefile -config.status:858: creating test/Makefile -config.status:858: creating test/cuesheets/Makefile -config.status:858: creating test/flac-to-flac-metadata-test-files/Makefile -config.status:858: creating test/metaflac-test-files/Makefile -config.status:858: creating test/pictures/Makefile -config.status:858: creating build/Makefile -config.status:858: creating obj/Makefile -config.status:858: creating obj/debug/Makefile -config.status:858: creating obj/debug/bin/Makefile -config.status:858: creating obj/debug/lib/Makefile -config.status:858: creating obj/release/Makefile -config.status:858: creating obj/release/bin/Makefile -config.status:858: creating obj/release/lib/Makefile -config.status:962: creating config.h -config.status:1088: config.h is unchanged -config.status:1268: executing depfiles commands - -## ---------------- ## -## Cache variables. ## -## ---------------- ## - -ac_cv_build=x86_64-pc-linux-gnu -ac_cv_build_alias=x86_64-linux-gnu -ac_cv_c_bigendian=no -ac_cv_c_compiler_gnu=yes -ac_cv_cxx_compiler_gnu=yes -ac_cv_env_CC_set=set -ac_cv_env_CC_value=mipsel-uclibc-gcc -ac_cv_env_CFLAGS_set=set -ac_cv_env_CFLAGS_value='-Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections' -ac_cv_env_CPPFLAGS_set=set -ac_cv_env_CPPFLAGS_value='-I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include' -ac_cv_env_CPP_set= -ac_cv_env_CPP_value= -ac_cv_env_CXXCPP_set= -ac_cv_env_CXXCPP_value= -ac_cv_env_CXXFLAGS_set= -ac_cv_env_CXXFLAGS_value= -ac_cv_env_CXX_set= -ac_cv_env_CXX_value= -ac_cv_env_F77_set= -ac_cv_env_F77_value= -ac_cv_env_FFLAGS_set= -ac_cv_env_FFLAGS_value= -ac_cv_env_LDFLAGS_set=set -ac_cv_env_LDFLAGS_value='-L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections' -ac_cv_env_build_alias_set=set -ac_cv_env_build_alias_value=x86_64-linux-gnu -ac_cv_env_host_alias_set=set -ac_cv_env_host_alias_value=mipsel-linux -ac_cv_env_target_alias_set= -ac_cv_env_target_alias_value= -ac_cv_exeext= -ac_cv_f77_compiler_gnu=no -ac_cv_func_fseeko=yes -ac_cv_func_getopt_long=yes -ac_cv_func_malloc_0_nonnull=yes -ac_cv_header_dlfcn_h=yes -ac_cv_header_inttypes_h=yes -ac_cv_header_memory_h=yes -ac_cv_header_stdc=yes -ac_cv_header_stdint_h=yes -ac_cv_header_stdlib_h=yes -ac_cv_header_string_h=yes -ac_cv_header_strings_h=yes -ac_cv_header_sys_stat_h=yes -ac_cv_header_sys_types_h=yes -ac_cv_header_unistd_h=yes -ac_cv_host=mipsel-unknown-linux-gnu -ac_cv_host_alias=mipsel-linux -ac_cv_objext=o -ac_cv_path_install='/usr/bin/install -c' -ac_cv_prog_AR=mipsel-uclibc-ar -ac_cv_prog_AS=mipsel-uclibc-as -ac_cv_prog_AWK=gawk -ac_cv_prog_CC=mipsel-uclibc-gcc -ac_cv_prog_CPP='mipsel-uclibc-gcc -E' -ac_cv_prog_CXX=mipsel-linux-g++ -ac_cv_prog_CXXCPP='mipsel-linux-g++ -E' -ac_cv_prog_RANLIB=mipsel-uclibc-ranlib -ac_cv_prog_STRIP='mipsel-uclibc-strip -R .note -R .comment' -ac_cv_prog_cc_g=yes -ac_cv_prog_cc_stdc= -ac_cv_prog_cxx_g=yes -ac_cv_prog_egrep='grep -E' -ac_cv_prog_f77_g=no -ac_cv_prog_make_make_set=yes -ac_cv_sizeof_voidp=4 -ac_cv_sys_file_offset_bits=64 -ac_cv_sys_large_files=no -ac_cv_sys_largefile_CC=no -ac_cv_sys_largefile_source=1 -ac_cv_type_socklen_t=yes -ac_cv_type_voidp=yes -acl_cv_hardcode_direct=no -acl_cv_hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' -acl_cv_hardcode_libdir_separator= -acl_cv_hardcode_minus_L=no -acl_cv_libext=a -acl_cv_path_LD=mipsel-uclibc-ld -acl_cv_prog_gnu_ld=yes -acl_cv_rpath=done -acl_cv_shlibext=so -acl_cv_wl=-Wl, -am_cv_CC_dependencies_compiler_type=gcc3 -am_cv_CXX_dependencies_compiler_type=gcc3 -am_cv_func_iconv='no, consider installing GNU libiconv' -am_cv_langinfo_codeset=yes -am_cv_lib_iconv=no -lt_cv_deplibs_check_method=pass_all -lt_cv_file_magic_cmd='$MAGIC_CMD' -lt_cv_file_magic_test_file= -lt_cv_ld_reload_flag=-r -lt_cv_objdir=.libs -lt_cv_path_LD=mipsel-uclibc-ld -lt_cv_path_LDCXX=mipsel-uclibc-ld -lt_cv_path_NM=mipsel-uclibc-nm -lt_cv_path_SED=/bin/sed -lt_cv_prog_compiler_c_o=yes -lt_cv_prog_compiler_c_o_CXX=yes -lt_cv_prog_compiler_rtti_exceptions=no -lt_cv_prog_gnu_ld=yes -lt_cv_prog_gnu_ldcxx=yes -lt_cv_sys_global_symbol_pipe='sed -n -e '\''s/^.*[ ]\([ABCDGIRSTW][ABCDGIRSTW]*\)[ ][ ]*\([_A-Za-z][_A-Za-z0-9]*\)$/\1 \2 \2/p'\''' -lt_cv_sys_global_symbol_to_c_name_address='sed -n -e '\''s/^: \([^ ]*\) $/ {\"\1\", (lt_ptr) 0},/p'\'' -e '\''s/^[BCDEGRST] \([^ ]*\) \([^ ]*\)$/ {"\2", (lt_ptr) \&\2},/p'\''' -lt_cv_sys_global_symbol_to_cdecl='sed -n -e '\''s/^. .* \(.*\)$/extern int \1;/p'\''' -lt_cv_sys_max_cmd_len=32768 -lt_lt_cv_prog_compiler_c_o='"yes"' -lt_lt_cv_prog_compiler_c_o_CXX='"yes"' -lt_lt_cv_sys_global_symbol_pipe='"sed -n -e '\''s/^.*[ ]\\([ABCDGIRSTW][ABCDGIRSTW]*\\)[ ][ ]*\\([_A-Za-z][_A-Za-z0-9]*\\)\$/\\1 \\2 \\2/p'\''"' -lt_lt_cv_sys_global_symbol_to_c_name_address='"sed -n -e '\''s/^: \\([^ ]*\\) \$/ {\\\"\\1\\\", (lt_ptr) 0},/p'\'' -e '\''s/^[BCDEGRST] \\([^ ]*\\) \\([^ ]*\\)\$/ {\"\\2\", (lt_ptr) \\&\\2},/p'\''"' -lt_lt_cv_sys_global_symbol_to_cdecl='"sed -n -e '\''s/^. .* \\(.*\\)\$/extern int \\1;/p'\''"' - -## ----------------- ## -## Output variables. ## -## ----------------- ## - -ACLOCAL='${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7' -ACLOCAL_AMFLAGS='-I m4' -AMDEPBACKSLASH='\' -AMDEP_FALSE='#' -AMDEP_TRUE='' -AMTAR='${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar' -AR='mipsel-uclibc-ar' -AS='gas' -AUTOCONF='${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf' -AUTOHEADER='${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader' -AUTOMAKE='${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7' -AWK='gawk' -CC='mipsel-uclibc-gcc' -CCAS='$(CC)' -CCASFLAGS='$(CFLAGS)' -CCDEPMODE='depmode=gcc3' -CFLAGS='-O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections' -CPP='mipsel-uclibc-gcc -E' -CPPFLAGS='-DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include' -CXX='mipsel-linux-g++' -CXXCPP='mipsel-linux-g++ -E' -CXXDEPMODE='depmode=gcc3' -CXXFLAGS='-g -O2' -CYGPATH_W='echo' -DEBUG_FALSE='' -DEBUG_TRUE='#' -DEFS='-DHAVE_CONFIG_H' -DEPDIR='.deps' -DOCBOOK_TO_MAN='' -DOXYGEN='' -ECHO='echo' -ECHO_C='' -ECHO_N='-n' -ECHO_T='' -EGREP='grep -E' -EXEEXT='' -F77='' -FFLAGS='' -FLAC__TEST_LEVEL='1' -FLAC__TEST_WITH_VALGRIND='no' -FLaC__CPU_IA32_FALSE='' -FLaC__CPU_IA32_TRUE='#' -FLaC__CPU_PPC_FALSE='' -FLaC__CPU_PPC_TRUE='#' -FLaC__CPU_SPARC_FALSE='' -FLaC__CPU_SPARC_TRUE='#' -FLaC__HAS_AS_FALSE='' -FLaC__HAS_AS_TRUE='#' -FLaC__HAS_AS__TEMPORARILY_DISABLED_FALSE='' -FLaC__HAS_AS__TEMPORARILY_DISABLED_TRUE='#' -FLaC__HAS_DOCBOOK_TO_MAN_FALSE='' -FLaC__HAS_DOCBOOK_TO_MAN_TRUE='#' -FLaC__HAS_DOXYGEN_FALSE='' -FLaC__HAS_DOXYGEN_TRUE='#' -FLaC__HAS_GAS_FALSE='#' -FLaC__HAS_GAS_TRUE='' -FLaC__HAS_GAS__TEMPORARILY_DISABLED_FALSE='' -FLaC__HAS_GAS__TEMPORARILY_DISABLED_TRUE='#' -FLaC__HAS_NASM_FALSE='' -FLaC__HAS_NASM_TRUE='#' -FLaC__HAS_OGG_FALSE='#' -FLaC__HAS_OGG_TRUE='' -FLaC__HAS_XMMS_FALSE='' -FLaC__HAS_XMMS_TRUE='#' -FLaC__INSTALL_XMMS_PLUGIN_LOCALLY_FALSE='' -FLaC__INSTALL_XMMS_PLUGIN_LOCALLY_TRUE='#' -FLaC__NO_ASM_FALSE='' -FLaC__NO_ASM_TRUE='#' -FLaC__SSE_OS_FALSE='' -FLaC__SSE_OS_TRUE='#' -FLaC__SYS_DARWIN_FALSE='' -FLaC__SYS_DARWIN_TRUE='#' -FLaC__SYS_LINUX_FALSE='' -FLaC__SYS_LINUX_TRUE='#' -FLaC__USE_3DNOW_FALSE='' -FLaC__USE_3DNOW_TRUE='#' -FLaC__USE_ALTIVEC_FALSE='' -FLaC__USE_ALTIVEC_TRUE='#' -FLaC__WITH_CPPLIBS_FALSE='' -FLaC__WITH_CPPLIBS_TRUE='#' -GAS='gas' -INSTALL_DATA='${INSTALL} -m 644' -INSTALL_PROGRAM='${INSTALL}' -INSTALL_SCRIPT='${INSTALL}' -INSTALL_STRIP_PROGRAM='${SHELL} $(install_sh) -c -s' -LDFLAGS='-L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections' -LIBICONV='' -LIBOBJS='' -LIBS='' -LIBTOOL='$(SHELL) $(top_builddir)/libtool' -LN_S='ln -s' -LTLIBICONV='' -LTLIBOBJS='' -MAINT='#' -MAINTAINER_MODE_FALSE='' -MAINTAINER_MODE_TRUE='#' -MAKEINFO='${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo' -MINGW_WINSOCK_LIBS='' -NASM='' -OBJEXT='o' -OBJ_FORMAT='elf' -OGG_CFLAGS='-I/include' -OGG_LIBS='-L/lib -logg' -PACKAGE='flac' -PACKAGE_BUGREPORT='' -PACKAGE_NAME='' -PACKAGE_STRING='' -PACKAGE_TARNAME='' -PACKAGE_VERSION='' -PATH_SEPARATOR=':' -RANLIB='mipsel-uclibc-ranlib' -SET_MAKE='' -SHELL='/bin/sh' -STRIP='mipsel-uclibc-strip -R .note -R .comment' -VERSION='1.2.1' -XMMS_CFLAGS='' -XMMS_CONFIG='' -XMMS_DATA_DIR='' -XMMS_EFFECT_PLUGIN_DIR='' -XMMS_GENERAL_PLUGIN_DIR='' -XMMS_INPUT_PLUGIN_DIR='' -XMMS_LIBS='' -XMMS_OUTPUT_PLUGIN_DIR='' -XMMS_PLUGIN_DIR='' -XMMS_VERSION='' -XMMS_VISUALIZATION_PLUGIN_DIR='' -ac_ct_AR='' -ac_ct_CC='' -ac_ct_CXX='' -ac_ct_F77='' -ac_ct_RANLIB='' -ac_ct_STRIP='' -am__fastdepCC_FALSE='#' -am__fastdepCC_TRUE='' -am__fastdepCXX_FALSE='#' -am__fastdepCXX_TRUE='' -am__include='include' -am__leading_dot='.' -am__quote='' -bindir='${exec_prefix}/bin' -build='x86_64-pc-linux-gnu' -build_alias='x86_64-linux-gnu' -build_cpu='x86_64' -build_os='linux-gnu' -build_vendor='pc' -datadir='${prefix}/share' -exec_prefix='${prefix}' -host='mipsel-unknown-linux-gnu' -host_alias='mipsel-linux' -host_cpu='mipsel' -host_os='linux-gnu' -host_vendor='unknown' -includedir='${prefix}/include' -infodir='${prefix}/info' -install_sh='/home/vicente/tomato/release/src/router/flac/install-sh' -libdir='${exec_prefix}/lib' -libexecdir='${exec_prefix}/libexec' -localstatedir='${prefix}/var' -mandir='${prefix}/man' -oldincludedir='/usr/include' -prefix='' -program_transform_name='s,x,x,' -sbindir='${exec_prefix}/sbin' -sharedstatedir='${prefix}/com' -sysconfdir='${prefix}/etc' -target_alias='' - -## ----------- ## -## confdefs.h. ## -## ----------- ## - -#define FLAC__HAS_GAS 1 -#define FLAC__HAS_OGG 1 -#define HAVE_DLFCN_H 1 -#define HAVE_FSEEKO 1 -#define HAVE_GETOPT_LONG 1 -#define HAVE_INTTYPES_H 1 -#define HAVE_LANGINFO_CODESET 1 -#define HAVE_MEMORY_H 1 -#define HAVE_SOCKLEN_T 1 -#define HAVE_STDINT_H 1 -#define HAVE_STDLIB_H 1 -#define HAVE_STRINGS_H 1 -#define HAVE_STRING_H 1 -#define HAVE_SYS_STAT_H 1 -#define HAVE_SYS_TYPES_H 1 -#define HAVE_UNISTD_H 1 -#define PACKAGE "flac" -#define PACKAGE_BUGREPORT "" -#define PACKAGE_NAME "" -#define PACKAGE_STRING "" -#define PACKAGE_TARNAME "" -#define PACKAGE_VERSION "" -#define SIZEOF_VOIDP 4 -#define STDC_HEADERS 1 -#define VERSION "1.2.1" -#define _FILE_OFFSET_BITS 64 -#define _LARGEFILE_SOURCE 1 -#endif -#ifdef __cplusplus -extern "C" void exit (int) throw (); - -configure: exit 0 diff --git a/release/src/router/flac/config.status b/release/src/router/flac/config.status deleted file mode 100755 index 2f20293361..0000000000 --- a/release/src/router/flac/config.status +++ /dev/null @@ -1,1365 +0,0 @@ -#! /bin/sh -# Generated by configure. -# Run this file to recreate the current configuration. -# Compiler output produced by configure, useful for debugging -# configure, is in config.log if it exists. - -debug=false -ac_cs_recheck=false -ac_cs_silent=false -SHELL=${CONFIG_SHELL-/bin/sh} -## --------------------- ## -## M4sh Initialization. ## -## --------------------- ## - -# Be Bourne compatible -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then - emulate sh - NULLCMD=: - # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which - # is contrary to our usage. Disable this feature. - alias -g '${1+"$@"}'='"$@"' -elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then - set -o posix -fi -DUALCASE=1; export DUALCASE # for MKS sh - -# Support unset when possible. -if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then - as_unset=unset -else - as_unset=false -fi - - -# Work around bugs in pre-3.0 UWIN ksh. -$as_unset ENV MAIL MAILPATH -PS1='$ ' -PS2='> ' -PS4='+ ' - -# NLS nuisances. -for as_var in \ - LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \ - LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \ - LC_TELEPHONE LC_TIME -do - if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then - eval $as_var=C; export $as_var - else - $as_unset $as_var - fi -done - -# Required to use basename. -if expr a : '\(a\)' >/dev/null 2>&1; then - as_expr=expr -else - as_expr=false -fi - -if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then - as_basename=basename -else - as_basename=false -fi - - -# Name of the executable. -as_me=`$as_basename "$0" || -$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ - X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)$' \| \ - . : '\(.\)' 2>/dev/null || -echo X/"$0" | - sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; } - /^X\/\(\/\/\)$/{ s//\1/; q; } - /^X\/\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - - -# PATH needs CR, and LINENO needs CR and PATH. -# Avoid depending upon Character Ranges. -as_cr_letters='abcdefghijklmnopqrstuvwxyz' -as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' -as_cr_Letters=$as_cr_letters$as_cr_LETTERS -as_cr_digits='0123456789' -as_cr_alnum=$as_cr_Letters$as_cr_digits - -# The user is always right. -if test "${PATH_SEPARATOR+set}" != set; then - echo "#! /bin/sh" >conf$$.sh - echo "exit 0" >>conf$$.sh - chmod +x conf$$.sh - if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then - PATH_SEPARATOR=';' - else - PATH_SEPARATOR=: - fi - rm -f conf$$.sh -fi - - - as_lineno_1=$LINENO - as_lineno_2=$LINENO - as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` - test "x$as_lineno_1" != "x$as_lineno_2" && - test "x$as_lineno_3" = "x$as_lineno_2" || { - # Find who we are. Look in the path if we contain no path at all - # relative or not. - case $0 in - *[\\/]* ) as_myself=$0 ;; - *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break -done - - ;; - esac - # We did not find ourselves, most probably we were run as `sh COMMAND' - # in which case we are not to be found in the path. - if test "x$as_myself" = x; then - as_myself=$0 - fi - if test ! -f "$as_myself"; then - { { echo "$as_me:$LINENO: error: cannot find myself; rerun with an absolute path" >&5 -echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2;} - { (exit 1); exit 1; }; } - fi - case $CONFIG_SHELL in - '') - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for as_base in sh bash ksh sh5; do - case $as_dir in - /*) - if ("$as_dir/$as_base" -c ' - as_lineno_1=$LINENO - as_lineno_2=$LINENO - as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` - test "x$as_lineno_1" != "x$as_lineno_2" && - test "x$as_lineno_3" = "x$as_lineno_2" ') 2>/dev/null; then - $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { BASH_ENV=; export BASH_ENV; } - $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; } - CONFIG_SHELL=$as_dir/$as_base - export CONFIG_SHELL - exec "$CONFIG_SHELL" "$0" ${1+"$@"} - fi;; - esac - done -done -;; - esac - - # Create $as_me.lineno as a copy of $as_myself, but with $LINENO - # uniformly replaced by the line number. The first 'sed' inserts a - # line-number line before each line; the second 'sed' does the real - # work. The second script uses 'N' to pair each line-number line - # with the numbered line, and appends trailing '-' during - # substitution so that $LINENO is not a special case at line end. - # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the - # second 'sed' script. Blame Lee E. McMahon for sed's syntax. :-) - sed '=' <$as_myself | - sed ' - N - s,$,-, - : loop - s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3, - t loop - s,-$,, - s,^['$as_cr_digits']*\n,, - ' >$as_me.lineno && - chmod +x $as_me.lineno || - { { echo "$as_me:$LINENO: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&5 -echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2;} - { (exit 1); exit 1; }; } - - # Don't try to exec as it changes $[0], causing all sort of problems - # (the dirname of $[0] is not the place where we might find the - # original and so on. Autoconf is especially sensible to this). - . ./$as_me.lineno - # Exit status is that of the last command. - exit -} - - -case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in - *c*,-n*) ECHO_N= ECHO_C=' -' ECHO_T=' ' ;; - *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;; - *) ECHO_N= ECHO_C='\c' ECHO_T= ;; -esac - -if expr a : '\(a\)' >/dev/null 2>&1; then - as_expr=expr -else - as_expr=false -fi - -rm -f conf$$ conf$$.exe conf$$.file -echo >conf$$.file -if ln -s conf$$.file conf$$ 2>/dev/null; then - # We could just check for DJGPP; but this test a) works b) is more generic - # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04). - if test -f conf$$.exe; then - # Don't use ln at all; we don't have any links - as_ln_s='cp -p' - else - as_ln_s='ln -s' - fi -elif ln conf$$.file conf$$ 2>/dev/null; then - as_ln_s=ln -else - as_ln_s='cp -p' -fi -rm -f conf$$ conf$$.exe conf$$.file - -if mkdir -p . 2>/dev/null; then - as_mkdir_p=: -else - test -d ./-p && rmdir ./-p - as_mkdir_p=false -fi - -as_executable_p="test -f" - -# Sed expression to map a string onto a valid CPP name. -as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" - -# Sed expression to map a string onto a valid variable name. -as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" - - -# IFS -# We need space, tab and new line, in precisely that order. -as_nl=' -' -IFS=" $as_nl" - -# CDPATH. -$as_unset CDPATH - -exec 6>&1 - -# Open the log real soon, to keep \$[0] and so on meaningful, and to -# report actual input values of CONFIG_FILES etc. instead of their -# values after options handling. Logging --version etc. is OK. -exec 5>>config.log -{ - echo - sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX -## Running $as_me. ## -_ASBOX -} >&5 -cat >&5 <<_CSEOF - -This file was extended by $as_me, which was -generated by GNU Autoconf 2.59. Invocation command line was - - CONFIG_FILES = $CONFIG_FILES - CONFIG_HEADERS = $CONFIG_HEADERS - CONFIG_LINKS = $CONFIG_LINKS - CONFIG_COMMANDS = $CONFIG_COMMANDS - $ $0 $@ - -_CSEOF -echo "on `(hostname || uname -n) 2>/dev/null | sed 1q`" >&5 -echo >&5 -config_files=" Makefile src/Makefile src/libFLAC/Makefile src/libFLAC/flac.pc src/libFLAC/ia32/Makefile src/libFLAC/ppc/Makefile src/libFLAC/ppc/as/Makefile src/libFLAC/ppc/gas/Makefile src/libFLAC/include/Makefile src/libFLAC/include/private/Makefile src/libFLAC/include/protected/Makefile src/libFLAC++/Makefile src/libFLAC++/flac++.pc src/flac/Makefile src/metaflac/Makefile src/monkeys_audio_utilities/Makefile src/monkeys_audio_utilities/flac_mac/Makefile src/monkeys_audio_utilities/flac_ren/Makefile src/plugin_common/Makefile src/plugin_winamp2/Makefile src/plugin_winamp2/include/Makefile src/plugin_winamp2/include/winamp2/Makefile src/plugin_xmms/Makefile src/share/Makefile src/share/getopt/Makefile src/share/grabbag/Makefile src/share/replaygain_analysis/Makefile src/share/replaygain_synthesis/Makefile src/share/replaygain_synthesis/include/Makefile src/share/replaygain_synthesis/include/private/Makefile src/share/utf8/Makefile src/test_grabbag/Makefile src/test_grabbag/cuesheet/Makefile src/test_grabbag/picture/Makefile src/test_libs_common/Makefile src/test_libFLAC/Makefile src/test_libFLAC++/Makefile src/test_seeking/Makefile src/test_streams/Makefile examples/Makefile examples/c/Makefile examples/c/decode/Makefile examples/c/decode/file/Makefile examples/c/encode/Makefile examples/c/encode/file/Makefile examples/cpp/Makefile examples/cpp/decode/Makefile examples/cpp/decode/file/Makefile examples/cpp/encode/Makefile examples/cpp/encode/file/Makefile include/Makefile include/FLAC/Makefile include/FLAC++/Makefile include/share/Makefile include/share/grabbag/Makefile include/test_libs_common/Makefile doc/Makefile doc/html/Makefile doc/html/images/Makefile doc/html/images/hw/Makefile doc/html/ru/Makefile m4/Makefile man/Makefile test/Makefile test/cuesheets/Makefile test/flac-to-flac-metadata-test-files/Makefile test/metaflac-test-files/Makefile test/pictures/Makefile build/Makefile obj/Makefile obj/debug/Makefile obj/debug/bin/Makefile obj/debug/lib/Makefile obj/release/Makefile obj/release/bin/Makefile obj/release/lib/Makefile" -config_headers=" config.h" -config_commands=" depfiles" - -ac_cs_usage="\ -\`$as_me' instantiates files from templates according to the -current configuration. - -Usage: $0 [OPTIONS] [FILE]... - - -h, --help print this help, then exit - -V, --version print version number, then exit - -q, --quiet do not print progress messages - -d, --debug don't remove temporary files - --recheck update $as_me by reconfiguring in the same conditions - --file=FILE[:TEMPLATE] - instantiate the configuration file FILE - --header=FILE[:TEMPLATE] - instantiate the configuration header FILE - -Configuration files: -$config_files - -Configuration headers: -$config_headers - -Configuration commands: -$config_commands - -Report bugs to ." -ac_cs_version="\ -config.status -configured by ./configure, generated by GNU Autoconf 2.59, - with options \"'--host=mipsel-linux' '--build=x86_64-linux-gnu' '--enable-shared' '--enable-static' '--prefix=' '--disable-rpath' '--disable-doxygen-docs' '--disable-xmms-plugin' '--disable-cpplibs' '--without-libiconv-prefix' '--disable-altivec' '--disable-3dnow' '--disable-sse' 'CC=mipsel-uclibc-gcc' 'CFLAGS=-Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections' 'CPPFLAGS=-I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include' 'LDFLAGS=-L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections' 'build_alias=x86_64-linux-gnu' 'host_alias=mipsel-linux'\" - -Copyright (C) 2003 Free Software Foundation, Inc. -This config.status script is free software; the Free Software Foundation -gives unlimited permission to copy, distribute and modify it." -srcdir=. -INSTALL="/usr/bin/install -c" -# If no file are specified by the user, then we need to provide default -# value. By we need to know if files were specified by the user. -ac_need_defaults=: -while test $# != 0 -do - case $1 in - --*=*) - ac_option=`expr "x$1" : 'x\([^=]*\)='` - ac_optarg=`expr "x$1" : 'x[^=]*=\(.*\)'` - ac_shift=: - ;; - -*) - ac_option=$1 - ac_optarg=$2 - ac_shift=shift - ;; - *) # This is not an option, so the user has probably given explicit - # arguments. - ac_option=$1 - ac_need_defaults=false;; - esac - - case $ac_option in - # Handling of the options. - -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) - ac_cs_recheck=: ;; - --version | --vers* | -V ) - echo "$ac_cs_version"; exit 0 ;; - --he | --h) - # Conflict between --help and --header - { { echo "$as_me:$LINENO: error: ambiguous option: $1 -Try \`$0 --help' for more information." >&5 -echo "$as_me: error: ambiguous option: $1 -Try \`$0 --help' for more information." >&2;} - { (exit 1); exit 1; }; };; - --help | --hel | -h ) - echo "$ac_cs_usage"; exit 0 ;; - --debug | --d* | -d ) - debug=: ;; - --file | --fil | --fi | --f ) - $ac_shift - CONFIG_FILES="$CONFIG_FILES $ac_optarg" - ac_need_defaults=false;; - --header | --heade | --head | --hea ) - $ac_shift - CONFIG_HEADERS="$CONFIG_HEADERS $ac_optarg" - ac_need_defaults=false;; - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil | --si | --s) - ac_cs_silent=: ;; - - # This is an error. - -*) { { echo "$as_me:$LINENO: error: unrecognized option: $1 -Try \`$0 --help' for more information." >&5 -echo "$as_me: error: unrecognized option: $1 -Try \`$0 --help' for more information." >&2;} - { (exit 1); exit 1; }; } ;; - - *) ac_config_targets="$ac_config_targets $1" ;; - - esac - shift -done - -ac_configure_extra_args= - -if $ac_cs_silent; then - exec 6>/dev/null - ac_configure_extra_args="$ac_configure_extra_args --silent" -fi - -if $ac_cs_recheck; then - echo "running /bin/sh ./configure " '--host=mipsel-linux' '--build=x86_64-linux-gnu' '--enable-shared' '--enable-static' '--prefix=' '--disable-rpath' '--disable-doxygen-docs' '--disable-xmms-plugin' '--disable-cpplibs' '--without-libiconv-prefix' '--disable-altivec' '--disable-3dnow' '--disable-sse' 'CC=mipsel-uclibc-gcc' 'CFLAGS=-Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections' 'CPPFLAGS=-I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include' 'LDFLAGS=-L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections' 'build_alias=x86_64-linux-gnu' 'host_alias=mipsel-linux' $ac_configure_extra_args " --no-create --no-recursion" >&6 - exec /bin/sh ./configure '--host=mipsel-linux' '--build=x86_64-linux-gnu' '--enable-shared' '--enable-static' '--prefix=' '--disable-rpath' '--disable-doxygen-docs' '--disable-xmms-plugin' '--disable-cpplibs' '--without-libiconv-prefix' '--disable-altivec' '--disable-3dnow' '--disable-sse' 'CC=mipsel-uclibc-gcc' 'CFLAGS=-Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections' 'CPPFLAGS=-I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include' 'LDFLAGS=-L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections' 'build_alias=x86_64-linux-gnu' 'host_alias=mipsel-linux' $ac_configure_extra_args --no-create --no-recursion -fi - -# -# INIT-COMMANDS section. -# - -AMDEP_TRUE="" ac_aux_dir="." - -for ac_config_target in $ac_config_targets -do - case "$ac_config_target" in - # Handling of arguments. - "Makefile" ) CONFIG_FILES="$CONFIG_FILES Makefile" ;; - "src/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/Makefile" ;; - "src/libFLAC/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/libFLAC/Makefile" ;; - "src/libFLAC/flac.pc" ) CONFIG_FILES="$CONFIG_FILES src/libFLAC/flac.pc" ;; - "src/libFLAC/ia32/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/libFLAC/ia32/Makefile" ;; - "src/libFLAC/ppc/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/libFLAC/ppc/Makefile" ;; - "src/libFLAC/ppc/as/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/libFLAC/ppc/as/Makefile" ;; - "src/libFLAC/ppc/gas/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/libFLAC/ppc/gas/Makefile" ;; - "src/libFLAC/include/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/libFLAC/include/Makefile" ;; - "src/libFLAC/include/private/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/libFLAC/include/private/Makefile" ;; - "src/libFLAC/include/protected/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/libFLAC/include/protected/Makefile" ;; - "src/libFLAC++/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/libFLAC++/Makefile" ;; - "src/libFLAC++/flac++.pc" ) CONFIG_FILES="$CONFIG_FILES src/libFLAC++/flac++.pc" ;; - "src/flac/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/flac/Makefile" ;; - "src/metaflac/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/metaflac/Makefile" ;; - "src/monkeys_audio_utilities/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/monkeys_audio_utilities/Makefile" ;; - "src/monkeys_audio_utilities/flac_mac/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/monkeys_audio_utilities/flac_mac/Makefile" ;; - "src/monkeys_audio_utilities/flac_ren/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/monkeys_audio_utilities/flac_ren/Makefile" ;; - "src/plugin_common/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/plugin_common/Makefile" ;; - "src/plugin_winamp2/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/plugin_winamp2/Makefile" ;; - "src/plugin_winamp2/include/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/plugin_winamp2/include/Makefile" ;; - "src/plugin_winamp2/include/winamp2/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/plugin_winamp2/include/winamp2/Makefile" ;; - "src/plugin_xmms/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/plugin_xmms/Makefile" ;; - "src/share/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/share/Makefile" ;; - "src/share/getopt/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/share/getopt/Makefile" ;; - "src/share/grabbag/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/share/grabbag/Makefile" ;; - "src/share/replaygain_analysis/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/share/replaygain_analysis/Makefile" ;; - "src/share/replaygain_synthesis/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/share/replaygain_synthesis/Makefile" ;; - "src/share/replaygain_synthesis/include/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/share/replaygain_synthesis/include/Makefile" ;; - "src/share/replaygain_synthesis/include/private/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/share/replaygain_synthesis/include/private/Makefile" ;; - "src/share/utf8/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/share/utf8/Makefile" ;; - "src/test_grabbag/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/test_grabbag/Makefile" ;; - "src/test_grabbag/cuesheet/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/test_grabbag/cuesheet/Makefile" ;; - "src/test_grabbag/picture/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/test_grabbag/picture/Makefile" ;; - "src/test_libs_common/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/test_libs_common/Makefile" ;; - "src/test_libFLAC/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/test_libFLAC/Makefile" ;; - "src/test_libFLAC++/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/test_libFLAC++/Makefile" ;; - "src/test_seeking/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/test_seeking/Makefile" ;; - "src/test_streams/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/test_streams/Makefile" ;; - "examples/Makefile" ) CONFIG_FILES="$CONFIG_FILES examples/Makefile" ;; - "examples/c/Makefile" ) CONFIG_FILES="$CONFIG_FILES examples/c/Makefile" ;; - "examples/c/decode/Makefile" ) CONFIG_FILES="$CONFIG_FILES examples/c/decode/Makefile" ;; - "examples/c/decode/file/Makefile" ) CONFIG_FILES="$CONFIG_FILES examples/c/decode/file/Makefile" ;; - "examples/c/encode/Makefile" ) CONFIG_FILES="$CONFIG_FILES examples/c/encode/Makefile" ;; - "examples/c/encode/file/Makefile" ) CONFIG_FILES="$CONFIG_FILES examples/c/encode/file/Makefile" ;; - "examples/cpp/Makefile" ) CONFIG_FILES="$CONFIG_FILES examples/cpp/Makefile" ;; - "examples/cpp/decode/Makefile" ) CONFIG_FILES="$CONFIG_FILES examples/cpp/decode/Makefile" ;; - "examples/cpp/decode/file/Makefile" ) CONFIG_FILES="$CONFIG_FILES examples/cpp/decode/file/Makefile" ;; - "examples/cpp/encode/Makefile" ) CONFIG_FILES="$CONFIG_FILES examples/cpp/encode/Makefile" ;; - "examples/cpp/encode/file/Makefile" ) CONFIG_FILES="$CONFIG_FILES examples/cpp/encode/file/Makefile" ;; - "include/Makefile" ) CONFIG_FILES="$CONFIG_FILES include/Makefile" ;; - "include/FLAC/Makefile" ) CONFIG_FILES="$CONFIG_FILES include/FLAC/Makefile" ;; - "include/FLAC++/Makefile" ) CONFIG_FILES="$CONFIG_FILES include/FLAC++/Makefile" ;; - "include/share/Makefile" ) CONFIG_FILES="$CONFIG_FILES include/share/Makefile" ;; - "include/share/grabbag/Makefile" ) CONFIG_FILES="$CONFIG_FILES include/share/grabbag/Makefile" ;; - "include/test_libs_common/Makefile" ) CONFIG_FILES="$CONFIG_FILES include/test_libs_common/Makefile" ;; - "doc/Makefile" ) CONFIG_FILES="$CONFIG_FILES doc/Makefile" ;; - "doc/html/Makefile" ) CONFIG_FILES="$CONFIG_FILES doc/html/Makefile" ;; - "doc/html/images/Makefile" ) CONFIG_FILES="$CONFIG_FILES doc/html/images/Makefile" ;; - "doc/html/images/hw/Makefile" ) CONFIG_FILES="$CONFIG_FILES doc/html/images/hw/Makefile" ;; - "doc/html/ru/Makefile" ) CONFIG_FILES="$CONFIG_FILES doc/html/ru/Makefile" ;; - "m4/Makefile" ) CONFIG_FILES="$CONFIG_FILES m4/Makefile" ;; - "man/Makefile" ) CONFIG_FILES="$CONFIG_FILES man/Makefile" ;; - "test/Makefile" ) CONFIG_FILES="$CONFIG_FILES test/Makefile" ;; - "test/cuesheets/Makefile" ) CONFIG_FILES="$CONFIG_FILES test/cuesheets/Makefile" ;; - "test/flac-to-flac-metadata-test-files/Makefile" ) CONFIG_FILES="$CONFIG_FILES test/flac-to-flac-metadata-test-files/Makefile" ;; - "test/metaflac-test-files/Makefile" ) CONFIG_FILES="$CONFIG_FILES test/metaflac-test-files/Makefile" ;; - "test/pictures/Makefile" ) CONFIG_FILES="$CONFIG_FILES test/pictures/Makefile" ;; - "build/Makefile" ) CONFIG_FILES="$CONFIG_FILES build/Makefile" ;; - "obj/Makefile" ) CONFIG_FILES="$CONFIG_FILES obj/Makefile" ;; - "obj/debug/Makefile" ) CONFIG_FILES="$CONFIG_FILES obj/debug/Makefile" ;; - "obj/debug/bin/Makefile" ) CONFIG_FILES="$CONFIG_FILES obj/debug/bin/Makefile" ;; - "obj/debug/lib/Makefile" ) CONFIG_FILES="$CONFIG_FILES obj/debug/lib/Makefile" ;; - "obj/release/Makefile" ) CONFIG_FILES="$CONFIG_FILES obj/release/Makefile" ;; - "obj/release/bin/Makefile" ) CONFIG_FILES="$CONFIG_FILES obj/release/bin/Makefile" ;; - "obj/release/lib/Makefile" ) CONFIG_FILES="$CONFIG_FILES obj/release/lib/Makefile" ;; - "depfiles" ) CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;; - "config.h" ) CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;; - *) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5 -echo "$as_me: error: invalid argument: $ac_config_target" >&2;} - { (exit 1); exit 1; }; };; - esac -done - -# If the user did not use the arguments to specify the items to instantiate, -# then the envvar interface is used. Set only those that are not. -# We use the long form for the default assignment because of an extremely -# bizarre bug on SunOS 4.1.3. -if $ac_need_defaults; then - test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files - test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers - test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands -fi - -# Have a temporary directory for convenience. Make it in the build tree -# simply because there is no reason to put it here, and in addition, -# creating and moving files from /tmp can sometimes cause problems. -# Create a temporary directory, and hook for its removal unless debugging. -$debug || -{ - trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' 0 - trap '{ (exit 1); exit 1; }' 1 2 13 15 -} - -# Create a (secure) tmp directory for tmp files. - -{ - tmp=`(umask 077 && mktemp -d -q "./confstatXXXXXX") 2>/dev/null` && - test -n "$tmp" && test -d "$tmp" -} || -{ - tmp=./confstat$$-$RANDOM - (umask 077 && mkdir $tmp) -} || -{ - echo "$me: cannot create a temporary directory in ." >&2 - { (exit 1); exit 1; } -} - - -# -# CONFIG_FILES section. -# - -# No need to generate the scripts if there are no CONFIG_FILES. -# This happens for instance when ./config.status config.h -if test -n "$CONFIG_FILES"; then - # Protect against being on the right side of a sed subst in config.status. - sed 's/,@/@@/; s/@,/@@/; s/,;t t$/@;t t/; /@;t t$/s/[\\&,]/\\&/g; - s/@@/,@/; s/@@/@,/; s/@;t t$/,;t t/' >$tmp/subs.sed <<\CEOF -s,@SHELL@,/bin/sh,;t t -s,@PATH_SEPARATOR@,:,;t t -s,@PACKAGE_NAME@,,;t t -s,@PACKAGE_TARNAME@,,;t t -s,@PACKAGE_VERSION@,,;t t -s,@PACKAGE_STRING@,,;t t -s,@PACKAGE_BUGREPORT@,,;t t -s,@exec_prefix@,${prefix},;t t -s,@prefix@,,;t t -s,@program_transform_name@,s,x,x,,;t t -s,@bindir@,${exec_prefix}/bin,;t t -s,@sbindir@,${exec_prefix}/sbin,;t t -s,@libexecdir@,${exec_prefix}/libexec,;t t -s,@datadir@,${prefix}/share,;t t -s,@sysconfdir@,${prefix}/etc,;t t -s,@sharedstatedir@,${prefix}/com,;t t -s,@localstatedir@,${prefix}/var,;t t -s,@libdir@,${exec_prefix}/lib,;t t -s,@includedir@,${prefix}/include,;t t -s,@oldincludedir@,/usr/include,;t t -s,@infodir@,${prefix}/info,;t t -s,@mandir@,${prefix}/man,;t t -s,@build_alias@,x86_64-linux-gnu,;t t -s,@host_alias@,mipsel-linux,;t t -s,@target_alias@,,;t t -s,@DEFS@,-DHAVE_CONFIG_H,;t t -s,@ECHO_C@,,;t t -s,@ECHO_N@,-n,;t t -s,@ECHO_T@,,;t t -s,@LIBS@,,;t t -s,@INSTALL_PROGRAM@,${INSTALL},;t t -s,@INSTALL_SCRIPT@,${INSTALL},;t t -s,@INSTALL_DATA@,${INSTALL} -m 644,;t t -s,@CYGPATH_W@,echo,;t t -s,@PACKAGE@,flac,;t t -s,@VERSION@,1.2.1,;t t -s,@ACLOCAL@,${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7,;t t -s,@AUTOCONF@,${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf,;t t -s,@AUTOMAKE@,${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7,;t t -s,@AUTOHEADER@,${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader,;t t -s,@MAKEINFO@,${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo,;t t -s,@AMTAR@,${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar,;t t -s,@install_sh@,/home/vicente/tomato/release/src/router/flac/install-sh,;t t -s,@STRIP@,mipsel-uclibc-strip -R .note -R .comment,;t t -s,@ac_ct_STRIP@,,;t t -s,@INSTALL_STRIP_PROGRAM@,${SHELL} $(install_sh) -c -s,;t t -s,@AWK@,gawk,;t t -s,@SET_MAKE@,,;t t -s,@am__leading_dot@,.,;t t -s,@MAINTAINER_MODE_TRUE@,#,;t t -s,@MAINTAINER_MODE_FALSE@,,;t t -s,@MAINT@,#,;t t -s,@build@,x86_64-pc-linux-gnu,;t t -s,@build_cpu@,x86_64,;t t -s,@build_vendor@,pc,;t t -s,@build_os@,linux-gnu,;t t -s,@host@,mipsel-unknown-linux-gnu,;t t -s,@host_cpu@,mipsel,;t t -s,@host_vendor@,unknown,;t t -s,@host_os@,linux-gnu,;t t -s,@CC@,mipsel-uclibc-gcc,;t t -s,@CFLAGS@,-O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections,;t t -s,@LDFLAGS@,-L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections,;t t -s,@CPPFLAGS@,-DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include,;t t -s,@ac_ct_CC@,,;t t -s,@EXEEXT@,,;t t -s,@OBJEXT@,o,;t t -s,@DEPDIR@,.deps,;t t -s,@am__include@,include,;t t -s,@am__quote@,,;t t -s,@AMDEP_TRUE@,,;t t -s,@AMDEP_FALSE@,#,;t t -s,@AMDEPBACKSLASH@,\,;t t -s,@CCDEPMODE@,depmode=gcc3,;t t -s,@am__fastdepCC_TRUE@,,;t t -s,@am__fastdepCC_FALSE@,#,;t t -s,@EGREP@,grep -E,;t t -s,@LN_S@,ln -s,;t t -s,@ECHO@,echo,;t t -s,@AR@,mipsel-uclibc-ar,;t t -s,@ac_ct_AR@,,;t t -s,@RANLIB@,mipsel-uclibc-ranlib,;t t -s,@ac_ct_RANLIB@,,;t t -s,@CPP@,mipsel-uclibc-gcc -E,;t t -s,@CXX@,mipsel-linux-g++,;t t -s,@CXXFLAGS@,-g -O2,;t t -s,@ac_ct_CXX@,,;t t -s,@CXXDEPMODE@,depmode=gcc3,;t t -s,@am__fastdepCXX_TRUE@,,;t t -s,@am__fastdepCXX_FALSE@,#,;t t -s,@CXXCPP@,mipsel-linux-g++ -E,;t t -s,@F77@,,;t t -s,@FFLAGS@,,;t t -s,@ac_ct_F77@,,;t t -s,@LIBTOOL@,$(SHELL) $(top_builddir)/libtool,;t t -s,@ACLOCAL_AMFLAGS@,-I m4,;t t -s,@CCAS@,$(CC),;t t -s,@CCASFLAGS@,$(CFLAGS),;t t -s,@FLaC__CPU_IA32_TRUE@,#,;t t -s,@FLaC__CPU_IA32_FALSE@,,;t t -s,@FLaC__CPU_PPC_TRUE@,#,;t t -s,@FLaC__CPU_PPC_FALSE@,,;t t -s,@FLaC__CPU_SPARC_TRUE@,#,;t t -s,@FLaC__CPU_SPARC_FALSE@,,;t t -s,@OBJ_FORMAT@,elf,;t t -s,@MINGW_WINSOCK_LIBS@,,;t t -s,@FLaC__SYS_DARWIN_TRUE@,#,;t t -s,@FLaC__SYS_DARWIN_FALSE@,,;t t -s,@FLaC__SYS_LINUX_TRUE@,#,;t t -s,@FLaC__SYS_LINUX_FALSE@,,;t t -s,@FLaC__NO_ASM_TRUE@,#,;t t -s,@FLaC__NO_ASM_FALSE@,,;t t -s,@DEBUG_TRUE@,#,;t t -s,@DEBUG_FALSE@,,;t t -s,@FLaC__SSE_OS_TRUE@,#,;t t -s,@FLaC__SSE_OS_FALSE@,,;t t -s,@FLaC__USE_3DNOW_TRUE@,#,;t t -s,@FLaC__USE_3DNOW_FALSE@,,;t t -s,@FLaC__USE_ALTIVEC_TRUE@,#,;t t -s,@FLaC__USE_ALTIVEC_FALSE@,,;t t -s,@FLAC__TEST_LEVEL@,1,;t t -s,@FLAC__TEST_WITH_VALGRIND@,no,;t t -s,@DOXYGEN@,,;t t -s,@FLaC__HAS_DOXYGEN_TRUE@,#,;t t -s,@FLaC__HAS_DOXYGEN_FALSE@,,;t t -s,@FLaC__INSTALL_XMMS_PLUGIN_LOCALLY_TRUE@,#,;t t -s,@FLaC__INSTALL_XMMS_PLUGIN_LOCALLY_FALSE@,,;t t -s,@XMMS_CONFIG@,,;t t -s,@XMMS_CFLAGS@,,;t t -s,@XMMS_LIBS@,,;t t -s,@XMMS_VERSION@,,;t t -s,@XMMS_DATA_DIR@,,;t t -s,@XMMS_PLUGIN_DIR@,,;t t -s,@XMMS_VISUALIZATION_PLUGIN_DIR@,,;t t -s,@XMMS_INPUT_PLUGIN_DIR@,,;t t -s,@XMMS_OUTPUT_PLUGIN_DIR@,,;t t -s,@XMMS_GENERAL_PLUGIN_DIR@,,;t t -s,@XMMS_EFFECT_PLUGIN_DIR@,,;t t -s,@FLaC__HAS_XMMS_TRUE@,#,;t t -s,@FLaC__HAS_XMMS_FALSE@,,;t t -s,@FLaC__WITH_CPPLIBS_TRUE@,#,;t t -s,@FLaC__WITH_CPPLIBS_FALSE@,,;t t -s,@OGG_CFLAGS@,-I/include,;t t -s,@OGG_LIBS@,-L/lib -logg,;t t -s,@FLaC__HAS_OGG_TRUE@,,;t t -s,@FLaC__HAS_OGG_FALSE@,#,;t t -s,@LIBICONV@,,;t t -s,@LTLIBICONV@,,;t t -s,@DOCBOOK_TO_MAN@,,;t t -s,@FLaC__HAS_DOCBOOK_TO_MAN_TRUE@,#,;t t -s,@FLaC__HAS_DOCBOOK_TO_MAN_FALSE@,,;t t -s,@NASM@,,;t t -s,@FLaC__HAS_NASM_TRUE@,#,;t t -s,@FLaC__HAS_NASM_FALSE@,,;t t -s,@AS@,gas,;t t -s,@GAS@,gas,;t t -s,@FLaC__HAS_AS_TRUE@,#,;t t -s,@FLaC__HAS_AS_FALSE@,,;t t -s,@FLaC__HAS_GAS_TRUE@,,;t t -s,@FLaC__HAS_GAS_FALSE@,#,;t t -s,@FLaC__HAS_AS__TEMPORARILY_DISABLED_TRUE@,#,;t t -s,@FLaC__HAS_AS__TEMPORARILY_DISABLED_FALSE@,,;t t -s,@FLaC__HAS_GAS__TEMPORARILY_DISABLED_TRUE@,#,;t t -s,@FLaC__HAS_GAS__TEMPORARILY_DISABLED_FALSE@,,;t t -s,@LIBOBJS@,,;t t -s,@LTLIBOBJS@,,;t t -CEOF - - # Split the substitutions into bite-sized pieces for seds with - # small command number limits, like on Digital OSF/1 and HP-UX. - ac_max_sed_lines=48 - ac_sed_frag=1 # Number of current file. - ac_beg=1 # First line for current file. - ac_end=$ac_max_sed_lines # Line after last line for current file. - ac_more_lines=: - ac_sed_cmds= - while $ac_more_lines; do - if test $ac_beg -gt 1; then - sed "1,${ac_beg}d; ${ac_end}q" $tmp/subs.sed >$tmp/subs.frag - else - sed "${ac_end}q" $tmp/subs.sed >$tmp/subs.frag - fi - if test ! -s $tmp/subs.frag; then - ac_more_lines=false - else - # The purpose of the label and of the branching condition is to - # speed up the sed processing (if there are no `@' at all, there - # is no need to browse any of the substitutions). - # These are the two extra sed commands mentioned above. - (echo ':t - /@[a-zA-Z_][a-zA-Z_0-9]*@/!b' && cat $tmp/subs.frag) >$tmp/subs-$ac_sed_frag.sed - if test -z "$ac_sed_cmds"; then - ac_sed_cmds="sed -f $tmp/subs-$ac_sed_frag.sed" - else - ac_sed_cmds="$ac_sed_cmds | sed -f $tmp/subs-$ac_sed_frag.sed" - fi - ac_sed_frag=`expr $ac_sed_frag + 1` - ac_beg=$ac_end - ac_end=`expr $ac_end + $ac_max_sed_lines` - fi - done - if test -z "$ac_sed_cmds"; then - ac_sed_cmds=cat - fi -fi # test -n "$CONFIG_FILES" - -for ac_file in : $CONFIG_FILES; do test "x$ac_file" = x: && continue - # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in". - case $ac_file in - - | *:- | *:-:* ) # input from stdin - cat >$tmp/stdin - ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; - *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; - * ) ac_file_in=$ac_file.in ;; - esac - - # Compute @srcdir@, @top_srcdir@, and @INSTALL@ for subdirectories. - ac_dir=`(dirname "$ac_file") 2>/dev/null || -$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$ac_file" : 'X\(//\)[^/]' \| \ - X"$ac_file" : 'X\(//\)$' \| \ - X"$ac_file" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$ac_file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - { if $as_mkdir_p; then - mkdir -p "$ac_dir" - else - as_dir="$ac_dir" - as_dirs= - while test ! -d "$as_dir"; do - as_dirs="$as_dir $as_dirs" - as_dir=`(dirname "$as_dir") 2>/dev/null || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - done - test ! -n "$as_dirs" || mkdir $as_dirs - fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5 -echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;} - { (exit 1); exit 1; }; }; } - - ac_builddir=. - -if test "$ac_dir" != .; then - ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` - # A "../" for each directory in $ac_dir_suffix. - ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'` -else - ac_dir_suffix= ac_top_builddir= -fi - -case $srcdir in - .) # No --srcdir option. We are building in place. - ac_srcdir=. - if test -z "$ac_top_builddir"; then - ac_top_srcdir=. - else - ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'` - fi ;; - [\\/]* | ?:[\\/]* ) # Absolute path. - ac_srcdir=$srcdir$ac_dir_suffix; - ac_top_srcdir=$srcdir ;; - *) # Relative path. - ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix - ac_top_srcdir=$ac_top_builddir$srcdir ;; -esac - -# Do not use `cd foo && pwd` to compute absolute paths, because -# the directories may not exist. -case `pwd` in -.) ac_abs_builddir="$ac_dir";; -*) - case "$ac_dir" in - .) ac_abs_builddir=`pwd`;; - [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";; - *) ac_abs_builddir=`pwd`/"$ac_dir";; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_builddir=${ac_top_builddir}.;; -*) - case ${ac_top_builddir}. in - .) ac_abs_top_builddir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;; - *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_srcdir=$ac_srcdir;; -*) - case $ac_srcdir in - .) ac_abs_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;; - *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_srcdir=$ac_top_srcdir;; -*) - case $ac_top_srcdir in - .) ac_abs_top_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;; - *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;; - esac;; -esac - - - case $INSTALL in - [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;; - *) ac_INSTALL=$ac_top_builddir$INSTALL ;; - esac - - if test x"$ac_file" != x-; then - { echo "$as_me:$LINENO: creating $ac_file" >&5 -echo "$as_me: creating $ac_file" >&6;} - rm -f "$ac_file" - fi - # Let's still pretend it is `configure' which instantiates (i.e., don't - # use $as_me), people would be surprised to read: - # /* config.h. Generated by config.status. */ - if test x"$ac_file" = x-; then - configure_input= - else - configure_input="$ac_file. " - fi - configure_input=$configure_input"Generated from `echo $ac_file_in | - sed 's,.*/,,'` by configure." - - # First look for the input files in the build tree, otherwise in the - # src tree. - ac_file_inputs=`IFS=: - for f in $ac_file_in; do - case $f in - -) echo $tmp/stdin ;; - [\\/$]*) - # Absolute (can't be DOS-style, as IFS=:) - test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 -echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - echo "$f";; - *) # Relative - if test -f "$f"; then - # Build tree - echo "$f" - elif test -f "$srcdir/$f"; then - # Source tree - echo "$srcdir/$f" - else - # /dev/null tree - { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 -echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - fi;; - esac - done` || { (exit 1); exit 1; } - sed "/^[ ]*VPATH[ ]*=/{ -s/:*\$(srcdir):*/:/; -s/:*\${srcdir}:*/:/; -s/:*@srcdir@:*/:/; -s/^\([^=]*=[ ]*\):*/\1/; -s/:*$//; -s/^[^=]*=[ ]*$//; -} - -:t -/@[a-zA-Z_][a-zA-Z_0-9]*@/!b -s,@configure_input@,$configure_input,;t t -s,@srcdir@,$ac_srcdir,;t t -s,@abs_srcdir@,$ac_abs_srcdir,;t t -s,@top_srcdir@,$ac_top_srcdir,;t t -s,@abs_top_srcdir@,$ac_abs_top_srcdir,;t t -s,@builddir@,$ac_builddir,;t t -s,@abs_builddir@,$ac_abs_builddir,;t t -s,@top_builddir@,$ac_top_builddir,;t t -s,@abs_top_builddir@,$ac_abs_top_builddir,;t t -s,@INSTALL@,$ac_INSTALL,;t t -" $ac_file_inputs | (eval "$ac_sed_cmds") >$tmp/out - rm -f $tmp/stdin - if test x"$ac_file" != x-; then - mv $tmp/out $ac_file - else - cat $tmp/out - rm -f $tmp/out - fi - -done - -# -# CONFIG_HEADER section. -# - -# These sed commands are passed to sed as "A NAME B NAME C VALUE D", where -# NAME is the cpp macro being defined and VALUE is the value it is being given. -# -# ac_d sets the value in "#define NAME VALUE" lines. -ac_dA='s,^\([ ]*\)#\([ ]*define[ ][ ]*\)' -ac_dB='[ ].*$,\1#\2' -ac_dC=' ' -ac_dD=',;t' -# ac_u turns "#undef NAME" without trailing blanks into "#define NAME VALUE". -ac_uA='s,^\([ ]*\)#\([ ]*\)undef\([ ][ ]*\)' -ac_uB='$,\1#\2define\3' -ac_uC=' ' -ac_uD=',;t' - -for ac_file in : $CONFIG_HEADERS; do test "x$ac_file" = x: && continue - # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in". - case $ac_file in - - | *:- | *:-:* ) # input from stdin - cat >$tmp/stdin - ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; - *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; - * ) ac_file_in=$ac_file.in ;; - esac - - test x"$ac_file" != x- && { echo "$as_me:$LINENO: creating $ac_file" >&5 -echo "$as_me: creating $ac_file" >&6;} - - # First look for the input files in the build tree, otherwise in the - # src tree. - ac_file_inputs=`IFS=: - for f in $ac_file_in; do - case $f in - -) echo $tmp/stdin ;; - [\\/$]*) - # Absolute (can't be DOS-style, as IFS=:) - test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 -echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - # Do quote $f, to prevent DOS paths from being IFS'd. - echo "$f";; - *) # Relative - if test -f "$f"; then - # Build tree - echo "$f" - elif test -f "$srcdir/$f"; then - # Source tree - echo "$srcdir/$f" - else - # /dev/null tree - { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 -echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - fi;; - esac - done` || { (exit 1); exit 1; } - # Remove the trailing spaces. - sed 's/[ ]*$//' $ac_file_inputs >$tmp/in - - # Handle all the #define templates only if necessary. - if grep "^[ ]*#[ ]*define" $tmp/in >/dev/null; then - # If there are no defines, we may have an empty if/fi - : - cat >$tmp/defines.sed <$tmp/out - rm -f $tmp/in - mv $tmp/out $tmp/in - - fi # grep - - # Handle all the #undef templates - cat >$tmp/undefs.sed <$tmp/out - rm -f $tmp/in - mv $tmp/out $tmp/in - - # Let's still pretend it is `configure' which instantiates (i.e., don't - # use $as_me), people would be surprised to read: - # /* config.h. Generated by config.status. */ - if test x"$ac_file" = x-; then - echo "/* Generated by configure. */" >$tmp/config.h - else - echo "/* $ac_file. Generated by configure. */" >$tmp/config.h - fi - cat $tmp/in >>$tmp/config.h - rm -f $tmp/in - if test x"$ac_file" != x-; then - if diff $ac_file $tmp/config.h >/dev/null 2>&1; then - { echo "$as_me:$LINENO: $ac_file is unchanged" >&5 -echo "$as_me: $ac_file is unchanged" >&6;} - else - ac_dir=`(dirname "$ac_file") 2>/dev/null || -$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$ac_file" : 'X\(//\)[^/]' \| \ - X"$ac_file" : 'X\(//\)$' \| \ - X"$ac_file" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$ac_file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - { if $as_mkdir_p; then - mkdir -p "$ac_dir" - else - as_dir="$ac_dir" - as_dirs= - while test ! -d "$as_dir"; do - as_dirs="$as_dir $as_dirs" - as_dir=`(dirname "$as_dir") 2>/dev/null || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - done - test ! -n "$as_dirs" || mkdir $as_dirs - fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5 -echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;} - { (exit 1); exit 1; }; }; } - - rm -f $ac_file - mv $tmp/config.h $ac_file - fi - else - cat $tmp/config.h - rm -f $tmp/config.h - fi -# Compute $ac_file's index in $config_headers. -_am_stamp_count=1 -for _am_header in $config_headers :; do - case $_am_header in - $ac_file | $ac_file:* ) - break ;; - * ) - _am_stamp_count=`expr $_am_stamp_count + 1` ;; - esac -done -echo "timestamp for $ac_file" >`(dirname $ac_file) 2>/dev/null || -$as_expr X$ac_file : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X$ac_file : 'X\(//\)[^/]' \| \ - X$ac_file : 'X\(//\)$' \| \ - X$ac_file : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X$ac_file | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'`/stamp-h$_am_stamp_count -done - -# -# CONFIG_COMMANDS section. -# -for ac_file in : $CONFIG_COMMANDS; do test "x$ac_file" = x: && continue - ac_dest=`echo "$ac_file" | sed 's,:.*,,'` - ac_source=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_dir=`(dirname "$ac_dest") 2>/dev/null || -$as_expr X"$ac_dest" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$ac_dest" : 'X\(//\)[^/]' \| \ - X"$ac_dest" : 'X\(//\)$' \| \ - X"$ac_dest" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$ac_dest" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - { if $as_mkdir_p; then - mkdir -p "$ac_dir" - else - as_dir="$ac_dir" - as_dirs= - while test ! -d "$as_dir"; do - as_dirs="$as_dir $as_dirs" - as_dir=`(dirname "$as_dir") 2>/dev/null || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - done - test ! -n "$as_dirs" || mkdir $as_dirs - fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5 -echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;} - { (exit 1); exit 1; }; }; } - - ac_builddir=. - -if test "$ac_dir" != .; then - ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` - # A "../" for each directory in $ac_dir_suffix. - ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'` -else - ac_dir_suffix= ac_top_builddir= -fi - -case $srcdir in - .) # No --srcdir option. We are building in place. - ac_srcdir=. - if test -z "$ac_top_builddir"; then - ac_top_srcdir=. - else - ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'` - fi ;; - [\\/]* | ?:[\\/]* ) # Absolute path. - ac_srcdir=$srcdir$ac_dir_suffix; - ac_top_srcdir=$srcdir ;; - *) # Relative path. - ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix - ac_top_srcdir=$ac_top_builddir$srcdir ;; -esac - -# Do not use `cd foo && pwd` to compute absolute paths, because -# the directories may not exist. -case `pwd` in -.) ac_abs_builddir="$ac_dir";; -*) - case "$ac_dir" in - .) ac_abs_builddir=`pwd`;; - [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";; - *) ac_abs_builddir=`pwd`/"$ac_dir";; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_builddir=${ac_top_builddir}.;; -*) - case ${ac_top_builddir}. in - .) ac_abs_top_builddir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;; - *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_srcdir=$ac_srcdir;; -*) - case $ac_srcdir in - .) ac_abs_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;; - *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_srcdir=$ac_top_srcdir;; -*) - case $ac_top_srcdir in - .) ac_abs_top_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;; - *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;; - esac;; -esac - - - { echo "$as_me:$LINENO: executing $ac_dest commands" >&5 -echo "$as_me: executing $ac_dest commands" >&6;} - case $ac_dest in - depfiles ) test x"$AMDEP_TRUE" != x"" || for mf in $CONFIG_FILES; do - # Strip MF so we end up with the name of the file. - mf=`echo "$mf" | sed -e 's/:.*$//'` - # Check whether this is an Automake generated Makefile or not. - # We used to match only the files named `Makefile.in', but - # some people rename them; so instead we look at the file content. - # Grep'ing the first line is not enough: some people post-process - # each Makefile.in and add a new line on top of each file to say so. - # So let's grep whole file. - if grep '^#.*generated by automake' $mf > /dev/null 2>&1; then - dirpart=`(dirname "$mf") 2>/dev/null || -$as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$mf" : 'X\(//\)[^/]' \| \ - X"$mf" : 'X\(//\)$' \| \ - X"$mf" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$mf" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - else - continue - fi - grep '^DEP_FILES *= *[^ #]' < "$mf" > /dev/null || continue - # Extract the definition of DEP_FILES from the Makefile without - # running `make'. - DEPDIR=`sed -n -e '/^DEPDIR = / s///p' < "$mf"` - test -z "$DEPDIR" && continue - # When using ansi2knr, U may be empty or an underscore; expand it - U=`sed -n -e '/^U = / s///p' < "$mf"` - test -d "$dirpart/$DEPDIR" || mkdir "$dirpart/$DEPDIR" - # We invoke sed twice because it is the simplest approach to - # changing $(DEPDIR) to its actual value in the expansion. - for file in `sed -n -e ' - /^DEP_FILES = .*\\\\$/ { - s/^DEP_FILES = // - :loop - s/\\\\$// - p - n - /\\\\$/ b loop - p - } - /^DEP_FILES = / s/^DEP_FILES = //p' < "$mf" | \ - sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do - # Make sure the directory exists. - test -f "$dirpart/$file" && continue - fdir=`(dirname "$file") 2>/dev/null || -$as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$file" : 'X\(//\)[^/]' \| \ - X"$file" : 'X\(//\)$' \| \ - X"$file" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - { if $as_mkdir_p; then - mkdir -p $dirpart/$fdir - else - as_dir=$dirpart/$fdir - as_dirs= - while test ! -d "$as_dir"; do - as_dirs="$as_dir $as_dirs" - as_dir=`(dirname "$as_dir") 2>/dev/null || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - done - test ! -n "$as_dirs" || mkdir $as_dirs - fi || { { echo "$as_me:$LINENO: error: cannot create directory $dirpart/$fdir" >&5 -echo "$as_me: error: cannot create directory $dirpart/$fdir" >&2;} - { (exit 1); exit 1; }; }; } - - # echo "creating $dirpart/$file" - echo '# dummy' > "$dirpart/$file" - done -done - ;; - esac -done - -{ (exit 0); exit 0; } diff --git a/release/src/router/flac/doc/Makefile b/release/src/router/flac/doc/Makefile index 11aa008572..06e6808aac 100644 --- a/release/src/router/flac/doc/Makefile +++ b/release/src/router/flac/doc/Makefile @@ -53,16 +53,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -70,7 +70,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -137,7 +137,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -148,7 +148,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -206,7 +206,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/doc/html/Makefile b/release/src/router/flac/doc/html/Makefile index e35a370ba0..fb85f01661 100644 --- a/release/src/router/flac/doc/html/Makefile +++ b/release/src/router/flac/doc/html/Makefile @@ -53,16 +53,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -70,7 +70,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -137,7 +137,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -148,7 +148,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -206,7 +206,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/doc/html/images/Makefile b/release/src/router/flac/doc/html/images/Makefile index 2760284c20..ea5f85e18f 100644 --- a/release/src/router/flac/doc/html/images/Makefile +++ b/release/src/router/flac/doc/html/images/Makefile @@ -53,16 +53,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -70,7 +70,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -137,7 +137,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -148,7 +148,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -206,7 +206,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/doc/html/images/hw/Makefile b/release/src/router/flac/doc/html/images/hw/Makefile index 360b2cc85b..5849964a34 100644 --- a/release/src/router/flac/doc/html/images/hw/Makefile +++ b/release/src/router/flac/doc/html/images/hw/Makefile @@ -53,16 +53,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -70,7 +70,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -137,7 +137,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -148,7 +148,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -206,7 +206,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/doc/html/ru/Makefile b/release/src/router/flac/doc/html/ru/Makefile index d0ab2e3107..38b14bcb1a 100644 --- a/release/src/router/flac/doc/html/ru/Makefile +++ b/release/src/router/flac/doc/html/ru/Makefile @@ -53,16 +53,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -70,7 +70,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -137,7 +137,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -148,7 +148,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -206,7 +206,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/examples/Makefile b/release/src/router/flac/examples/Makefile index 6c0aec82f9..158d23bf42 100644 --- a/release/src/router/flac/examples/Makefile +++ b/release/src/router/flac/examples/Makefile @@ -53,16 +53,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -70,7 +70,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -137,7 +137,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -148,7 +148,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -206,7 +206,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/examples/c/Makefile b/release/src/router/flac/examples/c/Makefile index 75d2b1069c..b208c23341 100644 --- a/release/src/router/flac/examples/c/Makefile +++ b/release/src/router/flac/examples/c/Makefile @@ -53,16 +53,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -70,7 +70,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -137,7 +137,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -148,7 +148,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -206,7 +206,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/examples/c/decode/Makefile b/release/src/router/flac/examples/c/decode/Makefile index 434ae6e8e8..26c86341a2 100644 --- a/release/src/router/flac/examples/c/decode/Makefile +++ b/release/src/router/flac/examples/c/decode/Makefile @@ -53,16 +53,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -70,7 +70,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -137,7 +137,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -148,7 +148,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -206,7 +206,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/examples/c/decode/file/Makefile b/release/src/router/flac/examples/c/decode/file/Makefile index 6cda8a3923..575efcb652 100644 --- a/release/src/router/flac/examples/c/decode/file/Makefile +++ b/release/src/router/flac/examples/c/decode/file/Makefile @@ -53,16 +53,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -70,7 +70,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -137,7 +137,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -148,7 +148,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -206,7 +206,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/examples/c/encode/Makefile b/release/src/router/flac/examples/c/encode/Makefile index 768f458a6b..a66ab7e2b8 100644 --- a/release/src/router/flac/examples/c/encode/Makefile +++ b/release/src/router/flac/examples/c/encode/Makefile @@ -53,16 +53,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -70,7 +70,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -137,7 +137,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -148,7 +148,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -206,7 +206,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/examples/c/encode/file/Makefile b/release/src/router/flac/examples/c/encode/file/Makefile index ab35b179ea..fea6dd5ba2 100644 --- a/release/src/router/flac/examples/c/encode/file/Makefile +++ b/release/src/router/flac/examples/c/encode/file/Makefile @@ -53,16 +53,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -70,7 +70,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -137,7 +137,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -148,7 +148,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -206,7 +206,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/examples/cpp/Makefile b/release/src/router/flac/examples/cpp/Makefile index cf7744015f..6a1d5f7b99 100644 --- a/release/src/router/flac/examples/cpp/Makefile +++ b/release/src/router/flac/examples/cpp/Makefile @@ -53,16 +53,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -70,7 +70,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -137,7 +137,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -148,7 +148,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -206,7 +206,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/examples/cpp/decode/Makefile b/release/src/router/flac/examples/cpp/decode/Makefile index 9962311b18..a28aa06687 100644 --- a/release/src/router/flac/examples/cpp/decode/Makefile +++ b/release/src/router/flac/examples/cpp/decode/Makefile @@ -53,16 +53,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -70,7 +70,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -137,7 +137,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -148,7 +148,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -206,7 +206,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/examples/cpp/decode/file/Makefile b/release/src/router/flac/examples/cpp/decode/file/Makefile index c285c9e095..a4f35f8e9f 100644 --- a/release/src/router/flac/examples/cpp/decode/file/Makefile +++ b/release/src/router/flac/examples/cpp/decode/file/Makefile @@ -53,16 +53,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -70,7 +70,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -137,7 +137,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -148,7 +148,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -206,7 +206,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/examples/cpp/encode/Makefile b/release/src/router/flac/examples/cpp/encode/Makefile index fd58d20fa3..c6d698ca16 100644 --- a/release/src/router/flac/examples/cpp/encode/Makefile +++ b/release/src/router/flac/examples/cpp/encode/Makefile @@ -53,16 +53,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -70,7 +70,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -137,7 +137,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -148,7 +148,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -206,7 +206,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/examples/cpp/encode/file/Makefile b/release/src/router/flac/examples/cpp/encode/file/Makefile index bcdc374b00..e8d8ff9282 100644 --- a/release/src/router/flac/examples/cpp/encode/file/Makefile +++ b/release/src/router/flac/examples/cpp/encode/file/Makefile @@ -53,16 +53,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -70,7 +70,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -137,7 +137,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -148,7 +148,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -206,7 +206,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/include/FLAC++/Makefile b/release/src/router/flac/include/FLAC++/Makefile index 9e564d6a9d..b50a00862b 100644 --- a/release/src/router/flac/include/FLAC++/Makefile +++ b/release/src/router/flac/include/FLAC++/Makefile @@ -66,16 +66,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -83,7 +83,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -150,7 +150,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -161,7 +161,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -219,7 +219,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/include/FLAC/Makefile b/release/src/router/flac/include/FLAC/Makefile index b35fcb3f69..1e4951c9d7 100644 --- a/release/src/router/flac/include/FLAC/Makefile +++ b/release/src/router/flac/include/FLAC/Makefile @@ -66,16 +66,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -83,7 +83,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -150,7 +150,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -161,7 +161,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -219,7 +219,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/include/Makefile b/release/src/router/flac/include/Makefile index 89200d4149..4953093e0f 100644 --- a/release/src/router/flac/include/Makefile +++ b/release/src/router/flac/include/Makefile @@ -53,16 +53,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -70,7 +70,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -137,7 +137,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -148,7 +148,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -206,7 +206,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/include/share/Makefile b/release/src/router/flac/include/share/Makefile index 82c77356d1..f07000a7a3 100644 --- a/release/src/router/flac/include/share/Makefile +++ b/release/src/router/flac/include/share/Makefile @@ -36,16 +36,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -53,7 +53,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -120,7 +120,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -131,7 +131,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -189,7 +189,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/include/share/grabbag/Makefile b/release/src/router/flac/include/share/grabbag/Makefile index fb47e1e8d8..e476664a23 100644 --- a/release/src/router/flac/include/share/grabbag/Makefile +++ b/release/src/router/flac/include/share/grabbag/Makefile @@ -36,16 +36,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -53,7 +53,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -120,7 +120,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -131,7 +131,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -189,7 +189,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/include/test_libs_common/Makefile b/release/src/router/flac/include/test_libs_common/Makefile index 4ff402eae4..dabd504fbd 100644 --- a/release/src/router/flac/include/test_libs_common/Makefile +++ b/release/src/router/flac/include/test_libs_common/Makefile @@ -36,16 +36,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -53,7 +53,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -120,7 +120,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -131,7 +131,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -189,7 +189,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/m4/Makefile b/release/src/router/flac/m4/Makefile index 1a6636d85d..b6bbff1612 100644 --- a/release/src/router/flac/m4/Makefile +++ b/release/src/router/flac/m4/Makefile @@ -53,16 +53,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -70,7 +70,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -137,7 +137,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -148,7 +148,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -206,7 +206,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/man/Makefile b/release/src/router/flac/man/Makefile index 418845b667..13ea4ebac4 100644 --- a/release/src/router/flac/man/Makefile +++ b/release/src/router/flac/man/Makefile @@ -53,16 +53,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -70,7 +70,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -137,7 +137,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -148,7 +148,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -206,7 +206,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/obj/Makefile b/release/src/router/flac/obj/Makefile index efd020ba24..61e5a9a7c7 100644 --- a/release/src/router/flac/obj/Makefile +++ b/release/src/router/flac/obj/Makefile @@ -53,16 +53,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -70,7 +70,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -137,7 +137,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -148,7 +148,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -206,7 +206,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/obj/debug/Makefile b/release/src/router/flac/obj/debug/Makefile index 9a41c0d6f6..11bb1e9fd0 100644 --- a/release/src/router/flac/obj/debug/Makefile +++ b/release/src/router/flac/obj/debug/Makefile @@ -53,16 +53,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -70,7 +70,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -137,7 +137,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -148,7 +148,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -206,7 +206,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/obj/debug/bin/Makefile b/release/src/router/flac/obj/debug/bin/Makefile index 3ee1aeb5e4..1a3d45d151 100644 --- a/release/src/router/flac/obj/debug/bin/Makefile +++ b/release/src/router/flac/obj/debug/bin/Makefile @@ -36,16 +36,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -53,7 +53,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -120,7 +120,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -131,7 +131,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -189,7 +189,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/obj/debug/lib/Makefile b/release/src/router/flac/obj/debug/lib/Makefile index 01078a4db2..ef988c6911 100644 --- a/release/src/router/flac/obj/debug/lib/Makefile +++ b/release/src/router/flac/obj/debug/lib/Makefile @@ -36,16 +36,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -53,7 +53,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -120,7 +120,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -131,7 +131,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -189,7 +189,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/obj/release/Makefile b/release/src/router/flac/obj/release/Makefile index 04548b6ecc..c624d51ca0 100644 --- a/release/src/router/flac/obj/release/Makefile +++ b/release/src/router/flac/obj/release/Makefile @@ -53,16 +53,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -70,7 +70,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -137,7 +137,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -148,7 +148,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -206,7 +206,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/obj/release/bin/Makefile b/release/src/router/flac/obj/release/bin/Makefile index 32eea4b704..0c9045544e 100644 --- a/release/src/router/flac/obj/release/bin/Makefile +++ b/release/src/router/flac/obj/release/bin/Makefile @@ -36,16 +36,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -53,7 +53,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -120,7 +120,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -131,7 +131,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -189,7 +189,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/obj/release/lib/Makefile b/release/src/router/flac/obj/release/lib/Makefile index 3723f952c3..d2773035ea 100644 --- a/release/src/router/flac/obj/release/lib/Makefile +++ b/release/src/router/flac/obj/release/lib/Makefile @@ -36,16 +36,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -53,7 +53,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -120,7 +120,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -131,7 +131,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -189,7 +189,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/src/Makefile b/release/src/router/flac/src/Makefile index 0af8972ba1..70bb87c3cb 100644 --- a/release/src/router/flac/src/Makefile +++ b/release/src/router/flac/src/Makefile @@ -53,16 +53,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -70,7 +70,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -137,7 +137,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -148,7 +148,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -206,7 +206,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/src/flac/Makefile b/release/src/router/flac/src/flac/Makefile index 5dc60eaca2..9bd7c36e7f 100644 --- a/release/src/router/flac/src/flac/Makefile +++ b/release/src/router/flac/src/flac/Makefile @@ -53,16 +53,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -70,7 +70,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -137,7 +137,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -148,7 +148,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -206,7 +206,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/src/libFLAC++/Makefile b/release/src/router/flac/src/libFLAC++/Makefile index e10b5f1621..d1535f31f7 100644 --- a/release/src/router/flac/src/libFLAC++/Makefile +++ b/release/src/router/flac/src/libFLAC++/Makefile @@ -66,16 +66,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -83,7 +83,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -150,7 +150,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -161,7 +161,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -219,7 +219,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/src/libFLAC/.deps/bitreader.Plo b/release/src/router/flac/src/libFLAC/.deps/bitreader.Plo index 4070e8c16e..ee6618e11e 100644 --- a/release/src/router/flac/src/libFLAC/.deps/bitreader.Plo +++ b/release/src/router/flac/src/libFLAC/.deps/bitreader.Plo @@ -34,7 +34,7 @@ bitreader.lo bitreader.o: bitreader.c ../../config.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ @@ -42,7 +42,7 @@ bitreader.lo bitreader.o: bitreader.c ../../config.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ include/private/bitmath.h ../../include/FLAC/ordinals.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/inttypes.h \ @@ -134,7 +134,7 @@ bitreader.lo bitreader.o: bitreader.c ../../config.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h: -/home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h: +/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h: /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h: @@ -150,7 +150,7 @@ bitreader.lo bitreader.o: bitreader.c ../../config.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h: -/home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h: +/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h: /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h: diff --git a/release/src/router/flac/src/libFLAC/.deps/bitwriter.Plo b/release/src/router/flac/src/libFLAC/.deps/bitwriter.Plo index f34f7a23d1..a18d7a5c00 100644 --- a/release/src/router/flac/src/libFLAC/.deps/bitwriter.Plo +++ b/release/src/router/flac/src/libFLAC/.deps/bitwriter.Plo @@ -34,7 +34,7 @@ bitwriter.lo bitwriter.o: bitwriter.c ../../config.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ @@ -42,7 +42,7 @@ bitwriter.lo bitwriter.o: bitwriter.c ../../config.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ include/private/bitwriter.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdio.h \ @@ -135,7 +135,7 @@ bitwriter.lo bitwriter.o: bitwriter.c ../../config.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h: -/home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h: +/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h: /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h: @@ -151,7 +151,7 @@ bitwriter.lo bitwriter.o: bitwriter.c ../../config.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h: -/home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h: +/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h: /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h: diff --git a/release/src/router/flac/src/libFLAC/.deps/md5.Plo b/release/src/router/flac/src/libFLAC/.deps/md5.Plo index 6bed8944d4..f7302a4f06 100644 --- a/release/src/router/flac/src/libFLAC/.deps/md5.Plo +++ b/release/src/router/flac/src/libFLAC/.deps/md5.Plo @@ -32,7 +32,7 @@ md5.lo md5.o: md5.c ../../config.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h @@ -106,7 +106,7 @@ include/private/md5.h: /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h: -/home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h: +/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h: /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h: diff --git a/release/src/router/flac/src/libFLAC/.deps/memory.Plo b/release/src/router/flac/src/libFLAC/.deps/memory.Plo index 213f41c74f..4d22183e85 100644 --- a/release/src/router/flac/src/libFLAC/.deps/memory.Plo +++ b/release/src/router/flac/src/libFLAC/.deps/memory.Plo @@ -31,7 +31,7 @@ memory.lo memory.o: memory.c ../../config.h include/private/memory.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h @@ -107,7 +107,7 @@ include/private/float.h: /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h: -/home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h: +/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h: /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h: diff --git a/release/src/router/flac/src/libFLAC/.deps/metadata_iterators.Plo b/release/src/router/flac/src/libFLAC/.deps/metadata_iterators.Plo index 005187c489..238352c232 100644 --- a/release/src/router/flac/src/libFLAC/.deps/metadata_iterators.Plo +++ b/release/src/router/flac/src/libFLAC/.deps/metadata_iterators.Plo @@ -6,9 +6,9 @@ metadata_iterators.lo metadata_iterators.o: metadata_iterators.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_arch_features.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/cdefs.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/errno.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/errno.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/errno.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/errno.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/asm-generic/errno-base.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/asm-generic/errno-base.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdio.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stddef.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/types.h \ @@ -62,7 +62,7 @@ metadata_iterators.lo metadata_iterators.o: metadata_iterators.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h @@ -80,11 +80,11 @@ metadata_iterators.lo metadata_iterators.o: metadata_iterators.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/errno.h: -/home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/errno.h: +/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/errno.h: /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/errno.h: -/home/vicente/tomato/release/src-rt/linux/linux-2.6/include/asm-generic/errno-base.h: +/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/asm-generic/errno-base.h: /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdio.h: @@ -200,7 +200,7 @@ include/private/metadata.h: /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h: -/home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h: +/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h: /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h: diff --git a/release/src/router/flac/src/libFLAC/.deps/metadata_object.Plo b/release/src/router/flac/src/libFLAC/.deps/metadata_object.Plo index 2bf6c271f3..296ae69cea 100644 --- a/release/src/router/flac/src/libFLAC/.deps/metadata_object.Plo +++ b/release/src/router/flac/src/libFLAC/.deps/metadata_object.Plo @@ -35,7 +35,7 @@ metadata_object.lo metadata_object.o: metadata_object.c ../../config.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h @@ -119,7 +119,7 @@ include/private/metadata.h: /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h: -/home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h: +/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h: /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h: diff --git a/release/src/router/flac/src/libFLAC/.deps/ogg_decoder_aspect.Plo b/release/src/router/flac/src/libFLAC/.deps/ogg_decoder_aspect.Plo index dc2e6f76dd..752dfd1585 100644 --- a/release/src/router/flac/src/libFLAC/.deps/ogg_decoder_aspect.Plo +++ b/release/src/router/flac/src/libFLAC/.deps/ogg_decoder_aspect.Plo @@ -7,8 +7,8 @@ ogg_decoder_aspect.lo ogg_decoder_aspect.o: ogg_decoder_aspect.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/cdefs.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stddef.h \ ../../include/FLAC/assert.h include/private/ogg_decoder_aspect.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/ogg.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/os_types.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/ogg.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/os_types.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/types.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/types.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wordsize.h \ @@ -24,7 +24,7 @@ ogg_decoder_aspect.lo ogg_decoder_aspect.o: ogg_decoder_aspect.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigset.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/time.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/sysmacros.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/config_types.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/config_types.h \ ../../include/FLAC/ordinals.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/inttypes.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdint.h \ @@ -64,9 +64,9 @@ ogg_decoder_aspect.lo ogg_decoder_aspect.o: ogg_decoder_aspect.c \ include/private/ogg_decoder_aspect.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/ogg.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/ogg.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/os_types.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/os_types.h: /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/types.h: @@ -98,7 +98,7 @@ include/private/ogg_decoder_aspect.h: /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/sysmacros.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/config_types.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/config_types.h: ../../include/FLAC/ordinals.h: diff --git a/release/src/router/flac/src/libFLAC/.deps/ogg_encoder_aspect.Plo b/release/src/router/flac/src/libFLAC/.deps/ogg_encoder_aspect.Plo index eeba01dec8..7faf9f96c4 100644 --- a/release/src/router/flac/src/libFLAC/.deps/ogg_encoder_aspect.Plo +++ b/release/src/router/flac/src/libFLAC/.deps/ogg_encoder_aspect.Plo @@ -7,8 +7,8 @@ ogg_encoder_aspect.lo ogg_encoder_aspect.o: ogg_encoder_aspect.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/cdefs.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stddef.h \ ../../include/FLAC/assert.h include/private/ogg_encoder_aspect.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/ogg.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/os_types.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/ogg.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/os_types.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/types.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/types.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wordsize.h \ @@ -24,7 +24,7 @@ ogg_encoder_aspect.lo ogg_encoder_aspect.o: ogg_encoder_aspect.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigset.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/time.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/sysmacros.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/config_types.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/config_types.h \ ../../include/FLAC/ordinals.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/inttypes.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdint.h \ @@ -65,9 +65,9 @@ ogg_encoder_aspect.lo ogg_encoder_aspect.o: ogg_encoder_aspect.c \ include/private/ogg_encoder_aspect.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/ogg.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/ogg.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/os_types.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/os_types.h: /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/types.h: @@ -99,7 +99,7 @@ include/private/ogg_encoder_aspect.h: /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/sysmacros.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/config_types.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/config_types.h: ../../include/FLAC/ordinals.h: diff --git a/release/src/router/flac/src/libFLAC/.deps/ogg_helper.Plo b/release/src/router/flac/src/libFLAC/.deps/ogg_helper.Plo index 1df7fa467b..4f21a24a00 100644 --- a/release/src/router/flac/src/libFLAC/.deps/ogg_helper.Plo +++ b/release/src/router/flac/src/libFLAC/.deps/ogg_helper.Plo @@ -28,15 +28,15 @@ ogg_helper.lo ogg_helper.o: ogg_helper.c ../../config.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdint.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wchar.h \ include/private/ogg_helper.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/ogg.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/os_types.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/config_types.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/ogg.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/os_types.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/config_types.h \ ../../include/FLAC/stream_encoder.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdio.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_stdio.h \ @@ -121,7 +121,7 @@ ogg_helper.lo ogg_helper.o: ogg_helper.c ../../config.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h: -/home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h: +/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h: /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h: @@ -133,11 +133,11 @@ ogg_helper.lo ogg_helper.o: ogg_helper.c ../../config.h \ include/private/ogg_helper.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/ogg.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/ogg.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/os_types.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/os_types.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/config_types.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/config_types.h: ../../include/FLAC/stream_encoder.h: diff --git a/release/src/router/flac/src/libFLAC/.deps/stream_decoder.Plo b/release/src/router/flac/src/libFLAC/.deps/stream_decoder.Plo index 46cdf1cfa7..fd33abc102 100644 --- a/release/src/router/flac/src/libFLAC/.deps/stream_decoder.Plo +++ b/release/src/router/flac/src/libFLAC/.deps/stream_decoder.Plo @@ -45,7 +45,7 @@ stream_decoder.lo stream_decoder.o: stream_decoder.c ../../config.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdint.h \ @@ -54,9 +54,9 @@ stream_decoder.lo stream_decoder.o: stream_decoder.c ../../config.h \ ../../include/FLAC/ordinals.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/inttypes.h \ include/private/ogg_decoder_aspect.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/ogg.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/os_types.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/config_types.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/ogg.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/os_types.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/config_types.h \ ../../include/FLAC/ordinals.h ../../include/FLAC/stream_decoder.h \ include/private/bitreader.h include/private/cpu.h \ include/private/bitmath.h include/private/cpu.h include/private/crc.h \ @@ -160,7 +160,7 @@ stream_decoder.lo stream_decoder.o: stream_decoder.c ../../config.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h: -/home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h: +/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h: /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h: @@ -182,11 +182,11 @@ include/protected/stream_decoder.h: include/private/ogg_decoder_aspect.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/ogg.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/ogg.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/os_types.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/os_types.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/config_types.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/config_types.h: ../../include/FLAC/ordinals.h: diff --git a/release/src/router/flac/src/libFLAC/.deps/stream_encoder.Plo b/release/src/router/flac/src/libFLAC/.deps/stream_encoder.Plo index 59b6bb00bd..7175de9e87 100644 --- a/release/src/router/flac/src/libFLAC/.deps/stream_encoder.Plo +++ b/release/src/router/flac/src/libFLAC/.deps/stream_encoder.Plo @@ -8,7 +8,7 @@ stream_encoder.lo stream_encoder.o: stream_encoder.c ../../config.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/cdefs.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdio.h \ @@ -52,9 +52,9 @@ stream_encoder.lo stream_encoder.o: stream_encoder.c ../../config.h \ ../../include/share/alloc.h include/protected/stream_encoder.h \ ../../include/FLAC/stream_encoder.h ../../include/FLAC/stream_decoder.h \ include/private/ogg_encoder_aspect.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/ogg.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/os_types.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/config_types.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/ogg.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/os_types.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/config_types.h \ ../../include/FLAC/ordinals.h ../../include/FLAC/stream_encoder.h \ include/private/float.h include/private/bitwriter.h \ include/private/bitmath.h include/private/crc.h include/private/cpu.h \ @@ -85,7 +85,7 @@ stream_encoder.lo stream_encoder.o: stream_encoder.c ../../config.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h: -/home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h: +/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h: /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h: @@ -181,11 +181,11 @@ include/protected/stream_encoder.h: include/private/ogg_encoder_aspect.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/ogg.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/ogg.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/os_types.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/os_types.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/config_types.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/config_types.h: ../../include/FLAC/ordinals.h: diff --git a/release/src/router/flac/src/libFLAC/Makefile b/release/src/router/flac/src/libFLAC/Makefile index b40e9c4b6f..d6638ea8cf 100644 --- a/release/src/router/flac/src/libFLAC/Makefile +++ b/release/src/router/flac/src/libFLAC/Makefile @@ -66,16 +66,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -83,7 +83,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -150,7 +150,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -161,7 +161,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -219,7 +219,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/src/libFLAC/ia32/Makefile b/release/src/router/flac/src/libFLAC/ia32/Makefile index 3a86ff992a..6d71c93835 100644 --- a/release/src/router/flac/src/libFLAC/ia32/Makefile +++ b/release/src/router/flac/src/libFLAC/ia32/Makefile @@ -66,16 +66,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -83,7 +83,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -150,7 +150,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -161,7 +161,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -219,7 +219,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/src/libFLAC/include/Makefile b/release/src/router/flac/src/libFLAC/include/Makefile index a587bc9892..1bb6abb253 100644 --- a/release/src/router/flac/src/libFLAC/include/Makefile +++ b/release/src/router/flac/src/libFLAC/include/Makefile @@ -66,16 +66,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -83,7 +83,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -150,7 +150,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -161,7 +161,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -219,7 +219,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/src/libFLAC/include/private/Makefile b/release/src/router/flac/src/libFLAC/include/private/Makefile index 57218e5679..214e315d61 100644 --- a/release/src/router/flac/src/libFLAC/include/private/Makefile +++ b/release/src/router/flac/src/libFLAC/include/private/Makefile @@ -66,16 +66,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -83,7 +83,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -150,7 +150,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -161,7 +161,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -219,7 +219,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/src/libFLAC/include/protected/Makefile b/release/src/router/flac/src/libFLAC/include/protected/Makefile index 7a2f9a1968..13a6f9f91b 100644 --- a/release/src/router/flac/src/libFLAC/include/protected/Makefile +++ b/release/src/router/flac/src/libFLAC/include/protected/Makefile @@ -66,16 +66,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -83,7 +83,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -150,7 +150,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -161,7 +161,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -219,7 +219,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/src/libFLAC/ppc/Makefile b/release/src/router/flac/src/libFLAC/ppc/Makefile index 8f2642b435..623faf846d 100644 --- a/release/src/router/flac/src/libFLAC/ppc/Makefile +++ b/release/src/router/flac/src/libFLAC/ppc/Makefile @@ -66,16 +66,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -83,7 +83,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -150,7 +150,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -161,7 +161,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -219,7 +219,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/src/libFLAC/ppc/as/Makefile b/release/src/router/flac/src/libFLAC/ppc/as/Makefile index ab0a5db0c4..b645454b66 100644 --- a/release/src/router/flac/src/libFLAC/ppc/as/Makefile +++ b/release/src/router/flac/src/libFLAC/ppc/as/Makefile @@ -66,16 +66,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -83,7 +83,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -150,7 +150,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -161,7 +161,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -219,7 +219,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/src/libFLAC/ppc/gas/Makefile b/release/src/router/flac/src/libFLAC/ppc/gas/Makefile index 4299771568..dcfca12f54 100644 --- a/release/src/router/flac/src/libFLAC/ppc/gas/Makefile +++ b/release/src/router/flac/src/libFLAC/ppc/gas/Makefile @@ -66,16 +66,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -83,7 +83,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -150,7 +150,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -161,7 +161,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -219,7 +219,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/src/metaflac/Makefile b/release/src/router/flac/src/metaflac/Makefile index a55f83d7d9..b6c8856795 100644 --- a/release/src/router/flac/src/metaflac/Makefile +++ b/release/src/router/flac/src/metaflac/Makefile @@ -53,16 +53,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -70,7 +70,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -137,7 +137,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -148,7 +148,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -206,7 +206,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/src/monkeys_audio_utilities/Makefile b/release/src/router/flac/src/monkeys_audio_utilities/Makefile index f7edbfa272..5058c4efa4 100644 --- a/release/src/router/flac/src/monkeys_audio_utilities/Makefile +++ b/release/src/router/flac/src/monkeys_audio_utilities/Makefile @@ -53,16 +53,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -70,7 +70,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -137,7 +137,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -148,7 +148,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -206,7 +206,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/src/monkeys_audio_utilities/flac_mac/Makefile b/release/src/router/flac/src/monkeys_audio_utilities/flac_mac/Makefile index c32a81f55e..05d4953344 100644 --- a/release/src/router/flac/src/monkeys_audio_utilities/flac_mac/Makefile +++ b/release/src/router/flac/src/monkeys_audio_utilities/flac_mac/Makefile @@ -53,16 +53,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -70,7 +70,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -137,7 +137,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -148,7 +148,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -206,7 +206,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/src/monkeys_audio_utilities/flac_ren/Makefile b/release/src/router/flac/src/monkeys_audio_utilities/flac_ren/Makefile index 0543800537..f4498fee41 100644 --- a/release/src/router/flac/src/monkeys_audio_utilities/flac_ren/Makefile +++ b/release/src/router/flac/src/monkeys_audio_utilities/flac_ren/Makefile @@ -53,16 +53,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -70,7 +70,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -137,7 +137,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -148,7 +148,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -206,7 +206,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/src/plugin_common/Makefile b/release/src/router/flac/src/plugin_common/Makefile index e1fb07ad90..0de3ca0e40 100644 --- a/release/src/router/flac/src/plugin_common/Makefile +++ b/release/src/router/flac/src/plugin_common/Makefile @@ -53,16 +53,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -70,7 +70,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -137,7 +137,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -148,7 +148,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -206,7 +206,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/src/plugin_winamp2/Makefile b/release/src/router/flac/src/plugin_winamp2/Makefile index 5b1e0b3737..0109d78886 100644 --- a/release/src/router/flac/src/plugin_winamp2/Makefile +++ b/release/src/router/flac/src/plugin_winamp2/Makefile @@ -53,16 +53,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -70,7 +70,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -137,7 +137,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -148,7 +148,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -206,7 +206,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/src/plugin_winamp2/include/Makefile b/release/src/router/flac/src/plugin_winamp2/include/Makefile index 7070513269..55afed1d1e 100644 --- a/release/src/router/flac/src/plugin_winamp2/include/Makefile +++ b/release/src/router/flac/src/plugin_winamp2/include/Makefile @@ -53,16 +53,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -70,7 +70,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -137,7 +137,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -148,7 +148,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -206,7 +206,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/src/plugin_winamp2/include/winamp2/Makefile b/release/src/router/flac/src/plugin_winamp2/include/winamp2/Makefile index 8c90d26c24..8f48c46462 100644 --- a/release/src/router/flac/src/plugin_winamp2/include/winamp2/Makefile +++ b/release/src/router/flac/src/plugin_winamp2/include/winamp2/Makefile @@ -53,16 +53,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -70,7 +70,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -137,7 +137,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -148,7 +148,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -206,7 +206,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/src/plugin_xmms/Makefile b/release/src/router/flac/src/plugin_xmms/Makefile index bb421d643b..4dbe8126d5 100644 --- a/release/src/router/flac/src/plugin_xmms/Makefile +++ b/release/src/router/flac/src/plugin_xmms/Makefile @@ -57,16 +57,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -74,7 +74,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -141,7 +141,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -154,7 +154,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -212,7 +212,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/src/share/Makefile b/release/src/router/flac/src/share/Makefile index 445cf7af86..950274eae6 100644 --- a/release/src/router/flac/src/share/Makefile +++ b/release/src/router/flac/src/share/Makefile @@ -53,16 +53,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -70,7 +70,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -137,7 +137,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -148,7 +148,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -206,7 +206,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/src/share/getopt/Makefile b/release/src/router/flac/src/share/getopt/Makefile index 33f945ca42..1fa7442a5e 100644 --- a/release/src/router/flac/src/share/getopt/Makefile +++ b/release/src/router/flac/src/share/getopt/Makefile @@ -36,16 +36,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -53,7 +53,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -120,7 +120,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -131,7 +131,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -189,7 +189,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/src/share/grabbag/Makefile b/release/src/router/flac/src/share/grabbag/Makefile index 74a4e0ca58..ce8c6d3a7b 100644 --- a/release/src/router/flac/src/share/grabbag/Makefile +++ b/release/src/router/flac/src/share/grabbag/Makefile @@ -36,16 +36,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -53,7 +53,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -120,7 +120,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -131,7 +131,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -189,7 +189,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/src/share/replaygain_analysis/Makefile b/release/src/router/flac/src/share/replaygain_analysis/Makefile index bf9cc5e813..12ed44b694 100644 --- a/release/src/router/flac/src/share/replaygain_analysis/Makefile +++ b/release/src/router/flac/src/share/replaygain_analysis/Makefile @@ -36,16 +36,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -53,7 +53,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -120,7 +120,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -131,7 +131,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -189,7 +189,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/src/share/replaygain_synthesis/Makefile b/release/src/router/flac/src/share/replaygain_synthesis/Makefile index c772b34a39..887e1ce05d 100644 --- a/release/src/router/flac/src/share/replaygain_synthesis/Makefile +++ b/release/src/router/flac/src/share/replaygain_synthesis/Makefile @@ -36,16 +36,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -53,7 +53,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -120,7 +120,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -131,7 +131,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -189,7 +189,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/src/share/replaygain_synthesis/include/Makefile b/release/src/router/flac/src/share/replaygain_synthesis/include/Makefile index 4d76b8fe1f..475b437fed 100644 --- a/release/src/router/flac/src/share/replaygain_synthesis/include/Makefile +++ b/release/src/router/flac/src/share/replaygain_synthesis/include/Makefile @@ -53,16 +53,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -70,7 +70,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -137,7 +137,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -148,7 +148,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -206,7 +206,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/src/share/replaygain_synthesis/include/private/Makefile b/release/src/router/flac/src/share/replaygain_synthesis/include/private/Makefile index c9099516f6..bcf953463a 100644 --- a/release/src/router/flac/src/share/replaygain_synthesis/include/private/Makefile +++ b/release/src/router/flac/src/share/replaygain_synthesis/include/private/Makefile @@ -53,16 +53,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -70,7 +70,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -137,7 +137,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -148,7 +148,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -206,7 +206,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/src/share/utf8/Makefile b/release/src/router/flac/src/share/utf8/Makefile index 5e76caf579..ea2c8d11ea 100644 --- a/release/src/router/flac/src/share/utf8/Makefile +++ b/release/src/router/flac/src/share/utf8/Makefile @@ -36,16 +36,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -53,7 +53,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -120,7 +120,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -131,7 +131,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -189,7 +189,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/src/test_grabbag/Makefile b/release/src/router/flac/src/test_grabbag/Makefile index 91a3e2c614..28f0bc978d 100644 --- a/release/src/router/flac/src/test_grabbag/Makefile +++ b/release/src/router/flac/src/test_grabbag/Makefile @@ -53,16 +53,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -70,7 +70,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -137,7 +137,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -148,7 +148,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -206,7 +206,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/src/test_grabbag/cuesheet/Makefile b/release/src/router/flac/src/test_grabbag/cuesheet/Makefile index 016c24415a..ccad8e00dc 100644 --- a/release/src/router/flac/src/test_grabbag/cuesheet/Makefile +++ b/release/src/router/flac/src/test_grabbag/cuesheet/Makefile @@ -53,16 +53,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -70,7 +70,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -137,7 +137,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -148,7 +148,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -206,7 +206,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/src/test_grabbag/picture/Makefile b/release/src/router/flac/src/test_grabbag/picture/Makefile index 797de8dece..5d157c787b 100644 --- a/release/src/router/flac/src/test_grabbag/picture/Makefile +++ b/release/src/router/flac/src/test_grabbag/picture/Makefile @@ -53,16 +53,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -70,7 +70,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -137,7 +137,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -148,7 +148,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -206,7 +206,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/src/test_libFLAC++/Makefile b/release/src/router/flac/src/test_libFLAC++/Makefile index 0d5a82cb2c..e0c444eca6 100644 --- a/release/src/router/flac/src/test_libFLAC++/Makefile +++ b/release/src/router/flac/src/test_libFLAC++/Makefile @@ -53,16 +53,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -70,7 +70,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -137,7 +137,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -148,7 +148,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -206,7 +206,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/src/test_libFLAC/Makefile b/release/src/router/flac/src/test_libFLAC/Makefile index 7f106ad6f3..8f5394b998 100644 --- a/release/src/router/flac/src/test_libFLAC/Makefile +++ b/release/src/router/flac/src/test_libFLAC/Makefile @@ -53,16 +53,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -70,7 +70,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -137,7 +137,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -148,7 +148,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -206,7 +206,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/src/test_libs_common/Makefile b/release/src/router/flac/src/test_libs_common/Makefile index 339702dfb1..3d5b9fc099 100644 --- a/release/src/router/flac/src/test_libs_common/Makefile +++ b/release/src/router/flac/src/test_libs_common/Makefile @@ -53,16 +53,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -70,7 +70,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -137,7 +137,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -148,7 +148,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -206,7 +206,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/src/test_seeking/Makefile b/release/src/router/flac/src/test_seeking/Makefile index 056b5dd68b..4736e40c7d 100644 --- a/release/src/router/flac/src/test_seeking/Makefile +++ b/release/src/router/flac/src/test_seeking/Makefile @@ -53,16 +53,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -70,7 +70,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -137,7 +137,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -148,7 +148,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -206,7 +206,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/src/test_streams/Makefile b/release/src/router/flac/src/test_streams/Makefile index 0d37511c11..22dd23df37 100644 --- a/release/src/router/flac/src/test_streams/Makefile +++ b/release/src/router/flac/src/test_streams/Makefile @@ -53,16 +53,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -70,7 +70,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -137,7 +137,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -148,7 +148,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -206,7 +206,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/test/Makefile b/release/src/router/flac/test/Makefile index 4f33f46f94..9153540c17 100644 --- a/release/src/router/flac/test/Makefile +++ b/release/src/router/flac/test/Makefile @@ -53,16 +53,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -70,7 +70,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -137,7 +137,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -148,7 +148,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -206,7 +206,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/test/cuesheets/Makefile b/release/src/router/flac/test/cuesheets/Makefile index 6b3a1a2278..8d0c7e5f1f 100644 --- a/release/src/router/flac/test/cuesheets/Makefile +++ b/release/src/router/flac/test/cuesheets/Makefile @@ -53,16 +53,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -70,7 +70,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -137,7 +137,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -148,7 +148,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -206,7 +206,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/test/flac-to-flac-metadata-test-files/Makefile b/release/src/router/flac/test/flac-to-flac-metadata-test-files/Makefile index ff52371e00..b4e410e159 100644 --- a/release/src/router/flac/test/flac-to-flac-metadata-test-files/Makefile +++ b/release/src/router/flac/test/flac-to-flac-metadata-test-files/Makefile @@ -53,16 +53,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -70,7 +70,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -137,7 +137,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -148,7 +148,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -206,7 +206,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/test/metaflac-test-files/Makefile b/release/src/router/flac/test/metaflac-test-files/Makefile index 99f05caa83..8d9df20b06 100644 --- a/release/src/router/flac/test/metaflac-test-files/Makefile +++ b/release/src/router/flac/test/metaflac-test-files/Makefile @@ -53,16 +53,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -70,7 +70,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -137,7 +137,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -148,7 +148,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -206,7 +206,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/flac/test/pictures/Makefile b/release/src/router/flac/test/pictures/Makefile index 8a6cfe6e2b..426ef830d9 100644 --- a/release/src/router/flac/test/pictures/Makefile +++ b/release/src/router/flac/test/pictures/Makefile @@ -53,16 +53,16 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = mipsel-unknown-linux-gnu -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run aclocal-1.7 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run aclocal-1.7 ACLOCAL_AMFLAGS = -I m4 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run tar AR = mipsel-uclibc-ar AS = gas -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run automake-1.7 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run automake-1.7 AWK = gawk CC = mipsel-uclibc-gcc CCAS = $(CC) @@ -70,7 +70,7 @@ CCASFLAGS = $(CFLAGS) CCDEPMODE = depmode=gcc3 CFLAGS = -O3 -funroll-loops -finline-functions -Wall -W -Winline -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include -I/home/vicente/tomato/release/src-rt/linux/linux-2.6/include +CPPFLAGS = -DFLaC__INLINE=__inline__ -DNDEBUG -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include -I/home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -137,7 +137,7 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBICONV = LIBOBJS = LIBS = @@ -148,7 +148,7 @@ LTLIBOBJS = MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/flac/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/flac/missing --run makeinfo MINGW_WINSOCK_LIBS = NASM = OBJEXT = o @@ -206,7 +206,7 @@ host_os = linux-gnu host_vendor = unknown includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/flac/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/flac/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var diff --git a/release/src/router/igmpproxy/Makefile b/release/src/router/igmpproxy/Makefile index 3fe199cfe1..647a17c259 100644 --- a/release/src/router/igmpproxy/Makefile +++ b/release/src/router/igmpproxy/Makefile @@ -126,11 +126,11 @@ DIST_ARCHIVES = $(distdir).tar.gz GZIP_ENV = --best distuninstallcheck_listfiles = find . -type f -print distcleancheck_listfiles = find . -type f -print -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/igmpproxy/missing --run aclocal-1.11 -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/igmpproxy/missing --run tar -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/igmpproxy/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/igmpproxy/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/igmpproxy/missing --run automake-1.11 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/igmpproxy/missing --run aclocal-1.11 +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/igmpproxy/missing --run tar +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/igmpproxy/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/igmpproxy/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/igmpproxy/missing --run automake-1.11 AWK = gawk CC = mipsel-uclibc-gcc -std=gnu99 CCDEPMODE = depmode=gcc3 @@ -152,7 +152,7 @@ LDFLAGS = -ffunction-sections -fdata-sections -Wl,--gc-sections LIBOBJS = LIBS = LTLIBOBJS = -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/igmpproxy/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/igmpproxy/missing --run makeinfo MKDIR_P = /bin/mkdir -p OBJEXT = o PACKAGE = igmpproxy @@ -166,10 +166,10 @@ SET_MAKE = SHELL = /bin/sh STRIP = mipsel-uclibc-strip -R .note -R .comment VERSION = 0.1 -abs_builddir = /home/vicente/tomato/release/src/router/igmpproxy -abs_srcdir = /home/vicente/tomato/release/src/router/igmpproxy -abs_top_builddir = /home/vicente/tomato/release/src/router/igmpproxy -abs_top_srcdir = /home/vicente/tomato/release/src/router/igmpproxy +abs_builddir = /home/vicente/repos/tomato/release/src/router/igmpproxy +abs_srcdir = /home/vicente/repos/tomato/release/src/router/igmpproxy +abs_top_builddir = /home/vicente/repos/tomato/release/src/router/igmpproxy +abs_top_srcdir = /home/vicente/repos/tomato/release/src/router/igmpproxy ac_ct_CC = am__include = include am__leading_dot = . @@ -196,7 +196,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = ${SHELL} /home/vicente/tomato/release/src/router/igmpproxy/install-sh +install_sh = ${SHELL} /home/vicente/repos/tomato/release/src/router/igmpproxy/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = ${datarootdir}/locale diff --git a/release/src/router/igmpproxy/doc/Makefile b/release/src/router/igmpproxy/doc/Makefile index 1fa44db48f..b2649a38bb 100644 --- a/release/src/router/igmpproxy/doc/Makefile +++ b/release/src/router/igmpproxy/doc/Makefile @@ -73,11 +73,11 @@ man8dir = $(mandir)/man8 NROFF = nroff MANS = $(man_MANS) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/igmpproxy/missing --run aclocal-1.11 -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/igmpproxy/missing --run tar -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/igmpproxy/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/igmpproxy/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/igmpproxy/missing --run automake-1.11 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/igmpproxy/missing --run aclocal-1.11 +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/igmpproxy/missing --run tar +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/igmpproxy/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/igmpproxy/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/igmpproxy/missing --run automake-1.11 AWK = gawk CC = mipsel-uclibc-gcc -std=gnu99 CCDEPMODE = depmode=gcc3 @@ -99,7 +99,7 @@ LDFLAGS = -ffunction-sections -fdata-sections -Wl,--gc-sections LIBOBJS = LIBS = LTLIBOBJS = -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/igmpproxy/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/igmpproxy/missing --run makeinfo MKDIR_P = /bin/mkdir -p OBJEXT = o PACKAGE = igmpproxy @@ -113,10 +113,10 @@ SET_MAKE = SHELL = /bin/sh STRIP = mipsel-uclibc-strip -R .note -R .comment VERSION = 0.1 -abs_builddir = /home/vicente/tomato/release/src/router/igmpproxy/doc -abs_srcdir = /home/vicente/tomato/release/src/router/igmpproxy/doc -abs_top_builddir = /home/vicente/tomato/release/src/router/igmpproxy -abs_top_srcdir = /home/vicente/tomato/release/src/router/igmpproxy +abs_builddir = /home/vicente/repos/tomato/release/src/router/igmpproxy/doc +abs_srcdir = /home/vicente/repos/tomato/release/src/router/igmpproxy/doc +abs_top_builddir = /home/vicente/repos/tomato/release/src/router/igmpproxy +abs_top_srcdir = /home/vicente/repos/tomato/release/src/router/igmpproxy ac_ct_CC = am__include = include am__leading_dot = . @@ -143,7 +143,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = ${SHELL} /home/vicente/tomato/release/src/router/igmpproxy/install-sh +install_sh = ${SHELL} /home/vicente/repos/tomato/release/src/router/igmpproxy/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = ${datarootdir}/locale diff --git a/release/src-rt/bcmcrypto/prebuilt/.dummy b/release/src/router/iptables/.makefirst similarity index 100% rename from release/src-rt/bcmcrypto/prebuilt/.dummy rename to release/src/router/iptables/.makefirst diff --git a/release/src/router/iptables/extensions/libip6t_CONNMARK.d b/release/src/router/iptables/extensions/libip6t_CONNMARK.d index 2a15381cd3..cce420c8de 100644 --- a/release/src/router/iptables/extensions/libip6t_CONNMARK.d +++ b/release/src/router/iptables/extensions/libip6t_CONNMARK.d @@ -45,7 +45,7 @@ extensions/libip6t_CONNMARK.d extensions/libip6t_CONNMARK_sh.o: extensions/libip /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip.h \ @@ -60,22 +60,22 @@ extensions/libip6t_CONNMARK.d extensions/libip6t_CONNMARK_sh.o: extensions/libip /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip_icmp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6_tables.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ipt_CONNMARK.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_CONNMARK.h + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ipt_CONNMARK.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_CONNMARK.h diff --git a/release/src/router/iptables/extensions/libip6t_HL.d b/release/src/router/iptables/extensions/libip6t_HL.d index 56b6825050..287fbaa920 100644 --- a/release/src/router/iptables/extensions/libip6t_HL.d +++ b/release/src/router/iptables/extensions/libip6t_HL.d @@ -45,7 +45,7 @@ extensions/libip6t_HL.d extensions/libip6t_HL_sh.o: extensions/libip6t_HL.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip.h \ @@ -60,21 +60,21 @@ extensions/libip6t_HL.d extensions/libip6t_HL_sh.o: extensions/libip6t_HL.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip_icmp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6_tables.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6t_HL.h + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6t_HL.h diff --git a/release/src/router/iptables/extensions/libip6t_IMQ.d b/release/src/router/iptables/extensions/libip6t_IMQ.d index ce62e03868..759a7fc698 100644 --- a/release/src/router/iptables/extensions/libip6t_IMQ.d +++ b/release/src/router/iptables/extensions/libip6t_IMQ.d @@ -45,7 +45,7 @@ extensions/libip6t_IMQ.d extensions/libip6t_IMQ_sh.o: extensions/libip6t_IMQ.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip.h \ @@ -60,22 +60,22 @@ extensions/libip6t_IMQ.d extensions/libip6t_IMQ_sh.o: extensions/libip6t_IMQ.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip_icmp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6_tables.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6t_IMQ.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_IMQ.h + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6t_IMQ.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_IMQ.h diff --git a/release/src/router/iptables/extensions/libip6t_LOG.d b/release/src/router/iptables/extensions/libip6t_LOG.d index b9011c56c2..b1a83c5490 100644 --- a/release/src/router/iptables/extensions/libip6t_LOG.d +++ b/release/src/router/iptables/extensions/libip6t_LOG.d @@ -45,7 +45,7 @@ extensions/libip6t_LOG.d extensions/libip6t_LOG_sh.o: extensions/libip6t_LOG.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ @@ -53,7 +53,7 @@ extensions/libip6t_LOG.d extensions/libip6t_LOG_sh.o: extensions/libip6t_LOG.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/rpc/netdb.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/netdb.h \ @@ -71,15 +71,15 @@ extensions/libip6t_LOG.d extensions/libip6t_LOG_sh.o: extensions/libip6t_LOG.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6_tables.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6t_LOG.h + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6t_LOG.h diff --git a/release/src/router/iptables/extensions/libip6t_MARK.d b/release/src/router/iptables/extensions/libip6t_MARK.d index a4e4917db8..d8990486ed 100644 --- a/release/src/router/iptables/extensions/libip6t_MARK.d +++ b/release/src/router/iptables/extensions/libip6t_MARK.d @@ -45,7 +45,7 @@ extensions/libip6t_MARK.d extensions/libip6t_MARK_sh.o: extensions/libip6t_MARK. /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip.h \ @@ -60,21 +60,21 @@ extensions/libip6t_MARK.d extensions/libip6t_MARK_sh.o: extensions/libip6t_MARK. /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip_icmp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6_tables.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ extensions/../include/linux/netfilter_ipv6/ip6t_MARK.h diff --git a/release/src/router/iptables/extensions/libip6t_NFQUEUE.d b/release/src/router/iptables/extensions/libip6t_NFQUEUE.d index 00a828ac01..08cc612f41 100644 --- a/release/src/router/iptables/extensions/libip6t_NFQUEUE.d +++ b/release/src/router/iptables/extensions/libip6t_NFQUEUE.d @@ -45,7 +45,7 @@ extensions/libip6t_NFQUEUE.d extensions/libip6t_NFQUEUE_sh.o: extensions/libip6t /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip.h \ @@ -60,22 +60,22 @@ extensions/libip6t_NFQUEUE.d extensions/libip6t_NFQUEUE_sh.o: extensions/libip6t /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip_icmp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6_tables.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ipt_NFQUEUE.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_NFQUEUE.h + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ipt_NFQUEUE.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_NFQUEUE.h diff --git a/release/src/router/iptables/extensions/libip6t_REJECT.d b/release/src/router/iptables/extensions/libip6t_REJECT.d index f7776988db..40e6034704 100644 --- a/release/src/router/iptables/extensions/libip6t_REJECT.d +++ b/release/src/router/iptables/extensions/libip6t_REJECT.d @@ -45,7 +45,7 @@ extensions/libip6t_REJECT.d extensions/libip6t_REJECT_sh.o: extensions/libip6t_R /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip.h \ @@ -60,21 +60,21 @@ extensions/libip6t_REJECT.d extensions/libip6t_REJECT_sh.o: extensions/libip6t_R /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip_icmp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6_tables.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6t_REJECT.h + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6t_REJECT.h diff --git a/release/src/router/iptables/extensions/libip6t_ROUTE.d b/release/src/router/iptables/extensions/libip6t_ROUTE.d index 5351748c78..b831d4aef1 100644 --- a/release/src/router/iptables/extensions/libip6t_ROUTE.d +++ b/release/src/router/iptables/extensions/libip6t_ROUTE.d @@ -48,7 +48,7 @@ extensions/libip6t_ROUTE.d extensions/libip6t_ROUTE_sh.o: extensions/libip6t_ROU /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ @@ -59,7 +59,7 @@ extensions/libip6t_ROUTE.d extensions/libip6t_ROUTE_sh.o: extensions/libip6t_ROU /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/in.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdint.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ include/ip6tables.h include/iptables_common.h \ include/libiptc/libip6tc.h include/libiptc/ipt_kernel_headers.h \ @@ -67,15 +67,15 @@ extensions/libip6t_ROUTE.d extensions/libip6t_ROUTE_sh.o: extensions/libip6t_ROU /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip_icmp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6_tables.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6t_ROUTE.h + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6t_ROUTE.h diff --git a/release/src/router/iptables/extensions/libip6t_TCPMSS.d b/release/src/router/iptables/extensions/libip6t_TCPMSS.d index 3fa7828e84..1f67f81aa8 100644 --- a/release/src/router/iptables/extensions/libip6t_TCPMSS.d +++ b/release/src/router/iptables/extensions/libip6t_TCPMSS.d @@ -45,7 +45,7 @@ extensions/libip6t_TCPMSS.d extensions/libip6t_TCPMSS_sh.o: extensions/libip6t_T /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip.h \ @@ -60,21 +60,21 @@ extensions/libip6t_TCPMSS.d extensions/libip6t_TCPMSS_sh.o: extensions/libip6t_T /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip_icmp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6_tables.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ include/linux/netfilter_ipv6/ip6t_TCPMSS.h diff --git a/release/src/router/iptables/extensions/libip6t_connbytes.d b/release/src/router/iptables/extensions/libip6t_connbytes.d index 7f64a4f5ce..11657d07af 100644 --- a/release/src/router/iptables/extensions/libip6t_connbytes.d +++ b/release/src/router/iptables/extensions/libip6t_connbytes.d @@ -45,7 +45,7 @@ extensions/libip6t_connbytes.d extensions/libip6t_connbytes_sh.o: extensions/lib /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ @@ -53,7 +53,7 @@ extensions/libip6t_connbytes.d extensions/libip6t_connbytes_sh.o: extensions/lib /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/rpc/netdb.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/netdb.h \ @@ -69,17 +69,17 @@ extensions/libip6t_connbytes.d extensions/libip6t_connbytes_sh.o: extensions/lib /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6_tables.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/nf_conntrack_common.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ipt_connbytes.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_connbytes.h + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/nf_conntrack_common.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ipt_connbytes.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_connbytes.h diff --git a/release/src/router/iptables/extensions/libip6t_connlimit.d b/release/src/router/iptables/extensions/libip6t_connlimit.d index 6f8810ff7e..908a115144 100644 --- a/release/src/router/iptables/extensions/libip6t_connlimit.d +++ b/release/src/router/iptables/extensions/libip6t_connlimit.d @@ -45,7 +45,7 @@ extensions/libip6t_connlimit.d extensions/libip6t_connlimit_sh.o: extensions/lib /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ @@ -53,7 +53,7 @@ extensions/libip6t_connlimit.d extensions/libip6t_connlimit_sh.o: extensions/lib /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/rpc/netdb.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/netdb.h \ @@ -69,15 +69,15 @@ extensions/libip6t_connlimit.d extensions/libip6t_connlimit_sh.o: extensions/lib /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6_tables.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_connlimit.h + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_connlimit.h diff --git a/release/src/router/iptables/extensions/libip6t_connmark.d b/release/src/router/iptables/extensions/libip6t_connmark.d index a6ca47f30f..8497272d3e 100644 --- a/release/src/router/iptables/extensions/libip6t_connmark.d +++ b/release/src/router/iptables/extensions/libip6t_connmark.d @@ -45,7 +45,7 @@ extensions/libip6t_connmark.d extensions/libip6t_connmark_sh.o: extensions/libip /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ @@ -53,7 +53,7 @@ extensions/libip6t_connmark.d extensions/libip6t_connmark_sh.o: extensions/libip /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/rpc/netdb.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/netdb.h \ @@ -69,15 +69,15 @@ extensions/libip6t_connmark.d extensions/libip6t_connmark_sh.o: extensions/libip /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6_tables.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ extensions/../include/linux/netfilter_ipv4/ipt_connmark.h diff --git a/release/src/router/iptables/extensions/libip6t_dscp.d b/release/src/router/iptables/extensions/libip6t_dscp.d index 83406d0a64..14074c7b88 100644 --- a/release/src/router/iptables/extensions/libip6t_dscp.d +++ b/release/src/router/iptables/extensions/libip6t_dscp.d @@ -45,7 +45,7 @@ extensions/libip6t_dscp.d extensions/libip6t_dscp_sh.o: extensions/libip6t_dscp. /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip.h \ @@ -60,22 +60,22 @@ extensions/libip6t_dscp.d extensions/libip6t_dscp_sh.o: extensions/libip6t_dscp. /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip_icmp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6_tables.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_dscp.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_dscp.h \ extensions/libipt_dscp_helper.c include/iptables_common.h diff --git a/release/src/router/iptables/extensions/libip6t_hashlimit.d b/release/src/router/iptables/extensions/libip6t_hashlimit.d index 4d2293f21b..345d50f385 100644 --- a/release/src/router/iptables/extensions/libip6t_hashlimit.d +++ b/release/src/router/iptables/extensions/libip6t_hashlimit.d @@ -45,7 +45,7 @@ extensions/libip6t_hashlimit.d extensions/libip6t_hashlimit_sh.o: extensions/lib /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip.h \ @@ -60,21 +60,21 @@ extensions/libip6t_hashlimit.d extensions/libip6t_hashlimit_sh.o: extensions/lib /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip_icmp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6_tables.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_hashlimit.h + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_hashlimit.h diff --git a/release/src/router/iptables/extensions/libip6t_hl.d b/release/src/router/iptables/extensions/libip6t_hl.d index 1e2db47b1c..64d9ce9bfd 100644 --- a/release/src/router/iptables/extensions/libip6t_hl.d +++ b/release/src/router/iptables/extensions/libip6t_hl.d @@ -45,7 +45,7 @@ extensions/libip6t_hl.d extensions/libip6t_hl_sh.o: extensions/libip6t_hl.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip.h \ @@ -60,21 +60,21 @@ extensions/libip6t_hl.d extensions/libip6t_hl_sh.o: extensions/libip6t_hl.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip_icmp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6_tables.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6t_hl.h + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6t_hl.h diff --git a/release/src/router/iptables/extensions/libip6t_icmp6.d b/release/src/router/iptables/extensions/libip6t_icmp6.d index a50736ae97..21a5628a74 100644 --- a/release/src/router/iptables/extensions/libip6t_icmp6.d +++ b/release/src/router/iptables/extensions/libip6t_icmp6.d @@ -45,7 +45,7 @@ extensions/libip6t_icmp6.d extensions/libip6t_icmp6_sh.o: extensions/libip6t_icm /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ @@ -53,7 +53,7 @@ extensions/libip6t_icmp6.d extensions/libip6t_icmp6_sh.o: extensions/libip6t_icm /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/rpc/netdb.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/netdb.h \ @@ -69,14 +69,14 @@ extensions/libip6t_icmp6.d extensions/libip6t_icmp6_sh.o: extensions/libip6t_icm /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6_tables.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h diff --git a/release/src/router/iptables/extensions/libip6t_iprange.d b/release/src/router/iptables/extensions/libip6t_iprange.d index 0ffc4e8359..e5392e725d 100644 --- a/release/src/router/iptables/extensions/libip6t_iprange.d +++ b/release/src/router/iptables/extensions/libip6t_iprange.d @@ -45,7 +45,7 @@ extensions/libip6t_iprange.d extensions/libip6t_iprange_sh.o: extensions/libip6t /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ @@ -53,7 +53,7 @@ extensions/libip6t_iprange.d extensions/libip6t_iprange_sh.o: extensions/libip6t /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/rpc/netdb.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/netdb.h \ @@ -70,15 +70,15 @@ extensions/libip6t_iprange.d extensions/libip6t_iprange_sh.o: extensions/libip6t /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6_tables.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_iprange.h + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_iprange.h diff --git a/release/src/router/iptables/extensions/libip6t_length.d b/release/src/router/iptables/extensions/libip6t_length.d index 0d5f244dfd..8d0bd1b60a 100644 --- a/release/src/router/iptables/extensions/libip6t_length.d +++ b/release/src/router/iptables/extensions/libip6t_length.d @@ -45,7 +45,7 @@ extensions/libip6t_length.d extensions/libip6t_length_sh.o: extensions/libip6t_l /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ @@ -53,7 +53,7 @@ extensions/libip6t_length.d extensions/libip6t_length_sh.o: extensions/libip6t_l /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/rpc/netdb.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/netdb.h \ @@ -69,16 +69,16 @@ extensions/libip6t_length.d extensions/libip6t_length_sh.o: extensions/libip6t_l /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6_tables.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6t_length.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_length.h + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6t_length.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_length.h diff --git a/release/src/router/iptables/extensions/libip6t_limit.d b/release/src/router/iptables/extensions/libip6t_limit.d index 74b9b5ca20..ff9aa723f3 100644 --- a/release/src/router/iptables/extensions/libip6t_limit.d +++ b/release/src/router/iptables/extensions/libip6t_limit.d @@ -45,7 +45,7 @@ extensions/libip6t_limit.d extensions/libip6t_limit_sh.o: extensions/libip6t_lim /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip.h \ @@ -60,21 +60,21 @@ extensions/libip6t_limit.d extensions/libip6t_limit_sh.o: extensions/libip6t_lim /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip_icmp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6_tables.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ extensions/../include/linux/netfilter_ipv6/ip6t_limit.h diff --git a/release/src/router/iptables/extensions/libip6t_mac.d b/release/src/router/iptables/extensions/libip6t_mac.d index d6de5e2df3..2d1477b762 100644 --- a/release/src/router/iptables/extensions/libip6t_mac.d +++ b/release/src/router/iptables/extensions/libip6t_mac.d @@ -45,7 +45,7 @@ extensions/libip6t_mac.d extensions/libip6t_mac_sh.o: extensions/libip6t_mac.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ @@ -53,7 +53,7 @@ extensions/libip6t_mac.d extensions/libip6t_mac_sh.o: extensions/libip6t_mac.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/rpc/netdb.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/netdb.h \ @@ -63,11 +63,11 @@ extensions/libip6t_mac.d extensions/libip6t_mac_sh.o: extensions/libip6t_mac.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/getopt.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/getopt.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/ethernet.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/if_ether.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/if_ether.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ include/ip6tables.h include/iptables_common.h \ @@ -77,10 +77,10 @@ extensions/libip6t_mac.d extensions/libip6t_mac_sh.o: extensions/libip6t_mac.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6_tables.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6t_mac.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_mac.h + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6t_mac.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_mac.h diff --git a/release/src/router/iptables/extensions/libip6t_mark.d b/release/src/router/iptables/extensions/libip6t_mark.d index 61b88198a1..a12be4fd16 100644 --- a/release/src/router/iptables/extensions/libip6t_mark.d +++ b/release/src/router/iptables/extensions/libip6t_mark.d @@ -45,7 +45,7 @@ extensions/libip6t_mark.d extensions/libip6t_mark_sh.o: extensions/libip6t_mark. /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ @@ -53,7 +53,7 @@ extensions/libip6t_mark.d extensions/libip6t_mark_sh.o: extensions/libip6t_mark. /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/rpc/netdb.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/netdb.h \ @@ -69,15 +69,15 @@ extensions/libip6t_mark.d extensions/libip6t_mark_sh.o: extensions/libip6t_mark. /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6_tables.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ extensions/../include/linux/netfilter_ipv6/ip6t_mark.h diff --git a/release/src/router/iptables/extensions/libip6t_multiport.d b/release/src/router/iptables/extensions/libip6t_multiport.d index 74d7351ba3..712a3ceb38 100644 --- a/release/src/router/iptables/extensions/libip6t_multiport.d +++ b/release/src/router/iptables/extensions/libip6t_multiport.d @@ -45,7 +45,7 @@ extensions/libip6t_multiport.d extensions/libip6t_multiport_sh.o: extensions/lib /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ @@ -53,7 +53,7 @@ extensions/libip6t_multiport.d extensions/libip6t_multiport_sh.o: extensions/lib /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/rpc/netdb.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/netdb.h \ @@ -69,15 +69,15 @@ extensions/libip6t_multiport.d extensions/libip6t_multiport_sh.o: extensions/lib /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6_tables.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ extensions/../include/linux/netfilter_ipv6/ip6t_multiport.h diff --git a/release/src/router/iptables/extensions/libip6t_recent.d b/release/src/router/iptables/extensions/libip6t_recent.d index d90a1f55b3..b53d5a1814 100644 --- a/release/src/router/iptables/extensions/libip6t_recent.d +++ b/release/src/router/iptables/extensions/libip6t_recent.d @@ -45,7 +45,7 @@ extensions/libip6t_recent.d extensions/libip6t_recent_sh.o: extensions/libip6t_r /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ @@ -53,7 +53,7 @@ extensions/libip6t_recent.d extensions/libip6t_recent_sh.o: extensions/libip6t_r /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/rpc/netdb.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/netdb.h \ @@ -69,15 +69,15 @@ extensions/libip6t_recent.d extensions/libip6t_recent_sh.o: extensions/libip6t_r /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6_tables.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_recent.h + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_recent.h diff --git a/release/src/router/iptables/extensions/libip6t_rt.d b/release/src/router/iptables/extensions/libip6t_rt.d index baca6bdcf8..968da730b4 100644 --- a/release/src/router/iptables/extensions/libip6t_rt.d +++ b/release/src/router/iptables/extensions/libip6t_rt.d @@ -45,7 +45,7 @@ extensions/libip6t_rt.d extensions/libip6t_rt_sh.o: extensions/libip6t_rt.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ @@ -53,7 +53,7 @@ extensions/libip6t_rt.d extensions/libip6t_rt_sh.o: extensions/libip6t_rt.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/rpc/netdb.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/netdb.h \ @@ -64,9 +64,9 @@ extensions/libip6t_rt.d extensions/libip6t_rt_sh.o: extensions/libip6t_rt.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/getopt.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/errno.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/errno.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/errno.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/errno.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/errno.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/asm-generic/errno-base.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/asm-generic/errno-base.h \ include/ip6tables.h include/iptables_common.h \ include/libiptc/libip6tc.h include/libiptc/ipt_kernel_headers.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip.h \ @@ -74,16 +74,16 @@ extensions/libip6t_rt.d extensions/libip6t_rt_sh.o: extensions/libip6t_rt.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6_tables.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6t_rt.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6t_rt.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/arpa/inet.h diff --git a/release/src/router/iptables/extensions/libip6t_standard.d b/release/src/router/iptables/extensions/libip6t_standard.d index 9eeec3ff78..4fa5e9fae1 100644 --- a/release/src/router/iptables/extensions/libip6t_standard.d +++ b/release/src/router/iptables/extensions/libip6t_standard.d @@ -45,7 +45,7 @@ extensions/libip6t_standard.d extensions/libip6t_standard_sh.o: extensions/libip /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ @@ -53,7 +53,7 @@ extensions/libip6t_standard.d extensions/libip6t_standard_sh.o: extensions/libip /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/rpc/netdb.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/netdb.h \ @@ -69,14 +69,14 @@ extensions/libip6t_standard.d extensions/libip6t_standard_sh.o: extensions/libip /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6_tables.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h diff --git a/release/src/router/iptables/extensions/libip6t_state.d b/release/src/router/iptables/extensions/libip6t_state.d index bd694fae7b..f0a883fce5 100644 --- a/release/src/router/iptables/extensions/libip6t_state.d +++ b/release/src/router/iptables/extensions/libip6t_state.d @@ -45,7 +45,7 @@ extensions/libip6t_state.d extensions/libip6t_state_sh.o: extensions/libip6t_sta /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ @@ -53,7 +53,7 @@ extensions/libip6t_state.d extensions/libip6t_state_sh.o: extensions/libip6t_sta /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/rpc/netdb.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/netdb.h \ @@ -69,17 +69,17 @@ extensions/libip6t_state.d extensions/libip6t_state_sh.o: extensions/libip6t_sta /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6_tables.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/nf_conntrack_common.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ipt_state.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_state.h + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/nf_conntrack_common.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ipt_state.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_state.h diff --git a/release/src/router/iptables/extensions/libip6t_tcp.d b/release/src/router/iptables/extensions/libip6t_tcp.d index 5706fca0c2..b468796d81 100644 --- a/release/src/router/iptables/extensions/libip6t_tcp.d +++ b/release/src/router/iptables/extensions/libip6t_tcp.d @@ -45,7 +45,7 @@ extensions/libip6t_tcp.d extensions/libip6t_tcp_sh.o: extensions/libip6t_tcp.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ @@ -53,7 +53,7 @@ extensions/libip6t_tcp.d extensions/libip6t_tcp_sh.o: extensions/libip6t_tcp.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/rpc/netdb.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/netdb.h \ @@ -69,14 +69,14 @@ extensions/libip6t_tcp.d extensions/libip6t_tcp_sh.o: extensions/libip6t_tcp.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6_tables.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h diff --git a/release/src/router/iptables/extensions/libip6t_udp.d b/release/src/router/iptables/extensions/libip6t_udp.d index 77b93f274e..3e65f1796f 100644 --- a/release/src/router/iptables/extensions/libip6t_udp.d +++ b/release/src/router/iptables/extensions/libip6t_udp.d @@ -45,7 +45,7 @@ extensions/libip6t_udp.d extensions/libip6t_udp_sh.o: extensions/libip6t_udp.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ @@ -53,7 +53,7 @@ extensions/libip6t_udp.d extensions/libip6t_udp_sh.o: extensions/libip6t_udp.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/rpc/netdb.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/netdb.h \ @@ -69,14 +69,14 @@ extensions/libip6t_udp.d extensions/libip6t_udp_sh.o: extensions/libip6t_udp.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6_tables.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h diff --git a/release/src/router/iptables/extensions/libip6t_web.d b/release/src/router/iptables/extensions/libip6t_web.d index 75a52555c3..4a25600d24 100644 --- a/release/src/router/iptables/extensions/libip6t_web.d +++ b/release/src/router/iptables/extensions/libip6t_web.d @@ -45,7 +45,7 @@ extensions/libip6t_web.d extensions/libip6t_web_sh.o: extensions/libip6t_web.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip.h \ @@ -60,22 +60,22 @@ extensions/libip6t_web.d extensions/libip6t_web_sh.o: extensions/libip6t_web.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip_icmp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6_tables.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ipt_web.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_web.h + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ipt_web.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_web.h diff --git a/release/src/router/iptables/extensions/libip6t_webmon.d b/release/src/router/iptables/extensions/libip6t_webmon.d index 60f1029253..76fede767d 100644 --- a/release/src/router/iptables/extensions/libip6t_webmon.d +++ b/release/src/router/iptables/extensions/libip6t_webmon.d @@ -45,7 +45,7 @@ extensions/libip6t_webmon.d extensions/libip6t_webmon_sh.o: extensions/libip6t_w /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ @@ -53,7 +53,7 @@ extensions/libip6t_webmon.d extensions/libip6t_webmon_sh.o: extensions/libip6t_w /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/rpc/netdb.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/netdb.h \ @@ -70,16 +70,16 @@ extensions/libip6t_webmon.d extensions/libip6t_webmon_sh.o: extensions/libip6t_w /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6_tables.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ipt_webmon.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_webmon.h + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ipt_webmon.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_webmon.h diff --git a/release/src/router/iptables/extensions/libipt_CLASSIFY.d b/release/src/router/iptables/extensions/libipt_CLASSIFY.d new file mode 100644 index 0000000000..3657094bee --- /dev/null +++ b/release/src/router/iptables/extensions/libipt_CLASSIFY.d @@ -0,0 +1,82 @@ +extensions/libipt_CLASSIFY.d extensions/libipt_CLASSIFY_sh.o: extensions/libipt_CLASSIFY.c \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_config.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_arch_features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/cdefs.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wordsize.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/kernel_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/typesizes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/pthreadtypes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_mutex.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_clk_tck.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/signal.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigset.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/initspin.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/stdio_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/string.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdlib.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/sysmacros.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/alloca.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/getopt.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/getopt.h \ + include/iptables.h include/iptables_common.h include/libiptc/libiptc.h \ + include/libiptc/ipt_kernel_headers.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/syslimits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdint.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/linux/version.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip_icmp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ip_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ipt_CLASSIFY.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_CLASSIFY.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/pkt_sched.h diff --git a/release/src/router/iptables/extensions/libipt_CONNMARK.d b/release/src/router/iptables/extensions/libipt_CONNMARK.d new file mode 100644 index 0000000000..5abff2aef9 --- /dev/null +++ b/release/src/router/iptables/extensions/libipt_CONNMARK.d @@ -0,0 +1,81 @@ +extensions/libipt_CONNMARK.d extensions/libipt_CONNMARK_sh.o: extensions/libipt_CONNMARK.c \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_config.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_arch_features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/cdefs.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wordsize.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/kernel_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/typesizes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/pthreadtypes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_mutex.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_clk_tck.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/signal.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigset.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/initspin.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/stdio_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/string.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdlib.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/sysmacros.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/alloca.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/getopt.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/getopt.h \ + include/iptables.h include/iptables_common.h include/libiptc/libiptc.h \ + include/libiptc/ipt_kernel_headers.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/syslimits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdint.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/linux/version.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip_icmp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ip_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/../include/linux/netfilter_ipv4/ipt_CONNMARK.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_CONNMARK.h diff --git a/release/src/router/iptables/extensions/libipt_DNAT.d b/release/src/router/iptables/extensions/libipt_DNAT.d new file mode 100644 index 0000000000..a1c50a5e77 --- /dev/null +++ b/release/src/router/iptables/extensions/libipt_DNAT.d @@ -0,0 +1,85 @@ +extensions/libipt_DNAT.d extensions/libipt_DNAT_sh.o: extensions/libipt_DNAT.c \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_config.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_arch_features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/cdefs.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wordsize.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/kernel_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/typesizes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/pthreadtypes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_mutex.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_clk_tck.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/signal.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigset.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/initspin.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/stdio_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdint.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/sysmacros.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/syslimits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/linux/version.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/rpc/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/string.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdlib.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/alloca.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/getopt.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/getopt.h \ + include/iptables.h include/iptables_common.h include/libiptc/libiptc.h \ + include/libiptc/ipt_kernel_headers.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip_icmp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ip_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + include/linux/netfilter/nf_nat.h \ + include/linux/netfilter/nf_conntrack_tuple.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/nf_conntrack_tuple_common.h diff --git a/release/src/router/iptables/extensions/libipt_DSCP.d b/release/src/router/iptables/extensions/libipt_DSCP.d new file mode 100644 index 0000000000..484c2a2fbb --- /dev/null +++ b/release/src/router/iptables/extensions/libipt_DSCP.d @@ -0,0 +1,84 @@ +extensions/libipt_DSCP.d extensions/libipt_DSCP_sh.o: extensions/libipt_DSCP.c \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_config.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_arch_features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/cdefs.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wordsize.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/kernel_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/typesizes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/pthreadtypes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_mutex.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_clk_tck.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/signal.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigset.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/initspin.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/stdio_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/string.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdlib.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/sysmacros.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/alloca.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/getopt.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/getopt.h \ + include/iptables.h include/iptables_common.h include/libiptc/libiptc.h \ + include/libiptc/ipt_kernel_headers.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/syslimits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdint.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/linux/version.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip_icmp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ip_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ipt_DSCP.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ipt_dscp.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_dscp.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_DSCP.h \ + extensions/libipt_dscp_helper.c include/iptables_common.h diff --git a/release/src/router/iptables/extensions/libipt_IMQ.d b/release/src/router/iptables/extensions/libipt_IMQ.d new file mode 100644 index 0000000000..1f3417e21c --- /dev/null +++ b/release/src/router/iptables/extensions/libipt_IMQ.d @@ -0,0 +1,81 @@ +extensions/libipt_IMQ.d extensions/libipt_IMQ_sh.o: extensions/libipt_IMQ.c \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_config.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_arch_features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/cdefs.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wordsize.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/kernel_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/typesizes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/pthreadtypes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_mutex.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_clk_tck.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/signal.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigset.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/initspin.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/stdio_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/string.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdlib.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/sysmacros.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/alloca.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/getopt.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/getopt.h \ + include/iptables.h include/iptables_common.h include/libiptc/libiptc.h \ + include/libiptc/ipt_kernel_headers.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/syslimits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdint.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/linux/version.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip_icmp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ip_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ipt_IMQ.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_IMQ.h diff --git a/release/src/router/iptables/extensions/libipt_LOG.d b/release/src/router/iptables/extensions/libipt_LOG.d new file mode 100644 index 0000000000..dc6c8d3081 --- /dev/null +++ b/release/src/router/iptables/extensions/libipt_LOG.d @@ -0,0 +1,85 @@ +extensions/libipt_LOG.d extensions/libipt_LOG_sh.o: extensions/libipt_LOG.c \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_config.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_arch_features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/cdefs.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wordsize.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/kernel_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/typesizes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/pthreadtypes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_mutex.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_clk_tck.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/signal.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigset.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/initspin.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/stdio_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdint.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/sysmacros.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/syslimits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/linux/version.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/rpc/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/string.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdlib.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/alloca.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/syslog.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/syslog.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/getopt.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/getopt.h \ + include/iptables.h include/iptables_common.h include/libiptc/libiptc.h \ + include/libiptc/ipt_kernel_headers.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip_icmp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ip_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ipt_LOG.h diff --git a/release/src/router/iptables/extensions/libipt_MARK.d b/release/src/router/iptables/extensions/libipt_MARK.d new file mode 100644 index 0000000000..f606a6c19f --- /dev/null +++ b/release/src/router/iptables/extensions/libipt_MARK.d @@ -0,0 +1,80 @@ +extensions/libipt_MARK.d extensions/libipt_MARK_sh.o: extensions/libipt_MARK.c \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_config.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_arch_features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/cdefs.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wordsize.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/kernel_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/typesizes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/pthreadtypes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_mutex.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_clk_tck.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/signal.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigset.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/initspin.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/stdio_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/string.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdlib.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/sysmacros.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/alloca.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/getopt.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/getopt.h \ + include/iptables.h include/iptables_common.h include/libiptc/libiptc.h \ + include/libiptc/ipt_kernel_headers.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/syslimits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdint.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/linux/version.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip_icmp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ip_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + extensions/../include/linux/netfilter_ipv4/ipt_MARK.h diff --git a/release/src/router/iptables/extensions/libipt_MASQUERADE.d b/release/src/router/iptables/extensions/libipt_MASQUERADE.d new file mode 100644 index 0000000000..a28b878520 --- /dev/null +++ b/release/src/router/iptables/extensions/libipt_MASQUERADE.d @@ -0,0 +1,85 @@ +extensions/libipt_MASQUERADE.d extensions/libipt_MASQUERADE_sh.o: extensions/libipt_MASQUERADE.c \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_config.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_arch_features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/cdefs.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wordsize.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/kernel_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/typesizes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/pthreadtypes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_mutex.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_clk_tck.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/signal.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigset.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/initspin.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/stdio_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdint.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/sysmacros.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/syslimits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/linux/version.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/rpc/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/string.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdlib.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/alloca.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/getopt.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/getopt.h \ + include/iptables.h include/iptables_common.h include/libiptc/libiptc.h \ + include/libiptc/ipt_kernel_headers.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip_icmp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ip_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + include/linux/netfilter/nf_nat.h \ + include/linux/netfilter/nf_conntrack_tuple.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/nf_conntrack_tuple_common.h diff --git a/release/src/router/iptables/extensions/libipt_NETMAP.d b/release/src/router/iptables/extensions/libipt_NETMAP.d new file mode 100644 index 0000000000..65fbf71c6e --- /dev/null +++ b/release/src/router/iptables/extensions/libipt_NETMAP.d @@ -0,0 +1,85 @@ +extensions/libipt_NETMAP.d extensions/libipt_NETMAP_sh.o: extensions/libipt_NETMAP.c \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_config.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_arch_features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/cdefs.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wordsize.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/kernel_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/typesizes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/pthreadtypes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_mutex.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_clk_tck.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/signal.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigset.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/initspin.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/stdio_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdint.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/sysmacros.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/syslimits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/linux/version.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/rpc/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/string.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdlib.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/alloca.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/getopt.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/getopt.h \ + include/iptables.h include/iptables_common.h include/libiptc/libiptc.h \ + include/libiptc/ipt_kernel_headers.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip_icmp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ip_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + include/linux/netfilter/nf_nat.h \ + include/linux/netfilter/nf_conntrack_tuple.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/nf_conntrack_tuple_common.h diff --git a/release/src/router/iptables/extensions/libipt_NFQUEUE.d b/release/src/router/iptables/extensions/libipt_NFQUEUE.d new file mode 100644 index 0000000000..fd68761406 --- /dev/null +++ b/release/src/router/iptables/extensions/libipt_NFQUEUE.d @@ -0,0 +1,81 @@ +extensions/libipt_NFQUEUE.d extensions/libipt_NFQUEUE_sh.o: extensions/libipt_NFQUEUE.c \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_config.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_arch_features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/cdefs.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wordsize.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/kernel_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/typesizes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/pthreadtypes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_mutex.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_clk_tck.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/signal.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigset.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/initspin.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/stdio_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/string.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdlib.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/sysmacros.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/alloca.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/getopt.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/getopt.h \ + include/iptables.h include/iptables_common.h include/libiptc/libiptc.h \ + include/libiptc/ipt_kernel_headers.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/syslimits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdint.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/linux/version.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip_icmp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ip_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ipt_NFQUEUE.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_NFQUEUE.h diff --git a/release/src/router/iptables/extensions/libipt_NOTRACK.d b/release/src/router/iptables/extensions/libipt_NOTRACK.d new file mode 100644 index 0000000000..00e3bab7bd --- /dev/null +++ b/release/src/router/iptables/extensions/libipt_NOTRACK.d @@ -0,0 +1,79 @@ +extensions/libipt_NOTRACK.d extensions/libipt_NOTRACK_sh.o: extensions/libipt_NOTRACK.c \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_config.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_arch_features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/cdefs.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wordsize.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/kernel_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/typesizes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/pthreadtypes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_mutex.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_clk_tck.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/signal.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigset.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/initspin.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/stdio_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/string.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdlib.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/sysmacros.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/alloca.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/getopt.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/getopt.h \ + include/iptables.h include/iptables_common.h include/libiptc/libiptc.h \ + include/libiptc/ipt_kernel_headers.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/syslimits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdint.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/linux/version.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip_icmp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ip_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h diff --git a/release/src/router/iptables/extensions/libipt_REDIRECT.d b/release/src/router/iptables/extensions/libipt_REDIRECT.d new file mode 100644 index 0000000000..e6cfd9479f --- /dev/null +++ b/release/src/router/iptables/extensions/libipt_REDIRECT.d @@ -0,0 +1,85 @@ +extensions/libipt_REDIRECT.d extensions/libipt_REDIRECT_sh.o: extensions/libipt_REDIRECT.c \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_config.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_arch_features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/cdefs.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wordsize.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/kernel_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/typesizes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/pthreadtypes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_mutex.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_clk_tck.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/signal.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigset.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/initspin.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/stdio_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdint.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/sysmacros.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/syslimits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/linux/version.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/rpc/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/string.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdlib.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/alloca.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/getopt.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/getopt.h \ + include/iptables.h include/iptables_common.h include/libiptc/libiptc.h \ + include/libiptc/ipt_kernel_headers.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip_icmp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ip_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + include/linux/netfilter/nf_nat.h \ + include/linux/netfilter/nf_conntrack_tuple.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/nf_conntrack_tuple_common.h diff --git a/release/src/router/iptables/extensions/libipt_REJECT.d b/release/src/router/iptables/extensions/libipt_REJECT.d new file mode 100644 index 0000000000..b0520eed8e --- /dev/null +++ b/release/src/router/iptables/extensions/libipt_REJECT.d @@ -0,0 +1,80 @@ +extensions/libipt_REJECT.d extensions/libipt_REJECT_sh.o: extensions/libipt_REJECT.c \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_config.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_arch_features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/cdefs.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wordsize.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/kernel_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/typesizes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/pthreadtypes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_mutex.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_clk_tck.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/signal.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigset.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/initspin.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/stdio_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/string.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdlib.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/sysmacros.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/alloca.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/getopt.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/getopt.h \ + include/iptables.h include/iptables_common.h include/libiptc/libiptc.h \ + include/libiptc/ipt_kernel_headers.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/syslimits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdint.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/linux/version.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip_icmp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ip_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ipt_REJECT.h diff --git a/release/src/router/iptables/extensions/libipt_ROUTE.d b/release/src/router/iptables/extensions/libipt_ROUTE.d new file mode 100644 index 0000000000..f8f070c74d --- /dev/null +++ b/release/src/router/iptables/extensions/libipt_ROUTE.d @@ -0,0 +1,81 @@ +extensions/libipt_ROUTE.d extensions/libipt_ROUTE_sh.o: extensions/libipt_ROUTE.c \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_config.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_arch_features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/cdefs.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wordsize.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/kernel_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/typesizes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/pthreadtypes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_mutex.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_clk_tck.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/signal.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigset.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/initspin.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/stdio_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/string.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdlib.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/sysmacros.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/alloca.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/getopt.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/getopt.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/syslimits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdint.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/linux/version.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/arpa/inet.h \ + include/iptables.h include/iptables_common.h include/libiptc/libiptc.h \ + include/libiptc/ipt_kernel_headers.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip_icmp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ip_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ipt_ROUTE.h diff --git a/release/src/router/iptables/extensions/libipt_SNAT.d b/release/src/router/iptables/extensions/libipt_SNAT.d new file mode 100644 index 0000000000..d83cfa832a --- /dev/null +++ b/release/src/router/iptables/extensions/libipt_SNAT.d @@ -0,0 +1,85 @@ +extensions/libipt_SNAT.d extensions/libipt_SNAT_sh.o: extensions/libipt_SNAT.c \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_config.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_arch_features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/cdefs.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wordsize.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/kernel_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/typesizes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/pthreadtypes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_mutex.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_clk_tck.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/signal.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigset.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/initspin.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/stdio_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdint.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/sysmacros.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/syslimits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/linux/version.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/rpc/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/string.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdlib.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/alloca.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/getopt.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/getopt.h \ + include/iptables.h include/iptables_common.h include/libiptc/libiptc.h \ + include/libiptc/ipt_kernel_headers.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip_icmp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ip_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + include/linux/netfilter/nf_nat.h \ + include/linux/netfilter/nf_conntrack_tuple.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/nf_conntrack_tuple_common.h diff --git a/release/src/router/iptables/extensions/libipt_TCPMSS.d b/release/src/router/iptables/extensions/libipt_TCPMSS.d new file mode 100644 index 0000000000..afa030b615 --- /dev/null +++ b/release/src/router/iptables/extensions/libipt_TCPMSS.d @@ -0,0 +1,81 @@ +extensions/libipt_TCPMSS.d extensions/libipt_TCPMSS_sh.o: extensions/libipt_TCPMSS.c \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_config.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_arch_features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/cdefs.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wordsize.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/kernel_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/typesizes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/pthreadtypes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_mutex.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_clk_tck.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/signal.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigset.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/initspin.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/stdio_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/string.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdlib.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/sysmacros.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/alloca.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/getopt.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/getopt.h \ + include/iptables.h include/iptables_common.h include/libiptc/libiptc.h \ + include/libiptc/ipt_kernel_headers.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/syslimits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdint.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/linux/version.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip_icmp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ip_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ipt_TCPMSS.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_TCPMSS.h diff --git a/release/src/router/iptables/extensions/libipt_TOS.d b/release/src/router/iptables/extensions/libipt_TOS.d new file mode 100644 index 0000000000..cfd075a76a --- /dev/null +++ b/release/src/router/iptables/extensions/libipt_TOS.d @@ -0,0 +1,80 @@ +extensions/libipt_TOS.d extensions/libipt_TOS_sh.o: extensions/libipt_TOS.c \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_config.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_arch_features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/cdefs.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wordsize.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/kernel_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/typesizes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/pthreadtypes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_mutex.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_clk_tck.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/signal.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigset.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/initspin.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/stdio_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/string.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdlib.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/sysmacros.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/alloca.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/getopt.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/getopt.h \ + include/iptables.h include/iptables_common.h include/libiptc/libiptc.h \ + include/libiptc/ipt_kernel_headers.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/syslimits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdint.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/linux/version.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip_icmp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ip_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ipt_TOS.h diff --git a/release/src/router/iptables/extensions/libipt_TRIGGER.d b/release/src/router/iptables/extensions/libipt_TRIGGER.d new file mode 100644 index 0000000000..5890e92812 --- /dev/null +++ b/release/src/router/iptables/extensions/libipt_TRIGGER.d @@ -0,0 +1,89 @@ +extensions/libipt_TRIGGER.d extensions/libipt_TRIGGER_sh.o: extensions/libipt_TRIGGER.c \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_config.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_arch_features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/cdefs.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wordsize.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/kernel_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/typesizes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/pthreadtypes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_mutex.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_clk_tck.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/signal.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigset.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/initspin.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/stdio_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdint.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/sysmacros.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/syslimits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/linux/version.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/rpc/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/string.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdlib.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/alloca.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/getopt.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/getopt.h \ + include/iptables.h include/iptables_common.h include/libiptc/libiptc.h \ + include/libiptc/ipt_kernel_headers.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip_icmp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ip_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ip_nat_rule.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/net/netfilter/nf_conntrack.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/nf_conntrack_common.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/net/netfilter/nf_nat.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/net/netfilter/nf_conntrack_tuple.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/nf_conntrack_tuple_common.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ipt_TRIGGER.h diff --git a/release/src/router/iptables/extensions/libipt_TTL.d b/release/src/router/iptables/extensions/libipt_TTL.d new file mode 100644 index 0000000000..2c45316eed --- /dev/null +++ b/release/src/router/iptables/extensions/libipt_TTL.d @@ -0,0 +1,80 @@ +extensions/libipt_TTL.d extensions/libipt_TTL_sh.o: extensions/libipt_TTL.c \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_config.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_arch_features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/cdefs.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wordsize.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/kernel_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/typesizes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/pthreadtypes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_mutex.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_clk_tck.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/signal.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigset.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/initspin.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/stdio_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/string.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdlib.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/sysmacros.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/alloca.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/getopt.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/getopt.h \ + include/iptables.h include/iptables_common.h include/libiptc/libiptc.h \ + include/libiptc/ipt_kernel_headers.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/syslimits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdint.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/linux/version.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip_icmp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ip_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ipt_TTL.h diff --git a/release/src/router/iptables/extensions/libipt_account.d b/release/src/router/iptables/extensions/libipt_account.d new file mode 100644 index 0000000000..9f9573ef2e --- /dev/null +++ b/release/src/router/iptables/extensions/libipt_account.d @@ -0,0 +1,80 @@ +extensions/libipt_account.d extensions/libipt_account_sh.o: extensions/libipt_account.c \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_config.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_arch_features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/cdefs.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wordsize.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/kernel_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/typesizes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/pthreadtypes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_mutex.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_clk_tck.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/signal.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigset.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/initspin.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/stdio_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdlib.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/sysmacros.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/alloca.h \ + include/iptables.h include/iptables_common.h include/libiptc/libiptc.h \ + include/libiptc/ipt_kernel_headers.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/syslimits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdint.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/linux/version.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip_icmp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ip_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/string.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/getopt.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/getopt.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ipt_account.h diff --git a/release/src/router/iptables/extensions/libipt_condition.d b/release/src/router/iptables/extensions/libipt_condition.d new file mode 100644 index 0000000000..f4e80657ae --- /dev/null +++ b/release/src/router/iptables/extensions/libipt_condition.d @@ -0,0 +1,80 @@ +extensions/libipt_condition.d extensions/libipt_condition_sh.o: extensions/libipt_condition.c \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_config.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_arch_features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/cdefs.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wordsize.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/kernel_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/typesizes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/pthreadtypes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_mutex.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_clk_tck.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/signal.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigset.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/initspin.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/stdio_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdlib.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/sysmacros.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/alloca.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/string.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/getopt.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/getopt.h \ + include/iptables.h include/iptables_common.h include/libiptc/libiptc.h \ + include/libiptc/ipt_kernel_headers.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/syslimits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdint.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/linux/version.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip_icmp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ip_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ipt_condition.h diff --git a/release/src/router/iptables/extensions/libipt_connbytes.d b/release/src/router/iptables/extensions/libipt_connbytes.d new file mode 100644 index 0000000000..e5dc994c4a --- /dev/null +++ b/release/src/router/iptables/extensions/libipt_connbytes.d @@ -0,0 +1,85 @@ +extensions/libipt_connbytes.d extensions/libipt_connbytes_sh.o: extensions/libipt_connbytes.c \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_config.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_arch_features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/cdefs.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wordsize.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/kernel_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/typesizes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/pthreadtypes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_mutex.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_clk_tck.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/signal.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigset.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/initspin.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/stdio_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdint.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/sysmacros.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/syslimits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/linux/version.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/rpc/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/string.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdlib.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/alloca.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/getopt.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/getopt.h \ + include/iptables.h include/iptables_common.h include/libiptc/libiptc.h \ + include/libiptc/ipt_kernel_headers.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip_icmp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ip_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/nf_conntrack_common.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ipt_connbytes.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_connbytes.h diff --git a/release/src/router/iptables/extensions/libipt_connlimit.d b/release/src/router/iptables/extensions/libipt_connlimit.d new file mode 100644 index 0000000000..2fbfb7b5d8 --- /dev/null +++ b/release/src/router/iptables/extensions/libipt_connlimit.d @@ -0,0 +1,87 @@ +extensions/libipt_connlimit.d extensions/libipt_connlimit_sh.o: extensions/libipt_connlimit.c \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_config.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_arch_features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/cdefs.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wordsize.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/kernel_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/typesizes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/pthreadtypes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_mutex.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_clk_tck.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/signal.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigset.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/initspin.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/stdio_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdint.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/sysmacros.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/syslimits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/linux/version.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/rpc/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/string.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdlib.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/alloca.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/getopt.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/getopt.h \ + include/iptables.h include/iptables_common.h include/libiptc/libiptc.h \ + include/libiptc/ipt_kernel_headers.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip_icmp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ip_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ip_conntrack.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/net/netfilter/nf_conntrack.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/nf_conntrack_common.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ipt_connlimit.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_connlimit.h diff --git a/release/src/router/iptables/extensions/libipt_connmark.d b/release/src/router/iptables/extensions/libipt_connmark.d new file mode 100644 index 0000000000..b7c580cbf4 --- /dev/null +++ b/release/src/router/iptables/extensions/libipt_connmark.d @@ -0,0 +1,83 @@ +extensions/libipt_connmark.d extensions/libipt_connmark_sh.o: extensions/libipt_connmark.c \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_config.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_arch_features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/cdefs.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wordsize.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/kernel_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/typesizes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/pthreadtypes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_mutex.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_clk_tck.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/signal.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigset.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/initspin.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/stdio_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdint.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/sysmacros.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/syslimits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/linux/version.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/rpc/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/string.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdlib.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/alloca.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/getopt.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/getopt.h \ + include/iptables.h include/iptables_common.h include/libiptc/libiptc.h \ + include/libiptc/ipt_kernel_headers.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip_icmp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ip_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + extensions/../include/linux/netfilter_ipv4/ipt_connmark.h diff --git a/release/src/router/iptables/extensions/libipt_dscp.d b/release/src/router/iptables/extensions/libipt_dscp.d new file mode 100644 index 0000000000..06f1e18839 --- /dev/null +++ b/release/src/router/iptables/extensions/libipt_dscp.d @@ -0,0 +1,82 @@ +extensions/libipt_dscp.d extensions/libipt_dscp_sh.o: extensions/libipt_dscp.c \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_config.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_arch_features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/cdefs.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wordsize.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/kernel_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/typesizes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/pthreadtypes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_mutex.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_clk_tck.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/signal.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigset.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/initspin.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/stdio_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/string.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdlib.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/sysmacros.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/alloca.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/getopt.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/getopt.h \ + include/iptables.h include/iptables_common.h include/libiptc/libiptc.h \ + include/libiptc/ipt_kernel_headers.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/syslimits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdint.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/linux/version.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip_icmp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ip_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ipt_dscp.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_dscp.h \ + extensions/libipt_dscp_helper.c include/iptables_common.h diff --git a/release/src/router/iptables/extensions/libipt_geoip.d b/release/src/router/iptables/extensions/libipt_geoip.d new file mode 100644 index 0000000000..70c2f225a5 --- /dev/null +++ b/release/src/router/iptables/extensions/libipt_geoip.d @@ -0,0 +1,94 @@ +extensions/libipt_geoip.d extensions/libipt_geoip_sh.o: extensions/libipt_geoip.c \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_config.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_arch_features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/cdefs.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wordsize.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/kernel_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/typesizes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/pthreadtypes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_mutex.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_clk_tck.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/signal.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigset.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/initspin.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/stdio_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/string.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdlib.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/sysmacros.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/alloca.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/getopt.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/getopt.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/ctype.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_touplow.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/errno.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/errno.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/errno.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/errno.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/asm-generic/errno-base.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/stat.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/stat.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sgidefs.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/unistd.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix_opt.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/confname.h \ + include/iptables.h include/iptables_common.h include/libiptc/libiptc.h \ + include/libiptc/ipt_kernel_headers.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/syslimits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdint.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/linux/version.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip_icmp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ip_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ipt_geoip.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_geoip.h diff --git a/release/src/router/iptables/extensions/libipt_hashlimit.d b/release/src/router/iptables/extensions/libipt_hashlimit.d new file mode 100644 index 0000000000..23292ca405 --- /dev/null +++ b/release/src/router/iptables/extensions/libipt_hashlimit.d @@ -0,0 +1,81 @@ +extensions/libipt_hashlimit.d extensions/libipt_hashlimit_sh.o: extensions/libipt_hashlimit.c \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_config.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_arch_features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/cdefs.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wordsize.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/kernel_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/typesizes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/pthreadtypes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_mutex.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_clk_tck.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/signal.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigset.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/initspin.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/stdio_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/string.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdlib.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/sysmacros.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/alloca.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/getopt.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/getopt.h \ + include/iptables.h include/iptables_common.h include/libiptc/libiptc.h \ + include/libiptc/ipt_kernel_headers.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/syslimits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdint.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/linux/version.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip_icmp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ip_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ipt_hashlimit.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_hashlimit.h diff --git a/release/src/router/iptables/extensions/libipt_icmp.d b/release/src/router/iptables/extensions/libipt_icmp.d new file mode 100644 index 0000000000..e6f3e08145 --- /dev/null +++ b/release/src/router/iptables/extensions/libipt_icmp.d @@ -0,0 +1,82 @@ +extensions/libipt_icmp.d extensions/libipt_icmp_sh.o: extensions/libipt_icmp.c \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_config.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_arch_features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/cdefs.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wordsize.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/kernel_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/typesizes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/pthreadtypes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_mutex.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_clk_tck.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/signal.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigset.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/initspin.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/stdio_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdint.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/sysmacros.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/syslimits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/linux/version.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/rpc/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/string.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdlib.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/alloca.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/getopt.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/getopt.h \ + include/iptables.h include/iptables_common.h include/libiptc/libiptc.h \ + include/libiptc/ipt_kernel_headers.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip_icmp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ip_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h diff --git a/release/src/router/iptables/extensions/libipt_ipp2p.d b/release/src/router/iptables/extensions/libipt_ipp2p.d new file mode 100644 index 0000000000..2eb0dddf6b --- /dev/null +++ b/release/src/router/iptables/extensions/libipt_ipp2p.d @@ -0,0 +1,85 @@ +extensions/libipt_ipp2p.d extensions/libipt_ipp2p_sh.o: extensions/libipt_ipp2p.c \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_config.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_arch_features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/cdefs.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wordsize.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/kernel_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/typesizes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/pthreadtypes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_mutex.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_clk_tck.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/signal.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigset.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/initspin.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/stdio_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdint.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/sysmacros.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/syslimits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/linux/version.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/rpc/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/string.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdlib.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/alloca.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/getopt.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/getopt.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/ctype.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_touplow.h \ + include/iptables.h include/iptables_common.h include/libiptc/libiptc.h \ + include/libiptc/ipt_kernel_headers.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip_icmp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ip_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ipt_ipp2p.h diff --git a/release/src/router/iptables/extensions/libipt_iprange.d b/release/src/router/iptables/extensions/libipt_iprange.d new file mode 100644 index 0000000000..7380d2d97f --- /dev/null +++ b/release/src/router/iptables/extensions/libipt_iprange.d @@ -0,0 +1,84 @@ +extensions/libipt_iprange.d extensions/libipt_iprange_sh.o: extensions/libipt_iprange.c \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_config.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_arch_features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/cdefs.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wordsize.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/kernel_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/typesizes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/pthreadtypes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_mutex.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_clk_tck.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/signal.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigset.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/initspin.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/stdio_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdint.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/sysmacros.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/syslimits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/linux/version.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/rpc/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/string.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdlib.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/alloca.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/getopt.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/getopt.h \ + include/iptables.h include/iptables_common.h include/libiptc/libiptc.h \ + include/libiptc/ipt_kernel_headers.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip_icmp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ip_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ipt_iprange.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_iprange.h diff --git a/release/src/router/iptables/extensions/libipt_layer7.d b/release/src/router/iptables/extensions/libipt_layer7.d new file mode 100644 index 0000000000..96f634dba4 --- /dev/null +++ b/release/src/router/iptables/extensions/libipt_layer7.d @@ -0,0 +1,99 @@ +extensions/libipt_layer7.d extensions/libipt_layer7_sh.o: extensions/libipt_layer7.c \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_config.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_arch_features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/cdefs.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wordsize.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/kernel_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/typesizes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/pthreadtypes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_mutex.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_clk_tck.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/signal.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigset.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/initspin.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/stdio_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdint.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/sysmacros.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/syslimits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/xopen_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/linux/version.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/rpc/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/siginfo.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/string.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdlib.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/waitflags.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/waitstatus.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/alloca.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/getopt.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/getopt.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/ctype.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_touplow.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/dirent.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/dirent.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/errno.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/errno.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/errno.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/errno.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/asm-generic/errno-base.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/syscall.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sysnum.h \ + include/iptables.h include/iptables_common.h include/libiptc/libiptc.h \ + include/libiptc/ipt_kernel_headers.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip_icmp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ip_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ipt_layer7.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_layer7.h diff --git a/release/src/router/iptables/extensions/libipt_length.d b/release/src/router/iptables/extensions/libipt_length.d new file mode 100644 index 0000000000..3f58977551 --- /dev/null +++ b/release/src/router/iptables/extensions/libipt_length.d @@ -0,0 +1,84 @@ +extensions/libipt_length.d extensions/libipt_length_sh.o: extensions/libipt_length.c \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_config.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_arch_features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/cdefs.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wordsize.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/kernel_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/typesizes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/pthreadtypes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_mutex.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_clk_tck.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/signal.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigset.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/initspin.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/stdio_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdint.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/sysmacros.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/syslimits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/linux/version.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/rpc/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/string.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdlib.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/alloca.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/getopt.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/getopt.h \ + include/iptables.h include/iptables_common.h include/libiptc/libiptc.h \ + include/libiptc/ipt_kernel_headers.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip_icmp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ip_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ipt_length.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_length.h diff --git a/release/src/router/iptables/extensions/libipt_limit.d b/release/src/router/iptables/extensions/libipt_limit.d new file mode 100644 index 0000000000..be2791c6a0 --- /dev/null +++ b/release/src/router/iptables/extensions/libipt_limit.d @@ -0,0 +1,80 @@ +extensions/libipt_limit.d extensions/libipt_limit_sh.o: extensions/libipt_limit.c \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_config.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_arch_features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/cdefs.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wordsize.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/kernel_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/typesizes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/pthreadtypes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_mutex.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_clk_tck.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/signal.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigset.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/initspin.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/stdio_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/string.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdlib.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/sysmacros.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/alloca.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/getopt.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/getopt.h \ + include/iptables.h include/iptables_common.h include/libiptc/libiptc.h \ + include/libiptc/ipt_kernel_headers.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/syslimits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdint.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/linux/version.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip_icmp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ip_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + extensions/../include/linux/netfilter_ipv4/ipt_limit.h diff --git a/release/src/router/iptables/extensions/libipt_mac.d b/release/src/router/iptables/extensions/libipt_mac.d new file mode 100644 index 0000000000..68db43c0ac --- /dev/null +++ b/release/src/router/iptables/extensions/libipt_mac.d @@ -0,0 +1,86 @@ +extensions/libipt_mac.d extensions/libipt_mac_sh.o: extensions/libipt_mac.c \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_config.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_arch_features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/cdefs.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wordsize.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/kernel_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/typesizes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/pthreadtypes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_mutex.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_clk_tck.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/signal.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigset.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/initspin.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/stdio_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdint.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/sysmacros.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/syslimits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/linux/version.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/rpc/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/string.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdlib.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/alloca.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/getopt.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/getopt.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/ethernet.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/if_ether.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ + include/iptables.h include/iptables_common.h include/libiptc/libiptc.h \ + include/libiptc/ipt_kernel_headers.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip_icmp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ip_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ipt_mac.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_mac.h diff --git a/release/src/router/iptables/extensions/libipt_mark.d b/release/src/router/iptables/extensions/libipt_mark.d new file mode 100644 index 0000000000..6cf2b8e69e --- /dev/null +++ b/release/src/router/iptables/extensions/libipt_mark.d @@ -0,0 +1,83 @@ +extensions/libipt_mark.d extensions/libipt_mark_sh.o: extensions/libipt_mark.c \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_config.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_arch_features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/cdefs.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wordsize.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/kernel_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/typesizes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/pthreadtypes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_mutex.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_clk_tck.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/signal.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigset.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/initspin.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/stdio_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdint.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/sysmacros.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/syslimits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/linux/version.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/rpc/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/string.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdlib.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/alloca.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/getopt.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/getopt.h \ + include/iptables.h include/iptables_common.h include/libiptc/libiptc.h \ + include/libiptc/ipt_kernel_headers.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip_icmp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ip_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + extensions/../include/linux/netfilter_ipv4/ipt_mark.h diff --git a/release/src/router/iptables/extensions/libipt_multiport.d b/release/src/router/iptables/extensions/libipt_multiport.d new file mode 100644 index 0000000000..3c38ae4ae0 --- /dev/null +++ b/release/src/router/iptables/extensions/libipt_multiport.d @@ -0,0 +1,83 @@ +extensions/libipt_multiport.d extensions/libipt_multiport_sh.o: extensions/libipt_multiport.c \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_config.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_arch_features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/cdefs.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wordsize.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/kernel_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/typesizes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/pthreadtypes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_mutex.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_clk_tck.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/signal.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigset.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/initspin.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/stdio_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdint.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/sysmacros.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/syslimits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/linux/version.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/rpc/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/string.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdlib.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/alloca.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/getopt.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/getopt.h \ + include/iptables.h include/iptables_common.h include/libiptc/libiptc.h \ + include/libiptc/ipt_kernel_headers.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip_icmp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ip_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + extensions/../include/linux/netfilter_ipv4/ipt_multiport.h diff --git a/release/src/router/iptables/extensions/libipt_quota.d b/release/src/router/iptables/extensions/libipt_quota.d new file mode 100644 index 0000000000..bb6b643702 --- /dev/null +++ b/release/src/router/iptables/extensions/libipt_quota.d @@ -0,0 +1,80 @@ +extensions/libipt_quota.d extensions/libipt_quota_sh.o: extensions/libipt_quota.c \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_config.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_arch_features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/cdefs.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wordsize.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/kernel_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/typesizes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/pthreadtypes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_mutex.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_clk_tck.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/signal.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigset.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/initspin.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/stdio_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdlib.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/sysmacros.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/alloca.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/getopt.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/getopt.h \ + include/iptables.h include/iptables_common.h include/libiptc/libiptc.h \ + include/libiptc/ipt_kernel_headers.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/syslimits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdint.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/linux/version.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip_icmp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ip_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ipt_quota.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_quota.h diff --git a/release/src/router/iptables/extensions/libipt_recent.d b/release/src/router/iptables/extensions/libipt_recent.d new file mode 100644 index 0000000000..676ed5f561 --- /dev/null +++ b/release/src/router/iptables/extensions/libipt_recent.d @@ -0,0 +1,84 @@ +extensions/libipt_recent.d extensions/libipt_recent_sh.o: extensions/libipt_recent.c \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_config.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_arch_features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/cdefs.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wordsize.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/kernel_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/typesizes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/pthreadtypes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_mutex.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_clk_tck.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/signal.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigset.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/initspin.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/stdio_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdint.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/sysmacros.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/syslimits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/linux/version.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/rpc/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/string.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdlib.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/alloca.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/getopt.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/getopt.h \ + include/iptables.h include/iptables_common.h include/libiptc/libiptc.h \ + include/libiptc/ipt_kernel_headers.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip_icmp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ip_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ipt_recent.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_recent.h diff --git a/release/src/router/iptables/extensions/libipt_standard.d b/release/src/router/iptables/extensions/libipt_standard.d new file mode 100644 index 0000000000..57c4f0ce60 --- /dev/null +++ b/release/src/router/iptables/extensions/libipt_standard.d @@ -0,0 +1,82 @@ +extensions/libipt_standard.d extensions/libipt_standard_sh.o: extensions/libipt_standard.c \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_config.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_arch_features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/cdefs.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wordsize.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/kernel_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/typesizes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/pthreadtypes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_mutex.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_clk_tck.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/signal.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigset.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/initspin.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/stdio_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdint.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/sysmacros.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/syslimits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/linux/version.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/rpc/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/string.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdlib.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/alloca.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/getopt.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/getopt.h \ + include/iptables.h include/iptables_common.h include/libiptc/libiptc.h \ + include/libiptc/ipt_kernel_headers.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip_icmp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ip_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h diff --git a/release/src/router/iptables/extensions/libipt_state.d b/release/src/router/iptables/extensions/libipt_state.d new file mode 100644 index 0000000000..f764d1e48a --- /dev/null +++ b/release/src/router/iptables/extensions/libipt_state.d @@ -0,0 +1,85 @@ +extensions/libipt_state.d extensions/libipt_state_sh.o: extensions/libipt_state.c \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_config.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_arch_features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/cdefs.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wordsize.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/kernel_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/typesizes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/pthreadtypes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_mutex.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_clk_tck.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/signal.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigset.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/initspin.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/stdio_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdint.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/sysmacros.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/syslimits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/linux/version.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/rpc/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/string.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdlib.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/alloca.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/getopt.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/getopt.h \ + include/iptables.h include/iptables_common.h include/libiptc/libiptc.h \ + include/libiptc/ipt_kernel_headers.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip_icmp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ip_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/nf_conntrack_common.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ipt_state.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_state.h diff --git a/release/src/router/iptables/extensions/libipt_string.d b/release/src/router/iptables/extensions/libipt_string.d new file mode 100644 index 0000000000..9a8e89826f --- /dev/null +++ b/release/src/router/iptables/extensions/libipt_string.d @@ -0,0 +1,86 @@ +extensions/libipt_string.d extensions/libipt_string_sh.o: extensions/libipt_string.c \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_config.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_arch_features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/cdefs.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wordsize.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/kernel_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/typesizes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/pthreadtypes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_mutex.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_clk_tck.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/signal.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigset.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/initspin.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/stdio_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdint.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/sysmacros.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/syslimits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/linux/version.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/rpc/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/string.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdlib.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/alloca.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/getopt.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/getopt.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/ctype.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_touplow.h \ + include/iptables.h include/iptables_common.h include/libiptc/libiptc.h \ + include/libiptc/ipt_kernel_headers.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip_icmp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ip_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ipt_string.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_string.h diff --git a/release/src/router/iptables/extensions/libipt_tcp.d b/release/src/router/iptables/extensions/libipt_tcp.d new file mode 100644 index 0000000000..d4393bb870 --- /dev/null +++ b/release/src/router/iptables/extensions/libipt_tcp.d @@ -0,0 +1,82 @@ +extensions/libipt_tcp.d extensions/libipt_tcp_sh.o: extensions/libipt_tcp.c \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_config.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_arch_features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/cdefs.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wordsize.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/kernel_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/typesizes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/pthreadtypes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_mutex.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_clk_tck.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/signal.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigset.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/initspin.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/stdio_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdint.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/sysmacros.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/syslimits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/linux/version.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/rpc/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/string.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdlib.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/alloca.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/getopt.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/getopt.h \ + include/iptables.h include/iptables_common.h include/libiptc/libiptc.h \ + include/libiptc/ipt_kernel_headers.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip_icmp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ip_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h diff --git a/release/src/router/iptables/extensions/libipt_tcpmss.d b/release/src/router/iptables/extensions/libipt_tcpmss.d new file mode 100644 index 0000000000..3dd9167f68 --- /dev/null +++ b/release/src/router/iptables/extensions/libipt_tcpmss.d @@ -0,0 +1,84 @@ +extensions/libipt_tcpmss.d extensions/libipt_tcpmss_sh.o: extensions/libipt_tcpmss.c \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_config.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_arch_features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/cdefs.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wordsize.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/kernel_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/typesizes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/pthreadtypes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_mutex.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_clk_tck.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/signal.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigset.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/initspin.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/stdio_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdint.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/sysmacros.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/syslimits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/linux/version.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/rpc/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/string.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdlib.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/alloca.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/getopt.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/getopt.h \ + include/iptables.h include/iptables_common.h include/libiptc/libiptc.h \ + include/libiptc/ipt_kernel_headers.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip_icmp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ip_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ipt_tcpmss.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpmss.h diff --git a/release/src/router/iptables/extensions/libipt_time.d b/release/src/router/iptables/extensions/libipt_time.d new file mode 100644 index 0000000000..0626d919c1 --- /dev/null +++ b/release/src/router/iptables/extensions/libipt_time.d @@ -0,0 +1,83 @@ +extensions/libipt_time.d extensions/libipt_time_sh.o: extensions/libipt_time.c \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_config.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_arch_features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/cdefs.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wordsize.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/kernel_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/typesizes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/pthreadtypes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_mutex.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_clk_tck.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/signal.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigset.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/initspin.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/stdio_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdint.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/sysmacros.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/syslimits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/linux/version.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/rpc/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/string.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdlib.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/alloca.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/getopt.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/getopt.h \ + include/iptables.h include/iptables_common.h include/libiptc/libiptc.h \ + include/libiptc/ipt_kernel_headers.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip_icmp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ip_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ipt_time.h diff --git a/release/src/router/iptables/extensions/libipt_tos.d b/release/src/router/iptables/extensions/libipt_tos.d new file mode 100644 index 0000000000..42063a7dc9 --- /dev/null +++ b/release/src/router/iptables/extensions/libipt_tos.d @@ -0,0 +1,83 @@ +extensions/libipt_tos.d extensions/libipt_tos_sh.o: extensions/libipt_tos.c \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_config.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_arch_features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/cdefs.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wordsize.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/kernel_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/typesizes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/pthreadtypes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_mutex.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_clk_tck.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/signal.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigset.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/initspin.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/stdio_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdint.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/sysmacros.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/syslimits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/linux/version.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/rpc/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/string.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdlib.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/alloca.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/getopt.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/getopt.h \ + include/iptables.h include/iptables_common.h include/libiptc/libiptc.h \ + include/libiptc/ipt_kernel_headers.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip_icmp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ip_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ipt_tos.h diff --git a/release/src/router/iptables/extensions/libipt_u32.d b/release/src/router/iptables/extensions/libipt_u32.d new file mode 100644 index 0000000000..b00cfe9bc9 --- /dev/null +++ b/release/src/router/iptables/extensions/libipt_u32.d @@ -0,0 +1,90 @@ +extensions/libipt_u32.d extensions/libipt_u32_sh.o: extensions/libipt_u32.c \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_config.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_arch_features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/cdefs.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wordsize.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/kernel_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/typesizes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/pthreadtypes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_mutex.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_clk_tck.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/signal.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigset.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/initspin.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/stdio_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdint.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/sysmacros.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/syslimits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/linux/version.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/rpc/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/string.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdlib.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/alloca.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/getopt.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/getopt.h \ + include/iptables.h include/iptables_common.h include/libiptc/libiptc.h \ + include/libiptc/ipt_kernel_headers.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip_icmp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ip_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ipt_u32.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/errno.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/errno.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/errno.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/errno.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/asm-generic/errno-base.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/ctype.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_touplow.h diff --git a/release/src/router/iptables/extensions/libipt_udp.d b/release/src/router/iptables/extensions/libipt_udp.d new file mode 100644 index 0000000000..2fe8d7de4c --- /dev/null +++ b/release/src/router/iptables/extensions/libipt_udp.d @@ -0,0 +1,82 @@ +extensions/libipt_udp.d extensions/libipt_udp_sh.o: extensions/libipt_udp.c \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_config.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_arch_features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/cdefs.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wordsize.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/kernel_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/typesizes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/pthreadtypes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_mutex.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_clk_tck.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/signal.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigset.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/initspin.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/stdio_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdint.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/sysmacros.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/syslimits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/linux/version.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/rpc/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/string.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdlib.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/alloca.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/getopt.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/getopt.h \ + include/iptables.h include/iptables_common.h include/libiptc/libiptc.h \ + include/libiptc/ipt_kernel_headers.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip_icmp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ip_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h diff --git a/release/src/router/iptables/extensions/libipt_web.d b/release/src/router/iptables/extensions/libipt_web.d new file mode 100644 index 0000000000..730b1d5a86 --- /dev/null +++ b/release/src/router/iptables/extensions/libipt_web.d @@ -0,0 +1,81 @@ +extensions/libipt_web.d extensions/libipt_web_sh.o: extensions/libipt_web.c \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_config.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_arch_features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/cdefs.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wordsize.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/kernel_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/typesizes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/pthreadtypes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_mutex.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_clk_tck.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/signal.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigset.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/initspin.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/stdio_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/string.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdlib.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/sysmacros.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/alloca.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/getopt.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/getopt.h \ + include/iptables.h include/iptables_common.h include/libiptc/libiptc.h \ + include/libiptc/ipt_kernel_headers.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/syslimits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdint.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/linux/version.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip_icmp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ip_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ipt_web.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_web.h diff --git a/release/src/router/iptables/extensions/libipt_webmon.d b/release/src/router/iptables/extensions/libipt_webmon.d new file mode 100644 index 0000000000..013b77564d --- /dev/null +++ b/release/src/router/iptables/extensions/libipt_webmon.d @@ -0,0 +1,85 @@ +extensions/libipt_webmon.d extensions/libipt_webmon_sh.o: extensions/libipt_webmon.c \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_config.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_arch_features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/cdefs.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wordsize.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/kernel_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/typesizes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/pthreadtypes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_mutex.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_clk_tck.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/signal.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigset.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/initspin.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/stdio_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdint.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/sysmacros.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/syslimits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/linux/version.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/rpc/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/string.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdlib.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/alloca.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/getopt.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/getopt.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/arpa/inet.h \ + include/iptables.h include/iptables_common.h include/libiptc/libiptc.h \ + include/libiptc/ipt_kernel_headers.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip_icmp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ip_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ipt_webmon.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_webmon.h diff --git a/release/src/router/iptables/iptables-standalone.d b/release/src/router/iptables/iptables-standalone.d new file mode 100644 index 0000000000..7ea7f63ee5 --- /dev/null +++ b/release/src/router/iptables/iptables-standalone.d @@ -0,0 +1,82 @@ +iptables-standalone.d iptables-standalone.o: iptables-standalone.c \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_config.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_arch_features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/cdefs.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wordsize.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/kernel_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/typesizes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/pthreadtypes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_mutex.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_clk_tck.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/signal.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigset.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/initspin.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/stdio_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdlib.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/sysmacros.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/alloca.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/errno.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/errno.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/errno.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/errno.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/asm-generic/errno-base.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/string.h \ + include/iptables.h include/iptables_common.h include/libiptc/libiptc.h \ + include/libiptc/ipt_kernel_headers.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/syslimits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdint.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/linux/version.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip_icmp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ip_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h diff --git a/release/src/router/iptables/iptables.d b/release/src/router/iptables/iptables.d new file mode 100644 index 0000000000..d9b718f6d6 --- /dev/null +++ b/release/src/router/iptables/iptables.d @@ -0,0 +1,109 @@ +iptables.d iptables.o: iptables.c \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/getopt.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/getopt.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_config.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_arch_features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/cdefs.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/string.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdint.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wordsize.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/kernel_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/typesizes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/pthreadtypes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigset.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/sysmacros.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/syslimits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/linux/version.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/rpc/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/netdb.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/errno.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/errno.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/errno.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/errno.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/asm-generic/errno-base.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_mutex.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_clk_tck.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/signal.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/initspin.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/stdio_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdlib.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/alloca.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/dlfcn.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/dlfcn.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/ctype.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_touplow.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/unistd.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix_opt.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/confname.h \ + include/iptables.h include/iptables_common.h include/libiptc/libiptc.h \ + include/libiptc/ipt_kernel_headers.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip_icmp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ip_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/fcntl.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/fcntl.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sgidefs.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/wait.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/signum.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/siginfo.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigaction.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigcontext.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigstack.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/resource.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/resource.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/waitflags.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/waitstatus.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/utsname.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/utsname.h diff --git a/release/src/router/iptables/libiptc/libip4tc.d b/release/src/router/iptables/libiptc/libip4tc.d new file mode 100644 index 0000000000..1622bd45ec --- /dev/null +++ b/release/src/router/iptables/libiptc/libip4tc.d @@ -0,0 +1,87 @@ +libiptc/libip4tc.d libiptc/libiptc.a(libiptc/libip4tc.o): libiptc/libip4tc.c \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/assert.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_config.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_arch_features.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/cdefs.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/string.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/errno.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/errno.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/errno.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/errno.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/asm-generic/errno-base.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdlib.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wordsize.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/kernel_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/typesizes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/pthreadtypes.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/endian.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/select.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigset.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/time.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/sysmacros.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/alloca.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_stdio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wchar.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_mutex.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sched.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_clk_tck.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/signal.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/initspin.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_pthread.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/stdio_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/unistd.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix_opt.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/confname.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/getopt.h \ + include/libiptc/libiptc.h include/libiptc/ipt_kernel_headers.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/syslimits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdint.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uio.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/socket.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/linux/version.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip_icmp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4/ip_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv4.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ + /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + libiptc/libiptc.c libiptc/linux_list.h diff --git a/release/src/router/iptables/libiptc/libip6tc.d b/release/src/router/iptables/libiptc/libip6tc.d index bed00ca167..882cf77eea 100644 --- a/release/src/router/iptables/libiptc/libip6tc.d +++ b/release/src/router/iptables/libiptc/libip6tc.d @@ -8,9 +8,9 @@ libiptc/libip6tc.d libiptc/libip6tc.a(libiptc/libip6tc.o): libiptc/libip6tc.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stddef.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/errno.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/errno.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/errno.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/errno.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/errno.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/asm-generic/errno-base.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/asm-generic/errno-base.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/stdlib.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/types.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/types.h \ @@ -58,7 +58,7 @@ libiptc/libip6tc.d libiptc/libip6tc.a(libiptc/libip6tc.o): libiptc/libip6tc.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix1_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/local_lim.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_local_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/posix2_lim.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sockaddr.h \ @@ -66,7 +66,7 @@ libiptc/libip6tc.d libiptc/libip6tc.a(libiptc/libip6tc.o): libiptc/libip6tc.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/sockios.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/ioctl.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/in.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/version.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/byteswap.h \ include/libiptc/libip6tc.h include/libiptc/ipt_kernel_headers.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/ip.h \ @@ -74,15 +74,15 @@ libiptc/libip6tc.d libiptc/libip6tc.a(libiptc/libip6tc.o): libiptc/libip6tc.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/tcp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/netinet/udp.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/net/if.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6_tables.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6/ip6_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/compiler.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter_ipv6.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/posix_types.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/stddef.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/posix_types.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/asm/types.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ - /home/vicente/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/x_tables.h \ + /home/vicente/repos/tomato/release/src-rt/linux/linux-2.6/include/linux/netfilter/xt_tcpudp.h \ libiptc/libiptc.c libiptc/linux_list.h diff --git a/release/src/router/libexif/Makefile b/release/src/router/libexif/Makefile index 64a11c7028..6b59a0d9a2 100644 --- a/release/src/router/libexif/Makefile +++ b/release/src/router/libexif/Makefile @@ -142,14 +142,14 @@ DIST_ARCHIVES = $(distdir).tar.gz $(distdir).tar.bz2 $(distdir).zip GZIP_ENV = --best distuninstallcheck_listfiles = find . -type f -print distcleancheck_listfiles = find . -type f -print -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/libexif/missing --run aclocal-1.11 -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/libexif/missing --run tar +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/libexif/missing --run aclocal-1.11 +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/libexif/missing --run tar AM_CPPFLAGS = -DGETTEXT_PACKAGE=\"libexif-12\" -DLOCALEDIR=\"$(datadir)/locale\" -I$(top_srcdir) -I$(top_builddir) -g -Wall -Wmissing-declarations -Wmissing-prototypes AM_LDFLAGS = -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections -g -Wall AR = mipsel-uclibc-ar -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/libexif/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/libexif/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/libexif/missing --run automake-1.11 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/libexif/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/libexif/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/libexif/missing --run automake-1.11 AWK = gawk CC = mipsel-uclibc-gcc CCDEPMODE = depmode=gcc3 @@ -200,7 +200,7 @@ LTLIBICONV = LTLIBINTL = LTLIBOBJS = MAINT = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/libexif/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/libexif/missing --run makeinfo MKDIR_P = /bin/mkdir -p MKINSTALLDIRS = $(top_builddir)/./mkinstalldirs MSGFMT = /usr/bin/msgfmt @@ -228,10 +228,10 @@ STRIP = mipsel-uclibc-strip -R .note -R .comment USE_NLS = no VERSION = 0.6.19 XGETTEXT = /usr/bin/xgettext -abs_builddir = /home/vicente/tomato/release/src/router/libexif -abs_srcdir = /home/vicente/tomato/release/src/router/libexif -abs_top_builddir = /home/vicente/tomato/release/src/router/libexif -abs_top_srcdir = /home/vicente/tomato/release/src/router/libexif +abs_builddir = /home/vicente/repos/tomato/release/src/router/libexif +abs_srcdir = /home/vicente/repos/tomato/release/src/router/libexif +abs_top_builddir = /home/vicente/repos/tomato/release/src/router/libexif +abs_top_srcdir = /home/vicente/repos/tomato/release/src/router/libexif ac_ct_CC = ac_ct_DUMPBIN = am__include = include @@ -259,7 +259,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = ${SHELL} /home/vicente/tomato/release/src/router/libexif/install-sh +install_sh = ${SHELL} /home/vicente/repos/tomato/release/src/router/libexif/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = $(datadir)/locale diff --git a/release/src/router/libexif/binary/Makefile b/release/src/router/libexif/binary/Makefile index bf62644615..61b3ccfd3c 100644 --- a/release/src/router/libexif/binary/Makefile +++ b/release/src/router/libexif/binary/Makefile @@ -60,14 +60,14 @@ CONFIG_CLEAN_VPATH_FILES = SOURCES = DIST_SOURCES = DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/libexif/missing --run aclocal-1.11 -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/libexif/missing --run tar +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/libexif/missing --run aclocal-1.11 +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/libexif/missing --run tar AM_CPPFLAGS = -DGETTEXT_PACKAGE=\"libexif-12\" -DLOCALEDIR=\"$(datadir)/locale\" -I$(top_srcdir) -I$(top_builddir) -g -Wall -Wmissing-declarations -Wmissing-prototypes AM_LDFLAGS = -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections -g -Wall AR = mipsel-uclibc-ar -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/libexif/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/libexif/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/libexif/missing --run automake-1.11 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/libexif/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/libexif/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/libexif/missing --run automake-1.11 AWK = gawk CC = mipsel-uclibc-gcc CCDEPMODE = depmode=gcc3 @@ -118,7 +118,7 @@ LTLIBICONV = LTLIBINTL = LTLIBOBJS = MAINT = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/libexif/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/libexif/missing --run makeinfo MKDIR_P = /bin/mkdir -p MKINSTALLDIRS = $(top_builddir)/./mkinstalldirs MSGFMT = /usr/bin/msgfmt @@ -146,10 +146,10 @@ STRIP = mipsel-uclibc-strip -R .note -R .comment USE_NLS = no VERSION = 0.6.19 XGETTEXT = /usr/bin/xgettext -abs_builddir = /home/vicente/tomato/release/src/router/libexif/binary -abs_srcdir = /home/vicente/tomato/release/src/router/libexif/binary -abs_top_builddir = /home/vicente/tomato/release/src/router/libexif -abs_top_srcdir = /home/vicente/tomato/release/src/router/libexif +abs_builddir = /home/vicente/repos/tomato/release/src/router/libexif/binary +abs_srcdir = /home/vicente/repos/tomato/release/src/router/libexif/binary +abs_top_builddir = /home/vicente/repos/tomato/release/src/router/libexif +abs_top_srcdir = /home/vicente/repos/tomato/release/src/router/libexif ac_ct_CC = ac_ct_DUMPBIN = am__include = include @@ -177,7 +177,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = ${SHELL} /home/vicente/tomato/release/src/router/libexif/install-sh +install_sh = ${SHELL} /home/vicente/repos/tomato/release/src/router/libexif/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = $(datadir)/locale diff --git a/release/src/router/libexif/config.log b/release/src/router/libexif/config.log deleted file mode 100644 index 5544b75d0a..0000000000 --- a/release/src/router/libexif/config.log +++ /dev/null @@ -1,762 +0,0 @@ -This file contains any messages produced by compilers while -running configure, to aid debugging if configure makes a mistake. - -It was created by EXIF library configure 0.6.19, which was -generated by GNU Autoconf 2.64. Invocation command line was - - $ ./configure --host=mipsel-linux --build=x86_64-linux-gnu --enable-shared --enable-static --prefix= --disable-docs --disable-rpath --disable-nls --without-libiconv-prefix --without-libintl-prefix - -## --------- ## -## Platform. ## -## --------- ## - -hostname = vicente-P5K-E -uname -m = x86_64 -uname -r = 3.2.0-47-generic -uname -s = Linux -uname -v = #72-Ubuntu SMP Mon Jun 3 17:53:49 UTC 2013 - -/usr/bin/uname -p = unknown -/bin/uname -X = unknown - -/bin/arch = unknown -/usr/bin/arch -k = unknown -/usr/convex/getsysinfo = unknown -/usr/bin/hostinfo = unknown -/bin/machine = unknown -/usr/bin/oslevel = unknown -/bin/universe = unknown - -PATH: /home/vicente/tomato/release/tools -PATH: /home/vicente/tomato/release/tools -PATH: /home/vicente/tomato/release/tools -PATH: /home/vicente/tomato/release/tools -PATH: /opt/brcm/hndtools-mipsel-uclibc/bin -PATH: /opt/brcm/hndtools-mipsel-linux/bin -PATH: /usr/lib/lightdm/lightdm -PATH: /usr/local/sbin -PATH: /usr/local/bin -PATH: /usr/sbin -PATH: /usr/bin -PATH: /sbin -PATH: /bin -PATH: /usr/games - - -## ----------- ## -## Core tests. ## -## ----------- ## - -configure:2311: checking for a BSD-compatible install -configure:2379: result: /usr/bin/install -c -configure:2390: checking whether build environment is sane -configure:2440: result: yes -configure:2489: checking for mipsel-linux-strip -configure:2516: result: mipsel-uclibc-strip -R .note -R .comment -configure:2581: checking for a thread-safe mkdir -p -configure:2620: result: /bin/mkdir -p -configure:2633: checking for gawk -configure:2649: found /usr/bin/gawk -configure:2660: result: gawk -configure:2671: checking whether make sets $(MAKE) -configure:2693: result: yes -configure:2774: checking whether to enable maintainer-specific portions of Makefiles -configure:2783: result: no -configure:2821: checking for POSIX sh $() command substitution -configure:2825: result: yes -configure:2896: checking for mipsel-linux-gcc -configure:2923: result: mipsel-uclibc-gcc -configure:3192: checking for C compiler version -configure:3201: mipsel-uclibc-gcc --version >&5 -mipsel-uclibc-gcc (GCC) 4.2.4 -Copyright (C) 2007 Free Software Foundation, Inc. -This is free software; see the source for copying conditions. There is NO -warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - -configure:3212: $? = 0 -configure:3201: mipsel-uclibc-gcc -v >&5 -Using built-in specs. -Target: mipsel-linux-uclibc -Configured with: /home/fedork/tomato/toolchain/build_dir/toolchain-mipsel_gcc4.2.4/gcc-4.2.4/configure --prefix=/opt/brcm/hndtools-mipsel-uclibc-4.2.4 --build=i486-linux-gnu --host=i486-linux-gnu --target=mipsel-linux-uclibc --with-gnu-ld --enable-target-optspace --disable-libgomp --disable-libmudflap --disable-multilib --disable-nls --disable-__cxa_atexit --enable-libssp --enable-languages=c,c++ --enable-shared --enable-threads --enable-tls -Thread model: posix -gcc version 4.2.4 -configure:3212: $? = 0 -configure:3201: mipsel-uclibc-gcc -V >&5 -mipsel-uclibc-gcc: '-V' option must have argument -configure:3212: $? = 1 -configure:3201: mipsel-uclibc-gcc -qversion >&5 -mipsel-uclibc-gcc: unrecognized option '-qversion' -mipsel-uclibc-gcc: no input files -configure:3212: $? = 1 -configure:3234: checking for C compiler default output file name -configure:3256: mipsel-uclibc-gcc -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections conftest.c >&5 -configure:3260: $? = 0 -configure:3297: result: a.out -configure:3313: checking whether the C compiler works -configure:3341: result: yes -configure:3348: checking whether we are cross compiling -configure:3350: result: yes -configure:3353: checking for suffix of executables -configure:3360: mipsel-uclibc-gcc -o conftest -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections conftest.c >&5 -configure:3364: $? = 0 -configure:3386: result: -configure:3392: checking for suffix of object files -configure:3414: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections conftest.c >&5 -configure:3418: $? = 0 -configure:3439: result: o -configure:3443: checking whether we are using the GNU C compiler -configure:3462: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections conftest.c >&5 -configure:3462: $? = 0 -configure:3471: result: yes -configure:3480: checking whether mipsel-uclibc-gcc accepts -g -configure:3500: mipsel-uclibc-gcc -c -g conftest.c >&5 -configure:3500: $? = 0 -configure:3541: result: yes -configure:3558: checking for mipsel-uclibc-gcc option to accept ISO C89 -configure:3622: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections conftest.c >&5 -configure:3622: $? = 0 -configure:3635: result: none needed -configure:3666: checking for style of include used by make -configure:3694: result: GNU -configure:3719: checking dependency style of mipsel-uclibc-gcc -configure:3829: result: gcc3 -configure:3845: checking for an ANSI C-conforming const -configure:3910: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections conftest.c >&5 -conftest.c: In function 'main': -conftest.c:40: warning: 't' is used uninitialized in this function -conftest.c:56: warning: 'b' is used uninitialized in this function -conftest.c:62: warning: 'cs[0]' is used uninitialized in this function -configure:3910: $? = 0 -configure:3917: result: yes -configure:3925: checking for inline -configure:3941: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections conftest.c >&5 -configure:3941: $? = 0 -configure:3949: result: inline -configure:3996: checking build system type -configure:4010: result: x86_64-pc-linux-gnu -configure:4030: checking host system type -configure:4043: result: mipsel-unknown-linux-gnu -configure:4063: checking for a sed that does not truncate output -configure:4127: result: /bin/sed -configure:4145: checking for grep that handles long lines and -e -configure:4203: result: /bin/grep -configure:4208: checking for egrep -configure:4270: result: /bin/grep -E -configure:4275: checking for fgrep -configure:4337: result: /bin/grep -F -configure:4372: checking for ld used by mipsel-uclibc-gcc -configure:4439: result: mipsel-uclibc-ld -configure:4446: checking if the linker (mipsel-uclibc-ld) is GNU ld -configure:4461: result: yes -configure:4473: checking for BSD- or MS-compatible name lister (nm) -configure:4522: result: mipsel-uclibc-nm -configure:4640: checking the name lister (mipsel-uclibc-nm) interface -configure:4647: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections conftest.c >&5 -configure:4650: mipsel-uclibc-nm "conftest.o" -configure:4653: output -00000000 B some_variable -configure:4660: result: BSD nm -configure:4663: checking whether ln -s works -configure:4667: result: yes -configure:4675: checking the maximum length of command line arguments -configure:4795: result: 3458764513820540925 -configure:4812: checking whether the shell understands some XSI constructs -configure:4822: result: yes -configure:4826: checking whether the shell understands "+=" -configure:4832: result: yes -configure:4867: checking for mipsel-uclibc-ld option to reload object files -configure:4874: result: -r -configure:4903: checking for mipsel-linux-objdump -configure:4919: found /opt/brcm/hndtools-mipsel-uclibc/bin/mipsel-linux-objdump -configure:4930: result: mipsel-linux-objdump -configure:5002: checking how to recognize dependent libraries -configure:5198: result: pass_all -configure:5218: checking for mipsel-linux-ar -configure:5245: result: mipsel-uclibc-ar -configure:5323: checking for mipsel-linux-strip -configure:5350: result: mipsel-uclibc-strip -R .note -R .comment -configure:5422: checking for mipsel-linux-ranlib -configure:5449: result: mipsel-uclibc-ranlib -configure:5579: checking command to parse mipsel-uclibc-nm output from mipsel-uclibc-gcc object -configure:5697: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections conftest.c >&5 -configure:5700: $? = 0 -configure:5704: mipsel-uclibc-nm conftest.o \| sed -n -e 's/^.*[ ]\([ABCDGIRSTW][ABCDGIRSTW]*\)[ ][ ]*\([_A-Za-z][_A-Za-z0-9]*\)$/\1 \2 \2/p' \> conftest.nm -configure:5707: $? = 0 -configure:5761: mipsel-uclibc-gcc -o conftest -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections conftest.c conftstm.o >&5 -configure:5764: $? = 0 -configure:5802: result: ok -configure:6610: checking how to run the C preprocessor -configure:6641: mipsel-uclibc-gcc -E conftest.c -configure:6641: $? = 0 -configure:6655: mipsel-uclibc-gcc -E conftest.c -conftest.c:11:28: error: ac_nonexistent.h: No such file or directory -configure:6655: $? = 1 -configure: failed program was: -| /* confdefs.h */ -| #define PACKAGE_NAME "EXIF library" -| #define PACKAGE_TARNAME "libexif" -| #define PACKAGE_VERSION "0.6.19" -| #define PACKAGE_STRING "EXIF library 0.6.19" -| #define PACKAGE_BUGREPORT "libexif-devel@lists.sourceforge.net" -| #define PACKAGE_URL "" -| #define PACKAGE "libexif" -| #define VERSION "0.6.19" -| /* end confdefs.h. */ -| #include -configure:6680: result: mipsel-uclibc-gcc -E -configure:6700: mipsel-uclibc-gcc -E conftest.c -configure:6700: $? = 0 -configure:6714: mipsel-uclibc-gcc -E conftest.c -conftest.c:11:28: error: ac_nonexistent.h: No such file or directory -configure:6714: $? = 1 -configure: failed program was: -| /* confdefs.h */ -| #define PACKAGE_NAME "EXIF library" -| #define PACKAGE_TARNAME "libexif" -| #define PACKAGE_VERSION "0.6.19" -| #define PACKAGE_STRING "EXIF library 0.6.19" -| #define PACKAGE_BUGREPORT "libexif-devel@lists.sourceforge.net" -| #define PACKAGE_URL "" -| #define PACKAGE "libexif" -| #define VERSION "0.6.19" -| /* end confdefs.h. */ -| #include -configure:6743: checking for ANSI C header files -configure:6763: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections conftest.c >&5 -configure:6763: $? = 0 -configure:6847: result: yes -configure:6860: checking for sys/types.h -configure:6860: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections conftest.c >&5 -configure:6860: $? = 0 -configure:6860: result: yes -configure:6860: checking for sys/stat.h -configure:6860: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections conftest.c >&5 -configure:6860: $? = 0 -configure:6860: result: yes -configure:6860: checking for stdlib.h -configure:6860: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections conftest.c >&5 -configure:6860: $? = 0 -configure:6860: result: yes -configure:6860: checking for string.h -configure:6860: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections conftest.c >&5 -configure:6860: $? = 0 -configure:6860: result: yes -configure:6860: checking for memory.h -configure:6860: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections conftest.c >&5 -configure:6860: $? = 0 -configure:6860: result: yes -configure:6860: checking for strings.h -configure:6860: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections conftest.c >&5 -configure:6860: $? = 0 -configure:6860: result: yes -configure:6860: checking for inttypes.h -configure:6860: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections conftest.c >&5 -configure:6860: $? = 0 -configure:6860: result: yes -configure:6860: checking for stdint.h -configure:6860: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections conftest.c >&5 -configure:6860: $? = 0 -configure:6860: result: yes -configure:6860: checking for unistd.h -configure:6860: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections conftest.c >&5 -configure:6860: $? = 0 -configure:6860: result: yes -configure:6875: checking for dlfcn.h -configure:6875: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections conftest.c >&5 -configure:6875: $? = 0 -configure:6875: result: yes -configure:7059: checking for objdir -configure:7074: result: .libs -configure:7370: checking if mipsel-uclibc-gcc supports -fno-rtti -fno-exceptions -configure:7388: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -fno-rtti -fno-exceptions conftest.c >&5 -cc1: warning: command line option "-fno-rtti" is valid for C++/ObjC++ but not for C -configure:7392: $? = 0 -configure:7405: result: no -configure:7425: checking for mipsel-uclibc-gcc option to produce PIC -configure:7697: result: -fPIC -DPIC -configure:7709: checking if mipsel-uclibc-gcc PIC flag -fPIC -DPIC works -configure:7727: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -fPIC -DPIC -DPIC conftest.c >&5 -configure:7731: $? = 0 -configure:7744: result: yes -configure:7768: checking if mipsel-uclibc-gcc static flag -static works -configure:7796: result: yes -configure:7811: checking if mipsel-uclibc-gcc supports -c -o file.o -configure:7832: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -o out/conftest2.o conftest.c >&5 -configure:7836: $? = 0 -configure:7858: result: yes -configure:7866: checking if mipsel-uclibc-gcc supports -c -o file.o -configure:7913: result: yes -configure:7946: checking whether the mipsel-uclibc-gcc linker (mipsel-uclibc-ld) supports shared libraries -configure:8933: result: yes -configure:8970: checking whether -lc should be explicitly linked in -configure:8975: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections conftest.c >&5 -configure:8978: $? = 0 -configure:8993: mipsel-uclibc-gcc -shared conftest.o -v -Wl,-soname -Wl,conftest -o conftest 2\>\&1 \| /bin/grep -lc \>/dev/null 2\>\&1 -configure:8996: $? = 0 -configure:9008: result: no -configure:9172: checking dynamic linker characteristics -configure:9605: mipsel-uclibc-gcc -o conftest -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections -Wl,-rpath -Wl,/foo conftest.c >&5 -configure:9605: $? = 0 -configure:9845: result: GNU/Linux ld.so -configure:9947: checking how to hardcode library paths into programs -configure:9972: result: immediate -configure:10492: checking whether stripping libraries is possible -configure:10497: result: yes -configure:10532: checking if libtool supports shared libraries -configure:10534: result: yes -configure:10537: checking whether to build shared libraries -configure:10558: result: yes -configure:10561: checking whether to build static libraries -configure:10565: result: yes -configure:10620: checking for uint8_t in stdint.h -configure:10633: result: yes -configure:10802: checking for math functions in libm -configure:10815: mipsel-uclibc-gcc -o conftest -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections conftest.c -lm >&5 -configure:10815: $? = 0 -configure:10816: result: yes -configure:10856: checking whether to build any docs -configure:10869: result: no -configure:10890: checking main docdir -configure:10902: result: ${prefix}/share/doc (FHS style) -configure:10914: checking package docdir -configure:10925: result: ${prefix}/share/doc/libexif (default style) -configure:10934: checking for dot -configure:10965: result: false -configure:10975: checking for doxygen -configure:11006: result: false -configure:11066: checking whether to create internal code docs -configure:11068: result: no -configure:11098: checking whether NLS is requested -configure:11107: result: no -configure:11145: checking for msgfmt -configure:11176: result: /usr/bin/msgfmt -configure:11185: checking for gmsgfmt -configure:11216: result: /usr/bin/msgfmt -configure:11256: checking for xgettext -configure:11287: result: /usr/bin/xgettext -configure:11327: checking for msgmerge -configure:11357: result: /usr/bin/msgmerge -configure:11413: checking for po/Makevars requiring hack -configure:11420: result: no -configure:11465: checking for ld used by GCC -configure:11529: result: mipsel-uclibc-ld -configure:11536: checking if the linker (mipsel-uclibc-ld) is GNU ld -configure:11549: result: yes -configure:11555: checking for shared library run path origin -configure:11568: result: done -configure:11984: checking whether NLS is requested -configure:11993: result: no -configure:12618: checking whether to use NLS -configure:12620: result: no -configure:12721: checking for iconv -configure:12743: mipsel-uclibc-gcc -o conftest -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections conftest.c -lm >&5 -conftest.c:24:19: error: iconv.h: No such file or directory -conftest.c: In function 'main': -conftest.c:28: error: 'iconv_t' undeclared (first use in this function) -conftest.c:28: error: (Each undeclared identifier is reported only once -conftest.c:28: error: for each function it appears in.) -conftest.c:28: error: expected ';' before 'cd' -conftest.c:29: warning: implicit declaration of function 'iconv' -conftest.c:29: error: 'cd' undeclared (first use in this function) -conftest.c:30: warning: implicit declaration of function 'iconv_close' -configure:12743: $? = 1 -configure: failed program was: -| /* confdefs.h */ -| #define PACKAGE_NAME "EXIF library" -| #define PACKAGE_TARNAME "libexif" -| #define PACKAGE_VERSION "0.6.19" -| #define PACKAGE_STRING "EXIF library 0.6.19" -| #define PACKAGE_BUGREPORT "libexif-devel@lists.sourceforge.net" -| #define PACKAGE_URL "" -| #define PACKAGE "libexif" -| #define VERSION "0.6.19" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_DLFCN_H 1 -| #define LT_OBJDIR ".libs/" -| /* end confdefs.h. */ -| #include -| #include -| int -| main () -| { -| iconv_t cd = iconv_open("",""); -| iconv(cd,NULL,NULL,NULL,NULL); -| iconv_close(cd); -| ; -| return 0; -| } -configure:12765: mipsel-uclibc-gcc -o conftest -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections conftest.c -lm -liconv >&5 -conftest.c:24:19: error: iconv.h: No such file or directory -conftest.c: In function 'main': -conftest.c:28: error: 'iconv_t' undeclared (first use in this function) -conftest.c:28: error: (Each undeclared identifier is reported only once -conftest.c:28: error: for each function it appears in.) -conftest.c:28: error: expected ';' before 'cd' -conftest.c:29: warning: implicit declaration of function 'iconv' -conftest.c:29: error: 'cd' undeclared (first use in this function) -conftest.c:30: warning: implicit declaration of function 'iconv_close' -configure:12765: $? = 1 -configure: failed program was: -| /* confdefs.h */ -| #define PACKAGE_NAME "EXIF library" -| #define PACKAGE_TARNAME "libexif" -| #define PACKAGE_VERSION "0.6.19" -| #define PACKAGE_STRING "EXIF library 0.6.19" -| #define PACKAGE_BUGREPORT "libexif-devel@lists.sourceforge.net" -| #define PACKAGE_URL "" -| #define PACKAGE "libexif" -| #define VERSION "0.6.19" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_DLFCN_H 1 -| #define LT_OBJDIR ".libs/" -| /* end confdefs.h. */ -| #include -| #include -| int -| main () -| { -| iconv_t cd = iconv_open("",""); -| iconv(cd,NULL,NULL,NULL,NULL); -| iconv_close(cd); -| ; -| return 0; -| } -configure:12775: result: no, consider installing GNU libiconv -configure:12882: checking for localtime_r -configure:12882: mipsel-uclibc-gcc -o conftest -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections conftest.c -lm >&5 -configure:12882: $? = 0 -configure:12882: result: yes -configure:13052: creating ./config.status - -## ---------------------- ## -## Running config.status. ## -## ---------------------- ## - -This file was extended by EXIF library config.status 0.6.19, which was -generated by GNU Autoconf 2.64. Invocation command line was - - CONFIG_FILES = - CONFIG_HEADERS = - CONFIG_LINKS = - CONFIG_COMMANDS = - $ ./config.status - -on vicente-P5K-E - -config.status:1122: creating po/Makefile.in -config.status:1230: WARNING: 'po/Makefile.in.in' seems to ignore the --datarootdir setting -config.status:1122: creating Makefile -config.status:1122: creating libexif.spec -config.status:1122: creating libexif/Makefile -config.status:1122: creating test/Makefile -config.status:1122: creating test/nls/Makefile -config.status:1122: creating m4m/Makefile -config.status:1122: creating doc/Makefile -config.status:1122: creating doc/Doxyfile -config.status:1122: creating doc/Doxyfile-internals -config.status:1122: creating libexif.pc -config.status:1122: creating libexif-uninstalled.pc -config.status:1122: creating binary/Makefile -config.status:1122: creating contrib/Makefile -config.status:1122: creating contrib/examples/Makefile -config.status:1122: creating config.h -config.status:1294: config.h is unchanged -config.status:1342: executing depfiles commands -config.status:1342: executing libtool commands -config.status:1342: executing default-1 commands - -## ---------------- ## -## Cache variables. ## -## ---------------- ## - -ac_cv_build=x86_64-pc-linux-gnu -ac_cv_c_compiler_gnu=yes -ac_cv_c_const=yes -ac_cv_c_inline=inline -ac_cv_env_CC_set=set -ac_cv_env_CC_value=mipsel-uclibc-gcc -ac_cv_env_CFLAGS_set=set -ac_cv_env_CFLAGS_value='-Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections' -ac_cv_env_CPPFLAGS_set= -ac_cv_env_CPPFLAGS_value= -ac_cv_env_CPP_set= -ac_cv_env_CPP_value= -ac_cv_env_LDFLAGS_set=set -ac_cv_env_LDFLAGS_value='-fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections' -ac_cv_env_LIBS_set= -ac_cv_env_LIBS_value= -ac_cv_env_build_alias_set=set -ac_cv_env_build_alias_value=x86_64-linux-gnu -ac_cv_env_host_alias_set=set -ac_cv_env_host_alias_value=mipsel-linux -ac_cv_env_target_alias_set= -ac_cv_env_target_alias_value= -ac_cv_func_localtime_r=yes -ac_cv_func_malloc_0_nonnull=yes -ac_cv_header_dlfcn_h=yes -ac_cv_header_inttypes_h=yes -ac_cv_header_memory_h=yes -ac_cv_header_stdc=yes -ac_cv_header_stdint_h=yes -ac_cv_header_stdlib_h=yes -ac_cv_header_string_h=yes -ac_cv_header_strings_h=yes -ac_cv_header_sys_stat_h=yes -ac_cv_header_sys_types_h=yes -ac_cv_header_unistd_h=yes -ac_cv_host=mipsel-unknown-linux-gnu -ac_cv_objext=o -ac_cv_path_DOT=false -ac_cv_path_DOXYGEN=false -ac_cv_path_EGREP='/bin/grep -E' -ac_cv_path_FGREP='/bin/grep -F' -ac_cv_path_GMSGFMT=/usr/bin/msgfmt -ac_cv_path_GREP=/bin/grep -ac_cv_path_MSGFMT=/usr/bin/msgfmt -ac_cv_path_MSGMERGE=/usr/bin/msgmerge -ac_cv_path_SED=/bin/sed -ac_cv_path_XGETTEXT=/usr/bin/xgettext -ac_cv_path_install='/usr/bin/install -c' -ac_cv_path_mkdir=/bin/mkdir -ac_cv_prog_AR=mipsel-uclibc-ar -ac_cv_prog_AWK=gawk -ac_cv_prog_CC=mipsel-uclibc-gcc -ac_cv_prog_CPP='mipsel-uclibc-gcc -E' -ac_cv_prog_OBJDUMP=mipsel-linux-objdump -ac_cv_prog_RANLIB=mipsel-uclibc-ranlib -ac_cv_prog_STRIP='mipsel-uclibc-strip -R .note -R .comment' -ac_cv_prog_cc_c89= -ac_cv_prog_cc_g=yes -ac_cv_prog_make_make_set=yes -ac_cv_type_uint8_t=yes -acl_cv_hardcode_direct=no -acl_cv_hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' -acl_cv_hardcode_libdir_separator= -acl_cv_hardcode_minus_L=no -acl_cv_libext=a -acl_cv_path_LD=mipsel-uclibc-ld -acl_cv_prog_gnu_ld=yes -acl_cv_rpath=done -acl_cv_shlibext=so -acl_cv_wl=-Wl, -am_cv_CC_dependencies_compiler_type=gcc3 -am_cv_func_iconv='no, consider installing GNU libiconv' -am_cv_lib_iconv=no -lt_cv_deplibs_check_method=pass_all -lt_cv_file_magic_cmd='$MAGIC_CMD' -lt_cv_file_magic_test_file= -lt_cv_ld_reload_flag=-r -lt_cv_nm_interface='BSD nm' -lt_cv_objdir=.libs -lt_cv_path_LD=mipsel-uclibc-ld -lt_cv_path_NM=mipsel-uclibc-nm -lt_cv_prog_compiler_c_o=yes -lt_cv_prog_compiler_pic_works=yes -lt_cv_prog_compiler_rtti_exceptions=no -lt_cv_prog_compiler_static_works=yes -lt_cv_prog_gnu_ld=yes -lt_cv_sys_global_symbol_pipe='sed -n -e '\''s/^.*[ ]\([ABCDGIRSTW][ABCDGIRSTW]*\)[ ][ ]*\([_A-Za-z][_A-Za-z0-9]*\)$/\1 \2 \2/p'\''' -lt_cv_sys_global_symbol_to_c_name_address='sed -n -e '\''s/^: \([^ ]*\) $/ {\"\1\", (void *) 0},/p'\'' -e '\''s/^[ABCDGIRSTW]* \([^ ]*\) \([^ ]*\)$/ {"\2", (void *) \&\2},/p'\''' -lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='sed -n -e '\''s/^: \([^ ]*\) $/ {\"\1\", (void *) 0},/p'\'' -e '\''s/^[ABCDGIRSTW]* \([^ ]*\) \(lib[^ ]*\)$/ {"\2", (void *) \&\2},/p'\'' -e '\''s/^[ABCDGIRSTW]* \([^ ]*\) \([^ ]*\)$/ {"lib\2", (void *) \&\2},/p'\''' -lt_cv_sys_global_symbol_to_cdecl='sed -n -e '\''s/^T .* \(.*\)$/extern int \1();/p'\'' -e '\''s/^[ABCDGIRSTW]* .* \(.*\)$/extern char \1;/p'\''' -lt_cv_sys_max_cmd_len=3458764513820540925 - -## ----------------- ## -## Output variables. ## -## ----------------- ## - -ACLOCAL='${SHELL} /home/vicente/tomato/release/src/router/libexif/missing --run aclocal-1.11' -AMDEPBACKSLASH='\' -AMDEP_FALSE='#' -AMDEP_TRUE='' -AMTAR='${SHELL} /home/vicente/tomato/release/src/router/libexif/missing --run tar' -AM_CPPFLAGS=' -DGETTEXT_PACKAGE=\"libexif-12\" -DLOCALEDIR=\"$(datadir)/locale\" -I$(top_srcdir) -I$(top_builddir) -g -Wall -Wmissing-declarations -Wmissing-prototypes' -AM_LDFLAGS='-fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections -g -Wall' -AR='mipsel-uclibc-ar' -AUTOCONF='${SHELL} /home/vicente/tomato/release/src/router/libexif/missing --run autoconf' -AUTOHEADER='${SHELL} /home/vicente/tomato/release/src/router/libexif/missing --run autoheader' -AUTOMAKE='${SHELL} /home/vicente/tomato/release/src/router/libexif/missing --run automake-1.11' -AWK='gawk' -BUILD_DOCS_FALSE='' -BUILD_DOCS_TRUE='#' -CC='mipsel-uclibc-gcc' -CCDEPMODE='depmode=gcc3' -CFLAGS='-Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections' -CPP='mipsel-uclibc-gcc -E' -CPPFLAGS='' -CYGPATH_W='echo' -DEFS='-DHAVE_CONFIG_H' -DEPDIR='.deps' -DOT='false' -DOXYGEN='false' -DOXYGEN_OUTPUT_DIR='doxygen-output' -DSYMUTIL='' -DUMPBIN='' -ECHO_C='' -ECHO_N='-n' -ECHO_T='' -EGREP='/bin/grep -E' -ENABLE_INTERNAL_DOCS_FALSE='' -ENABLE_INTERNAL_DOCS_TRUE='#' -EXEEXT='' -FGREP='/bin/grep -F' -GETTEXT_PACKAGE='libexif-12' -GMSGFMT='/usr/bin/msgfmt' -GREP='/bin/grep' -HAVE_DOT='NO' -HAVE_DOT_FALSE='' -HAVE_DOT_TRUE='#' -HAVE_DOXYGEN_FALSE='' -HAVE_DOXYGEN_TRUE='#' -HTML_APIDOC_DIR='libexif-api.html' -HTML_APIDOC_INTERNALS_DIR='libexif-internals.html' -INSTALL_DATA='${INSTALL} -m 644' -INSTALL_PROGRAM='${INSTALL}' -INSTALL_SCRIPT='${INSTALL}' -INSTALL_STRIP_PROGRAM='$(install_sh) -c -s' -INTLLIBS='' -LD='mipsel-uclibc-ld' -LDFLAGS='-fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections' -LIBEXIF_AGE='3' -LIBEXIF_CURRENT='15' -LIBEXIF_CURRENT_MIN='12' -LIBEXIF_REVISION='1' -LIBEXIF_VERSION_INFO='15:1:3' -LIBICONV='' -LIBINTL='' -LIBOBJS='' -LIBS=' -lm' -LIBTOOL='$(SHELL) $(top_builddir)/libtool' -LIPO='' -LN_S='ln -s' -LTLIBICONV='' -LTLIBINTL='' -LTLIBOBJS='' -MAINT='#' -MAINTAINER_MODE_FALSE='' -MAINTAINER_MODE_TRUE='#' -MAKEINFO='${SHELL} /home/vicente/tomato/release/src/router/libexif/missing --run makeinfo' -MKDIR_P='/bin/mkdir -p' -MKINSTALLDIRS='$(top_builddir)/./mkinstalldirs' -MSGFMT='/usr/bin/msgfmt' -MSGMERGE='/usr/bin/msgmerge' -NM='mipsel-uclibc-nm' -NMEDIT='' -OBJDUMP='mipsel-linux-objdump' -OBJEXT='o' -OTOOL64='' -OTOOL='' -PACKAGE='libexif' -PACKAGE_BUGREPORT='libexif-devel@lists.sourceforge.net' -PACKAGE_NAME='EXIF library' -PACKAGE_STRING='EXIF library 0.6.19' -PACKAGE_TARNAME='libexif' -PACKAGE_URL='' -PACKAGE_VERSION='0.6.19' -PATH_SEPARATOR=':' -POSUB='' -RANLIB='mipsel-uclibc-ranlib' -SED='/bin/sed' -SET_MAKE='' -SHELL='/bin/sh' -SHIP_BINARIES_FALSE='' -SHIP_BINARIES_TRUE='#' -STRIP='mipsel-uclibc-strip -R .note -R .comment' -USE_NLS='no' -VERSION='0.6.19' -XGETTEXT='/usr/bin/xgettext' -ac_ct_CC='' -ac_ct_DUMPBIN='' -am__EXEEXT_FALSE='' -am__EXEEXT_TRUE='#' -am__fastdepCC_FALSE='#' -am__fastdepCC_TRUE='' -am__include='include' -am__isrc='' -am__leading_dot='.' -am__quote='' -am__tar='${AMTAR} chof - "$$tardir"' -am__untar='${AMTAR} xf -' -bindir='${exec_prefix}/bin' -build='x86_64-pc-linux-gnu' -build_alias='x86_64-linux-gnu' -build_cpu='x86_64' -build_os='linux-gnu' -build_vendor='pc' -datadir='${datarootdir}' -datarootdir='${prefix}/share' -docdir='${prefix}/share/doc/libexif' -dvidir='${docdir}' -exec_prefix='${prefix}' -host='mipsel-unknown-linux-gnu' -host_alias='mipsel-linux' -host_cpu='mipsel' -host_os='linux-gnu' -host_vendor='unknown' -htmldir='${docdir}' -includedir='${prefix}/include' -infodir='${datarootdir}/info' -install_sh='${SHELL} /home/vicente/tomato/release/src/router/libexif/install-sh' -libdir='${exec_prefix}/lib' -libexecdir='${exec_prefix}/libexec' -localedir='$(datadir)/locale' -localstatedir='${prefix}/var' -lt_ECHO='echo' -mandir='${datarootdir}/man' -mkdir_p='/bin/mkdir -p' -oldincludedir='/usr/include' -pdfdir='${docdir}' -prefix='' -program_transform_name='s,x,x,' -psdir='${docdir}' -sbindir='${exec_prefix}/sbin' -sharedstatedir='${prefix}/com' -sysconfdir='${prefix}/etc' -target_alias='' - -## ----------- ## -## confdefs.h. ## -## ----------- ## - -/* confdefs.h */ -#define PACKAGE_NAME "EXIF library" -#define PACKAGE_TARNAME "libexif" -#define PACKAGE_VERSION "0.6.19" -#define PACKAGE_STRING "EXIF library 0.6.19" -#define PACKAGE_BUGREPORT "libexif-devel@lists.sourceforge.net" -#define PACKAGE_URL "" -#define PACKAGE "libexif" -#define VERSION "0.6.19" -#define STDC_HEADERS 1 -#define HAVE_SYS_TYPES_H 1 -#define HAVE_SYS_STAT_H 1 -#define HAVE_STDLIB_H 1 -#define HAVE_STRING_H 1 -#define HAVE_MEMORY_H 1 -#define HAVE_STRINGS_H 1 -#define HAVE_INTTYPES_H 1 -#define HAVE_STDINT_H 1 -#define HAVE_UNISTD_H 1 -#define HAVE_DLFCN_H 1 -#define LT_OBJDIR ".libs/" -#define HAVE_LOCALTIME_R 1 - -configure: exit 0 diff --git a/release/src/router/libexif/config.status b/release/src/router/libexif/config.status deleted file mode 100755 index 08a301e449..0000000000 --- a/release/src/router/libexif/config.status +++ /dev/null @@ -1,2193 +0,0 @@ -#! /bin/sh -# Generated by configure. -# Run this file to recreate the current configuration. -# Compiler output produced by configure, useful for debugging -# configure, is in config.log if it exists. - -debug=false -ac_cs_recheck=false -ac_cs_silent=false - -SHELL=${CONFIG_SHELL-/bin/sh} -export SHELL -## -------------------- ## -## M4sh Initialization. ## -## -------------------- ## - -# Be more Bourne compatible -DUALCASE=1; export DUALCASE # for MKS sh -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then : - emulate sh - NULLCMD=: - # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which - # is contrary to our usage. Disable this feature. - alias -g '${1+"$@"}'='"$@"' - setopt NO_GLOB_SUBST -else - case `(set -o) 2>/dev/null` in #( - *posix*) : - set -o posix ;; #( - *) : - ;; -esac -fi - - -as_nl=' -' -export as_nl -# Printing a long string crashes Solaris 7 /usr/bin/printf. -as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' -as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo -as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo -# Prefer a ksh shell builtin over an external printf program on Solaris, -# but without wasting forks for bash or zsh. -if test -z "$BASH_VERSION$ZSH_VERSION" \ - && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then - as_echo='print -r --' - as_echo_n='print -rn --' -elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then - as_echo='printf %s\n' - as_echo_n='printf %s' -else - if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then - as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"' - as_echo_n='/usr/ucb/echo -n' - else - as_echo_body='eval expr "X$1" : "X\\(.*\\)"' - as_echo_n_body='eval - arg=$1; - case $arg in #( - *"$as_nl"*) - expr "X$arg" : "X\\(.*\\)$as_nl"; - arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;; - esac; - expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl" - ' - export as_echo_n_body - as_echo_n='sh -c $as_echo_n_body as_echo' - fi - export as_echo_body - as_echo='sh -c $as_echo_body as_echo' -fi - -# The user is always right. -if test "${PATH_SEPARATOR+set}" != set; then - PATH_SEPARATOR=: - (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { - (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || - PATH_SEPARATOR=';' - } -fi - - -# IFS -# We need space, tab and new line, in precisely that order. Quoting is -# there to prevent editors from complaining about space-tab. -# (If _AS_PATH_WALK were called with IFS unset, it would disable word -# splitting by setting IFS to empty value.) -IFS=" "" $as_nl" - -# Find who we are. Look in the path if we contain no directory separator. -case $0 in #(( - *[\\/]* ) as_myself=$0 ;; - *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break - done -IFS=$as_save_IFS - - ;; -esac -# We did not find ourselves, most probably we were run as `sh COMMAND' -# in which case we are not to be found in the path. -if test "x$as_myself" = x; then - as_myself=$0 -fi -if test ! -f "$as_myself"; then - $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 - exit 1 -fi - -# Unset variables that we do not need and which cause bugs (e.g. in -# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1" -# suppresses any "Segmentation fault" message there. '((' could -# trigger a bug in pdksh 5.2.14. -for as_var in BASH_ENV ENV MAIL MAILPATH -do eval test x\${$as_var+set} = xset \ - && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : -done -PS1='$ ' -PS2='> ' -PS4='+ ' - -# NLS nuisances. -LC_ALL=C -export LC_ALL -LANGUAGE=C -export LANGUAGE - -# CDPATH. -(unset CDPATH) >/dev/null 2>&1 && unset CDPATH - - -# as_fn_error ERROR [LINENO LOG_FD] -# --------------------------------- -# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are -# provided, also output the error to LOG_FD, referencing LINENO. Then exit the -# script with status $?, using 1 if that was 0. -as_fn_error () -{ - as_status=$?; test $as_status -eq 0 && as_status=1 - if test "$3"; then - as_lineno=${as_lineno-"$2"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - $as_echo "$as_me:${as_lineno-$LINENO}: error: $1" >&$3 - fi - $as_echo "$as_me: error: $1" >&2 - as_fn_exit $as_status -} # as_fn_error - - -# as_fn_set_status STATUS -# ----------------------- -# Set $? to STATUS, without forking. -as_fn_set_status () -{ - return $1 -} # as_fn_set_status - -# as_fn_exit STATUS -# ----------------- -# Exit the shell with STATUS, even in a "trap 0" or "set -e" context. -as_fn_exit () -{ - set +e - as_fn_set_status $1 - exit $1 -} # as_fn_exit - -# as_fn_unset VAR -# --------------- -# Portably unset VAR. -as_fn_unset () -{ - { eval $1=; unset $1;} -} -as_unset=as_fn_unset -# as_fn_append VAR VALUE -# ---------------------- -# Append the text in VALUE to the end of the definition contained in VAR. Take -# advantage of any shell optimizations that allow amortized linear growth over -# repeated appends, instead of the typical quadratic growth present in naive -# implementations. -if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then : - eval 'as_fn_append () - { - eval $1+=\$2 - }' -else - as_fn_append () - { - eval $1=\$$1\$2 - } -fi # as_fn_append - -# as_fn_arith ARG... -# ------------------ -# Perform arithmetic evaluation on the ARGs, and store the result in the -# global $as_val. Take advantage of shells that can avoid forks. The arguments -# must be portable across $(()) and expr. -if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then : - eval 'as_fn_arith () - { - as_val=$(( $* )) - }' -else - as_fn_arith () - { - as_val=`expr "$@" || test $? -eq 1` - } -fi # as_fn_arith - - -if expr a : '\(a\)' >/dev/null 2>&1 && - test "X`expr 00001 : '.*\(...\)'`" = X001; then - as_expr=expr -else - as_expr=false -fi - -if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then - as_basename=basename -else - as_basename=false -fi - -if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then - as_dirname=dirname -else - as_dirname=false -fi - -as_me=`$as_basename -- "$0" || -$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ - X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X/"$0" | - sed '/^.*\/\([^/][^/]*\)\/*$/{ - s//\1/ - q - } - /^X\/\(\/\/\)$/{ - s//\1/ - q - } - /^X\/\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - -# Avoid depending upon Character Ranges. -as_cr_letters='abcdefghijklmnopqrstuvwxyz' -as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' -as_cr_Letters=$as_cr_letters$as_cr_LETTERS -as_cr_digits='0123456789' -as_cr_alnum=$as_cr_Letters$as_cr_digits - -ECHO_C= ECHO_N= ECHO_T= -case `echo -n x` in #((((( --n*) - case `echo 'xy\c'` in - *c*) ECHO_T=' ';; # ECHO_T is single tab character. - xy) ECHO_C='\c';; - *) echo `echo ksh88 bug on AIX 6.1` > /dev/null - ECHO_T=' ';; - esac;; -*) - ECHO_N='-n';; -esac - -rm -f conf$$ conf$$.exe conf$$.file -if test -d conf$$.dir; then - rm -f conf$$.dir/conf$$.file -else - rm -f conf$$.dir - mkdir conf$$.dir 2>/dev/null -fi -if (echo >conf$$.file) 2>/dev/null; then - if ln -s conf$$.file conf$$ 2>/dev/null; then - as_ln_s='ln -s' - # ... but there are two gotchas: - # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. - # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. - # In both cases, we have to default to `cp -p'. - ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || - as_ln_s='cp -p' - elif ln conf$$.file conf$$ 2>/dev/null; then - as_ln_s=ln - else - as_ln_s='cp -p' - fi -else - as_ln_s='cp -p' -fi -rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file -rmdir conf$$.dir 2>/dev/null - - -# as_fn_mkdir_p -# ------------- -# Create "$as_dir" as a directory, including parents if necessary. -as_fn_mkdir_p () -{ - - case $as_dir in #( - -*) as_dir=./$as_dir;; - esac - test -d "$as_dir" || eval $as_mkdir_p || { - as_dirs= - while :; do - case $as_dir in #( - *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( - *) as_qdir=$as_dir;; - esac - as_dirs="'$as_qdir' $as_dirs" - as_dir=`$as_dirname -- "$as_dir" || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - test -d "$as_dir" && break - done - test -z "$as_dirs" || eval "mkdir $as_dirs" - } || test -d "$as_dir" || as_fn_error "cannot create directory $as_dir" - - -} # as_fn_mkdir_p -if mkdir -p . 2>/dev/null; then - as_mkdir_p='mkdir -p "$as_dir"' -else - test -d ./-p && rmdir ./-p - as_mkdir_p=false -fi - -if test -x / >/dev/null 2>&1; then - as_test_x='test -x' -else - if ls -dL / >/dev/null 2>&1; then - as_ls_L_option=L - else - as_ls_L_option= - fi - as_test_x=' - eval sh -c '\'' - if test -d "$1"; then - test -d "$1/."; - else - case $1 in #( - -*)set "./$1";; - esac; - case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #(( - ???[sx]*):;;*)false;;esac;fi - '\'' sh - ' -fi -as_executable_p=$as_test_x - -# Sed expression to map a string onto a valid CPP name. -as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" - -# Sed expression to map a string onto a valid variable name. -as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" - - -exec 6>&1 -## ----------------------------------- ## -## Main body of $CONFIG_STATUS script. ## -## ----------------------------------- ## -# Save the log message, to keep $0 and so on meaningful, and to -# report actual input values of CONFIG_FILES etc. instead of their -# values after options handling. -ac_log=" -This file was extended by EXIF library $as_me 0.6.19, which was -generated by GNU Autoconf 2.64. Invocation command line was - - CONFIG_FILES = $CONFIG_FILES - CONFIG_HEADERS = $CONFIG_HEADERS - CONFIG_LINKS = $CONFIG_LINKS - CONFIG_COMMANDS = $CONFIG_COMMANDS - $ $0 $@ - -on `(hostname || uname -n) 2>/dev/null | sed 1q` -" - -# Files that config.status was made for. -config_files="po/Makefile.in Makefile libexif.spec libexif/Makefile test/Makefile test/nls/Makefile m4m/Makefile doc/Makefile doc/Doxyfile doc/Doxyfile-internals libexif.pc libexif-uninstalled.pc binary/Makefile contrib/Makefile contrib/examples/Makefile" -config_headers="config.h" -config_commands="depfiles libtool default-1" - -ac_cs_usage="\ -\`$as_me' instantiates files and other configuration actions -from templates according to the current configuration. Unless the files -and actions are specified as TAGs, all are instantiated by default. - -Usage: $0 [OPTION]... [TAG]... - - -h, --help print this help, then exit - -V, --version print version number and configuration settings, then exit - -q, --quiet, --silent - do not print progress messages - -d, --debug don't remove temporary files - --recheck update $as_me by reconfiguring in the same conditions - --file=FILE[:TEMPLATE] - instantiate the configuration file FILE - --header=FILE[:TEMPLATE] - instantiate the configuration header FILE - -Configuration files: -$config_files - -Configuration headers: -$config_headers - -Configuration commands: -$config_commands - -Report bugs to ." - -ac_cs_version="\ -EXIF library config.status 0.6.19 -configured by ./configure, generated by GNU Autoconf 2.64, - with options \"'--host=mipsel-linux' '--build=x86_64-linux-gnu' '--enable-shared' '--enable-static' '--prefix=' '--disable-docs' '--disable-rpath' '--disable-nls' '--without-libiconv-prefix' '--without-libintl-prefix' 'build_alias=x86_64-linux-gnu' 'host_alias=mipsel-linux' 'CC=mipsel-uclibc-gcc' 'CFLAGS=-Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections' 'LDFLAGS=-fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections'\" - -Copyright (C) 2009 Free Software Foundation, Inc. -This config.status script is free software; the Free Software Foundation -gives unlimited permission to copy, distribute and modify it." - -ac_pwd='/home/vicente/tomato/release/src/router/libexif' -srcdir='.' -INSTALL='/usr/bin/install -c' -MKDIR_P='/bin/mkdir -p' -AWK='gawk' -test -n "$AWK" || AWK=awk -# The default lists apply if the user does not specify any file. -ac_need_defaults=: -while test $# != 0 -do - case $1 in - --*=*) - ac_option=`expr "X$1" : 'X\([^=]*\)='` - ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'` - ac_shift=: - ;; - *) - ac_option=$1 - ac_optarg=$2 - ac_shift=shift - ;; - esac - - case $ac_option in - # Handling of the options. - -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) - ac_cs_recheck=: ;; - --version | --versio | --versi | --vers | --ver | --ve | --v | -V ) - $as_echo "$ac_cs_version"; exit ;; - --debug | --debu | --deb | --de | --d | -d ) - debug=: ;; - --file | --fil | --fi | --f ) - $ac_shift - case $ac_optarg in - *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; - esac - as_fn_append CONFIG_FILES " '$ac_optarg'" - ac_need_defaults=false;; - --header | --heade | --head | --hea ) - $ac_shift - case $ac_optarg in - *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; - esac - as_fn_append CONFIG_HEADERS " '$ac_optarg'" - ac_need_defaults=false;; - --he | --h) - # Conflict between --help and --header - as_fn_error "ambiguous option: \`$1' -Try \`$0 --help' for more information.";; - --help | --hel | -h ) - $as_echo "$ac_cs_usage"; exit ;; - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil | --si | --s) - ac_cs_silent=: ;; - - # This is an error. - -*) as_fn_error "unrecognized option: \`$1' -Try \`$0 --help' for more information." ;; - - *) as_fn_append ac_config_targets " $1" - ac_need_defaults=false ;; - - esac - shift -done - -ac_configure_extra_args= - -if $ac_cs_silent; then - exec 6>/dev/null - ac_configure_extra_args="$ac_configure_extra_args --silent" -fi - -if $ac_cs_recheck; then - set X '/bin/sh' './configure' '--host=mipsel-linux' '--build=x86_64-linux-gnu' '--enable-shared' '--enable-static' '--prefix=' '--disable-docs' '--disable-rpath' '--disable-nls' '--without-libiconv-prefix' '--without-libintl-prefix' 'build_alias=x86_64-linux-gnu' 'host_alias=mipsel-linux' 'CC=mipsel-uclibc-gcc' 'CFLAGS=-Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections' 'LDFLAGS=-fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections' $ac_configure_extra_args --no-create --no-recursion - shift - $as_echo "running CONFIG_SHELL=/bin/sh $*" >&6 - CONFIG_SHELL='/bin/sh' - export CONFIG_SHELL - exec "$@" -fi - -exec 5>>config.log -{ - echo - sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX -## Running $as_me. ## -_ASBOX - $as_echo "$ac_log" -} >&5 - -# -# INIT-COMMANDS -# -AMDEP_TRUE="" ac_aux_dir="." - - -# The HP-UX ksh and POSIX shell print the target directory to stdout -# if CDPATH is set. -(unset CDPATH) >/dev/null 2>&1 && unset CDPATH - -sed_quote_subst='s/\(["`$\\]\)/\\\1/g' -double_quote_subst='s/\(["`\\]\)/\\\1/g' -delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g' -macro_version='2.2.6' -macro_revision='1.3012' -enable_shared='yes' -enable_static='yes' -pic_mode='default' -enable_fast_install='yes' -host_alias='mipsel-linux' -host='mipsel-unknown-linux-gnu' -host_os='linux-gnu' -build_alias='x86_64-linux-gnu' -build='x86_64-pc-linux-gnu' -build_os='linux-gnu' -SED='/bin/sed' -Xsed='/bin/sed -e 1s/^X//' -GREP='/bin/grep' -EGREP='/bin/grep -E' -FGREP='/bin/grep -F' -LD='mipsel-uclibc-ld' -NM='mipsel-uclibc-nm' -LN_S='ln -s' -max_cmd_len='3458764513820540925' -ac_objext='o' -exeext='' -lt_unset='unset' -lt_SP2NL='tr \040 \012' -lt_NL2SP='tr \015\012 \040\040' -reload_flag=' -r' -reload_cmds='$LD$reload_flag -o $output$reload_objs' -OBJDUMP='mipsel-linux-objdump' -deplibs_check_method='pass_all' -file_magic_cmd='$MAGIC_CMD' -AR='mipsel-uclibc-ar' -AR_FLAGS='cru' -STRIP='mipsel-uclibc-strip -R .note -R .comment' -RANLIB='mipsel-uclibc-ranlib' -old_postinstall_cmds='chmod 644 $oldlib~$RANLIB $oldlib' -old_postuninstall_cmds='' -old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs~$RANLIB $oldlib' -CC='mipsel-uclibc-gcc' -CFLAGS='-Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections' -compiler='mipsel-uclibc-gcc' -GCC='yes' -lt_cv_sys_global_symbol_pipe='sed -n -e '\''s/^.*[ ]\([ABCDGIRSTW][ABCDGIRSTW]*\)[ ][ ]*\([_A-Za-z][_A-Za-z0-9]*\)$/\1 \2 \2/p'\''' -lt_cv_sys_global_symbol_to_cdecl='sed -n -e '\''s/^T .* \(.*\)$/extern int \1();/p'\'' -e '\''s/^[ABCDGIRSTW]* .* \(.*\)$/extern char \1;/p'\''' -lt_cv_sys_global_symbol_to_c_name_address='sed -n -e '\''s/^: \([^ ]*\) $/ {\"\1\", (void *) 0},/p'\'' -e '\''s/^[ABCDGIRSTW]* \([^ ]*\) \([^ ]*\)$/ {"\2", (void *) \&\2},/p'\''' -lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='sed -n -e '\''s/^: \([^ ]*\) $/ {\"\1\", (void *) 0},/p'\'' -e '\''s/^[ABCDGIRSTW]* \([^ ]*\) \(lib[^ ]*\)$/ {"\2", (void *) \&\2},/p'\'' -e '\''s/^[ABCDGIRSTW]* \([^ ]*\) \([^ ]*\)$/ {"lib\2", (void *) \&\2},/p'\''' -objdir='.libs' -SHELL='/bin/sh' -ECHO='echo' -MAGIC_CMD='file' -lt_prog_compiler_no_builtin_flag=' -fno-builtin' -lt_prog_compiler_wl='-Wl,' -lt_prog_compiler_pic=' -fPIC -DPIC' -lt_prog_compiler_static='-static' -lt_cv_prog_compiler_c_o='yes' -need_locks='no' -DSYMUTIL='' -NMEDIT='' -LIPO='' -OTOOL='' -OTOOL64='' -libext='a' -shrext_cmds='.so' -extract_expsyms_cmds='' -archive_cmds_need_lc='no' -enable_shared_with_static_runtimes='no' -export_dynamic_flag_spec='${wl}--export-dynamic' -whole_archive_flag_spec='${wl}--whole-archive$convenience ${wl}--no-whole-archive' -compiler_needs_object='no' -old_archive_from_new_cmds='' -old_archive_from_expsyms_cmds='' -archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' -archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~ - cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ - echo "local: *; };" >> $output_objdir/$libname.ver~ - $CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib' -module_cmds='' -module_expsym_cmds='' -with_gnu_ld='yes' -allow_undefined_flag='' -no_undefined_flag='' -hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' -hardcode_libdir_flag_spec_ld='' -hardcode_libdir_separator='' -hardcode_direct='no' -hardcode_direct_absolute='no' -hardcode_minus_L='no' -hardcode_shlibpath_var='unsupported' -hardcode_automatic='no' -inherit_rpath='no' -link_all_deplibs='unknown' -fix_srcfile_path='' -always_export_symbols='no' -export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' -exclude_expsyms='_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*' -include_expsyms='' -prelink_cmds='' -file_list_spec='' -variables_saved_for_relink='PATH LD_LIBRARY_PATH LD_RUN_PATH GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH' -need_lib_prefix='no' -need_version='no' -version_type='linux' -runpath_var='LD_RUN_PATH' -shlibpath_var='LD_LIBRARY_PATH' -shlibpath_overrides_runpath='no' -libname_spec='lib$name' -library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' -soname_spec='${libname}${release}${shared_ext}$major' -postinstall_cmds='' -postuninstall_cmds='' -finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' -finish_eval='' -hardcode_into_libs='yes' -sys_lib_search_path_spec='/home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/lib/gcc/mipsel-linux-uclibc/4.2.4 /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/lib/gcc /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/mipsel-linux-uclibc/lib' -sys_lib_dlsearch_path_spec='/lib /usr/lib /lib/i386-linux-gnu /usr/lib/i386-linux-gnu /lib/i686-linux-gnu /usr/lib/i686-linux-gnu /usr/local/lib /usr/lib/nvidia-settings /lib/x86_64-linux-gnu /usr/lib/x86_64-linux-gnu /usr/lib/nvidia-current /usr/lib32/nvidia-current /lib32 /usr/lib32 ' -hardcode_action='immediate' -enable_dlopen='unknown' -enable_dlopen_self='unknown' -enable_dlopen_self_static='unknown' -old_striplib='mipsel-uclibc-strip -R .note -R .comment --strip-debug' -striplib='mipsel-uclibc-strip -R .note -R .comment --strip-unneeded' - -LTCC='mipsel-uclibc-gcc' -LTCFLAGS='-Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections' -compiler='mipsel-uclibc-gcc' - -# Quote evaled strings. -for var in SED GREP EGREP FGREP LD NM LN_S lt_SP2NL lt_NL2SP reload_flag OBJDUMP deplibs_check_method file_magic_cmd AR AR_FLAGS STRIP RANLIB CC CFLAGS compiler lt_cv_sys_global_symbol_pipe lt_cv_sys_global_symbol_to_cdecl lt_cv_sys_global_symbol_to_c_name_address lt_cv_sys_global_symbol_to_c_name_address_lib_prefix SHELL ECHO lt_prog_compiler_no_builtin_flag lt_prog_compiler_wl lt_prog_compiler_pic lt_prog_compiler_static lt_cv_prog_compiler_c_o need_locks DSYMUTIL NMEDIT LIPO OTOOL OTOOL64 shrext_cmds export_dynamic_flag_spec whole_archive_flag_spec compiler_needs_object with_gnu_ld allow_undefined_flag no_undefined_flag hardcode_libdir_flag_spec hardcode_libdir_flag_spec_ld hardcode_libdir_separator fix_srcfile_path exclude_expsyms include_expsyms file_list_spec variables_saved_for_relink libname_spec library_names_spec soname_spec finish_eval old_striplib striplib; do - case `eval \\$ECHO "X\\$$var"` in - *[\\\`\"\$]*) - eval "lt_$var=\\\"\`\$ECHO \"X\$$var\" | \$Xsed -e \"\$sed_quote_subst\"\`\\\"" - ;; - *) - eval "lt_$var=\\\"\$$var\\\"" - ;; - esac -done - -# Double-quote double-evaled strings. -for var in reload_cmds old_postinstall_cmds old_postuninstall_cmds old_archive_cmds extract_expsyms_cmds old_archive_from_new_cmds old_archive_from_expsyms_cmds archive_cmds archive_expsym_cmds module_cmds module_expsym_cmds export_symbols_cmds prelink_cmds postinstall_cmds postuninstall_cmds finish_cmds sys_lib_search_path_spec sys_lib_dlsearch_path_spec; do - case `eval \\$ECHO "X\\$$var"` in - *[\\\`\"\$]*) - eval "lt_$var=\\\"\`\$ECHO \"X\$$var\" | \$Xsed -e \"\$double_quote_subst\" -e \"\$sed_quote_subst\" -e \"\$delay_variable_subst\"\`\\\"" - ;; - *) - eval "lt_$var=\\\"\$$var\\\"" - ;; - esac -done - -# Fix-up fallback echo if it was mangled by the above quoting rules. -case $lt_ECHO in -*'\$0 --fallback-echo"') lt_ECHO=`$ECHO "X$lt_ECHO" | $Xsed -e 's/\\\\\\\$0 --fallback-echo"$/$0 --fallback-echo"/'` - ;; -esac - -ac_aux_dir='.' -xsi_shell='yes' -lt_shell_append='yes' - -# See if we are running on zsh, and set the options which allow our -# commands through without removal of \ escapes INIT. -if test -n "${ZSH_VERSION+set}" ; then - setopt NO_GLOB_SUBST -fi - - - PACKAGE='libexif' - VERSION='0.6.19' - TIMESTAMP='' - RM='rm -f' - ofile='libtool' - - - -# Capture the value of obsolete ALL_LINGUAS because we need it to compute - # POFILES, UPDATEPOFILES, DUMMYPOFILES, GMOFILES, CATALOGS. But hide it - # from automake. - eval 'OBSOLETE_ALL_LINGUAS''="be cs da de en_CA en_GB es fr it ja nl pl pt pt_BR ru sk sq sr sv vi zh_CN"' - # Capture the value of LINGUAS because we need it to compute CATALOGS. - LINGUAS="%UNSET%" - - - -# Handling of arguments. -for ac_config_target in $ac_config_targets -do - case $ac_config_target in - "config.h") CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;; - "depfiles") CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;; - "libtool") CONFIG_COMMANDS="$CONFIG_COMMANDS libtool" ;; - "default-1") CONFIG_COMMANDS="$CONFIG_COMMANDS default-1" ;; - "po/Makefile.in") CONFIG_FILES="$CONFIG_FILES po/Makefile.in" ;; - "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;; - "libexif.spec") CONFIG_FILES="$CONFIG_FILES libexif.spec" ;; - "libexif/Makefile") CONFIG_FILES="$CONFIG_FILES libexif/Makefile" ;; - "test/Makefile") CONFIG_FILES="$CONFIG_FILES test/Makefile" ;; - "test/nls/Makefile") CONFIG_FILES="$CONFIG_FILES test/nls/Makefile" ;; - "m4m/Makefile") CONFIG_FILES="$CONFIG_FILES m4m/Makefile" ;; - "doc/Makefile") CONFIG_FILES="$CONFIG_FILES doc/Makefile" ;; - "doc/Doxyfile") CONFIG_FILES="$CONFIG_FILES doc/Doxyfile" ;; - "doc/Doxyfile-internals") CONFIG_FILES="$CONFIG_FILES doc/Doxyfile-internals" ;; - "libexif.pc") CONFIG_FILES="$CONFIG_FILES libexif.pc" ;; - "libexif-uninstalled.pc") CONFIG_FILES="$CONFIG_FILES libexif-uninstalled.pc" ;; - "binary/Makefile") CONFIG_FILES="$CONFIG_FILES binary/Makefile" ;; - "contrib/Makefile") CONFIG_FILES="$CONFIG_FILES contrib/Makefile" ;; - "contrib/examples/Makefile") CONFIG_FILES="$CONFIG_FILES contrib/examples/Makefile" ;; - - *) as_fn_error "invalid argument: \`$ac_config_target'" "$LINENO" 5;; - esac -done - - -# If the user did not use the arguments to specify the items to instantiate, -# then the envvar interface is used. Set only those that are not. -# We use the long form for the default assignment because of an extremely -# bizarre bug on SunOS 4.1.3. -if $ac_need_defaults; then - test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files - test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers - test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands -fi - -# Have a temporary directory for convenience. Make it in the build tree -# simply because there is no reason against having it here, and in addition, -# creating and moving files from /tmp can sometimes cause problems. -# Hook for its removal unless debugging. -# Note that there is a small window in which the directory will not be cleaned: -# after its creation but before its name has been assigned to `$tmp'. -$debug || -{ - tmp= - trap 'exit_status=$? - { test -z "$tmp" || test ! -d "$tmp" || rm -fr "$tmp"; } && exit $exit_status -' 0 - trap 'as_fn_exit 1' 1 2 13 15 -} -# Create a (secure) tmp directory for tmp files. - -{ - tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` && - test -n "$tmp" && test -d "$tmp" -} || -{ - tmp=./conf$$-$RANDOM - (umask 077 && mkdir "$tmp") -} || as_fn_error "cannot create a temporary directory in ." "$LINENO" 5 - -# Set up the scripts for CONFIG_FILES section. -# No need to generate them if there are no CONFIG_FILES. -# This happens for instance with `./config.status config.h'. -if test -n "$CONFIG_FILES"; then - - -ac_cr=`echo X | tr X '\015'` -# On cygwin, bash can eat \r inside `` if the user requested igncr. -# But we know of no other shell where ac_cr would be empty at this -# point, so we can use a bashism as a fallback. -if test "x$ac_cr" = x; then - eval ac_cr=\$\'\\r\' -fi -ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' /dev/null` -if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then - ac_cs_awk_cr='\r' -else - ac_cs_awk_cr=$ac_cr -fi - -echo 'BEGIN {' >"$tmp/subs1.awk" && -cat >>"$tmp/subs1.awk" <<\_ACAWK && -S["am__EXEEXT_FALSE"]="" -S["am__EXEEXT_TRUE"]="#" -S["LTLIBOBJS"]="" -S["LIBOBJS"]="" -S["AM_LDFLAGS"]="-fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections -g -Wall" -S["AM_CPPFLAGS"]=" -DGETTEXT_PACKAGE=\\\"libexif-12\\\" -DLOCALEDIR=\\\"$(datadir)/locale\\\" -I$(top_srcdir) -I$(top_builddir) -g -Wall -Wmissing-declarations -Wmissing-prot"\ -"otypes" -S["POSUB"]="" -S["LTLIBINTL"]="" -S["LIBINTL"]="" -S["INTLLIBS"]="" -S["LTLIBICONV"]="" -S["LIBICONV"]="" -S["GETTEXT_PACKAGE"]="libexif-12" -S["MSGMERGE"]="/usr/bin/msgmerge" -S["XGETTEXT"]="/usr/bin/xgettext" -S["GMSGFMT"]="/usr/bin/msgfmt" -S["MSGFMT"]="/usr/bin/msgfmt" -S["USE_NLS"]="no" -S["MKINSTALLDIRS"]="$(top_builddir)/./mkinstalldirs" -S["ENABLE_INTERNAL_DOCS_FALSE"]="" -S["ENABLE_INTERNAL_DOCS_TRUE"]="#" -S["HTML_APIDOC_INTERNALS_DIR"]="libexif-internals.html" -S["DOXYGEN_OUTPUT_DIR"]="doxygen-output" -S["HTML_APIDOC_DIR"]="libexif-api.html" -S["HAVE_DOT"]="NO" -S["HAVE_DOT_FALSE"]="" -S["HAVE_DOT_TRUE"]="#" -S["HAVE_DOXYGEN_FALSE"]="" -S["HAVE_DOXYGEN_TRUE"]="#" -S["DOXYGEN"]="false" -S["DOT"]="false" -S["BUILD_DOCS_FALSE"]="" -S["BUILD_DOCS_TRUE"]="#" -S["SHIP_BINARIES_FALSE"]="" -S["SHIP_BINARIES_TRUE"]="#" -S["CPP"]="mipsel-uclibc-gcc -E" -S["OTOOL64"]="" -S["OTOOL"]="" -S["LIPO"]="" -S["NMEDIT"]="" -S["DSYMUTIL"]="" -S["lt_ECHO"]="echo" -S["RANLIB"]="mipsel-uclibc-ranlib" -S["AR"]="mipsel-uclibc-ar" -S["OBJDUMP"]="mipsel-linux-objdump" -S["LN_S"]="ln -s" -S["NM"]="mipsel-uclibc-nm" -S["ac_ct_DUMPBIN"]="" -S["DUMPBIN"]="" -S["LD"]="mipsel-uclibc-ld" -S["FGREP"]="/bin/grep -F" -S["EGREP"]="/bin/grep -E" -S["GREP"]="/bin/grep" -S["SED"]="/bin/sed" -S["host_os"]="linux-gnu" -S["host_vendor"]="unknown" -S["host_cpu"]="mipsel" -S["host"]="mipsel-unknown-linux-gnu" -S["build_os"]="linux-gnu" -S["build_vendor"]="pc" -S["build_cpu"]="x86_64" -S["build"]="x86_64-pc-linux-gnu" -S["LIBTOOL"]="$(SHELL) $(top_builddir)/libtool" -S["am__fastdepCC_FALSE"]="#" -S["am__fastdepCC_TRUE"]="" -S["CCDEPMODE"]="depmode=gcc3" -S["AMDEPBACKSLASH"]="\\" -S["AMDEP_FALSE"]="#" -S["AMDEP_TRUE"]="" -S["am__quote"]="" -S["am__include"]="include" -S["DEPDIR"]=".deps" -S["OBJEXT"]="o" -S["EXEEXT"]="" -S["ac_ct_CC"]="" -S["CPPFLAGS"]="" -S["LDFLAGS"]="-fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections" -S["CFLAGS"]="-Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sect"\ -"ions" -S["CC"]="mipsel-uclibc-gcc" -S["LIBEXIF_VERSION_INFO"]="15:1:3" -S["LIBEXIF_CURRENT_MIN"]="12" -S["LIBEXIF_CURRENT"]="15" -S["LIBEXIF_REVISION"]="1" -S["LIBEXIF_AGE"]="3" -S["MAINT"]="#" -S["MAINTAINER_MODE_FALSE"]="" -S["MAINTAINER_MODE_TRUE"]="#" -S["am__untar"]="${AMTAR} xf -" -S["am__tar"]="${AMTAR} chof - \"$$tardir\"" -S["AMTAR"]="${SHELL} /home/vicente/tomato/release/src/router/libexif/missing --run tar" -S["am__leading_dot"]="." -S["SET_MAKE"]="" -S["AWK"]="gawk" -S["mkdir_p"]="/bin/mkdir -p" -S["MKDIR_P"]="/bin/mkdir -p" -S["INSTALL_STRIP_PROGRAM"]="$(install_sh) -c -s" -S["STRIP"]="mipsel-uclibc-strip -R .note -R .comment" -S["install_sh"]="${SHELL} /home/vicente/tomato/release/src/router/libexif/install-sh" -S["MAKEINFO"]="${SHELL} /home/vicente/tomato/release/src/router/libexif/missing --run makeinfo" -S["AUTOHEADER"]="${SHELL} /home/vicente/tomato/release/src/router/libexif/missing --run autoheader" -S["AUTOMAKE"]="${SHELL} /home/vicente/tomato/release/src/router/libexif/missing --run automake-1.11" -S["AUTOCONF"]="${SHELL} /home/vicente/tomato/release/src/router/libexif/missing --run autoconf" -S["ACLOCAL"]="${SHELL} /home/vicente/tomato/release/src/router/libexif/missing --run aclocal-1.11" -S["VERSION"]="0.6.19" -S["PACKAGE"]="libexif" -S["CYGPATH_W"]="echo" -S["am__isrc"]="" -S["INSTALL_DATA"]="${INSTALL} -m 644" -S["INSTALL_SCRIPT"]="${INSTALL}" -S["INSTALL_PROGRAM"]="${INSTALL}" -S["target_alias"]="" -S["host_alias"]="mipsel-linux" -S["build_alias"]="x86_64-linux-gnu" -S["LIBS"]=" -lm" -S["ECHO_T"]="" -S["ECHO_N"]="-n" -S["ECHO_C"]="" -S["DEFS"]="-DHAVE_CONFIG_H" -S["mandir"]="${datarootdir}/man" -S["localedir"]="$(datadir)/locale" -S["libdir"]="${exec_prefix}/lib" -S["psdir"]="${docdir}" -S["pdfdir"]="${docdir}" -S["dvidir"]="${docdir}" -S["htmldir"]="${docdir}" -S["infodir"]="${datarootdir}/info" -S["docdir"]="${prefix}/share/doc/libexif" -S["oldincludedir"]="/usr/include" -S["includedir"]="${prefix}/include" -S["localstatedir"]="${prefix}/var" -S["sharedstatedir"]="${prefix}/com" -S["sysconfdir"]="${prefix}/etc" -S["datadir"]="${datarootdir}" -S["datarootdir"]="${prefix}/share" -S["libexecdir"]="${exec_prefix}/libexec" -S["sbindir"]="${exec_prefix}/sbin" -S["bindir"]="${exec_prefix}/bin" -S["program_transform_name"]="s,x,x," -S["prefix"]="" -S["exec_prefix"]="${prefix}" -S["PACKAGE_URL"]="" -S["PACKAGE_BUGREPORT"]="libexif-devel@lists.sourceforge.net" -S["PACKAGE_STRING"]="EXIF library 0.6.19" -S["PACKAGE_VERSION"]="0.6.19" -S["PACKAGE_TARNAME"]="libexif" -S["PACKAGE_NAME"]="EXIF library" -S["PATH_SEPARATOR"]=":" -S["SHELL"]="/bin/sh" -_ACAWK -cat >>"$tmp/subs1.awk" <<_ACAWK && - for (key in S) S_is_set[key] = 1 - FS = "" - -} -{ - line = $ 0 - nfields = split(line, field, "@") - substed = 0 - len = length(field[1]) - for (i = 2; i < nfields; i++) { - key = field[i] - keylen = length(key) - if (S_is_set[key]) { - value = S[key] - line = substr(line, 1, len) "" value "" substr(line, len + keylen + 3) - len += length(value) + length(field[++i]) - substed = 1 - } else - len += 1 + keylen - } - - print line -} - -_ACAWK -if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then - sed "s/$ac_cr\$//; s/$ac_cr/$ac_cs_awk_cr/g" -else - cat -fi < "$tmp/subs1.awk" > "$tmp/subs.awk" \ - || as_fn_error "could not setup config files machinery" "$LINENO" 5 -fi # test -n "$CONFIG_FILES" - -# Set up the scripts for CONFIG_HEADERS section. -# No need to generate them if there are no CONFIG_HEADERS. -# This happens for instance with `./config.status Makefile'. -if test -n "$CONFIG_HEADERS"; then -cat >"$tmp/defines.awk" <<\_ACAWK || -BEGIN { -D["PACKAGE_NAME"]=" \"EXIF library\"" -D["PACKAGE_TARNAME"]=" \"libexif\"" -D["PACKAGE_VERSION"]=" \"0.6.19\"" -D["PACKAGE_STRING"]=" \"EXIF library 0.6.19\"" -D["PACKAGE_BUGREPORT"]=" \"libexif-devel@lists.sourceforge.net\"" -D["PACKAGE_URL"]=" \"\"" -D["PACKAGE"]=" \"libexif\"" -D["VERSION"]=" \"0.6.19\"" -D["STDC_HEADERS"]=" 1" -D["HAVE_SYS_TYPES_H"]=" 1" -D["HAVE_SYS_STAT_H"]=" 1" -D["HAVE_STDLIB_H"]=" 1" -D["HAVE_STRING_H"]=" 1" -D["HAVE_MEMORY_H"]=" 1" -D["HAVE_STRINGS_H"]=" 1" -D["HAVE_INTTYPES_H"]=" 1" -D["HAVE_STDINT_H"]=" 1" -D["HAVE_UNISTD_H"]=" 1" -D["HAVE_DLFCN_H"]=" 1" -D["LT_OBJDIR"]=" \".libs/\"" -D["HAVE_LOCALTIME_R"]=" 1" - for (key in D) D_is_set[key] = 1 - FS = "" -} -/^[\t ]*#[\t ]*(define|undef)[\t ]+[_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ][_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789]*([\t (]|$)/ { - line = $ 0 - split(line, arg, " ") - if (arg[1] == "#") { - defundef = arg[2] - mac1 = arg[3] - } else { - defundef = substr(arg[1], 2) - mac1 = arg[2] - } - split(mac1, mac2, "(") #) - macro = mac2[1] - prefix = substr(line, 1, index(line, defundef) - 1) - if (D_is_set[macro]) { - # Preserve the white space surrounding the "#". - print prefix "define", macro P[macro] D[macro] - next - } else { - # Replace #undef with comments. This is necessary, for example, - # in the case of _POSIX_SOURCE, which is predefined and required - # on some systems where configure will not decide to define it. - if (defundef == "undef") { - print "/*", prefix defundef, macro, "*/" - next - } - } -} -{ print } -_ACAWK - as_fn_error "could not setup config headers machinery" "$LINENO" 5 -fi # test -n "$CONFIG_HEADERS" - - -eval set X " :F $CONFIG_FILES :H $CONFIG_HEADERS :C $CONFIG_COMMANDS" -shift -for ac_tag -do - case $ac_tag in - :[FHLC]) ac_mode=$ac_tag; continue;; - esac - case $ac_mode$ac_tag in - :[FHL]*:*);; - :L* | :C*:*) as_fn_error "invalid tag \`$ac_tag'" "$LINENO" 5;; - :[FH]-) ac_tag=-:-;; - :[FH]*) ac_tag=$ac_tag:$ac_tag.in;; - esac - ac_save_IFS=$IFS - IFS=: - set x $ac_tag - IFS=$ac_save_IFS - shift - ac_file=$1 - shift - - case $ac_mode in - :L) ac_source=$1;; - :[FH]) - ac_file_inputs= - for ac_f - do - case $ac_f in - -) ac_f="$tmp/stdin";; - *) # Look for the file first in the build tree, then in the source tree - # (if the path is not absolute). The absolute path cannot be DOS-style, - # because $ac_f cannot contain `:'. - test -f "$ac_f" || - case $ac_f in - [\\/$]*) false;; - *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";; - esac || - as_fn_error "cannot find input file: \`$ac_f'" "$LINENO" 5;; - esac - case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac - as_fn_append ac_file_inputs " '$ac_f'" - done - - # Let's still pretend it is `configure' which instantiates (i.e., don't - # use $as_me), people would be surprised to read: - # /* config.h. Generated by config.status. */ - configure_input='Generated from '` - $as_echo "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g' - `' by configure.' - if test x"$ac_file" != x-; then - configure_input="$ac_file. $configure_input" - { $as_echo "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5 -$as_echo "$as_me: creating $ac_file" >&6;} - fi - # Neutralize special characters interpreted by sed in replacement strings. - case $configure_input in #( - *\&* | *\|* | *\\* ) - ac_sed_conf_input=`$as_echo "$configure_input" | - sed 's/[\\\\&|]/\\\\&/g'`;; #( - *) ac_sed_conf_input=$configure_input;; - esac - - case $ac_tag in - *:-:* | *:-) cat >"$tmp/stdin" \ - || as_fn_error "could not create $ac_file" "$LINENO" 5 ;; - esac - ;; - esac - - ac_dir=`$as_dirname -- "$ac_file" || -$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$ac_file" : 'X\(//\)[^/]' \| \ - X"$ac_file" : 'X\(//\)$' \| \ - X"$ac_file" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$ac_file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - as_dir="$ac_dir"; as_fn_mkdir_p - ac_builddir=. - -case "$ac_dir" in -.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; -*) - ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'` - # A ".." for each directory in $ac_dir_suffix. - ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'` - case $ac_top_builddir_sub in - "") ac_top_builddir_sub=. ac_top_build_prefix= ;; - *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; - esac ;; -esac -ac_abs_top_builddir=$ac_pwd -ac_abs_builddir=$ac_pwd$ac_dir_suffix -# for backward compatibility: -ac_top_builddir=$ac_top_build_prefix - -case $srcdir in - .) # We are building in place. - ac_srcdir=. - ac_top_srcdir=$ac_top_builddir_sub - ac_abs_top_srcdir=$ac_pwd ;; - [\\/]* | ?:[\\/]* ) # Absolute name. - ac_srcdir=$srcdir$ac_dir_suffix; - ac_top_srcdir=$srcdir - ac_abs_top_srcdir=$srcdir ;; - *) # Relative name. - ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix - ac_top_srcdir=$ac_top_build_prefix$srcdir - ac_abs_top_srcdir=$ac_pwd/$srcdir ;; -esac -ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix - - - case $ac_mode in - :F) - # - # CONFIG_FILE - # - - case $INSTALL in - [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;; - *) ac_INSTALL=$ac_top_build_prefix$INSTALL ;; - esac - ac_MKDIR_P=$MKDIR_P - case $MKDIR_P in - [\\/$]* | ?:[\\/]* ) ;; - */*) ac_MKDIR_P=$ac_top_build_prefix$MKDIR_P ;; - esac -# If the template does not know about datarootdir, expand it. -# FIXME: This hack should be removed a few years after 2.60. -ac_datarootdir_hack=; ac_datarootdir_seen= -ac_sed_dataroot=' -/datarootdir/ { - p - q -} -/@datadir@/p -/@docdir@/p -/@infodir@/p -/@localedir@/p -/@mandir@/p' -case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in -*datarootdir*) ac_datarootdir_seen=yes;; -*@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*) - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5 -$as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;} - ac_datarootdir_hack=' - s&@datadir@&${datarootdir}&g - s&@docdir@&${prefix}/share/doc/libexif&g - s&@infodir@&${datarootdir}/info&g - s&@localedir@&$(datadir)/locale&g - s&@mandir@&${datarootdir}/man&g - s&\${datarootdir}&${prefix}/share&g' ;; -esac -ac_sed_extra="/^[ ]*VPATH[ ]*=/{ -s/:*\$(srcdir):*/:/ -s/:*\${srcdir}:*/:/ -s/:*@srcdir@:*/:/ -s/^\([^=]*=[ ]*\):*/\1/ -s/:*$// -s/^[^=]*=[ ]*$// -} - -:t -/@[a-zA-Z_][a-zA-Z_0-9]*@/!b -s|@configure_input@|$ac_sed_conf_input|;t t -s&@top_builddir@&$ac_top_builddir_sub&;t t -s&@top_build_prefix@&$ac_top_build_prefix&;t t -s&@srcdir@&$ac_srcdir&;t t -s&@abs_srcdir@&$ac_abs_srcdir&;t t -s&@top_srcdir@&$ac_top_srcdir&;t t -s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t -s&@builddir@&$ac_builddir&;t t -s&@abs_builddir@&$ac_abs_builddir&;t t -s&@abs_top_builddir@&$ac_abs_top_builddir&;t t -s&@INSTALL@&$ac_INSTALL&;t t -s&@MKDIR_P@&$ac_MKDIR_P&;t t -$ac_datarootdir_hack -" -eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$tmp/subs.awk" >$tmp/out \ - || as_fn_error "could not create $ac_file" "$LINENO" 5 - -test -z "$ac_datarootdir_hack$ac_datarootdir_seen" && - { ac_out=`sed -n '/\${datarootdir}/p' "$tmp/out"`; test -n "$ac_out"; } && - { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' "$tmp/out"`; test -z "$ac_out"; } && - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir' -which seems to be undefined. Please make sure it is defined." >&5 -$as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir' -which seems to be undefined. Please make sure it is defined." >&2;} - - rm -f "$tmp/stdin" - case $ac_file in - -) cat "$tmp/out" && rm -f "$tmp/out";; - *) rm -f "$ac_file" && mv "$tmp/out" "$ac_file";; - esac \ - || as_fn_error "could not create $ac_file" "$LINENO" 5 - ;; - :H) - # - # CONFIG_HEADER - # - if test x"$ac_file" != x-; then - { - $as_echo "/* $configure_input */" \ - && eval '$AWK -f "$tmp/defines.awk"' "$ac_file_inputs" - } >"$tmp/config.h" \ - || as_fn_error "could not create $ac_file" "$LINENO" 5 - if diff "$ac_file" "$tmp/config.h" >/dev/null 2>&1; then - { $as_echo "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5 -$as_echo "$as_me: $ac_file is unchanged" >&6;} - else - rm -f "$ac_file" - mv "$tmp/config.h" "$ac_file" \ - || as_fn_error "could not create $ac_file" "$LINENO" 5 - fi - else - $as_echo "/* $configure_input */" \ - && eval '$AWK -f "$tmp/defines.awk"' "$ac_file_inputs" \ - || as_fn_error "could not create -" "$LINENO" 5 - fi -# Compute "$ac_file"'s index in $config_headers. -_am_arg="$ac_file" -_am_stamp_count=1 -for _am_header in $config_headers :; do - case $_am_header in - $_am_arg | $_am_arg:* ) - break ;; - * ) - _am_stamp_count=`expr $_am_stamp_count + 1` ;; - esac -done -echo "timestamp for $_am_arg" >`$as_dirname -- "$_am_arg" || -$as_expr X"$_am_arg" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$_am_arg" : 'X\(//\)[^/]' \| \ - X"$_am_arg" : 'X\(//\)$' \| \ - X"$_am_arg" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$_am_arg" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'`/stamp-h$_am_stamp_count - ;; - - :C) { $as_echo "$as_me:${as_lineno-$LINENO}: executing $ac_file commands" >&5 -$as_echo "$as_me: executing $ac_file commands" >&6;} - ;; - esac - - - case $ac_file$ac_mode in - "depfiles":C) test x"$AMDEP_TRUE" != x"" || { - # Autoconf 2.62 quotes --file arguments for eval, but not when files - # are listed without --file. Let's play safe and only enable the eval - # if we detect the quoting. - case $CONFIG_FILES in - *\'*) eval set x "$CONFIG_FILES" ;; - *) set x $CONFIG_FILES ;; - esac - shift - for mf - do - # Strip MF so we end up with the name of the file. - mf=`echo "$mf" | sed -e 's/:.*$//'` - # Check whether this is an Automake generated Makefile or not. - # We used to match only the files named `Makefile.in', but - # some people rename them; so instead we look at the file content. - # Grep'ing the first line is not enough: some people post-process - # each Makefile.in and add a new line on top of each file to say so. - # Grep'ing the whole file is not good either: AIX grep has a line - # limit of 2048, but all sed's we know have understand at least 4000. - if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then - dirpart=`$as_dirname -- "$mf" || -$as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$mf" : 'X\(//\)[^/]' \| \ - X"$mf" : 'X\(//\)$' \| \ - X"$mf" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$mf" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - else - continue - fi - # Extract the definition of DEPDIR, am__include, and am__quote - # from the Makefile without running `make'. - DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"` - test -z "$DEPDIR" && continue - am__include=`sed -n 's/^am__include = //p' < "$mf"` - test -z "am__include" && continue - am__quote=`sed -n 's/^am__quote = //p' < "$mf"` - # When using ansi2knr, U may be empty or an underscore; expand it - U=`sed -n 's/^U = //p' < "$mf"` - # Find all dependency output files, they are included files with - # $(DEPDIR) in their names. We invoke sed twice because it is the - # simplest approach to changing $(DEPDIR) to its actual value in the - # expansion. - for file in `sed -n " - s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \ - sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do - # Make sure the directory exists. - test -f "$dirpart/$file" && continue - fdir=`$as_dirname -- "$file" || -$as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$file" : 'X\(//\)[^/]' \| \ - X"$file" : 'X\(//\)$' \| \ - X"$file" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - as_dir=$dirpart/$fdir; as_fn_mkdir_p - # echo "creating $dirpart/$file" - echo '# dummy' > "$dirpart/$file" - done - done -} - ;; - "libtool":C) - - # See if we are running on zsh, and set the options which allow our - # commands through without removal of \ escapes. - if test -n "${ZSH_VERSION+set}" ; then - setopt NO_GLOB_SUBST - fi - - cfgfile="${ofile}T" - trap "$RM \"$cfgfile\"; exit 1" 1 2 15 - $RM "$cfgfile" - - cat <<_LT_EOF >> "$cfgfile" -#! $SHELL - -# `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services. -# Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $VERSION -# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`: -# NOTE: Changes made to this file will be lost: look at ltmain.sh. -# -# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, -# 2006, 2007, 2008 Free Software Foundation, Inc. -# Written by Gordon Matzigkeit, 1996 -# -# This file is part of GNU Libtool. -# -# GNU Libtool is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License as -# published by the Free Software Foundation; either version 2 of -# the License, or (at your option) any later version. -# -# As a special exception to the GNU General Public License, -# if you distribute this file as part of a program or library that -# is built using GNU Libtool, you may include this file under the -# same distribution terms that you use for the rest of that program. -# -# GNU Libtool is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GNU Libtool; see the file COPYING. If not, a copy -# can be downloaded from http://www.gnu.org/licenses/gpl.html, or -# obtained by writing to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - - -# The names of the tagged configurations supported by this script. -available_tags="" - -# ### BEGIN LIBTOOL CONFIG - -# Which release of libtool.m4 was used? -macro_version=$macro_version -macro_revision=$macro_revision - -# Whether or not to build shared libraries. -build_libtool_libs=$enable_shared - -# Whether or not to build static libraries. -build_old_libs=$enable_static - -# What type of objects to build. -pic_mode=$pic_mode - -# Whether or not to optimize for fast installation. -fast_install=$enable_fast_install - -# The host system. -host_alias=$host_alias -host=$host -host_os=$host_os - -# The build system. -build_alias=$build_alias -build=$build -build_os=$build_os - -# A sed program that does not truncate output. -SED=$lt_SED - -# Sed that helps us avoid accidentally triggering echo(1) options like -n. -Xsed="\$SED -e 1s/^X//" - -# A grep program that handles long lines. -GREP=$lt_GREP - -# An ERE matcher. -EGREP=$lt_EGREP - -# A literal string matcher. -FGREP=$lt_FGREP - -# A BSD- or MS-compatible name lister. -NM=$lt_NM - -# Whether we need soft or hard links. -LN_S=$lt_LN_S - -# What is the maximum length of a command? -max_cmd_len=$max_cmd_len - -# Object file suffix (normally "o"). -objext=$ac_objext - -# Executable file suffix (normally ""). -exeext=$exeext - -# whether the shell understands "unset". -lt_unset=$lt_unset - -# turn spaces into newlines. -SP2NL=$lt_lt_SP2NL - -# turn newlines into spaces. -NL2SP=$lt_lt_NL2SP - -# How to create reloadable object files. -reload_flag=$lt_reload_flag -reload_cmds=$lt_reload_cmds - -# An object symbol dumper. -OBJDUMP=$lt_OBJDUMP - -# Method to check whether dependent libraries are shared objects. -deplibs_check_method=$lt_deplibs_check_method - -# Command to use when deplibs_check_method == "file_magic". -file_magic_cmd=$lt_file_magic_cmd - -# The archiver. -AR=$lt_AR -AR_FLAGS=$lt_AR_FLAGS - -# A symbol stripping program. -STRIP=$lt_STRIP - -# Commands used to install an old-style archive. -RANLIB=$lt_RANLIB -old_postinstall_cmds=$lt_old_postinstall_cmds -old_postuninstall_cmds=$lt_old_postuninstall_cmds - -# A C compiler. -LTCC=$lt_CC - -# LTCC compiler flags. -LTCFLAGS=$lt_CFLAGS - -# Take the output of nm and produce a listing of raw symbols and C names. -global_symbol_pipe=$lt_lt_cv_sys_global_symbol_pipe - -# Transform the output of nm in a proper C declaration. -global_symbol_to_cdecl=$lt_lt_cv_sys_global_symbol_to_cdecl - -# Transform the output of nm in a C name address pair. -global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address - -# Transform the output of nm in a C name address pair when lib prefix is needed. -global_symbol_to_c_name_address_lib_prefix=$lt_lt_cv_sys_global_symbol_to_c_name_address_lib_prefix - -# The name of the directory that contains temporary libtool files. -objdir=$objdir - -# Shell to use when invoking shell scripts. -SHELL=$lt_SHELL - -# An echo program that does not interpret backslashes. -ECHO=$lt_ECHO - -# Used to examine libraries when file_magic_cmd begins with "file". -MAGIC_CMD=$MAGIC_CMD - -# Must we lock files when doing compilation? -need_locks=$lt_need_locks - -# Tool to manipulate archived DWARF debug symbol files on Mac OS X. -DSYMUTIL=$lt_DSYMUTIL - -# Tool to change global to local symbols on Mac OS X. -NMEDIT=$lt_NMEDIT - -# Tool to manipulate fat objects and archives on Mac OS X. -LIPO=$lt_LIPO - -# ldd/readelf like tool for Mach-O binaries on Mac OS X. -OTOOL=$lt_OTOOL - -# ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4. -OTOOL64=$lt_OTOOL64 - -# Old archive suffix (normally "a"). -libext=$libext - -# Shared library suffix (normally ".so"). -shrext_cmds=$lt_shrext_cmds - -# The commands to extract the exported symbol list from a shared archive. -extract_expsyms_cmds=$lt_extract_expsyms_cmds - -# Variables whose values should be saved in libtool wrapper scripts and -# restored at link time. -variables_saved_for_relink=$lt_variables_saved_for_relink - -# Do we need the "lib" prefix for modules? -need_lib_prefix=$need_lib_prefix - -# Do we need a version for libraries? -need_version=$need_version - -# Library versioning type. -version_type=$version_type - -# Shared library runtime path variable. -runpath_var=$runpath_var - -# Shared library path variable. -shlibpath_var=$shlibpath_var - -# Is shlibpath searched before the hard-coded library search path? -shlibpath_overrides_runpath=$shlibpath_overrides_runpath - -# Format of library name prefix. -libname_spec=$lt_libname_spec - -# List of archive names. First name is the real one, the rest are links. -# The last name is the one that the linker finds with -lNAME -library_names_spec=$lt_library_names_spec - -# The coded name of the library, if different from the real name. -soname_spec=$lt_soname_spec - -# Command to use after installation of a shared archive. -postinstall_cmds=$lt_postinstall_cmds - -# Command to use after uninstallation of a shared archive. -postuninstall_cmds=$lt_postuninstall_cmds - -# Commands used to finish a libtool library installation in a directory. -finish_cmds=$lt_finish_cmds - -# As "finish_cmds", except a single script fragment to be evaled but -# not shown. -finish_eval=$lt_finish_eval - -# Whether we should hardcode library paths into libraries. -hardcode_into_libs=$hardcode_into_libs - -# Compile-time system search path for libraries. -sys_lib_search_path_spec=$lt_sys_lib_search_path_spec - -# Run-time system search path for libraries. -sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec - -# Whether dlopen is supported. -dlopen_support=$enable_dlopen - -# Whether dlopen of programs is supported. -dlopen_self=$enable_dlopen_self - -# Whether dlopen of statically linked programs is supported. -dlopen_self_static=$enable_dlopen_self_static - -# Commands to strip libraries. -old_striplib=$lt_old_striplib -striplib=$lt_striplib - - -# The linker used to build libraries. -LD=$lt_LD - -# Commands used to build an old-style archive. -old_archive_cmds=$lt_old_archive_cmds - -# A language specific compiler. -CC=$lt_compiler - -# Is the compiler the GNU compiler? -with_gcc=$GCC - -# Compiler flag to turn off builtin functions. -no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag - -# How to pass a linker flag through the compiler. -wl=$lt_lt_prog_compiler_wl - -# Additional compiler flags for building library objects. -pic_flag=$lt_lt_prog_compiler_pic - -# Compiler flag to prevent dynamic linking. -link_static_flag=$lt_lt_prog_compiler_static - -# Does compiler simultaneously support -c and -o options? -compiler_c_o=$lt_lt_cv_prog_compiler_c_o - -# Whether or not to add -lc for building shared libraries. -build_libtool_need_lc=$archive_cmds_need_lc - -# Whether or not to disallow shared libs when runtime libs are static. -allow_libtool_libs_with_static_runtimes=$enable_shared_with_static_runtimes - -# Compiler flag to allow reflexive dlopens. -export_dynamic_flag_spec=$lt_export_dynamic_flag_spec - -# Compiler flag to generate shared objects directly from archives. -whole_archive_flag_spec=$lt_whole_archive_flag_spec - -# Whether the compiler copes with passing no objects directly. -compiler_needs_object=$lt_compiler_needs_object - -# Create an old-style archive from a shared archive. -old_archive_from_new_cmds=$lt_old_archive_from_new_cmds - -# Create a temporary old-style archive to link instead of a shared archive. -old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds - -# Commands used to build a shared archive. -archive_cmds=$lt_archive_cmds -archive_expsym_cmds=$lt_archive_expsym_cmds - -# Commands used to build a loadable module if different from building -# a shared archive. -module_cmds=$lt_module_cmds -module_expsym_cmds=$lt_module_expsym_cmds - -# Whether we are building with GNU ld or not. -with_gnu_ld=$lt_with_gnu_ld - -# Flag that allows shared libraries with undefined symbols to be built. -allow_undefined_flag=$lt_allow_undefined_flag - -# Flag that enforces no undefined symbols. -no_undefined_flag=$lt_no_undefined_flag - -# Flag to hardcode \$libdir into a binary during linking. -# This must work even if \$libdir does not exist -hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec - -# If ld is used when linking, flag to hardcode \$libdir into a binary -# during linking. This must work even if \$libdir does not exist. -hardcode_libdir_flag_spec_ld=$lt_hardcode_libdir_flag_spec_ld - -# Whether we need a single "-rpath" flag with a separated argument. -hardcode_libdir_separator=$lt_hardcode_libdir_separator - -# Set to "yes" if using DIR/libNAME\${shared_ext} during linking hardcodes -# DIR into the resulting binary. -hardcode_direct=$hardcode_direct - -# Set to "yes" if using DIR/libNAME\${shared_ext} during linking hardcodes -# DIR into the resulting binary and the resulting library dependency is -# "absolute",i.e impossible to change by setting \${shlibpath_var} if the -# library is relocated. -hardcode_direct_absolute=$hardcode_direct_absolute - -# Set to "yes" if using the -LDIR flag during linking hardcodes DIR -# into the resulting binary. -hardcode_minus_L=$hardcode_minus_L - -# Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR -# into the resulting binary. -hardcode_shlibpath_var=$hardcode_shlibpath_var - -# Set to "yes" if building a shared library automatically hardcodes DIR -# into the library and all subsequent libraries and executables linked -# against it. -hardcode_automatic=$hardcode_automatic - -# Set to yes if linker adds runtime paths of dependent libraries -# to runtime path list. -inherit_rpath=$inherit_rpath - -# Whether libtool must link a program against all its dependency libraries. -link_all_deplibs=$link_all_deplibs - -# Fix the shell variable \$srcfile for the compiler. -fix_srcfile_path=$lt_fix_srcfile_path - -# Set to "yes" if exported symbols are required. -always_export_symbols=$always_export_symbols - -# The commands to list exported symbols. -export_symbols_cmds=$lt_export_symbols_cmds - -# Symbols that should not be listed in the preloaded symbols. -exclude_expsyms=$lt_exclude_expsyms - -# Symbols that must always be exported. -include_expsyms=$lt_include_expsyms - -# Commands necessary for linking programs (against libraries) with templates. -prelink_cmds=$lt_prelink_cmds - -# Specify filename containing input files. -file_list_spec=$lt_file_list_spec - -# How to hardcode a shared library path into an executable. -hardcode_action=$hardcode_action - -# ### END LIBTOOL CONFIG - -_LT_EOF - - case $host_os in - aix3*) - cat <<\_LT_EOF >> "$cfgfile" -# AIX sometimes has problems with the GCC collect2 program. For some -# reason, if we set the COLLECT_NAMES environment variable, the problems -# vanish in a puff of smoke. -if test "X${COLLECT_NAMES+set}" != Xset; then - COLLECT_NAMES= - export COLLECT_NAMES -fi -_LT_EOF - ;; - esac - - -ltmain="$ac_aux_dir/ltmain.sh" - - - # We use sed instead of cat because bash on DJGPP gets confused if - # if finds mixed CR/LF and LF-only lines. Since sed operates in - # text mode, it properly converts lines to CR/LF. This bash problem - # is reportedly fixed, but why not run on old versions too? - sed '/^# Generated shell functions inserted here/q' "$ltmain" >> "$cfgfile" \ - || (rm -f "$cfgfile"; exit 1) - - case $xsi_shell in - yes) - cat << \_LT_EOF >> "$cfgfile" - -# func_dirname file append nondir_replacement -# Compute the dirname of FILE. If nonempty, add APPEND to the result, -# otherwise set result to NONDIR_REPLACEMENT. -func_dirname () -{ - case ${1} in - */*) func_dirname_result="${1%/*}${2}" ;; - * ) func_dirname_result="${3}" ;; - esac -} - -# func_basename file -func_basename () -{ - func_basename_result="${1##*/}" -} - -# func_dirname_and_basename file append nondir_replacement -# perform func_basename and func_dirname in a single function -# call: -# dirname: Compute the dirname of FILE. If nonempty, -# add APPEND to the result, otherwise set result -# to NONDIR_REPLACEMENT. -# value returned in "$func_dirname_result" -# basename: Compute filename of FILE. -# value retuned in "$func_basename_result" -# Implementation must be kept synchronized with func_dirname -# and func_basename. For efficiency, we do not delegate to -# those functions but instead duplicate the functionality here. -func_dirname_and_basename () -{ - case ${1} in - */*) func_dirname_result="${1%/*}${2}" ;; - * ) func_dirname_result="${3}" ;; - esac - func_basename_result="${1##*/}" -} - -# func_stripname prefix suffix name -# strip PREFIX and SUFFIX off of NAME. -# PREFIX and SUFFIX must not contain globbing or regex special -# characters, hashes, percent signs, but SUFFIX may contain a leading -# dot (in which case that matches only a dot). -func_stripname () -{ - # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are - # positional parameters, so assign one to ordinary parameter first. - func_stripname_result=${3} - func_stripname_result=${func_stripname_result#"${1}"} - func_stripname_result=${func_stripname_result%"${2}"} -} - -# func_opt_split -func_opt_split () -{ - func_opt_split_opt=${1%%=*} - func_opt_split_arg=${1#*=} -} - -# func_lo2o object -func_lo2o () -{ - case ${1} in - *.lo) func_lo2o_result=${1%.lo}.${objext} ;; - *) func_lo2o_result=${1} ;; - esac -} - -# func_xform libobj-or-source -func_xform () -{ - func_xform_result=${1%.*}.lo -} - -# func_arith arithmetic-term... -func_arith () -{ - func_arith_result=$(( $* )) -} - -# func_len string -# STRING may not start with a hyphen. -func_len () -{ - func_len_result=${#1} -} - -_LT_EOF - ;; - *) # Bourne compatible functions. - cat << \_LT_EOF >> "$cfgfile" - -# func_dirname file append nondir_replacement -# Compute the dirname of FILE. If nonempty, add APPEND to the result, -# otherwise set result to NONDIR_REPLACEMENT. -func_dirname () -{ - # Extract subdirectory from the argument. - func_dirname_result=`$ECHO "X${1}" | $Xsed -e "$dirname"` - if test "X$func_dirname_result" = "X${1}"; then - func_dirname_result="${3}" - else - func_dirname_result="$func_dirname_result${2}" - fi -} - -# func_basename file -func_basename () -{ - func_basename_result=`$ECHO "X${1}" | $Xsed -e "$basename"` -} - - -# func_stripname prefix suffix name -# strip PREFIX and SUFFIX off of NAME. -# PREFIX and SUFFIX must not contain globbing or regex special -# characters, hashes, percent signs, but SUFFIX may contain a leading -# dot (in which case that matches only a dot). -# func_strip_suffix prefix name -func_stripname () -{ - case ${2} in - .*) func_stripname_result=`$ECHO "X${3}" \ - | $Xsed -e "s%^${1}%%" -e "s%\\\\${2}\$%%"`;; - *) func_stripname_result=`$ECHO "X${3}" \ - | $Xsed -e "s%^${1}%%" -e "s%${2}\$%%"`;; - esac -} - -# sed scripts: -my_sed_long_opt='1s/^\(-[^=]*\)=.*/\1/;q' -my_sed_long_arg='1s/^-[^=]*=//' - -# func_opt_split -func_opt_split () -{ - func_opt_split_opt=`$ECHO "X${1}" | $Xsed -e "$my_sed_long_opt"` - func_opt_split_arg=`$ECHO "X${1}" | $Xsed -e "$my_sed_long_arg"` -} - -# func_lo2o object -func_lo2o () -{ - func_lo2o_result=`$ECHO "X${1}" | $Xsed -e "$lo2o"` -} - -# func_xform libobj-or-source -func_xform () -{ - func_xform_result=`$ECHO "X${1}" | $Xsed -e 's/\.[^.]*$/.lo/'` -} - -# func_arith arithmetic-term... -func_arith () -{ - func_arith_result=`expr "$@"` -} - -# func_len string -# STRING may not start with a hyphen. -func_len () -{ - func_len_result=`expr "$1" : ".*" 2>/dev/null || echo $max_cmd_len` -} - -_LT_EOF -esac - -case $lt_shell_append in - yes) - cat << \_LT_EOF >> "$cfgfile" - -# func_append var value -# Append VALUE to the end of shell variable VAR. -func_append () -{ - eval "$1+=\$2" -} -_LT_EOF - ;; - *) - cat << \_LT_EOF >> "$cfgfile" - -# func_append var value -# Append VALUE to the end of shell variable VAR. -func_append () -{ - eval "$1=\$$1\$2" -} - -_LT_EOF - ;; - esac - - - sed -n '/^# Generated shell functions inserted here/,$p' "$ltmain" >> "$cfgfile" \ - || (rm -f "$cfgfile"; exit 1) - - mv -f "$cfgfile" "$ofile" || - (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile") - chmod +x "$ofile" - - ;; - "default-1":C) - for ac_file in $CONFIG_FILES; do - # Support "outfile[:infile[:infile...]]" - case "$ac_file" in - *:*) ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;; - esac - # PO directories have a Makefile.in generated from Makefile.in.in. - case "$ac_file" in */Makefile.in) - # Adjust a relative srcdir. - ac_dir=`echo "$ac_file"|sed 's%/[^/][^/]*$%%'` - ac_dir_suffix="/`echo "$ac_dir"|sed 's%^\./%%'`" - ac_dots=`echo "$ac_dir_suffix"|sed 's%/[^/]*%../%g'` - # In autoconf-2.13 it is called $ac_given_srcdir. - # In autoconf-2.50 it is called $srcdir. - test -n "$ac_given_srcdir" || ac_given_srcdir="$srcdir" - case "$ac_given_srcdir" in - .) top_srcdir=`echo $ac_dots|sed 's%/$%%'` ;; - /*) top_srcdir="$ac_given_srcdir" ;; - *) top_srcdir="$ac_dots$ac_given_srcdir" ;; - esac - if test -f "$ac_given_srcdir/$ac_dir/POTFILES.in"; then - rm -f "$ac_dir/POTFILES" - test -n "$as_me" && echo "$as_me: creating $ac_dir/POTFILES" || echo "creating $ac_dir/POTFILES" - cat "$ac_given_srcdir/$ac_dir/POTFILES.in" | sed -e "/^#/d" -e "/^[ ]*\$/d" -e "s,.*, $top_srcdir/& \\\\," | sed -e "\$s/\(.*\) \\\\/\1/" > "$ac_dir/POTFILES" - POMAKEFILEDEPS="POTFILES.in" - # ALL_LINGUAS, POFILES, UPDATEPOFILES, DUMMYPOFILES, GMOFILES depend - # on $ac_dir but don't depend on user-specified configuration - # parameters. - if test -f "$ac_given_srcdir/$ac_dir/LINGUAS"; then - # The LINGUAS file contains the set of available languages. - if test -n "$OBSOLETE_ALL_LINGUAS"; then - test -n "$as_me" && echo "$as_me: setting ALL_LINGUAS in configure.in is obsolete" || echo "setting ALL_LINGUAS in configure.in is obsolete" - fi - ALL_LINGUAS_=`sed -e "/^#/d" "$ac_given_srcdir/$ac_dir/LINGUAS"` - # Hide the ALL_LINGUAS assigment from automake. - eval 'ALL_LINGUAS''=$ALL_LINGUAS_' - POMAKEFILEDEPS="$POMAKEFILEDEPS LINGUAS" - else - # The set of available languages was given in configure.in. - eval 'ALL_LINGUAS''=$OBSOLETE_ALL_LINGUAS' - fi - # Compute POFILES - # as $(foreach lang, $(ALL_LINGUAS), $(srcdir)/$(lang).po) - # Compute UPDATEPOFILES - # as $(foreach lang, $(ALL_LINGUAS), $(lang).po-update) - # Compute DUMMYPOFILES - # as $(foreach lang, $(ALL_LINGUAS), $(lang).nop) - # Compute GMOFILES - # as $(foreach lang, $(ALL_LINGUAS), $(srcdir)/$(lang).gmo) - case "$ac_given_srcdir" in - .) srcdirpre= ;; - *) srcdirpre='$(srcdir)/' ;; - esac - POFILES= - UPDATEPOFILES= - DUMMYPOFILES= - GMOFILES= - for lang in $ALL_LINGUAS; do - POFILES="$POFILES $srcdirpre$lang.po" - UPDATEPOFILES="$UPDATEPOFILES $lang.po-update" - DUMMYPOFILES="$DUMMYPOFILES $lang.nop" - GMOFILES="$GMOFILES $srcdirpre$lang.gmo" - done - # CATALOGS depends on both $ac_dir and the user's LINGUAS - # environment variable. - INST_LINGUAS= - if test -n "$ALL_LINGUAS"; then - for presentlang in $ALL_LINGUAS; do - useit=no - if test "%UNSET%" != "$LINGUAS"; then - desiredlanguages="$LINGUAS" - else - desiredlanguages="$ALL_LINGUAS" - fi - for desiredlang in $desiredlanguages; do - # Use the presentlang catalog if desiredlang is - # a. equal to presentlang, or - # b. a variant of presentlang (because in this case, - # presentlang can be used as a fallback for messages - # which are not translated in the desiredlang catalog). - case "$desiredlang" in - "$presentlang"*) useit=yes;; - esac - done - if test $useit = yes; then - INST_LINGUAS="$INST_LINGUAS $presentlang" - fi - done - fi - CATALOGS= - if test -n "$INST_LINGUAS"; then - for lang in $INST_LINGUAS; do - CATALOGS="$CATALOGS $lang.gmo" - done - fi - test -n "$as_me" && echo "$as_me: creating $ac_dir/Makefile" || echo "creating $ac_dir/Makefile" - sed -e "/^POTFILES =/r $ac_dir/POTFILES" -e "/^# Makevars/r $ac_given_srcdir/$ac_dir/Makevars" -e "s|@POFILES@|$POFILES|g" -e "s|@UPDATEPOFILES@|$UPDATEPOFILES|g" -e "s|@DUMMYPOFILES@|$DUMMYPOFILES|g" -e "s|@GMOFILES@|$GMOFILES|g" -e "s|@CATALOGS@|$CATALOGS|g" -e "s|@POMAKEFILEDEPS@|$POMAKEFILEDEPS|g" "$ac_dir/Makefile.in" > "$ac_dir/Makefile" - for f in "$ac_given_srcdir/$ac_dir"/Rules-*; do - if test -f "$f"; then - case "$f" in - *.orig | *.bak | *~) ;; - *) cat "$f" >> "$ac_dir/Makefile" ;; - esac - fi - done - fi - ;; - esac - done ;; - - esac -done # for ac_tag - - -as_fn_exit 0 diff --git a/release/src/router/libexif/contrib/Makefile b/release/src/router/libexif/contrib/Makefile index 27f09e83e4..becff47993 100644 --- a/release/src/router/libexif/contrib/Makefile +++ b/release/src/router/libexif/contrib/Makefile @@ -100,14 +100,14 @@ am__relativize = \ dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \ done; \ reldir="$$dir2" -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/libexif/missing --run aclocal-1.11 -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/libexif/missing --run tar +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/libexif/missing --run aclocal-1.11 +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/libexif/missing --run tar AM_CPPFLAGS = -DGETTEXT_PACKAGE=\"libexif-12\" -DLOCALEDIR=\"$(datadir)/locale\" -I$(top_srcdir) -I$(top_builddir) -g -Wall -Wmissing-declarations -Wmissing-prototypes AM_LDFLAGS = -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections -g -Wall AR = mipsel-uclibc-ar -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/libexif/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/libexif/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/libexif/missing --run automake-1.11 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/libexif/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/libexif/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/libexif/missing --run automake-1.11 AWK = gawk CC = mipsel-uclibc-gcc CCDEPMODE = depmode=gcc3 @@ -158,7 +158,7 @@ LTLIBICONV = LTLIBINTL = LTLIBOBJS = MAINT = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/libexif/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/libexif/missing --run makeinfo MKDIR_P = /bin/mkdir -p MKINSTALLDIRS = $(top_builddir)/./mkinstalldirs MSGFMT = /usr/bin/msgfmt @@ -186,10 +186,10 @@ STRIP = mipsel-uclibc-strip -R .note -R .comment USE_NLS = no VERSION = 0.6.19 XGETTEXT = /usr/bin/xgettext -abs_builddir = /home/vicente/tomato/release/src/router/libexif/contrib -abs_srcdir = /home/vicente/tomato/release/src/router/libexif/contrib -abs_top_builddir = /home/vicente/tomato/release/src/router/libexif -abs_top_srcdir = /home/vicente/tomato/release/src/router/libexif +abs_builddir = /home/vicente/repos/tomato/release/src/router/libexif/contrib +abs_srcdir = /home/vicente/repos/tomato/release/src/router/libexif/contrib +abs_top_builddir = /home/vicente/repos/tomato/release/src/router/libexif +abs_top_srcdir = /home/vicente/repos/tomato/release/src/router/libexif ac_ct_CC = ac_ct_DUMPBIN = am__include = include @@ -217,7 +217,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = ${SHELL} /home/vicente/tomato/release/src/router/libexif/install-sh +install_sh = ${SHELL} /home/vicente/repos/tomato/release/src/router/libexif/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = $(datadir)/locale diff --git a/release/src/router/libexif/contrib/examples/Makefile b/release/src/router/libexif/contrib/examples/Makefile index 059537ed75..8bbdb39ace 100644 --- a/release/src/router/libexif/contrib/examples/Makefile +++ b/release/src/router/libexif/contrib/examples/Makefile @@ -89,14 +89,14 @@ DIST_SOURCES = photographer.c thumbnail.c write-exif.c ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/libexif/missing --run aclocal-1.11 -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/libexif/missing --run tar +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/libexif/missing --run aclocal-1.11 +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/libexif/missing --run tar AM_CPPFLAGS = -DGETTEXT_PACKAGE=\"libexif-12\" -DLOCALEDIR=\"$(datadir)/locale\" -I$(top_srcdir) -I$(top_builddir) -g -Wall -Wmissing-declarations -Wmissing-prototypes AM_LDFLAGS = -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections -g -Wall AR = mipsel-uclibc-ar -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/libexif/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/libexif/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/libexif/missing --run automake-1.11 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/libexif/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/libexif/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/libexif/missing --run automake-1.11 AWK = gawk CC = mipsel-uclibc-gcc CCDEPMODE = depmode=gcc3 @@ -147,7 +147,7 @@ LTLIBICONV = LTLIBINTL = LTLIBOBJS = MAINT = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/libexif/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/libexif/missing --run makeinfo MKDIR_P = /bin/mkdir -p MKINSTALLDIRS = $(top_builddir)/./mkinstalldirs MSGFMT = /usr/bin/msgfmt @@ -175,10 +175,10 @@ STRIP = mipsel-uclibc-strip -R .note -R .comment USE_NLS = no VERSION = 0.6.19 XGETTEXT = /usr/bin/xgettext -abs_builddir = /home/vicente/tomato/release/src/router/libexif/contrib/examples -abs_srcdir = /home/vicente/tomato/release/src/router/libexif/contrib/examples -abs_top_builddir = /home/vicente/tomato/release/src/router/libexif -abs_top_srcdir = /home/vicente/tomato/release/src/router/libexif +abs_builddir = /home/vicente/repos/tomato/release/src/router/libexif/contrib/examples +abs_srcdir = /home/vicente/repos/tomato/release/src/router/libexif/contrib/examples +abs_top_builddir = /home/vicente/repos/tomato/release/src/router/libexif +abs_top_srcdir = /home/vicente/repos/tomato/release/src/router/libexif ac_ct_CC = ac_ct_DUMPBIN = am__include = include @@ -206,7 +206,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = ${SHELL} /home/vicente/tomato/release/src/router/libexif/install-sh +install_sh = ${SHELL} /home/vicente/repos/tomato/release/src/router/libexif/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = $(datadir)/locale diff --git a/release/src/router/libexif/doc/Makefile b/release/src/router/libexif/doc/Makefile index 8122c9f16d..6e6de3ef8e 100644 --- a/release/src/router/libexif/doc/Makefile +++ b/release/src/router/libexif/doc/Makefile @@ -100,14 +100,14 @@ am__base_list = \ am__installdirs = "$(DESTDIR)$(docdir)" DATA = $(doc_DATA) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/libexif/missing --run aclocal-1.11 -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/libexif/missing --run tar +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/libexif/missing --run aclocal-1.11 +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/libexif/missing --run tar AM_CPPFLAGS = -DGETTEXT_PACKAGE=\"libexif-12\" -DLOCALEDIR=\"$(datadir)/locale\" -I$(top_srcdir) -I$(top_builddir) -g -Wall -Wmissing-declarations -Wmissing-prototypes AM_LDFLAGS = -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections -g -Wall AR = mipsel-uclibc-ar -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/libexif/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/libexif/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/libexif/missing --run automake-1.11 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/libexif/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/libexif/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/libexif/missing --run automake-1.11 AWK = gawk CC = mipsel-uclibc-gcc CCDEPMODE = depmode=gcc3 @@ -158,7 +158,7 @@ LTLIBICONV = LTLIBINTL = LTLIBOBJS = MAINT = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/libexif/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/libexif/missing --run makeinfo MKDIR_P = /bin/mkdir -p MKINSTALLDIRS = $(top_builddir)/./mkinstalldirs MSGFMT = /usr/bin/msgfmt @@ -186,10 +186,10 @@ STRIP = mipsel-uclibc-strip -R .note -R .comment USE_NLS = no VERSION = 0.6.19 XGETTEXT = /usr/bin/xgettext -abs_builddir = /home/vicente/tomato/release/src/router/libexif/doc -abs_srcdir = /home/vicente/tomato/release/src/router/libexif/doc -abs_top_builddir = /home/vicente/tomato/release/src/router/libexif -abs_top_srcdir = /home/vicente/tomato/release/src/router/libexif +abs_builddir = /home/vicente/repos/tomato/release/src/router/libexif/doc +abs_srcdir = /home/vicente/repos/tomato/release/src/router/libexif/doc +abs_top_builddir = /home/vicente/repos/tomato/release/src/router/libexif +abs_top_srcdir = /home/vicente/repos/tomato/release/src/router/libexif ac_ct_CC = ac_ct_DUMPBIN = am__include = include @@ -217,7 +217,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = ${SHELL} /home/vicente/tomato/release/src/router/libexif/install-sh +install_sh = ${SHELL} /home/vicente/repos/tomato/release/src/router/libexif/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = $(datadir)/locale diff --git a/release/src/router/libexif/libexif/Makefile b/release/src/router/libexif/libexif/Makefile index 1a127c971a..505c3e81de 100644 --- a/release/src/router/libexif/libexif/Makefile +++ b/release/src/router/libexif/libexif/Makefile @@ -134,14 +134,14 @@ HEADERS = $(libexifinclude_HEADERS) ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/libexif/missing --run aclocal-1.11 -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/libexif/missing --run tar +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/libexif/missing --run aclocal-1.11 +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/libexif/missing --run tar AM_CPPFLAGS = -DGETTEXT_PACKAGE=\"libexif-12\" -DLOCALEDIR=\"$(datadir)/locale\" -I$(top_srcdir) -I$(top_builddir) -g -Wall -Wmissing-declarations -Wmissing-prototypes AM_LDFLAGS = -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections -g -Wall AR = mipsel-uclibc-ar -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/libexif/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/libexif/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/libexif/missing --run automake-1.11 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/libexif/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/libexif/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/libexif/missing --run automake-1.11 AWK = gawk CC = mipsel-uclibc-gcc CCDEPMODE = depmode=gcc3 @@ -192,7 +192,7 @@ LTLIBICONV = LTLIBINTL = LTLIBOBJS = MAINT = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/libexif/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/libexif/missing --run makeinfo MKDIR_P = /bin/mkdir -p MKINSTALLDIRS = $(top_builddir)/./mkinstalldirs MSGFMT = /usr/bin/msgfmt @@ -220,10 +220,10 @@ STRIP = mipsel-uclibc-strip -R .note -R .comment USE_NLS = no VERSION = 0.6.19 XGETTEXT = /usr/bin/xgettext -abs_builddir = /home/vicente/tomato/release/src/router/libexif/libexif -abs_srcdir = /home/vicente/tomato/release/src/router/libexif/libexif -abs_top_builddir = /home/vicente/tomato/release/src/router/libexif -abs_top_srcdir = /home/vicente/tomato/release/src/router/libexif +abs_builddir = /home/vicente/repos/tomato/release/src/router/libexif/libexif +abs_srcdir = /home/vicente/repos/tomato/release/src/router/libexif/libexif +abs_top_builddir = /home/vicente/repos/tomato/release/src/router/libexif +abs_top_srcdir = /home/vicente/repos/tomato/release/src/router/libexif ac_ct_CC = ac_ct_DUMPBIN = am__include = include @@ -251,7 +251,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = ${SHELL} /home/vicente/tomato/release/src/router/libexif/install-sh +install_sh = ${SHELL} /home/vicente/repos/tomato/release/src/router/libexif/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = $(datadir)/locale diff --git a/release/src/router/libexif/m4m/Makefile b/release/src/router/libexif/m4m/Makefile index 9c742fbb18..fd0ef9f1b3 100644 --- a/release/src/router/libexif/m4m/Makefile +++ b/release/src/router/libexif/m4m/Makefile @@ -60,14 +60,14 @@ CONFIG_CLEAN_VPATH_FILES = SOURCES = DIST_SOURCES = DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/libexif/missing --run aclocal-1.11 -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/libexif/missing --run tar +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/libexif/missing --run aclocal-1.11 +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/libexif/missing --run tar AM_CPPFLAGS = -DGETTEXT_PACKAGE=\"libexif-12\" -DLOCALEDIR=\"$(datadir)/locale\" -I$(top_srcdir) -I$(top_builddir) -g -Wall -Wmissing-declarations -Wmissing-prototypes AM_LDFLAGS = -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections -g -Wall AR = mipsel-uclibc-ar -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/libexif/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/libexif/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/libexif/missing --run automake-1.11 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/libexif/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/libexif/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/libexif/missing --run automake-1.11 AWK = gawk CC = mipsel-uclibc-gcc CCDEPMODE = depmode=gcc3 @@ -118,7 +118,7 @@ LTLIBICONV = LTLIBINTL = LTLIBOBJS = MAINT = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/libexif/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/libexif/missing --run makeinfo MKDIR_P = /bin/mkdir -p MKINSTALLDIRS = $(top_builddir)/./mkinstalldirs MSGFMT = /usr/bin/msgfmt @@ -146,10 +146,10 @@ STRIP = mipsel-uclibc-strip -R .note -R .comment USE_NLS = no VERSION = 0.6.19 XGETTEXT = /usr/bin/xgettext -abs_builddir = /home/vicente/tomato/release/src/router/libexif/m4m -abs_srcdir = /home/vicente/tomato/release/src/router/libexif/m4m -abs_top_builddir = /home/vicente/tomato/release/src/router/libexif -abs_top_srcdir = /home/vicente/tomato/release/src/router/libexif +abs_builddir = /home/vicente/repos/tomato/release/src/router/libexif/m4m +abs_srcdir = /home/vicente/repos/tomato/release/src/router/libexif/m4m +abs_top_builddir = /home/vicente/repos/tomato/release/src/router/libexif +abs_top_srcdir = /home/vicente/repos/tomato/release/src/router/libexif ac_ct_CC = ac_ct_DUMPBIN = am__include = include @@ -177,7 +177,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = ${SHELL} /home/vicente/tomato/release/src/router/libexif/install-sh +install_sh = ${SHELL} /home/vicente/repos/tomato/release/src/router/libexif/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = $(datadir)/locale diff --git a/release/src/router/libexif/test/Makefile b/release/src/router/libexif/test/Makefile index 1bab60d07e..b890145b55 100644 --- a/release/src/router/libexif/test/Makefile +++ b/release/src/router/libexif/test/Makefile @@ -159,14 +159,14 @@ am__relativize = \ dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \ done; \ reldir="$$dir2" -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/libexif/missing --run aclocal-1.11 -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/libexif/missing --run tar +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/libexif/missing --run aclocal-1.11 +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/libexif/missing --run tar AM_CPPFLAGS = -DGETTEXT_PACKAGE=\"libexif-12\" -DLOCALEDIR=\"$(datadir)/locale\" -I$(top_srcdir) -I$(top_builddir) -g -Wall -Wmissing-declarations -Wmissing-prototypes AM_LDFLAGS = -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections -g -Wall AR = mipsel-uclibc-ar -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/libexif/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/libexif/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/libexif/missing --run automake-1.11 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/libexif/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/libexif/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/libexif/missing --run automake-1.11 AWK = gawk CC = mipsel-uclibc-gcc CCDEPMODE = depmode=gcc3 @@ -217,7 +217,7 @@ LTLIBICONV = LTLIBINTL = LTLIBOBJS = MAINT = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/libexif/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/libexif/missing --run makeinfo MKDIR_P = /bin/mkdir -p MKINSTALLDIRS = $(top_builddir)/./mkinstalldirs MSGFMT = /usr/bin/msgfmt @@ -245,10 +245,10 @@ STRIP = mipsel-uclibc-strip -R .note -R .comment USE_NLS = no VERSION = 0.6.19 XGETTEXT = /usr/bin/xgettext -abs_builddir = /home/vicente/tomato/release/src/router/libexif/test -abs_srcdir = /home/vicente/tomato/release/src/router/libexif/test -abs_top_builddir = /home/vicente/tomato/release/src/router/libexif -abs_top_srcdir = /home/vicente/tomato/release/src/router/libexif +abs_builddir = /home/vicente/repos/tomato/release/src/router/libexif/test +abs_srcdir = /home/vicente/repos/tomato/release/src/router/libexif/test +abs_top_builddir = /home/vicente/repos/tomato/release/src/router/libexif +abs_top_srcdir = /home/vicente/repos/tomato/release/src/router/libexif ac_ct_CC = ac_ct_DUMPBIN = am__include = include @@ -276,7 +276,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = ${SHELL} /home/vicente/tomato/release/src/router/libexif/install-sh +install_sh = ${SHELL} /home/vicente/repos/tomato/release/src/router/libexif/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = $(datadir)/locale diff --git a/release/src/router/libexif/test/nls/Makefile b/release/src/router/libexif/test/nls/Makefile index a456b49c0c..d341b644f5 100644 --- a/release/src/router/libexif/test/nls/Makefile +++ b/release/src/router/libexif/test/nls/Makefile @@ -81,14 +81,14 @@ CTAGS = ctags am__tty_colors = \ red=; grn=; lgn=; blu=; std= DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/libexif/missing --run aclocal-1.11 -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/libexif/missing --run tar +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/libexif/missing --run aclocal-1.11 +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/libexif/missing --run tar AM_CPPFLAGS = -DGETTEXT_PACKAGE=\"libexif-12\" -DLOCALEDIR=\"$(datadir)/locale\" -I$(top_srcdir) -I$(top_builddir) -g -Wall -Wmissing-declarations -Wmissing-prototypes AM_LDFLAGS = -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections -g -Wall AR = mipsel-uclibc-ar -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/libexif/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/libexif/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/libexif/missing --run automake-1.11 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/libexif/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/libexif/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/libexif/missing --run automake-1.11 AWK = gawk CC = mipsel-uclibc-gcc CCDEPMODE = depmode=gcc3 @@ -139,7 +139,7 @@ LTLIBICONV = LTLIBINTL = LTLIBOBJS = MAINT = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/libexif/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/libexif/missing --run makeinfo MKDIR_P = /bin/mkdir -p MKINSTALLDIRS = $(top_builddir)/./mkinstalldirs MSGFMT = /usr/bin/msgfmt @@ -167,10 +167,10 @@ STRIP = mipsel-uclibc-strip -R .note -R .comment USE_NLS = no VERSION = 0.6.19 XGETTEXT = /usr/bin/xgettext -abs_builddir = /home/vicente/tomato/release/src/router/libexif/test/nls -abs_srcdir = /home/vicente/tomato/release/src/router/libexif/test/nls -abs_top_builddir = /home/vicente/tomato/release/src/router/libexif -abs_top_srcdir = /home/vicente/tomato/release/src/router/libexif +abs_builddir = /home/vicente/repos/tomato/release/src/router/libexif/test/nls +abs_srcdir = /home/vicente/repos/tomato/release/src/router/libexif/test/nls +abs_top_builddir = /home/vicente/repos/tomato/release/src/router/libexif +abs_top_srcdir = /home/vicente/repos/tomato/release/src/router/libexif ac_ct_CC = ac_ct_DUMPBIN = am__include = include @@ -198,7 +198,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = ${SHELL} /home/vicente/tomato/release/src/router/libexif/install-sh +install_sh = ${SHELL} /home/vicente/repos/tomato/release/src/router/libexif/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = $(datadir)/locale diff --git a/release/src/router/libid3tag/autom4te.cache/output.0 b/release/src/router/libid3tag/autom4te.cache/output.0 new file mode 100644 index 0000000000..1da46ad3aa --- /dev/null +++ b/release/src/router/libid3tag/autom4te.cache/output.0 @@ -0,0 +1,20385 @@ +@%:@! /bin/sh +@%:@ From configure.ac Id: configure.ac,v 1.12 2004/01/23 23:22:46 rob Exp . +@%:@ Guess values for system-dependent variables and create Makefiles. +@%:@ Generated by GNU Autoconf 2.68 for ID3 Tag 0.15.1b. +@%:@ +@%:@ Report bugs to . +@%:@ +@%:@ +@%:@ Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, +@%:@ 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software +@%:@ Foundation, Inc. +@%:@ +@%:@ +@%:@ This configure script is free software; the Free Software Foundation +@%:@ gives unlimited permission to copy, distribute and modify it. +## -------------------- ## +## M4sh Initialization. ## +## -------------------- ## + +# Be more Bourne compatible +DUALCASE=1; export DUALCASE # for MKS sh +if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then : + emulate sh + NULLCMD=: + # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which + # is contrary to our usage. Disable this feature. + alias -g '${1+"$@"}'='"$@"' + setopt NO_GLOB_SUBST +else + case `(set -o) 2>/dev/null` in @%:@( + *posix*) : + set -o posix ;; @%:@( + *) : + ;; +esac +fi + + +as_nl=' +' +export as_nl +# Printing a long string crashes Solaris 7 /usr/bin/printf. +as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' +as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo +as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo +# Prefer a ksh shell builtin over an external printf program on Solaris, +# but without wasting forks for bash or zsh. +if test -z "$BASH_VERSION$ZSH_VERSION" \ + && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then + as_echo='print -r --' + as_echo_n='print -rn --' +elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then + as_echo='printf %s\n' + as_echo_n='printf %s' +else + if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then + as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"' + as_echo_n='/usr/ucb/echo -n' + else + as_echo_body='eval expr "X$1" : "X\\(.*\\)"' + as_echo_n_body='eval + arg=$1; + case $arg in @%:@( + *"$as_nl"*) + expr "X$arg" : "X\\(.*\\)$as_nl"; + arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;; + esac; + expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl" + ' + export as_echo_n_body + as_echo_n='sh -c $as_echo_n_body as_echo' + fi + export as_echo_body + as_echo='sh -c $as_echo_body as_echo' +fi + +# The user is always right. +if test "${PATH_SEPARATOR+set}" != set; then + PATH_SEPARATOR=: + (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { + (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || + PATH_SEPARATOR=';' + } +fi + + +# IFS +# We need space, tab and new line, in precisely that order. Quoting is +# there to prevent editors from complaining about space-tab. +# (If _AS_PATH_WALK were called with IFS unset, it would disable word +# splitting by setting IFS to empty value.) +IFS=" "" $as_nl" + +# Find who we are. Look in the path if we contain no directory separator. +as_myself= +case $0 in @%:@(( + *[\\/]* ) as_myself=$0 ;; + *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break + done +IFS=$as_save_IFS + + ;; +esac +# We did not find ourselves, most probably we were run as `sh COMMAND' +# in which case we are not to be found in the path. +if test "x$as_myself" = x; then + as_myself=$0 +fi +if test ! -f "$as_myself"; then + $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 + exit 1 +fi + +# Unset variables that we do not need and which cause bugs (e.g. in +# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1" +# suppresses any "Segmentation fault" message there. '((' could +# trigger a bug in pdksh 5.2.14. +for as_var in BASH_ENV ENV MAIL MAILPATH +do eval test x\${$as_var+set} = xset \ + && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : +done +PS1='$ ' +PS2='> ' +PS4='+ ' + +# NLS nuisances. +LC_ALL=C +export LC_ALL +LANGUAGE=C +export LANGUAGE + +# CDPATH. +(unset CDPATH) >/dev/null 2>&1 && unset CDPATH + +if test "x$CONFIG_SHELL" = x; then + as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then : + emulate sh + NULLCMD=: + # Pre-4.2 versions of Zsh do word splitting on \${1+\"\$@\"}, which + # is contrary to our usage. Disable this feature. + alias -g '\${1+\"\$@\"}'='\"\$@\"' + setopt NO_GLOB_SUBST +else + case \`(set -o) 2>/dev/null\` in @%:@( + *posix*) : + set -o posix ;; @%:@( + *) : + ;; +esac +fi +" + as_required="as_fn_return () { (exit \$1); } +as_fn_success () { as_fn_return 0; } +as_fn_failure () { as_fn_return 1; } +as_fn_ret_success () { return 0; } +as_fn_ret_failure () { return 1; } + +exitcode=0 +as_fn_success || { exitcode=1; echo as_fn_success failed.; } +as_fn_failure && { exitcode=1; echo as_fn_failure succeeded.; } +as_fn_ret_success || { exitcode=1; echo as_fn_ret_success failed.; } +as_fn_ret_failure && { exitcode=1; echo as_fn_ret_failure succeeded.; } +if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then : + +else + exitcode=1; echo positional parameters were not saved. +fi +test x\$exitcode = x0 || exit 1" + as_suggested=" as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO + as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO + eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" && + test \"x\`expr \$as_lineno_1'\$as_run' + 1\`\" = \"x\$as_lineno_2'\$as_run'\"' || exit 1 +test \$(( 1 + 1 )) = 2 || exit 1" + if (eval "$as_required") 2>/dev/null; then : + as_have_required=yes +else + as_have_required=no +fi + if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null; then : + +else + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +as_found=false +for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + as_found=: + case $as_dir in @%:@( + /*) + for as_base in sh bash ksh sh5; do + # Try only shells that exist, to save several forks. + as_shell=$as_dir/$as_base + if { test -f "$as_shell" || test -f "$as_shell.exe"; } && + { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$as_shell"; } 2>/dev/null; then : + CONFIG_SHELL=$as_shell as_have_required=yes + if { $as_echo "$as_bourne_compatible""$as_suggested" | as_run=a "$as_shell"; } 2>/dev/null; then : + break 2 +fi +fi + done;; + esac + as_found=false +done +$as_found || { if { test -f "$SHELL" || test -f "$SHELL.exe"; } && + { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$SHELL"; } 2>/dev/null; then : + CONFIG_SHELL=$SHELL as_have_required=yes +fi; } +IFS=$as_save_IFS + + + if test "x$CONFIG_SHELL" != x; then : + # We cannot yet assume a decent shell, so we have to provide a + # neutralization value for shells without unset; and this also + # works around shells that cannot unset nonexistent variables. + # Preserve -v and -x to the replacement shell. + BASH_ENV=/dev/null + ENV=/dev/null + (unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV + export CONFIG_SHELL + case $- in @%:@ (((( + *v*x* | *x*v* ) as_opts=-vx ;; + *v* ) as_opts=-v ;; + *x* ) as_opts=-x ;; + * ) as_opts= ;; + esac + exec "$CONFIG_SHELL" $as_opts "$as_myself" ${1+"$@"} +fi + + if test x$as_have_required = xno; then : + $as_echo "$0: This script requires a shell more modern than all" + $as_echo "$0: the shells that I found on your system." + if test x${ZSH_VERSION+set} = xset ; then + $as_echo "$0: In particular, zsh $ZSH_VERSION has bugs and should" + $as_echo "$0: be upgraded to zsh 4.3.4 or later." + else + $as_echo "$0: Please tell bug-autoconf@gnu.org and +$0: support@underbit.com about your system, including any +$0: error possibly output before this message. Then install +$0: a modern shell, or manually run the script under such a +$0: shell if you do have one." + fi + exit 1 +fi +fi +fi +SHELL=${CONFIG_SHELL-/bin/sh} +export SHELL +# Unset more variables known to interfere with behavior of common tools. +CLICOLOR_FORCE= GREP_OPTIONS= +unset CLICOLOR_FORCE GREP_OPTIONS + +## --------------------- ## +## M4sh Shell Functions. ## +## --------------------- ## +@%:@ as_fn_unset VAR +@%:@ --------------- +@%:@ Portably unset VAR. +as_fn_unset () +{ + { eval $1=; unset $1;} +} +as_unset=as_fn_unset + +@%:@ as_fn_set_status STATUS +@%:@ ----------------------- +@%:@ Set @S|@? to STATUS, without forking. +as_fn_set_status () +{ + return $1 +} @%:@ as_fn_set_status + +@%:@ as_fn_exit STATUS +@%:@ ----------------- +@%:@ Exit the shell with STATUS, even in a "trap 0" or "set -e" context. +as_fn_exit () +{ + set +e + as_fn_set_status $1 + exit $1 +} @%:@ as_fn_exit + +@%:@ as_fn_mkdir_p +@%:@ ------------- +@%:@ Create "@S|@as_dir" as a directory, including parents if necessary. +as_fn_mkdir_p () +{ + + case $as_dir in #( + -*) as_dir=./$as_dir;; + esac + test -d "$as_dir" || eval $as_mkdir_p || { + as_dirs= + while :; do + case $as_dir in #( + *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( + *) as_qdir=$as_dir;; + esac + as_dirs="'$as_qdir' $as_dirs" + as_dir=`$as_dirname -- "$as_dir" || +$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$as_dir" : 'X\(//\)[^/]' \| \ + X"$as_dir" : 'X\(//\)$' \| \ + X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X"$as_dir" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + test -d "$as_dir" && break + done + test -z "$as_dirs" || eval "mkdir $as_dirs" + } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir" + + +} @%:@ as_fn_mkdir_p +@%:@ as_fn_append VAR VALUE +@%:@ ---------------------- +@%:@ Append the text in VALUE to the end of the definition contained in VAR. Take +@%:@ advantage of any shell optimizations that allow amortized linear growth over +@%:@ repeated appends, instead of the typical quadratic growth present in naive +@%:@ implementations. +if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then : + eval 'as_fn_append () + { + eval $1+=\$2 + }' +else + as_fn_append () + { + eval $1=\$$1\$2 + } +fi # as_fn_append + +@%:@ as_fn_arith ARG... +@%:@ ------------------ +@%:@ Perform arithmetic evaluation on the ARGs, and store the result in the +@%:@ global @S|@as_val. Take advantage of shells that can avoid forks. The arguments +@%:@ must be portable across @S|@(()) and expr. +if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then : + eval 'as_fn_arith () + { + as_val=$(( $* )) + }' +else + as_fn_arith () + { + as_val=`expr "$@" || test $? -eq 1` + } +fi # as_fn_arith + + +@%:@ as_fn_error STATUS ERROR [LINENO LOG_FD] +@%:@ ---------------------------------------- +@%:@ Output "`basename @S|@0`: error: ERROR" to stderr. If LINENO and LOG_FD are +@%:@ provided, also output the error to LOG_FD, referencing LINENO. Then exit the +@%:@ script with STATUS, using 1 if that was 0. +as_fn_error () +{ + as_status=$1; test $as_status -eq 0 && as_status=1 + if test "$4"; then + as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4 + fi + $as_echo "$as_me: error: $2" >&2 + as_fn_exit $as_status +} @%:@ as_fn_error + +if expr a : '\(a\)' >/dev/null 2>&1 && + test "X`expr 00001 : '.*\(...\)'`" = X001; then + as_expr=expr +else + as_expr=false +fi + +if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then + as_basename=basename +else + as_basename=false +fi + +if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then + as_dirname=dirname +else + as_dirname=false +fi + +as_me=`$as_basename -- "$0" || +$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ + X"$0" : 'X\(//\)$' \| \ + X"$0" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X/"$0" | + sed '/^.*\/\([^/][^/]*\)\/*$/{ + s//\1/ + q + } + /^X\/\(\/\/\)$/{ + s//\1/ + q + } + /^X\/\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + +# Avoid depending upon Character Ranges. +as_cr_letters='abcdefghijklmnopqrstuvwxyz' +as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' +as_cr_Letters=$as_cr_letters$as_cr_LETTERS +as_cr_digits='0123456789' +as_cr_alnum=$as_cr_Letters$as_cr_digits + + + as_lineno_1=$LINENO as_lineno_1a=$LINENO + as_lineno_2=$LINENO as_lineno_2a=$LINENO + eval 'test "x$as_lineno_1'$as_run'" != "x$as_lineno_2'$as_run'" && + test "x`expr $as_lineno_1'$as_run' + 1`" = "x$as_lineno_2'$as_run'"' || { + # Blame Lee E. McMahon (1931-1989) for sed's syntax. :-) + sed -n ' + p + /[$]LINENO/= + ' <$as_myself | + sed ' + s/[$]LINENO.*/&-/ + t lineno + b + :lineno + N + :loop + s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/ + t loop + s/-\n.*// + ' >$as_me.lineno && + chmod +x "$as_me.lineno" || + { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; } + + # Don't try to exec as it changes $[0], causing all sort of problems + # (the dirname of $[0] is not the place where we might find the + # original and so on. Autoconf is especially sensitive to this). + . "./$as_me.lineno" + # Exit status is that of the last command. + exit +} + +ECHO_C= ECHO_N= ECHO_T= +case `echo -n x` in @%:@((((( +-n*) + case `echo 'xy\c'` in + *c*) ECHO_T=' ';; # ECHO_T is single tab character. + xy) ECHO_C='\c';; + *) echo `echo ksh88 bug on AIX 6.1` > /dev/null + ECHO_T=' ';; + esac;; +*) + ECHO_N='-n';; +esac + +rm -f conf$$ conf$$.exe conf$$.file +if test -d conf$$.dir; then + rm -f conf$$.dir/conf$$.file +else + rm -f conf$$.dir + mkdir conf$$.dir 2>/dev/null +fi +if (echo >conf$$.file) 2>/dev/null; then + if ln -s conf$$.file conf$$ 2>/dev/null; then + as_ln_s='ln -s' + # ... but there are two gotchas: + # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. + # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. + # In both cases, we have to default to `cp -p'. + ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || + as_ln_s='cp -p' + elif ln conf$$.file conf$$ 2>/dev/null; then + as_ln_s=ln + else + as_ln_s='cp -p' + fi +else + as_ln_s='cp -p' +fi +rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file +rmdir conf$$.dir 2>/dev/null + +if mkdir -p . 2>/dev/null; then + as_mkdir_p='mkdir -p "$as_dir"' +else + test -d ./-p && rmdir ./-p + as_mkdir_p=false +fi + +if test -x / >/dev/null 2>&1; then + as_test_x='test -x' +else + if ls -dL / >/dev/null 2>&1; then + as_ls_L_option=L + else + as_ls_L_option= + fi + as_test_x=' + eval sh -c '\'' + if test -d "$1"; then + test -d "$1/."; + else + case $1 in @%:@( + -*)set "./$1";; + esac; + case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in @%:@(( + ???[sx]*):;;*)false;;esac;fi + '\'' sh + ' +fi +as_executable_p=$as_test_x + +# Sed expression to map a string onto a valid CPP name. +as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" + +# Sed expression to map a string onto a valid variable name. +as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" + + + +# Check that we are running under the correct shell. +SHELL=${CONFIG_SHELL-/bin/sh} + +case X$ECHO in +X*--fallback-echo) + # Remove one level of quotation (which was required for Make). + ECHO=`echo "$ECHO" | sed 's,\\\\\$\\$0,'$0','` + ;; +esac + +echo=${ECHO-echo} +if test "X$1" = X--no-reexec; then + # Discard the --no-reexec flag, and continue. + shift +elif test "X$1" = X--fallback-echo; then + # Avoid inline document here, it may be left over + : +elif test "X`($echo '\t') 2>/dev/null`" = 'X\t' ; then + # Yippee, $echo works! + : +else + # Restart under the correct shell. + exec $SHELL "$0" --no-reexec ${1+"$@"} +fi + +if test "X$1" = X--fallback-echo; then + # used as fallback echo + shift + cat </dev/null && + echo_test_string="`eval $cmd`" && + (test "X$echo_test_string" = "X$echo_test_string") 2>/dev/null + then + break + fi + done +fi + +if test "X`($echo '\t') 2>/dev/null`" = 'X\t' && + echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` && + test "X$echo_testing_string" = "X$echo_test_string"; then + : +else + # The Solaris, AIX, and Digital Unix default echo programs unquote + # backslashes. This makes it impossible to quote backslashes using + # echo "$something" | sed 's/\\/\\\\/g' + # + # So, first we look for a working echo in the user's PATH. + + lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR + for dir in $PATH /usr/ucb; do + IFS="$lt_save_ifs" + if (test -f $dir/echo || test -f $dir/echo$ac_exeext) && + test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' && + echo_testing_string=`($dir/echo "$echo_test_string") 2>/dev/null` && + test "X$echo_testing_string" = "X$echo_test_string"; then + echo="$dir/echo" + break + fi + done + IFS="$lt_save_ifs" + + if test "X$echo" = Xecho; then + # We didn't find a better echo, so look for alternatives. + if test "X`(print -r '\t') 2>/dev/null`" = 'X\t' && + echo_testing_string=`(print -r "$echo_test_string") 2>/dev/null` && + test "X$echo_testing_string" = "X$echo_test_string"; then + # This shell has a builtin print -r that does the trick. + echo='print -r' + elif (test -f /bin/ksh || test -f /bin/ksh$ac_exeext) && + test "X$CONFIG_SHELL" != X/bin/ksh; then + # If we have ksh, try running configure again with it. + ORIGINAL_CONFIG_SHELL=${CONFIG_SHELL-/bin/sh} + export ORIGINAL_CONFIG_SHELL + CONFIG_SHELL=/bin/ksh + export CONFIG_SHELL + exec $CONFIG_SHELL "$0" --no-reexec ${1+"$@"} + else + # Try using printf. + echo='printf %s\n' + if test "X`($echo '\t') 2>/dev/null`" = 'X\t' && + echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` && + test "X$echo_testing_string" = "X$echo_test_string"; then + # Cool, printf works + : + elif echo_testing_string=`($ORIGINAL_CONFIG_SHELL "$0" --fallback-echo '\t') 2>/dev/null` && + test "X$echo_testing_string" = 'X\t' && + echo_testing_string=`($ORIGINAL_CONFIG_SHELL "$0" --fallback-echo "$echo_test_string") 2>/dev/null` && + test "X$echo_testing_string" = "X$echo_test_string"; then + CONFIG_SHELL=$ORIGINAL_CONFIG_SHELL + export CONFIG_SHELL + SHELL="$CONFIG_SHELL" + export SHELL + echo="$CONFIG_SHELL $0 --fallback-echo" + elif echo_testing_string=`($CONFIG_SHELL "$0" --fallback-echo '\t') 2>/dev/null` && + test "X$echo_testing_string" = 'X\t' && + echo_testing_string=`($CONFIG_SHELL "$0" --fallback-echo "$echo_test_string") 2>/dev/null` && + test "X$echo_testing_string" = "X$echo_test_string"; then + echo="$CONFIG_SHELL $0 --fallback-echo" + else + # maybe with a smaller string... + prev=: + + for cmd in 'echo test' 'sed 2q "$0"' 'sed 10q "$0"' 'sed 20q "$0"' 'sed 50q "$0"'; do + if (test "X$echo_test_string" = "X`eval $cmd`") 2>/dev/null + then + break + fi + prev="$cmd" + done + + if test "$prev" != 'sed 50q "$0"'; then + echo_test_string=`eval $prev` + export echo_test_string + exec ${ORIGINAL_CONFIG_SHELL-${CONFIG_SHELL-/bin/sh}} "$0" ${1+"$@"} + else + # Oops. We lost completely, so just stick with echo. + echo=echo + fi + fi + fi + fi +fi +fi + +# Copy echo and quote the copy suitably for passing to libtool from +# the Makefile, instead of quoting the original, which is used later. +ECHO=$echo +if test "X$ECHO" = "X$CONFIG_SHELL $0 --fallback-echo"; then + ECHO="$CONFIG_SHELL \\\$\$0 --fallback-echo" +fi + + + + +tagnames=${tagnames+${tagnames},}CXX + +tagnames=${tagnames+${tagnames},}F77 + +test -n "$DJDIR" || exec 7<&0 &1 + +# Name of the host. +# hostname on some systems (SVR3.2, old GNU/Linux) returns a bogus exit status, +# so uname gets run too. +ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q` + +# +# Initializations. +# +ac_default_prefix=/usr/local +ac_clean_files= +ac_config_libobj_dir=. +LIB@&t@OBJS= +cross_compiling=no +subdirs= +MFLAGS= +MAKEFLAGS= + +# Identity of this package. +PACKAGE_NAME='ID3 Tag' +PACKAGE_TARNAME='libid3tag' +PACKAGE_VERSION='0.15.1b' +PACKAGE_STRING='ID3 Tag 0.15.1b' +PACKAGE_BUGREPORT='support@underbit.com' +PACKAGE_URL='' + +ac_unique_file="id3tag.h" +# Factoring default headers for most tests. +ac_includes_default="\ +#include +#ifdef HAVE_SYS_TYPES_H +# include +#endif +#ifdef HAVE_SYS_STAT_H +# include +#endif +#ifdef STDC_HEADERS +# include +# include +#else +# ifdef HAVE_STDLIB_H +# include +# endif +#endif +#ifdef HAVE_STRING_H +# if !defined STDC_HEADERS && defined HAVE_MEMORY_H +# include +# endif +# include +#endif +#ifdef HAVE_STRINGS_H +# include +#endif +#ifdef HAVE_INTTYPES_H +# include +#endif +#ifdef HAVE_STDINT_H +# include +#endif +#ifdef HAVE_UNISTD_H +# include +#endif" + +ac_subst_vars='LTLIBOBJS +LIB@&t@OBJS +DEBUG_FALSE +DEBUG_TRUE +LIBTOOL_DEPS +LIBTOOL +ac_ct_F77 +FFLAGS +F77 +CXXCPP +am__fastdepCXX_FALSE +am__fastdepCXX_TRUE +CXXDEPMODE +ac_ct_CXX +CXXFLAGS +CXX +CPP +RANLIB +AR +ECHO +LN_S +EGREP +GREP +am__fastdepCC_FALSE +am__fastdepCC_TRUE +CCDEPMODE +AMDEPBACKSLASH +AMDEP_FALSE +AMDEP_TRUE +am__quote +am__include +DEPDIR +OBJEXT +EXEEXT +ac_ct_CC +CPPFLAGS +LDFLAGS +CFLAGS +CC +host_os +host_vendor +host_cpu +host +build_os +build_vendor +build_cpu +build +am__leading_dot +SET_MAKE +AWK +mkdir_p +INSTALL_STRIP_PROGRAM +STRIP +install_sh +AMTAR +MAKEINFO +AUTOHEADER +AUTOMAKE +AUTOCONF +ACLOCAL +VERSION +PACKAGE +CYGPATH_W +INSTALL_DATA +INSTALL_SCRIPT +INSTALL_PROGRAM +target_alias +host_alias +build_alias +LIBS +ECHO_T +ECHO_N +ECHO_C +DEFS +mandir +localedir +libdir +psdir +pdfdir +dvidir +htmldir +infodir +docdir +oldincludedir +includedir +localstatedir +sharedstatedir +sysconfdir +datadir +datarootdir +libexecdir +sbindir +bindir +program_transform_name +prefix +exec_prefix +PACKAGE_URL +PACKAGE_BUGREPORT +PACKAGE_STRING +PACKAGE_VERSION +PACKAGE_TARNAME +PACKAGE_NAME +PATH_SEPARATOR +SHELL' +ac_subst_files='' +ac_user_opts=' +enable_option_checking +enable_dependency_tracking +enable_shared +enable_static +enable_fast_install +with_gnu_ld +enable_libtool_lock +with_pic +with_tags +enable_profiling +enable_debugging +' + ac_precious_vars='build_alias +host_alias +target_alias +CC +CFLAGS +LDFLAGS +LIBS +CPPFLAGS +CPP +CXX +CXXFLAGS +CCC +CXXCPP +F77 +FFLAGS' + + +# Initialize some variables set by options. +ac_init_help= +ac_init_version=false +ac_unrecognized_opts= +ac_unrecognized_sep= +# The variables have the same names as the options, with +# dashes changed to underlines. +cache_file=/dev/null +exec_prefix=NONE +no_create= +no_recursion= +prefix=NONE +program_prefix=NONE +program_suffix=NONE +program_transform_name=s,x,x, +silent= +site= +srcdir= +verbose= +x_includes=NONE +x_libraries=NONE + +# Installation directory options. +# These are left unexpanded so users can "make install exec_prefix=/foo" +# and all the variables that are supposed to be based on exec_prefix +# by default will actually change. +# Use braces instead of parens because sh, perl, etc. also accept them. +# (The list follows the same order as the GNU Coding Standards.) +bindir='${exec_prefix}/bin' +sbindir='${exec_prefix}/sbin' +libexecdir='${exec_prefix}/libexec' +datarootdir='${prefix}/share' +datadir='${datarootdir}' +sysconfdir='${prefix}/etc' +sharedstatedir='${prefix}/com' +localstatedir='${prefix}/var' +includedir='${prefix}/include' +oldincludedir='/usr/include' +docdir='${datarootdir}/doc/${PACKAGE_TARNAME}' +infodir='${datarootdir}/info' +htmldir='${docdir}' +dvidir='${docdir}' +pdfdir='${docdir}' +psdir='${docdir}' +libdir='${exec_prefix}/lib' +localedir='${datarootdir}/locale' +mandir='${datarootdir}/man' + +ac_prev= +ac_dashdash= +for ac_option +do + # If the previous option needs an argument, assign it. + if test -n "$ac_prev"; then + eval $ac_prev=\$ac_option + ac_prev= + continue + fi + + case $ac_option in + *=?*) ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;; + *=) ac_optarg= ;; + *) ac_optarg=yes ;; + esac + + # Accept the important Cygnus configure options, so we can diagnose typos. + + case $ac_dashdash$ac_option in + --) + ac_dashdash=yes ;; + + -bindir | --bindir | --bindi | --bind | --bin | --bi) + ac_prev=bindir ;; + -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*) + bindir=$ac_optarg ;; + + -build | --build | --buil | --bui | --bu) + ac_prev=build_alias ;; + -build=* | --build=* | --buil=* | --bui=* | --bu=*) + build_alias=$ac_optarg ;; + + -cache-file | --cache-file | --cache-fil | --cache-fi \ + | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c) + ac_prev=cache_file ;; + -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \ + | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*) + cache_file=$ac_optarg ;; + + --config-cache | -C) + cache_file=config.cache ;; + + -datadir | --datadir | --datadi | --datad) + ac_prev=datadir ;; + -datadir=* | --datadir=* | --datadi=* | --datad=*) + datadir=$ac_optarg ;; + + -datarootdir | --datarootdir | --datarootdi | --datarootd | --dataroot \ + | --dataroo | --dataro | --datar) + ac_prev=datarootdir ;; + -datarootdir=* | --datarootdir=* | --datarootdi=* | --datarootd=* \ + | --dataroot=* | --dataroo=* | --dataro=* | --datar=*) + datarootdir=$ac_optarg ;; + + -disable-* | --disable-*) + ac_useropt=`expr "x$ac_option" : 'x-*disable-\(.*\)'` + # Reject names that are not valid shell variable names. + expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && + as_fn_error $? "invalid feature name: $ac_useropt" + ac_useropt_orig=$ac_useropt + ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` + case $ac_user_opts in + *" +"enable_$ac_useropt" +"*) ;; + *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--disable-$ac_useropt_orig" + ac_unrecognized_sep=', ';; + esac + eval enable_$ac_useropt=no ;; + + -docdir | --docdir | --docdi | --doc | --do) + ac_prev=docdir ;; + -docdir=* | --docdir=* | --docdi=* | --doc=* | --do=*) + docdir=$ac_optarg ;; + + -dvidir | --dvidir | --dvidi | --dvid | --dvi | --dv) + ac_prev=dvidir ;; + -dvidir=* | --dvidir=* | --dvidi=* | --dvid=* | --dvi=* | --dv=*) + dvidir=$ac_optarg ;; + + -enable-* | --enable-*) + ac_useropt=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'` + # Reject names that are not valid shell variable names. + expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && + as_fn_error $? "invalid feature name: $ac_useropt" + ac_useropt_orig=$ac_useropt + ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` + case $ac_user_opts in + *" +"enable_$ac_useropt" +"*) ;; + *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--enable-$ac_useropt_orig" + ac_unrecognized_sep=', ';; + esac + eval enable_$ac_useropt=\$ac_optarg ;; + + -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \ + | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \ + | --exec | --exe | --ex) + ac_prev=exec_prefix ;; + -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \ + | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \ + | --exec=* | --exe=* | --ex=*) + exec_prefix=$ac_optarg ;; + + -gas | --gas | --ga | --g) + # Obsolete; use --with-gas. + with_gas=yes ;; + + -help | --help | --hel | --he | -h) + ac_init_help=long ;; + -help=r* | --help=r* | --hel=r* | --he=r* | -hr*) + ac_init_help=recursive ;; + -help=s* | --help=s* | --hel=s* | --he=s* | -hs*) + ac_init_help=short ;; + + -host | --host | --hos | --ho) + ac_prev=host_alias ;; + -host=* | --host=* | --hos=* | --ho=*) + host_alias=$ac_optarg ;; + + -htmldir | --htmldir | --htmldi | --htmld | --html | --htm | --ht) + ac_prev=htmldir ;; + -htmldir=* | --htmldir=* | --htmldi=* | --htmld=* | --html=* | --htm=* \ + | --ht=*) + htmldir=$ac_optarg ;; + + -includedir | --includedir | --includedi | --included | --include \ + | --includ | --inclu | --incl | --inc) + ac_prev=includedir ;; + -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \ + | --includ=* | --inclu=* | --incl=* | --inc=*) + includedir=$ac_optarg ;; + + -infodir | --infodir | --infodi | --infod | --info | --inf) + ac_prev=infodir ;; + -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*) + infodir=$ac_optarg ;; + + -libdir | --libdir | --libdi | --libd) + ac_prev=libdir ;; + -libdir=* | --libdir=* | --libdi=* | --libd=*) + libdir=$ac_optarg ;; + + -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \ + | --libexe | --libex | --libe) + ac_prev=libexecdir ;; + -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \ + | --libexe=* | --libex=* | --libe=*) + libexecdir=$ac_optarg ;; + + -localedir | --localedir | --localedi | --localed | --locale) + ac_prev=localedir ;; + -localedir=* | --localedir=* | --localedi=* | --localed=* | --locale=*) + localedir=$ac_optarg ;; + + -localstatedir | --localstatedir | --localstatedi | --localstated \ + | --localstate | --localstat | --localsta | --localst | --locals) + ac_prev=localstatedir ;; + -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \ + | --localstate=* | --localstat=* | --localsta=* | --localst=* | --locals=*) + localstatedir=$ac_optarg ;; + + -mandir | --mandir | --mandi | --mand | --man | --ma | --m) + ac_prev=mandir ;; + -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*) + mandir=$ac_optarg ;; + + -nfp | --nfp | --nf) + # Obsolete; use --without-fp. + with_fp=no ;; + + -no-create | --no-create | --no-creat | --no-crea | --no-cre \ + | --no-cr | --no-c | -n) + no_create=yes ;; + + -no-recursion | --no-recursion | --no-recursio | --no-recursi \ + | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) + no_recursion=yes ;; + + -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \ + | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \ + | --oldin | --oldi | --old | --ol | --o) + ac_prev=oldincludedir ;; + -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \ + | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \ + | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*) + oldincludedir=$ac_optarg ;; + + -prefix | --prefix | --prefi | --pref | --pre | --pr | --p) + ac_prev=prefix ;; + -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*) + prefix=$ac_optarg ;; + + -program-prefix | --program-prefix | --program-prefi | --program-pref \ + | --program-pre | --program-pr | --program-p) + ac_prev=program_prefix ;; + -program-prefix=* | --program-prefix=* | --program-prefi=* \ + | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*) + program_prefix=$ac_optarg ;; + + -program-suffix | --program-suffix | --program-suffi | --program-suff \ + | --program-suf | --program-su | --program-s) + ac_prev=program_suffix ;; + -program-suffix=* | --program-suffix=* | --program-suffi=* \ + | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*) + program_suffix=$ac_optarg ;; + + -program-transform-name | --program-transform-name \ + | --program-transform-nam | --program-transform-na \ + | --program-transform-n | --program-transform- \ + | --program-transform | --program-transfor \ + | --program-transfo | --program-transf \ + | --program-trans | --program-tran \ + | --progr-tra | --program-tr | --program-t) + ac_prev=program_transform_name ;; + -program-transform-name=* | --program-transform-name=* \ + | --program-transform-nam=* | --program-transform-na=* \ + | --program-transform-n=* | --program-transform-=* \ + | --program-transform=* | --program-transfor=* \ + | --program-transfo=* | --program-transf=* \ + | --program-trans=* | --program-tran=* \ + | --progr-tra=* | --program-tr=* | --program-t=*) + program_transform_name=$ac_optarg ;; + + -pdfdir | --pdfdir | --pdfdi | --pdfd | --pdf | --pd) + ac_prev=pdfdir ;; + -pdfdir=* | --pdfdir=* | --pdfdi=* | --pdfd=* | --pdf=* | --pd=*) + pdfdir=$ac_optarg ;; + + -psdir | --psdir | --psdi | --psd | --ps) + ac_prev=psdir ;; + -psdir=* | --psdir=* | --psdi=* | --psd=* | --ps=*) + psdir=$ac_optarg ;; + + -q | -quiet | --quiet | --quie | --qui | --qu | --q \ + | -silent | --silent | --silen | --sile | --sil) + silent=yes ;; + + -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb) + ac_prev=sbindir ;; + -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \ + | --sbi=* | --sb=*) + sbindir=$ac_optarg ;; + + -sharedstatedir | --sharedstatedir | --sharedstatedi \ + | --sharedstated | --sharedstate | --sharedstat | --sharedsta \ + | --sharedst | --shareds | --shared | --share | --shar \ + | --sha | --sh) + ac_prev=sharedstatedir ;; + -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \ + | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \ + | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \ + | --sha=* | --sh=*) + sharedstatedir=$ac_optarg ;; + + -site | --site | --sit) + ac_prev=site ;; + -site=* | --site=* | --sit=*) + site=$ac_optarg ;; + + -srcdir | --srcdir | --srcdi | --srcd | --src | --sr) + ac_prev=srcdir ;; + -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*) + srcdir=$ac_optarg ;; + + -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \ + | --syscon | --sysco | --sysc | --sys | --sy) + ac_prev=sysconfdir ;; + -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \ + | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*) + sysconfdir=$ac_optarg ;; + + -target | --target | --targe | --targ | --tar | --ta | --t) + ac_prev=target_alias ;; + -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*) + target_alias=$ac_optarg ;; + + -v | -verbose | --verbose | --verbos | --verbo | --verb) + verbose=yes ;; + + -version | --version | --versio | --versi | --vers | -V) + ac_init_version=: ;; + + -with-* | --with-*) + ac_useropt=`expr "x$ac_option" : 'x-*with-\([^=]*\)'` + # Reject names that are not valid shell variable names. + expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && + as_fn_error $? "invalid package name: $ac_useropt" + ac_useropt_orig=$ac_useropt + ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` + case $ac_user_opts in + *" +"with_$ac_useropt" +"*) ;; + *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--with-$ac_useropt_orig" + ac_unrecognized_sep=', ';; + esac + eval with_$ac_useropt=\$ac_optarg ;; + + -without-* | --without-*) + ac_useropt=`expr "x$ac_option" : 'x-*without-\(.*\)'` + # Reject names that are not valid shell variable names. + expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && + as_fn_error $? "invalid package name: $ac_useropt" + ac_useropt_orig=$ac_useropt + ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` + case $ac_user_opts in + *" +"with_$ac_useropt" +"*) ;; + *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--without-$ac_useropt_orig" + ac_unrecognized_sep=', ';; + esac + eval with_$ac_useropt=no ;; + + --x) + # Obsolete; use --with-x. + with_x=yes ;; + + -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \ + | --x-incl | --x-inc | --x-in | --x-i) + ac_prev=x_includes ;; + -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \ + | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*) + x_includes=$ac_optarg ;; + + -x-libraries | --x-libraries | --x-librarie | --x-librari \ + | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l) + ac_prev=x_libraries ;; + -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \ + | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*) + x_libraries=$ac_optarg ;; + + -*) as_fn_error $? "unrecognized option: \`$ac_option' +Try \`$0 --help' for more information" + ;; + + *=*) + ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='` + # Reject names that are not valid shell variable names. + case $ac_envvar in #( + '' | [0-9]* | *[!_$as_cr_alnum]* ) + as_fn_error $? "invalid variable name: \`$ac_envvar'" ;; + esac + eval $ac_envvar=\$ac_optarg + export $ac_envvar ;; + + *) + # FIXME: should be removed in autoconf 3.0. + $as_echo "$as_me: WARNING: you should use --build, --host, --target" >&2 + expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null && + $as_echo "$as_me: WARNING: invalid host type: $ac_option" >&2 + : "${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}" + ;; + + esac +done + +if test -n "$ac_prev"; then + ac_option=--`echo $ac_prev | sed 's/_/-/g'` + as_fn_error $? "missing argument to $ac_option" +fi + +if test -n "$ac_unrecognized_opts"; then + case $enable_option_checking in + no) ;; + fatal) as_fn_error $? "unrecognized options: $ac_unrecognized_opts" ;; + *) $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;; + esac +fi + +# Check all directory arguments for consistency. +for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \ + datadir sysconfdir sharedstatedir localstatedir includedir \ + oldincludedir docdir infodir htmldir dvidir pdfdir psdir \ + libdir localedir mandir +do + eval ac_val=\$$ac_var + # Remove trailing slashes. + case $ac_val in + */ ) + ac_val=`expr "X$ac_val" : 'X\(.*[^/]\)' \| "X$ac_val" : 'X\(.*\)'` + eval $ac_var=\$ac_val;; + esac + # Be sure to have absolute directory names. + case $ac_val in + [\\/$]* | ?:[\\/]* ) continue;; + NONE | '' ) case $ac_var in *prefix ) continue;; esac;; + esac + as_fn_error $? "expected an absolute directory name for --$ac_var: $ac_val" +done + +# There might be people who depend on the old broken behavior: `$host' +# used to hold the argument of --host etc. +# FIXME: To remove some day. +build=$build_alias +host=$host_alias +target=$target_alias + +# FIXME: To remove some day. +if test "x$host_alias" != x; then + if test "x$build_alias" = x; then + cross_compiling=maybe + $as_echo "$as_me: WARNING: if you wanted to set the --build type, don't use --host. + If a cross compiler is detected then cross compile mode will be used" >&2 + elif test "x$build_alias" != "x$host_alias"; then + cross_compiling=yes + fi +fi + +ac_tool_prefix= +test -n "$host_alias" && ac_tool_prefix=$host_alias- + +test "$silent" = yes && exec 6>/dev/null + + +ac_pwd=`pwd` && test -n "$ac_pwd" && +ac_ls_di=`ls -di .` && +ac_pwd_ls_di=`cd "$ac_pwd" && ls -di .` || + as_fn_error $? "working directory cannot be determined" +test "X$ac_ls_di" = "X$ac_pwd_ls_di" || + as_fn_error $? "pwd does not report name of working directory" + + +# Find the source files, if location was not specified. +if test -z "$srcdir"; then + ac_srcdir_defaulted=yes + # Try the directory containing this script, then the parent directory. + ac_confdir=`$as_dirname -- "$as_myself" || +$as_expr X"$as_myself" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$as_myself" : 'X\(//\)[^/]' \| \ + X"$as_myself" : 'X\(//\)$' \| \ + X"$as_myself" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X"$as_myself" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + srcdir=$ac_confdir + if test ! -r "$srcdir/$ac_unique_file"; then + srcdir=.. + fi +else + ac_srcdir_defaulted=no +fi +if test ! -r "$srcdir/$ac_unique_file"; then + test "$ac_srcdir_defaulted" = yes && srcdir="$ac_confdir or .." + as_fn_error $? "cannot find sources ($ac_unique_file) in $srcdir" +fi +ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work" +ac_abs_confdir=`( + cd "$srcdir" && test -r "./$ac_unique_file" || as_fn_error $? "$ac_msg" + pwd)` +# When building in place, set srcdir=. +if test "$ac_abs_confdir" = "$ac_pwd"; then + srcdir=. +fi +# Remove unnecessary trailing slashes from srcdir. +# Double slashes in file names in object file debugging info +# mess up M-x gdb in Emacs. +case $srcdir in +*/) srcdir=`expr "X$srcdir" : 'X\(.*[^/]\)' \| "X$srcdir" : 'X\(.*\)'`;; +esac +for ac_var in $ac_precious_vars; do + eval ac_env_${ac_var}_set=\${${ac_var}+set} + eval ac_env_${ac_var}_value=\$${ac_var} + eval ac_cv_env_${ac_var}_set=\${${ac_var}+set} + eval ac_cv_env_${ac_var}_value=\$${ac_var} +done + +# +# Report the --help message. +# +if test "$ac_init_help" = "long"; then + # Omit some internal or obsolete options to make the list less imposing. + # This message is too long to be a string in the A/UX 3.1 sh. + cat <<_ACEOF +\`configure' configures ID3 Tag 0.15.1b to adapt to many kinds of systems. + +Usage: $0 [OPTION]... [VAR=VALUE]... + +To assign environment variables (e.g., CC, CFLAGS...), specify them as +VAR=VALUE. See below for descriptions of some of the useful variables. + +Defaults for the options are specified in brackets. + +Configuration: + -h, --help display this help and exit + --help=short display options specific to this package + --help=recursive display the short help of all the included packages + -V, --version display version information and exit + -q, --quiet, --silent do not print \`checking ...' messages + --cache-file=FILE cache test results in FILE [disabled] + -C, --config-cache alias for \`--cache-file=config.cache' + -n, --no-create do not create output files + --srcdir=DIR find the sources in DIR [configure dir or \`..'] + +Installation directories: + --prefix=PREFIX install architecture-independent files in PREFIX + @<:@@S|@ac_default_prefix@:>@ + --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX + @<:@PREFIX@:>@ + +By default, \`make install' will install all the files in +\`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify +an installation prefix other than \`$ac_default_prefix' using \`--prefix', +for instance \`--prefix=\$HOME'. + +For better control, use the options below. + +Fine tuning of the installation directories: + --bindir=DIR user executables [EPREFIX/bin] + --sbindir=DIR system admin executables [EPREFIX/sbin] + --libexecdir=DIR program executables [EPREFIX/libexec] + --sysconfdir=DIR read-only single-machine data [PREFIX/etc] + --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] + --localstatedir=DIR modifiable single-machine data [PREFIX/var] + --libdir=DIR object code libraries [EPREFIX/lib] + --includedir=DIR C header files [PREFIX/include] + --oldincludedir=DIR C header files for non-gcc [/usr/include] + --datarootdir=DIR read-only arch.-independent data root [PREFIX/share] + --datadir=DIR read-only architecture-independent data [DATAROOTDIR] + --infodir=DIR info documentation [DATAROOTDIR/info] + --localedir=DIR locale-dependent data [DATAROOTDIR/locale] + --mandir=DIR man documentation [DATAROOTDIR/man] + --docdir=DIR documentation root @<:@DATAROOTDIR/doc/libid3tag@:>@ + --htmldir=DIR html documentation [DOCDIR] + --dvidir=DIR dvi documentation [DOCDIR] + --pdfdir=DIR pdf documentation [DOCDIR] + --psdir=DIR ps documentation [DOCDIR] +_ACEOF + + cat <<\_ACEOF + +Program names: + --program-prefix=PREFIX prepend PREFIX to installed program names + --program-suffix=SUFFIX append SUFFIX to installed program names + --program-transform-name=PROGRAM run sed PROGRAM on installed program names + +System types: + --build=BUILD configure for building on BUILD [guessed] + --host=HOST cross-compile to build programs to run on HOST [BUILD] +_ACEOF +fi + +if test -n "$ac_init_help"; then + case $ac_init_help in + short | recursive ) echo "Configuration of ID3 Tag 0.15.1b:";; + esac + cat <<\_ACEOF + +Optional Features: + --disable-option-checking ignore unrecognized --enable/--with options + --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no) + --enable-FEATURE[=ARG] include FEATURE [ARG=yes] + --disable-dependency-tracking speeds up one-time build + --enable-dependency-tracking do not reject slow dependency extractors + --enable-shared@<:@=PKGS@:>@ build shared libraries @<:@default=yes@:>@ + --enable-static@<:@=PKGS@:>@ build static libraries @<:@default=yes@:>@ + --enable-fast-install@<:@=PKGS@:>@ + optimize for fast installation @<:@default=yes@:>@ + --disable-libtool-lock avoid locking (might break parallel builds) + --enable-profiling generate profiling code + --enable-debugging enable diagnostic debugging support + --disable-debugging do not enable debugging and use more optimization + +Optional Packages: + --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] + --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) + --with-gnu-ld assume the C compiler uses GNU ld @<:@default=no@:>@ + --with-pic try to use only PIC/non-PIC objects @<:@default=use + both@:>@ + --with-tags@<:@=TAGS@:>@ include additional configurations @<:@automatic@:>@ + +Some influential environment variables: + CC C compiler command + CFLAGS C compiler flags + LDFLAGS linker flags, e.g. -L if you have libraries in a + nonstandard directory + LIBS libraries to pass to the linker, e.g. -l + CPPFLAGS (Objective) C/C++ preprocessor flags, e.g. -I if + you have headers in a nonstandard directory + CPP C preprocessor + CXX C++ compiler command + CXXFLAGS C++ compiler flags + CXXCPP C++ preprocessor + F77 Fortran 77 compiler command + FFLAGS Fortran 77 compiler flags + +Use these variables to override the choices made by `configure' or to help +it to find libraries and programs with nonstandard names/locations. + +Report bugs to . +_ACEOF +ac_status=$? +fi + +if test "$ac_init_help" = "recursive"; then + # If there are subdirs, report their specific --help. + for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue + test -d "$ac_dir" || + { cd "$srcdir" && ac_pwd=`pwd` && srcdir=. && test -d "$ac_dir"; } || + continue + ac_builddir=. + +case "$ac_dir" in +.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; +*) + ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'` + # A ".." for each directory in $ac_dir_suffix. + ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'` + case $ac_top_builddir_sub in + "") ac_top_builddir_sub=. ac_top_build_prefix= ;; + *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; + esac ;; +esac +ac_abs_top_builddir=$ac_pwd +ac_abs_builddir=$ac_pwd$ac_dir_suffix +# for backward compatibility: +ac_top_builddir=$ac_top_build_prefix + +case $srcdir in + .) # We are building in place. + ac_srcdir=. + ac_top_srcdir=$ac_top_builddir_sub + ac_abs_top_srcdir=$ac_pwd ;; + [\\/]* | ?:[\\/]* ) # Absolute name. + ac_srcdir=$srcdir$ac_dir_suffix; + ac_top_srcdir=$srcdir + ac_abs_top_srcdir=$srcdir ;; + *) # Relative name. + ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix + ac_top_srcdir=$ac_top_build_prefix$srcdir + ac_abs_top_srcdir=$ac_pwd/$srcdir ;; +esac +ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix + + cd "$ac_dir" || { ac_status=$?; continue; } + # Check for guested configure. + if test -f "$ac_srcdir/configure.gnu"; then + echo && + $SHELL "$ac_srcdir/configure.gnu" --help=recursive + elif test -f "$ac_srcdir/configure"; then + echo && + $SHELL "$ac_srcdir/configure" --help=recursive + else + $as_echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2 + fi || ac_status=$? + cd "$ac_pwd" || { ac_status=$?; break; } + done +fi + +test -n "$ac_init_help" && exit $ac_status +if $ac_init_version; then + cat <<\_ACEOF +ID3 Tag configure 0.15.1b +generated by GNU Autoconf 2.68 + +Copyright (C) 2010 Free Software Foundation, Inc. +This configure script is free software; the Free Software Foundation +gives unlimited permission to copy, distribute and modify it. +_ACEOF + exit +fi + +## ------------------------ ## +## Autoconf initialization. ## +## ------------------------ ## + +@%:@ ac_fn_c_try_compile LINENO +@%:@ -------------------------- +@%:@ Try to compile conftest.@S|@ac_ext, and return whether this succeeded. +ac_fn_c_try_compile () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + rm -f conftest.$ac_objext + if { { ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_compile") 2>conftest.err + ac_status=$? + if test -s conftest.err; then + grep -v '^ *+' conftest.err >conftest.er1 + cat conftest.er1 >&5 + mv -f conftest.er1 conftest.err + fi + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then : + ac_retval=0 +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_retval=1 +fi + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + as_fn_set_status $ac_retval + +} @%:@ ac_fn_c_try_compile + +@%:@ ac_fn_c_try_link LINENO +@%:@ ----------------------- +@%:@ Try to link conftest.@S|@ac_ext, and return whether this succeeded. +ac_fn_c_try_link () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + rm -f conftest.$ac_objext conftest$ac_exeext + if { { ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_link") 2>conftest.err + ac_status=$? + if test -s conftest.err; then + grep -v '^ *+' conftest.err >conftest.er1 + cat conftest.er1 >&5 + mv -f conftest.er1 conftest.err + fi + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then : + ac_retval=0 +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_retval=1 +fi + # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information + # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would + # interfere with the next link command; also delete a directory that is + # left behind by Apple's compiler. We do this before executing the actions. + rm -rf conftest.dSYM conftest_ipa8_conftest.oo + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + as_fn_set_status $ac_retval + +} @%:@ ac_fn_c_try_link + +@%:@ ac_fn_c_try_cpp LINENO +@%:@ ---------------------- +@%:@ Try to preprocess conftest.@S|@ac_ext, and return whether this succeeded. +ac_fn_c_try_cpp () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + if { { ac_try="$ac_cpp conftest.$ac_ext" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err + ac_status=$? + if test -s conftest.err; then + grep -v '^ *+' conftest.err >conftest.er1 + cat conftest.er1 >&5 + mv -f conftest.er1 conftest.err + fi + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } > conftest.i && { + test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || + test ! -s conftest.err + }; then : + ac_retval=0 +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_retval=1 +fi + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + as_fn_set_status $ac_retval + +} @%:@ ac_fn_c_try_cpp + +@%:@ ac_fn_c_check_header_mongrel LINENO HEADER VAR INCLUDES +@%:@ ------------------------------------------------------- +@%:@ Tests whether HEADER exists, giving a warning if it cannot be compiled using +@%:@ the include files in INCLUDES and setting the cache variable VAR +@%:@ accordingly. +ac_fn_c_check_header_mongrel () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + if eval \${$3+:} false; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 +$as_echo_n "checking for $2... " >&6; } +if eval \${$3+:} false; then : + $as_echo_n "(cached) " >&6 +fi +eval ac_res=\$$3 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +else + # Is the header compilable? +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 usability" >&5 +$as_echo_n "checking $2 usability... " >&6; } +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +$4 +@%:@include <$2> +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_header_compiler=yes +else + ac_header_compiler=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_compiler" >&5 +$as_echo "$ac_header_compiler" >&6; } + +# Is the header present? +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 presence" >&5 +$as_echo_n "checking $2 presence... " >&6; } +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +@%:@include <$2> +_ACEOF +if ac_fn_c_try_cpp "$LINENO"; then : + ac_header_preproc=yes +else + ac_header_preproc=no +fi +rm -f conftest.err conftest.i conftest.$ac_ext +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_preproc" >&5 +$as_echo "$ac_header_preproc" >&6; } + +# So? What about this header? +case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in #(( + yes:no: ) + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&5 +$as_echo "$as_me: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5 +$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;} + ;; + no:yes:* ) + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: present but cannot be compiled" >&5 +$as_echo "$as_me: WARNING: $2: present but cannot be compiled" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: check for missing prerequisite headers?" >&5 +$as_echo "$as_me: WARNING: $2: check for missing prerequisite headers?" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: see the Autoconf documentation" >&5 +$as_echo "$as_me: WARNING: $2: see the Autoconf documentation" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&5 +$as_echo "$as_me: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5 +$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;} +( $as_echo "## ----------------------------------- ## +## Report this to support@underbit.com ## +## ----------------------------------- ##" + ) | sed "s/^/$as_me: WARNING: /" >&2 + ;; +esac + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 +$as_echo_n "checking for $2... " >&6; } +if eval \${$3+:} false; then : + $as_echo_n "(cached) " >&6 +else + eval "$3=\$ac_header_compiler" +fi +eval ac_res=\$$3 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +fi + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + +} @%:@ ac_fn_c_check_header_mongrel + +@%:@ ac_fn_c_try_run LINENO +@%:@ ---------------------- +@%:@ Try to link conftest.@S|@ac_ext, and return whether this succeeded. Assumes +@%:@ that executables *can* be run. +ac_fn_c_try_run () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + if { { ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && { ac_try='./conftest$ac_exeext' + { { case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; }; then : + ac_retval=0 +else + $as_echo "$as_me: program exited with status $ac_status" >&5 + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_retval=$ac_status +fi + rm -rf conftest.dSYM conftest_ipa8_conftest.oo + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + as_fn_set_status $ac_retval + +} @%:@ ac_fn_c_try_run + +@%:@ ac_fn_c_check_header_compile LINENO HEADER VAR INCLUDES +@%:@ ------------------------------------------------------- +@%:@ Tests whether HEADER exists and can be compiled using the include files in +@%:@ INCLUDES, setting the cache variable VAR accordingly. +ac_fn_c_check_header_compile () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 +$as_echo_n "checking for $2... " >&6; } +if eval \${$3+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +$4 +@%:@include <$2> +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + eval "$3=yes" +else + eval "$3=no" +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +eval ac_res=\$$3 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + +} @%:@ ac_fn_c_check_header_compile + +@%:@ ac_fn_c_check_func LINENO FUNC VAR +@%:@ ---------------------------------- +@%:@ Tests whether FUNC exists, setting the cache variable VAR accordingly +ac_fn_c_check_func () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 +$as_echo_n "checking for $2... " >&6; } +if eval \${$3+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +/* Define $2 to an innocuous variant, in case declares $2. + For example, HP-UX 11i declares gettimeofday. */ +#define $2 innocuous_$2 + +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char $2 (); below. + Prefer to if __STDC__ is defined, since + exists even on freestanding compilers. */ + +#ifdef __STDC__ +# include +#else +# include +#endif + +#undef $2 + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char $2 (); +/* The GNU C library defines this for functions which it implements + to always fail with ENOSYS. Some functions are actually named + something starting with __ and the normal name is an alias. */ +#if defined __stub_$2 || defined __stub___$2 +choke me +#endif + +int +main () +{ +return $2 (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + eval "$3=yes" +else + eval "$3=no" +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +fi +eval ac_res=\$$3 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + +} @%:@ ac_fn_c_check_func + +@%:@ ac_fn_cxx_try_compile LINENO +@%:@ ---------------------------- +@%:@ Try to compile conftest.@S|@ac_ext, and return whether this succeeded. +ac_fn_cxx_try_compile () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + rm -f conftest.$ac_objext + if { { ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_compile") 2>conftest.err + ac_status=$? + if test -s conftest.err; then + grep -v '^ *+' conftest.err >conftest.er1 + cat conftest.er1 >&5 + mv -f conftest.er1 conftest.err + fi + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && { + test -z "$ac_cxx_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then : + ac_retval=0 +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_retval=1 +fi + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + as_fn_set_status $ac_retval + +} @%:@ ac_fn_cxx_try_compile + +@%:@ ac_fn_cxx_try_cpp LINENO +@%:@ ------------------------ +@%:@ Try to preprocess conftest.@S|@ac_ext, and return whether this succeeded. +ac_fn_cxx_try_cpp () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + if { { ac_try="$ac_cpp conftest.$ac_ext" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err + ac_status=$? + if test -s conftest.err; then + grep -v '^ *+' conftest.err >conftest.er1 + cat conftest.er1 >&5 + mv -f conftest.er1 conftest.err + fi + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } > conftest.i && { + test -z "$ac_cxx_preproc_warn_flag$ac_cxx_werror_flag" || + test ! -s conftest.err + }; then : + ac_retval=0 +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_retval=1 +fi + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + as_fn_set_status $ac_retval + +} @%:@ ac_fn_cxx_try_cpp + +@%:@ ac_fn_cxx_try_link LINENO +@%:@ ------------------------- +@%:@ Try to link conftest.@S|@ac_ext, and return whether this succeeded. +ac_fn_cxx_try_link () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + rm -f conftest.$ac_objext conftest$ac_exeext + if { { ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_link") 2>conftest.err + ac_status=$? + if test -s conftest.err; then + grep -v '^ *+' conftest.err >conftest.er1 + cat conftest.er1 >&5 + mv -f conftest.er1 conftest.err + fi + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && { + test -z "$ac_cxx_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then : + ac_retval=0 +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_retval=1 +fi + # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information + # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would + # interfere with the next link command; also delete a directory that is + # left behind by Apple's compiler. We do this before executing the actions. + rm -rf conftest.dSYM conftest_ipa8_conftest.oo + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + as_fn_set_status $ac_retval + +} @%:@ ac_fn_cxx_try_link + +@%:@ ac_fn_cxx_check_func LINENO FUNC VAR +@%:@ ------------------------------------ +@%:@ Tests whether FUNC exists, setting the cache variable VAR accordingly +ac_fn_cxx_check_func () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 +$as_echo_n "checking for $2... " >&6; } +if eval \${$3+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +/* Define $2 to an innocuous variant, in case declares $2. + For example, HP-UX 11i declares gettimeofday. */ +#define $2 innocuous_$2 + +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char $2 (); below. + Prefer to if __STDC__ is defined, since + exists even on freestanding compilers. */ + +#ifdef __STDC__ +# include +#else +# include +#endif + +#undef $2 + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char $2 (); +/* The GNU C library defines this for functions which it implements + to always fail with ENOSYS. Some functions are actually named + something starting with __ and the normal name is an alias. */ +#if defined __stub_$2 || defined __stub___$2 +choke me +#endif + +int +main () +{ +return $2 (); + ; + return 0; +} +_ACEOF +if ac_fn_cxx_try_link "$LINENO"; then : + eval "$3=yes" +else + eval "$3=no" +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +fi +eval ac_res=\$$3 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + +} @%:@ ac_fn_cxx_check_func + +@%:@ ac_fn_f77_try_compile LINENO +@%:@ ---------------------------- +@%:@ Try to compile conftest.@S|@ac_ext, and return whether this succeeded. +ac_fn_f77_try_compile () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + rm -f conftest.$ac_objext + if { { ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_compile") 2>conftest.err + ac_status=$? + if test -s conftest.err; then + grep -v '^ *+' conftest.err >conftest.er1 + cat conftest.er1 >&5 + mv -f conftest.er1 conftest.err + fi + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && { + test -z "$ac_f77_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then : + ac_retval=0 +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_retval=1 +fi + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + as_fn_set_status $ac_retval + +} @%:@ ac_fn_f77_try_compile + +@%:@ ac_fn_f77_try_link LINENO +@%:@ ------------------------- +@%:@ Try to link conftest.@S|@ac_ext, and return whether this succeeded. +ac_fn_f77_try_link () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + rm -f conftest.$ac_objext conftest$ac_exeext + if { { ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_link") 2>conftest.err + ac_status=$? + if test -s conftest.err; then + grep -v '^ *+' conftest.err >conftest.er1 + cat conftest.er1 >&5 + mv -f conftest.er1 conftest.err + fi + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && { + test -z "$ac_f77_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then : + ac_retval=0 +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_retval=1 +fi + # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information + # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would + # interfere with the next link command; also delete a directory that is + # left behind by Apple's compiler. We do this before executing the actions. + rm -rf conftest.dSYM conftest_ipa8_conftest.oo + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + as_fn_set_status $ac_retval + +} @%:@ ac_fn_f77_try_link +cat >config.log <<_ACEOF +This file contains any messages produced by compilers while +running configure, to aid debugging if configure makes a mistake. + +It was created by ID3 Tag $as_me 0.15.1b, which was +generated by GNU Autoconf 2.68. Invocation command line was + + $ $0 $@ + +_ACEOF +exec 5>>config.log +{ +cat <<_ASUNAME +## --------- ## +## Platform. ## +## --------- ## + +hostname = `(hostname || uname -n) 2>/dev/null | sed 1q` +uname -m = `(uname -m) 2>/dev/null || echo unknown` +uname -r = `(uname -r) 2>/dev/null || echo unknown` +uname -s = `(uname -s) 2>/dev/null || echo unknown` +uname -v = `(uname -v) 2>/dev/null || echo unknown` + +/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown` +/bin/uname -X = `(/bin/uname -X) 2>/dev/null || echo unknown` + +/bin/arch = `(/bin/arch) 2>/dev/null || echo unknown` +/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null || echo unknown` +/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown` +/usr/bin/hostinfo = `(/usr/bin/hostinfo) 2>/dev/null || echo unknown` +/bin/machine = `(/bin/machine) 2>/dev/null || echo unknown` +/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null || echo unknown` +/bin/universe = `(/bin/universe) 2>/dev/null || echo unknown` + +_ASUNAME + +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + $as_echo "PATH: $as_dir" + done +IFS=$as_save_IFS + +} >&5 + +cat >&5 <<_ACEOF + + +## ----------- ## +## Core tests. ## +## ----------- ## + +_ACEOF + + +# Keep a trace of the command line. +# Strip out --no-create and --no-recursion so they do not pile up. +# Strip out --silent because we don't want to record it for future runs. +# Also quote any args containing shell meta-characters. +# Make two passes to allow for proper duplicate-argument suppression. +ac_configure_args= +ac_configure_args0= +ac_configure_args1= +ac_must_keep_next=false +for ac_pass in 1 2 +do + for ac_arg + do + case $ac_arg in + -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;; + -q | -quiet | --quiet | --quie | --qui | --qu | --q \ + | -silent | --silent | --silen | --sile | --sil) + continue ;; + *\'*) + ac_arg=`$as_echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;; + esac + case $ac_pass in + 1) as_fn_append ac_configure_args0 " '$ac_arg'" ;; + 2) + as_fn_append ac_configure_args1 " '$ac_arg'" + if test $ac_must_keep_next = true; then + ac_must_keep_next=false # Got value, back to normal. + else + case $ac_arg in + *=* | --config-cache | -C | -disable-* | --disable-* \ + | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \ + | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \ + | -with-* | --with-* | -without-* | --without-* | --x) + case "$ac_configure_args0 " in + "$ac_configure_args1"*" '$ac_arg' "* ) continue ;; + esac + ;; + -* ) ac_must_keep_next=true ;; + esac + fi + as_fn_append ac_configure_args " '$ac_arg'" + ;; + esac + done +done +{ ac_configure_args0=; unset ac_configure_args0;} +{ ac_configure_args1=; unset ac_configure_args1;} + +# When interrupted or exit'd, cleanup temporary files, and complete +# config.log. We remove comments because anyway the quotes in there +# would cause problems or look ugly. +# WARNING: Use '\'' to represent an apostrophe within the trap. +# WARNING: Do not start the trap code with a newline, due to a FreeBSD 4.0 bug. +trap 'exit_status=$? + # Save into config.log some information that might help in debugging. + { + echo + + $as_echo "## ---------------- ## +## Cache variables. ## +## ---------------- ##" + echo + # The following way of writing the cache mishandles newlines in values, +( + for ac_var in `(set) 2>&1 | sed -n '\''s/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'\''`; do + eval ac_val=\$$ac_var + case $ac_val in #( + *${as_nl}*) + case $ac_var in #( + *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5 +$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;; + esac + case $ac_var in #( + _ | IFS | as_nl) ;; #( + BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #( + *) { eval $ac_var=; unset $ac_var;} ;; + esac ;; + esac + done + (set) 2>&1 | + case $as_nl`(ac_space='\'' '\''; set) 2>&1` in #( + *${as_nl}ac_space=\ *) + sed -n \ + "s/'\''/'\''\\\\'\'''\''/g; + s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\''\\2'\''/p" + ;; #( + *) + sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p" + ;; + esac | + sort +) + echo + + $as_echo "## ----------------- ## +## Output variables. ## +## ----------------- ##" + echo + for ac_var in $ac_subst_vars + do + eval ac_val=\$$ac_var + case $ac_val in + *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; + esac + $as_echo "$ac_var='\''$ac_val'\''" + done | sort + echo + + if test -n "$ac_subst_files"; then + $as_echo "## ------------------- ## +## File substitutions. ## +## ------------------- ##" + echo + for ac_var in $ac_subst_files + do + eval ac_val=\$$ac_var + case $ac_val in + *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; + esac + $as_echo "$ac_var='\''$ac_val'\''" + done | sort + echo + fi + + if test -s confdefs.h; then + $as_echo "## ----------- ## +## confdefs.h. ## +## ----------- ##" + echo + cat confdefs.h + echo + fi + test "$ac_signal" != 0 && + $as_echo "$as_me: caught signal $ac_signal" + $as_echo "$as_me: exit $exit_status" + } >&5 + rm -f core *.core core.conftest.* && + rm -f -r conftest* confdefs* conf$$* $ac_clean_files && + exit $exit_status +' 0 +for ac_signal in 1 2 13 15; do + trap 'ac_signal='$ac_signal'; as_fn_exit 1' $ac_signal +done +ac_signal=0 + +# confdefs.h avoids OS command line length limits that DEFS can exceed. +rm -f -r conftest* confdefs.h + +$as_echo "/* confdefs.h */" > confdefs.h + +# Predefined preprocessor variables. + +cat >>confdefs.h <<_ACEOF +@%:@define PACKAGE_NAME "$PACKAGE_NAME" +_ACEOF + +cat >>confdefs.h <<_ACEOF +@%:@define PACKAGE_TARNAME "$PACKAGE_TARNAME" +_ACEOF + +cat >>confdefs.h <<_ACEOF +@%:@define PACKAGE_VERSION "$PACKAGE_VERSION" +_ACEOF + +cat >>confdefs.h <<_ACEOF +@%:@define PACKAGE_STRING "$PACKAGE_STRING" +_ACEOF + +cat >>confdefs.h <<_ACEOF +@%:@define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT" +_ACEOF + +cat >>confdefs.h <<_ACEOF +@%:@define PACKAGE_URL "$PACKAGE_URL" +_ACEOF + + +# Let the site file select an alternate cache file if it wants to. +# Prefer an explicitly selected file to automatically selected ones. +ac_site_file1=NONE +ac_site_file2=NONE +if test -n "$CONFIG_SITE"; then + # We do not want a PATH search for config.site. + case $CONFIG_SITE in @%:@(( + -*) ac_site_file1=./$CONFIG_SITE;; + */*) ac_site_file1=$CONFIG_SITE;; + *) ac_site_file1=./$CONFIG_SITE;; + esac +elif test "x$prefix" != xNONE; then + ac_site_file1=$prefix/share/config.site + ac_site_file2=$prefix/etc/config.site +else + ac_site_file1=$ac_default_prefix/share/config.site + ac_site_file2=$ac_default_prefix/etc/config.site +fi +for ac_site_file in "$ac_site_file1" "$ac_site_file2" +do + test "x$ac_site_file" = xNONE && continue + if test /dev/null != "$ac_site_file" && test -r "$ac_site_file"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5 +$as_echo "$as_me: loading site script $ac_site_file" >&6;} + sed 's/^/| /' "$ac_site_file" >&5 + . "$ac_site_file" \ + || { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "failed to load site script $ac_site_file +See \`config.log' for more details" "$LINENO" 5; } + fi +done + +if test -r "$cache_file"; then + # Some versions of bash will fail to source /dev/null (special files + # actually), so we avoid doing that. DJGPP emulates it as a regular file. + if test /dev/null != "$cache_file" && test -f "$cache_file"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: loading cache $cache_file" >&5 +$as_echo "$as_me: loading cache $cache_file" >&6;} + case $cache_file in + [\\/]* | ?:[\\/]* ) . "$cache_file";; + *) . "./$cache_file";; + esac + fi +else + { $as_echo "$as_me:${as_lineno-$LINENO}: creating cache $cache_file" >&5 +$as_echo "$as_me: creating cache $cache_file" >&6;} + >$cache_file +fi + +# Check that the precious variables saved in the cache have kept the same +# value. +ac_cache_corrupted=false +for ac_var in $ac_precious_vars; do + eval ac_old_set=\$ac_cv_env_${ac_var}_set + eval ac_new_set=\$ac_env_${ac_var}_set + eval ac_old_val=\$ac_cv_env_${ac_var}_value + eval ac_new_val=\$ac_env_${ac_var}_value + case $ac_old_set,$ac_new_set in + set,) + { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5 +$as_echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;} + ac_cache_corrupted=: ;; + ,set) + { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was not set in the previous run" >&5 +$as_echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;} + ac_cache_corrupted=: ;; + ,);; + *) + if test "x$ac_old_val" != "x$ac_new_val"; then + # differences in whitespace do not lead to failure. + ac_old_val_w=`echo x $ac_old_val` + ac_new_val_w=`echo x $ac_new_val` + if test "$ac_old_val_w" != "$ac_new_val_w"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' has changed since the previous run:" >&5 +$as_echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;} + ac_cache_corrupted=: + else + { $as_echo "$as_me:${as_lineno-$LINENO}: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5 +$as_echo "$as_me: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&2;} + eval $ac_var=\$ac_old_val + fi + { $as_echo "$as_me:${as_lineno-$LINENO}: former value: \`$ac_old_val'" >&5 +$as_echo "$as_me: former value: \`$ac_old_val'" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: current value: \`$ac_new_val'" >&5 +$as_echo "$as_me: current value: \`$ac_new_val'" >&2;} + fi;; + esac + # Pass precious variables to config.status. + if test "$ac_new_set" = set; then + case $ac_new_val in + *\'*) ac_arg=$ac_var=`$as_echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;; + *) ac_arg=$ac_var=$ac_new_val ;; + esac + case " $ac_configure_args " in + *" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy. + *) as_fn_append ac_configure_args " '$ac_arg'" ;; + esac + fi +done +if $ac_cache_corrupted; then + { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: error: changes in the environment can compromise the build" >&5 +$as_echo "$as_me: error: changes in the environment can compromise the build" >&2;} + as_fn_error $? "run \`make distclean' and/or \`rm $cache_file' and start over" "$LINENO" 5 +fi +## -------------------- ## +## Main body of script. ## +## -------------------- ## + +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu + + + + + + +am__api_version="1.8" +ac_aux_dir= +for ac_dir in "$srcdir" "$srcdir/.." "$srcdir/../.."; do + if test -f "$ac_dir/install-sh"; then + ac_aux_dir=$ac_dir + ac_install_sh="$ac_aux_dir/install-sh -c" + break + elif test -f "$ac_dir/install.sh"; then + ac_aux_dir=$ac_dir + ac_install_sh="$ac_aux_dir/install.sh -c" + break + elif test -f "$ac_dir/shtool"; then + ac_aux_dir=$ac_dir + ac_install_sh="$ac_aux_dir/shtool install -c" + break + fi +done +if test -z "$ac_aux_dir"; then + as_fn_error $? "cannot find install-sh, install.sh, or shtool in \"$srcdir\" \"$srcdir/..\" \"$srcdir/../..\"" "$LINENO" 5 +fi + +# These three variables are undocumented and unsupported, +# and are intended to be withdrawn in a future Autoconf release. +# They can cause serious problems if a builder's source tree is in a directory +# whose full name contains unusual characters. +ac_config_guess="$SHELL $ac_aux_dir/config.guess" # Please don't use this var. +ac_config_sub="$SHELL $ac_aux_dir/config.sub" # Please don't use this var. +ac_configure="$SHELL $ac_aux_dir/configure" # Please don't use this var. + + +# Find a good install program. We prefer a C program (faster), +# so one script is as good as another. But avoid the broken or +# incompatible versions: +# SysV /etc/install, /usr/sbin/install +# SunOS /usr/etc/install +# IRIX /sbin/install +# AIX /bin/install +# AmigaOS /C/install, which installs bootblocks on floppy discs +# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag +# AFS /usr/afsws/bin/install, which mishandles nonexistent args +# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" +# OS/2's system install, which has a completely different semantic +# ./install, which can be erroneously created by make from ./install.sh. +# Reject install programs that cannot install multiple files. +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a BSD-compatible install" >&5 +$as_echo_n "checking for a BSD-compatible install... " >&6; } +if test -z "$INSTALL"; then +if ${ac_cv_path_install+:} false; then : + $as_echo_n "(cached) " >&6 +else + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + # Account for people who put trailing slashes in PATH elements. +case $as_dir/ in @%:@(( + ./ | .// | /[cC]/* | \ + /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \ + ?:[\\/]os2[\\/]install[\\/]* | ?:[\\/]OS2[\\/]INSTALL[\\/]* | \ + /usr/ucb/* ) ;; + *) + # OSF1 and SCO ODT 3.0 have their own names for install. + # Don't use installbsd from OSF since it installs stuff as root + # by default. + for ac_prog in ginstall scoinst install; do + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; }; then + if test $ac_prog = install && + grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then + # AIX install. It has an incompatible calling convention. + : + elif test $ac_prog = install && + grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then + # program-specific install script used by HP pwplus--don't use. + : + else + rm -rf conftest.one conftest.two conftest.dir + echo one > conftest.one + echo two > conftest.two + mkdir conftest.dir + if "$as_dir/$ac_prog$ac_exec_ext" -c conftest.one conftest.two "`pwd`/conftest.dir" && + test -s conftest.one && test -s conftest.two && + test -s conftest.dir/conftest.one && + test -s conftest.dir/conftest.two + then + ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c" + break 3 + fi + fi + fi + done + done + ;; +esac + + done +IFS=$as_save_IFS + +rm -rf conftest.one conftest.two conftest.dir + +fi + if test "${ac_cv_path_install+set}" = set; then + INSTALL=$ac_cv_path_install + else + # As a last resort, use the slow shell script. Don't cache a + # value for INSTALL within a source directory, because that will + # break other packages using the cache if that directory is + # removed, or if the value is a relative name. + INSTALL=$ac_install_sh + fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $INSTALL" >&5 +$as_echo "$INSTALL" >&6; } + +# Use test -z because SunOS4 sh mishandles braces in ${var-val}. +# It thinks the first close brace ends the variable substitution. +test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}' + +test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}' + +test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether build environment is sane" >&5 +$as_echo_n "checking whether build environment is sane... " >&6; } +# Just in case +sleep 1 +echo timestamp > conftest.file +# Do `set' in a subshell so we don't clobber the current shell's +# arguments. Must try -L first in case configure is actually a +# symlink; some systems play weird games with the mod time of symlinks +# (eg FreeBSD returns the mod time of the symlink's containing +# directory). +if ( + set X `ls -Lt $srcdir/configure conftest.file 2> /dev/null` + if test "$*" = "X"; then + # -L didn't work. + set X `ls -t $srcdir/configure conftest.file` + fi + rm -f conftest.file + if test "$*" != "X $srcdir/configure conftest.file" \ + && test "$*" != "X conftest.file $srcdir/configure"; then + + # If neither matched, then we have a broken ls. This can happen + # if, for instance, CONFIG_SHELL is bash and it inherits a + # broken ls alias from the environment. This has actually + # happened. Such a system could not be considered "sane". + as_fn_error $? "ls -t appears to fail. Make sure there is not a broken +alias in your environment" "$LINENO" 5 + fi + + test "$2" = conftest.file + ) +then + # Ok. + : +else + as_fn_error $? "newly created file is older than distributed files! +Check your system clock" "$LINENO" 5 +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } +test "$program_prefix" != NONE && + program_transform_name="s&^&$program_prefix&;$program_transform_name" +# Use a double $ so make ignores it. +test "$program_suffix" != NONE && + program_transform_name="s&\$&$program_suffix&;$program_transform_name" +# Double any \ or $. +# By default was `s,x,x', remove it if useless. +ac_script='s/[\\$]/&&/g;s/;s,x,x,$//' +program_transform_name=`$as_echo "$program_transform_name" | sed "$ac_script"` + +# expand $ac_aux_dir to an absolute path +am_aux_dir=`cd $ac_aux_dir && pwd` + +test x"${MISSING+set}" = xset || MISSING="\${SHELL} $am_aux_dir/missing" +# Use eval to expand $SHELL +if eval "$MISSING --run true"; then + am_missing_run="$MISSING --run " +else + am_missing_run= + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: \`missing' script is too old or missing" >&5 +$as_echo "$as_me: WARNING: \`missing' script is too old or missing" >&2;} +fi + +if mkdir -p -- . 2>/dev/null; then + # Keeping the `.' argument allows $(mkdir_p) to be used without + # argument. Indeed, we sometimes output rules like + # $(mkdir_p) $(somedir) + # where $(somedir) is conditionally defined. + # (`test -n '$(somedir)' && $(mkdir_p) $(somedir)' is a more + # expensive solution, as it forces Make to start a sub-shell.) + mkdir_p='mkdir -p -- .' +else + # On NextStep and OpenStep, the `mkdir' command does not + # recognize any option. It will interpret all options as + # directories to create, and then abort because `.' already + # exists. + for d in ./-p ./--; + do + test -d $d && rmdir $d + done + # $(mkinstalldirs) is defined by Automake if mkinstalldirs exists. + if test -f "$ac_aux_dir/mkinstalldirs"; then + mkdir_p='$(mkinstalldirs)' + else + mkdir_p='$(install_sh) -d' + fi +fi + +for ac_prog in gawk mawk nawk awk +do + # Extract the first word of "$ac_prog", so it can be a program name with args. +set dummy $ac_prog; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_AWK+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$AWK"; then + ac_cv_prog_AWK="$AWK" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_prog_AWK="$ac_prog" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +AWK=$ac_cv_prog_AWK +if test -n "$AWK"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AWK" >&5 +$as_echo "$AWK" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + test -n "$AWK" && break +done + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5 +$as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; } +set x ${MAKE-make} +ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'` +if eval \${ac_cv_prog_make_${ac_make}_set+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat >conftest.make <<\_ACEOF +SHELL = /bin/sh +all: + @echo '@@@%%%=$(MAKE)=@@@%%%' +_ACEOF +# GNU make sometimes prints "make[1]: Entering ...", which would confuse us. +case `${MAKE-make} -f conftest.make 2>/dev/null` in + *@@@%%%=?*=@@@%%%*) + eval ac_cv_prog_make_${ac_make}_set=yes;; + *) + eval ac_cv_prog_make_${ac_make}_set=no;; +esac +rm -f conftest.make +fi +if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + SET_MAKE= +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + SET_MAKE="MAKE=${MAKE-make}" +fi + +rm -rf .tst 2>/dev/null +mkdir .tst 2>/dev/null +if test -d .tst; then + am__leading_dot=. +else + am__leading_dot=_ +fi +rmdir .tst 2>/dev/null + +# test to see if srcdir already configured +if test "`cd $srcdir && pwd`" != "`pwd`" && + test -f $srcdir/config.status; then + as_fn_error $? "source directory already configured; run \"make distclean\" there first" "$LINENO" 5 +fi + +# test whether we have cygpath +if test -z "$CYGPATH_W"; then + if (cygpath --version) >/dev/null 2>/dev/null; then + CYGPATH_W='cygpath -w' + else + CYGPATH_W=echo + fi +fi + + +# Define the identity of the package. + PACKAGE='libid3tag' + VERSION='0.15.1b' + + +cat >>confdefs.h <<_ACEOF +@%:@define PACKAGE "$PACKAGE" +_ACEOF + + +cat >>confdefs.h <<_ACEOF +@%:@define VERSION "$VERSION" +_ACEOF + +# Some tools Automake needs. + +ACLOCAL=${ACLOCAL-"${am_missing_run}aclocal-${am__api_version}"} + + +AUTOCONF=${AUTOCONF-"${am_missing_run}autoconf"} + + +AUTOMAKE=${AUTOMAKE-"${am_missing_run}automake-${am__api_version}"} + + +AUTOHEADER=${AUTOHEADER-"${am_missing_run}autoheader"} + + +MAKEINFO=${MAKEINFO-"${am_missing_run}makeinfo"} + + +AMTAR=${AMTAR-"${am_missing_run}tar"} + +install_sh=${install_sh-"$am_aux_dir/install-sh"} + +# Installed binaries are usually stripped using `strip' when the user +# run `make install-strip'. However `strip' might not be the right +# tool to use in cross-compilation environments, therefore Automake +# will honor the `STRIP' environment variable to overrule this program. +if test "$cross_compiling" != no; then + if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args. +set dummy ${ac_tool_prefix}strip; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_STRIP+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$STRIP"; then + ac_cv_prog_STRIP="$STRIP" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_prog_STRIP="${ac_tool_prefix}strip" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +STRIP=$ac_cv_prog_STRIP +if test -n "$STRIP"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5 +$as_echo "$STRIP" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + +fi +if test -z "$ac_cv_prog_STRIP"; then + ac_ct_STRIP=$STRIP + # Extract the first word of "strip", so it can be a program name with args. +set dummy strip; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ac_ct_STRIP+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$ac_ct_STRIP"; then + ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_prog_ac_ct_STRIP="strip" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP +if test -n "$ac_ct_STRIP"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5 +$as_echo "$ac_ct_STRIP" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + if test "x$ac_ct_STRIP" = x; then + STRIP=":" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + STRIP=$ac_ct_STRIP + fi +else + STRIP="$ac_cv_prog_STRIP" +fi + +fi +INSTALL_STRIP_PROGRAM="\${SHELL} \$(install_sh) -c -s" + +# We need awk for the "check" target. The system "awk" is bad on +# some platforms. + + + + +ac_config_headers="$ac_config_headers config.h" + + + +# Make sure we can run config.sub. +$SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 || + as_fn_error $? "cannot run $SHELL $ac_aux_dir/config.sub" "$LINENO" 5 + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking build system type" >&5 +$as_echo_n "checking build system type... " >&6; } +if ${ac_cv_build+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_build_alias=$build_alias +test "x$ac_build_alias" = x && + ac_build_alias=`$SHELL "$ac_aux_dir/config.guess"` +test "x$ac_build_alias" = x && + as_fn_error $? "cannot guess build type; you must specify one" "$LINENO" 5 +ac_cv_build=`$SHELL "$ac_aux_dir/config.sub" $ac_build_alias` || + as_fn_error $? "$SHELL $ac_aux_dir/config.sub $ac_build_alias failed" "$LINENO" 5 + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build" >&5 +$as_echo "$ac_cv_build" >&6; } +case $ac_cv_build in +*-*-*) ;; +*) as_fn_error $? "invalid value of canonical build" "$LINENO" 5;; +esac +build=$ac_cv_build +ac_save_IFS=$IFS; IFS='-' +set x $ac_cv_build +shift +build_cpu=$1 +build_vendor=$2 +shift; shift +# Remember, the first character of IFS is used to create $*, +# except with old shells: +build_os=$* +IFS=$ac_save_IFS +case $build_os in *\ *) build_os=`echo "$build_os" | sed 's/ /-/g'`;; esac + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking host system type" >&5 +$as_echo_n "checking host system type... " >&6; } +if ${ac_cv_host+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test "x$host_alias" = x; then + ac_cv_host=$ac_cv_build +else + ac_cv_host=`$SHELL "$ac_aux_dir/config.sub" $host_alias` || + as_fn_error $? "$SHELL $ac_aux_dir/config.sub $host_alias failed" "$LINENO" 5 +fi + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_host" >&5 +$as_echo "$ac_cv_host" >&6; } +case $ac_cv_host in +*-*-*) ;; +*) as_fn_error $? "invalid value of canonical host" "$LINENO" 5;; +esac +host=$ac_cv_host +ac_save_IFS=$IFS; IFS='-' +set x $ac_cv_host +shift +host_cpu=$1 +host_vendor=$2 +shift; shift +# Remember, the first character of IFS is used to create $*, +# except with old shells: +host_os=$* +IFS=$ac_save_IFS +case $host_os in *\ *) host_os=`echo "$host_os" | sed 's/ /-/g'`;; esac + + + + +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu +if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args. +set dummy ${ac_tool_prefix}gcc; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_CC+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$CC"; then + ac_cv_prog_CC="$CC" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_prog_CC="${ac_tool_prefix}gcc" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +CC=$ac_cv_prog_CC +if test -n "$CC"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 +$as_echo "$CC" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + +fi +if test -z "$ac_cv_prog_CC"; then + ac_ct_CC=$CC + # Extract the first word of "gcc", so it can be a program name with args. +set dummy gcc; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ac_ct_CC+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$ac_ct_CC"; then + ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_prog_ac_ct_CC="gcc" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +ac_ct_CC=$ac_cv_prog_ac_ct_CC +if test -n "$ac_ct_CC"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 +$as_echo "$ac_ct_CC" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + if test "x$ac_ct_CC" = x; then + CC="" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + CC=$ac_ct_CC + fi +else + CC="$ac_cv_prog_CC" +fi + +if test -z "$CC"; then + if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args. +set dummy ${ac_tool_prefix}cc; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_CC+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$CC"; then + ac_cv_prog_CC="$CC" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_prog_CC="${ac_tool_prefix}cc" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +CC=$ac_cv_prog_CC +if test -n "$CC"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 +$as_echo "$CC" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + fi +fi +if test -z "$CC"; then + # Extract the first word of "cc", so it can be a program name with args. +set dummy cc; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_CC+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$CC"; then + ac_cv_prog_CC="$CC" # Let the user override the test. +else + ac_prog_rejected=no +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then + ac_prog_rejected=yes + continue + fi + ac_cv_prog_CC="cc" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +if test $ac_prog_rejected = yes; then + # We found a bogon in the path, so make sure we never use it. + set dummy $ac_cv_prog_CC + shift + if test $@%:@ != 0; then + # We chose a different compiler from the bogus one. + # However, it has the same basename, so the bogon will be chosen + # first if we set CC to just the basename; use the full file name. + shift + ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@" + fi +fi +fi +fi +CC=$ac_cv_prog_CC +if test -n "$CC"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 +$as_echo "$CC" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + +fi +if test -z "$CC"; then + if test -n "$ac_tool_prefix"; then + for ac_prog in cl.exe + do + # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. +set dummy $ac_tool_prefix$ac_prog; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_CC+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$CC"; then + ac_cv_prog_CC="$CC" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_prog_CC="$ac_tool_prefix$ac_prog" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +CC=$ac_cv_prog_CC +if test -n "$CC"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 +$as_echo "$CC" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + test -n "$CC" && break + done +fi +if test -z "$CC"; then + ac_ct_CC=$CC + for ac_prog in cl.exe +do + # Extract the first word of "$ac_prog", so it can be a program name with args. +set dummy $ac_prog; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ac_ct_CC+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$ac_ct_CC"; then + ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_prog_ac_ct_CC="$ac_prog" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +ac_ct_CC=$ac_cv_prog_ac_ct_CC +if test -n "$ac_ct_CC"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 +$as_echo "$ac_ct_CC" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + test -n "$ac_ct_CC" && break +done + + if test "x$ac_ct_CC" = x; then + CC="" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + CC=$ac_ct_CC + fi +fi + +fi + + +test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "no acceptable C compiler found in \$PATH +See \`config.log' for more details" "$LINENO" 5; } + +# Provide some information about the compiler. +$as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5 +set X $ac_compile +ac_compiler=$2 +for ac_option in --version -v -V -qversion; do + { { ac_try="$ac_compiler $ac_option >&5" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_compiler $ac_option >&5") 2>conftest.err + ac_status=$? + if test -s conftest.err; then + sed '10a\ +... rest of stderr output deleted ... + 10q' conftest.err >conftest.er1 + cat conftest.er1 >&5 + fi + rm -f conftest.er1 conftest.err + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } +done + +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +ac_clean_files_save=$ac_clean_files +ac_clean_files="$ac_clean_files a.out a.out.dSYM a.exe b.out" +# Try to create an executable without -o first, disregard a.out. +# It will help us diagnose broken compilers, and finding out an intuition +# of exeext. +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler works" >&5 +$as_echo_n "checking whether the C compiler works... " >&6; } +ac_link_default=`$as_echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'` + +# The possible output files: +ac_files="a.out conftest.exe conftest a.exe a_out.exe b.out conftest.*" + +ac_rmfiles= +for ac_file in $ac_files +do + case $ac_file in + *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;; + * ) ac_rmfiles="$ac_rmfiles $ac_file";; + esac +done +rm -f $ac_rmfiles + +if { { ac_try="$ac_link_default" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_link_default") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then : + # Autoconf-2.13 could set the ac_cv_exeext variable to `no'. +# So ignore a value of `no', otherwise this would lead to `EXEEXT = no' +# in a Makefile. We should not override ac_cv_exeext if it was cached, +# so that the user can short-circuit this test for compilers unknown to +# Autoconf. +for ac_file in $ac_files '' +do + test -f "$ac_file" || continue + case $ac_file in + *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) + ;; + [ab].out ) + # We found the default executable, but exeext='' is most + # certainly right. + break;; + *.* ) + if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no; + then :; else + ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` + fi + # We set ac_cv_exeext here because the later test for it is not + # safe: cross compilers may not add the suffix if given an `-o' + # argument, so we may need to know it at that point already. + # Even if this section looks crufty: it has the advantage of + # actually working. + break;; + * ) + break;; + esac +done +test "$ac_cv_exeext" = no && ac_cv_exeext= + +else + ac_file='' +fi +if test -z "$ac_file"; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +$as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error 77 "C compiler cannot create executables +See \`config.log' for more details" "$LINENO" 5; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler default output file name" >&5 +$as_echo_n "checking for C compiler default output file name... " >&6; } +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_file" >&5 +$as_echo "$ac_file" >&6; } +ac_exeext=$ac_cv_exeext + +rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_exeext b.out +ac_clean_files=$ac_clean_files_save +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of executables" >&5 +$as_echo_n "checking for suffix of executables... " >&6; } +if { { ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then : + # If both `conftest.exe' and `conftest' are `present' (well, observable) +# catch `conftest.exe'. For instance with Cygwin, `ls conftest' will +# work properly (i.e., refer to `conftest.exe'), while it won't with +# `rm'. +for ac_file in conftest.exe conftest conftest.*; do + test -f "$ac_file" || continue + case $ac_file in + *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;; + *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` + break;; + * ) break;; + esac +done +else + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "cannot compute suffix of executables: cannot compile and link +See \`config.log' for more details" "$LINENO" 5; } +fi +rm -f conftest conftest$ac_cv_exeext +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_exeext" >&5 +$as_echo "$ac_cv_exeext" >&6; } + +rm -f conftest.$ac_ext +EXEEXT=$ac_cv_exeext +ac_exeext=$EXEEXT +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +@%:@include +int +main () +{ +FILE *f = fopen ("conftest.out", "w"); + return ferror (f) || fclose (f) != 0; + + ; + return 0; +} +_ACEOF +ac_clean_files="$ac_clean_files conftest.out" +# Check that the compiler produces executables we can run. If not, either +# the compiler is broken, or we cross compile. +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5 +$as_echo_n "checking whether we are cross compiling... " >&6; } +if test "$cross_compiling" != yes; then + { { ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } + if { ac_try='./conftest$ac_cv_exeext' + { { case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; }; then + cross_compiling=no + else + if test "$cross_compiling" = maybe; then + cross_compiling=yes + else + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "cannot run C compiled programs. +If you meant to cross compile, use \`--host'. +See \`config.log' for more details" "$LINENO" 5; } + fi + fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5 +$as_echo "$cross_compiling" >&6; } + +rm -f conftest.$ac_ext conftest$ac_cv_exeext conftest.out +ac_clean_files=$ac_clean_files_save +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of object files" >&5 +$as_echo_n "checking for suffix of object files... " >&6; } +if ${ac_cv_objext+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +rm -f conftest.o conftest.obj +if { { ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_compile") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then : + for ac_file in conftest.o conftest.obj conftest.*; do + test -f "$ac_file" || continue; + case $ac_file in + *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM ) ;; + *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'` + break;; + esac +done +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "cannot compute suffix of object files: cannot compile +See \`config.log' for more details" "$LINENO" 5; } +fi +rm -f conftest.$ac_cv_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_objext" >&5 +$as_echo "$ac_cv_objext" >&6; } +OBJEXT=$ac_cv_objext +ac_objext=$OBJEXT +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5 +$as_echo_n "checking whether we are using the GNU C compiler... " >&6; } +if ${ac_cv_c_compiler_gnu+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ +#ifndef __GNUC__ + choke me +#endif + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_compiler_gnu=yes +else + ac_compiler_gnu=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +ac_cv_c_compiler_gnu=$ac_compiler_gnu + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5 +$as_echo "$ac_cv_c_compiler_gnu" >&6; } +if test $ac_compiler_gnu = yes; then + GCC=yes +else + GCC= +fi +ac_test_CFLAGS=${CFLAGS+set} +ac_save_CFLAGS=$CFLAGS +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5 +$as_echo_n "checking whether $CC accepts -g... " >&6; } +if ${ac_cv_prog_cc_g+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_save_c_werror_flag=$ac_c_werror_flag + ac_c_werror_flag=yes + ac_cv_prog_cc_g=no + CFLAGS="-g" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_cv_prog_cc_g=yes +else + CFLAGS="" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + +else + ac_c_werror_flag=$ac_save_c_werror_flag + CFLAGS="-g" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_cv_prog_cc_g=yes +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + ac_c_werror_flag=$ac_save_c_werror_flag +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5 +$as_echo "$ac_cv_prog_cc_g" >&6; } +if test "$ac_test_CFLAGS" = set; then + CFLAGS=$ac_save_CFLAGS +elif test $ac_cv_prog_cc_g = yes; then + if test "$GCC" = yes; then + CFLAGS="-g -O2" + else + CFLAGS="-g" + fi +else + if test "$GCC" = yes; then + CFLAGS="-O2" + else + CFLAGS= + fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5 +$as_echo_n "checking for $CC option to accept ISO C89... " >&6; } +if ${ac_cv_prog_cc_c89+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_cv_prog_cc_c89=no +ac_save_CC=$CC +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +#include +#include +#include +/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */ +struct buf { int x; }; +FILE * (*rcsopen) (struct buf *, struct stat *, int); +static char *e (p, i) + char **p; + int i; +{ + return p[i]; +} +static char *f (char * (*g) (char **, int), char **p, ...) +{ + char *s; + va_list v; + va_start (v,p); + s = g (p, va_arg (v,int)); + va_end (v); + return s; +} + +/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has + function prototypes and stuff, but not '\xHH' hex character constants. + These don't provoke an error unfortunately, instead are silently treated + as 'x'. The following induces an error, until -std is added to get + proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an + array size at least. It's necessary to write '\x00'==0 to get something + that's true only with -std. */ +int osf4_cc_array ['\x00' == 0 ? 1 : -1]; + +/* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters + inside strings and character constants. */ +#define FOO(x) 'x' +int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1]; + +int test (int i, double x); +struct s1 {int (*f) (int a);}; +struct s2 {int (*f) (double a);}; +int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int); +int argc; +char **argv; +int +main () +{ +return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]; + ; + return 0; +} +_ACEOF +for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \ + -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" +do + CC="$ac_save_CC $ac_arg" + if ac_fn_c_try_compile "$LINENO"; then : + ac_cv_prog_cc_c89=$ac_arg +fi +rm -f core conftest.err conftest.$ac_objext + test "x$ac_cv_prog_cc_c89" != "xno" && break +done +rm -f conftest.$ac_ext +CC=$ac_save_CC + +fi +# AC_CACHE_VAL +case "x$ac_cv_prog_cc_c89" in + x) + { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5 +$as_echo "none needed" >&6; } ;; + xno) + { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5 +$as_echo "unsupported" >&6; } ;; + *) + CC="$CC $ac_cv_prog_cc_c89" + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5 +$as_echo "$ac_cv_prog_cc_c89" >&6; } ;; +esac +if test "x$ac_cv_prog_cc_c89" != xno; then : + +fi + +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu +DEPDIR="${am__leading_dot}deps" + +ac_config_commands="$ac_config_commands depfiles" + + +am_make=${MAKE-make} +cat > confinc << 'END' +am__doit: + @echo done +.PHONY: am__doit +END +# If we don't find an include directive, just comment out the code. +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for style of include used by $am_make" >&5 +$as_echo_n "checking for style of include used by $am_make... " >&6; } +am__include="#" +am__quote= +_am_result=none +# First try GNU make style include. +echo "include confinc" > confmf +# We grep out `Entering directory' and `Leaving directory' +# messages which can occur if `w' ends up in MAKEFLAGS. +# In particular we don't look at `^make:' because GNU make might +# be invoked under some other name (usually "gmake"), in which +# case it prints its new name instead of `make'. +if test "`$am_make -s -f confmf 2> /dev/null | grep -v 'ing directory'`" = "done"; then + am__include=include + am__quote= + _am_result=GNU +fi +# Now try BSD make style include. +if test "$am__include" = "#"; then + echo '.include "confinc"' > confmf + if test "`$am_make -s -f confmf 2> /dev/null`" = "done"; then + am__include=.include + am__quote="\"" + _am_result=BSD + fi +fi + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $_am_result" >&5 +$as_echo "$_am_result" >&6; } +rm -f confinc confmf + +@%:@ Check whether --enable-dependency-tracking was given. +if test "${enable_dependency_tracking+set}" = set; then : + enableval=$enable_dependency_tracking; +fi + +if test "x$enable_dependency_tracking" != xno; then + am_depcomp="$ac_aux_dir/depcomp" + AMDEPBACKSLASH='\' +fi + + +if test "x$enable_dependency_tracking" != xno; then + AMDEP_TRUE= + AMDEP_FALSE='#' +else + AMDEP_TRUE='#' + AMDEP_FALSE= +fi + + + + +depcc="$CC" am_compiler_list= + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5 +$as_echo_n "checking dependency style of $depcc... " >&6; } +if ${am_cv_CC_dependencies_compiler_type+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then + # We make a subdir and do the tests there. Otherwise we can end up + # making bogus files that we don't know about and never remove. For + # instance it was reported that on HP-UX the gcc test will end up + # making a dummy file named `D' -- because `-MD' means `put the output + # in D'. + mkdir conftest.dir + # Copy depcomp to subdir because otherwise we won't find it if we're + # using a relative directory. + cp "$am_depcomp" conftest.dir + cd conftest.dir + # We will build objects and dependencies in a subdirectory because + # it helps to detect inapplicable dependency modes. For instance + # both Tru64's cc and ICC support -MD to output dependencies as a + # side effect of compilation, but ICC will put the dependencies in + # the current directory while Tru64 will put them in the object + # directory. + mkdir sub + + am_cv_CC_dependencies_compiler_type=none + if test "$am_compiler_list" = ""; then + am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp` + fi + for depmode in $am_compiler_list; do + # Setup a source with many dependencies, because some compilers + # like to wrap large dependency lists on column 80 (with \), and + # we should not choose a depcomp mode which is confused by this. + # + # We need to recreate these files for each test, as the compiler may + # overwrite some of them when testing with obscure command lines. + # This happens at least with the AIX C compiler. + : > sub/conftest.c + for i in 1 2 3 4 5 6; do + echo '#include "conftst'$i'.h"' >> sub/conftest.c + : > sub/conftst$i.h + done + echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf + + case $depmode in + nosideeffect) + # after this tag, mechanisms are not by side-effect, so they'll + # only be used when explicitly requested + if test "x$enable_dependency_tracking" = xyes; then + continue + else + break + fi + ;; + none) break ;; + esac + # We check with `-c' and `-o' for the sake of the "dashmstdout" + # mode. It turns out that the SunPro C++ compiler does not properly + # handle `-M -o', and we need to detect this. + if depmode=$depmode \ + source=sub/conftest.c object=sub/conftest.${OBJEXT-o} \ + depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ + $SHELL ./depcomp $depcc -c -o sub/conftest.${OBJEXT-o} sub/conftest.c \ + >/dev/null 2>conftest.err && + grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 && + grep sub/conftest.${OBJEXT-o} sub/conftest.Po > /dev/null 2>&1 && + ${MAKE-make} -s -f confmf > /dev/null 2>&1; then + # icc doesn't choke on unknown options, it will just issue warnings + # (even with -Werror). So we grep stderr for any message + # that says an option was ignored. + if grep 'ignoring option' conftest.err >/dev/null 2>&1; then :; else + am_cv_CC_dependencies_compiler_type=$depmode + break + fi + fi + done + + cd .. + rm -rf conftest.dir +else + am_cv_CC_dependencies_compiler_type=none +fi + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CC_dependencies_compiler_type" >&5 +$as_echo "$am_cv_CC_dependencies_compiler_type" >&6; } +CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type + + + +if + test "x$enable_dependency_tracking" != xno \ + && test "$am_cv_CC_dependencies_compiler_type" = gcc3; then + am__fastdepCC_TRUE= + am__fastdepCC_FALSE='#' +else + am__fastdepCC_TRUE='#' + am__fastdepCC_FALSE= +fi + + + +if test "$GCC" = yes +then + case "$host" in + *-*-mingw*) + case "$build" in + *-*-cygwin*) + CPPFLAGS="$CPPFLAGS -mno-cygwin" + LDFLAGS="$LDFLAGS -mno-cygwin" + ;; + esac + esac + +fi + + +@%:@ Check whether --enable-shared was given. +if test "${enable_shared+set}" = set; then : + enableval=$enable_shared; p=${PACKAGE-default} + case $enableval in + yes) enable_shared=yes ;; + no) enable_shared=no ;; + *) + enable_shared=no + # Look at the argument we got. We use all the common list separators. + lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," + for pkg in $enableval; do + IFS="$lt_save_ifs" + if test "X$pkg" = "X$p"; then + enable_shared=yes + fi + done + IFS="$lt_save_ifs" + ;; + esac +else + enable_shared=yes +fi + + +@%:@ Check whether --enable-static was given. +if test "${enable_static+set}" = set; then : + enableval=$enable_static; p=${PACKAGE-default} + case $enableval in + yes) enable_static=yes ;; + no) enable_static=no ;; + *) + enable_static=no + # Look at the argument we got. We use all the common list separators. + lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," + for pkg in $enableval; do + IFS="$lt_save_ifs" + if test "X$pkg" = "X$p"; then + enable_static=yes + fi + done + IFS="$lt_save_ifs" + ;; + esac +else + enable_static=yes +fi + + +@%:@ Check whether --enable-fast-install was given. +if test "${enable_fast_install+set}" = set; then : + enableval=$enable_fast_install; p=${PACKAGE-default} + case $enableval in + yes) enable_fast_install=yes ;; + no) enable_fast_install=no ;; + *) + enable_fast_install=no + # Look at the argument we got. We use all the common list separators. + lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," + for pkg in $enableval; do + IFS="$lt_save_ifs" + if test "X$pkg" = "X$p"; then + enable_fast_install=yes + fi + done + IFS="$lt_save_ifs" + ;; + esac +else + enable_fast_install=yes +fi + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a sed that does not truncate output" >&5 +$as_echo_n "checking for a sed that does not truncate output... " >&6; } +if ${lt_cv_path_SED+:} false; then : + $as_echo_n "(cached) " >&6 +else + # Loop through the user's path and test for sed and gsed. +# Then use that list of sed's as ones to test for truncation. +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for lt_ac_prog in sed gsed; do + for ac_exec_ext in '' $ac_executable_extensions; do + if $as_executable_p "$as_dir/$lt_ac_prog$ac_exec_ext"; then + lt_ac_sed_list="$lt_ac_sed_list $as_dir/$lt_ac_prog$ac_exec_ext" + fi + done + done +done +lt_ac_max=0 +lt_ac_count=0 +# Add /usr/xpg4/bin/sed as it is typically found on Solaris +# along with /bin/sed that truncates output. +for lt_ac_sed in $lt_ac_sed_list /usr/xpg4/bin/sed; do + test ! -f $lt_ac_sed && break + cat /dev/null > conftest.in + lt_ac_count=0 + echo $ECHO_N "0123456789$ECHO_C" >conftest.in + # Check for GNU sed and select it if it is found. + if "$lt_ac_sed" --version 2>&1 < /dev/null | grep 'GNU' > /dev/null; then + lt_cv_path_SED=$lt_ac_sed + break + fi + while true; do + cat conftest.in conftest.in >conftest.tmp + mv conftest.tmp conftest.in + cp conftest.in conftest.nl + echo >>conftest.nl + $lt_ac_sed -e 's/a$//' < conftest.nl >conftest.out || break + cmp -s conftest.out conftest.nl || break + # 10000 chars as input seems more than enough + test $lt_ac_count -gt 10 && break + lt_ac_count=`expr $lt_ac_count + 1` + if test $lt_ac_count -gt $lt_ac_max; then + lt_ac_max=$lt_ac_count + lt_cv_path_SED=$lt_ac_sed + fi + done +done +SED=$lt_cv_path_SED + +fi + +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $SED" >&5 +$as_echo "$SED" >&6; } + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5 +$as_echo_n "checking for grep that handles long lines and -e... " >&6; } +if ${ac_cv_path_GREP+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -z "$GREP"; then + ac_path_GREP_found=false + # Loop through the user's path and test for each of PROGNAME-LIST + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_prog in grep ggrep; do + for ac_exec_ext in '' $ac_executable_extensions; do + ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext" + { test -f "$ac_path_GREP" && $as_test_x "$ac_path_GREP"; } || continue +# Check for GNU ac_path_GREP and select it if it is found. + # Check for GNU $ac_path_GREP +case `"$ac_path_GREP" --version 2>&1` in +*GNU*) + ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;; +*) + ac_count=0 + $as_echo_n 0123456789 >"conftest.in" + while : + do + cat "conftest.in" "conftest.in" >"conftest.tmp" + mv "conftest.tmp" "conftest.in" + cp "conftest.in" "conftest.nl" + $as_echo 'GREP' >> "conftest.nl" + "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break + diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break + as_fn_arith $ac_count + 1 && ac_count=$as_val + if test $ac_count -gt ${ac_path_GREP_max-0}; then + # Best one so far, save it but keep looking for a better one + ac_cv_path_GREP="$ac_path_GREP" + ac_path_GREP_max=$ac_count + fi + # 10*(2^10) chars as input seems more than enough + test $ac_count -gt 10 && break + done + rm -f conftest.in conftest.tmp conftest.nl conftest.out;; +esac + + $ac_path_GREP_found && break 3 + done + done + done +IFS=$as_save_IFS + if test -z "$ac_cv_path_GREP"; then + as_fn_error $? "no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 + fi +else + ac_cv_path_GREP=$GREP +fi + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5 +$as_echo "$ac_cv_path_GREP" >&6; } + GREP="$ac_cv_path_GREP" + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5 +$as_echo_n "checking for egrep... " >&6; } +if ${ac_cv_path_EGREP+:} false; then : + $as_echo_n "(cached) " >&6 +else + if echo a | $GREP -E '(a|b)' >/dev/null 2>&1 + then ac_cv_path_EGREP="$GREP -E" + else + if test -z "$EGREP"; then + ac_path_EGREP_found=false + # Loop through the user's path and test for each of PROGNAME-LIST + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_prog in egrep; do + for ac_exec_ext in '' $ac_executable_extensions; do + ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext" + { test -f "$ac_path_EGREP" && $as_test_x "$ac_path_EGREP"; } || continue +# Check for GNU ac_path_EGREP and select it if it is found. + # Check for GNU $ac_path_EGREP +case `"$ac_path_EGREP" --version 2>&1` in +*GNU*) + ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;; +*) + ac_count=0 + $as_echo_n 0123456789 >"conftest.in" + while : + do + cat "conftest.in" "conftest.in" >"conftest.tmp" + mv "conftest.tmp" "conftest.in" + cp "conftest.in" "conftest.nl" + $as_echo 'EGREP' >> "conftest.nl" + "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break + diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break + as_fn_arith $ac_count + 1 && ac_count=$as_val + if test $ac_count -gt ${ac_path_EGREP_max-0}; then + # Best one so far, save it but keep looking for a better one + ac_cv_path_EGREP="$ac_path_EGREP" + ac_path_EGREP_max=$ac_count + fi + # 10*(2^10) chars as input seems more than enough + test $ac_count -gt 10 && break + done + rm -f conftest.in conftest.tmp conftest.nl conftest.out;; +esac + + $ac_path_EGREP_found && break 3 + done + done + done +IFS=$as_save_IFS + if test -z "$ac_cv_path_EGREP"; then + as_fn_error $? "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 + fi +else + ac_cv_path_EGREP=$EGREP +fi + + fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5 +$as_echo "$ac_cv_path_EGREP" >&6; } + EGREP="$ac_cv_path_EGREP" + + + +@%:@ Check whether --with-gnu-ld was given. +if test "${with_gnu_ld+set}" = set; then : + withval=$with_gnu_ld; test "$withval" = no || with_gnu_ld=yes +else + with_gnu_ld=no +fi + +ac_prog=ld +if test "$GCC" = yes; then + # Check if gcc -print-prog-name=ld gives a path. + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld used by $CC" >&5 +$as_echo_n "checking for ld used by $CC... " >&6; } + case $host in + *-*-mingw*) + # gcc leaves a trailing carriage return which upsets mingw + ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; + *) + ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; + esac + case $ac_prog in + # Accept absolute paths. + [\\/]* | ?:[\\/]*) + re_direlt='/[^/][^/]*/\.\./' + # Canonicalize the pathname of ld + ac_prog=`echo $ac_prog| $SED 's%\\\\%/%g'` + while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do + ac_prog=`echo $ac_prog| $SED "s%$re_direlt%/%"` + done + test -z "$LD" && LD="$ac_prog" + ;; + "") + # If it fails, then pretend we aren't using GCC. + ac_prog=ld + ;; + *) + # If it is relative, then search for the first ld in PATH. + with_gnu_ld=unknown + ;; + esac +elif test "$with_gnu_ld" = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5 +$as_echo_n "checking for GNU ld... " >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5 +$as_echo_n "checking for non-GNU ld... " >&6; } +fi +if ${lt_cv_path_LD+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -z "$LD"; then + lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR + for ac_dir in $PATH; do + IFS="$lt_save_ifs" + test -z "$ac_dir" && ac_dir=. + if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then + lt_cv_path_LD="$ac_dir/$ac_prog" + # Check to see if the program is GNU ld. I'd rather use --version, + # but apparently some GNU ld's only accept -v. + # Break only if it was the GNU/non-GNU ld that we prefer. + case `"$lt_cv_path_LD" -v 2>&1 &5 +$as_echo "$LD" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi +test -z "$LD" && as_fn_error $? "no acceptable ld found in \$PATH" "$LINENO" 5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5 +$as_echo_n "checking if the linker ($LD) is GNU ld... " >&6; } +if ${lt_cv_prog_gnu_ld+:} false; then : + $as_echo_n "(cached) " >&6 +else + # I'd rather use --version here, but apparently some GNU ld's only accept -v. +case `$LD -v 2>&1 &5 +$as_echo "$lt_cv_prog_gnu_ld" >&6; } +with_gnu_ld=$lt_cv_prog_gnu_ld + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $LD option to reload object files" >&5 +$as_echo_n "checking for $LD option to reload object files... " >&6; } +if ${lt_cv_ld_reload_flag+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_ld_reload_flag='-r' +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_reload_flag" >&5 +$as_echo "$lt_cv_ld_reload_flag" >&6; } +reload_flag=$lt_cv_ld_reload_flag +case $reload_flag in +"" | " "*) ;; +*) reload_flag=" $reload_flag" ;; +esac +reload_cmds='$LD$reload_flag -o $output$reload_objs' + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for BSD-compatible nm" >&5 +$as_echo_n "checking for BSD-compatible nm... " >&6; } +if ${lt_cv_path_NM+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$NM"; then + # Let the user override the test. + lt_cv_path_NM="$NM" +else + lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR + for ac_dir in $PATH /usr/ccs/bin /usr/ucb /bin; do + IFS="$lt_save_ifs" + test -z "$ac_dir" && ac_dir=. + tmp_nm="$ac_dir/${ac_tool_prefix}nm" + if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then + # Check to see if the nm accepts a BSD-compat flag. + # Adding the `sed 1q' prevents false positives on HP-UX, which says: + # nm: unknown option "B" ignored + # Tru64's nm complains that /dev/null is an invalid object file + case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in + */dev/null* | *'Invalid file or object type'*) + lt_cv_path_NM="$tmp_nm -B" + break + ;; + *) + case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in + */dev/null*) + lt_cv_path_NM="$tmp_nm -p" + break + ;; + *) + lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but + continue # so that we can try to find one that supports BSD flags + ;; + esac + esac + fi + done + IFS="$lt_save_ifs" + test -z "$lt_cv_path_NM" && lt_cv_path_NM=nm +fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_NM" >&5 +$as_echo "$lt_cv_path_NM" >&6; } +NM="$lt_cv_path_NM" + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ln -s works" >&5 +$as_echo_n "checking whether ln -s works... " >&6; } +LN_S=$as_ln_s +if test "$LN_S" = "ln -s"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no, using $LN_S" >&5 +$as_echo "no, using $LN_S" >&6; } +fi + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to recognise dependent libraries" >&5 +$as_echo_n "checking how to recognise dependent libraries... " >&6; } +if ${lt_cv_deplibs_check_method+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_file_magic_cmd='$MAGIC_CMD' +lt_cv_file_magic_test_file= +lt_cv_deplibs_check_method='unknown' +# Need to set the preceding variable on all platforms that support +# interlibrary dependencies. +# 'none' -- dependencies not supported. +# `unknown' -- same as none, but documents that we really don't know. +# 'pass_all' -- all dependencies passed with no checks. +# 'test_compile' -- check by making test program. +# 'file_magic [[regex]]' -- check by looking for files in library path +# which responds to the $file_magic_cmd with a given extended regex. +# If you have `file' or equivalent on your system and you're not sure +# whether `pass_all' will *always* work, you probably want this one. + +case $host_os in +aix4* | aix5*) + lt_cv_deplibs_check_method=pass_all + ;; + +beos*) + lt_cv_deplibs_check_method=pass_all + ;; + +bsdi4*) + lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib)' + lt_cv_file_magic_cmd='/usr/bin/file -L' + lt_cv_file_magic_test_file=/shlib/libc.so + ;; + +cygwin*) + # win32_libid is a shell function defined in ltmain.sh + lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL' + lt_cv_file_magic_cmd='win32_libid' + ;; + +mingw* | pw32*) + # Base MSYS/MinGW do not provide the 'file' command needed by + # win32_libid shell function, so use a weaker test based on 'objdump'. + lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?' + lt_cv_file_magic_cmd='$OBJDUMP -f' + ;; + +darwin* | rhapsody*) + lt_cv_deplibs_check_method=pass_all + ;; + +freebsd* | kfreebsd*-gnu) + if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then + case $host_cpu in + i*86 ) + # Not sure whether the presence of OpenBSD here was a mistake. + # Let's accept both of them until this is cleared up. + lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD)/i[3-9]86 (compact )?demand paged shared library' + lt_cv_file_magic_cmd=/usr/bin/file + lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` + ;; + esac + else + lt_cv_deplibs_check_method=pass_all + fi + ;; + +gnu*) + lt_cv_deplibs_check_method=pass_all + ;; + +hpux10.20* | hpux11*) + lt_cv_file_magic_cmd=/usr/bin/file + case "$host_cpu" in + ia64*) + lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF-[0-9][0-9]) shared object file - IA64' + lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so + ;; + hppa*64*) + lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF-[0-9][0-9]) shared object file - PA-RISC [0-9].[0-9]' + lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl + ;; + *) + lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|PA-RISC[0-9].[0-9]) shared library' + lt_cv_file_magic_test_file=/usr/lib/libc.sl + ;; + esac + ;; + +irix5* | irix6* | nonstopux*) + case $LD in + *-32|*"-32 ") libmagic=32-bit;; + *-n32|*"-n32 ") libmagic=N32;; + *-64|*"-64 ") libmagic=64-bit;; + *) libmagic=never-match;; + esac + lt_cv_deplibs_check_method=pass_all + ;; + +# This must be Linux ELF. +linux*) + lt_cv_deplibs_check_method=pass_all + ;; + +netbsd* | knetbsd*-gnu) + if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then + lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|_pic\.a)$' + else + lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so|_pic\.a)$' + fi + ;; + +newos6*) + lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (executable|dynamic lib)' + lt_cv_file_magic_cmd=/usr/bin/file + lt_cv_file_magic_test_file=/usr/lib/libnls.so + ;; + +nto-qnx*) + lt_cv_deplibs_check_method=unknown + ;; + +openbsd*) + lt_cv_file_magic_cmd=/usr/bin/file + lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` + if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then + lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB shared object' + else + lt_cv_deplibs_check_method='file_magic OpenBSD.* shared library' + fi + ;; + +osf3* | osf4* | osf5*) + lt_cv_deplibs_check_method=pass_all + ;; + +sco3.2v5*) + lt_cv_deplibs_check_method=pass_all + ;; + +solaris*) + lt_cv_deplibs_check_method=pass_all + ;; + +sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) + case $host_vendor in + motorola) + lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib) M[0-9][0-9]* Version [0-9]' + lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*` + ;; + ncr) + lt_cv_deplibs_check_method=pass_all + ;; + sequent) + lt_cv_file_magic_cmd='/bin/file' + lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )' + ;; + sni) + lt_cv_file_magic_cmd='/bin/file' + lt_cv_deplibs_check_method="file_magic ELF [0-9][0-9]*-bit [LM]SB dynamic lib" + lt_cv_file_magic_test_file=/lib/libc.so + ;; + siemens) + lt_cv_deplibs_check_method=pass_all + ;; + esac + ;; + +sysv5OpenUNIX8* | sysv5UnixWare7* | sysv5uw[78]* | unixware7* | sysv4*uw2*) + lt_cv_deplibs_check_method=pass_all + ;; +esac + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_deplibs_check_method" >&5 +$as_echo "$lt_cv_deplibs_check_method" >&6; } +file_magic_cmd=$lt_cv_file_magic_cmd +deplibs_check_method=$lt_cv_deplibs_check_method +test -z "$deplibs_check_method" && deplibs_check_method=unknown + + + + +# If no C compiler was specified, use CC. +LTCC=${LTCC-"$CC"} + +# Allow CC to be a program name with arguments. +compiler=$CC + + +@%:@ Check whether --enable-libtool-lock was given. +if test "${enable_libtool_lock+set}" = set; then : + enableval=$enable_libtool_lock; +fi + +test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes + +# Some flags need to be propagated to the compiler or linker for good +# libtool support. +case $host in +ia64-*-hpux*) + # Find out which ABI we are using. + echo 'int i;' > conftest.$ac_ext + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 + (eval $ac_compile) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + case `/usr/bin/file conftest.$ac_objext` in + *ELF-32*) + HPUX_IA64_MODE="32" + ;; + *ELF-64*) + HPUX_IA64_MODE="64" + ;; + esac + fi + rm -rf conftest* + ;; +*-*-irix6*) + # Find out which ABI we are using. + echo '#line __oline__ "configure"' > conftest.$ac_ext + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 + (eval $ac_compile) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + if test "$lt_cv_prog_gnu_ld" = yes; then + case `/usr/bin/file conftest.$ac_objext` in + *32-bit*) + LD="${LD-ld} -melf32bsmip" + ;; + *N32*) + LD="${LD-ld} -melf32bmipn32" + ;; + *64-bit*) + LD="${LD-ld} -melf64bmip" + ;; + esac + else + case `/usr/bin/file conftest.$ac_objext` in + *32-bit*) + LD="${LD-ld} -32" + ;; + *N32*) + LD="${LD-ld} -n32" + ;; + *64-bit*) + LD="${LD-ld} -64" + ;; + esac + fi + fi + rm -rf conftest* + ;; + +x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*|s390*-*linux*|sparc*-*linux*) + # Find out which ABI we are using. + echo 'int i;' > conftest.$ac_ext + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 + (eval $ac_compile) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + case "`/usr/bin/file conftest.o`" in + *32-bit*) + case $host in + x86_64-*linux*) + LD="${LD-ld} -m elf_i386" + ;; + ppc64-*linux*|powerpc64-*linux*) + LD="${LD-ld} -m elf32ppclinux" + ;; + s390x-*linux*) + LD="${LD-ld} -m elf_s390" + ;; + sparc64-*linux*) + LD="${LD-ld} -m elf32_sparc" + ;; + esac + ;; + *64-bit*) + case $host in + x86_64-*linux*) + LD="${LD-ld} -m elf_x86_64" + ;; + ppc*-*linux*|powerpc*-*linux*) + LD="${LD-ld} -m elf64ppc" + ;; + s390*-*linux*) + LD="${LD-ld} -m elf64_s390" + ;; + sparc*-*linux*) + LD="${LD-ld} -m elf64_sparc" + ;; + esac + ;; + esac + fi + rm -rf conftest* + ;; + +*-*-sco3.2v5*) + # On SCO OpenServer 5, we need -belf to get full-featured binaries. + SAVE_CFLAGS="$CFLAGS" + CFLAGS="$CFLAGS -belf" + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler needs -belf" >&5 +$as_echo_n "checking whether the C compiler needs -belf... " >&6; } +if ${lt_cv_cc_needs_belf+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu + + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + lt_cv_cc_needs_belf=yes +else + lt_cv_cc_needs_belf=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_cc_needs_belf" >&5 +$as_echo "$lt_cv_cc_needs_belf" >&6; } + if test x"$lt_cv_cc_needs_belf" != x"yes"; then + # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf + CFLAGS="$SAVE_CFLAGS" + fi + ;; + +esac + +need_locks="$enable_libtool_lock" + + +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&5 +$as_echo_n "checking how to run the C preprocessor... " >&6; } +# On Suns, sometimes $CPP names a directory. +if test -n "$CPP" && test -d "$CPP"; then + CPP= +fi +if test -z "$CPP"; then + if ${ac_cv_prog_CPP+:} false; then : + $as_echo_n "(cached) " >&6 +else + # Double quotes because CPP needs to be expanded + for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp" + do + ac_preproc_ok=false +for ac_c_preproc_warn_flag in '' yes +do + # Use a header file that comes with gcc, so configuring glibc + # with a fresh cross-compiler works. + # Prefer to if __STDC__ is defined, since + # exists even on freestanding compilers. + # On the NeXT, cc -E runs the code through the compiler's parser, + # not just through cpp. "Syntax error" is here to catch this case. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +@%:@ifdef __STDC__ +@%:@ include +@%:@else +@%:@ include +@%:@endif + Syntax error +_ACEOF +if ac_fn_c_try_cpp "$LINENO"; then : + +else + # Broken: fails on valid input. +continue +fi +rm -f conftest.err conftest.i conftest.$ac_ext + + # OK, works on sane cases. Now check whether nonexistent headers + # can be detected and how. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +@%:@include +_ACEOF +if ac_fn_c_try_cpp "$LINENO"; then : + # Broken: success on invalid input. +continue +else + # Passes both tests. +ac_preproc_ok=: +break +fi +rm -f conftest.err conftest.i conftest.$ac_ext + +done +# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. +rm -f conftest.i conftest.err conftest.$ac_ext +if $ac_preproc_ok; then : + break +fi + + done + ac_cv_prog_CPP=$CPP + +fi + CPP=$ac_cv_prog_CPP +else + ac_cv_prog_CPP=$CPP +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $CPP" >&5 +$as_echo "$CPP" >&6; } +ac_preproc_ok=false +for ac_c_preproc_warn_flag in '' yes +do + # Use a header file that comes with gcc, so configuring glibc + # with a fresh cross-compiler works. + # Prefer to if __STDC__ is defined, since + # exists even on freestanding compilers. + # On the NeXT, cc -E runs the code through the compiler's parser, + # not just through cpp. "Syntax error" is here to catch this case. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +@%:@ifdef __STDC__ +@%:@ include +@%:@else +@%:@ include +@%:@endif + Syntax error +_ACEOF +if ac_fn_c_try_cpp "$LINENO"; then : + +else + # Broken: fails on valid input. +continue +fi +rm -f conftest.err conftest.i conftest.$ac_ext + + # OK, works on sane cases. Now check whether nonexistent headers + # can be detected and how. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +@%:@include +_ACEOF +if ac_fn_c_try_cpp "$LINENO"; then : + # Broken: success on invalid input. +continue +else + # Passes both tests. +ac_preproc_ok=: +break +fi +rm -f conftest.err conftest.i conftest.$ac_ext + +done +# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. +rm -f conftest.i conftest.err conftest.$ac_ext +if $ac_preproc_ok; then : + +else + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "C preprocessor \"$CPP\" fails sanity check +See \`config.log' for more details" "$LINENO" 5; } +fi + +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5 +$as_echo_n "checking for ANSI C header files... " >&6; } +if ${ac_cv_header_stdc+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +#include +#include +#include + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_cv_header_stdc=yes +else + ac_cv_header_stdc=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + +if test $ac_cv_header_stdc = yes; then + # SunOS 4.x string.h does not declare mem*, contrary to ANSI. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "memchr" >/dev/null 2>&1; then : + +else + ac_cv_header_stdc=no +fi +rm -f conftest* + +fi + +if test $ac_cv_header_stdc = yes; then + # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "free" >/dev/null 2>&1; then : + +else + ac_cv_header_stdc=no +fi +rm -f conftest* + +fi + +if test $ac_cv_header_stdc = yes; then + # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi. + if test "$cross_compiling" = yes; then : + : +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +#include +#if ((' ' & 0x0FF) == 0x020) +# define ISLOWER(c) ('a' <= (c) && (c) <= 'z') +# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) +#else +# define ISLOWER(c) \ + (('a' <= (c) && (c) <= 'i') \ + || ('j' <= (c) && (c) <= 'r') \ + || ('s' <= (c) && (c) <= 'z')) +# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c)) +#endif + +#define XOR(e, f) (((e) && !(f)) || (!(e) && (f))) +int +main () +{ + int i; + for (i = 0; i < 256; i++) + if (XOR (islower (i), ISLOWER (i)) + || toupper (i) != TOUPPER (i)) + return 2; + return 0; +} +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + +else + ac_cv_header_stdc=no +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext +fi + +fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5 +$as_echo "$ac_cv_header_stdc" >&6; } +if test $ac_cv_header_stdc = yes; then + +$as_echo "@%:@define STDC_HEADERS 1" >>confdefs.h + +fi + +# On IRIX 5.3, sys/types and inttypes.h are conflicting. +for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \ + inttypes.h stdint.h unistd.h +do : + as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` +ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default +" +if eval test \"x\$"$as_ac_Header"\" = x"yes"; then : + cat >>confdefs.h <<_ACEOF +@%:@define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 +_ACEOF + +fi + +done + + +for ac_header in dlfcn.h +do : + ac_fn_c_check_header_mongrel "$LINENO" "dlfcn.h" "ac_cv_header_dlfcn_h" "$ac_includes_default" +if test "x$ac_cv_header_dlfcn_h" = xyes; then : + cat >>confdefs.h <<_ACEOF +@%:@define HAVE_DLFCN_H 1 +_ACEOF + +fi + +done + +ac_ext=cpp +ac_cpp='$CXXCPP $CPPFLAGS' +ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_cxx_compiler_gnu +if test -z "$CXX"; then + if test -n "$CCC"; then + CXX=$CCC + else + if test -n "$ac_tool_prefix"; then + for ac_prog in g++ c++ gpp aCC CC cxx cc++ cl.exe FCC KCC RCC xlC_r xlC + do + # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. +set dummy $ac_tool_prefix$ac_prog; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_CXX+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$CXX"; then + ac_cv_prog_CXX="$CXX" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_prog_CXX="$ac_tool_prefix$ac_prog" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +CXX=$ac_cv_prog_CXX +if test -n "$CXX"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CXX" >&5 +$as_echo "$CXX" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + test -n "$CXX" && break + done +fi +if test -z "$CXX"; then + ac_ct_CXX=$CXX + for ac_prog in g++ c++ gpp aCC CC cxx cc++ cl.exe FCC KCC RCC xlC_r xlC +do + # Extract the first word of "$ac_prog", so it can be a program name with args. +set dummy $ac_prog; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ac_ct_CXX+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$ac_ct_CXX"; then + ac_cv_prog_ac_ct_CXX="$ac_ct_CXX" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_prog_ac_ct_CXX="$ac_prog" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +ac_ct_CXX=$ac_cv_prog_ac_ct_CXX +if test -n "$ac_ct_CXX"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CXX" >&5 +$as_echo "$ac_ct_CXX" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + test -n "$ac_ct_CXX" && break +done + + if test "x$ac_ct_CXX" = x; then + CXX="g++" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + CXX=$ac_ct_CXX + fi +fi + + fi +fi +# Provide some information about the compiler. +$as_echo "$as_me:${as_lineno-$LINENO}: checking for C++ compiler version" >&5 +set X $ac_compile +ac_compiler=$2 +for ac_option in --version -v -V -qversion; do + { { ac_try="$ac_compiler $ac_option >&5" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_compiler $ac_option >&5") 2>conftest.err + ac_status=$? + if test -s conftest.err; then + sed '10a\ +... rest of stderr output deleted ... + 10q' conftest.err >conftest.er1 + cat conftest.er1 >&5 + fi + rm -f conftest.er1 conftest.err + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } +done + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C++ compiler" >&5 +$as_echo_n "checking whether we are using the GNU C++ compiler... " >&6; } +if ${ac_cv_cxx_compiler_gnu+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ +#ifndef __GNUC__ + choke me +#endif + + ; + return 0; +} +_ACEOF +if ac_fn_cxx_try_compile "$LINENO"; then : + ac_compiler_gnu=yes +else + ac_compiler_gnu=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +ac_cv_cxx_compiler_gnu=$ac_compiler_gnu + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_cxx_compiler_gnu" >&5 +$as_echo "$ac_cv_cxx_compiler_gnu" >&6; } +if test $ac_compiler_gnu = yes; then + GXX=yes +else + GXX= +fi +ac_test_CXXFLAGS=${CXXFLAGS+set} +ac_save_CXXFLAGS=$CXXFLAGS +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CXX accepts -g" >&5 +$as_echo_n "checking whether $CXX accepts -g... " >&6; } +if ${ac_cv_prog_cxx_g+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_save_cxx_werror_flag=$ac_cxx_werror_flag + ac_cxx_werror_flag=yes + ac_cv_prog_cxx_g=no + CXXFLAGS="-g" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_cxx_try_compile "$LINENO"; then : + ac_cv_prog_cxx_g=yes +else + CXXFLAGS="" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_cxx_try_compile "$LINENO"; then : + +else + ac_cxx_werror_flag=$ac_save_cxx_werror_flag + CXXFLAGS="-g" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_cxx_try_compile "$LINENO"; then : + ac_cv_prog_cxx_g=yes +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + ac_cxx_werror_flag=$ac_save_cxx_werror_flag +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cxx_g" >&5 +$as_echo "$ac_cv_prog_cxx_g" >&6; } +if test "$ac_test_CXXFLAGS" = set; then + CXXFLAGS=$ac_save_CXXFLAGS +elif test $ac_cv_prog_cxx_g = yes; then + if test "$GXX" = yes; then + CXXFLAGS="-g -O2" + else + CXXFLAGS="-g" + fi +else + if test "$GXX" = yes; then + CXXFLAGS="-O2" + else + CXXFLAGS= + fi +fi +ac_ext=cpp +ac_cpp='$CXXCPP $CPPFLAGS' +ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_cxx_compiler_gnu + +depcc="$CXX" am_compiler_list= + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5 +$as_echo_n "checking dependency style of $depcc... " >&6; } +if ${am_cv_CXX_dependencies_compiler_type+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then + # We make a subdir and do the tests there. Otherwise we can end up + # making bogus files that we don't know about and never remove. For + # instance it was reported that on HP-UX the gcc test will end up + # making a dummy file named `D' -- because `-MD' means `put the output + # in D'. + mkdir conftest.dir + # Copy depcomp to subdir because otherwise we won't find it if we're + # using a relative directory. + cp "$am_depcomp" conftest.dir + cd conftest.dir + # We will build objects and dependencies in a subdirectory because + # it helps to detect inapplicable dependency modes. For instance + # both Tru64's cc and ICC support -MD to output dependencies as a + # side effect of compilation, but ICC will put the dependencies in + # the current directory while Tru64 will put them in the object + # directory. + mkdir sub + + am_cv_CXX_dependencies_compiler_type=none + if test "$am_compiler_list" = ""; then + am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp` + fi + for depmode in $am_compiler_list; do + # Setup a source with many dependencies, because some compilers + # like to wrap large dependency lists on column 80 (with \), and + # we should not choose a depcomp mode which is confused by this. + # + # We need to recreate these files for each test, as the compiler may + # overwrite some of them when testing with obscure command lines. + # This happens at least with the AIX C compiler. + : > sub/conftest.c + for i in 1 2 3 4 5 6; do + echo '#include "conftst'$i'.h"' >> sub/conftest.c + : > sub/conftst$i.h + done + echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf + + case $depmode in + nosideeffect) + # after this tag, mechanisms are not by side-effect, so they'll + # only be used when explicitly requested + if test "x$enable_dependency_tracking" = xyes; then + continue + else + break + fi + ;; + none) break ;; + esac + # We check with `-c' and `-o' for the sake of the "dashmstdout" + # mode. It turns out that the SunPro C++ compiler does not properly + # handle `-M -o', and we need to detect this. + if depmode=$depmode \ + source=sub/conftest.c object=sub/conftest.${OBJEXT-o} \ + depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ + $SHELL ./depcomp $depcc -c -o sub/conftest.${OBJEXT-o} sub/conftest.c \ + >/dev/null 2>conftest.err && + grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 && + grep sub/conftest.${OBJEXT-o} sub/conftest.Po > /dev/null 2>&1 && + ${MAKE-make} -s -f confmf > /dev/null 2>&1; then + # icc doesn't choke on unknown options, it will just issue warnings + # (even with -Werror). So we grep stderr for any message + # that says an option was ignored. + if grep 'ignoring option' conftest.err >/dev/null 2>&1; then :; else + am_cv_CXX_dependencies_compiler_type=$depmode + break + fi + fi + done + + cd .. + rm -rf conftest.dir +else + am_cv_CXX_dependencies_compiler_type=none +fi + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CXX_dependencies_compiler_type" >&5 +$as_echo "$am_cv_CXX_dependencies_compiler_type" >&6; } +CXXDEPMODE=depmode=$am_cv_CXX_dependencies_compiler_type + + + +if + test "x$enable_dependency_tracking" != xno \ + && test "$am_cv_CXX_dependencies_compiler_type" = gcc3; then + am__fastdepCXX_TRUE= + am__fastdepCXX_FALSE='#' +else + am__fastdepCXX_TRUE='#' + am__fastdepCXX_FALSE= +fi + + +ac_ext=cpp +ac_cpp='$CXXCPP $CPPFLAGS' +ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_cxx_compiler_gnu +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C++ preprocessor" >&5 +$as_echo_n "checking how to run the C++ preprocessor... " >&6; } +if test -z "$CXXCPP"; then + if ${ac_cv_prog_CXXCPP+:} false; then : + $as_echo_n "(cached) " >&6 +else + # Double quotes because CXXCPP needs to be expanded + for CXXCPP in "$CXX -E" "/lib/cpp" + do + ac_preproc_ok=false +for ac_cxx_preproc_warn_flag in '' yes +do + # Use a header file that comes with gcc, so configuring glibc + # with a fresh cross-compiler works. + # Prefer to if __STDC__ is defined, since + # exists even on freestanding compilers. + # On the NeXT, cc -E runs the code through the compiler's parser, + # not just through cpp. "Syntax error" is here to catch this case. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +@%:@ifdef __STDC__ +@%:@ include +@%:@else +@%:@ include +@%:@endif + Syntax error +_ACEOF +if ac_fn_cxx_try_cpp "$LINENO"; then : + +else + # Broken: fails on valid input. +continue +fi +rm -f conftest.err conftest.i conftest.$ac_ext + + # OK, works on sane cases. Now check whether nonexistent headers + # can be detected and how. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +@%:@include +_ACEOF +if ac_fn_cxx_try_cpp "$LINENO"; then : + # Broken: success on invalid input. +continue +else + # Passes both tests. +ac_preproc_ok=: +break +fi +rm -f conftest.err conftest.i conftest.$ac_ext + +done +# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. +rm -f conftest.i conftest.err conftest.$ac_ext +if $ac_preproc_ok; then : + break +fi + + done + ac_cv_prog_CXXCPP=$CXXCPP + +fi + CXXCPP=$ac_cv_prog_CXXCPP +else + ac_cv_prog_CXXCPP=$CXXCPP +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $CXXCPP" >&5 +$as_echo "$CXXCPP" >&6; } +ac_preproc_ok=false +for ac_cxx_preproc_warn_flag in '' yes +do + # Use a header file that comes with gcc, so configuring glibc + # with a fresh cross-compiler works. + # Prefer to if __STDC__ is defined, since + # exists even on freestanding compilers. + # On the NeXT, cc -E runs the code through the compiler's parser, + # not just through cpp. "Syntax error" is here to catch this case. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +@%:@ifdef __STDC__ +@%:@ include +@%:@else +@%:@ include +@%:@endif + Syntax error +_ACEOF +if ac_fn_cxx_try_cpp "$LINENO"; then : + +else + # Broken: fails on valid input. +continue +fi +rm -f conftest.err conftest.i conftest.$ac_ext + + # OK, works on sane cases. Now check whether nonexistent headers + # can be detected and how. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +@%:@include +_ACEOF +if ac_fn_cxx_try_cpp "$LINENO"; then : + # Broken: success on invalid input. +continue +else + # Passes both tests. +ac_preproc_ok=: +break +fi +rm -f conftest.err conftest.i conftest.$ac_ext + +done +# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. +rm -f conftest.i conftest.err conftest.$ac_ext +if $ac_preproc_ok; then : + +else + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "C++ preprocessor \"$CXXCPP\" fails sanity check +See \`config.log' for more details" "$LINENO" 5; } +fi + +ac_ext=cpp +ac_cpp='$CXXCPP $CPPFLAGS' +ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_cxx_compiler_gnu + + +ac_ext=f +ac_compile='$F77 -c $FFLAGS conftest.$ac_ext >&5' +ac_link='$F77 -o conftest$ac_exeext $FFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_f77_compiler_gnu +if test -n "$ac_tool_prefix"; then + for ac_prog in g77 xlf f77 frt pgf77 cf77 fort77 fl32 af77 xlf90 f90 pgf90 pghpf epcf90 gfortran g95 xlf95 f95 fort ifort ifc efc pgfortran pgf95 lf95 ftn + do + # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. +set dummy $ac_tool_prefix$ac_prog; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_F77+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$F77"; then + ac_cv_prog_F77="$F77" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_prog_F77="$ac_tool_prefix$ac_prog" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +F77=$ac_cv_prog_F77 +if test -n "$F77"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $F77" >&5 +$as_echo "$F77" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + test -n "$F77" && break + done +fi +if test -z "$F77"; then + ac_ct_F77=$F77 + for ac_prog in g77 xlf f77 frt pgf77 cf77 fort77 fl32 af77 xlf90 f90 pgf90 pghpf epcf90 gfortran g95 xlf95 f95 fort ifort ifc efc pgfortran pgf95 lf95 ftn +do + # Extract the first word of "$ac_prog", so it can be a program name with args. +set dummy $ac_prog; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ac_ct_F77+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$ac_ct_F77"; then + ac_cv_prog_ac_ct_F77="$ac_ct_F77" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_prog_ac_ct_F77="$ac_prog" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +ac_ct_F77=$ac_cv_prog_ac_ct_F77 +if test -n "$ac_ct_F77"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_F77" >&5 +$as_echo "$ac_ct_F77" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + test -n "$ac_ct_F77" && break +done + + if test "x$ac_ct_F77" = x; then + F77="" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + F77=$ac_ct_F77 + fi +fi + + +# Provide some information about the compiler. +$as_echo "$as_me:${as_lineno-$LINENO}: checking for Fortran 77 compiler version" >&5 +set X $ac_compile +ac_compiler=$2 +for ac_option in --version -v -V -qversion; do + { { ac_try="$ac_compiler $ac_option >&5" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_compiler $ac_option >&5") 2>conftest.err + ac_status=$? + if test -s conftest.err; then + sed '10a\ +... rest of stderr output deleted ... + 10q' conftest.err >conftest.er1 + cat conftest.er1 >&5 + fi + rm -f conftest.er1 conftest.err + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } +done +rm -f a.out + +# If we don't use `.F' as extension, the preprocessor is not run on the +# input file. (Note that this only needs to work for GNU compilers.) +ac_save_ext=$ac_ext +ac_ext=F +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU Fortran 77 compiler" >&5 +$as_echo_n "checking whether we are using the GNU Fortran 77 compiler... " >&6; } +if ${ac_cv_f77_compiler_gnu+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat > conftest.$ac_ext <<_ACEOF + program main +#ifndef __GNUC__ + choke me +#endif + + end +_ACEOF +if ac_fn_f77_try_compile "$LINENO"; then : + ac_compiler_gnu=yes +else + ac_compiler_gnu=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +ac_cv_f77_compiler_gnu=$ac_compiler_gnu + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_f77_compiler_gnu" >&5 +$as_echo "$ac_cv_f77_compiler_gnu" >&6; } +ac_ext=$ac_save_ext +ac_test_FFLAGS=${FFLAGS+set} +ac_save_FFLAGS=$FFLAGS +FFLAGS= +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $F77 accepts -g" >&5 +$as_echo_n "checking whether $F77 accepts -g... " >&6; } +if ${ac_cv_prog_f77_g+:} false; then : + $as_echo_n "(cached) " >&6 +else + FFLAGS=-g +cat > conftest.$ac_ext <<_ACEOF + program main + + end +_ACEOF +if ac_fn_f77_try_compile "$LINENO"; then : + ac_cv_prog_f77_g=yes +else + ac_cv_prog_f77_g=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_f77_g" >&5 +$as_echo "$ac_cv_prog_f77_g" >&6; } +if test "$ac_test_FFLAGS" = set; then + FFLAGS=$ac_save_FFLAGS +elif test $ac_cv_prog_f77_g = yes; then + if test "x$ac_cv_f77_compiler_gnu" = xyes; then + FFLAGS="-g -O2" + else + FFLAGS="-g" + fi +else + if test "x$ac_cv_f77_compiler_gnu" = xyes; then + FFLAGS="-O2" + else + FFLAGS= + fi +fi + +if test $ac_compiler_gnu = yes; then + G77=yes +else + G77= +fi +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu + + + +# Autoconf 2.13's AC_OBJEXT and AC_EXEEXT macros only works for C compilers! + +# find the maximum length of command line arguments +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking the maximum length of command line arguments" >&5 +$as_echo_n "checking the maximum length of command line arguments... " >&6; } +if ${lt_cv_sys_max_cmd_len+:} false; then : + $as_echo_n "(cached) " >&6 +else + i=0 + testring="ABCD" + + case $build_os in + msdosdjgpp*) + # On DJGPP, this test can blow up pretty badly due to problems in libc + # (any single argument exceeding 2000 bytes causes a buffer overrun + # during glob expansion). Even if it were fixed, the result of this + # check would be larger than it should be. + lt_cv_sys_max_cmd_len=12288; # 12K is about right + ;; + + gnu*) + # Under GNU Hurd, this test is not required because there is + # no limit to the length of command line arguments. + # Libtool will interpret -1 as no limit whatsoever + lt_cv_sys_max_cmd_len=-1; + ;; + + cygwin* | mingw*) + # On Win9x/ME, this test blows up -- it succeeds, but takes + # about 5 minutes as the teststring grows exponentially. + # Worse, since 9x/ME are not pre-emptively multitasking, + # you end up with a "frozen" computer, even though with patience + # the test eventually succeeds (with a max line length of 256k). + # Instead, let's just punt: use the minimum linelength reported by + # all of the supported platforms: 8192 (on NT/2K/XP). + lt_cv_sys_max_cmd_len=8192; + ;; + + amigaos*) + # On AmigaOS with pdksh, this test takes hours, literally. + # So we just punt and use a minimum line length of 8192. + lt_cv_sys_max_cmd_len=8192; + ;; + + *) + # If test is not a shell built-in, we'll probably end up computing a + # maximum length that is only half of the actual maximum length, but + # we can't tell. + while (test "X"`$CONFIG_SHELL $0 --fallback-echo "X$testring" 2>/dev/null` \ + = "XX$testring") >/dev/null 2>&1 && + new_result=`expr "X$testring" : ".*" 2>&1` && + lt_cv_sys_max_cmd_len=$new_result && + test $i != 17 # 1/2 MB should be enough + do + i=`expr $i + 1` + testring=$testring$testring + done + testring= + # Add a significant safety factor because C++ compilers can tack on massive + # amounts of additional arguments before passing them to the linker. + # It appears as though 1/2 is a usable value. + lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2` + ;; + esac + +fi + +if test -n $lt_cv_sys_max_cmd_len ; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sys_max_cmd_len" >&5 +$as_echo "$lt_cv_sys_max_cmd_len" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: none" >&5 +$as_echo "none" >&6; } +fi + + + + +# Check for command to grab the raw symbol name followed by C symbol from nm. +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking command to parse $NM output from $compiler object" >&5 +$as_echo_n "checking command to parse $NM output from $compiler object... " >&6; } +if ${lt_cv_sys_global_symbol_pipe+:} false; then : + $as_echo_n "(cached) " >&6 +else + +# These are sane defaults that work on at least a few old systems. +# [They come from Ultrix. What could be older than Ultrix?!! ;)] + +# Character class describing NM global symbol codes. +symcode='[BCDEGRST]' + +# Regexp to match symbols that can be accessed directly from C. +sympat='\([_A-Za-z][_A-Za-z0-9]*\)' + +# Transform the above into a raw symbol and a C symbol. +symxfrm='\1 \2\3 \3' + +# Transform an extracted symbol line into a proper C declaration +lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^. .* \(.*\)$/extern int \1;/p'" + +# Transform an extracted symbol line into symbol name and symbol address +lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([^ ]*\) $/ {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode \([^ ]*\) \([^ ]*\)$/ {\"\2\", (lt_ptr) \&\2},/p'" + +# Define system-specific variables. +case $host_os in +aix*) + symcode='[BCDT]' + ;; +cygwin* | mingw* | pw32*) + symcode='[ABCDGISTW]' + ;; +hpux*) # Its linker distinguishes data from code symbols + if test "$host_cpu" = ia64; then + symcode='[ABCDEGRST]' + fi + lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'" + lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([^ ]*\) $/ {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode* \([^ ]*\) \([^ ]*\)$/ {\"\2\", (lt_ptr) \&\2},/p'" + ;; +irix* | nonstopux*) + symcode='[BCDEGRST]' + ;; +osf*) + symcode='[BCDEGQRST]' + ;; +solaris* | sysv5*) + symcode='[BDRT]' + ;; +sysv4) + symcode='[DFNSTU]' + ;; +esac + +# Handle CRLF in mingw tool chain +opt_cr= +case $build_os in +mingw*) + opt_cr=`echo 'x\{0,1\}' | tr x '\015'` # option cr in regexp + ;; +esac + +# If we're using GNU nm, then use its standard symbol codes. +case `$NM -V 2>&1` in +*GNU* | *'with BFD'*) + symcode='[ABCDGIRSTW]' ;; +esac + +# Try without a prefix undercore, then with it. +for ac_symprfx in "" "_"; do + + # Write the raw and C identifiers. + lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[ ]\($symcode$symcode*\)[ ][ ]*\($ac_symprfx\)$sympat$opt_cr$/$symxfrm/p'" + + # Check to see that the pipe works correctly. + pipe_works=no + + rm -f conftest* + cat > conftest.$ac_ext <&5 + (eval $ac_compile) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + # Now try to grab the symbols. + nlist=conftest.nm + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $nlist\""; } >&5 + (eval $NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $nlist) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && test -s "$nlist"; then + # Try sorting and uniquifying the output. + if sort "$nlist" | uniq > "$nlist"T; then + mv -f "$nlist"T "$nlist" + else + rm -f "$nlist"T + fi + + # Make sure that we snagged all the symbols we need. + if grep ' nm_test_var$' "$nlist" >/dev/null; then + if grep ' nm_test_func$' "$nlist" >/dev/null; then + cat < conftest.$ac_ext +#ifdef __cplusplus +extern "C" { +#endif + +EOF + # Now generate the symbol file. + eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | grep -v main >> conftest.$ac_ext' + + cat <> conftest.$ac_ext +#if defined (__STDC__) && __STDC__ +# define lt_ptr_t void * +#else +# define lt_ptr_t char * +# define const +#endif + +/* The mapping between symbol names and symbols. */ +const struct { + const char *name; + lt_ptr_t address; +} +lt_preloaded_symbols[] = +{ +EOF + $SED "s/^$symcode$symcode* \(.*\) \(.*\)$/ {\"\2\", (lt_ptr_t) \&\2},/" < "$nlist" | grep -v main >> conftest.$ac_ext + cat <<\EOF >> conftest.$ac_ext + {0, (lt_ptr_t) 0} +}; + +#ifdef __cplusplus +} +#endif +EOF + # Now try linking the two files. + mv conftest.$ac_objext conftstm.$ac_objext + lt_save_LIBS="$LIBS" + lt_save_CFLAGS="$CFLAGS" + LIBS="conftstm.$ac_objext" + CFLAGS="$CFLAGS$lt_prog_compiler_no_builtin_flag" + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 + (eval $ac_link) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && test -s conftest${ac_exeext}; then + pipe_works=yes + fi + LIBS="$lt_save_LIBS" + CFLAGS="$lt_save_CFLAGS" + else + echo "cannot find nm_test_func in $nlist" >&5 + fi + else + echo "cannot find nm_test_var in $nlist" >&5 + fi + else + echo "cannot run $lt_cv_sys_global_symbol_pipe" >&5 + fi + else + echo "$progname: failed program was:" >&5 + cat conftest.$ac_ext >&5 + fi + rm -f conftest* conftst* + + # Do not use the global_symbol_pipe unless it works. + if test "$pipe_works" = yes; then + break + else + lt_cv_sys_global_symbol_pipe= + fi +done + +fi + +if test -z "$lt_cv_sys_global_symbol_pipe"; then + lt_cv_sys_global_symbol_to_cdecl= +fi +if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: failed" >&5 +$as_echo "failed" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: ok" >&5 +$as_echo "ok" >&6; } +fi + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for objdir" >&5 +$as_echo_n "checking for objdir... " >&6; } +if ${lt_cv_objdir+:} false; then : + $as_echo_n "(cached) " >&6 +else + rm -f .libs 2>/dev/null +mkdir .libs 2>/dev/null +if test -d .libs; then + lt_cv_objdir=.libs +else + # MS-DOS does not allow filenames that begin with a dot. + lt_cv_objdir=_libs +fi +rmdir .libs 2>/dev/null +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_objdir" >&5 +$as_echo "$lt_cv_objdir" >&6; } +objdir=$lt_cv_objdir + + + + + +case $host_os in +aix3*) + # AIX sometimes has problems with the GCC collect2 program. For some + # reason, if we set the COLLECT_NAMES environment variable, the problems + # vanish in a puff of smoke. + if test "X${COLLECT_NAMES+set}" != Xset; then + COLLECT_NAMES= + export COLLECT_NAMES + fi + ;; +esac + +# Sed substitution that helps us do robust quoting. It backslashifies +# metacharacters that are still active within double-quoted strings. +Xsed='sed -e s/^X//' +sed_quote_subst='s/\([\\"\\`$\\\\]\)/\\\1/g' + +# Same as above, but do not quote variable references. +double_quote_subst='s/\([\\"\\`\\\\]\)/\\\1/g' + +# Sed substitution to delay expansion of an escaped shell variable in a +# double_quote_subst'ed string. +delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g' + +# Sed substitution to avoid accidental globbing in evaled expressions +no_glob_subst='s/\*/\\\*/g' + +# Constants: +rm="rm -f" + +# Global variables: +default_ofile=libtool +can_build_shared=yes + +# All known linkers require a `.a' archive for static linking (except M$VC, +# which needs '.lib'). +libext=a +ltmain="$ac_aux_dir/ltmain.sh" +ofile="$default_ofile" +with_gnu_ld="$lt_cv_prog_gnu_ld" + +if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args. +set dummy ${ac_tool_prefix}ar; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_AR+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$AR"; then + ac_cv_prog_AR="$AR" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_prog_AR="${ac_tool_prefix}ar" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +AR=$ac_cv_prog_AR +if test -n "$AR"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AR" >&5 +$as_echo "$AR" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + +fi +if test -z "$ac_cv_prog_AR"; then + ac_ct_AR=$AR + # Extract the first word of "ar", so it can be a program name with args. +set dummy ar; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ac_ct_AR+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$ac_ct_AR"; then + ac_cv_prog_ac_ct_AR="$ac_ct_AR" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_prog_ac_ct_AR="ar" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +ac_ct_AR=$ac_cv_prog_ac_ct_AR +if test -n "$ac_ct_AR"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_AR" >&5 +$as_echo "$ac_ct_AR" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + if test "x$ac_ct_AR" = x; then + AR="false" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + AR=$ac_ct_AR + fi +else + AR="$ac_cv_prog_AR" +fi + +if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args. +set dummy ${ac_tool_prefix}ranlib; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_RANLIB+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$RANLIB"; then + ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +RANLIB=$ac_cv_prog_RANLIB +if test -n "$RANLIB"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $RANLIB" >&5 +$as_echo "$RANLIB" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + +fi +if test -z "$ac_cv_prog_RANLIB"; then + ac_ct_RANLIB=$RANLIB + # Extract the first word of "ranlib", so it can be a program name with args. +set dummy ranlib; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ac_ct_RANLIB+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$ac_ct_RANLIB"; then + ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_prog_ac_ct_RANLIB="ranlib" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB +if test -n "$ac_ct_RANLIB"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_RANLIB" >&5 +$as_echo "$ac_ct_RANLIB" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + if test "x$ac_ct_RANLIB" = x; then + RANLIB=":" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + RANLIB=$ac_ct_RANLIB + fi +else + RANLIB="$ac_cv_prog_RANLIB" +fi + +if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args. +set dummy ${ac_tool_prefix}strip; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_STRIP+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$STRIP"; then + ac_cv_prog_STRIP="$STRIP" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_prog_STRIP="${ac_tool_prefix}strip" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +STRIP=$ac_cv_prog_STRIP +if test -n "$STRIP"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5 +$as_echo "$STRIP" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + +fi +if test -z "$ac_cv_prog_STRIP"; then + ac_ct_STRIP=$STRIP + # Extract the first word of "strip", so it can be a program name with args. +set dummy strip; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ac_ct_STRIP+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$ac_ct_STRIP"; then + ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_prog_ac_ct_STRIP="strip" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP +if test -n "$ac_ct_STRIP"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5 +$as_echo "$ac_ct_STRIP" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + if test "x$ac_ct_STRIP" = x; then + STRIP=":" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + STRIP=$ac_ct_STRIP + fi +else + STRIP="$ac_cv_prog_STRIP" +fi + + +old_CC="$CC" +old_CFLAGS="$CFLAGS" + +# Set sane defaults for various variables +test -z "$AR" && AR=ar +test -z "$AR_FLAGS" && AR_FLAGS=cru +test -z "$AS" && AS=as +test -z "$CC" && CC=cc +test -z "$LTCC" && LTCC=$CC +test -z "$DLLTOOL" && DLLTOOL=dlltool +test -z "$LD" && LD=ld +test -z "$LN_S" && LN_S="ln -s" +test -z "$MAGIC_CMD" && MAGIC_CMD=file +test -z "$NM" && NM=nm +test -z "$SED" && SED=sed +test -z "$OBJDUMP" && OBJDUMP=objdump +test -z "$RANLIB" && RANLIB=: +test -z "$STRIP" && STRIP=: +test -z "$ac_objext" && ac_objext=o + +# Determine commands to create old-style static archives. +old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs$old_deplibs' +old_postinstall_cmds='chmod 644 $oldlib' +old_postuninstall_cmds= + +if test -n "$RANLIB"; then + case $host_os in + openbsd*) + old_postinstall_cmds="\$RANLIB -t \$oldlib~$old_postinstall_cmds" + ;; + *) + old_postinstall_cmds="\$RANLIB \$oldlib~$old_postinstall_cmds" + ;; + esac + old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib" +fi + +# Only perform the check for file, if the check method requires it +case $deplibs_check_method in +file_magic*) + if test "$file_magic_cmd" = '$MAGIC_CMD'; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ${ac_tool_prefix}file" >&5 +$as_echo_n "checking for ${ac_tool_prefix}file... " >&6; } +if ${lt_cv_path_MAGIC_CMD+:} false; then : + $as_echo_n "(cached) " >&6 +else + case $MAGIC_CMD in +[\\/*] | ?:[\\/]*) + lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path. + ;; +*) + lt_save_MAGIC_CMD="$MAGIC_CMD" + lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR + ac_dummy="/usr/bin$PATH_SEPARATOR$PATH" + for ac_dir in $ac_dummy; do + IFS="$lt_save_ifs" + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/${ac_tool_prefix}file; then + lt_cv_path_MAGIC_CMD="$ac_dir/${ac_tool_prefix}file" + if test -n "$file_magic_test_file"; then + case $deplibs_check_method in + "file_magic "*) + file_magic_regex="`expr \"$deplibs_check_method\" : \"file_magic \(.*\)\"`" + MAGIC_CMD="$lt_cv_path_MAGIC_CMD" + if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | + $EGREP "$file_magic_regex" > /dev/null; then + : + else + cat <&2 + +*** Warning: the command libtool uses to detect shared libraries, +*** $file_magic_cmd, produces output that libtool cannot recognize. +*** The result is that libtool may fail to recognize shared libraries +*** as such. This will affect the creation of libtool libraries that +*** depend on shared libraries, but programs linked with such libtool +*** libraries will work regardless of this problem. Nevertheless, you +*** may want to report the problem to your system manager and/or to +*** bug-libtool@gnu.org + +EOF + fi ;; + esac + fi + break + fi + done + IFS="$lt_save_ifs" + MAGIC_CMD="$lt_save_MAGIC_CMD" + ;; +esac +fi + +MAGIC_CMD="$lt_cv_path_MAGIC_CMD" +if test -n "$MAGIC_CMD"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5 +$as_echo "$MAGIC_CMD" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + +if test -z "$lt_cv_path_MAGIC_CMD"; then + if test -n "$ac_tool_prefix"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for file" >&5 +$as_echo_n "checking for file... " >&6; } +if ${lt_cv_path_MAGIC_CMD+:} false; then : + $as_echo_n "(cached) " >&6 +else + case $MAGIC_CMD in +[\\/*] | ?:[\\/]*) + lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path. + ;; +*) + lt_save_MAGIC_CMD="$MAGIC_CMD" + lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR + ac_dummy="/usr/bin$PATH_SEPARATOR$PATH" + for ac_dir in $ac_dummy; do + IFS="$lt_save_ifs" + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/file; then + lt_cv_path_MAGIC_CMD="$ac_dir/file" + if test -n "$file_magic_test_file"; then + case $deplibs_check_method in + "file_magic "*) + file_magic_regex="`expr \"$deplibs_check_method\" : \"file_magic \(.*\)\"`" + MAGIC_CMD="$lt_cv_path_MAGIC_CMD" + if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | + $EGREP "$file_magic_regex" > /dev/null; then + : + else + cat <&2 + +*** Warning: the command libtool uses to detect shared libraries, +*** $file_magic_cmd, produces output that libtool cannot recognize. +*** The result is that libtool may fail to recognize shared libraries +*** as such. This will affect the creation of libtool libraries that +*** depend on shared libraries, but programs linked with such libtool +*** libraries will work regardless of this problem. Nevertheless, you +*** may want to report the problem to your system manager and/or to +*** bug-libtool@gnu.org + +EOF + fi ;; + esac + fi + break + fi + done + IFS="$lt_save_ifs" + MAGIC_CMD="$lt_save_MAGIC_CMD" + ;; +esac +fi + +MAGIC_CMD="$lt_cv_path_MAGIC_CMD" +if test -n "$MAGIC_CMD"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5 +$as_echo "$MAGIC_CMD" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + else + MAGIC_CMD=: + fi +fi + + fi + ;; +esac + +enable_dlopen=no +enable_win32_dll=no + +@%:@ Check whether --enable-libtool-lock was given. +if test "${enable_libtool_lock+set}" = set; then : + enableval=$enable_libtool_lock; +fi + +test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes + + +@%:@ Check whether --with-pic was given. +if test "${with_pic+set}" = set; then : + withval=$with_pic; pic_mode="$withval" +else + pic_mode=default +fi + +test -z "$pic_mode" && pic_mode=default + +# Use C for the default configuration in the libtool script +tagname= +lt_save_CC="$CC" +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu + + +# Source file extension for C test sources. +ac_ext=c + +# Object file extension for compiled C test sources. +objext=o +objext=$objext + +# Code to be used in simple compile tests +lt_simple_compile_test_code="int some_variable = 0;\n" + +# Code to be used in simple link tests +lt_simple_link_test_code='int main(){return(0);}\n' + + +# If no C compiler was specified, use CC. +LTCC=${LTCC-"$CC"} + +# Allow CC to be a program name with arguments. +compiler=$CC + + +# +# Check for any special shared library compilation flags. +# +lt_prog_cc_shlib= +if test "$GCC" = no; then + case $host_os in + sco3.2v5*) + lt_prog_cc_shlib='-belf' + ;; + esac +fi +if test -n "$lt_prog_cc_shlib"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: \`$CC' requires \`$lt_prog_cc_shlib' to build shared libraries" >&5 +$as_echo "$as_me: WARNING: \`$CC' requires \`$lt_prog_cc_shlib' to build shared libraries" >&2;} + if echo "$old_CC $old_CFLAGS " | grep "[ ]$lt_prog_cc_shlib[ ]" >/dev/null; then : + else + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: add \`$lt_prog_cc_shlib' to the CC or CFLAGS env variable and reconfigure" >&5 +$as_echo "$as_me: WARNING: add \`$lt_prog_cc_shlib' to the CC or CFLAGS env variable and reconfigure" >&2;} + lt_cv_prog_cc_can_build_shared=no + fi +fi + + +# +# Check to make sure the static flag actually works. +# +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler static flag $lt_prog_compiler_static works" >&5 +$as_echo_n "checking if $compiler static flag $lt_prog_compiler_static works... " >&6; } +if ${lt_prog_compiler_static_works+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_prog_compiler_static_works=no + save_LDFLAGS="$LDFLAGS" + LDFLAGS="$LDFLAGS $lt_prog_compiler_static" + printf "$lt_simple_link_test_code" > conftest.$ac_ext + if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then + # The compiler can only warn and ignore the option if not recognized + # So say no if there are warnings + if test -s conftest.err; then + # Append any errors to the config.log. + cat conftest.err 1>&5 + else + lt_prog_compiler_static_works=yes + fi + fi + $rm conftest* + LDFLAGS="$save_LDFLAGS" + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_prog_compiler_static_works" >&5 +$as_echo "$lt_prog_compiler_static_works" >&6; } + +if test x"$lt_prog_compiler_static_works" = xyes; then + : +else + lt_prog_compiler_static= +fi + + + + +lt_prog_compiler_no_builtin_flag= + +if test "$GCC" = yes; then + lt_prog_compiler_no_builtin_flag=' -fno-builtin' + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -fno-rtti -fno-exceptions" >&5 +$as_echo_n "checking if $compiler supports -fno-rtti -fno-exceptions... " >&6; } +if ${lt_cv_prog_compiler_rtti_exceptions+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_prog_compiler_rtti_exceptions=no + ac_outfile=conftest.$ac_objext + printf "$lt_simple_compile_test_code" > conftest.$ac_ext + lt_compiler_flag="-fno-rtti -fno-exceptions" + # Insert the option either (1) after the last *FLAGS variable, or + # (2) before a word containing "conftest.", or (3) at the end. + # Note that $ac_compile itself does not contain backslashes and begins + # with a dollar sign (not a hyphen), so the echo should work correctly. + # The option is referenced via a variable to avoid confusing sed. + lt_compile=`echo "$ac_compile" | $SED \ + -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \ + -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ + -e 's:$: $lt_compiler_flag:'` + (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&5) + (eval "$lt_compile" 2>conftest.err) + ac_status=$? + cat conftest.err >&5 + echo "$as_me:__oline__: \$? = $ac_status" >&5 + if (exit $ac_status) && test -s "$ac_outfile"; then + # The compiler can only warn and ignore the option if not recognized + # So say no if there are warnings + if test ! -s conftest.err; then + lt_cv_prog_compiler_rtti_exceptions=yes + fi + fi + $rm conftest* + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_rtti_exceptions" >&5 +$as_echo "$lt_cv_prog_compiler_rtti_exceptions" >&6; } + +if test x"$lt_cv_prog_compiler_rtti_exceptions" = xyes; then + lt_prog_compiler_no_builtin_flag="$lt_prog_compiler_no_builtin_flag -fno-rtti -fno-exceptions" +else + : +fi + +fi + +lt_prog_compiler_wl= +lt_prog_compiler_pic= +lt_prog_compiler_static= + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&5 +$as_echo_n "checking for $compiler option to produce PIC... " >&6; } + + if test "$GCC" = yes; then + lt_prog_compiler_wl='-Wl,' + lt_prog_compiler_static='-static' + + case $host_os in + aix*) + # All AIX code is PIC. + if test "$host_cpu" = ia64; then + # AIX 5 now supports IA64 processor + lt_prog_compiler_static='-Bstatic' + fi + ;; + + amigaos*) + # FIXME: we need at least 68020 code to build shared libraries, but + # adding the `-m68020' flag to GCC prevents building anything better, + # like `-m68040'. + lt_prog_compiler_pic='-m68020 -resident32 -malways-restore-a4' + ;; + + beos* | cygwin* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) + # PIC is the default for these OSes. + ;; + + mingw* | pw32* | os2*) + # This hack is so that the source file can tell whether it is being + # built for inclusion in a dll (and should export symbols for example). + lt_prog_compiler_pic='-DDLL_EXPORT' + ;; + + darwin* | rhapsody*) + # PIC is the default on this platform + # Common symbols not allowed in MH_DYLIB files + lt_prog_compiler_pic='-fno-common' + ;; + + msdosdjgpp*) + # Just because we use GCC doesn't mean we suddenly get shared libraries + # on systems that don't support them. + lt_prog_compiler_can_build_shared=no + enable_shared=no + ;; + + sysv4*MP*) + if test -d /usr/nec; then + lt_prog_compiler_pic=-Kconform_pic + fi + ;; + + hpux*) + # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but + # not for PA HP-UX. + case "$host_cpu" in + hppa*64*|ia64*) + # +Z the default + ;; + *) + lt_prog_compiler_pic='-fPIC' + ;; + esac + ;; + + *) + lt_prog_compiler_pic='-fPIC' + ;; + esac + else + # PORTME Check for flag to pass linker flags through the system compiler. + case $host_os in + aix*) + lt_prog_compiler_wl='-Wl,' + if test "$host_cpu" = ia64; then + # AIX 5 now supports IA64 processor + lt_prog_compiler_static='-Bstatic' + else + lt_prog_compiler_static='-bnso -bI:/lib/syscalls.exp' + fi + ;; + + mingw* | pw32* | os2*) + # This hack is so that the source file can tell whether it is being + # built for inclusion in a dll (and should export symbols for example). + lt_prog_compiler_pic='-DDLL_EXPORT' + ;; + + hpux9* | hpux10* | hpux11*) + lt_prog_compiler_wl='-Wl,' + # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but + # not for PA HP-UX. + case "$host_cpu" in + hppa*64*|ia64*) + # +Z the default + ;; + *) + lt_prog_compiler_pic='+Z' + ;; + esac + # Is there a better lt_prog_compiler_static that works with the bundled CC? + lt_prog_compiler_static='${wl}-a ${wl}archive' + ;; + + irix5* | irix6* | nonstopux*) + lt_prog_compiler_wl='-Wl,' + # PIC (with -KPIC) is the default. + lt_prog_compiler_static='-non_shared' + ;; + + newsos6) + lt_prog_compiler_pic='-KPIC' + lt_prog_compiler_static='-Bstatic' + ;; + + linux*) + case $CC in + icc* | ecc*) + lt_prog_compiler_wl='-Wl,' + lt_prog_compiler_pic='-KPIC' + lt_prog_compiler_static='-static' + ;; + ccc*) + lt_prog_compiler_wl='-Wl,' + # All Alpha code is PIC. + lt_prog_compiler_static='-non_shared' + ;; + esac + ;; + + osf3* | osf4* | osf5*) + lt_prog_compiler_wl='-Wl,' + # All OSF/1 code is PIC. + lt_prog_compiler_static='-non_shared' + ;; + + sco3.2v5*) + lt_prog_compiler_pic='-Kpic' + lt_prog_compiler_static='-dn' + ;; + + solaris*) + lt_prog_compiler_wl='-Wl,' + lt_prog_compiler_pic='-KPIC' + lt_prog_compiler_static='-Bstatic' + ;; + + sunos4*) + lt_prog_compiler_wl='-Qoption ld ' + lt_prog_compiler_pic='-PIC' + lt_prog_compiler_static='-Bstatic' + ;; + + sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) + lt_prog_compiler_wl='-Wl,' + lt_prog_compiler_pic='-KPIC' + lt_prog_compiler_static='-Bstatic' + ;; + + sysv4*MP*) + if test -d /usr/nec ;then + lt_prog_compiler_pic='-Kconform_pic' + lt_prog_compiler_static='-Bstatic' + fi + ;; + + uts4*) + lt_prog_compiler_pic='-pic' + lt_prog_compiler_static='-Bstatic' + ;; + + *) + lt_prog_compiler_can_build_shared=no + ;; + esac + fi + +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_prog_compiler_pic" >&5 +$as_echo "$lt_prog_compiler_pic" >&6; } + +# +# Check to make sure the PIC flag actually works. +# +if test -n "$lt_prog_compiler_pic"; then + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler PIC flag $lt_prog_compiler_pic works" >&5 +$as_echo_n "checking if $compiler PIC flag $lt_prog_compiler_pic works... " >&6; } +if ${lt_prog_compiler_pic_works+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_prog_compiler_pic_works=no + ac_outfile=conftest.$ac_objext + printf "$lt_simple_compile_test_code" > conftest.$ac_ext + lt_compiler_flag="$lt_prog_compiler_pic -DPIC" + # Insert the option either (1) after the last *FLAGS variable, or + # (2) before a word containing "conftest.", or (3) at the end. + # Note that $ac_compile itself does not contain backslashes and begins + # with a dollar sign (not a hyphen), so the echo should work correctly. + # The option is referenced via a variable to avoid confusing sed. + lt_compile=`echo "$ac_compile" | $SED \ + -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \ + -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ + -e 's:$: $lt_compiler_flag:'` + (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&5) + (eval "$lt_compile" 2>conftest.err) + ac_status=$? + cat conftest.err >&5 + echo "$as_me:__oline__: \$? = $ac_status" >&5 + if (exit $ac_status) && test -s "$ac_outfile"; then + # The compiler can only warn and ignore the option if not recognized + # So say no if there are warnings + if test ! -s conftest.err; then + lt_prog_compiler_pic_works=yes + fi + fi + $rm conftest* + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_prog_compiler_pic_works" >&5 +$as_echo "$lt_prog_compiler_pic_works" >&6; } + +if test x"$lt_prog_compiler_pic_works" = xyes; then + case $lt_prog_compiler_pic in + "" | " "*) ;; + *) lt_prog_compiler_pic=" $lt_prog_compiler_pic" ;; + esac +else + lt_prog_compiler_pic= + lt_prog_compiler_can_build_shared=no +fi + +fi +case "$host_os" in + # For platforms which do not support PIC, -DPIC is meaningless: + *djgpp*) + lt_prog_compiler_pic= + ;; + *) + lt_prog_compiler_pic="$lt_prog_compiler_pic -DPIC" + ;; +esac + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5 +$as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; } +if ${lt_cv_prog_compiler_c_o+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_prog_compiler_c_o=no + $rm -r conftest 2>/dev/null + mkdir conftest + cd conftest + mkdir out + printf "$lt_simple_compile_test_code" > conftest.$ac_ext + + lt_compiler_flag="-o out/conftest2.$ac_objext" + # Insert the option either (1) after the last *FLAGS variable, or + # (2) before a word containing "conftest.", or (3) at the end. + # Note that $ac_compile itself does not contain backslashes and begins + # with a dollar sign (not a hyphen), so the echo should work correctly. + lt_compile=`echo "$ac_compile" | $SED \ + -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \ + -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ + -e 's:$: $lt_compiler_flag:'` + (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&5) + (eval "$lt_compile" 2>out/conftest.err) + ac_status=$? + cat out/conftest.err >&5 + echo "$as_me:__oline__: \$? = $ac_status" >&5 + if (exit $ac_status) && test -s out/conftest2.$ac_objext + then + # The compiler can only warn and ignore the option if not recognized + # So say no if there are warnings + if test ! -s out/conftest.err; then + lt_cv_prog_compiler_c_o=yes + fi + fi + chmod u+w . + $rm conftest* + # SGI C++ compiler will create directory out/ii_files/ for + # template instantiation + test -d out/ii_files && $rm out/ii_files/* && rmdir out/ii_files + $rm out/* && rmdir out + cd .. + rmdir conftest + $rm conftest* + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o" >&5 +$as_echo "$lt_cv_prog_compiler_c_o" >&6; } + + +hard_links="nottested" +if test "$lt_cv_prog_compiler_c_o" = no && test "$need_locks" != no; then + # do not overwrite the value of need_locks provided by the user + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if we can lock with hard links" >&5 +$as_echo_n "checking if we can lock with hard links... " >&6; } + hard_links=yes + $rm conftest* + ln conftest.a conftest.b 2>/dev/null && hard_links=no + touch conftest.a + ln conftest.a conftest.b 2>&5 || hard_links=no + ln conftest.a conftest.b 2>/dev/null && hard_links=no + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $hard_links" >&5 +$as_echo "$hard_links" >&6; } + if test "$hard_links" = no; then + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&5 +$as_echo "$as_me: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&2;} + need_locks=warn + fi +else + need_locks=no +fi + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&5 +$as_echo_n "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; } + + runpath_var= + allow_undefined_flag= + enable_shared_with_static_runtimes=no + archive_cmds= + archive_expsym_cmds= + old_archive_From_new_cmds= + old_archive_from_expsyms_cmds= + export_dynamic_flag_spec= + whole_archive_flag_spec= + thread_safe_flag_spec= + hardcode_libdir_flag_spec= + hardcode_libdir_flag_spec_ld= + hardcode_libdir_separator= + hardcode_direct=no + hardcode_minus_L=no + hardcode_shlibpath_var=unsupported + link_all_deplibs=unknown + hardcode_automatic=no + module_cmds= + module_expsym_cmds= + always_export_symbols=no + export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' + # include_expsyms should be a list of space-separated symbols to be *always* + # included in the symbol list + include_expsyms= + # exclude_expsyms can be an extended regexp of symbols to exclude + # it will be wrapped by ` (' and `)$', so one must not match beginning or + # end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc', + # as well as any symbol that contains `d'. + exclude_expsyms="_GLOBAL_OFFSET_TABLE_" + # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out + # platforms (ab)use it in PIC code, but their linkers get confused if + # the symbol is explicitly referenced. Since portable code cannot + # rely on this symbol name, it's probably fine to never include it in + # preloaded symbol tables. + extract_expsyms_cmds= + + case $host_os in + cygwin* | mingw* | pw32*) + # FIXME: the MSVC++ port hasn't been tested in a loooong time + # When not using gcc, we currently assume that we are using + # Microsoft Visual C++. + if test "$GCC" != yes; then + with_gnu_ld=no + fi + ;; + openbsd*) + with_gnu_ld=no + ;; + esac + + ld_shlibs=yes + if test "$with_gnu_ld" = yes; then + # If archive_cmds runs LD, not CC, wlarc should be empty + wlarc='${wl}' + + # See if GNU ld supports shared libraries. + case $host_os in + aix3* | aix4* | aix5*) + # On AIX/PPC, the GNU linker is very broken + if test "$host_cpu" != ia64; then + ld_shlibs=no + cat <&2 + +*** Warning: the GNU linker, at least up to release 2.9.1, is reported +*** to be unable to reliably create shared libraries on AIX. +*** Therefore, libtool is disabling shared libraries support. If you +*** really care for shared libraries, you may want to modify your PATH +*** so that a non-GNU linker is found, and then restart. + +EOF + fi + ;; + + amigaos*) + archive_cmds='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' + hardcode_libdir_flag_spec='-L$libdir' + hardcode_minus_L=yes + + # Samuel A. Falvo II reports + # that the semantics of dynamic libraries on AmigaOS, at least up + # to version 4, is to share data among multiple programs linked + # with the same dynamic library. Since this doesn't match the + # behavior of shared libraries on other platforms, we can't use + # them. + ld_shlibs=no + ;; + + beos*) + if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then + allow_undefined_flag=unsupported + # Joseph Beckenbach says some releases of gcc + # support --undefined. This deserves some investigation. FIXME + archive_cmds='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + else + ld_shlibs=no + fi + ;; + + cygwin* | mingw* | pw32*) + # _LT_AC_TAGVAR(hardcode_libdir_flag_spec, ) is actually meaningless, + # as there is no search path for DLLs. + hardcode_libdir_flag_spec='-L$libdir' + allow_undefined_flag=unsupported + always_export_symbols=no + enable_shared_with_static_runtimes=yes + export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[BCDGS] /s/.* \([^ ]*\)/\1 DATA/'\'' | $SED -e '\''/^[AITW] /s/.* //'\'' | sort | uniq > $export_symbols' + + if $LD --help 2>&1 | grep 'auto-import' > /dev/null; then + archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--image-base=0x10000000 ${wl}--out-implib,$lib' + # If the export-symbols file already is a .def file (1st line + # is EXPORTS), use it as is; otherwise, prepend... + archive_expsym_cmds='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then + cp $export_symbols $output_objdir/$soname.def; + else + echo EXPORTS > $output_objdir/$soname.def; + cat $export_symbols >> $output_objdir/$soname.def; + fi~ + $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--image-base=0x10000000 ${wl}--out-implib,$lib' + else + ld_shlibs=no + fi + ;; + + netbsd* | knetbsd*-gnu) + if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then + archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib' + wlarc= + else + archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + fi + ;; + + solaris* | sysv5*) + if $LD -v 2>&1 | grep 'BFD 2\.8' > /dev/null; then + ld_shlibs=no + cat <&2 + +*** Warning: The releases 2.8.* of the GNU linker cannot reliably +*** create shared libraries on Solaris systems. Therefore, libtool +*** is disabling shared libraries support. We urge you to upgrade GNU +*** binutils to release 2.9.1 or newer. Another option is to modify +*** your PATH or compiler configuration so that the native linker is +*** used, and then restart. + +EOF + elif $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then + archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + else + ld_shlibs=no + fi + ;; + + sunos4*) + archive_cmds='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags' + wlarc= + hardcode_direct=yes + hardcode_shlibpath_var=no + ;; + + linux*) + if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then + tmp_archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + archive_cmds="$tmp_archive_cmds" + supports_anon_versioning=no + case `$LD -v 2>/dev/null` in + *\ 01.* | *\ 2.[0-9].* | *\ 2.10.*) ;; # catch versions < 2.11 + *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ... + *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ... + *\ 2.11.*) ;; # other 2.11 versions + *) supports_anon_versioning=yes ;; + esac + if test $supports_anon_versioning = yes; then + archive_expsym_cmds='$echo "{ global:" > $output_objdir/$libname.ver~ +cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ +$echo "local: *; };" >> $output_objdir/$libname.ver~ + $CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib' + else + archive_expsym_cmds="$tmp_archive_cmds" + fi + else + ld_shlibs=no + fi + ;; + + *) + if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then + archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + else + ld_shlibs=no + fi + ;; + esac + + if test "$ld_shlibs" = yes; then + runpath_var=LD_RUN_PATH + hardcode_libdir_flag_spec='${wl}--rpath ${wl}$libdir' + export_dynamic_flag_spec='${wl}--export-dynamic' + # ancient GNU ld didn't support --whole-archive et. al. + if $LD --help 2>&1 | grep 'no-whole-archive' > /dev/null; then + whole_archive_flag_spec="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' + else + whole_archive_flag_spec= + fi + fi + else + # PORTME fill in a description of your system's linker (not GNU ld) + case $host_os in + aix3*) + allow_undefined_flag=unsupported + always_export_symbols=yes + archive_expsym_cmds='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname' + # Note: this linker hardcodes the directories in LIBPATH if there + # are no directories specified by -L. + hardcode_minus_L=yes + if test "$GCC" = yes && test -z "$link_static_flag"; then + # Neither direct hardcoding nor static linking is supported with a + # broken collect2. + hardcode_direct=unsupported + fi + ;; + + aix4* | aix5*) + if test "$host_cpu" = ia64; then + # On IA64, the linker does run time linking by default, so we don't + # have to do anything special. + aix_use_runtimelinking=no + exp_sym_flag='-Bexport' + no_entry_flag="" + else + # If we're using GNU nm, then we don't want the "-C" option. + # -C means demangle to AIX nm, but means don't demangle with GNU nm + if $NM -V 2>&1 | grep 'GNU' > /dev/null; then + export_symbols_cmds='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$2 == "T") || (\$2 == "D") || (\$2 == "B")) && (substr(\$3,1,1) != ".")) { print \$3 } }'\'' | sort -u > $export_symbols' + else + export_symbols_cmds='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$2 == "T") || (\$2 == "D") || (\$2 == "B")) && (substr(\$3,1,1) != ".")) { print \$3 } }'\'' | sort -u > $export_symbols' + fi + aix_use_runtimelinking=no + + # Test if we are trying to use run time linking or normal + # AIX style linking. If -brtl is somewhere in LDFLAGS, we + # need to do runtime linking. + case $host_os in aix4.[23]|aix4.[23].*|aix5*) + for ld_flag in $LDFLAGS; do + if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then + aix_use_runtimelinking=yes + break + fi + done + esac + + exp_sym_flag='-bexport' + no_entry_flag='-bnoentry' + fi + + # When large executables or shared objects are built, AIX ld can + # have problems creating the table of contents. If linking a library + # or program results in "error TOC overflow" add -mminimal-toc to + # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not + # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. + + archive_cmds='' + hardcode_direct=yes + hardcode_libdir_separator=':' + link_all_deplibs=yes + + if test "$GCC" = yes; then + case $host_os in aix4.012|aix4.012.*) + # We only want to do this on AIX 4.2 and lower, the check + # below for broken collect2 doesn't work under 4.3+ + collect2name=`${CC} -print-prog-name=collect2` + if test -f "$collect2name" && \ + strings "$collect2name" | grep resolve_lib_name >/dev/null + then + # We have reworked collect2 + hardcode_direct=yes + else + # We have old collect2 + hardcode_direct=unsupported + # It fails to find uninstalled libraries when the uninstalled + # path is not listed in the libpath. Setting hardcode_minus_L + # to unsupported forces relinking + hardcode_minus_L=yes + hardcode_libdir_flag_spec='-L$libdir' + hardcode_libdir_separator= + fi + esac + shared_flag='-shared' + else + # not using gcc + if test "$host_cpu" = ia64; then + # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release + # chokes on -Wl,-G. The following line is correct: + shared_flag='-G' + else + if test "$aix_use_runtimelinking" = yes; then + shared_flag='${wl}-G' + else + shared_flag='${wl}-bM:SRE' + fi + fi + fi + + # It seems that -bexpall does not export symbols beginning with + # underscore (_), so it is better to generate a list of symbols to export. + always_export_symbols=yes + if test "$aix_use_runtimelinking" = yes; then + # Warning - without using the other runtime loading flags (-brtl), + # -berok will link without error, but may produce a broken library. + allow_undefined_flag='-berok' + # Determine the default libpath from the value encoded in an empty executable. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + +aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; } +}'` +# Check for a 64-bit object if we didn't find anything. +if test -z "$aix_libpath"; then aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; } +}'`; fi +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi + + hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath" + archive_expsym_cmds="\$CC"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols $shared_flag" + else + if test "$host_cpu" = ia64; then + hardcode_libdir_flag_spec='${wl}-R $libdir:/usr/lib:/lib' + allow_undefined_flag="-z nodefs" + archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols" + else + # Determine the default libpath from the value encoded in an empty executable. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + +aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; } +}'` +# Check for a 64-bit object if we didn't find anything. +if test -z "$aix_libpath"; then aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; } +}'`; fi +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi + + hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath" + # Warning - without using the other run time loading flags, + # -berok will link without error, but may produce a broken library. + no_undefined_flag=' ${wl}-bernotok' + allow_undefined_flag=' ${wl}-berok' + # -bexpall does not export symbols beginning with underscore (_) + always_export_symbols=yes + # Exported symbols can be pulled into shared objects from archives + whole_archive_flag_spec=' ' + archive_cmds_need_lc=yes + # This is similar to how AIX traditionally builds it's shared libraries. + archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${wl}-bE:$export_symbols ${wl}-bnoentry${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname' + fi + fi + ;; + + amigaos*) + archive_cmds='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' + hardcode_libdir_flag_spec='-L$libdir' + hardcode_minus_L=yes + # see comment about different semantics on the GNU ld section + ld_shlibs=no + ;; + + bsdi4*) + export_dynamic_flag_spec=-rdynamic + ;; + + cygwin* | mingw* | pw32*) + # When not using gcc, we currently assume that we are using + # Microsoft Visual C++. + # hardcode_libdir_flag_spec is actually meaningless, as there is + # no search path for DLLs. + hardcode_libdir_flag_spec=' ' + allow_undefined_flag=unsupported + # Tell ltmain to make .lib files, not .a files. + libext=lib + # Tell ltmain to make .dll files, not .so files. + shrext=".dll" + # FIXME: Setting linknames here is a bad hack. + archive_cmds='$CC -o $lib $libobjs $compiler_flags `echo "$deplibs" | $SED -e '\''s/ -lc$//'\''` -link -dll~linknames=' + # The linker will automatically build a .lib file if we build a DLL. + old_archive_From_new_cmds='true' + # FIXME: Should let the user specify the lib program. + old_archive_cmds='lib /OUT:$oldlib$oldobjs$old_deplibs' + fix_srcfile_path='`cygpath -w "$srcfile"`' + enable_shared_with_static_runtimes=yes + ;; + + darwin* | rhapsody*) + if test "$GXX" = yes ; then + archive_cmds_need_lc=no + case "$host_os" in + rhapsody* | darwin1.[012]) + allow_undefined_flag='-undefined suppress' + ;; + *) # Darwin 1.3 on + if test -z ${MACOSX_DEPLOYMENT_TARGET} ; then + allow_undefined_flag='-flat_namespace -undefined suppress' + else + case ${MACOSX_DEPLOYMENT_TARGET} in + 10.[012]) + allow_undefined_flag='-flat_namespace -undefined suppress' + ;; + 10.*) + allow_undefined_flag='-undefined dynamic_lookup' + ;; + esac + fi + ;; + esac + lt_int_apple_cc_single_mod=no + output_verbose_link_cmd='echo' + if $CC -dumpspecs 2>&1 | grep 'single_module' >/dev/null ; then + lt_int_apple_cc_single_mod=yes + fi + if test "X$lt_int_apple_cc_single_mod" = Xyes ; then + archive_cmds='$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring' + else + archive_cmds='$CC -r ${wl}-bind_at_load -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $deplibs $compiler_flags -install_name $rpath/$soname $verstring' + fi + module_cmds='$CC ${wl}-bind_at_load $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags' + # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's + if test "X$lt_int_apple_cc_single_mod" = Xyes ; then + archive_expsym_cmds='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' + else + archive_expsym_cmds='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -r ${wl}-bind_at_load -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' + fi + module_expsym_cmds='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' + hardcode_direct=no + hardcode_automatic=yes + hardcode_shlibpath_var=unsupported + whole_archive_flag_spec='-all_load $convenience' + link_all_deplibs=yes + else + ld_shlibs=no + fi + ;; + + dgux*) + archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + hardcode_libdir_flag_spec='-L$libdir' + hardcode_shlibpath_var=no + ;; + + freebsd1*) + ld_shlibs=no + ;; + + # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor + # support. Future versions do this automatically, but an explicit c++rt0.o + # does not break anything, and helps significantly (at the cost of a little + # extra space). + freebsd2.2*) + archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o' + hardcode_libdir_flag_spec='-R$libdir' + hardcode_direct=yes + hardcode_shlibpath_var=no + ;; + + # Unfortunately, older versions of FreeBSD 2 do not have this feature. + freebsd2*) + archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' + hardcode_direct=yes + hardcode_minus_L=yes + hardcode_shlibpath_var=no + ;; + + # FreeBSD 3 and greater uses gcc -shared to do shared libraries. + freebsd* | kfreebsd*-gnu) + archive_cmds='$CC -shared -o $lib $libobjs $deplibs $compiler_flags' + hardcode_libdir_flag_spec='-R$libdir' + hardcode_direct=yes + hardcode_shlibpath_var=no + ;; + + hpux9*) + if test "$GCC" = yes; then + archive_cmds='$rm $output_objdir/$soname~$CC -shared -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' + else + archive_cmds='$rm $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' + fi + hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir' + hardcode_libdir_separator=: + hardcode_direct=yes + + # hardcode_minus_L: Not really in the search PATH, + # but as the default location of the library. + hardcode_minus_L=yes + export_dynamic_flag_spec='${wl}-E' + ;; + + hpux10* | hpux11*) + if test "$GCC" = yes -a "$with_gnu_ld" = no; then + case "$host_cpu" in + hppa*64*|ia64*) + archive_cmds='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' + ;; + *) + archive_cmds='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags' + ;; + esac + else + case "$host_cpu" in + hppa*64*|ia64*) + archive_cmds='$LD -b +h $soname -o $lib $libobjs $deplibs $linker_flags' + ;; + *) + archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' + ;; + esac + fi + if test "$with_gnu_ld" = no; then + case "$host_cpu" in + hppa*64*) + hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir' + hardcode_libdir_flag_spec_ld='+b $libdir' + hardcode_libdir_separator=: + hardcode_direct=no + hardcode_shlibpath_var=no + ;; + ia64*) + hardcode_libdir_flag_spec='-L$libdir' + hardcode_direct=no + hardcode_shlibpath_var=no + + # hardcode_minus_L: Not really in the search PATH, + # but as the default location of the library. + hardcode_minus_L=yes + ;; + *) + hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir' + hardcode_libdir_separator=: + hardcode_direct=yes + export_dynamic_flag_spec='${wl}-E' + + # hardcode_minus_L: Not really in the search PATH, + # but as the default location of the library. + hardcode_minus_L=yes + ;; + esac + fi + ;; + + irix5* | irix6* | nonstopux*) + if test "$GCC" = yes; then + archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' + else + archive_cmds='$LD -shared $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' + hardcode_libdir_flag_spec_ld='-rpath $libdir' + fi + hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' + hardcode_libdir_separator=: + link_all_deplibs=yes + ;; + + netbsd* | knetbsd*-gnu) + if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then + archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out + else + archive_cmds='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF + fi + hardcode_libdir_flag_spec='-R$libdir' + hardcode_direct=yes + hardcode_shlibpath_var=no + ;; + + newsos6) + archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + hardcode_direct=yes + hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' + hardcode_libdir_separator=: + hardcode_shlibpath_var=no + ;; + + openbsd*) + hardcode_direct=yes + hardcode_shlibpath_var=no + if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then + archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' + hardcode_libdir_flag_spec='${wl}-rpath,$libdir' + export_dynamic_flag_spec='${wl}-E' + else + case $host_os in + openbsd[01].* | openbsd2.[0-7] | openbsd2.[0-7].*) + archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' + hardcode_libdir_flag_spec='-R$libdir' + ;; + *) + archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' + hardcode_libdir_flag_spec='${wl}-rpath,$libdir' + ;; + esac + fi + ;; + + os2*) + hardcode_libdir_flag_spec='-L$libdir' + hardcode_minus_L=yes + allow_undefined_flag=unsupported + archive_cmds='$echo "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$echo "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~$echo DATA >> $output_objdir/$libname.def~$echo " SINGLE NONSHARED" >> $output_objdir/$libname.def~$echo EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def' + old_archive_From_new_cmds='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def' + ;; + + osf3*) + if test "$GCC" = yes; then + allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*' + archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' + else + allow_undefined_flag=' -expect_unresolved \*' + archive_cmds='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' + fi + hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' + hardcode_libdir_separator=: + ;; + + osf4* | osf5*) # as osf3* with the addition of -msym flag + if test "$GCC" = yes; then + allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*' + archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' + hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' + else + allow_undefined_flag=' -expect_unresolved \*' + archive_cmds='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -msym -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' + archive_expsym_cmds='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; echo "-hidden">> $lib.exp~ + $LD -shared${allow_undefined_flag} -input $lib.exp $linker_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib~$rm $lib.exp' + + # Both c and cxx compiler support -rpath directly + hardcode_libdir_flag_spec='-rpath $libdir' + fi + hardcode_libdir_separator=: + ;; + + sco3.2v5*) + archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + hardcode_shlibpath_var=no + export_dynamic_flag_spec='${wl}-Bexport' + runpath_var=LD_RUN_PATH + hardcode_runpath_var=yes + ;; + + solaris*) + no_undefined_flag=' -z text' + if test "$GCC" = yes; then + archive_cmds='$CC -shared ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' + archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ + $CC -shared ${wl}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags~$rm $lib.exp' + else + archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags' + archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ + $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp' + fi + hardcode_libdir_flag_spec='-R$libdir' + hardcode_shlibpath_var=no + case $host_os in + solaris2.[0-5] | solaris2.[0-5].*) ;; + *) # Supported since Solaris 2.6 (maybe 2.5.1?) + whole_archive_flag_spec='-z allextract$convenience -z defaultextract' ;; + esac + link_all_deplibs=yes + ;; + + sunos4*) + if test "x$host_vendor" = xsequent; then + # Use $CC to link under sequent, because it throws in some extra .o + # files that make .init and .fini sections work. + archive_cmds='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags' + else + archive_cmds='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags' + fi + hardcode_libdir_flag_spec='-L$libdir' + hardcode_direct=yes + hardcode_minus_L=yes + hardcode_shlibpath_var=no + ;; + + sysv4) + case $host_vendor in + sni) + archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + hardcode_direct=yes # is this really true??? + ;; + siemens) + ## LD is ld it makes a PLAMLIB + ## CC just makes a GrossModule. + archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags' + reload_cmds='$CC -r -o $output$reload_objs' + hardcode_direct=no + ;; + motorola) + archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + hardcode_direct=no #Motorola manual says yes, but my tests say they lie + ;; + esac + runpath_var='LD_RUN_PATH' + hardcode_shlibpath_var=no + ;; + + sysv4.3*) + archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + hardcode_shlibpath_var=no + export_dynamic_flag_spec='-Bexport' + ;; + + sysv4*MP*) + if test -d /usr/nec; then + archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + hardcode_shlibpath_var=no + runpath_var=LD_RUN_PATH + hardcode_runpath_var=yes + ld_shlibs=yes + fi + ;; + + sysv4.2uw2*) + archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags' + hardcode_direct=yes + hardcode_minus_L=no + hardcode_shlibpath_var=no + hardcode_runpath_var=yes + runpath_var=LD_RUN_PATH + ;; + + sysv5OpenUNIX8* | sysv5UnixWare7* | sysv5uw[78]* | unixware7*) + no_undefined_flag='${wl}-z ${wl}text' + if test "$GCC" = yes; then + archive_cmds='$CC -shared ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' + else + archive_cmds='$CC -G ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' + fi + runpath_var='LD_RUN_PATH' + hardcode_shlibpath_var=no + ;; + + sysv5*) + no_undefined_flag=' -z text' + # $CC -shared without GNU ld will not create a library from C++ + # object files and a static libstdc++, better avoid it by now + archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags' + archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ + $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp' + hardcode_libdir_flag_spec= + hardcode_shlibpath_var=no + runpath_var='LD_RUN_PATH' + ;; + + uts4*) + archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + hardcode_libdir_flag_spec='-L$libdir' + hardcode_shlibpath_var=no + ;; + + *) + ld_shlibs=no + ;; + esac + fi + +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs" >&5 +$as_echo "$ld_shlibs" >&6; } +test "$ld_shlibs" = no && can_build_shared=no + +variables_saved_for_relink="PATH $shlibpath_var $runpath_var" +if test "$GCC" = yes; then + variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" +fi + +# +# Do we need to explicitly link libc? +# +case "x$archive_cmds_need_lc" in +x|xyes) + # Assume -lc should be added + archive_cmds_need_lc=yes + + if test "$enable_shared" = yes && test "$GCC" = yes; then + case $archive_cmds in + *'~'*) + # FIXME: we may have to deal with multi-command sequences. + ;; + '$CC '*) + # Test whether the compiler implicitly links with -lc since on some + # systems, -lgcc has to come before -lc. If gcc already passes -lc + # to ld, don't add -lc before -lgcc. + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -lc should be explicitly linked in" >&5 +$as_echo_n "checking whether -lc should be explicitly linked in... " >&6; } + $rm conftest* + printf "$lt_simple_compile_test_code" > conftest.$ac_ext + + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 + (eval $ac_compile) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } 2>conftest.err; then + soname=conftest + lib=conftest + libobjs=conftest.$ac_objext + deplibs= + wl=$lt_prog_compiler_wl + compiler_flags=-v + linker_flags=-v + verstring= + output_objdir=. + libname=conftest + lt_save_allow_undefined_flag=$allow_undefined_flag + allow_undefined_flag= + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$archive_cmds 2\>\&1 \| grep \" -lc \" \>/dev/null 2\>\&1\""; } >&5 + (eval $archive_cmds 2\>\&1 \| grep \" -lc \" \>/dev/null 2\>\&1) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } + then + archive_cmds_need_lc=no + else + archive_cmds_need_lc=yes + fi + allow_undefined_flag=$lt_save_allow_undefined_flag + else + cat conftest.err 1>&5 + fi + $rm conftest* + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $archive_cmds_need_lc" >&5 +$as_echo "$archive_cmds_need_lc" >&6; } + ;; + esac + fi + ;; +esac + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking dynamic linker characteristics" >&5 +$as_echo_n "checking dynamic linker characteristics... " >&6; } +library_names_spec= +libname_spec='lib$name' +soname_spec= +shrext=".so" +postinstall_cmds= +postuninstall_cmds= +finish_cmds= +finish_eval= +shlibpath_var= +shlibpath_overrides_runpath=unknown +version_type=none +dynamic_linker="$host_os ld.so" +sys_lib_dlsearch_path_spec="/lib /usr/lib" +if test "$GCC" = yes; then + sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"` + if echo "$sys_lib_search_path_spec" | grep ';' >/dev/null ; then + # if the path contains ";" then we assume it to be the separator + # otherwise default to the standard path separator (i.e. ":") - it is + # assumed that no part of a normal pathname contains ";" but that should + # okay in the real world where ";" in dirpaths is itself problematic. + sys_lib_search_path_spec=`echo "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'` + else + sys_lib_search_path_spec=`echo "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` + fi +else + sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" +fi +need_lib_prefix=unknown +hardcode_into_libs=no + +# when you set need_version to no, make sure it does not cause -set_version +# flags to be left without arguments +need_version=unknown + +case $host_os in +aix3*) + version_type=linux + library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a' + shlibpath_var=LIBPATH + + # AIX 3 has no versioning support, so we append a major version to the name. + soname_spec='${libname}${release}${shared_ext}$major' + ;; + +aix4* | aix5*) + version_type=linux + need_lib_prefix=no + need_version=no + hardcode_into_libs=yes + if test "$host_cpu" = ia64; then + # AIX 5 supports IA64 + library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}' + shlibpath_var=LD_LIBRARY_PATH + else + # With GCC up to 2.95.x, collect2 would create an import file + # for dependence libraries. The import file would start with + # the line `#! .'. This would cause the generated library to + # depend on `.', always an invalid library. This was fixed in + # development snapshots of GCC prior to 3.0. + case $host_os in + aix4 | aix4.[01] | aix4.[01].*) + if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)' + echo ' yes ' + echo '#endif'; } | ${CC} -E - | grep yes > /dev/null; then + : + else + can_build_shared=no + fi + ;; + esac + # AIX (on Power*) has no versioning support, so currently we can not hardcode correct + # soname into executable. Probably we can add versioning support to + # collect2, so additional links can be useful in future. + if test "$aix_use_runtimelinking" = yes; then + # If using run time linking (on AIX 4.2 or later) use lib.so + # instead of lib.a to let people know that these are not + # typical AIX shared libraries. + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + else + # We preserve .a as extension for shared libraries through AIX4.2 + # and later when we are not doing run time linking. + library_names_spec='${libname}${release}.a $libname.a' + soname_spec='${libname}${release}${shared_ext}$major' + fi + shlibpath_var=LIBPATH + fi + ;; + +amigaos*) + library_names_spec='$libname.ixlibrary $libname.a' + # Create ${libname}_ixlibrary.a entries in /sys/libs. + finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$echo "X$lib" | $Xsed -e '\''s%^.*/\([^/]*\)\.ixlibrary$%\1%'\''`; test $rm /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done' + ;; + +beos*) + library_names_spec='${libname}${shared_ext}' + dynamic_linker="$host_os ld.so" + shlibpath_var=LIBRARY_PATH + ;; + +bsdi4*) + version_type=linux + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir' + shlibpath_var=LD_LIBRARY_PATH + sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib" + sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib" + # the default ld.so.conf also contains /usr/contrib/lib and + # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow + # libtool to hard-code these into programs + ;; + +cygwin* | mingw* | pw32*) + version_type=windows + shrext=".dll" + need_version=no + need_lib_prefix=no + + case $GCC,$host_os in + yes,cygwin* | yes,mingw* | yes,pw32*) + library_names_spec='$libname.dll.a' + # DLL is installed to $(libdir)/../bin by postinstall_cmds + postinstall_cmds='base_file=`basename \${file}`~ + dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i;echo \$dlname'\''`~ + dldir=$destdir/`dirname \$dlpath`~ + test -d \$dldir || mkdir -p \$dldir~ + $install_prog $dir/$dlname \$dldir/$dlname' + postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~ + dlpath=$dir/\$dldll~ + $rm \$dlpath' + shlibpath_overrides_runpath=yes + + case $host_os in + cygwin*) + # Cygwin DLLs use 'cyg' prefix rather than 'lib' + soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}' + sys_lib_search_path_spec="/usr/lib /lib/w32api /lib /usr/local/lib" + ;; + mingw*) + # MinGW DLLs use traditional 'lib' prefix + soname_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}' + sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"` + if echo "$sys_lib_search_path_spec" | grep ';[c-zC-Z]:/' >/dev/null; then + # It is most probably a Windows format PATH printed by + # mingw gcc, but we are running on Cygwin. Gcc prints its search + # path with ; separators, and with drive letters. We can handle the + # drive letters (cygwin fileutils understands them), so leave them, + # especially as we might pass files found there to a mingw objdump, + # which wouldn't understand a cygwinified path. Ahh. + sys_lib_search_path_spec=`echo "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'` + else + sys_lib_search_path_spec=`echo "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` + fi + ;; + pw32*) + # pw32 DLLs use 'pw' prefix rather than 'lib' + library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/./-/g'`${versuffix}${shared_ext}' + ;; + esac + ;; + + *) + library_names_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext} $libname.lib' + ;; + esac + dynamic_linker='Win32 ld.exe' + # FIXME: first we should search . and the directory the executable is in + shlibpath_var=PATH + ;; + +darwin* | rhapsody*) + dynamic_linker="$host_os dyld" + version_type=darwin + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${versuffix}$shared_ext ${libname}${release}${major}$shared_ext ${libname}$shared_ext' + soname_spec='${libname}${release}${major}$shared_ext' + shlibpath_overrides_runpath=yes + shlibpath_var=DYLD_LIBRARY_PATH + shrext='$(test .$module = .yes && echo .so || echo .dylib)' + # Apple's gcc prints 'gcc -print-search-dirs' doesn't operate the same. + if test "$GCC" = yes; then + sys_lib_search_path_spec=`$CC -print-search-dirs | tr "\n" "$PATH_SEPARATOR" | sed -e 's/libraries:/@libraries:/' | tr "@" "\n" | grep "^libraries:" | sed -e "s/^libraries://" -e "s,=/,/,g" -e "s,$PATH_SEPARATOR, ,g" -e "s,.*,& /lib /usr/lib /usr/local/lib,g"` + else + sys_lib_search_path_spec='/lib /usr/lib /usr/local/lib' + fi + sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib' + ;; + +dgux*) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname$shared_ext' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + ;; + +freebsd1*) + dynamic_linker=no + ;; + +kfreebsd*-gnu) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=no + hardcode_into_libs=yes + dynamic_linker='GNU ld.so' + ;; + +freebsd*) + objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout` + version_type=freebsd-$objformat + case $version_type in + freebsd-elf*) + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}' + need_version=no + need_lib_prefix=no + ;; + freebsd-*) + library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix' + need_version=yes + ;; + esac + shlibpath_var=LD_LIBRARY_PATH + case $host_os in + freebsd2*) + shlibpath_overrides_runpath=yes + ;; + freebsd3.01* | freebsdelf3.01*) + shlibpath_overrides_runpath=yes + hardcode_into_libs=yes + ;; + *) # from 3.2 on + shlibpath_overrides_runpath=no + hardcode_into_libs=yes + ;; + esac + ;; + +gnu*) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + hardcode_into_libs=yes + ;; + +hpux9* | hpux10* | hpux11*) + # Give a soname corresponding to the major version so that dld.sl refuses to + # link against other versions. + version_type=sunos + need_lib_prefix=no + need_version=no + case "$host_cpu" in + ia64*) + shrext='.so' + hardcode_into_libs=yes + dynamic_linker="$host_os dld.so" + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + if test "X$HPUX_IA64_MODE" = X32; then + sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib" + else + sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64" + fi + sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec + ;; + hppa*64*) + shrext='.sl' + hardcode_into_libs=yes + dynamic_linker="$host_os dld.sl" + shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH + shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64" + sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec + ;; + *) + shrext='.sl' + dynamic_linker="$host_os dld.sl" + shlibpath_var=SHLIB_PATH + shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + ;; + esac + # HP-UX runs *really* slowly unless shared libraries are mode 555. + postinstall_cmds='chmod 555 $lib' + ;; + +irix5* | irix6* | nonstopux*) + case $host_os in + nonstopux*) version_type=nonstopux ;; + *) + if test "$lt_cv_prog_gnu_ld" = yes; then + version_type=linux + else + version_type=irix + fi ;; + esac + need_lib_prefix=no + need_version=no + soname_spec='${libname}${release}${shared_ext}$major' + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}' + case $host_os in + irix5* | nonstopux*) + libsuff= shlibsuff= + ;; + *) + case $LD in # libtool.m4 will add one of these switches to LD + *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ") + libsuff= shlibsuff= libmagic=32-bit;; + *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ") + libsuff=32 shlibsuff=N32 libmagic=N32;; + *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ") + libsuff=64 shlibsuff=64 libmagic=64-bit;; + *) libsuff= shlibsuff= libmagic=never-match;; + esac + ;; + esac + shlibpath_var=LD_LIBRARY${shlibsuff}_PATH + shlibpath_overrides_runpath=no + sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}" + sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}" + hardcode_into_libs=yes + ;; + +# No shared lib support for Linux oldld, aout, or coff. +linux*oldld* | linux*aout* | linux*coff*) + dynamic_linker=no + ;; + +# This must be Linux ELF. +linux*) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=no + # This implies no fast_install, which is unacceptable. + # Some rework will be needed to allow for fast_install + # before this can be enabled. + hardcode_into_libs=yes + + # Append ld.so.conf contents to the search path + if test -f /etc/ld.so.conf; then + ld_extra=`$SED -e 's/:,\t/ /g;s/=^=*$//;s/=^= * / /g' /etc/ld.so.conf` + sys_lib_dlsearch_path_spec="/lib /usr/lib $ld_extra" + fi + + # We used to test for /lib/ld.so.1 and disable shared libraries on + # powerpc, because MkLinux only supported shared libraries with the + # GNU dynamic linker. Since this was broken with cross compilers, + # most powerpc-linux boxes support dynamic linking these days and + # people can always --disable-shared, the test was removed, and we + # assume the GNU/Linux dynamic linker is in use. + dynamic_linker='GNU/Linux ld.so' + ;; + +knetbsd*-gnu) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=no + hardcode_into_libs=yes + dynamic_linker='GNU ld.so' + ;; + +netbsd*) + version_type=sunos + need_lib_prefix=no + need_version=no + if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' + finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' + dynamic_linker='NetBSD (a.out) ld.so' + else + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + dynamic_linker='NetBSD ld.elf_so' + fi + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + hardcode_into_libs=yes + ;; + +newsos6) + version_type=linux + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + ;; + +nto-qnx*) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + ;; + +openbsd*) + version_type=sunos + need_lib_prefix=no + need_version=yes + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' + finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' + shlibpath_var=LD_LIBRARY_PATH + if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then + case $host_os in + openbsd2.[89] | openbsd2.[89].*) + shlibpath_overrides_runpath=no + ;; + *) + shlibpath_overrides_runpath=yes + ;; + esac + else + shlibpath_overrides_runpath=yes + fi + ;; + +os2*) + libname_spec='$name' + shrext=".dll" + need_lib_prefix=no + library_names_spec='$libname${shared_ext} $libname.a' + dynamic_linker='OS/2 ld.exe' + shlibpath_var=LIBPATH + ;; + +osf3* | osf4* | osf5*) + version_type=osf + need_lib_prefix=no + need_version=no + soname_spec='${libname}${release}${shared_ext}$major' + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + shlibpath_var=LD_LIBRARY_PATH + sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib" + sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec" + ;; + +sco3.2v5*) + version_type=osf + soname_spec='${libname}${release}${shared_ext}$major' + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + shlibpath_var=LD_LIBRARY_PATH + ;; + +solaris*) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + hardcode_into_libs=yes + # ldd complains unless libraries are executable + postinstall_cmds='chmod +x $lib' + ;; + +sunos4*) + version_type=sunos + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' + finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + if test "$with_gnu_ld" = yes; then + need_lib_prefix=no + fi + need_version=yes + ;; + +sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) + version_type=linux + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + case $host_vendor in + sni) + shlibpath_overrides_runpath=no + need_lib_prefix=no + export_dynamic_flag_spec='${wl}-Blargedynsym' + runpath_var=LD_RUN_PATH + ;; + siemens) + need_lib_prefix=no + ;; + motorola) + need_lib_prefix=no + need_version=no + shlibpath_overrides_runpath=no + sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib' + ;; + esac + ;; + +sysv4*MP*) + if test -d /usr/nec ;then + version_type=linux + library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}' + soname_spec='$libname${shared_ext}.$major' + shlibpath_var=LD_LIBRARY_PATH + fi + ;; + +uts4*) + version_type=linux + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + ;; + +*) + dynamic_linker=no + ;; +esac +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $dynamic_linker" >&5 +$as_echo "$dynamic_linker" >&6; } +test "$dynamic_linker" = no && can_build_shared=no + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to hardcode library paths into programs" >&5 +$as_echo_n "checking how to hardcode library paths into programs... " >&6; } +hardcode_action= +if test -n "$hardcode_libdir_flag_spec" || \ + test -n "$runpath_var " || \ + test "X$hardcode_automatic"="Xyes" ; then + + # We can hardcode non-existant directories. + if test "$hardcode_direct" != no && + # If the only mechanism to avoid hardcoding is shlibpath_var, we + # have to relink, otherwise we might link with an installed library + # when we should be linking with a yet-to-be-installed one + ## test "$_LT_AC_TAGVAR(hardcode_shlibpath_var, )" != no && + test "$hardcode_minus_L" != no; then + # Linking always hardcodes the temporary library directory. + hardcode_action=relink + else + # We can link without hardcoding, and we can hardcode nonexisting dirs. + hardcode_action=immediate + fi +else + # We cannot hardcode anything, or else we can only hardcode existing + # directories. + hardcode_action=unsupported +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $hardcode_action" >&5 +$as_echo "$hardcode_action" >&6; } + +if test "$hardcode_action" = relink; then + # Fast installation is not supported + enable_fast_install=no +elif test "$shlibpath_overrides_runpath" = yes || + test "$enable_shared" = no; then + # Fast installation is not necessary + enable_fast_install=needless +fi + +striplib= +old_striplib= +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether stripping libraries is possible" >&5 +$as_echo_n "checking whether stripping libraries is possible... " >&6; } +if test -n "$STRIP" && $STRIP -V 2>&1 | grep "GNU strip" >/dev/null; then + test -z "$old_striplib" && old_striplib="$STRIP --strip-debug" + test -z "$striplib" && striplib="$STRIP --strip-unneeded" + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } +else +# FIXME - insert some real tests, host_os isn't really good enough + case $host_os in + darwin*) + if test -n "$STRIP" ; then + striplib="$STRIP -x" + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + ;; + *) + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + ;; + esac +fi + +if test "x$enable_dlopen" != xyes; then + enable_dlopen=unknown + enable_dlopen_self=unknown + enable_dlopen_self_static=unknown +else + lt_cv_dlopen=no + lt_cv_dlopen_libs= + + case $host_os in + beos*) + lt_cv_dlopen="load_add_on" + lt_cv_dlopen_libs= + lt_cv_dlopen_self=yes + ;; + + mingw* | pw32*) + lt_cv_dlopen="LoadLibrary" + lt_cv_dlopen_libs= + ;; + + cygwin*) + lt_cv_dlopen="dlopen" + lt_cv_dlopen_libs= + ;; + + darwin*) + # if libdl is installed we need to link against it + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5 +$as_echo_n "checking for dlopen in -ldl... " >&6; } +if ${ac_cv_lib_dl_dlopen+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-ldl $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char dlopen (); +int +main () +{ +return dlopen (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_dl_dlopen=yes +else + ac_cv_lib_dl_dlopen=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5 +$as_echo "$ac_cv_lib_dl_dlopen" >&6; } +if test "x$ac_cv_lib_dl_dlopen" = xyes; then : + lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl" +else + + lt_cv_dlopen="dyld" + lt_cv_dlopen_libs= + lt_cv_dlopen_self=yes + +fi + + ;; + + *) + ac_fn_c_check_func "$LINENO" "shl_load" "ac_cv_func_shl_load" +if test "x$ac_cv_func_shl_load" = xyes; then : + lt_cv_dlopen="shl_load" +else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for shl_load in -ldld" >&5 +$as_echo_n "checking for shl_load in -ldld... " >&6; } +if ${ac_cv_lib_dld_shl_load+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-ldld $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char shl_load (); +int +main () +{ +return shl_load (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_dld_shl_load=yes +else + ac_cv_lib_dld_shl_load=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_shl_load" >&5 +$as_echo "$ac_cv_lib_dld_shl_load" >&6; } +if test "x$ac_cv_lib_dld_shl_load" = xyes; then : + lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-dld" +else + ac_fn_c_check_func "$LINENO" "dlopen" "ac_cv_func_dlopen" +if test "x$ac_cv_func_dlopen" = xyes; then : + lt_cv_dlopen="dlopen" +else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5 +$as_echo_n "checking for dlopen in -ldl... " >&6; } +if ${ac_cv_lib_dl_dlopen+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-ldl $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char dlopen (); +int +main () +{ +return dlopen (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_dl_dlopen=yes +else + ac_cv_lib_dl_dlopen=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5 +$as_echo "$ac_cv_lib_dl_dlopen" >&6; } +if test "x$ac_cv_lib_dl_dlopen" = xyes; then : + lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl" +else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -lsvld" >&5 +$as_echo_n "checking for dlopen in -lsvld... " >&6; } +if ${ac_cv_lib_svld_dlopen+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-lsvld $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char dlopen (); +int +main () +{ +return dlopen (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_svld_dlopen=yes +else + ac_cv_lib_svld_dlopen=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_svld_dlopen" >&5 +$as_echo "$ac_cv_lib_svld_dlopen" >&6; } +if test "x$ac_cv_lib_svld_dlopen" = xyes; then : + lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld" +else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dld_link in -ldld" >&5 +$as_echo_n "checking for dld_link in -ldld... " >&6; } +if ${ac_cv_lib_dld_dld_link+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-ldld $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char dld_link (); +int +main () +{ +return dld_link (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_dld_dld_link=yes +else + ac_cv_lib_dld_dld_link=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_dld_link" >&5 +$as_echo "$ac_cv_lib_dld_dld_link" >&6; } +if test "x$ac_cv_lib_dld_dld_link" = xyes; then : + lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-dld" +fi + + +fi + + +fi + + +fi + + +fi + + +fi + + ;; + esac + + if test "x$lt_cv_dlopen" != xno; then + enable_dlopen=yes + else + enable_dlopen=no + fi + + case $lt_cv_dlopen in + dlopen) + save_CPPFLAGS="$CPPFLAGS" + test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H" + + save_LDFLAGS="$LDFLAGS" + eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\" + + save_LIBS="$LIBS" + LIBS="$lt_cv_dlopen_libs $LIBS" + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a program can dlopen itself" >&5 +$as_echo_n "checking whether a program can dlopen itself... " >&6; } +if ${lt_cv_dlopen_self+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then : + lt_cv_dlopen_self=cross +else + lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 + lt_status=$lt_dlunknown + cat > conftest.$ac_ext < +#endif + +#include + +#ifdef RTLD_GLOBAL +# define LT_DLGLOBAL RTLD_GLOBAL +#else +# ifdef DL_GLOBAL +# define LT_DLGLOBAL DL_GLOBAL +# else +# define LT_DLGLOBAL 0 +# endif +#endif + +/* We may have to define LT_DLLAZY_OR_NOW in the command line if we + find out it does not work in some platform. */ +#ifndef LT_DLLAZY_OR_NOW +# ifdef RTLD_LAZY +# define LT_DLLAZY_OR_NOW RTLD_LAZY +# else +# ifdef DL_LAZY +# define LT_DLLAZY_OR_NOW DL_LAZY +# else +# ifdef RTLD_NOW +# define LT_DLLAZY_OR_NOW RTLD_NOW +# else +# ifdef DL_NOW +# define LT_DLLAZY_OR_NOW DL_NOW +# else +# define LT_DLLAZY_OR_NOW 0 +# endif +# endif +# endif +# endif +#endif + +#ifdef __cplusplus +extern "C" void exit (int); +#endif + +void fnord() { int i=42;} +int main () +{ + void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW); + int status = $lt_dlunknown; + + if (self) + { + if (dlsym (self,"fnord")) status = $lt_dlno_uscore; + else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore; + /* dlclose (self); */ + } + + exit (status); +} +EOF + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 + (eval $ac_link) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && test -s conftest${ac_exeext} 2>/dev/null; then + (./conftest; exit; ) 2>/dev/null + lt_status=$? + case x$lt_status in + x$lt_dlno_uscore) lt_cv_dlopen_self=yes ;; + x$lt_dlneed_uscore) lt_cv_dlopen_self=yes ;; + x$lt_unknown|x*) lt_cv_dlopen_self=no ;; + esac + else : + # compilation failed + lt_cv_dlopen_self=no + fi +fi +rm -fr conftest* + + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self" >&5 +$as_echo "$lt_cv_dlopen_self" >&6; } + + if test "x$lt_cv_dlopen_self" = xyes; then + LDFLAGS="$LDFLAGS $link_static_flag" + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a statically linked program can dlopen itself" >&5 +$as_echo_n "checking whether a statically linked program can dlopen itself... " >&6; } +if ${lt_cv_dlopen_self_static+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then : + lt_cv_dlopen_self_static=cross +else + lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 + lt_status=$lt_dlunknown + cat > conftest.$ac_ext < +#endif + +#include + +#ifdef RTLD_GLOBAL +# define LT_DLGLOBAL RTLD_GLOBAL +#else +# ifdef DL_GLOBAL +# define LT_DLGLOBAL DL_GLOBAL +# else +# define LT_DLGLOBAL 0 +# endif +#endif + +/* We may have to define LT_DLLAZY_OR_NOW in the command line if we + find out it does not work in some platform. */ +#ifndef LT_DLLAZY_OR_NOW +# ifdef RTLD_LAZY +# define LT_DLLAZY_OR_NOW RTLD_LAZY +# else +# ifdef DL_LAZY +# define LT_DLLAZY_OR_NOW DL_LAZY +# else +# ifdef RTLD_NOW +# define LT_DLLAZY_OR_NOW RTLD_NOW +# else +# ifdef DL_NOW +# define LT_DLLAZY_OR_NOW DL_NOW +# else +# define LT_DLLAZY_OR_NOW 0 +# endif +# endif +# endif +# endif +#endif + +#ifdef __cplusplus +extern "C" void exit (int); +#endif + +void fnord() { int i=42;} +int main () +{ + void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW); + int status = $lt_dlunknown; + + if (self) + { + if (dlsym (self,"fnord")) status = $lt_dlno_uscore; + else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore; + /* dlclose (self); */ + } + + exit (status); +} +EOF + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 + (eval $ac_link) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && test -s conftest${ac_exeext} 2>/dev/null; then + (./conftest; exit; ) 2>/dev/null + lt_status=$? + case x$lt_status in + x$lt_dlno_uscore) lt_cv_dlopen_self_static=yes ;; + x$lt_dlneed_uscore) lt_cv_dlopen_self_static=yes ;; + x$lt_unknown|x*) lt_cv_dlopen_self_static=no ;; + esac + else : + # compilation failed + lt_cv_dlopen_self_static=no + fi +fi +rm -fr conftest* + + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self_static" >&5 +$as_echo "$lt_cv_dlopen_self_static" >&6; } + fi + + CPPFLAGS="$save_CPPFLAGS" + LDFLAGS="$save_LDFLAGS" + LIBS="$save_LIBS" + ;; + esac + + case $lt_cv_dlopen_self in + yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;; + *) enable_dlopen_self=unknown ;; + esac + + case $lt_cv_dlopen_self_static in + yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;; + *) enable_dlopen_self_static=unknown ;; + esac +fi + + +# Report which librarie types wil actually be built +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if libtool supports shared libraries" >&5 +$as_echo_n "checking if libtool supports shared libraries... " >&6; } +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $can_build_shared" >&5 +$as_echo "$can_build_shared" >&6; } + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build shared libraries" >&5 +$as_echo_n "checking whether to build shared libraries... " >&6; } +test "$can_build_shared" = "no" && enable_shared=no + +# On AIX, shared libraries and static libraries use the same namespace, and +# are all built from PIC. +case "$host_os" in +aix3*) + test "$enable_shared" = yes && enable_static=no + if test -n "$RANLIB"; then + archive_cmds="$archive_cmds~\$RANLIB \$lib" + postinstall_cmds='$RANLIB $lib' + fi + ;; + +aix4*) + if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then + test "$enable_shared" = yes && enable_static=no + fi + ;; + darwin* | rhapsody*) + if test "$GCC" = yes; then + archive_cmds_need_lc=no + case "$host_os" in + rhapsody* | darwin1.[012]) + allow_undefined_flag='-undefined suppress' + ;; + *) # Darwin 1.3 on + if test -z ${MACOSX_DEPLOYMENT_TARGET} ; then + allow_undefined_flag='-flat_namespace -undefined suppress' + else + case ${MACOSX_DEPLOYMENT_TARGET} in + 10.[012]) + allow_undefined_flag='-flat_namespace -undefined suppress' + ;; + 10.*) + allow_undefined_flag='-undefined dynamic_lookup' + ;; + esac + fi + ;; + esac + output_verbose_link_cmd='echo' + archive_cmds='$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs$compiler_flags -install_name $rpath/$soname $verstring' + module_cmds='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags' + # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's + archive_expsym_cmds='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs$compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' + module_expsym_cmds='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' + hardcode_direct=no + hardcode_automatic=yes + hardcode_shlibpath_var=unsupported + whole_archive_flag_spec='-all_load $convenience' + link_all_deplibs=yes + else + ld_shlibs=no + fi + ;; +esac +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_shared" >&5 +$as_echo "$enable_shared" >&6; } + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build static libraries" >&5 +$as_echo_n "checking whether to build static libraries... " >&6; } +# Make sure either enable_shared or enable_static is yes. +test "$enable_shared" = yes || enable_static=yes +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_static" >&5 +$as_echo "$enable_static" >&6; } + +# The else clause should only fire when bootstrapping the +# libtool distribution, otherwise you forgot to ship ltmain.sh +# with your package, and you will get complaints that there are +# no rules to generate ltmain.sh. +if test -f "$ltmain"; then + # See if we are running on zsh, and set the options which allow our commands through + # without removal of \ escapes. + if test -n "${ZSH_VERSION+set}" ; then + setopt NO_GLOB_SUBST + fi + # Now quote all the things that may contain metacharacters while being + # careful not to overquote the AC_SUBSTed values. We take copies of the + # variables and quote the copies for generation of the libtool script. + for var in echo old_CC old_CFLAGS AR AR_FLAGS EGREP RANLIB LN_S LTCC NM \ + SED SHELL STRIP \ + libname_spec library_names_spec soname_spec extract_expsyms_cmds \ + old_striplib striplib file_magic_cmd finish_cmds finish_eval \ + deplibs_check_method reload_flag reload_cmds need_locks \ + lt_cv_sys_global_symbol_pipe lt_cv_sys_global_symbol_to_cdecl \ + lt_cv_sys_global_symbol_to_c_name_address \ + sys_lib_search_path_spec sys_lib_dlsearch_path_spec \ + old_postinstall_cmds old_postuninstall_cmds \ + compiler \ + CC \ + LD \ + lt_prog_compiler_wl \ + lt_prog_compiler_pic \ + lt_prog_compiler_static \ + lt_prog_compiler_no_builtin_flag \ + export_dynamic_flag_spec \ + thread_safe_flag_spec \ + whole_archive_flag_spec \ + enable_shared_with_static_runtimes \ + old_archive_cmds \ + old_archive_from_new_cmds \ + predep_objects \ + postdep_objects \ + predeps \ + postdeps \ + compiler_lib_search_path \ + archive_cmds \ + archive_expsym_cmds \ + postinstall_cmds \ + postuninstall_cmds \ + old_archive_from_expsyms_cmds \ + allow_undefined_flag \ + no_undefined_flag \ + export_symbols_cmds \ + hardcode_libdir_flag_spec \ + hardcode_libdir_flag_spec_ld \ + hardcode_libdir_separator \ + hardcode_automatic \ + module_cmds \ + module_expsym_cmds \ + lt_cv_prog_compiler_c_o \ + exclude_expsyms \ + include_expsyms; do + + case $var in + old_archive_cmds | \ + old_archive_from_new_cmds | \ + archive_cmds | \ + archive_expsym_cmds | \ + module_cmds | \ + module_expsym_cmds | \ + old_archive_from_expsyms_cmds | \ + export_symbols_cmds | \ + extract_expsyms_cmds | reload_cmds | finish_cmds | \ + postinstall_cmds | postuninstall_cmds | \ + old_postinstall_cmds | old_postuninstall_cmds | \ + sys_lib_search_path_spec | sys_lib_dlsearch_path_spec) + # Double-quote double-evaled strings. + eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$double_quote_subst\" -e \"\$sed_quote_subst\" -e \"\$delay_variable_subst\"\`\\\"" + ;; + *) + eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$sed_quote_subst\"\`\\\"" + ;; + esac + done + + case $lt_echo in + *'\$0 --fallback-echo"') + lt_echo=`$echo "X$lt_echo" | $Xsed -e 's/\\\\\\\$0 --fallback-echo"$/$0 --fallback-echo"/'` + ;; + esac + +cfgfile="${ofile}T" + trap "$rm \"$cfgfile\"; exit 1" 1 2 15 + $rm -f "$cfgfile" + { $as_echo "$as_me:${as_lineno-$LINENO}: creating $ofile" >&5 +$as_echo "$as_me: creating $ofile" >&6;} + + cat <<__EOF__ >> "$cfgfile" +#! $SHELL + +# `$echo "$cfgfile" | sed 's%^.*/%%'` - Provide generalized library-building support services. +# Generated automatically by $PROGRAM (GNU $PACKAGE $VERSION$TIMESTAMP) +# NOTE: Changes made to this file will be lost: look at ltmain.sh. +# +# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001 +# Free Software Foundation, Inc. +# +# This file is part of GNU Libtool: +# Originally by Gordon Matzigkeit , 1996 +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +# +# As a special exception to the GNU General Public License, if you +# distribute this file as part of a program that contains a +# configuration script generated by Autoconf, you may include it under +# the same distribution terms that you use for the rest of that program. + +# A sed program that does not truncate output. +SED=$lt_SED + +# Sed that helps us avoid accidentally triggering echo(1) options like -n. +Xsed="$SED -e s/^X//" + +# The HP-UX ksh and POSIX shell print the target directory to stdout +# if CDPATH is set. +if test "X\${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi + +# The names of the tagged configurations supported by this script. +available_tags= + +# ### BEGIN LIBTOOL CONFIG + +# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`: + +# Shell to use when invoking shell scripts. +SHELL=$lt_SHELL + +# Whether or not to build shared libraries. +build_libtool_libs=$enable_shared + +# Whether or not to build static libraries. +build_old_libs=$enable_static + +# Whether or not to add -lc for building shared libraries. +build_libtool_need_lc=$archive_cmds_need_lc + +# Whether or not to disallow shared libs when runtime libs are static +allow_libtool_libs_with_static_runtimes=$enable_shared_with_static_runtimes + +# Whether or not to optimize for fast installation. +fast_install=$enable_fast_install + +# The host system. +host_alias=$host_alias +host=$host + +# An echo program that does not interpret backslashes. +echo=$lt_echo + +# The archiver. +AR=$lt_AR +AR_FLAGS=$lt_AR_FLAGS + +# A C compiler. +LTCC=$lt_LTCC + +# A language-specific compiler. +CC=$lt_compiler + +# Is the compiler the GNU C compiler? +with_gcc=$GCC + +# An ERE matcher. +EGREP=$lt_EGREP + +# The linker used to build libraries. +LD=$lt_LD + +# Whether we need hard or soft links. +LN_S=$lt_LN_S + +# A BSD-compatible nm program. +NM=$lt_NM + +# A symbol stripping program +STRIP=$lt_STRIP + +# Used to examine libraries when file_magic_cmd begins "file" +MAGIC_CMD=$MAGIC_CMD + +# Used on cygwin: DLL creation program. +DLLTOOL="$DLLTOOL" + +# Used on cygwin: object dumper. +OBJDUMP="$OBJDUMP" + +# Used on cygwin: assembler. +AS="$AS" + +# The name of the directory that contains temporary libtool files. +objdir=$objdir + +# How to create reloadable object files. +reload_flag=$lt_reload_flag +reload_cmds=$lt_reload_cmds + +# How to pass a linker flag through the compiler. +wl=$lt_lt_prog_compiler_wl + +# Object file suffix (normally "o"). +objext="$ac_objext" + +# Old archive suffix (normally "a"). +libext="$libext" + +# Shared library suffix (normally ".so"). +shrext='$shrext' + +# Executable file suffix (normally ""). +exeext="$exeext" + +# Additional compiler flags for building library objects. +pic_flag=$lt_lt_prog_compiler_pic +pic_mode=$pic_mode + +# What is the maximum length of a command? +max_cmd_len=$lt_cv_sys_max_cmd_len + +# Does compiler simultaneously support -c and -o options? +compiler_c_o=$lt_lt_cv_prog_compiler_c_o + +# Must we lock files when doing compilation ? +need_locks=$lt_need_locks + +# Do we need the lib prefix for modules? +need_lib_prefix=$need_lib_prefix + +# Do we need a version for libraries? +need_version=$need_version + +# Whether dlopen is supported. +dlopen_support=$enable_dlopen + +# Whether dlopen of programs is supported. +dlopen_self=$enable_dlopen_self + +# Whether dlopen of statically linked programs is supported. +dlopen_self_static=$enable_dlopen_self_static + +# Compiler flag to prevent dynamic linking. +link_static_flag=$lt_lt_prog_compiler_static + +# Compiler flag to turn off builtin functions. +no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag + +# Compiler flag to allow reflexive dlopens. +export_dynamic_flag_spec=$lt_export_dynamic_flag_spec + +# Compiler flag to generate shared objects directly from archives. +whole_archive_flag_spec=$lt_whole_archive_flag_spec + +# Compiler flag to generate thread-safe objects. +thread_safe_flag_spec=$lt_thread_safe_flag_spec + +# Library versioning type. +version_type=$version_type + +# Format of library name prefix. +libname_spec=$lt_libname_spec + +# List of archive names. First name is the real one, the rest are links. +# The last name is the one that the linker finds with -lNAME. +library_names_spec=$lt_library_names_spec + +# The coded name of the library, if different from the real name. +soname_spec=$lt_soname_spec + +# Commands used to build and install an old-style archive. +RANLIB=$lt_RANLIB +old_archive_cmds=$lt_old_archive_cmds +old_postinstall_cmds=$lt_old_postinstall_cmds +old_postuninstall_cmds=$lt_old_postuninstall_cmds + +# Create an old-style archive from a shared archive. +old_archive_from_new_cmds=$lt_old_archive_from_new_cmds + +# Create a temporary old-style archive to link instead of a shared archive. +old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds + +# Commands used to build and install a shared archive. +archive_cmds=$lt_archive_cmds +archive_expsym_cmds=$lt_archive_expsym_cmds +postinstall_cmds=$lt_postinstall_cmds +postuninstall_cmds=$lt_postuninstall_cmds + +# Commands used to build a loadable module (assumed same as above if empty) +module_cmds=$lt_module_cmds +module_expsym_cmds=$lt_module_expsym_cmds + +# Commands to strip libraries. +old_striplib=$lt_old_striplib +striplib=$lt_striplib + +# Dependencies to place before the objects being linked to create a +# shared library. +predep_objects=$lt_predep_objects + +# Dependencies to place after the objects being linked to create a +# shared library. +postdep_objects=$lt_postdep_objects + +# Dependencies to place before the objects being linked to create a +# shared library. +predeps=$lt_predeps + +# Dependencies to place after the objects being linked to create a +# shared library. +postdeps=$lt_postdeps + +# The library search path used internally by the compiler when linking +# a shared library. +compiler_lib_search_path=$lt_compiler_lib_search_path + +# Method to check whether dependent libraries are shared objects. +deplibs_check_method=$lt_deplibs_check_method + +# Command to use when deplibs_check_method == file_magic. +file_magic_cmd=$lt_file_magic_cmd + +# Flag that allows shared libraries with undefined symbols to be built. +allow_undefined_flag=$lt_allow_undefined_flag + +# Flag that forces no undefined symbols. +no_undefined_flag=$lt_no_undefined_flag + +# Commands used to finish a libtool library installation in a directory. +finish_cmds=$lt_finish_cmds + +# Same as above, but a single script fragment to be evaled but not shown. +finish_eval=$lt_finish_eval + +# Take the output of nm and produce a listing of raw symbols and C names. +global_symbol_pipe=$lt_lt_cv_sys_global_symbol_pipe + +# Transform the output of nm in a proper C declaration +global_symbol_to_cdecl=$lt_lt_cv_sys_global_symbol_to_cdecl + +# Transform the output of nm in a C name address pair +global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address + +# This is the shared library runtime path variable. +runpath_var=$runpath_var + +# This is the shared library path variable. +shlibpath_var=$shlibpath_var + +# Is shlibpath searched before the hard-coded library search path? +shlibpath_overrides_runpath=$shlibpath_overrides_runpath + +# How to hardcode a shared library path into an executable. +hardcode_action=$hardcode_action + +# Whether we should hardcode library paths into libraries. +hardcode_into_libs=$hardcode_into_libs + +# Flag to hardcode \$libdir into a binary during linking. +# This must work even if \$libdir does not exist. +hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec + +# If ld is used when linking, flag to hardcode \$libdir into +# a binary during linking. This must work even if \$libdir does +# not exist. +hardcode_libdir_flag_spec_ld=$lt_hardcode_libdir_flag_spec_ld + +# Whether we need a single -rpath flag with a separated argument. +hardcode_libdir_separator=$lt_hardcode_libdir_separator + +# Set to yes if using DIR/libNAME${shared_ext} during linking hardcodes DIR into the +# resulting binary. +hardcode_direct=$hardcode_direct + +# Set to yes if using the -LDIR flag during linking hardcodes DIR into the +# resulting binary. +hardcode_minus_L=$hardcode_minus_L + +# Set to yes if using SHLIBPATH_VAR=DIR during linking hardcodes DIR into +# the resulting binary. +hardcode_shlibpath_var=$hardcode_shlibpath_var + +# Set to yes if building a shared library automatically hardcodes DIR into the library +# and all subsequent libraries and executables linked against it. +hardcode_automatic=$hardcode_automatic + +# Variables whose values should be saved in libtool wrapper scripts and +# restored at relink time. +variables_saved_for_relink="$variables_saved_for_relink" + +# Whether libtool must link a program against all its dependency libraries. +link_all_deplibs=$link_all_deplibs + +# Compile-time system search path for libraries +sys_lib_search_path_spec=$lt_sys_lib_search_path_spec + +# Run-time system search path for libraries +sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec + +# Fix the shell variable \$srcfile for the compiler. +fix_srcfile_path="$fix_srcfile_path" + +# Set to yes if exported symbols are required. +always_export_symbols=$always_export_symbols + +# The commands to list exported symbols. +export_symbols_cmds=$lt_export_symbols_cmds + +# The commands to extract the exported symbol list from a shared archive. +extract_expsyms_cmds=$lt_extract_expsyms_cmds + +# Symbols that should not be listed in the preloaded symbols. +exclude_expsyms=$lt_exclude_expsyms + +# Symbols that must always be exported. +include_expsyms=$lt_include_expsyms + +# ### END LIBTOOL CONFIG + +__EOF__ + + + case $host_os in + aix3*) + cat <<\EOF >> "$cfgfile" + +# AIX sometimes has problems with the GCC collect2 program. For some +# reason, if we set the COLLECT_NAMES environment variable, the problems +# vanish in a puff of smoke. +if test "X${COLLECT_NAMES+set}" != Xset; then + COLLECT_NAMES= + export COLLECT_NAMES +fi +EOF + ;; + esac + + # We use sed instead of cat because bash on DJGPP gets confused if + # if finds mixed CR/LF and LF-only lines. Since sed operates in + # text mode, it properly converts lines to CR/LF. This bash problem + # is reportedly fixed, but why not run on old versions too? + sed '$q' "$ltmain" >> "$cfgfile" || (rm -f "$cfgfile"; exit 1) + + mv -f "$cfgfile" "$ofile" || \ + (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile") + chmod +x "$ofile" + +else + # If there is no Makefile yet, we rely on a make rule to execute + # `config.status --recheck' to rerun these tests and create the + # libtool script then. + ltmain_in=`echo $ltmain | sed -e 's/\.sh$/.in/'` + if test -f "$ltmain_in"; then + test -f Makefile && make "$ltmain" + fi +fi + + +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu + +CC="$lt_save_CC" + + +@%:@ Check whether --with-tags was given. +if test "${with_tags+set}" = set; then : + withval=$with_tags; tagnames="$withval" +fi + + +if test -f "$ltmain" && test -n "$tagnames"; then + if test ! -f "${ofile}"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: output file \`$ofile' does not exist" >&5 +$as_echo "$as_me: WARNING: output file \`$ofile' does not exist" >&2;} + fi + + if test -z "$LTCC"; then + eval "`$SHELL ${ofile} --config | grep '^LTCC='`" + if test -z "$LTCC"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: output file \`$ofile' does not look like a libtool script" >&5 +$as_echo "$as_me: WARNING: output file \`$ofile' does not look like a libtool script" >&2;} + else + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using \`LTCC=$LTCC', extracted from \`$ofile'" >&5 +$as_echo "$as_me: WARNING: using \`LTCC=$LTCC', extracted from \`$ofile'" >&2;} + fi + fi + + # Extract list of available tagged configurations in $ofile. + # Note that this assumes the entire list is on one line. + available_tags=`grep "^available_tags=" "${ofile}" | $SED -e 's/available_tags=\(.*$\)/\1/' -e 's/\"//g'` + + lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," + for tagname in $tagnames; do + IFS="$lt_save_ifs" + # Check whether tagname contains only valid characters + case `$echo "X$tagname" | $Xsed -e 's:[-_ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890,/]::g'` in + "") ;; + *) as_fn_error $? "invalid tag name: $tagname" "$LINENO" 5 + ;; + esac + + if grep "^# ### BEGIN LIBTOOL TAG CONFIG: $tagname$" < "${ofile}" > /dev/null + then + as_fn_error $? "tag name \"$tagname\" already exists" "$LINENO" 5 + fi + + # Update the list of available tags. + if test -n "$tagname"; then + echo appending configuration tag \"$tagname\" to $ofile + + case $tagname in + CXX) + if test -n "$CXX" && test "X$CXX" != "Xno"; then + ac_ext=cpp +ac_cpp='$CXXCPP $CPPFLAGS' +ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_cxx_compiler_gnu + + + + +archive_cmds_need_lc_CXX=no +allow_undefined_flag_CXX= +always_export_symbols_CXX=no +archive_expsym_cmds_CXX= +export_dynamic_flag_spec_CXX= +hardcode_direct_CXX=no +hardcode_libdir_flag_spec_CXX= +hardcode_libdir_flag_spec_ld_CXX= +hardcode_libdir_separator_CXX= +hardcode_minus_L_CXX=no +hardcode_automatic_CXX=no +module_cmds_CXX= +module_expsym_cmds_CXX= +link_all_deplibs_CXX=unknown +old_archive_cmds_CXX=$old_archive_cmds +no_undefined_flag_CXX= +whole_archive_flag_spec_CXX= +enable_shared_with_static_runtimes_CXX=no + +# Dependencies to place before and after the object being linked: +predep_objects_CXX= +postdep_objects_CXX= +predeps_CXX= +postdeps_CXX= +compiler_lib_search_path_CXX= + +# Source file extension for C++ test sources. +ac_ext=cc + +# Object file extension for compiled C++ test sources. +objext=o +objext_CXX=$objext + +# Code to be used in simple compile tests +lt_simple_compile_test_code="int some_variable = 0;\n" + +# Code to be used in simple link tests +lt_simple_link_test_code='int main(int, char *) { return(0); }\n' + +# ltmain only uses $CC for tagged configurations so make sure $CC is set. + +# If no C compiler was specified, use CC. +LTCC=${LTCC-"$CC"} + +# Allow CC to be a program name with arguments. +compiler=$CC + + +# Allow CC to be a program name with arguments. +lt_save_CC=$CC +lt_save_LD=$LD +lt_save_GCC=$GCC +GCC=$GXX +lt_save_with_gnu_ld=$with_gnu_ld +lt_save_path_LD=$lt_cv_path_LD +if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then + lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx +else + unset lt_cv_prog_gnu_ld +fi +if test -n "${lt_cv_path_LDCXX+set}"; then + lt_cv_path_LD=$lt_cv_path_LDCXX +else + unset lt_cv_path_LD +fi +test -z "${LDCXX+set}" || LD=$LDCXX +CC=${CXX-"c++"} +compiler=$CC +compiler_CXX=$CC +cc_basename=`$echo X"$compiler" | $Xsed -e 's%^.*/%%'` + +# We don't want -fno-exception wen compiling C++ code, so set the +# no_builtin_flag separately +if test "$GXX" = yes; then + lt_prog_compiler_no_builtin_flag_CXX=' -fno-builtin' +else + lt_prog_compiler_no_builtin_flag_CXX= +fi + +if test "$GXX" = yes; then + # Set up default GNU C++ configuration + + +@%:@ Check whether --with-gnu-ld was given. +if test "${with_gnu_ld+set}" = set; then : + withval=$with_gnu_ld; test "$withval" = no || with_gnu_ld=yes +else + with_gnu_ld=no +fi + +ac_prog=ld +if test "$GCC" = yes; then + # Check if gcc -print-prog-name=ld gives a path. + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld used by $CC" >&5 +$as_echo_n "checking for ld used by $CC... " >&6; } + case $host in + *-*-mingw*) + # gcc leaves a trailing carriage return which upsets mingw + ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; + *) + ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; + esac + case $ac_prog in + # Accept absolute paths. + [\\/]* | ?:[\\/]*) + re_direlt='/[^/][^/]*/\.\./' + # Canonicalize the pathname of ld + ac_prog=`echo $ac_prog| $SED 's%\\\\%/%g'` + while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do + ac_prog=`echo $ac_prog| $SED "s%$re_direlt%/%"` + done + test -z "$LD" && LD="$ac_prog" + ;; + "") + # If it fails, then pretend we aren't using GCC. + ac_prog=ld + ;; + *) + # If it is relative, then search for the first ld in PATH. + with_gnu_ld=unknown + ;; + esac +elif test "$with_gnu_ld" = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5 +$as_echo_n "checking for GNU ld... " >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5 +$as_echo_n "checking for non-GNU ld... " >&6; } +fi +if ${lt_cv_path_LD+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -z "$LD"; then + lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR + for ac_dir in $PATH; do + IFS="$lt_save_ifs" + test -z "$ac_dir" && ac_dir=. + if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then + lt_cv_path_LD="$ac_dir/$ac_prog" + # Check to see if the program is GNU ld. I'd rather use --version, + # but apparently some GNU ld's only accept -v. + # Break only if it was the GNU/non-GNU ld that we prefer. + case `"$lt_cv_path_LD" -v 2>&1 &5 +$as_echo "$LD" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi +test -z "$LD" && as_fn_error $? "no acceptable ld found in \$PATH" "$LINENO" 5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5 +$as_echo_n "checking if the linker ($LD) is GNU ld... " >&6; } +if ${lt_cv_prog_gnu_ld+:} false; then : + $as_echo_n "(cached) " >&6 +else + # I'd rather use --version here, but apparently some GNU ld's only accept -v. +case `$LD -v 2>&1 &5 +$as_echo "$lt_cv_prog_gnu_ld" >&6; } +with_gnu_ld=$lt_cv_prog_gnu_ld + + + + # Check if GNU C++ uses GNU ld as the underlying linker, since the + # archiving commands below assume that GNU ld is being used. + if test "$with_gnu_ld" = yes; then + archive_cmds_CXX='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib' + archive_expsym_cmds_CXX='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + + hardcode_libdir_flag_spec_CXX='${wl}--rpath ${wl}$libdir' + export_dynamic_flag_spec_CXX='${wl}--export-dynamic' + + # If archive_cmds runs LD, not CC, wlarc should be empty + # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to + # investigate it a little bit more. (MM) + wlarc='${wl}' + + # ancient GNU ld didn't support --whole-archive et. al. + if eval "`$CC -print-prog-name=ld` --help 2>&1" | \ + grep 'no-whole-archive' > /dev/null; then + whole_archive_flag_spec_CXX="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' + else + whole_archive_flag_spec_CXX= + fi + else + with_gnu_ld=no + wlarc= + + # A generic and very simple default shared library creation + # command for GNU C++ for the case where it uses the native + # linker, instead of GNU ld. If possible, this setting should + # overridden to take advantage of the native linker features on + # the platform it is being used on. + archive_cmds_CXX='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib' + fi + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "\-L"' + +else + GXX=no + with_gnu_ld=no + wlarc= +fi + +# PORTME: fill in a description of your system's C++ link characteristics +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&5 +$as_echo_n "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; } +ld_shlibs_CXX=yes +case $host_os in + aix3*) + # FIXME: insert proper C++ library support + ld_shlibs_CXX=no + ;; + aix4* | aix5*) + if test "$host_cpu" = ia64; then + # On IA64, the linker does run time linking by default, so we don't + # have to do anything special. + aix_use_runtimelinking=no + exp_sym_flag='-Bexport' + no_entry_flag="" + else + aix_use_runtimelinking=no + + # Test if we are trying to use run time linking or normal + # AIX style linking. If -brtl is somewhere in LDFLAGS, we + # need to do runtime linking. + case $host_os in aix4.[23]|aix4.[23].*|aix5*) + for ld_flag in $LDFLAGS; do + case $ld_flag in + *-brtl*) + aix_use_runtimelinking=yes + break + ;; + esac + done + esac + + exp_sym_flag='-bexport' + no_entry_flag='-bnoentry' + fi + + # When large executables or shared objects are built, AIX ld can + # have problems creating the table of contents. If linking a library + # or program results in "error TOC overflow" add -mminimal-toc to + # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not + # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. + + archive_cmds_CXX='' + hardcode_direct_CXX=yes + hardcode_libdir_separator_CXX=':' + link_all_deplibs_CXX=yes + + if test "$GXX" = yes; then + case $host_os in aix4.012|aix4.012.*) + # We only want to do this on AIX 4.2 and lower, the check + # below for broken collect2 doesn't work under 4.3+ + collect2name=`${CC} -print-prog-name=collect2` + if test -f "$collect2name" && \ + strings "$collect2name" | grep resolve_lib_name >/dev/null + then + # We have reworked collect2 + hardcode_direct_CXX=yes + else + # We have old collect2 + hardcode_direct_CXX=unsupported + # It fails to find uninstalled libraries when the uninstalled + # path is not listed in the libpath. Setting hardcode_minus_L + # to unsupported forces relinking + hardcode_minus_L_CXX=yes + hardcode_libdir_flag_spec_CXX='-L$libdir' + hardcode_libdir_separator_CXX= + fi + esac + shared_flag='-shared' + else + # not using gcc + if test "$host_cpu" = ia64; then + # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release + # chokes on -Wl,-G. The following line is correct: + shared_flag='-G' + else + if test "$aix_use_runtimelinking" = yes; then + shared_flag='${wl}-G' + else + shared_flag='${wl}-bM:SRE' + fi + fi + fi + + # It seems that -bexpall does not export symbols beginning with + # underscore (_), so it is better to generate a list of symbols to export. + always_export_symbols_CXX=yes + if test "$aix_use_runtimelinking" = yes; then + # Warning - without using the other runtime loading flags (-brtl), + # -berok will link without error, but may produce a broken library. + allow_undefined_flag_CXX='-berok' + # Determine the default libpath from the value encoded in an empty executable. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_cxx_try_link "$LINENO"; then : + +aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; } +}'` +# Check for a 64-bit object if we didn't find anything. +if test -z "$aix_libpath"; then aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; } +}'`; fi +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi + + hardcode_libdir_flag_spec_CXX='${wl}-blibpath:$libdir:'"$aix_libpath" + + archive_expsym_cmds_CXX="\$CC"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols $shared_flag" + else + if test "$host_cpu" = ia64; then + hardcode_libdir_flag_spec_CXX='${wl}-R $libdir:/usr/lib:/lib' + allow_undefined_flag_CXX="-z nodefs" + archive_expsym_cmds_CXX="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols" + else + # Determine the default libpath from the value encoded in an empty executable. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_cxx_try_link "$LINENO"; then : + +aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; } +}'` +# Check for a 64-bit object if we didn't find anything. +if test -z "$aix_libpath"; then aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; } +}'`; fi +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi + + hardcode_libdir_flag_spec_CXX='${wl}-blibpath:$libdir:'"$aix_libpath" + # Warning - without using the other run time loading flags, + # -berok will link without error, but may produce a broken library. + no_undefined_flag_CXX=' ${wl}-bernotok' + allow_undefined_flag_CXX=' ${wl}-berok' + # -bexpall does not export symbols beginning with underscore (_) + always_export_symbols_CXX=yes + # Exported symbols can be pulled into shared objects from archives + whole_archive_flag_spec_CXX=' ' + archive_cmds_need_lc_CXX=yes + # This is similar to how AIX traditionally builds it's shared libraries. + archive_expsym_cmds_CXX="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${wl}-bE:$export_symbols ${wl}-bnoentry${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname' + fi + fi + ;; + chorus*) + case $cc_basename in + *) + # FIXME: insert proper C++ library support + ld_shlibs_CXX=no + ;; + esac + ;; + + cygwin* | mingw* | pw32*) + # _LT_AC_TAGVAR(hardcode_libdir_flag_spec, CXX) is actually meaningless, + # as there is no search path for DLLs. + hardcode_libdir_flag_spec_CXX='-L$libdir' + allow_undefined_flag_CXX=unsupported + always_export_symbols_CXX=no + enable_shared_with_static_runtimes_CXX=yes + + if $LD --help 2>&1 | grep 'auto-import' > /dev/null; then + archive_cmds_CXX='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--image-base=0x10000000 ${wl}--out-implib,$lib' + # If the export-symbols file already is a .def file (1st line + # is EXPORTS), use it as is; otherwise, prepend... + archive_expsym_cmds_CXX='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then + cp $export_symbols $output_objdir/$soname.def; + else + echo EXPORTS > $output_objdir/$soname.def; + cat $export_symbols >> $output_objdir/$soname.def; + fi~ + $CC -shared -nostdlib $output_objdir/$soname.def $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--image-base=0x10000000 ${wl}--out-implib,$lib' + else + ld_shlibs_CXX=no + fi + ;; + + darwin* | rhapsody*) + if test "$GXX" = yes; then + archive_cmds_need_lc_CXX=no + case "$host_os" in + rhapsody* | darwin1.[012]) + allow_undefined_flag_CXX='-undefined suppress' + ;; + *) # Darwin 1.3 on + if test -z ${MACOSX_DEPLOYMENT_TARGET} ; then + allow_undefined_flag_CXX='-flat_namespace -undefined suppress' + else + case ${MACOSX_DEPLOYMENT_TARGET} in + 10.[012]) + allow_undefined_flag_CXX='-flat_namespace -undefined suppress' + ;; + 10.*) + allow_undefined_flag_CXX='-undefined dynamic_lookup' + ;; + esac + fi + ;; + esac + lt_int_apple_cc_single_mod=no + output_verbose_link_cmd='echo' + if $CC -dumpspecs 2>&1 | grep 'single_module' >/dev/null ; then + lt_int_apple_cc_single_mod=yes + fi + if test "X$lt_int_apple_cc_single_mod" = Xyes ; then + archive_cmds_CXX='$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring' + else + archive_cmds_CXX='$CC -r ${wl}-bind_at_load -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $deplibs $compiler_flags -install_name $rpath/$soname $verstring' + fi + module_cmds_CXX='$CC ${wl}-bind_at_load $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags' + + # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's + if test "X$lt_int_apple_cc_single_mod" = Xyes ; then + archive_expsym_cmds_CXX='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' + else + archive_expsym_cmds_CXX='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -r ${wl}-bind_at_load -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' + fi + module_expsym_cmds_CXX='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' + hardcode_direct_CXX=no + hardcode_automatic_CXX=yes + hardcode_shlibpath_var_CXX=unsupported + whole_archive_flag_spec_CXX='-all_load $convenience' + link_all_deplibs_CXX=yes + else + ld_shlibs_CXX=no + fi + ;; + + dgux*) + case $cc_basename in + ec++) + # FIXME: insert proper C++ library support + ld_shlibs_CXX=no + ;; + ghcx) + # Green Hills C++ Compiler + # FIXME: insert proper C++ library support + ld_shlibs_CXX=no + ;; + *) + # FIXME: insert proper C++ library support + ld_shlibs_CXX=no + ;; + esac + ;; + freebsd12*) + # C++ shared libraries reported to be fairly broken before switch to ELF + ld_shlibs_CXX=no + ;; + freebsd-elf*) + archive_cmds_need_lc_CXX=no + ;; + freebsd* | kfreebsd*-gnu) + # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF + # conventions + ld_shlibs_CXX=yes + ;; + gnu*) + ;; + hpux9*) + hardcode_libdir_flag_spec_CXX='${wl}+b ${wl}$libdir' + hardcode_libdir_separator_CXX=: + export_dynamic_flag_spec_CXX='${wl}-E' + hardcode_direct_CXX=yes + hardcode_minus_L_CXX=yes # Not in the search PATH, + # but as the default + # location of the library. + + case $cc_basename in + CC) + # FIXME: insert proper C++ library support + ld_shlibs_CXX=no + ;; + aCC) + archive_cmds_CXX='$rm $output_objdir/$soname~$CC -b ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + # + # There doesn't appear to be a way to prevent this compiler from + # explicitly linking system object files so we need to strip them + # from the output so that they don't get included in the library + # dependencies. + output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | egrep "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' + ;; + *) + if test "$GXX" = yes; then + archive_cmds_CXX='$rm $output_objdir/$soname~$CC -shared -nostdlib -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' + else + # FIXME: insert proper C++ library support + ld_shlibs_CXX=no + fi + ;; + esac + ;; + hpux10*|hpux11*) + if test $with_gnu_ld = no; then + case "$host_cpu" in + hppa*64*) + hardcode_libdir_flag_spec_CXX='${wl}+b ${wl}$libdir' + hardcode_libdir_flag_spec_ld_CXX='+b $libdir' + hardcode_libdir_separator_CXX=: + ;; + ia64*) + hardcode_libdir_flag_spec_CXX='-L$libdir' + ;; + *) + hardcode_libdir_flag_spec_CXX='${wl}+b ${wl}$libdir' + hardcode_libdir_separator_CXX=: + export_dynamic_flag_spec_CXX='${wl}-E' + ;; + esac + fi + case "$host_cpu" in + hppa*64*) + hardcode_direct_CXX=no + hardcode_shlibpath_var_CXX=no + ;; + ia64*) + hardcode_direct_CXX=no + hardcode_shlibpath_var_CXX=no + hardcode_minus_L_CXX=yes # Not in the search PATH, + # but as the default + # location of the library. + ;; + *) + hardcode_direct_CXX=yes + hardcode_minus_L_CXX=yes # Not in the search PATH, + # but as the default + # location of the library. + ;; + esac + + case $cc_basename in + CC) + # FIXME: insert proper C++ library support + ld_shlibs_CXX=no + ;; + aCC) + case "$host_cpu" in + hppa*64*|ia64*) + archive_cmds_CXX='$LD -b +h $soname -o $lib $linker_flags $libobjs $deplibs' + ;; + *) + archive_cmds_CXX='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + ;; + esac + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + # + # There doesn't appear to be a way to prevent this compiler from + # explicitly linking system object files so we need to strip them + # from the output so that they don't get included in the library + # dependencies. + output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | grep "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' + ;; + *) + if test "$GXX" = yes; then + if test $with_gnu_ld = no; then + case "$host_cpu" in + ia64*|hppa*64*) + archive_cmds_CXX='$LD -b +h $soname -o $lib $linker_flags $libobjs $deplibs' + ;; + *) + archive_cmds_CXX='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + ;; + esac + fi + else + # FIXME: insert proper C++ library support + ld_shlibs_CXX=no + fi + ;; + esac + ;; + irix5* | irix6*) + case $cc_basename in + CC) + # SGI C++ + archive_cmds_CXX='$CC -shared -all -multigot $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib' + + # Archives containing C++ object files must be created using + # "CC -ar", where "CC" is the IRIX C++ compiler. This is + # necessary to make sure instantiated templates are included + # in the archive. + old_archive_cmds_CXX='$CC -ar -WR,-u -o $oldlib $oldobjs' + ;; + *) + if test "$GXX" = yes; then + if test "$with_gnu_ld" = no; then + archive_cmds_CXX='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${objdir}/so_locations -o $lib' + else + archive_cmds_CXX='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` -o $lib' + fi + fi + link_all_deplibs_CXX=yes + ;; + esac + hardcode_libdir_flag_spec_CXX='${wl}-rpath ${wl}$libdir' + hardcode_libdir_separator_CXX=: + ;; + linux*) + case $cc_basename in + KCC) + # Kuck and Associates, Inc. (KAI) C++ Compiler + + # KCC will only create a shared library if the output file + # ends with ".so" (or ".sl" for HP-UX), so rename the library + # to its proper name (with version) after linking. + archive_cmds_CXX='tempext=`echo $shared_ext | $SED -e '\''s/\([^()0-9A-Za-z{}]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib' + archive_expsym_cmds_CXX='tempext=`echo $shared_ext | $SED -e '\''s/\([^()0-9A-Za-z{}]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib ${wl}-retain-symbols-file,$export_symbols; mv \$templib $lib' + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + # + # There doesn't appear to be a way to prevent this compiler from + # explicitly linking system object files so we need to strip them + # from the output so that they don't get included in the library + # dependencies. + output_verbose_link_cmd='templist=`$CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 | grep "ld"`; rm -f libconftest$shared_ext; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' + + hardcode_libdir_flag_spec_CXX='${wl}--rpath,$libdir' + export_dynamic_flag_spec_CXX='${wl}--export-dynamic' + + # Archives containing C++ object files must be created using + # "CC -Bstatic", where "CC" is the KAI C++ compiler. + old_archive_cmds_CXX='$CC -Bstatic -o $oldlib $oldobjs' + ;; + icpc) + # Intel C++ + with_gnu_ld=yes + archive_cmds_need_lc_CXX=no + archive_cmds_CXX='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib' + archive_expsym_cmds_CXX='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + hardcode_libdir_flag_spec_CXX='${wl}-rpath,$libdir' + export_dynamic_flag_spec_CXX='${wl}--export-dynamic' + whole_archive_flag_spec_CXX='${wl}--whole-archive$convenience ${wl}--no-whole-archive' + ;; + cxx) + # Compaq C++ + archive_cmds_CXX='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib' + archive_expsym_cmds_CXX='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib ${wl}-retain-symbols-file $wl$export_symbols' + + runpath_var=LD_RUN_PATH + hardcode_libdir_flag_spec_CXX='-rpath $libdir' + hardcode_libdir_separator_CXX=: + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + # + # There doesn't appear to be a way to prevent this compiler from + # explicitly linking system object files so we need to strip them + # from the output so that they don't get included in the library + # dependencies. + output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "ld"`; templist=`echo $templist | $SED "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' + ;; + esac + ;; + lynxos*) + # FIXME: insert proper C++ library support + ld_shlibs_CXX=no + ;; + m88k*) + # FIXME: insert proper C++ library support + ld_shlibs_CXX=no + ;; + mvs*) + case $cc_basename in + cxx) + # FIXME: insert proper C++ library support + ld_shlibs_CXX=no + ;; + *) + # FIXME: insert proper C++ library support + ld_shlibs_CXX=no + ;; + esac + ;; + netbsd* | knetbsd*-gnu) + if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then + archive_cmds_CXX='$LD -Bshareable -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags' + wlarc= + hardcode_libdir_flag_spec_CXX='-R$libdir' + hardcode_direct_CXX=yes + hardcode_shlibpath_var_CXX=no + fi + # Workaround some broken pre-1.5 toolchains + output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"' + ;; + osf3*) + case $cc_basename in + KCC) + # Kuck and Associates, Inc. (KAI) C++ Compiler + + # KCC will only create a shared library if the output file + # ends with ".so" (or ".sl" for HP-UX), so rename the library + # to its proper name (with version) after linking. + archive_cmds_CXX='tempext=`echo $shared_ext | $SED -e '\''s/\([^()0-9A-Za-z{}]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib' + + hardcode_libdir_flag_spec_CXX='${wl}-rpath,$libdir' + hardcode_libdir_separator_CXX=: + + # Archives containing C++ object files must be created using + # "CC -Bstatic", where "CC" is the KAI C++ compiler. + old_archive_cmds_CXX='$CC -Bstatic -o $oldlib $oldobjs' + + ;; + RCC) + # Rational C++ 2.4.1 + # FIXME: insert proper C++ library support + ld_shlibs_CXX=no + ;; + cxx) + allow_undefined_flag_CXX=' ${wl}-expect_unresolved ${wl}\*' + archive_cmds_CXX='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $soname `test -n "$verstring" && echo ${wl}-set_version $verstring` -update_registry ${objdir}/so_locations -o $lib' + + hardcode_libdir_flag_spec_CXX='${wl}-rpath ${wl}$libdir' + hardcode_libdir_separator_CXX=: + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + # + # There doesn't appear to be a way to prevent this compiler from + # explicitly linking system object files so we need to strip them + # from the output so that they don't get included in the library + # dependencies. + output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "ld" | grep -v "ld:"`; templist=`echo $templist | $SED "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' + ;; + *) + if test "$GXX" = yes && test "$with_gnu_ld" = no; then + allow_undefined_flag_CXX=' ${wl}-expect_unresolved ${wl}\*' + archive_cmds_CXX='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${objdir}/so_locations -o $lib' + + hardcode_libdir_flag_spec_CXX='${wl}-rpath ${wl}$libdir' + hardcode_libdir_separator_CXX=: + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "\-L"' + + else + # FIXME: insert proper C++ library support + ld_shlibs_CXX=no + fi + ;; + esac + ;; + osf4* | osf5*) + case $cc_basename in + KCC) + # Kuck and Associates, Inc. (KAI) C++ Compiler + + # KCC will only create a shared library if the output file + # ends with ".so" (or ".sl" for HP-UX), so rename the library + # to its proper name (with version) after linking. + archive_cmds_CXX='tempext=`echo $shared_ext | $SED -e '\''s/\([^()0-9A-Za-z{}]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib' + + hardcode_libdir_flag_spec_CXX='${wl}-rpath,$libdir' + hardcode_libdir_separator_CXX=: + + # Archives containing C++ object files must be created using + # the KAI C++ compiler. + old_archive_cmds_CXX='$CC -o $oldlib $oldobjs' + ;; + RCC) + # Rational C++ 2.4.1 + # FIXME: insert proper C++ library support + ld_shlibs_CXX=no + ;; + cxx) + allow_undefined_flag_CXX=' -expect_unresolved \*' + archive_cmds_CXX='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib' + archive_expsym_cmds_CXX='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~ + echo "-hidden">> $lib.exp~ + $CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname -Wl,-input -Wl,$lib.exp `test -n "$verstring" && echo -set_version $verstring` -update_registry $objdir/so_locations -o $lib~ + $rm $lib.exp' + + hardcode_libdir_flag_spec_CXX='-rpath $libdir' + hardcode_libdir_separator_CXX=: + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + # + # There doesn't appear to be a way to prevent this compiler from + # explicitly linking system object files so we need to strip them + # from the output so that they don't get included in the library + # dependencies. + output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "ld" | grep -v "ld:"`; templist=`echo $templist | $SED "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' + ;; + *) + if test "$GXX" = yes && test "$with_gnu_ld" = no; then + allow_undefined_flag_CXX=' ${wl}-expect_unresolved ${wl}\*' + archive_cmds_CXX='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${objdir}/so_locations -o $lib' + + hardcode_libdir_flag_spec_CXX='${wl}-rpath ${wl}$libdir' + hardcode_libdir_separator_CXX=: + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "\-L"' + + else + # FIXME: insert proper C++ library support + ld_shlibs_CXX=no + fi + ;; + esac + ;; + psos*) + # FIXME: insert proper C++ library support + ld_shlibs_CXX=no + ;; + sco*) + archive_cmds_need_lc_CXX=no + case $cc_basename in + CC) + # FIXME: insert proper C++ library support + ld_shlibs_CXX=no + ;; + *) + # FIXME: insert proper C++ library support + ld_shlibs_CXX=no + ;; + esac + ;; + sunos4*) + case $cc_basename in + CC) + # Sun C++ 4.x + # FIXME: insert proper C++ library support + ld_shlibs_CXX=no + ;; + lcc) + # Lucid + # FIXME: insert proper C++ library support + ld_shlibs_CXX=no + ;; + *) + # FIXME: insert proper C++ library support + ld_shlibs_CXX=no + ;; + esac + ;; + solaris*) + case $cc_basename in + CC) + # Sun C++ 4.2, 5.x and Centerline C++ + no_undefined_flag_CXX=' -zdefs' + archive_cmds_CXX='$CC -G${allow_undefined_flag} -nolib -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + archive_expsym_cmds_CXX='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ + $CC -G${allow_undefined_flag} -nolib ${wl}-M ${wl}$lib.exp -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$rm $lib.exp' + + hardcode_libdir_flag_spec_CXX='-R$libdir' + hardcode_shlibpath_var_CXX=no + case $host_os in + solaris2.0-5 | solaris2.0-5.*) ;; + *) + # The C++ compiler is used as linker so we must use $wl + # flag to pass the commands to the underlying system + # linker. + # Supported since Solaris 2.6 (maybe 2.5.1?) + whole_archive_flag_spec_CXX='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract' + ;; + esac + link_all_deplibs_CXX=yes + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + # + # There doesn't appear to be a way to prevent this compiler from + # explicitly linking system object files so we need to strip them + # from the output so that they don't get included in the library + # dependencies. + output_verbose_link_cmd='templist=`$CC -G $CFLAGS -v conftest.$objext 2>&1 | grep "\-[LR]"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' + + # Archives containing C++ object files must be created using + # "CC -xar", where "CC" is the Sun C++ compiler. This is + # necessary to make sure instantiated templates are included + # in the archive. + old_archive_cmds_CXX='$CC -xar -o $oldlib $oldobjs' + ;; + gcx) + # Green Hills C++ Compiler + archive_cmds_CXX='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib' + + # The C++ compiler must be used to create the archive. + old_archive_cmds_CXX='$CC $LDFLAGS -archive -o $oldlib $oldobjs' + ;; + *) + # GNU C++ compiler with Solaris linker + if test "$GXX" = yes && test "$with_gnu_ld" = no; then + no_undefined_flag_CXX=' ${wl}-z ${wl}defs' + if $CC --version | grep -v '^2\.7' > /dev/null; then + archive_cmds_CXX='$CC -shared -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib' + archive_expsym_cmds_CXX='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ + $CC -shared -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$rm $lib.exp' + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + output_verbose_link_cmd="$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep \"\-L\"" + else + # g++ 2.7 appears to require `-G' NOT `-shared' on this + # platform. + archive_cmds_CXX='$CC -G -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib' + archive_expsym_cmds_CXX='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ + $CC -G -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$rm $lib.exp' + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + output_verbose_link_cmd="$CC -G $CFLAGS -v conftest.$objext 2>&1 | grep \"\-L\"" + fi + + hardcode_libdir_flag_spec_CXX='${wl}-R $wl$libdir' + fi + ;; + esac + ;; + sysv5OpenUNIX8* | sysv5UnixWare7* | sysv5uw[78]* | unixware7*) + archive_cmds_need_lc_CXX=no + ;; + tandem*) + case $cc_basename in + NCC) + # NonStop-UX NCC 3.20 + # FIXME: insert proper C++ library support + ld_shlibs_CXX=no + ;; + *) + # FIXME: insert proper C++ library support + ld_shlibs_CXX=no + ;; + esac + ;; + vxworks*) + # FIXME: insert proper C++ library support + ld_shlibs_CXX=no + ;; + *) + # FIXME: insert proper C++ library support + ld_shlibs_CXX=no + ;; +esac +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs_CXX" >&5 +$as_echo "$ld_shlibs_CXX" >&6; } +test "$ld_shlibs_CXX" = no && can_build_shared=no + +GCC_CXX="$GXX" +LD_CXX="$LD" + + +cat > conftest.$ac_ext <&5 + (eval $ac_compile) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + # Parse the compiler output and extract the necessary + # objects, libraries and library flags. + + # Sentinel used to keep track of whether or not we are before + # the conftest object file. + pre_test_object_deps_done=no + + # The `*' in the case matches for architectures that use `case' in + # $output_verbose_cmd can trigger glob expansion during the loop + # eval without this substitution. + output_verbose_link_cmd="`$echo \"X$output_verbose_link_cmd\" | $Xsed -e \"$no_glob_subst\"`" + + for p in `eval $output_verbose_link_cmd`; do + case $p in + + -L* | -R* | -l*) + # Some compilers place space between "-{L,R}" and the path. + # Remove the space. + if test $p = "-L" \ + || test $p = "-R"; then + prev=$p + continue + else + prev= + fi + + if test "$pre_test_object_deps_done" = no; then + case $p in + -L* | -R*) + # Internal compiler library paths should come after those + # provided the user. The postdeps already come after the + # user supplied libs so there is no need to process them. + if test -z "$compiler_lib_search_path_CXX"; then + compiler_lib_search_path_CXX="${prev}${p}" + else + compiler_lib_search_path_CXX="${compiler_lib_search_path_CXX} ${prev}${p}" + fi + ;; + # The "-l" case would never come before the object being + # linked, so don't bother handling this case. + esac + else + if test -z "$postdeps_CXX"; then + postdeps_CXX="${prev}${p}" + else + postdeps_CXX="${postdeps_CXX} ${prev}${p}" + fi + fi + ;; + + *.$objext) + # This assumes that the test object file only shows up + # once in the compiler output. + if test "$p" = "conftest.$objext"; then + pre_test_object_deps_done=yes + continue + fi + + if test "$pre_test_object_deps_done" = no; then + if test -z "$predep_objects_CXX"; then + predep_objects_CXX="$p" + else + predep_objects_CXX="$predep_objects_CXX $p" + fi + else + if test -z "$postdep_objects_CXX"; then + postdep_objects_CXX="$p" + else + postdep_objects_CXX="$postdep_objects_CXX $p" + fi + fi + ;; + + *) ;; # Ignore the rest. + + esac + done + + # Clean up. + rm -f a.out a.exe +else + echo "libtool.m4: error: problem compiling CXX test program" +fi + +$rm -f confest.$objext + +case " $postdeps_CXX " in +*" -lc "*) archive_cmds_need_lc_CXX=no ;; +esac + +lt_prog_compiler_wl_CXX= +lt_prog_compiler_pic_CXX= +lt_prog_compiler_static_CXX= + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&5 +$as_echo_n "checking for $compiler option to produce PIC... " >&6; } + + # C++ specific cases for pic, static, wl, etc. + if test "$GXX" = yes; then + lt_prog_compiler_wl_CXX='-Wl,' + lt_prog_compiler_static_CXX='-static' + + case $host_os in + aix*) + # All AIX code is PIC. + if test "$host_cpu" = ia64; then + # AIX 5 now supports IA64 processor + lt_prog_compiler_static_CXX='-Bstatic' + fi + ;; + amigaos*) + # FIXME: we need at least 68020 code to build shared libraries, but + # adding the `-m68020' flag to GCC prevents building anything better, + # like `-m68040'. + lt_prog_compiler_pic_CXX='-m68020 -resident32 -malways-restore-a4' + ;; + beos* | cygwin* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) + # PIC is the default for these OSes. + ;; + mingw* | os2* | pw32*) + # This hack is so that the source file can tell whether it is being + # built for inclusion in a dll (and should export symbols for example). + lt_prog_compiler_pic_CXX='-DDLL_EXPORT' + ;; + darwin* | rhapsody*) + # PIC is the default on this platform + # Common symbols not allowed in MH_DYLIB files + lt_prog_compiler_pic_CXX='-fno-common' + ;; + *djgpp*) + # DJGPP does not support shared libraries at all + lt_prog_compiler_pic_CXX= + ;; + sysv4*MP*) + if test -d /usr/nec; then + lt_prog_compiler_pic_CXX=-Kconform_pic + fi + ;; + hpux*) + # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but + # not for PA HP-UX. + case "$host_cpu" in + hppa*64*|ia64*) + ;; + *) + lt_prog_compiler_pic_CXX='-fPIC' + ;; + esac + ;; + *) + lt_prog_compiler_pic_CXX='-fPIC' + ;; + esac + else + case $host_os in + aix4* | aix5*) + # All AIX code is PIC. + if test "$host_cpu" = ia64; then + # AIX 5 now supports IA64 processor + lt_prog_compiler_static_CXX='-Bstatic' + else + lt_prog_compiler_static_CXX='-bnso -bI:/lib/syscalls.exp' + fi + ;; + chorus*) + case $cc_basename in + cxch68) + # Green Hills C++ Compiler + # _LT_AC_TAGVAR(lt_prog_compiler_static, CXX)="--no_auto_instantiation -u __main -u __premain -u _abort -r $COOL_DIR/lib/libOrb.a $MVME_DIR/lib/CC/libC.a $MVME_DIR/lib/classix/libcx.s.a" + ;; + esac + ;; + dgux*) + case $cc_basename in + ec++) + lt_prog_compiler_pic_CXX='-KPIC' + ;; + ghcx) + # Green Hills C++ Compiler + lt_prog_compiler_pic_CXX='-pic' + ;; + *) + ;; + esac + ;; + freebsd* | kfreebsd*-gnu) + # FreeBSD uses GNU C++ + ;; + hpux9* | hpux10* | hpux11*) + case $cc_basename in + CC) + lt_prog_compiler_wl_CXX='-Wl,' + lt_prog_compiler_static_CXX="${ac_cv_prog_cc_wl}-a ${ac_cv_prog_cc_wl}archive" + if test "$host_cpu" != ia64; then + lt_prog_compiler_pic_CXX='+Z' + fi + ;; + aCC) + lt_prog_compiler_wl_CXX='-Wl,' + lt_prog_compiler_static_CXX="${ac_cv_prog_cc_wl}-a ${ac_cv_prog_cc_wl}archive" + case "$host_cpu" in + hppa*64*|ia64*) + # +Z the default + ;; + *) + lt_prog_compiler_pic_CXX='+Z' + ;; + esac + ;; + *) + ;; + esac + ;; + irix5* | irix6* | nonstopux*) + case $cc_basename in + CC) + lt_prog_compiler_wl_CXX='-Wl,' + lt_prog_compiler_static_CXX='-non_shared' + # CC pic flag -KPIC is the default. + ;; + *) + ;; + esac + ;; + linux*) + case $cc_basename in + KCC) + # KAI C++ Compiler + lt_prog_compiler_wl_CXX='--backend -Wl,' + lt_prog_compiler_pic_CXX='-fPIC' + ;; + icpc) + # Intel C++ + lt_prog_compiler_wl_CXX='-Wl,' + lt_prog_compiler_pic_CXX='-KPIC' + lt_prog_compiler_static_CXX='-static' + ;; + cxx) + # Compaq C++ + # Make sure the PIC flag is empty. It appears that all Alpha + # Linux and Compaq Tru64 Unix objects are PIC. + lt_prog_compiler_pic_CXX= + lt_prog_compiler_static_CXX='-non_shared' + ;; + *) + ;; + esac + ;; + lynxos*) + ;; + m88k*) + ;; + mvs*) + case $cc_basename in + cxx) + lt_prog_compiler_pic_CXX='-W c,exportall' + ;; + *) + ;; + esac + ;; + netbsd* | knetbsd*-gnu) + ;; + osf3* | osf4* | osf5*) + case $cc_basename in + KCC) + lt_prog_compiler_wl_CXX='--backend -Wl,' + ;; + RCC) + # Rational C++ 2.4.1 + lt_prog_compiler_pic_CXX='-pic' + ;; + cxx) + # Digital/Compaq C++ + lt_prog_compiler_wl_CXX='-Wl,' + # Make sure the PIC flag is empty. It appears that all Alpha + # Linux and Compaq Tru64 Unix objects are PIC. + lt_prog_compiler_pic_CXX= + lt_prog_compiler_static_CXX='-non_shared' + ;; + *) + ;; + esac + ;; + psos*) + ;; + sco*) + case $cc_basename in + CC) + lt_prog_compiler_pic_CXX='-fPIC' + ;; + *) + ;; + esac + ;; + solaris*) + case $cc_basename in + CC) + # Sun C++ 4.2, 5.x and Centerline C++ + lt_prog_compiler_pic_CXX='-KPIC' + lt_prog_compiler_static_CXX='-Bstatic' + lt_prog_compiler_wl_CXX='-Qoption ld ' + ;; + gcx) + # Green Hills C++ Compiler + lt_prog_compiler_pic_CXX='-PIC' + ;; + *) + ;; + esac + ;; + sunos4*) + case $cc_basename in + CC) + # Sun C++ 4.x + lt_prog_compiler_pic_CXX='-pic' + lt_prog_compiler_static_CXX='-Bstatic' + ;; + lcc) + # Lucid + lt_prog_compiler_pic_CXX='-pic' + ;; + *) + ;; + esac + ;; + tandem*) + case $cc_basename in + NCC) + # NonStop-UX NCC 3.20 + lt_prog_compiler_pic_CXX='-KPIC' + ;; + *) + ;; + esac + ;; + unixware*) + ;; + vxworks*) + ;; + *) + lt_prog_compiler_can_build_shared_CXX=no + ;; + esac + fi + +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_prog_compiler_pic_CXX" >&5 +$as_echo "$lt_prog_compiler_pic_CXX" >&6; } + +# +# Check to make sure the PIC flag actually works. +# +if test -n "$lt_prog_compiler_pic_CXX"; then + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler PIC flag $lt_prog_compiler_pic_CXX works" >&5 +$as_echo_n "checking if $compiler PIC flag $lt_prog_compiler_pic_CXX works... " >&6; } +if ${lt_prog_compiler_pic_works_CXX+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_prog_compiler_pic_works_CXX=no + ac_outfile=conftest.$ac_objext + printf "$lt_simple_compile_test_code" > conftest.$ac_ext + lt_compiler_flag="$lt_prog_compiler_pic_CXX -DPIC" + # Insert the option either (1) after the last *FLAGS variable, or + # (2) before a word containing "conftest.", or (3) at the end. + # Note that $ac_compile itself does not contain backslashes and begins + # with a dollar sign (not a hyphen), so the echo should work correctly. + # The option is referenced via a variable to avoid confusing sed. + lt_compile=`echo "$ac_compile" | $SED \ + -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \ + -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ + -e 's:$: $lt_compiler_flag:'` + (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&5) + (eval "$lt_compile" 2>conftest.err) + ac_status=$? + cat conftest.err >&5 + echo "$as_me:__oline__: \$? = $ac_status" >&5 + if (exit $ac_status) && test -s "$ac_outfile"; then + # The compiler can only warn and ignore the option if not recognized + # So say no if there are warnings + if test ! -s conftest.err; then + lt_prog_compiler_pic_works_CXX=yes + fi + fi + $rm conftest* + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_prog_compiler_pic_works_CXX" >&5 +$as_echo "$lt_prog_compiler_pic_works_CXX" >&6; } + +if test x"$lt_prog_compiler_pic_works_CXX" = xyes; then + case $lt_prog_compiler_pic_CXX in + "" | " "*) ;; + *) lt_prog_compiler_pic_CXX=" $lt_prog_compiler_pic_CXX" ;; + esac +else + lt_prog_compiler_pic_CXX= + lt_prog_compiler_can_build_shared_CXX=no +fi + +fi +case "$host_os" in + # For platforms which do not support PIC, -DPIC is meaningless: + *djgpp*) + lt_prog_compiler_pic_CXX= + ;; + *) + lt_prog_compiler_pic_CXX="$lt_prog_compiler_pic_CXX -DPIC" + ;; +esac + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5 +$as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; } +if ${lt_cv_prog_compiler_c_o_CXX+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_prog_compiler_c_o_CXX=no + $rm -r conftest 2>/dev/null + mkdir conftest + cd conftest + mkdir out + printf "$lt_simple_compile_test_code" > conftest.$ac_ext + + lt_compiler_flag="-o out/conftest2.$ac_objext" + # Insert the option either (1) after the last *FLAGS variable, or + # (2) before a word containing "conftest.", or (3) at the end. + # Note that $ac_compile itself does not contain backslashes and begins + # with a dollar sign (not a hyphen), so the echo should work correctly. + lt_compile=`echo "$ac_compile" | $SED \ + -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \ + -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ + -e 's:$: $lt_compiler_flag:'` + (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&5) + (eval "$lt_compile" 2>out/conftest.err) + ac_status=$? + cat out/conftest.err >&5 + echo "$as_me:__oline__: \$? = $ac_status" >&5 + if (exit $ac_status) && test -s out/conftest2.$ac_objext + then + # The compiler can only warn and ignore the option if not recognized + # So say no if there are warnings + if test ! -s out/conftest.err; then + lt_cv_prog_compiler_c_o_CXX=yes + fi + fi + chmod u+w . + $rm conftest* + # SGI C++ compiler will create directory out/ii_files/ for + # template instantiation + test -d out/ii_files && $rm out/ii_files/* && rmdir out/ii_files + $rm out/* && rmdir out + cd .. + rmdir conftest + $rm conftest* + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o_CXX" >&5 +$as_echo "$lt_cv_prog_compiler_c_o_CXX" >&6; } + + +hard_links="nottested" +if test "$lt_cv_prog_compiler_c_o_CXX" = no && test "$need_locks" != no; then + # do not overwrite the value of need_locks provided by the user + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if we can lock with hard links" >&5 +$as_echo_n "checking if we can lock with hard links... " >&6; } + hard_links=yes + $rm conftest* + ln conftest.a conftest.b 2>/dev/null && hard_links=no + touch conftest.a + ln conftest.a conftest.b 2>&5 || hard_links=no + ln conftest.a conftest.b 2>/dev/null && hard_links=no + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $hard_links" >&5 +$as_echo "$hard_links" >&6; } + if test "$hard_links" = no; then + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&5 +$as_echo "$as_me: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&2;} + need_locks=warn + fi +else + need_locks=no +fi + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&5 +$as_echo_n "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; } + + export_symbols_cmds_CXX='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' + case $host_os in + aix4* | aix5*) + # If we're using GNU nm, then we don't want the "-C" option. + # -C means demangle to AIX nm, but means don't demangle with GNU nm + if $NM -V 2>&1 | grep 'GNU' > /dev/null; then + export_symbols_cmds_CXX='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$2 == "T") || (\$2 == "D") || (\$2 == "B")) && (substr(\$3,1,1) != ".")) { print \$3 } }'\'' | sort -u > $export_symbols' + else + export_symbols_cmds_CXX='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$2 == "T") || (\$2 == "D") || (\$2 == "B")) && (substr(\$3,1,1) != ".")) { print \$3 } }'\'' | sort -u > $export_symbols' + fi + ;; + pw32*) + export_symbols_cmds_CXX="$ltdll_cmds" + ;; + cygwin* | mingw*) + export_symbols_cmds_CXX='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[BCDGS] /s/.* \([^ ]*\)/\1 DATA/'\'' | $SED -e '\''/^[AITW] /s/.* //'\'' | sort | uniq > $export_symbols' + ;; + *) + export_symbols_cmds_CXX='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' + ;; + esac + +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs_CXX" >&5 +$as_echo "$ld_shlibs_CXX" >&6; } +test "$ld_shlibs_CXX" = no && can_build_shared=no + +variables_saved_for_relink="PATH $shlibpath_var $runpath_var" +if test "$GCC" = yes; then + variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" +fi + +# +# Do we need to explicitly link libc? +# +case "x$archive_cmds_need_lc_CXX" in +x|xyes) + # Assume -lc should be added + archive_cmds_need_lc_CXX=yes + + if test "$enable_shared" = yes && test "$GCC" = yes; then + case $archive_cmds_CXX in + *'~'*) + # FIXME: we may have to deal with multi-command sequences. + ;; + '$CC '*) + # Test whether the compiler implicitly links with -lc since on some + # systems, -lgcc has to come before -lc. If gcc already passes -lc + # to ld, don't add -lc before -lgcc. + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -lc should be explicitly linked in" >&5 +$as_echo_n "checking whether -lc should be explicitly linked in... " >&6; } + $rm conftest* + printf "$lt_simple_compile_test_code" > conftest.$ac_ext + + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 + (eval $ac_compile) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } 2>conftest.err; then + soname=conftest + lib=conftest + libobjs=conftest.$ac_objext + deplibs= + wl=$lt_prog_compiler_wl_CXX + compiler_flags=-v + linker_flags=-v + verstring= + output_objdir=. + libname=conftest + lt_save_allow_undefined_flag=$allow_undefined_flag_CXX + allow_undefined_flag_CXX= + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$archive_cmds_CXX 2\>\&1 \| grep \" -lc \" \>/dev/null 2\>\&1\""; } >&5 + (eval $archive_cmds_CXX 2\>\&1 \| grep \" -lc \" \>/dev/null 2\>\&1) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } + then + archive_cmds_need_lc_CXX=no + else + archive_cmds_need_lc_CXX=yes + fi + allow_undefined_flag_CXX=$lt_save_allow_undefined_flag + else + cat conftest.err 1>&5 + fi + $rm conftest* + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $archive_cmds_need_lc_CXX" >&5 +$as_echo "$archive_cmds_need_lc_CXX" >&6; } + ;; + esac + fi + ;; +esac + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking dynamic linker characteristics" >&5 +$as_echo_n "checking dynamic linker characteristics... " >&6; } +library_names_spec= +libname_spec='lib$name' +soname_spec= +shrext=".so" +postinstall_cmds= +postuninstall_cmds= +finish_cmds= +finish_eval= +shlibpath_var= +shlibpath_overrides_runpath=unknown +version_type=none +dynamic_linker="$host_os ld.so" +sys_lib_dlsearch_path_spec="/lib /usr/lib" +if test "$GCC" = yes; then + sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"` + if echo "$sys_lib_search_path_spec" | grep ';' >/dev/null ; then + # if the path contains ";" then we assume it to be the separator + # otherwise default to the standard path separator (i.e. ":") - it is + # assumed that no part of a normal pathname contains ";" but that should + # okay in the real world where ";" in dirpaths is itself problematic. + sys_lib_search_path_spec=`echo "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'` + else + sys_lib_search_path_spec=`echo "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` + fi +else + sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" +fi +need_lib_prefix=unknown +hardcode_into_libs=no + +# when you set need_version to no, make sure it does not cause -set_version +# flags to be left without arguments +need_version=unknown + +case $host_os in +aix3*) + version_type=linux + library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a' + shlibpath_var=LIBPATH + + # AIX 3 has no versioning support, so we append a major version to the name. + soname_spec='${libname}${release}${shared_ext}$major' + ;; + +aix4* | aix5*) + version_type=linux + need_lib_prefix=no + need_version=no + hardcode_into_libs=yes + if test "$host_cpu" = ia64; then + # AIX 5 supports IA64 + library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}' + shlibpath_var=LD_LIBRARY_PATH + else + # With GCC up to 2.95.x, collect2 would create an import file + # for dependence libraries. The import file would start with + # the line `#! .'. This would cause the generated library to + # depend on `.', always an invalid library. This was fixed in + # development snapshots of GCC prior to 3.0. + case $host_os in + aix4 | aix4.[01] | aix4.[01].*) + if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)' + echo ' yes ' + echo '#endif'; } | ${CC} -E - | grep yes > /dev/null; then + : + else + can_build_shared=no + fi + ;; + esac + # AIX (on Power*) has no versioning support, so currently we can not hardcode correct + # soname into executable. Probably we can add versioning support to + # collect2, so additional links can be useful in future. + if test "$aix_use_runtimelinking" = yes; then + # If using run time linking (on AIX 4.2 or later) use lib.so + # instead of lib.a to let people know that these are not + # typical AIX shared libraries. + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + else + # We preserve .a as extension for shared libraries through AIX4.2 + # and later when we are not doing run time linking. + library_names_spec='${libname}${release}.a $libname.a' + soname_spec='${libname}${release}${shared_ext}$major' + fi + shlibpath_var=LIBPATH + fi + ;; + +amigaos*) + library_names_spec='$libname.ixlibrary $libname.a' + # Create ${libname}_ixlibrary.a entries in /sys/libs. + finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$echo "X$lib" | $Xsed -e '\''s%^.*/\([^/]*\)\.ixlibrary$%\1%'\''`; test $rm /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done' + ;; + +beos*) + library_names_spec='${libname}${shared_ext}' + dynamic_linker="$host_os ld.so" + shlibpath_var=LIBRARY_PATH + ;; + +bsdi4*) + version_type=linux + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir' + shlibpath_var=LD_LIBRARY_PATH + sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib" + sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib" + # the default ld.so.conf also contains /usr/contrib/lib and + # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow + # libtool to hard-code these into programs + ;; + +cygwin* | mingw* | pw32*) + version_type=windows + shrext=".dll" + need_version=no + need_lib_prefix=no + + case $GCC,$host_os in + yes,cygwin* | yes,mingw* | yes,pw32*) + library_names_spec='$libname.dll.a' + # DLL is installed to $(libdir)/../bin by postinstall_cmds + postinstall_cmds='base_file=`basename \${file}`~ + dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i;echo \$dlname'\''`~ + dldir=$destdir/`dirname \$dlpath`~ + test -d \$dldir || mkdir -p \$dldir~ + $install_prog $dir/$dlname \$dldir/$dlname' + postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~ + dlpath=$dir/\$dldll~ + $rm \$dlpath' + shlibpath_overrides_runpath=yes + + case $host_os in + cygwin*) + # Cygwin DLLs use 'cyg' prefix rather than 'lib' + soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}' + sys_lib_search_path_spec="/usr/lib /lib/w32api /lib /usr/local/lib" + ;; + mingw*) + # MinGW DLLs use traditional 'lib' prefix + soname_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}' + sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"` + if echo "$sys_lib_search_path_spec" | grep ';[c-zC-Z]:/' >/dev/null; then + # It is most probably a Windows format PATH printed by + # mingw gcc, but we are running on Cygwin. Gcc prints its search + # path with ; separators, and with drive letters. We can handle the + # drive letters (cygwin fileutils understands them), so leave them, + # especially as we might pass files found there to a mingw objdump, + # which wouldn't understand a cygwinified path. Ahh. + sys_lib_search_path_spec=`echo "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'` + else + sys_lib_search_path_spec=`echo "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` + fi + ;; + pw32*) + # pw32 DLLs use 'pw' prefix rather than 'lib' + library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/./-/g'`${versuffix}${shared_ext}' + ;; + esac + ;; + + *) + library_names_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext} $libname.lib' + ;; + esac + dynamic_linker='Win32 ld.exe' + # FIXME: first we should search . and the directory the executable is in + shlibpath_var=PATH + ;; + +darwin* | rhapsody*) + dynamic_linker="$host_os dyld" + version_type=darwin + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${versuffix}$shared_ext ${libname}${release}${major}$shared_ext ${libname}$shared_ext' + soname_spec='${libname}${release}${major}$shared_ext' + shlibpath_overrides_runpath=yes + shlibpath_var=DYLD_LIBRARY_PATH + shrext='$(test .$module = .yes && echo .so || echo .dylib)' + # Apple's gcc prints 'gcc -print-search-dirs' doesn't operate the same. + if test "$GCC" = yes; then + sys_lib_search_path_spec=`$CC -print-search-dirs | tr "\n" "$PATH_SEPARATOR" | sed -e 's/libraries:/@libraries:/' | tr "@" "\n" | grep "^libraries:" | sed -e "s/^libraries://" -e "s,=/,/,g" -e "s,$PATH_SEPARATOR, ,g" -e "s,.*,& /lib /usr/lib /usr/local/lib,g"` + else + sys_lib_search_path_spec='/lib /usr/lib /usr/local/lib' + fi + sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib' + ;; + +dgux*) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname$shared_ext' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + ;; + +freebsd1*) + dynamic_linker=no + ;; + +kfreebsd*-gnu) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=no + hardcode_into_libs=yes + dynamic_linker='GNU ld.so' + ;; + +freebsd*) + objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout` + version_type=freebsd-$objformat + case $version_type in + freebsd-elf*) + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}' + need_version=no + need_lib_prefix=no + ;; + freebsd-*) + library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix' + need_version=yes + ;; + esac + shlibpath_var=LD_LIBRARY_PATH + case $host_os in + freebsd2*) + shlibpath_overrides_runpath=yes + ;; + freebsd3.01* | freebsdelf3.01*) + shlibpath_overrides_runpath=yes + hardcode_into_libs=yes + ;; + *) # from 3.2 on + shlibpath_overrides_runpath=no + hardcode_into_libs=yes + ;; + esac + ;; + +gnu*) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + hardcode_into_libs=yes + ;; + +hpux9* | hpux10* | hpux11*) + # Give a soname corresponding to the major version so that dld.sl refuses to + # link against other versions. + version_type=sunos + need_lib_prefix=no + need_version=no + case "$host_cpu" in + ia64*) + shrext='.so' + hardcode_into_libs=yes + dynamic_linker="$host_os dld.so" + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + if test "X$HPUX_IA64_MODE" = X32; then + sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib" + else + sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64" + fi + sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec + ;; + hppa*64*) + shrext='.sl' + hardcode_into_libs=yes + dynamic_linker="$host_os dld.sl" + shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH + shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64" + sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec + ;; + *) + shrext='.sl' + dynamic_linker="$host_os dld.sl" + shlibpath_var=SHLIB_PATH + shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + ;; + esac + # HP-UX runs *really* slowly unless shared libraries are mode 555. + postinstall_cmds='chmod 555 $lib' + ;; + +irix5* | irix6* | nonstopux*) + case $host_os in + nonstopux*) version_type=nonstopux ;; + *) + if test "$lt_cv_prog_gnu_ld" = yes; then + version_type=linux + else + version_type=irix + fi ;; + esac + need_lib_prefix=no + need_version=no + soname_spec='${libname}${release}${shared_ext}$major' + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}' + case $host_os in + irix5* | nonstopux*) + libsuff= shlibsuff= + ;; + *) + case $LD in # libtool.m4 will add one of these switches to LD + *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ") + libsuff= shlibsuff= libmagic=32-bit;; + *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ") + libsuff=32 shlibsuff=N32 libmagic=N32;; + *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ") + libsuff=64 shlibsuff=64 libmagic=64-bit;; + *) libsuff= shlibsuff= libmagic=never-match;; + esac + ;; + esac + shlibpath_var=LD_LIBRARY${shlibsuff}_PATH + shlibpath_overrides_runpath=no + sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}" + sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}" + hardcode_into_libs=yes + ;; + +# No shared lib support for Linux oldld, aout, or coff. +linux*oldld* | linux*aout* | linux*coff*) + dynamic_linker=no + ;; + +# This must be Linux ELF. +linux*) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=no + # This implies no fast_install, which is unacceptable. + # Some rework will be needed to allow for fast_install + # before this can be enabled. + hardcode_into_libs=yes + + # Append ld.so.conf contents to the search path + if test -f /etc/ld.so.conf; then + ld_extra=`$SED -e 's/:,\t/ /g;s/=^=*$//;s/=^= * / /g' /etc/ld.so.conf` + sys_lib_dlsearch_path_spec="/lib /usr/lib $ld_extra" + fi + + # We used to test for /lib/ld.so.1 and disable shared libraries on + # powerpc, because MkLinux only supported shared libraries with the + # GNU dynamic linker. Since this was broken with cross compilers, + # most powerpc-linux boxes support dynamic linking these days and + # people can always --disable-shared, the test was removed, and we + # assume the GNU/Linux dynamic linker is in use. + dynamic_linker='GNU/Linux ld.so' + ;; + +knetbsd*-gnu) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=no + hardcode_into_libs=yes + dynamic_linker='GNU ld.so' + ;; + +netbsd*) + version_type=sunos + need_lib_prefix=no + need_version=no + if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' + finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' + dynamic_linker='NetBSD (a.out) ld.so' + else + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + dynamic_linker='NetBSD ld.elf_so' + fi + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + hardcode_into_libs=yes + ;; + +newsos6) + version_type=linux + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + ;; + +nto-qnx*) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + ;; + +openbsd*) + version_type=sunos + need_lib_prefix=no + need_version=yes + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' + finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' + shlibpath_var=LD_LIBRARY_PATH + if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then + case $host_os in + openbsd2.[89] | openbsd2.[89].*) + shlibpath_overrides_runpath=no + ;; + *) + shlibpath_overrides_runpath=yes + ;; + esac + else + shlibpath_overrides_runpath=yes + fi + ;; + +os2*) + libname_spec='$name' + shrext=".dll" + need_lib_prefix=no + library_names_spec='$libname${shared_ext} $libname.a' + dynamic_linker='OS/2 ld.exe' + shlibpath_var=LIBPATH + ;; + +osf3* | osf4* | osf5*) + version_type=osf + need_lib_prefix=no + need_version=no + soname_spec='${libname}${release}${shared_ext}$major' + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + shlibpath_var=LD_LIBRARY_PATH + sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib" + sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec" + ;; + +sco3.2v5*) + version_type=osf + soname_spec='${libname}${release}${shared_ext}$major' + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + shlibpath_var=LD_LIBRARY_PATH + ;; + +solaris*) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + hardcode_into_libs=yes + # ldd complains unless libraries are executable + postinstall_cmds='chmod +x $lib' + ;; + +sunos4*) + version_type=sunos + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' + finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + if test "$with_gnu_ld" = yes; then + need_lib_prefix=no + fi + need_version=yes + ;; + +sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) + version_type=linux + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + case $host_vendor in + sni) + shlibpath_overrides_runpath=no + need_lib_prefix=no + export_dynamic_flag_spec='${wl}-Blargedynsym' + runpath_var=LD_RUN_PATH + ;; + siemens) + need_lib_prefix=no + ;; + motorola) + need_lib_prefix=no + need_version=no + shlibpath_overrides_runpath=no + sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib' + ;; + esac + ;; + +sysv4*MP*) + if test -d /usr/nec ;then + version_type=linux + library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}' + soname_spec='$libname${shared_ext}.$major' + shlibpath_var=LD_LIBRARY_PATH + fi + ;; + +uts4*) + version_type=linux + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + ;; + +*) + dynamic_linker=no + ;; +esac +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $dynamic_linker" >&5 +$as_echo "$dynamic_linker" >&6; } +test "$dynamic_linker" = no && can_build_shared=no + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to hardcode library paths into programs" >&5 +$as_echo_n "checking how to hardcode library paths into programs... " >&6; } +hardcode_action_CXX= +if test -n "$hardcode_libdir_flag_spec_CXX" || \ + test -n "$runpath_var CXX" || \ + test "X$hardcode_automatic_CXX"="Xyes" ; then + + # We can hardcode non-existant directories. + if test "$hardcode_direct_CXX" != no && + # If the only mechanism to avoid hardcoding is shlibpath_var, we + # have to relink, otherwise we might link with an installed library + # when we should be linking with a yet-to-be-installed one + ## test "$_LT_AC_TAGVAR(hardcode_shlibpath_var, CXX)" != no && + test "$hardcode_minus_L_CXX" != no; then + # Linking always hardcodes the temporary library directory. + hardcode_action_CXX=relink + else + # We can link without hardcoding, and we can hardcode nonexisting dirs. + hardcode_action_CXX=immediate + fi +else + # We cannot hardcode anything, or else we can only hardcode existing + # directories. + hardcode_action_CXX=unsupported +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $hardcode_action_CXX" >&5 +$as_echo "$hardcode_action_CXX" >&6; } + +if test "$hardcode_action_CXX" = relink; then + # Fast installation is not supported + enable_fast_install=no +elif test "$shlibpath_overrides_runpath" = yes || + test "$enable_shared" = no; then + # Fast installation is not necessary + enable_fast_install=needless +fi + +striplib= +old_striplib= +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether stripping libraries is possible" >&5 +$as_echo_n "checking whether stripping libraries is possible... " >&6; } +if test -n "$STRIP" && $STRIP -V 2>&1 | grep "GNU strip" >/dev/null; then + test -z "$old_striplib" && old_striplib="$STRIP --strip-debug" + test -z "$striplib" && striplib="$STRIP --strip-unneeded" + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } +else +# FIXME - insert some real tests, host_os isn't really good enough + case $host_os in + darwin*) + if test -n "$STRIP" ; then + striplib="$STRIP -x" + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + ;; + *) + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + ;; + esac +fi + +if test "x$enable_dlopen" != xyes; then + enable_dlopen=unknown + enable_dlopen_self=unknown + enable_dlopen_self_static=unknown +else + lt_cv_dlopen=no + lt_cv_dlopen_libs= + + case $host_os in + beos*) + lt_cv_dlopen="load_add_on" + lt_cv_dlopen_libs= + lt_cv_dlopen_self=yes + ;; + + mingw* | pw32*) + lt_cv_dlopen="LoadLibrary" + lt_cv_dlopen_libs= + ;; + + cygwin*) + lt_cv_dlopen="dlopen" + lt_cv_dlopen_libs= + ;; + + darwin*) + # if libdl is installed we need to link against it + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5 +$as_echo_n "checking for dlopen in -ldl... " >&6; } +if ${ac_cv_lib_dl_dlopen+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-ldl $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char dlopen (); +int +main () +{ +return dlopen (); + ; + return 0; +} +_ACEOF +if ac_fn_cxx_try_link "$LINENO"; then : + ac_cv_lib_dl_dlopen=yes +else + ac_cv_lib_dl_dlopen=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5 +$as_echo "$ac_cv_lib_dl_dlopen" >&6; } +if test "x$ac_cv_lib_dl_dlopen" = xyes; then : + lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl" +else + + lt_cv_dlopen="dyld" + lt_cv_dlopen_libs= + lt_cv_dlopen_self=yes + +fi + + ;; + + *) + ac_fn_cxx_check_func "$LINENO" "shl_load" "ac_cv_func_shl_load" +if test "x$ac_cv_func_shl_load" = xyes; then : + lt_cv_dlopen="shl_load" +else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for shl_load in -ldld" >&5 +$as_echo_n "checking for shl_load in -ldld... " >&6; } +if ${ac_cv_lib_dld_shl_load+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-ldld $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char shl_load (); +int +main () +{ +return shl_load (); + ; + return 0; +} +_ACEOF +if ac_fn_cxx_try_link "$LINENO"; then : + ac_cv_lib_dld_shl_load=yes +else + ac_cv_lib_dld_shl_load=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_shl_load" >&5 +$as_echo "$ac_cv_lib_dld_shl_load" >&6; } +if test "x$ac_cv_lib_dld_shl_load" = xyes; then : + lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-dld" +else + ac_fn_cxx_check_func "$LINENO" "dlopen" "ac_cv_func_dlopen" +if test "x$ac_cv_func_dlopen" = xyes; then : + lt_cv_dlopen="dlopen" +else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5 +$as_echo_n "checking for dlopen in -ldl... " >&6; } +if ${ac_cv_lib_dl_dlopen+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-ldl $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char dlopen (); +int +main () +{ +return dlopen (); + ; + return 0; +} +_ACEOF +if ac_fn_cxx_try_link "$LINENO"; then : + ac_cv_lib_dl_dlopen=yes +else + ac_cv_lib_dl_dlopen=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5 +$as_echo "$ac_cv_lib_dl_dlopen" >&6; } +if test "x$ac_cv_lib_dl_dlopen" = xyes; then : + lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl" +else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -lsvld" >&5 +$as_echo_n "checking for dlopen in -lsvld... " >&6; } +if ${ac_cv_lib_svld_dlopen+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-lsvld $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char dlopen (); +int +main () +{ +return dlopen (); + ; + return 0; +} +_ACEOF +if ac_fn_cxx_try_link "$LINENO"; then : + ac_cv_lib_svld_dlopen=yes +else + ac_cv_lib_svld_dlopen=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_svld_dlopen" >&5 +$as_echo "$ac_cv_lib_svld_dlopen" >&6; } +if test "x$ac_cv_lib_svld_dlopen" = xyes; then : + lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld" +else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dld_link in -ldld" >&5 +$as_echo_n "checking for dld_link in -ldld... " >&6; } +if ${ac_cv_lib_dld_dld_link+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-ldld $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char dld_link (); +int +main () +{ +return dld_link (); + ; + return 0; +} +_ACEOF +if ac_fn_cxx_try_link "$LINENO"; then : + ac_cv_lib_dld_dld_link=yes +else + ac_cv_lib_dld_dld_link=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_dld_link" >&5 +$as_echo "$ac_cv_lib_dld_dld_link" >&6; } +if test "x$ac_cv_lib_dld_dld_link" = xyes; then : + lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-dld" +fi + + +fi + + +fi + + +fi + + +fi + + +fi + + ;; + esac + + if test "x$lt_cv_dlopen" != xno; then + enable_dlopen=yes + else + enable_dlopen=no + fi + + case $lt_cv_dlopen in + dlopen) + save_CPPFLAGS="$CPPFLAGS" + test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H" + + save_LDFLAGS="$LDFLAGS" + eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\" + + save_LIBS="$LIBS" + LIBS="$lt_cv_dlopen_libs $LIBS" + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a program can dlopen itself" >&5 +$as_echo_n "checking whether a program can dlopen itself... " >&6; } +if ${lt_cv_dlopen_self+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then : + lt_cv_dlopen_self=cross +else + lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 + lt_status=$lt_dlunknown + cat > conftest.$ac_ext < +#endif + +#include + +#ifdef RTLD_GLOBAL +# define LT_DLGLOBAL RTLD_GLOBAL +#else +# ifdef DL_GLOBAL +# define LT_DLGLOBAL DL_GLOBAL +# else +# define LT_DLGLOBAL 0 +# endif +#endif + +/* We may have to define LT_DLLAZY_OR_NOW in the command line if we + find out it does not work in some platform. */ +#ifndef LT_DLLAZY_OR_NOW +# ifdef RTLD_LAZY +# define LT_DLLAZY_OR_NOW RTLD_LAZY +# else +# ifdef DL_LAZY +# define LT_DLLAZY_OR_NOW DL_LAZY +# else +# ifdef RTLD_NOW +# define LT_DLLAZY_OR_NOW RTLD_NOW +# else +# ifdef DL_NOW +# define LT_DLLAZY_OR_NOW DL_NOW +# else +# define LT_DLLAZY_OR_NOW 0 +# endif +# endif +# endif +# endif +#endif + +#ifdef __cplusplus +extern "C" void exit (int); +#endif + +void fnord() { int i=42;} +int main () +{ + void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW); + int status = $lt_dlunknown; + + if (self) + { + if (dlsym (self,"fnord")) status = $lt_dlno_uscore; + else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore; + /* dlclose (self); */ + } + + exit (status); +} +EOF + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 + (eval $ac_link) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && test -s conftest${ac_exeext} 2>/dev/null; then + (./conftest; exit; ) 2>/dev/null + lt_status=$? + case x$lt_status in + x$lt_dlno_uscore) lt_cv_dlopen_self=yes ;; + x$lt_dlneed_uscore) lt_cv_dlopen_self=yes ;; + x$lt_unknown|x*) lt_cv_dlopen_self=no ;; + esac + else : + # compilation failed + lt_cv_dlopen_self=no + fi +fi +rm -fr conftest* + + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self" >&5 +$as_echo "$lt_cv_dlopen_self" >&6; } + + if test "x$lt_cv_dlopen_self" = xyes; then + LDFLAGS="$LDFLAGS $link_static_flag" + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a statically linked program can dlopen itself" >&5 +$as_echo_n "checking whether a statically linked program can dlopen itself... " >&6; } +if ${lt_cv_dlopen_self_static+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then : + lt_cv_dlopen_self_static=cross +else + lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 + lt_status=$lt_dlunknown + cat > conftest.$ac_ext < +#endif + +#include + +#ifdef RTLD_GLOBAL +# define LT_DLGLOBAL RTLD_GLOBAL +#else +# ifdef DL_GLOBAL +# define LT_DLGLOBAL DL_GLOBAL +# else +# define LT_DLGLOBAL 0 +# endif +#endif + +/* We may have to define LT_DLLAZY_OR_NOW in the command line if we + find out it does not work in some platform. */ +#ifndef LT_DLLAZY_OR_NOW +# ifdef RTLD_LAZY +# define LT_DLLAZY_OR_NOW RTLD_LAZY +# else +# ifdef DL_LAZY +# define LT_DLLAZY_OR_NOW DL_LAZY +# else +# ifdef RTLD_NOW +# define LT_DLLAZY_OR_NOW RTLD_NOW +# else +# ifdef DL_NOW +# define LT_DLLAZY_OR_NOW DL_NOW +# else +# define LT_DLLAZY_OR_NOW 0 +# endif +# endif +# endif +# endif +#endif + +#ifdef __cplusplus +extern "C" void exit (int); +#endif + +void fnord() { int i=42;} +int main () +{ + void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW); + int status = $lt_dlunknown; + + if (self) + { + if (dlsym (self,"fnord")) status = $lt_dlno_uscore; + else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore; + /* dlclose (self); */ + } + + exit (status); +} +EOF + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 + (eval $ac_link) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && test -s conftest${ac_exeext} 2>/dev/null; then + (./conftest; exit; ) 2>/dev/null + lt_status=$? + case x$lt_status in + x$lt_dlno_uscore) lt_cv_dlopen_self_static=yes ;; + x$lt_dlneed_uscore) lt_cv_dlopen_self_static=yes ;; + x$lt_unknown|x*) lt_cv_dlopen_self_static=no ;; + esac + else : + # compilation failed + lt_cv_dlopen_self_static=no + fi +fi +rm -fr conftest* + + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self_static" >&5 +$as_echo "$lt_cv_dlopen_self_static" >&6; } + fi + + CPPFLAGS="$save_CPPFLAGS" + LDFLAGS="$save_LDFLAGS" + LIBS="$save_LIBS" + ;; + esac + + case $lt_cv_dlopen_self in + yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;; + *) enable_dlopen_self=unknown ;; + esac + + case $lt_cv_dlopen_self_static in + yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;; + *) enable_dlopen_self_static=unknown ;; + esac +fi + + +# The else clause should only fire when bootstrapping the +# libtool distribution, otherwise you forgot to ship ltmain.sh +# with your package, and you will get complaints that there are +# no rules to generate ltmain.sh. +if test -f "$ltmain"; then + # See if we are running on zsh, and set the options which allow our commands through + # without removal of \ escapes. + if test -n "${ZSH_VERSION+set}" ; then + setopt NO_GLOB_SUBST + fi + # Now quote all the things that may contain metacharacters while being + # careful not to overquote the AC_SUBSTed values. We take copies of the + # variables and quote the copies for generation of the libtool script. + for var in echo old_CC old_CFLAGS AR AR_FLAGS EGREP RANLIB LN_S LTCC NM \ + SED SHELL STRIP \ + libname_spec library_names_spec soname_spec extract_expsyms_cmds \ + old_striplib striplib file_magic_cmd finish_cmds finish_eval \ + deplibs_check_method reload_flag reload_cmds need_locks \ + lt_cv_sys_global_symbol_pipe lt_cv_sys_global_symbol_to_cdecl \ + lt_cv_sys_global_symbol_to_c_name_address \ + sys_lib_search_path_spec sys_lib_dlsearch_path_spec \ + old_postinstall_cmds old_postuninstall_cmds \ + compiler_CXX \ + CC_CXX \ + LD_CXX \ + lt_prog_compiler_wl_CXX \ + lt_prog_compiler_pic_CXX \ + lt_prog_compiler_static_CXX \ + lt_prog_compiler_no_builtin_flag_CXX \ + export_dynamic_flag_spec_CXX \ + thread_safe_flag_spec_CXX \ + whole_archive_flag_spec_CXX \ + enable_shared_with_static_runtimes_CXX \ + old_archive_cmds_CXX \ + old_archive_from_new_cmds_CXX \ + predep_objects_CXX \ + postdep_objects_CXX \ + predeps_CXX \ + postdeps_CXX \ + compiler_lib_search_path_CXX \ + archive_cmds_CXX \ + archive_expsym_cmds_CXX \ + postinstall_cmds_CXX \ + postuninstall_cmds_CXX \ + old_archive_from_expsyms_cmds_CXX \ + allow_undefined_flag_CXX \ + no_undefined_flag_CXX \ + export_symbols_cmds_CXX \ + hardcode_libdir_flag_spec_CXX \ + hardcode_libdir_flag_spec_ld_CXX \ + hardcode_libdir_separator_CXX \ + hardcode_automatic_CXX \ + module_cmds_CXX \ + module_expsym_cmds_CXX \ + lt_cv_prog_compiler_c_o_CXX \ + exclude_expsyms_CXX \ + include_expsyms_CXX; do + + case $var in + old_archive_cmds_CXX | \ + old_archive_from_new_cmds_CXX | \ + archive_cmds_CXX | \ + archive_expsym_cmds_CXX | \ + module_cmds_CXX | \ + module_expsym_cmds_CXX | \ + old_archive_from_expsyms_cmds_CXX | \ + export_symbols_cmds_CXX | \ + extract_expsyms_cmds | reload_cmds | finish_cmds | \ + postinstall_cmds | postuninstall_cmds | \ + old_postinstall_cmds | old_postuninstall_cmds | \ + sys_lib_search_path_spec | sys_lib_dlsearch_path_spec) + # Double-quote double-evaled strings. + eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$double_quote_subst\" -e \"\$sed_quote_subst\" -e \"\$delay_variable_subst\"\`\\\"" + ;; + *) + eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$sed_quote_subst\"\`\\\"" + ;; + esac + done + + case $lt_echo in + *'\$0 --fallback-echo"') + lt_echo=`$echo "X$lt_echo" | $Xsed -e 's/\\\\\\\$0 --fallback-echo"$/$0 --fallback-echo"/'` + ;; + esac + +cfgfile="$ofile" + + cat <<__EOF__ >> "$cfgfile" +# ### BEGIN LIBTOOL TAG CONFIG: $tagname + +# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`: + +# Shell to use when invoking shell scripts. +SHELL=$lt_SHELL + +# Whether or not to build shared libraries. +build_libtool_libs=$enable_shared + +# Whether or not to build static libraries. +build_old_libs=$enable_static + +# Whether or not to add -lc for building shared libraries. +build_libtool_need_lc=$archive_cmds_need_lc_CXX + +# Whether or not to disallow shared libs when runtime libs are static +allow_libtool_libs_with_static_runtimes=$enable_shared_with_static_runtimes_CXX + +# Whether or not to optimize for fast installation. +fast_install=$enable_fast_install + +# The host system. +host_alias=$host_alias +host=$host + +# An echo program that does not interpret backslashes. +echo=$lt_echo + +# The archiver. +AR=$lt_AR +AR_FLAGS=$lt_AR_FLAGS + +# A C compiler. +LTCC=$lt_LTCC + +# A language-specific compiler. +CC=$lt_compiler_CXX + +# Is the compiler the GNU C compiler? +with_gcc=$GCC_CXX + +# An ERE matcher. +EGREP=$lt_EGREP + +# The linker used to build libraries. +LD=$lt_LD_CXX + +# Whether we need hard or soft links. +LN_S=$lt_LN_S + +# A BSD-compatible nm program. +NM=$lt_NM + +# A symbol stripping program +STRIP=$lt_STRIP + +# Used to examine libraries when file_magic_cmd begins "file" +MAGIC_CMD=$MAGIC_CMD + +# Used on cygwin: DLL creation program. +DLLTOOL="$DLLTOOL" + +# Used on cygwin: object dumper. +OBJDUMP="$OBJDUMP" + +# Used on cygwin: assembler. +AS="$AS" + +# The name of the directory that contains temporary libtool files. +objdir=$objdir + +# How to create reloadable object files. +reload_flag=$lt_reload_flag +reload_cmds=$lt_reload_cmds + +# How to pass a linker flag through the compiler. +wl=$lt_lt_prog_compiler_wl_CXX + +# Object file suffix (normally "o"). +objext="$ac_objext" + +# Old archive suffix (normally "a"). +libext="$libext" + +# Shared library suffix (normally ".so"). +shrext='$shrext' + +# Executable file suffix (normally ""). +exeext="$exeext" + +# Additional compiler flags for building library objects. +pic_flag=$lt_lt_prog_compiler_pic_CXX +pic_mode=$pic_mode + +# What is the maximum length of a command? +max_cmd_len=$lt_cv_sys_max_cmd_len + +# Does compiler simultaneously support -c and -o options? +compiler_c_o=$lt_lt_cv_prog_compiler_c_o_CXX + +# Must we lock files when doing compilation ? +need_locks=$lt_need_locks + +# Do we need the lib prefix for modules? +need_lib_prefix=$need_lib_prefix + +# Do we need a version for libraries? +need_version=$need_version + +# Whether dlopen is supported. +dlopen_support=$enable_dlopen + +# Whether dlopen of programs is supported. +dlopen_self=$enable_dlopen_self + +# Whether dlopen of statically linked programs is supported. +dlopen_self_static=$enable_dlopen_self_static + +# Compiler flag to prevent dynamic linking. +link_static_flag=$lt_lt_prog_compiler_static_CXX + +# Compiler flag to turn off builtin functions. +no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag_CXX + +# Compiler flag to allow reflexive dlopens. +export_dynamic_flag_spec=$lt_export_dynamic_flag_spec_CXX + +# Compiler flag to generate shared objects directly from archives. +whole_archive_flag_spec=$lt_whole_archive_flag_spec_CXX + +# Compiler flag to generate thread-safe objects. +thread_safe_flag_spec=$lt_thread_safe_flag_spec_CXX + +# Library versioning type. +version_type=$version_type + +# Format of library name prefix. +libname_spec=$lt_libname_spec + +# List of archive names. First name is the real one, the rest are links. +# The last name is the one that the linker finds with -lNAME. +library_names_spec=$lt_library_names_spec + +# The coded name of the library, if different from the real name. +soname_spec=$lt_soname_spec + +# Commands used to build and install an old-style archive. +RANLIB=$lt_RANLIB +old_archive_cmds=$lt_old_archive_cmds_CXX +old_postinstall_cmds=$lt_old_postinstall_cmds +old_postuninstall_cmds=$lt_old_postuninstall_cmds + +# Create an old-style archive from a shared archive. +old_archive_from_new_cmds=$lt_old_archive_from_new_cmds_CXX + +# Create a temporary old-style archive to link instead of a shared archive. +old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds_CXX + +# Commands used to build and install a shared archive. +archive_cmds=$lt_archive_cmds_CXX +archive_expsym_cmds=$lt_archive_expsym_cmds_CXX +postinstall_cmds=$lt_postinstall_cmds +postuninstall_cmds=$lt_postuninstall_cmds + +# Commands used to build a loadable module (assumed same as above if empty) +module_cmds=$lt_module_cmds_CXX +module_expsym_cmds=$lt_module_expsym_cmds_CXX + +# Commands to strip libraries. +old_striplib=$lt_old_striplib +striplib=$lt_striplib + +# Dependencies to place before the objects being linked to create a +# shared library. +predep_objects=$lt_predep_objects_CXX + +# Dependencies to place after the objects being linked to create a +# shared library. +postdep_objects=$lt_postdep_objects_CXX + +# Dependencies to place before the objects being linked to create a +# shared library. +predeps=$lt_predeps_CXX + +# Dependencies to place after the objects being linked to create a +# shared library. +postdeps=$lt_postdeps_CXX + +# The library search path used internally by the compiler when linking +# a shared library. +compiler_lib_search_path=$lt_compiler_lib_search_path_CXX + +# Method to check whether dependent libraries are shared objects. +deplibs_check_method=$lt_deplibs_check_method + +# Command to use when deplibs_check_method == file_magic. +file_magic_cmd=$lt_file_magic_cmd + +# Flag that allows shared libraries with undefined symbols to be built. +allow_undefined_flag=$lt_allow_undefined_flag_CXX + +# Flag that forces no undefined symbols. +no_undefined_flag=$lt_no_undefined_flag_CXX + +# Commands used to finish a libtool library installation in a directory. +finish_cmds=$lt_finish_cmds + +# Same as above, but a single script fragment to be evaled but not shown. +finish_eval=$lt_finish_eval + +# Take the output of nm and produce a listing of raw symbols and C names. +global_symbol_pipe=$lt_lt_cv_sys_global_symbol_pipe + +# Transform the output of nm in a proper C declaration +global_symbol_to_cdecl=$lt_lt_cv_sys_global_symbol_to_cdecl + +# Transform the output of nm in a C name address pair +global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address + +# This is the shared library runtime path variable. +runpath_var=$runpath_var + +# This is the shared library path variable. +shlibpath_var=$shlibpath_var + +# Is shlibpath searched before the hard-coded library search path? +shlibpath_overrides_runpath=$shlibpath_overrides_runpath + +# How to hardcode a shared library path into an executable. +hardcode_action=$hardcode_action_CXX + +# Whether we should hardcode library paths into libraries. +hardcode_into_libs=$hardcode_into_libs + +# Flag to hardcode \$libdir into a binary during linking. +# This must work even if \$libdir does not exist. +hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec_CXX + +# If ld is used when linking, flag to hardcode \$libdir into +# a binary during linking. This must work even if \$libdir does +# not exist. +hardcode_libdir_flag_spec_ld=$lt_hardcode_libdir_flag_spec_ld_CXX + +# Whether we need a single -rpath flag with a separated argument. +hardcode_libdir_separator=$lt_hardcode_libdir_separator_CXX + +# Set to yes if using DIR/libNAME${shared_ext} during linking hardcodes DIR into the +# resulting binary. +hardcode_direct=$hardcode_direct_CXX + +# Set to yes if using the -LDIR flag during linking hardcodes DIR into the +# resulting binary. +hardcode_minus_L=$hardcode_minus_L_CXX + +# Set to yes if using SHLIBPATH_VAR=DIR during linking hardcodes DIR into +# the resulting binary. +hardcode_shlibpath_var=$hardcode_shlibpath_var_CXX + +# Set to yes if building a shared library automatically hardcodes DIR into the library +# and all subsequent libraries and executables linked against it. +hardcode_automatic=$hardcode_automatic_CXX + +# Variables whose values should be saved in libtool wrapper scripts and +# restored at relink time. +variables_saved_for_relink="$variables_saved_for_relink" + +# Whether libtool must link a program against all its dependency libraries. +link_all_deplibs=$link_all_deplibs_CXX + +# Compile-time system search path for libraries +sys_lib_search_path_spec=$lt_sys_lib_search_path_spec + +# Run-time system search path for libraries +sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec + +# Fix the shell variable \$srcfile for the compiler. +fix_srcfile_path="$fix_srcfile_path_CXX" + +# Set to yes if exported symbols are required. +always_export_symbols=$always_export_symbols_CXX + +# The commands to list exported symbols. +export_symbols_cmds=$lt_export_symbols_cmds_CXX + +# The commands to extract the exported symbol list from a shared archive. +extract_expsyms_cmds=$lt_extract_expsyms_cmds + +# Symbols that should not be listed in the preloaded symbols. +exclude_expsyms=$lt_exclude_expsyms_CXX + +# Symbols that must always be exported. +include_expsyms=$lt_include_expsyms_CXX + +# ### END LIBTOOL TAG CONFIG: $tagname + +__EOF__ + + +else + # If there is no Makefile yet, we rely on a make rule to execute + # `config.status --recheck' to rerun these tests and create the + # libtool script then. + ltmain_in=`echo $ltmain | sed -e 's/\.sh$/.in/'` + if test -f "$ltmain_in"; then + test -f Makefile && make "$ltmain" + fi +fi + + +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu + +CC=$lt_save_CC +LDCXX=$LD +LD=$lt_save_LD +GCC=$lt_save_GCC +with_gnu_ldcxx=$with_gnu_ld +with_gnu_ld=$lt_save_with_gnu_ld +lt_cv_path_LDCXX=$lt_cv_path_LD +lt_cv_path_LD=$lt_save_path_LD +lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld +lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld + + else + tagname="" + fi + ;; + + F77) + if test -n "$F77" && test "X$F77" != "Xno"; then + +ac_ext=f +ac_compile='$F77 -c $FFLAGS conftest.$ac_ext >&5' +ac_link='$F77 -o conftest$ac_exeext $FFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_f77_compiler_gnu + + +archive_cmds_need_lc_F77=no +allow_undefined_flag_F77= +always_export_symbols_F77=no +archive_expsym_cmds_F77= +export_dynamic_flag_spec_F77= +hardcode_direct_F77=no +hardcode_libdir_flag_spec_F77= +hardcode_libdir_flag_spec_ld_F77= +hardcode_libdir_separator_F77= +hardcode_minus_L_F77=no +hardcode_automatic_F77=no +module_cmds_F77= +module_expsym_cmds_F77= +link_all_deplibs_F77=unknown +old_archive_cmds_F77=$old_archive_cmds +no_undefined_flag_F77= +whole_archive_flag_spec_F77= +enable_shared_with_static_runtimes_F77=no + +# Source file extension for f77 test sources. +ac_ext=f + +# Object file extension for compiled f77 test sources. +objext=o +objext_F77=$objext + +# Code to be used in simple compile tests +lt_simple_compile_test_code=" subroutine t\n return\n end\n" + +# Code to be used in simple link tests +lt_simple_link_test_code=" program t\n end\n" + +# ltmain only uses $CC for tagged configurations so make sure $CC is set. + +# If no C compiler was specified, use CC. +LTCC=${LTCC-"$CC"} + +# Allow CC to be a program name with arguments. +compiler=$CC + + +# Allow CC to be a program name with arguments. +lt_save_CC="$CC" +CC=${F77-"f77"} +compiler=$CC +compiler_F77=$CC +cc_basename=`$echo X"$compiler" | $Xsed -e 's%^.*/%%'` + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if libtool supports shared libraries" >&5 +$as_echo_n "checking if libtool supports shared libraries... " >&6; } +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $can_build_shared" >&5 +$as_echo "$can_build_shared" >&6; } + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build shared libraries" >&5 +$as_echo_n "checking whether to build shared libraries... " >&6; } +test "$can_build_shared" = "no" && enable_shared=no + +# On AIX, shared libraries and static libraries use the same namespace, and +# are all built from PIC. +case "$host_os" in +aix3*) + test "$enable_shared" = yes && enable_static=no + if test -n "$RANLIB"; then + archive_cmds="$archive_cmds~\$RANLIB \$lib" + postinstall_cmds='$RANLIB $lib' + fi + ;; +aix4*) + test "$enable_shared" = yes && enable_static=no + ;; +esac +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_shared" >&5 +$as_echo "$enable_shared" >&6; } + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build static libraries" >&5 +$as_echo_n "checking whether to build static libraries... " >&6; } +# Make sure either enable_shared or enable_static is yes. +test "$enable_shared" = yes || enable_static=yes +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_static" >&5 +$as_echo "$enable_static" >&6; } + +test "$ld_shlibs_F77" = no && can_build_shared=no + +GCC_F77="$G77" +LD_F77="$LD" + +lt_prog_compiler_wl_F77= +lt_prog_compiler_pic_F77= +lt_prog_compiler_static_F77= + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&5 +$as_echo_n "checking for $compiler option to produce PIC... " >&6; } + + if test "$GCC" = yes; then + lt_prog_compiler_wl_F77='-Wl,' + lt_prog_compiler_static_F77='-static' + + case $host_os in + aix*) + # All AIX code is PIC. + if test "$host_cpu" = ia64; then + # AIX 5 now supports IA64 processor + lt_prog_compiler_static_F77='-Bstatic' + fi + ;; + + amigaos*) + # FIXME: we need at least 68020 code to build shared libraries, but + # adding the `-m68020' flag to GCC prevents building anything better, + # like `-m68040'. + lt_prog_compiler_pic_F77='-m68020 -resident32 -malways-restore-a4' + ;; + + beos* | cygwin* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) + # PIC is the default for these OSes. + ;; + + mingw* | pw32* | os2*) + # This hack is so that the source file can tell whether it is being + # built for inclusion in a dll (and should export symbols for example). + lt_prog_compiler_pic_F77='-DDLL_EXPORT' + ;; + + darwin* | rhapsody*) + # PIC is the default on this platform + # Common symbols not allowed in MH_DYLIB files + lt_prog_compiler_pic_F77='-fno-common' + ;; + + msdosdjgpp*) + # Just because we use GCC doesn't mean we suddenly get shared libraries + # on systems that don't support them. + lt_prog_compiler_can_build_shared_F77=no + enable_shared=no + ;; + + sysv4*MP*) + if test -d /usr/nec; then + lt_prog_compiler_pic_F77=-Kconform_pic + fi + ;; + + hpux*) + # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but + # not for PA HP-UX. + case "$host_cpu" in + hppa*64*|ia64*) + # +Z the default + ;; + *) + lt_prog_compiler_pic_F77='-fPIC' + ;; + esac + ;; + + *) + lt_prog_compiler_pic_F77='-fPIC' + ;; + esac + else + # PORTME Check for flag to pass linker flags through the system compiler. + case $host_os in + aix*) + lt_prog_compiler_wl_F77='-Wl,' + if test "$host_cpu" = ia64; then + # AIX 5 now supports IA64 processor + lt_prog_compiler_static_F77='-Bstatic' + else + lt_prog_compiler_static_F77='-bnso -bI:/lib/syscalls.exp' + fi + ;; + + mingw* | pw32* | os2*) + # This hack is so that the source file can tell whether it is being + # built for inclusion in a dll (and should export symbols for example). + lt_prog_compiler_pic_F77='-DDLL_EXPORT' + ;; + + hpux9* | hpux10* | hpux11*) + lt_prog_compiler_wl_F77='-Wl,' + # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but + # not for PA HP-UX. + case "$host_cpu" in + hppa*64*|ia64*) + # +Z the default + ;; + *) + lt_prog_compiler_pic_F77='+Z' + ;; + esac + # Is there a better lt_prog_compiler_static that works with the bundled CC? + lt_prog_compiler_static_F77='${wl}-a ${wl}archive' + ;; + + irix5* | irix6* | nonstopux*) + lt_prog_compiler_wl_F77='-Wl,' + # PIC (with -KPIC) is the default. + lt_prog_compiler_static_F77='-non_shared' + ;; + + newsos6) + lt_prog_compiler_pic_F77='-KPIC' + lt_prog_compiler_static_F77='-Bstatic' + ;; + + linux*) + case $CC in + icc* | ecc*) + lt_prog_compiler_wl_F77='-Wl,' + lt_prog_compiler_pic_F77='-KPIC' + lt_prog_compiler_static_F77='-static' + ;; + ccc*) + lt_prog_compiler_wl_F77='-Wl,' + # All Alpha code is PIC. + lt_prog_compiler_static_F77='-non_shared' + ;; + esac + ;; + + osf3* | osf4* | osf5*) + lt_prog_compiler_wl_F77='-Wl,' + # All OSF/1 code is PIC. + lt_prog_compiler_static_F77='-non_shared' + ;; + + sco3.2v5*) + lt_prog_compiler_pic_F77='-Kpic' + lt_prog_compiler_static_F77='-dn' + ;; + + solaris*) + lt_prog_compiler_wl_F77='-Wl,' + lt_prog_compiler_pic_F77='-KPIC' + lt_prog_compiler_static_F77='-Bstatic' + ;; + + sunos4*) + lt_prog_compiler_wl_F77='-Qoption ld ' + lt_prog_compiler_pic_F77='-PIC' + lt_prog_compiler_static_F77='-Bstatic' + ;; + + sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) + lt_prog_compiler_wl_F77='-Wl,' + lt_prog_compiler_pic_F77='-KPIC' + lt_prog_compiler_static_F77='-Bstatic' + ;; + + sysv4*MP*) + if test -d /usr/nec ;then + lt_prog_compiler_pic_F77='-Kconform_pic' + lt_prog_compiler_static_F77='-Bstatic' + fi + ;; + + uts4*) + lt_prog_compiler_pic_F77='-pic' + lt_prog_compiler_static_F77='-Bstatic' + ;; + + *) + lt_prog_compiler_can_build_shared_F77=no + ;; + esac + fi + +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_prog_compiler_pic_F77" >&5 +$as_echo "$lt_prog_compiler_pic_F77" >&6; } + +# +# Check to make sure the PIC flag actually works. +# +if test -n "$lt_prog_compiler_pic_F77"; then + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler PIC flag $lt_prog_compiler_pic_F77 works" >&5 +$as_echo_n "checking if $compiler PIC flag $lt_prog_compiler_pic_F77 works... " >&6; } +if ${lt_prog_compiler_pic_works_F77+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_prog_compiler_pic_works_F77=no + ac_outfile=conftest.$ac_objext + printf "$lt_simple_compile_test_code" > conftest.$ac_ext + lt_compiler_flag="$lt_prog_compiler_pic_F77" + # Insert the option either (1) after the last *FLAGS variable, or + # (2) before a word containing "conftest.", or (3) at the end. + # Note that $ac_compile itself does not contain backslashes and begins + # with a dollar sign (not a hyphen), so the echo should work correctly. + # The option is referenced via a variable to avoid confusing sed. + lt_compile=`echo "$ac_compile" | $SED \ + -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \ + -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ + -e 's:$: $lt_compiler_flag:'` + (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&5) + (eval "$lt_compile" 2>conftest.err) + ac_status=$? + cat conftest.err >&5 + echo "$as_me:__oline__: \$? = $ac_status" >&5 + if (exit $ac_status) && test -s "$ac_outfile"; then + # The compiler can only warn and ignore the option if not recognized + # So say no if there are warnings + if test ! -s conftest.err; then + lt_prog_compiler_pic_works_F77=yes + fi + fi + $rm conftest* + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_prog_compiler_pic_works_F77" >&5 +$as_echo "$lt_prog_compiler_pic_works_F77" >&6; } + +if test x"$lt_prog_compiler_pic_works_F77" = xyes; then + case $lt_prog_compiler_pic_F77 in + "" | " "*) ;; + *) lt_prog_compiler_pic_F77=" $lt_prog_compiler_pic_F77" ;; + esac +else + lt_prog_compiler_pic_F77= + lt_prog_compiler_can_build_shared_F77=no +fi + +fi +case "$host_os" in + # For platforms which do not support PIC, -DPIC is meaningless: + *djgpp*) + lt_prog_compiler_pic_F77= + ;; + *) + lt_prog_compiler_pic_F77="$lt_prog_compiler_pic_F77" + ;; +esac + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5 +$as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; } +if ${lt_cv_prog_compiler_c_o_F77+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_prog_compiler_c_o_F77=no + $rm -r conftest 2>/dev/null + mkdir conftest + cd conftest + mkdir out + printf "$lt_simple_compile_test_code" > conftest.$ac_ext + + lt_compiler_flag="-o out/conftest2.$ac_objext" + # Insert the option either (1) after the last *FLAGS variable, or + # (2) before a word containing "conftest.", or (3) at the end. + # Note that $ac_compile itself does not contain backslashes and begins + # with a dollar sign (not a hyphen), so the echo should work correctly. + lt_compile=`echo "$ac_compile" | $SED \ + -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \ + -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ + -e 's:$: $lt_compiler_flag:'` + (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&5) + (eval "$lt_compile" 2>out/conftest.err) + ac_status=$? + cat out/conftest.err >&5 + echo "$as_me:__oline__: \$? = $ac_status" >&5 + if (exit $ac_status) && test -s out/conftest2.$ac_objext + then + # The compiler can only warn and ignore the option if not recognized + # So say no if there are warnings + if test ! -s out/conftest.err; then + lt_cv_prog_compiler_c_o_F77=yes + fi + fi + chmod u+w . + $rm conftest* + # SGI C++ compiler will create directory out/ii_files/ for + # template instantiation + test -d out/ii_files && $rm out/ii_files/* && rmdir out/ii_files + $rm out/* && rmdir out + cd .. + rmdir conftest + $rm conftest* + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o_F77" >&5 +$as_echo "$lt_cv_prog_compiler_c_o_F77" >&6; } + + +hard_links="nottested" +if test "$lt_cv_prog_compiler_c_o_F77" = no && test "$need_locks" != no; then + # do not overwrite the value of need_locks provided by the user + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if we can lock with hard links" >&5 +$as_echo_n "checking if we can lock with hard links... " >&6; } + hard_links=yes + $rm conftest* + ln conftest.a conftest.b 2>/dev/null && hard_links=no + touch conftest.a + ln conftest.a conftest.b 2>&5 || hard_links=no + ln conftest.a conftest.b 2>/dev/null && hard_links=no + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $hard_links" >&5 +$as_echo "$hard_links" >&6; } + if test "$hard_links" = no; then + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&5 +$as_echo "$as_me: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&2;} + need_locks=warn + fi +else + need_locks=no +fi + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&5 +$as_echo_n "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; } + + runpath_var= + allow_undefined_flag_F77= + enable_shared_with_static_runtimes_F77=no + archive_cmds_F77= + archive_expsym_cmds_F77= + old_archive_From_new_cmds_F77= + old_archive_from_expsyms_cmds_F77= + export_dynamic_flag_spec_F77= + whole_archive_flag_spec_F77= + thread_safe_flag_spec_F77= + hardcode_libdir_flag_spec_F77= + hardcode_libdir_flag_spec_ld_F77= + hardcode_libdir_separator_F77= + hardcode_direct_F77=no + hardcode_minus_L_F77=no + hardcode_shlibpath_var_F77=unsupported + link_all_deplibs_F77=unknown + hardcode_automatic_F77=no + module_cmds_F77= + module_expsym_cmds_F77= + always_export_symbols_F77=no + export_symbols_cmds_F77='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' + # include_expsyms should be a list of space-separated symbols to be *always* + # included in the symbol list + include_expsyms_F77= + # exclude_expsyms can be an extended regexp of symbols to exclude + # it will be wrapped by ` (' and `)$', so one must not match beginning or + # end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc', + # as well as any symbol that contains `d'. + exclude_expsyms_F77="_GLOBAL_OFFSET_TABLE_" + # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out + # platforms (ab)use it in PIC code, but their linkers get confused if + # the symbol is explicitly referenced. Since portable code cannot + # rely on this symbol name, it's probably fine to never include it in + # preloaded symbol tables. + extract_expsyms_cmds= + + case $host_os in + cygwin* | mingw* | pw32*) + # FIXME: the MSVC++ port hasn't been tested in a loooong time + # When not using gcc, we currently assume that we are using + # Microsoft Visual C++. + if test "$GCC" != yes; then + with_gnu_ld=no + fi + ;; + openbsd*) + with_gnu_ld=no + ;; + esac + + ld_shlibs_F77=yes + if test "$with_gnu_ld" = yes; then + # If archive_cmds runs LD, not CC, wlarc should be empty + wlarc='${wl}' + + # See if GNU ld supports shared libraries. + case $host_os in + aix3* | aix4* | aix5*) + # On AIX/PPC, the GNU linker is very broken + if test "$host_cpu" != ia64; then + ld_shlibs_F77=no + cat <&2 + +*** Warning: the GNU linker, at least up to release 2.9.1, is reported +*** to be unable to reliably create shared libraries on AIX. +*** Therefore, libtool is disabling shared libraries support. If you +*** really care for shared libraries, you may want to modify your PATH +*** so that a non-GNU linker is found, and then restart. + +EOF + fi + ;; + + amigaos*) + archive_cmds_F77='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' + hardcode_libdir_flag_spec_F77='-L$libdir' + hardcode_minus_L_F77=yes + + # Samuel A. Falvo II reports + # that the semantics of dynamic libraries on AmigaOS, at least up + # to version 4, is to share data among multiple programs linked + # with the same dynamic library. Since this doesn't match the + # behavior of shared libraries on other platforms, we can't use + # them. + ld_shlibs_F77=no + ;; + + beos*) + if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then + allow_undefined_flag_F77=unsupported + # Joseph Beckenbach says some releases of gcc + # support --undefined. This deserves some investigation. FIXME + archive_cmds_F77='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + else + ld_shlibs_F77=no + fi + ;; + + cygwin* | mingw* | pw32*) + # _LT_AC_TAGVAR(hardcode_libdir_flag_spec, F77) is actually meaningless, + # as there is no search path for DLLs. + hardcode_libdir_flag_spec_F77='-L$libdir' + allow_undefined_flag_F77=unsupported + always_export_symbols_F77=no + enable_shared_with_static_runtimes_F77=yes + export_symbols_cmds_F77='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[BCDGS] /s/.* \([^ ]*\)/\1 DATA/'\'' | $SED -e '\''/^[AITW] /s/.* //'\'' | sort | uniq > $export_symbols' + + if $LD --help 2>&1 | grep 'auto-import' > /dev/null; then + archive_cmds_F77='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--image-base=0x10000000 ${wl}--out-implib,$lib' + # If the export-symbols file already is a .def file (1st line + # is EXPORTS), use it as is; otherwise, prepend... + archive_expsym_cmds_F77='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then + cp $export_symbols $output_objdir/$soname.def; + else + echo EXPORTS > $output_objdir/$soname.def; + cat $export_symbols >> $output_objdir/$soname.def; + fi~ + $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--image-base=0x10000000 ${wl}--out-implib,$lib' + else + ld_shlibs=no + fi + ;; + + netbsd* | knetbsd*-gnu) + if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then + archive_cmds_F77='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib' + wlarc= + else + archive_cmds_F77='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + archive_expsym_cmds_F77='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + fi + ;; + + solaris* | sysv5*) + if $LD -v 2>&1 | grep 'BFD 2\.8' > /dev/null; then + ld_shlibs_F77=no + cat <&2 + +*** Warning: The releases 2.8.* of the GNU linker cannot reliably +*** create shared libraries on Solaris systems. Therefore, libtool +*** is disabling shared libraries support. We urge you to upgrade GNU +*** binutils to release 2.9.1 or newer. Another option is to modify +*** your PATH or compiler configuration so that the native linker is +*** used, and then restart. + +EOF + elif $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then + archive_cmds_F77='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + archive_expsym_cmds_F77='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + else + ld_shlibs_F77=no + fi + ;; + + sunos4*) + archive_cmds_F77='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags' + wlarc= + hardcode_direct_F77=yes + hardcode_shlibpath_var_F77=no + ;; + + linux*) + if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then + tmp_archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + archive_cmds_F77="$tmp_archive_cmds" + supports_anon_versioning=no + case `$LD -v 2>/dev/null` in + *\ 01.* | *\ 2.[0-9].* | *\ 2.10.*) ;; # catch versions < 2.11 + *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ... + *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ... + *\ 2.11.*) ;; # other 2.11 versions + *) supports_anon_versioning=yes ;; + esac + if test $supports_anon_versioning = yes; then + archive_expsym_cmds_F77='$echo "{ global:" > $output_objdir/$libname.ver~ +cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ +$echo "local: *; };" >> $output_objdir/$libname.ver~ + $CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib' + else + archive_expsym_cmds_F77="$tmp_archive_cmds" + fi + else + ld_shlibs_F77=no + fi + ;; + + *) + if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then + archive_cmds_F77='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + archive_expsym_cmds_F77='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + else + ld_shlibs_F77=no + fi + ;; + esac + + if test "$ld_shlibs_F77" = yes; then + runpath_var=LD_RUN_PATH + hardcode_libdir_flag_spec_F77='${wl}--rpath ${wl}$libdir' + export_dynamic_flag_spec_F77='${wl}--export-dynamic' + # ancient GNU ld didn't support --whole-archive et. al. + if $LD --help 2>&1 | grep 'no-whole-archive' > /dev/null; then + whole_archive_flag_spec_F77="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' + else + whole_archive_flag_spec_F77= + fi + fi + else + # PORTME fill in a description of your system's linker (not GNU ld) + case $host_os in + aix3*) + allow_undefined_flag_F77=unsupported + always_export_symbols_F77=yes + archive_expsym_cmds_F77='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname' + # Note: this linker hardcodes the directories in LIBPATH if there + # are no directories specified by -L. + hardcode_minus_L_F77=yes + if test "$GCC" = yes && test -z "$link_static_flag"; then + # Neither direct hardcoding nor static linking is supported with a + # broken collect2. + hardcode_direct_F77=unsupported + fi + ;; + + aix4* | aix5*) + if test "$host_cpu" = ia64; then + # On IA64, the linker does run time linking by default, so we don't + # have to do anything special. + aix_use_runtimelinking=no + exp_sym_flag='-Bexport' + no_entry_flag="" + else + # If we're using GNU nm, then we don't want the "-C" option. + # -C means demangle to AIX nm, but means don't demangle with GNU nm + if $NM -V 2>&1 | grep 'GNU' > /dev/null; then + export_symbols_cmds_F77='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$2 == "T") || (\$2 == "D") || (\$2 == "B")) && (substr(\$3,1,1) != ".")) { print \$3 } }'\'' | sort -u > $export_symbols' + else + export_symbols_cmds_F77='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$2 == "T") || (\$2 == "D") || (\$2 == "B")) && (substr(\$3,1,1) != ".")) { print \$3 } }'\'' | sort -u > $export_symbols' + fi + aix_use_runtimelinking=no + + # Test if we are trying to use run time linking or normal + # AIX style linking. If -brtl is somewhere in LDFLAGS, we + # need to do runtime linking. + case $host_os in aix4.[23]|aix4.[23].*|aix5*) + for ld_flag in $LDFLAGS; do + if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then + aix_use_runtimelinking=yes + break + fi + done + esac + + exp_sym_flag='-bexport' + no_entry_flag='-bnoentry' + fi + + # When large executables or shared objects are built, AIX ld can + # have problems creating the table of contents. If linking a library + # or program results in "error TOC overflow" add -mminimal-toc to + # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not + # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. + + archive_cmds_F77='' + hardcode_direct_F77=yes + hardcode_libdir_separator_F77=':' + link_all_deplibs_F77=yes + + if test "$GCC" = yes; then + case $host_os in aix4.012|aix4.012.*) + # We only want to do this on AIX 4.2 and lower, the check + # below for broken collect2 doesn't work under 4.3+ + collect2name=`${CC} -print-prog-name=collect2` + if test -f "$collect2name" && \ + strings "$collect2name" | grep resolve_lib_name >/dev/null + then + # We have reworked collect2 + hardcode_direct_F77=yes + else + # We have old collect2 + hardcode_direct_F77=unsupported + # It fails to find uninstalled libraries when the uninstalled + # path is not listed in the libpath. Setting hardcode_minus_L + # to unsupported forces relinking + hardcode_minus_L_F77=yes + hardcode_libdir_flag_spec_F77='-L$libdir' + hardcode_libdir_separator_F77= + fi + esac + shared_flag='-shared' + else + # not using gcc + if test "$host_cpu" = ia64; then + # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release + # chokes on -Wl,-G. The following line is correct: + shared_flag='-G' + else + if test "$aix_use_runtimelinking" = yes; then + shared_flag='${wl}-G' + else + shared_flag='${wl}-bM:SRE' + fi + fi + fi + + # It seems that -bexpall does not export symbols beginning with + # underscore (_), so it is better to generate a list of symbols to export. + always_export_symbols_F77=yes + if test "$aix_use_runtimelinking" = yes; then + # Warning - without using the other runtime loading flags (-brtl), + # -berok will link without error, but may produce a broken library. + allow_undefined_flag_F77='-berok' + # Determine the default libpath from the value encoded in an empty executable. + cat > conftest.$ac_ext <<_ACEOF + program main + + end +_ACEOF +if ac_fn_f77_try_link "$LINENO"; then : + +aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; } +}'` +# Check for a 64-bit object if we didn't find anything. +if test -z "$aix_libpath"; then aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; } +}'`; fi +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi + + hardcode_libdir_flag_spec_F77='${wl}-blibpath:$libdir:'"$aix_libpath" + archive_expsym_cmds_F77="\$CC"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols $shared_flag" + else + if test "$host_cpu" = ia64; then + hardcode_libdir_flag_spec_F77='${wl}-R $libdir:/usr/lib:/lib' + allow_undefined_flag_F77="-z nodefs" + archive_expsym_cmds_F77="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols" + else + # Determine the default libpath from the value encoded in an empty executable. + cat > conftest.$ac_ext <<_ACEOF + program main + + end +_ACEOF +if ac_fn_f77_try_link "$LINENO"; then : + +aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; } +}'` +# Check for a 64-bit object if we didn't find anything. +if test -z "$aix_libpath"; then aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; } +}'`; fi +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi + + hardcode_libdir_flag_spec_F77='${wl}-blibpath:$libdir:'"$aix_libpath" + # Warning - without using the other run time loading flags, + # -berok will link without error, but may produce a broken library. + no_undefined_flag_F77=' ${wl}-bernotok' + allow_undefined_flag_F77=' ${wl}-berok' + # -bexpall does not export symbols beginning with underscore (_) + always_export_symbols_F77=yes + # Exported symbols can be pulled into shared objects from archives + whole_archive_flag_spec_F77=' ' + archive_cmds_need_lc_F77=yes + # This is similar to how AIX traditionally builds it's shared libraries. + archive_expsym_cmds_F77="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${wl}-bE:$export_symbols ${wl}-bnoentry${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname' + fi + fi + ;; + + amigaos*) + archive_cmds_F77='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' + hardcode_libdir_flag_spec_F77='-L$libdir' + hardcode_minus_L_F77=yes + # see comment about different semantics on the GNU ld section + ld_shlibs_F77=no + ;; + + bsdi4*) + export_dynamic_flag_spec_F77=-rdynamic + ;; + + cygwin* | mingw* | pw32*) + # When not using gcc, we currently assume that we are using + # Microsoft Visual C++. + # hardcode_libdir_flag_spec is actually meaningless, as there is + # no search path for DLLs. + hardcode_libdir_flag_spec_F77=' ' + allow_undefined_flag_F77=unsupported + # Tell ltmain to make .lib files, not .a files. + libext=lib + # Tell ltmain to make .dll files, not .so files. + shrext=".dll" + # FIXME: Setting linknames here is a bad hack. + archive_cmds_F77='$CC -o $lib $libobjs $compiler_flags `echo "$deplibs" | $SED -e '\''s/ -lc$//'\''` -link -dll~linknames=' + # The linker will automatically build a .lib file if we build a DLL. + old_archive_From_new_cmds_F77='true' + # FIXME: Should let the user specify the lib program. + old_archive_cmds_F77='lib /OUT:$oldlib$oldobjs$old_deplibs' + fix_srcfile_path='`cygpath -w "$srcfile"`' + enable_shared_with_static_runtimes_F77=yes + ;; + + darwin* | rhapsody*) + if test "$GXX" = yes ; then + archive_cmds_need_lc_F77=no + case "$host_os" in + rhapsody* | darwin1.[012]) + allow_undefined_flag_F77='-undefined suppress' + ;; + *) # Darwin 1.3 on + if test -z ${MACOSX_DEPLOYMENT_TARGET} ; then + allow_undefined_flag_F77='-flat_namespace -undefined suppress' + else + case ${MACOSX_DEPLOYMENT_TARGET} in + 10.[012]) + allow_undefined_flag_F77='-flat_namespace -undefined suppress' + ;; + 10.*) + allow_undefined_flag_F77='-undefined dynamic_lookup' + ;; + esac + fi + ;; + esac + lt_int_apple_cc_single_mod=no + output_verbose_link_cmd='echo' + if $CC -dumpspecs 2>&1 | grep 'single_module' >/dev/null ; then + lt_int_apple_cc_single_mod=yes + fi + if test "X$lt_int_apple_cc_single_mod" = Xyes ; then + archive_cmds_F77='$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring' + else + archive_cmds_F77='$CC -r ${wl}-bind_at_load -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $deplibs $compiler_flags -install_name $rpath/$soname $verstring' + fi + module_cmds_F77='$CC ${wl}-bind_at_load $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags' + # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's + if test "X$lt_int_apple_cc_single_mod" = Xyes ; then + archive_expsym_cmds_F77='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' + else + archive_expsym_cmds_F77='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -r ${wl}-bind_at_load -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' + fi + module_expsym_cmds_F77='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' + hardcode_direct_F77=no + hardcode_automatic_F77=yes + hardcode_shlibpath_var_F77=unsupported + whole_archive_flag_spec_F77='-all_load $convenience' + link_all_deplibs_F77=yes + else + ld_shlibs_F77=no + fi + ;; + + dgux*) + archive_cmds_F77='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + hardcode_libdir_flag_spec_F77='-L$libdir' + hardcode_shlibpath_var_F77=no + ;; + + freebsd1*) + ld_shlibs_F77=no + ;; + + # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor + # support. Future versions do this automatically, but an explicit c++rt0.o + # does not break anything, and helps significantly (at the cost of a little + # extra space). + freebsd2.2*) + archive_cmds_F77='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o' + hardcode_libdir_flag_spec_F77='-R$libdir' + hardcode_direct_F77=yes + hardcode_shlibpath_var_F77=no + ;; + + # Unfortunately, older versions of FreeBSD 2 do not have this feature. + freebsd2*) + archive_cmds_F77='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' + hardcode_direct_F77=yes + hardcode_minus_L_F77=yes + hardcode_shlibpath_var_F77=no + ;; + + # FreeBSD 3 and greater uses gcc -shared to do shared libraries. + freebsd* | kfreebsd*-gnu) + archive_cmds_F77='$CC -shared -o $lib $libobjs $deplibs $compiler_flags' + hardcode_libdir_flag_spec_F77='-R$libdir' + hardcode_direct_F77=yes + hardcode_shlibpath_var_F77=no + ;; + + hpux9*) + if test "$GCC" = yes; then + archive_cmds_F77='$rm $output_objdir/$soname~$CC -shared -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' + else + archive_cmds_F77='$rm $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' + fi + hardcode_libdir_flag_spec_F77='${wl}+b ${wl}$libdir' + hardcode_libdir_separator_F77=: + hardcode_direct_F77=yes + + # hardcode_minus_L: Not really in the search PATH, + # but as the default location of the library. + hardcode_minus_L_F77=yes + export_dynamic_flag_spec_F77='${wl}-E' + ;; + + hpux10* | hpux11*) + if test "$GCC" = yes -a "$with_gnu_ld" = no; then + case "$host_cpu" in + hppa*64*|ia64*) + archive_cmds_F77='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' + ;; + *) + archive_cmds_F77='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags' + ;; + esac + else + case "$host_cpu" in + hppa*64*|ia64*) + archive_cmds_F77='$LD -b +h $soname -o $lib $libobjs $deplibs $linker_flags' + ;; + *) + archive_cmds_F77='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' + ;; + esac + fi + if test "$with_gnu_ld" = no; then + case "$host_cpu" in + hppa*64*) + hardcode_libdir_flag_spec_F77='${wl}+b ${wl}$libdir' + hardcode_libdir_flag_spec_ld_F77='+b $libdir' + hardcode_libdir_separator_F77=: + hardcode_direct_F77=no + hardcode_shlibpath_var_F77=no + ;; + ia64*) + hardcode_libdir_flag_spec_F77='-L$libdir' + hardcode_direct_F77=no + hardcode_shlibpath_var_F77=no + + # hardcode_minus_L: Not really in the search PATH, + # but as the default location of the library. + hardcode_minus_L_F77=yes + ;; + *) + hardcode_libdir_flag_spec_F77='${wl}+b ${wl}$libdir' + hardcode_libdir_separator_F77=: + hardcode_direct_F77=yes + export_dynamic_flag_spec_F77='${wl}-E' + + # hardcode_minus_L: Not really in the search PATH, + # but as the default location of the library. + hardcode_minus_L_F77=yes + ;; + esac + fi + ;; + + irix5* | irix6* | nonstopux*) + if test "$GCC" = yes; then + archive_cmds_F77='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' + else + archive_cmds_F77='$LD -shared $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' + hardcode_libdir_flag_spec_ld_F77='-rpath $libdir' + fi + hardcode_libdir_flag_spec_F77='${wl}-rpath ${wl}$libdir' + hardcode_libdir_separator_F77=: + link_all_deplibs_F77=yes + ;; + + netbsd* | knetbsd*-gnu) + if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then + archive_cmds_F77='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out + else + archive_cmds_F77='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF + fi + hardcode_libdir_flag_spec_F77='-R$libdir' + hardcode_direct_F77=yes + hardcode_shlibpath_var_F77=no + ;; + + newsos6) + archive_cmds_F77='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + hardcode_direct_F77=yes + hardcode_libdir_flag_spec_F77='${wl}-rpath ${wl}$libdir' + hardcode_libdir_separator_F77=: + hardcode_shlibpath_var_F77=no + ;; + + openbsd*) + hardcode_direct_F77=yes + hardcode_shlibpath_var_F77=no + if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then + archive_cmds_F77='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' + hardcode_libdir_flag_spec_F77='${wl}-rpath,$libdir' + export_dynamic_flag_spec_F77='${wl}-E' + else + case $host_os in + openbsd[01].* | openbsd2.[0-7] | openbsd2.[0-7].*) + archive_cmds_F77='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' + hardcode_libdir_flag_spec_F77='-R$libdir' + ;; + *) + archive_cmds_F77='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' + hardcode_libdir_flag_spec_F77='${wl}-rpath,$libdir' + ;; + esac + fi + ;; + + os2*) + hardcode_libdir_flag_spec_F77='-L$libdir' + hardcode_minus_L_F77=yes + allow_undefined_flag_F77=unsupported + archive_cmds_F77='$echo "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$echo "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~$echo DATA >> $output_objdir/$libname.def~$echo " SINGLE NONSHARED" >> $output_objdir/$libname.def~$echo EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def' + old_archive_From_new_cmds_F77='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def' + ;; + + osf3*) + if test "$GCC" = yes; then + allow_undefined_flag_F77=' ${wl}-expect_unresolved ${wl}\*' + archive_cmds_F77='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' + else + allow_undefined_flag_F77=' -expect_unresolved \*' + archive_cmds_F77='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' + fi + hardcode_libdir_flag_spec_F77='${wl}-rpath ${wl}$libdir' + hardcode_libdir_separator_F77=: + ;; + + osf4* | osf5*) # as osf3* with the addition of -msym flag + if test "$GCC" = yes; then + allow_undefined_flag_F77=' ${wl}-expect_unresolved ${wl}\*' + archive_cmds_F77='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' + hardcode_libdir_flag_spec_F77='${wl}-rpath ${wl}$libdir' + else + allow_undefined_flag_F77=' -expect_unresolved \*' + archive_cmds_F77='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -msym -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' + archive_expsym_cmds_F77='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; echo "-hidden">> $lib.exp~ + $LD -shared${allow_undefined_flag} -input $lib.exp $linker_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib~$rm $lib.exp' + + # Both c and cxx compiler support -rpath directly + hardcode_libdir_flag_spec_F77='-rpath $libdir' + fi + hardcode_libdir_separator_F77=: + ;; + + sco3.2v5*) + archive_cmds_F77='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + hardcode_shlibpath_var_F77=no + export_dynamic_flag_spec_F77='${wl}-Bexport' + runpath_var=LD_RUN_PATH + hardcode_runpath_var=yes + ;; + + solaris*) + no_undefined_flag_F77=' -z text' + if test "$GCC" = yes; then + archive_cmds_F77='$CC -shared ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' + archive_expsym_cmds_F77='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ + $CC -shared ${wl}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags~$rm $lib.exp' + else + archive_cmds_F77='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags' + archive_expsym_cmds_F77='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ + $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp' + fi + hardcode_libdir_flag_spec_F77='-R$libdir' + hardcode_shlibpath_var_F77=no + case $host_os in + solaris2.[0-5] | solaris2.[0-5].*) ;; + *) # Supported since Solaris 2.6 (maybe 2.5.1?) + whole_archive_flag_spec_F77='-z allextract$convenience -z defaultextract' ;; + esac + link_all_deplibs_F77=yes + ;; + + sunos4*) + if test "x$host_vendor" = xsequent; then + # Use $CC to link under sequent, because it throws in some extra .o + # files that make .init and .fini sections work. + archive_cmds_F77='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags' + else + archive_cmds_F77='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags' + fi + hardcode_libdir_flag_spec_F77='-L$libdir' + hardcode_direct_F77=yes + hardcode_minus_L_F77=yes + hardcode_shlibpath_var_F77=no + ;; + + sysv4) + case $host_vendor in + sni) + archive_cmds_F77='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + hardcode_direct_F77=yes # is this really true??? + ;; + siemens) + ## LD is ld it makes a PLAMLIB + ## CC just makes a GrossModule. + archive_cmds_F77='$LD -G -o $lib $libobjs $deplibs $linker_flags' + reload_cmds_F77='$CC -r -o $output$reload_objs' + hardcode_direct_F77=no + ;; + motorola) + archive_cmds_F77='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + hardcode_direct_F77=no #Motorola manual says yes, but my tests say they lie + ;; + esac + runpath_var='LD_RUN_PATH' + hardcode_shlibpath_var_F77=no + ;; + + sysv4.3*) + archive_cmds_F77='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + hardcode_shlibpath_var_F77=no + export_dynamic_flag_spec_F77='-Bexport' + ;; + + sysv4*MP*) + if test -d /usr/nec; then + archive_cmds_F77='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + hardcode_shlibpath_var_F77=no + runpath_var=LD_RUN_PATH + hardcode_runpath_var=yes + ld_shlibs_F77=yes + fi + ;; + + sysv4.2uw2*) + archive_cmds_F77='$LD -G -o $lib $libobjs $deplibs $linker_flags' + hardcode_direct_F77=yes + hardcode_minus_L_F77=no + hardcode_shlibpath_var_F77=no + hardcode_runpath_var=yes + runpath_var=LD_RUN_PATH + ;; + + sysv5OpenUNIX8* | sysv5UnixWare7* | sysv5uw[78]* | unixware7*) + no_undefined_flag_F77='${wl}-z ${wl}text' + if test "$GCC" = yes; then + archive_cmds_F77='$CC -shared ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' + else + archive_cmds_F77='$CC -G ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' + fi + runpath_var='LD_RUN_PATH' + hardcode_shlibpath_var_F77=no + ;; + + sysv5*) + no_undefined_flag_F77=' -z text' + # $CC -shared without GNU ld will not create a library from C++ + # object files and a static libstdc++, better avoid it by now + archive_cmds_F77='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags' + archive_expsym_cmds_F77='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ + $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp' + hardcode_libdir_flag_spec_F77= + hardcode_shlibpath_var_F77=no + runpath_var='LD_RUN_PATH' + ;; + + uts4*) + archive_cmds_F77='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + hardcode_libdir_flag_spec_F77='-L$libdir' + hardcode_shlibpath_var_F77=no + ;; + + *) + ld_shlibs_F77=no + ;; + esac + fi + +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs_F77" >&5 +$as_echo "$ld_shlibs_F77" >&6; } +test "$ld_shlibs_F77" = no && can_build_shared=no + +variables_saved_for_relink="PATH $shlibpath_var $runpath_var" +if test "$GCC" = yes; then + variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" +fi + +# +# Do we need to explicitly link libc? +# +case "x$archive_cmds_need_lc_F77" in +x|xyes) + # Assume -lc should be added + archive_cmds_need_lc_F77=yes + + if test "$enable_shared" = yes && test "$GCC" = yes; then + case $archive_cmds_F77 in + *'~'*) + # FIXME: we may have to deal with multi-command sequences. + ;; + '$CC '*) + # Test whether the compiler implicitly links with -lc since on some + # systems, -lgcc has to come before -lc. If gcc already passes -lc + # to ld, don't add -lc before -lgcc. + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -lc should be explicitly linked in" >&5 +$as_echo_n "checking whether -lc should be explicitly linked in... " >&6; } + $rm conftest* + printf "$lt_simple_compile_test_code" > conftest.$ac_ext + + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 + (eval $ac_compile) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } 2>conftest.err; then + soname=conftest + lib=conftest + libobjs=conftest.$ac_objext + deplibs= + wl=$lt_prog_compiler_wl_F77 + compiler_flags=-v + linker_flags=-v + verstring= + output_objdir=. + libname=conftest + lt_save_allow_undefined_flag=$allow_undefined_flag_F77 + allow_undefined_flag_F77= + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$archive_cmds_F77 2\>\&1 \| grep \" -lc \" \>/dev/null 2\>\&1\""; } >&5 + (eval $archive_cmds_F77 2\>\&1 \| grep \" -lc \" \>/dev/null 2\>\&1) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } + then + archive_cmds_need_lc_F77=no + else + archive_cmds_need_lc_F77=yes + fi + allow_undefined_flag_F77=$lt_save_allow_undefined_flag + else + cat conftest.err 1>&5 + fi + $rm conftest* + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $archive_cmds_need_lc_F77" >&5 +$as_echo "$archive_cmds_need_lc_F77" >&6; } + ;; + esac + fi + ;; +esac + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking dynamic linker characteristics" >&5 +$as_echo_n "checking dynamic linker characteristics... " >&6; } +library_names_spec= +libname_spec='lib$name' +soname_spec= +shrext=".so" +postinstall_cmds= +postuninstall_cmds= +finish_cmds= +finish_eval= +shlibpath_var= +shlibpath_overrides_runpath=unknown +version_type=none +dynamic_linker="$host_os ld.so" +sys_lib_dlsearch_path_spec="/lib /usr/lib" +if test "$GCC" = yes; then + sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"` + if echo "$sys_lib_search_path_spec" | grep ';' >/dev/null ; then + # if the path contains ";" then we assume it to be the separator + # otherwise default to the standard path separator (i.e. ":") - it is + # assumed that no part of a normal pathname contains ";" but that should + # okay in the real world where ";" in dirpaths is itself problematic. + sys_lib_search_path_spec=`echo "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'` + else + sys_lib_search_path_spec=`echo "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` + fi +else + sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" +fi +need_lib_prefix=unknown +hardcode_into_libs=no + +# when you set need_version to no, make sure it does not cause -set_version +# flags to be left without arguments +need_version=unknown + +case $host_os in +aix3*) + version_type=linux + library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a' + shlibpath_var=LIBPATH + + # AIX 3 has no versioning support, so we append a major version to the name. + soname_spec='${libname}${release}${shared_ext}$major' + ;; + +aix4* | aix5*) + version_type=linux + need_lib_prefix=no + need_version=no + hardcode_into_libs=yes + if test "$host_cpu" = ia64; then + # AIX 5 supports IA64 + library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}' + shlibpath_var=LD_LIBRARY_PATH + else + # With GCC up to 2.95.x, collect2 would create an import file + # for dependence libraries. The import file would start with + # the line `#! .'. This would cause the generated library to + # depend on `.', always an invalid library. This was fixed in + # development snapshots of GCC prior to 3.0. + case $host_os in + aix4 | aix4.[01] | aix4.[01].*) + if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)' + echo ' yes ' + echo '#endif'; } | ${CC} -E - | grep yes > /dev/null; then + : + else + can_build_shared=no + fi + ;; + esac + # AIX (on Power*) has no versioning support, so currently we can not hardcode correct + # soname into executable. Probably we can add versioning support to + # collect2, so additional links can be useful in future. + if test "$aix_use_runtimelinking" = yes; then + # If using run time linking (on AIX 4.2 or later) use lib.so + # instead of lib.a to let people know that these are not + # typical AIX shared libraries. + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + else + # We preserve .a as extension for shared libraries through AIX4.2 + # and later when we are not doing run time linking. + library_names_spec='${libname}${release}.a $libname.a' + soname_spec='${libname}${release}${shared_ext}$major' + fi + shlibpath_var=LIBPATH + fi + ;; + +amigaos*) + library_names_spec='$libname.ixlibrary $libname.a' + # Create ${libname}_ixlibrary.a entries in /sys/libs. + finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$echo "X$lib" | $Xsed -e '\''s%^.*/\([^/]*\)\.ixlibrary$%\1%'\''`; test $rm /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done' + ;; + +beos*) + library_names_spec='${libname}${shared_ext}' + dynamic_linker="$host_os ld.so" + shlibpath_var=LIBRARY_PATH + ;; + +bsdi4*) + version_type=linux + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir' + shlibpath_var=LD_LIBRARY_PATH + sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib" + sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib" + # the default ld.so.conf also contains /usr/contrib/lib and + # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow + # libtool to hard-code these into programs + ;; + +cygwin* | mingw* | pw32*) + version_type=windows + shrext=".dll" + need_version=no + need_lib_prefix=no + + case $GCC,$host_os in + yes,cygwin* | yes,mingw* | yes,pw32*) + library_names_spec='$libname.dll.a' + # DLL is installed to $(libdir)/../bin by postinstall_cmds + postinstall_cmds='base_file=`basename \${file}`~ + dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i;echo \$dlname'\''`~ + dldir=$destdir/`dirname \$dlpath`~ + test -d \$dldir || mkdir -p \$dldir~ + $install_prog $dir/$dlname \$dldir/$dlname' + postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~ + dlpath=$dir/\$dldll~ + $rm \$dlpath' + shlibpath_overrides_runpath=yes + + case $host_os in + cygwin*) + # Cygwin DLLs use 'cyg' prefix rather than 'lib' + soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}' + sys_lib_search_path_spec="/usr/lib /lib/w32api /lib /usr/local/lib" + ;; + mingw*) + # MinGW DLLs use traditional 'lib' prefix + soname_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}' + sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"` + if echo "$sys_lib_search_path_spec" | grep ';[c-zC-Z]:/' >/dev/null; then + # It is most probably a Windows format PATH printed by + # mingw gcc, but we are running on Cygwin. Gcc prints its search + # path with ; separators, and with drive letters. We can handle the + # drive letters (cygwin fileutils understands them), so leave them, + # especially as we might pass files found there to a mingw objdump, + # which wouldn't understand a cygwinified path. Ahh. + sys_lib_search_path_spec=`echo "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'` + else + sys_lib_search_path_spec=`echo "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` + fi + ;; + pw32*) + # pw32 DLLs use 'pw' prefix rather than 'lib' + library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/./-/g'`${versuffix}${shared_ext}' + ;; + esac + ;; + + *) + library_names_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext} $libname.lib' + ;; + esac + dynamic_linker='Win32 ld.exe' + # FIXME: first we should search . and the directory the executable is in + shlibpath_var=PATH + ;; + +darwin* | rhapsody*) + dynamic_linker="$host_os dyld" + version_type=darwin + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${versuffix}$shared_ext ${libname}${release}${major}$shared_ext ${libname}$shared_ext' + soname_spec='${libname}${release}${major}$shared_ext' + shlibpath_overrides_runpath=yes + shlibpath_var=DYLD_LIBRARY_PATH + shrext='$(test .$module = .yes && echo .so || echo .dylib)' + # Apple's gcc prints 'gcc -print-search-dirs' doesn't operate the same. + if test "$GCC" = yes; then + sys_lib_search_path_spec=`$CC -print-search-dirs | tr "\n" "$PATH_SEPARATOR" | sed -e 's/libraries:/@libraries:/' | tr "@" "\n" | grep "^libraries:" | sed -e "s/^libraries://" -e "s,=/,/,g" -e "s,$PATH_SEPARATOR, ,g" -e "s,.*,& /lib /usr/lib /usr/local/lib,g"` + else + sys_lib_search_path_spec='/lib /usr/lib /usr/local/lib' + fi + sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib' + ;; + +dgux*) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname$shared_ext' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + ;; + +freebsd1*) + dynamic_linker=no + ;; + +kfreebsd*-gnu) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=no + hardcode_into_libs=yes + dynamic_linker='GNU ld.so' + ;; + +freebsd*) + objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout` + version_type=freebsd-$objformat + case $version_type in + freebsd-elf*) + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}' + need_version=no + need_lib_prefix=no + ;; + freebsd-*) + library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix' + need_version=yes + ;; + esac + shlibpath_var=LD_LIBRARY_PATH + case $host_os in + freebsd2*) + shlibpath_overrides_runpath=yes + ;; + freebsd3.01* | freebsdelf3.01*) + shlibpath_overrides_runpath=yes + hardcode_into_libs=yes + ;; + *) # from 3.2 on + shlibpath_overrides_runpath=no + hardcode_into_libs=yes + ;; + esac + ;; + +gnu*) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + hardcode_into_libs=yes + ;; + +hpux9* | hpux10* | hpux11*) + # Give a soname corresponding to the major version so that dld.sl refuses to + # link against other versions. + version_type=sunos + need_lib_prefix=no + need_version=no + case "$host_cpu" in + ia64*) + shrext='.so' + hardcode_into_libs=yes + dynamic_linker="$host_os dld.so" + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + if test "X$HPUX_IA64_MODE" = X32; then + sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib" + else + sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64" + fi + sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec + ;; + hppa*64*) + shrext='.sl' + hardcode_into_libs=yes + dynamic_linker="$host_os dld.sl" + shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH + shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64" + sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec + ;; + *) + shrext='.sl' + dynamic_linker="$host_os dld.sl" + shlibpath_var=SHLIB_PATH + shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + ;; + esac + # HP-UX runs *really* slowly unless shared libraries are mode 555. + postinstall_cmds='chmod 555 $lib' + ;; + +irix5* | irix6* | nonstopux*) + case $host_os in + nonstopux*) version_type=nonstopux ;; + *) + if test "$lt_cv_prog_gnu_ld" = yes; then + version_type=linux + else + version_type=irix + fi ;; + esac + need_lib_prefix=no + need_version=no + soname_spec='${libname}${release}${shared_ext}$major' + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}' + case $host_os in + irix5* | nonstopux*) + libsuff= shlibsuff= + ;; + *) + case $LD in # libtool.m4 will add one of these switches to LD + *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ") + libsuff= shlibsuff= libmagic=32-bit;; + *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ") + libsuff=32 shlibsuff=N32 libmagic=N32;; + *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ") + libsuff=64 shlibsuff=64 libmagic=64-bit;; + *) libsuff= shlibsuff= libmagic=never-match;; + esac + ;; + esac + shlibpath_var=LD_LIBRARY${shlibsuff}_PATH + shlibpath_overrides_runpath=no + sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}" + sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}" + hardcode_into_libs=yes + ;; + +# No shared lib support for Linux oldld, aout, or coff. +linux*oldld* | linux*aout* | linux*coff*) + dynamic_linker=no + ;; + +# This must be Linux ELF. +linux*) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=no + # This implies no fast_install, which is unacceptable. + # Some rework will be needed to allow for fast_install + # before this can be enabled. + hardcode_into_libs=yes + + # Append ld.so.conf contents to the search path + if test -f /etc/ld.so.conf; then + ld_extra=`$SED -e 's/:,\t/ /g;s/=^=*$//;s/=^= * / /g' /etc/ld.so.conf` + sys_lib_dlsearch_path_spec="/lib /usr/lib $ld_extra" + fi + + # We used to test for /lib/ld.so.1 and disable shared libraries on + # powerpc, because MkLinux only supported shared libraries with the + # GNU dynamic linker. Since this was broken with cross compilers, + # most powerpc-linux boxes support dynamic linking these days and + # people can always --disable-shared, the test was removed, and we + # assume the GNU/Linux dynamic linker is in use. + dynamic_linker='GNU/Linux ld.so' + ;; + +knetbsd*-gnu) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=no + hardcode_into_libs=yes + dynamic_linker='GNU ld.so' + ;; + +netbsd*) + version_type=sunos + need_lib_prefix=no + need_version=no + if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' + finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' + dynamic_linker='NetBSD (a.out) ld.so' + else + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + dynamic_linker='NetBSD ld.elf_so' + fi + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + hardcode_into_libs=yes + ;; + +newsos6) + version_type=linux + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + ;; + +nto-qnx*) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + ;; + +openbsd*) + version_type=sunos + need_lib_prefix=no + need_version=yes + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' + finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' + shlibpath_var=LD_LIBRARY_PATH + if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then + case $host_os in + openbsd2.[89] | openbsd2.[89].*) + shlibpath_overrides_runpath=no + ;; + *) + shlibpath_overrides_runpath=yes + ;; + esac + else + shlibpath_overrides_runpath=yes + fi + ;; + +os2*) + libname_spec='$name' + shrext=".dll" + need_lib_prefix=no + library_names_spec='$libname${shared_ext} $libname.a' + dynamic_linker='OS/2 ld.exe' + shlibpath_var=LIBPATH + ;; + +osf3* | osf4* | osf5*) + version_type=osf + need_lib_prefix=no + need_version=no + soname_spec='${libname}${release}${shared_ext}$major' + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + shlibpath_var=LD_LIBRARY_PATH + sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib" + sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec" + ;; + +sco3.2v5*) + version_type=osf + soname_spec='${libname}${release}${shared_ext}$major' + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + shlibpath_var=LD_LIBRARY_PATH + ;; + +solaris*) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + hardcode_into_libs=yes + # ldd complains unless libraries are executable + postinstall_cmds='chmod +x $lib' + ;; + +sunos4*) + version_type=sunos + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' + finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + if test "$with_gnu_ld" = yes; then + need_lib_prefix=no + fi + need_version=yes + ;; + +sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) + version_type=linux + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + case $host_vendor in + sni) + shlibpath_overrides_runpath=no + need_lib_prefix=no + export_dynamic_flag_spec='${wl}-Blargedynsym' + runpath_var=LD_RUN_PATH + ;; + siemens) + need_lib_prefix=no + ;; + motorola) + need_lib_prefix=no + need_version=no + shlibpath_overrides_runpath=no + sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib' + ;; + esac + ;; + +sysv4*MP*) + if test -d /usr/nec ;then + version_type=linux + library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}' + soname_spec='$libname${shared_ext}.$major' + shlibpath_var=LD_LIBRARY_PATH + fi + ;; + +uts4*) + version_type=linux + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + ;; + +*) + dynamic_linker=no + ;; +esac +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $dynamic_linker" >&5 +$as_echo "$dynamic_linker" >&6; } +test "$dynamic_linker" = no && can_build_shared=no + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to hardcode library paths into programs" >&5 +$as_echo_n "checking how to hardcode library paths into programs... " >&6; } +hardcode_action_F77= +if test -n "$hardcode_libdir_flag_spec_F77" || \ + test -n "$runpath_var F77" || \ + test "X$hardcode_automatic_F77"="Xyes" ; then + + # We can hardcode non-existant directories. + if test "$hardcode_direct_F77" != no && + # If the only mechanism to avoid hardcoding is shlibpath_var, we + # have to relink, otherwise we might link with an installed library + # when we should be linking with a yet-to-be-installed one + ## test "$_LT_AC_TAGVAR(hardcode_shlibpath_var, F77)" != no && + test "$hardcode_minus_L_F77" != no; then + # Linking always hardcodes the temporary library directory. + hardcode_action_F77=relink + else + # We can link without hardcoding, and we can hardcode nonexisting dirs. + hardcode_action_F77=immediate + fi +else + # We cannot hardcode anything, or else we can only hardcode existing + # directories. + hardcode_action_F77=unsupported +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $hardcode_action_F77" >&5 +$as_echo "$hardcode_action_F77" >&6; } + +if test "$hardcode_action_F77" = relink; then + # Fast installation is not supported + enable_fast_install=no +elif test "$shlibpath_overrides_runpath" = yes || + test "$enable_shared" = no; then + # Fast installation is not necessary + enable_fast_install=needless +fi + +striplib= +old_striplib= +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether stripping libraries is possible" >&5 +$as_echo_n "checking whether stripping libraries is possible... " >&6; } +if test -n "$STRIP" && $STRIP -V 2>&1 | grep "GNU strip" >/dev/null; then + test -z "$old_striplib" && old_striplib="$STRIP --strip-debug" + test -z "$striplib" && striplib="$STRIP --strip-unneeded" + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } +else +# FIXME - insert some real tests, host_os isn't really good enough + case $host_os in + darwin*) + if test -n "$STRIP" ; then + striplib="$STRIP -x" + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + ;; + *) + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + ;; + esac +fi + + + +# The else clause should only fire when bootstrapping the +# libtool distribution, otherwise you forgot to ship ltmain.sh +# with your package, and you will get complaints that there are +# no rules to generate ltmain.sh. +if test -f "$ltmain"; then + # See if we are running on zsh, and set the options which allow our commands through + # without removal of \ escapes. + if test -n "${ZSH_VERSION+set}" ; then + setopt NO_GLOB_SUBST + fi + # Now quote all the things that may contain metacharacters while being + # careful not to overquote the AC_SUBSTed values. We take copies of the + # variables and quote the copies for generation of the libtool script. + for var in echo old_CC old_CFLAGS AR AR_FLAGS EGREP RANLIB LN_S LTCC NM \ + SED SHELL STRIP \ + libname_spec library_names_spec soname_spec extract_expsyms_cmds \ + old_striplib striplib file_magic_cmd finish_cmds finish_eval \ + deplibs_check_method reload_flag reload_cmds need_locks \ + lt_cv_sys_global_symbol_pipe lt_cv_sys_global_symbol_to_cdecl \ + lt_cv_sys_global_symbol_to_c_name_address \ + sys_lib_search_path_spec sys_lib_dlsearch_path_spec \ + old_postinstall_cmds old_postuninstall_cmds \ + compiler_F77 \ + CC_F77 \ + LD_F77 \ + lt_prog_compiler_wl_F77 \ + lt_prog_compiler_pic_F77 \ + lt_prog_compiler_static_F77 \ + lt_prog_compiler_no_builtin_flag_F77 \ + export_dynamic_flag_spec_F77 \ + thread_safe_flag_spec_F77 \ + whole_archive_flag_spec_F77 \ + enable_shared_with_static_runtimes_F77 \ + old_archive_cmds_F77 \ + old_archive_from_new_cmds_F77 \ + predep_objects_F77 \ + postdep_objects_F77 \ + predeps_F77 \ + postdeps_F77 \ + compiler_lib_search_path_F77 \ + archive_cmds_F77 \ + archive_expsym_cmds_F77 \ + postinstall_cmds_F77 \ + postuninstall_cmds_F77 \ + old_archive_from_expsyms_cmds_F77 \ + allow_undefined_flag_F77 \ + no_undefined_flag_F77 \ + export_symbols_cmds_F77 \ + hardcode_libdir_flag_spec_F77 \ + hardcode_libdir_flag_spec_ld_F77 \ + hardcode_libdir_separator_F77 \ + hardcode_automatic_F77 \ + module_cmds_F77 \ + module_expsym_cmds_F77 \ + lt_cv_prog_compiler_c_o_F77 \ + exclude_expsyms_F77 \ + include_expsyms_F77; do + + case $var in + old_archive_cmds_F77 | \ + old_archive_from_new_cmds_F77 | \ + archive_cmds_F77 | \ + archive_expsym_cmds_F77 | \ + module_cmds_F77 | \ + module_expsym_cmds_F77 | \ + old_archive_from_expsyms_cmds_F77 | \ + export_symbols_cmds_F77 | \ + extract_expsyms_cmds | reload_cmds | finish_cmds | \ + postinstall_cmds | postuninstall_cmds | \ + old_postinstall_cmds | old_postuninstall_cmds | \ + sys_lib_search_path_spec | sys_lib_dlsearch_path_spec) + # Double-quote double-evaled strings. + eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$double_quote_subst\" -e \"\$sed_quote_subst\" -e \"\$delay_variable_subst\"\`\\\"" + ;; + *) + eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$sed_quote_subst\"\`\\\"" + ;; + esac + done + + case $lt_echo in + *'\$0 --fallback-echo"') + lt_echo=`$echo "X$lt_echo" | $Xsed -e 's/\\\\\\\$0 --fallback-echo"$/$0 --fallback-echo"/'` + ;; + esac + +cfgfile="$ofile" + + cat <<__EOF__ >> "$cfgfile" +# ### BEGIN LIBTOOL TAG CONFIG: $tagname + +# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`: + +# Shell to use when invoking shell scripts. +SHELL=$lt_SHELL + +# Whether or not to build shared libraries. +build_libtool_libs=$enable_shared + +# Whether or not to build static libraries. +build_old_libs=$enable_static + +# Whether or not to add -lc for building shared libraries. +build_libtool_need_lc=$archive_cmds_need_lc_F77 + +# Whether or not to disallow shared libs when runtime libs are static +allow_libtool_libs_with_static_runtimes=$enable_shared_with_static_runtimes_F77 + +# Whether or not to optimize for fast installation. +fast_install=$enable_fast_install + +# The host system. +host_alias=$host_alias +host=$host + +# An echo program that does not interpret backslashes. +echo=$lt_echo + +# The archiver. +AR=$lt_AR +AR_FLAGS=$lt_AR_FLAGS + +# A C compiler. +LTCC=$lt_LTCC + +# A language-specific compiler. +CC=$lt_compiler_F77 + +# Is the compiler the GNU C compiler? +with_gcc=$GCC_F77 + +# An ERE matcher. +EGREP=$lt_EGREP + +# The linker used to build libraries. +LD=$lt_LD_F77 + +# Whether we need hard or soft links. +LN_S=$lt_LN_S + +# A BSD-compatible nm program. +NM=$lt_NM + +# A symbol stripping program +STRIP=$lt_STRIP + +# Used to examine libraries when file_magic_cmd begins "file" +MAGIC_CMD=$MAGIC_CMD + +# Used on cygwin: DLL creation program. +DLLTOOL="$DLLTOOL" + +# Used on cygwin: object dumper. +OBJDUMP="$OBJDUMP" + +# Used on cygwin: assembler. +AS="$AS" + +# The name of the directory that contains temporary libtool files. +objdir=$objdir + +# How to create reloadable object files. +reload_flag=$lt_reload_flag +reload_cmds=$lt_reload_cmds + +# How to pass a linker flag through the compiler. +wl=$lt_lt_prog_compiler_wl_F77 + +# Object file suffix (normally "o"). +objext="$ac_objext" + +# Old archive suffix (normally "a"). +libext="$libext" + +# Shared library suffix (normally ".so"). +shrext='$shrext' + +# Executable file suffix (normally ""). +exeext="$exeext" + +# Additional compiler flags for building library objects. +pic_flag=$lt_lt_prog_compiler_pic_F77 +pic_mode=$pic_mode + +# What is the maximum length of a command? +max_cmd_len=$lt_cv_sys_max_cmd_len + +# Does compiler simultaneously support -c and -o options? +compiler_c_o=$lt_lt_cv_prog_compiler_c_o_F77 + +# Must we lock files when doing compilation ? +need_locks=$lt_need_locks + +# Do we need the lib prefix for modules? +need_lib_prefix=$need_lib_prefix + +# Do we need a version for libraries? +need_version=$need_version + +# Whether dlopen is supported. +dlopen_support=$enable_dlopen + +# Whether dlopen of programs is supported. +dlopen_self=$enable_dlopen_self + +# Whether dlopen of statically linked programs is supported. +dlopen_self_static=$enable_dlopen_self_static + +# Compiler flag to prevent dynamic linking. +link_static_flag=$lt_lt_prog_compiler_static_F77 + +# Compiler flag to turn off builtin functions. +no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag_F77 + +# Compiler flag to allow reflexive dlopens. +export_dynamic_flag_spec=$lt_export_dynamic_flag_spec_F77 + +# Compiler flag to generate shared objects directly from archives. +whole_archive_flag_spec=$lt_whole_archive_flag_spec_F77 + +# Compiler flag to generate thread-safe objects. +thread_safe_flag_spec=$lt_thread_safe_flag_spec_F77 + +# Library versioning type. +version_type=$version_type + +# Format of library name prefix. +libname_spec=$lt_libname_spec + +# List of archive names. First name is the real one, the rest are links. +# The last name is the one that the linker finds with -lNAME. +library_names_spec=$lt_library_names_spec + +# The coded name of the library, if different from the real name. +soname_spec=$lt_soname_spec + +# Commands used to build and install an old-style archive. +RANLIB=$lt_RANLIB +old_archive_cmds=$lt_old_archive_cmds_F77 +old_postinstall_cmds=$lt_old_postinstall_cmds +old_postuninstall_cmds=$lt_old_postuninstall_cmds + +# Create an old-style archive from a shared archive. +old_archive_from_new_cmds=$lt_old_archive_from_new_cmds_F77 + +# Create a temporary old-style archive to link instead of a shared archive. +old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds_F77 + +# Commands used to build and install a shared archive. +archive_cmds=$lt_archive_cmds_F77 +archive_expsym_cmds=$lt_archive_expsym_cmds_F77 +postinstall_cmds=$lt_postinstall_cmds +postuninstall_cmds=$lt_postuninstall_cmds + +# Commands used to build a loadable module (assumed same as above if empty) +module_cmds=$lt_module_cmds_F77 +module_expsym_cmds=$lt_module_expsym_cmds_F77 + +# Commands to strip libraries. +old_striplib=$lt_old_striplib +striplib=$lt_striplib + +# Dependencies to place before the objects being linked to create a +# shared library. +predep_objects=$lt_predep_objects_F77 + +# Dependencies to place after the objects being linked to create a +# shared library. +postdep_objects=$lt_postdep_objects_F77 + +# Dependencies to place before the objects being linked to create a +# shared library. +predeps=$lt_predeps_F77 + +# Dependencies to place after the objects being linked to create a +# shared library. +postdeps=$lt_postdeps_F77 + +# The library search path used internally by the compiler when linking +# a shared library. +compiler_lib_search_path=$lt_compiler_lib_search_path_F77 + +# Method to check whether dependent libraries are shared objects. +deplibs_check_method=$lt_deplibs_check_method + +# Command to use when deplibs_check_method == file_magic. +file_magic_cmd=$lt_file_magic_cmd + +# Flag that allows shared libraries with undefined symbols to be built. +allow_undefined_flag=$lt_allow_undefined_flag_F77 + +# Flag that forces no undefined symbols. +no_undefined_flag=$lt_no_undefined_flag_F77 + +# Commands used to finish a libtool library installation in a directory. +finish_cmds=$lt_finish_cmds + +# Same as above, but a single script fragment to be evaled but not shown. +finish_eval=$lt_finish_eval + +# Take the output of nm and produce a listing of raw symbols and C names. +global_symbol_pipe=$lt_lt_cv_sys_global_symbol_pipe + +# Transform the output of nm in a proper C declaration +global_symbol_to_cdecl=$lt_lt_cv_sys_global_symbol_to_cdecl + +# Transform the output of nm in a C name address pair +global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address + +# This is the shared library runtime path variable. +runpath_var=$runpath_var + +# This is the shared library path variable. +shlibpath_var=$shlibpath_var + +# Is shlibpath searched before the hard-coded library search path? +shlibpath_overrides_runpath=$shlibpath_overrides_runpath + +# How to hardcode a shared library path into an executable. +hardcode_action=$hardcode_action_F77 + +# Whether we should hardcode library paths into libraries. +hardcode_into_libs=$hardcode_into_libs + +# Flag to hardcode \$libdir into a binary during linking. +# This must work even if \$libdir does not exist. +hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec_F77 + +# If ld is used when linking, flag to hardcode \$libdir into +# a binary during linking. This must work even if \$libdir does +# not exist. +hardcode_libdir_flag_spec_ld=$lt_hardcode_libdir_flag_spec_ld_F77 + +# Whether we need a single -rpath flag with a separated argument. +hardcode_libdir_separator=$lt_hardcode_libdir_separator_F77 + +# Set to yes if using DIR/libNAME${shared_ext} during linking hardcodes DIR into the +# resulting binary. +hardcode_direct=$hardcode_direct_F77 + +# Set to yes if using the -LDIR flag during linking hardcodes DIR into the +# resulting binary. +hardcode_minus_L=$hardcode_minus_L_F77 + +# Set to yes if using SHLIBPATH_VAR=DIR during linking hardcodes DIR into +# the resulting binary. +hardcode_shlibpath_var=$hardcode_shlibpath_var_F77 + +# Set to yes if building a shared library automatically hardcodes DIR into the library +# and all subsequent libraries and executables linked against it. +hardcode_automatic=$hardcode_automatic_F77 + +# Variables whose values should be saved in libtool wrapper scripts and +# restored at relink time. +variables_saved_for_relink="$variables_saved_for_relink" + +# Whether libtool must link a program against all its dependency libraries. +link_all_deplibs=$link_all_deplibs_F77 + +# Compile-time system search path for libraries +sys_lib_search_path_spec=$lt_sys_lib_search_path_spec + +# Run-time system search path for libraries +sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec + +# Fix the shell variable \$srcfile for the compiler. +fix_srcfile_path="$fix_srcfile_path_F77" + +# Set to yes if exported symbols are required. +always_export_symbols=$always_export_symbols_F77 + +# The commands to list exported symbols. +export_symbols_cmds=$lt_export_symbols_cmds_F77 + +# The commands to extract the exported symbol list from a shared archive. +extract_expsyms_cmds=$lt_extract_expsyms_cmds + +# Symbols that should not be listed in the preloaded symbols. +exclude_expsyms=$lt_exclude_expsyms_F77 + +# Symbols that must always be exported. +include_expsyms=$lt_include_expsyms_F77 + +# ### END LIBTOOL TAG CONFIG: $tagname + +__EOF__ + + +else + # If there is no Makefile yet, we rely on a make rule to execute + # `config.status --recheck' to rerun these tests and create the + # libtool script then. + ltmain_in=`echo $ltmain | sed -e 's/\.sh$/.in/'` + if test -f "$ltmain_in"; then + test -f Makefile && make "$ltmain" + fi +fi + + +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu + +CC="$lt_save_CC" + + else + tagname="" + fi + ;; + + GCJ) + if test -n "$GCJ" && test "X$GCJ" != "Xno"; then + + +# Source file extension for Java test sources. +ac_ext=java + +# Object file extension for compiled Java test sources. +objext=o +objext_GCJ=$objext + +# Code to be used in simple compile tests +lt_simple_compile_test_code="class foo {}\n" + +# Code to be used in simple link tests +lt_simple_link_test_code='public class conftest { public static void main(String argv) {}; }\n' + +# ltmain only uses $CC for tagged configurations so make sure $CC is set. + +# If no C compiler was specified, use CC. +LTCC=${LTCC-"$CC"} + +# Allow CC to be a program name with arguments. +compiler=$CC + + +# Allow CC to be a program name with arguments. +lt_save_CC="$CC" +CC=${GCJ-"gcj"} +compiler=$CC +compiler_GCJ=$CC + +# GCJ did not exist at the time GCC didn't implicitly link libc in. +archive_cmds_need_lc_GCJ=no + + +lt_prog_compiler_no_builtin_flag_GCJ= + +if test "$GCC" = yes; then + lt_prog_compiler_no_builtin_flag_GCJ=' -fno-builtin' + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -fno-rtti -fno-exceptions" >&5 +$as_echo_n "checking if $compiler supports -fno-rtti -fno-exceptions... " >&6; } +if ${lt_cv_prog_compiler_rtti_exceptions+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_prog_compiler_rtti_exceptions=no + ac_outfile=conftest.$ac_objext + printf "$lt_simple_compile_test_code" > conftest.$ac_ext + lt_compiler_flag="-fno-rtti -fno-exceptions" + # Insert the option either (1) after the last *FLAGS variable, or + # (2) before a word containing "conftest.", or (3) at the end. + # Note that $ac_compile itself does not contain backslashes and begins + # with a dollar sign (not a hyphen), so the echo should work correctly. + # The option is referenced via a variable to avoid confusing sed. + lt_compile=`echo "$ac_compile" | $SED \ + -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \ + -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ + -e 's:$: $lt_compiler_flag:'` + (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&5) + (eval "$lt_compile" 2>conftest.err) + ac_status=$? + cat conftest.err >&5 + echo "$as_me:__oline__: \$? = $ac_status" >&5 + if (exit $ac_status) && test -s "$ac_outfile"; then + # The compiler can only warn and ignore the option if not recognized + # So say no if there are warnings + if test ! -s conftest.err; then + lt_cv_prog_compiler_rtti_exceptions=yes + fi + fi + $rm conftest* + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_rtti_exceptions" >&5 +$as_echo "$lt_cv_prog_compiler_rtti_exceptions" >&6; } + +if test x"$lt_cv_prog_compiler_rtti_exceptions" = xyes; then + lt_prog_compiler_no_builtin_flag_GCJ="$lt_prog_compiler_no_builtin_flag_GCJ -fno-rtti -fno-exceptions" +else + : +fi + +fi + +lt_prog_compiler_wl_GCJ= +lt_prog_compiler_pic_GCJ= +lt_prog_compiler_static_GCJ= + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&5 +$as_echo_n "checking for $compiler option to produce PIC... " >&6; } + + if test "$GCC" = yes; then + lt_prog_compiler_wl_GCJ='-Wl,' + lt_prog_compiler_static_GCJ='-static' + + case $host_os in + aix*) + # All AIX code is PIC. + if test "$host_cpu" = ia64; then + # AIX 5 now supports IA64 processor + lt_prog_compiler_static_GCJ='-Bstatic' + fi + ;; + + amigaos*) + # FIXME: we need at least 68020 code to build shared libraries, but + # adding the `-m68020' flag to GCC prevents building anything better, + # like `-m68040'. + lt_prog_compiler_pic_GCJ='-m68020 -resident32 -malways-restore-a4' + ;; + + beos* | cygwin* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) + # PIC is the default for these OSes. + ;; + + mingw* | pw32* | os2*) + # This hack is so that the source file can tell whether it is being + # built for inclusion in a dll (and should export symbols for example). + lt_prog_compiler_pic_GCJ='-DDLL_EXPORT' + ;; + + darwin* | rhapsody*) + # PIC is the default on this platform + # Common symbols not allowed in MH_DYLIB files + lt_prog_compiler_pic_GCJ='-fno-common' + ;; + + msdosdjgpp*) + # Just because we use GCC doesn't mean we suddenly get shared libraries + # on systems that don't support them. + lt_prog_compiler_can_build_shared_GCJ=no + enable_shared=no + ;; + + sysv4*MP*) + if test -d /usr/nec; then + lt_prog_compiler_pic_GCJ=-Kconform_pic + fi + ;; + + hpux*) + # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but + # not for PA HP-UX. + case "$host_cpu" in + hppa*64*|ia64*) + # +Z the default + ;; + *) + lt_prog_compiler_pic_GCJ='-fPIC' + ;; + esac + ;; + + *) + lt_prog_compiler_pic_GCJ='-fPIC' + ;; + esac + else + # PORTME Check for flag to pass linker flags through the system compiler. + case $host_os in + aix*) + lt_prog_compiler_wl_GCJ='-Wl,' + if test "$host_cpu" = ia64; then + # AIX 5 now supports IA64 processor + lt_prog_compiler_static_GCJ='-Bstatic' + else + lt_prog_compiler_static_GCJ='-bnso -bI:/lib/syscalls.exp' + fi + ;; + + mingw* | pw32* | os2*) + # This hack is so that the source file can tell whether it is being + # built for inclusion in a dll (and should export symbols for example). + lt_prog_compiler_pic_GCJ='-DDLL_EXPORT' + ;; + + hpux9* | hpux10* | hpux11*) + lt_prog_compiler_wl_GCJ='-Wl,' + # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but + # not for PA HP-UX. + case "$host_cpu" in + hppa*64*|ia64*) + # +Z the default + ;; + *) + lt_prog_compiler_pic_GCJ='+Z' + ;; + esac + # Is there a better lt_prog_compiler_static that works with the bundled CC? + lt_prog_compiler_static_GCJ='${wl}-a ${wl}archive' + ;; + + irix5* | irix6* | nonstopux*) + lt_prog_compiler_wl_GCJ='-Wl,' + # PIC (with -KPIC) is the default. + lt_prog_compiler_static_GCJ='-non_shared' + ;; + + newsos6) + lt_prog_compiler_pic_GCJ='-KPIC' + lt_prog_compiler_static_GCJ='-Bstatic' + ;; + + linux*) + case $CC in + icc* | ecc*) + lt_prog_compiler_wl_GCJ='-Wl,' + lt_prog_compiler_pic_GCJ='-KPIC' + lt_prog_compiler_static_GCJ='-static' + ;; + ccc*) + lt_prog_compiler_wl_GCJ='-Wl,' + # All Alpha code is PIC. + lt_prog_compiler_static_GCJ='-non_shared' + ;; + esac + ;; + + osf3* | osf4* | osf5*) + lt_prog_compiler_wl_GCJ='-Wl,' + # All OSF/1 code is PIC. + lt_prog_compiler_static_GCJ='-non_shared' + ;; + + sco3.2v5*) + lt_prog_compiler_pic_GCJ='-Kpic' + lt_prog_compiler_static_GCJ='-dn' + ;; + + solaris*) + lt_prog_compiler_wl_GCJ='-Wl,' + lt_prog_compiler_pic_GCJ='-KPIC' + lt_prog_compiler_static_GCJ='-Bstatic' + ;; + + sunos4*) + lt_prog_compiler_wl_GCJ='-Qoption ld ' + lt_prog_compiler_pic_GCJ='-PIC' + lt_prog_compiler_static_GCJ='-Bstatic' + ;; + + sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) + lt_prog_compiler_wl_GCJ='-Wl,' + lt_prog_compiler_pic_GCJ='-KPIC' + lt_prog_compiler_static_GCJ='-Bstatic' + ;; + + sysv4*MP*) + if test -d /usr/nec ;then + lt_prog_compiler_pic_GCJ='-Kconform_pic' + lt_prog_compiler_static_GCJ='-Bstatic' + fi + ;; + + uts4*) + lt_prog_compiler_pic_GCJ='-pic' + lt_prog_compiler_static_GCJ='-Bstatic' + ;; + + *) + lt_prog_compiler_can_build_shared_GCJ=no + ;; + esac + fi + +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_prog_compiler_pic_GCJ" >&5 +$as_echo "$lt_prog_compiler_pic_GCJ" >&6; } + +# +# Check to make sure the PIC flag actually works. +# +if test -n "$lt_prog_compiler_pic_GCJ"; then + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler PIC flag $lt_prog_compiler_pic_GCJ works" >&5 +$as_echo_n "checking if $compiler PIC flag $lt_prog_compiler_pic_GCJ works... " >&6; } +if ${lt_prog_compiler_pic_works_GCJ+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_prog_compiler_pic_works_GCJ=no + ac_outfile=conftest.$ac_objext + printf "$lt_simple_compile_test_code" > conftest.$ac_ext + lt_compiler_flag="$lt_prog_compiler_pic_GCJ" + # Insert the option either (1) after the last *FLAGS variable, or + # (2) before a word containing "conftest.", or (3) at the end. + # Note that $ac_compile itself does not contain backslashes and begins + # with a dollar sign (not a hyphen), so the echo should work correctly. + # The option is referenced via a variable to avoid confusing sed. + lt_compile=`echo "$ac_compile" | $SED \ + -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \ + -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ + -e 's:$: $lt_compiler_flag:'` + (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&5) + (eval "$lt_compile" 2>conftest.err) + ac_status=$? + cat conftest.err >&5 + echo "$as_me:__oline__: \$? = $ac_status" >&5 + if (exit $ac_status) && test -s "$ac_outfile"; then + # The compiler can only warn and ignore the option if not recognized + # So say no if there are warnings + if test ! -s conftest.err; then + lt_prog_compiler_pic_works_GCJ=yes + fi + fi + $rm conftest* + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_prog_compiler_pic_works_GCJ" >&5 +$as_echo "$lt_prog_compiler_pic_works_GCJ" >&6; } + +if test x"$lt_prog_compiler_pic_works_GCJ" = xyes; then + case $lt_prog_compiler_pic_GCJ in + "" | " "*) ;; + *) lt_prog_compiler_pic_GCJ=" $lt_prog_compiler_pic_GCJ" ;; + esac +else + lt_prog_compiler_pic_GCJ= + lt_prog_compiler_can_build_shared_GCJ=no +fi + +fi +case "$host_os" in + # For platforms which do not support PIC, -DPIC is meaningless: + *djgpp*) + lt_prog_compiler_pic_GCJ= + ;; + *) + lt_prog_compiler_pic_GCJ="$lt_prog_compiler_pic_GCJ" + ;; +esac + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5 +$as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; } +if ${lt_cv_prog_compiler_c_o_GCJ+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_prog_compiler_c_o_GCJ=no + $rm -r conftest 2>/dev/null + mkdir conftest + cd conftest + mkdir out + printf "$lt_simple_compile_test_code" > conftest.$ac_ext + + lt_compiler_flag="-o out/conftest2.$ac_objext" + # Insert the option either (1) after the last *FLAGS variable, or + # (2) before a word containing "conftest.", or (3) at the end. + # Note that $ac_compile itself does not contain backslashes and begins + # with a dollar sign (not a hyphen), so the echo should work correctly. + lt_compile=`echo "$ac_compile" | $SED \ + -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \ + -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ + -e 's:$: $lt_compiler_flag:'` + (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&5) + (eval "$lt_compile" 2>out/conftest.err) + ac_status=$? + cat out/conftest.err >&5 + echo "$as_me:__oline__: \$? = $ac_status" >&5 + if (exit $ac_status) && test -s out/conftest2.$ac_objext + then + # The compiler can only warn and ignore the option if not recognized + # So say no if there are warnings + if test ! -s out/conftest.err; then + lt_cv_prog_compiler_c_o_GCJ=yes + fi + fi + chmod u+w . + $rm conftest* + # SGI C++ compiler will create directory out/ii_files/ for + # template instantiation + test -d out/ii_files && $rm out/ii_files/* && rmdir out/ii_files + $rm out/* && rmdir out + cd .. + rmdir conftest + $rm conftest* + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o_GCJ" >&5 +$as_echo "$lt_cv_prog_compiler_c_o_GCJ" >&6; } + + +hard_links="nottested" +if test "$lt_cv_prog_compiler_c_o_GCJ" = no && test "$need_locks" != no; then + # do not overwrite the value of need_locks provided by the user + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if we can lock with hard links" >&5 +$as_echo_n "checking if we can lock with hard links... " >&6; } + hard_links=yes + $rm conftest* + ln conftest.a conftest.b 2>/dev/null && hard_links=no + touch conftest.a + ln conftest.a conftest.b 2>&5 || hard_links=no + ln conftest.a conftest.b 2>/dev/null && hard_links=no + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $hard_links" >&5 +$as_echo "$hard_links" >&6; } + if test "$hard_links" = no; then + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&5 +$as_echo "$as_me: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&2;} + need_locks=warn + fi +else + need_locks=no +fi + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&5 +$as_echo_n "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; } + + runpath_var= + allow_undefined_flag_GCJ= + enable_shared_with_static_runtimes_GCJ=no + archive_cmds_GCJ= + archive_expsym_cmds_GCJ= + old_archive_From_new_cmds_GCJ= + old_archive_from_expsyms_cmds_GCJ= + export_dynamic_flag_spec_GCJ= + whole_archive_flag_spec_GCJ= + thread_safe_flag_spec_GCJ= + hardcode_libdir_flag_spec_GCJ= + hardcode_libdir_flag_spec_ld_GCJ= + hardcode_libdir_separator_GCJ= + hardcode_direct_GCJ=no + hardcode_minus_L_GCJ=no + hardcode_shlibpath_var_GCJ=unsupported + link_all_deplibs_GCJ=unknown + hardcode_automatic_GCJ=no + module_cmds_GCJ= + module_expsym_cmds_GCJ= + always_export_symbols_GCJ=no + export_symbols_cmds_GCJ='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' + # include_expsyms should be a list of space-separated symbols to be *always* + # included in the symbol list + include_expsyms_GCJ= + # exclude_expsyms can be an extended regexp of symbols to exclude + # it will be wrapped by ` (' and `)$', so one must not match beginning or + # end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc', + # as well as any symbol that contains `d'. + exclude_expsyms_GCJ="_GLOBAL_OFFSET_TABLE_" + # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out + # platforms (ab)use it in PIC code, but their linkers get confused if + # the symbol is explicitly referenced. Since portable code cannot + # rely on this symbol name, it's probably fine to never include it in + # preloaded symbol tables. + extract_expsyms_cmds= + + case $host_os in + cygwin* | mingw* | pw32*) + # FIXME: the MSVC++ port hasn't been tested in a loooong time + # When not using gcc, we currently assume that we are using + # Microsoft Visual C++. + if test "$GCC" != yes; then + with_gnu_ld=no + fi + ;; + openbsd*) + with_gnu_ld=no + ;; + esac + + ld_shlibs_GCJ=yes + if test "$with_gnu_ld" = yes; then + # If archive_cmds runs LD, not CC, wlarc should be empty + wlarc='${wl}' + + # See if GNU ld supports shared libraries. + case $host_os in + aix3* | aix4* | aix5*) + # On AIX/PPC, the GNU linker is very broken + if test "$host_cpu" != ia64; then + ld_shlibs_GCJ=no + cat <&2 + +*** Warning: the GNU linker, at least up to release 2.9.1, is reported +*** to be unable to reliably create shared libraries on AIX. +*** Therefore, libtool is disabling shared libraries support. If you +*** really care for shared libraries, you may want to modify your PATH +*** so that a non-GNU linker is found, and then restart. + +EOF + fi + ;; + + amigaos*) + archive_cmds_GCJ='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' + hardcode_libdir_flag_spec_GCJ='-L$libdir' + hardcode_minus_L_GCJ=yes + + # Samuel A. Falvo II reports + # that the semantics of dynamic libraries on AmigaOS, at least up + # to version 4, is to share data among multiple programs linked + # with the same dynamic library. Since this doesn't match the + # behavior of shared libraries on other platforms, we can't use + # them. + ld_shlibs_GCJ=no + ;; + + beos*) + if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then + allow_undefined_flag_GCJ=unsupported + # Joseph Beckenbach says some releases of gcc + # support --undefined. This deserves some investigation. FIXME + archive_cmds_GCJ='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + else + ld_shlibs_GCJ=no + fi + ;; + + cygwin* | mingw* | pw32*) + # _LT_AC_TAGVAR(hardcode_libdir_flag_spec, GCJ) is actually meaningless, + # as there is no search path for DLLs. + hardcode_libdir_flag_spec_GCJ='-L$libdir' + allow_undefined_flag_GCJ=unsupported + always_export_symbols_GCJ=no + enable_shared_with_static_runtimes_GCJ=yes + export_symbols_cmds_GCJ='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[BCDGS] /s/.* \([^ ]*\)/\1 DATA/'\'' | $SED -e '\''/^[AITW] /s/.* //'\'' | sort | uniq > $export_symbols' + + if $LD --help 2>&1 | grep 'auto-import' > /dev/null; then + archive_cmds_GCJ='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--image-base=0x10000000 ${wl}--out-implib,$lib' + # If the export-symbols file already is a .def file (1st line + # is EXPORTS), use it as is; otherwise, prepend... + archive_expsym_cmds_GCJ='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then + cp $export_symbols $output_objdir/$soname.def; + else + echo EXPORTS > $output_objdir/$soname.def; + cat $export_symbols >> $output_objdir/$soname.def; + fi~ + $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--image-base=0x10000000 ${wl}--out-implib,$lib' + else + ld_shlibs=no + fi + ;; + + netbsd* | knetbsd*-gnu) + if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then + archive_cmds_GCJ='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib' + wlarc= + else + archive_cmds_GCJ='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + archive_expsym_cmds_GCJ='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + fi + ;; + + solaris* | sysv5*) + if $LD -v 2>&1 | grep 'BFD 2\.8' > /dev/null; then + ld_shlibs_GCJ=no + cat <&2 + +*** Warning: The releases 2.8.* of the GNU linker cannot reliably +*** create shared libraries on Solaris systems. Therefore, libtool +*** is disabling shared libraries support. We urge you to upgrade GNU +*** binutils to release 2.9.1 or newer. Another option is to modify +*** your PATH or compiler configuration so that the native linker is +*** used, and then restart. + +EOF + elif $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then + archive_cmds_GCJ='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + archive_expsym_cmds_GCJ='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + else + ld_shlibs_GCJ=no + fi + ;; + + sunos4*) + archive_cmds_GCJ='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags' + wlarc= + hardcode_direct_GCJ=yes + hardcode_shlibpath_var_GCJ=no + ;; + + linux*) + if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then + tmp_archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + archive_cmds_GCJ="$tmp_archive_cmds" + supports_anon_versioning=no + case `$LD -v 2>/dev/null` in + *\ 01.* | *\ 2.[0-9].* | *\ 2.10.*) ;; # catch versions < 2.11 + *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ... + *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ... + *\ 2.11.*) ;; # other 2.11 versions + *) supports_anon_versioning=yes ;; + esac + if test $supports_anon_versioning = yes; then + archive_expsym_cmds_GCJ='$echo "{ global:" > $output_objdir/$libname.ver~ +cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ +$echo "local: *; };" >> $output_objdir/$libname.ver~ + $CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib' + else + archive_expsym_cmds_GCJ="$tmp_archive_cmds" + fi + else + ld_shlibs_GCJ=no + fi + ;; + + *) + if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then + archive_cmds_GCJ='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + archive_expsym_cmds_GCJ='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + else + ld_shlibs_GCJ=no + fi + ;; + esac + + if test "$ld_shlibs_GCJ" = yes; then + runpath_var=LD_RUN_PATH + hardcode_libdir_flag_spec_GCJ='${wl}--rpath ${wl}$libdir' + export_dynamic_flag_spec_GCJ='${wl}--export-dynamic' + # ancient GNU ld didn't support --whole-archive et. al. + if $LD --help 2>&1 | grep 'no-whole-archive' > /dev/null; then + whole_archive_flag_spec_GCJ="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' + else + whole_archive_flag_spec_GCJ= + fi + fi + else + # PORTME fill in a description of your system's linker (not GNU ld) + case $host_os in + aix3*) + allow_undefined_flag_GCJ=unsupported + always_export_symbols_GCJ=yes + archive_expsym_cmds_GCJ='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname' + # Note: this linker hardcodes the directories in LIBPATH if there + # are no directories specified by -L. + hardcode_minus_L_GCJ=yes + if test "$GCC" = yes && test -z "$link_static_flag"; then + # Neither direct hardcoding nor static linking is supported with a + # broken collect2. + hardcode_direct_GCJ=unsupported + fi + ;; + + aix4* | aix5*) + if test "$host_cpu" = ia64; then + # On IA64, the linker does run time linking by default, so we don't + # have to do anything special. + aix_use_runtimelinking=no + exp_sym_flag='-Bexport' + no_entry_flag="" + else + # If we're using GNU nm, then we don't want the "-C" option. + # -C means demangle to AIX nm, but means don't demangle with GNU nm + if $NM -V 2>&1 | grep 'GNU' > /dev/null; then + export_symbols_cmds_GCJ='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$2 == "T") || (\$2 == "D") || (\$2 == "B")) && (substr(\$3,1,1) != ".")) { print \$3 } }'\'' | sort -u > $export_symbols' + else + export_symbols_cmds_GCJ='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$2 == "T") || (\$2 == "D") || (\$2 == "B")) && (substr(\$3,1,1) != ".")) { print \$3 } }'\'' | sort -u > $export_symbols' + fi + aix_use_runtimelinking=no + + # Test if we are trying to use run time linking or normal + # AIX style linking. If -brtl is somewhere in LDFLAGS, we + # need to do runtime linking. + case $host_os in aix4.[23]|aix4.[23].*|aix5*) + for ld_flag in $LDFLAGS; do + if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then + aix_use_runtimelinking=yes + break + fi + done + esac + + exp_sym_flag='-bexport' + no_entry_flag='-bnoentry' + fi + + # When large executables or shared objects are built, AIX ld can + # have problems creating the table of contents. If linking a library + # or program results in "error TOC overflow" add -mminimal-toc to + # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not + # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. + + archive_cmds_GCJ='' + hardcode_direct_GCJ=yes + hardcode_libdir_separator_GCJ=':' + link_all_deplibs_GCJ=yes + + if test "$GCC" = yes; then + case $host_os in aix4.012|aix4.012.*) + # We only want to do this on AIX 4.2 and lower, the check + # below for broken collect2 doesn't work under 4.3+ + collect2name=`${CC} -print-prog-name=collect2` + if test -f "$collect2name" && \ + strings "$collect2name" | grep resolve_lib_name >/dev/null + then + # We have reworked collect2 + hardcode_direct_GCJ=yes + else + # We have old collect2 + hardcode_direct_GCJ=unsupported + # It fails to find uninstalled libraries when the uninstalled + # path is not listed in the libpath. Setting hardcode_minus_L + # to unsupported forces relinking + hardcode_minus_L_GCJ=yes + hardcode_libdir_flag_spec_GCJ='-L$libdir' + hardcode_libdir_separator_GCJ= + fi + esac + shared_flag='-shared' + else + # not using gcc + if test "$host_cpu" = ia64; then + # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release + # chokes on -Wl,-G. The following line is correct: + shared_flag='-G' + else + if test "$aix_use_runtimelinking" = yes; then + shared_flag='${wl}-G' + else + shared_flag='${wl}-bM:SRE' + fi + fi + fi + + # It seems that -bexpall does not export symbols beginning with + # underscore (_), so it is better to generate a list of symbols to export. + always_export_symbols_GCJ=yes + if test "$aix_use_runtimelinking" = yes; then + # Warning - without using the other runtime loading flags (-brtl), + # -berok will link without error, but may produce a broken library. + allow_undefined_flag_GCJ='-berok' + # Determine the default libpath from the value encoded in an empty executable. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + +aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; } +}'` +# Check for a 64-bit object if we didn't find anything. +if test -z "$aix_libpath"; then aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; } +}'`; fi +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi + + hardcode_libdir_flag_spec_GCJ='${wl}-blibpath:$libdir:'"$aix_libpath" + archive_expsym_cmds_GCJ="\$CC"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols $shared_flag" + else + if test "$host_cpu" = ia64; then + hardcode_libdir_flag_spec_GCJ='${wl}-R $libdir:/usr/lib:/lib' + allow_undefined_flag_GCJ="-z nodefs" + archive_expsym_cmds_GCJ="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols" + else + # Determine the default libpath from the value encoded in an empty executable. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + +aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; } +}'` +# Check for a 64-bit object if we didn't find anything. +if test -z "$aix_libpath"; then aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; } +}'`; fi +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi + + hardcode_libdir_flag_spec_GCJ='${wl}-blibpath:$libdir:'"$aix_libpath" + # Warning - without using the other run time loading flags, + # -berok will link without error, but may produce a broken library. + no_undefined_flag_GCJ=' ${wl}-bernotok' + allow_undefined_flag_GCJ=' ${wl}-berok' + # -bexpall does not export symbols beginning with underscore (_) + always_export_symbols_GCJ=yes + # Exported symbols can be pulled into shared objects from archives + whole_archive_flag_spec_GCJ=' ' + archive_cmds_need_lc_GCJ=yes + # This is similar to how AIX traditionally builds it's shared libraries. + archive_expsym_cmds_GCJ="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${wl}-bE:$export_symbols ${wl}-bnoentry${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname' + fi + fi + ;; + + amigaos*) + archive_cmds_GCJ='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' + hardcode_libdir_flag_spec_GCJ='-L$libdir' + hardcode_minus_L_GCJ=yes + # see comment about different semantics on the GNU ld section + ld_shlibs_GCJ=no + ;; + + bsdi4*) + export_dynamic_flag_spec_GCJ=-rdynamic + ;; + + cygwin* | mingw* | pw32*) + # When not using gcc, we currently assume that we are using + # Microsoft Visual C++. + # hardcode_libdir_flag_spec is actually meaningless, as there is + # no search path for DLLs. + hardcode_libdir_flag_spec_GCJ=' ' + allow_undefined_flag_GCJ=unsupported + # Tell ltmain to make .lib files, not .a files. + libext=lib + # Tell ltmain to make .dll files, not .so files. + shrext=".dll" + # FIXME: Setting linknames here is a bad hack. + archive_cmds_GCJ='$CC -o $lib $libobjs $compiler_flags `echo "$deplibs" | $SED -e '\''s/ -lc$//'\''` -link -dll~linknames=' + # The linker will automatically build a .lib file if we build a DLL. + old_archive_From_new_cmds_GCJ='true' + # FIXME: Should let the user specify the lib program. + old_archive_cmds_GCJ='lib /OUT:$oldlib$oldobjs$old_deplibs' + fix_srcfile_path='`cygpath -w "$srcfile"`' + enable_shared_with_static_runtimes_GCJ=yes + ;; + + darwin* | rhapsody*) + if test "$GXX" = yes ; then + archive_cmds_need_lc_GCJ=no + case "$host_os" in + rhapsody* | darwin1.[012]) + allow_undefined_flag_GCJ='-undefined suppress' + ;; + *) # Darwin 1.3 on + if test -z ${MACOSX_DEPLOYMENT_TARGET} ; then + allow_undefined_flag_GCJ='-flat_namespace -undefined suppress' + else + case ${MACOSX_DEPLOYMENT_TARGET} in + 10.[012]) + allow_undefined_flag_GCJ='-flat_namespace -undefined suppress' + ;; + 10.*) + allow_undefined_flag_GCJ='-undefined dynamic_lookup' + ;; + esac + fi + ;; + esac + lt_int_apple_cc_single_mod=no + output_verbose_link_cmd='echo' + if $CC -dumpspecs 2>&1 | grep 'single_module' >/dev/null ; then + lt_int_apple_cc_single_mod=yes + fi + if test "X$lt_int_apple_cc_single_mod" = Xyes ; then + archive_cmds_GCJ='$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring' + else + archive_cmds_GCJ='$CC -r ${wl}-bind_at_load -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $deplibs $compiler_flags -install_name $rpath/$soname $verstring' + fi + module_cmds_GCJ='$CC ${wl}-bind_at_load $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags' + # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's + if test "X$lt_int_apple_cc_single_mod" = Xyes ; then + archive_expsym_cmds_GCJ='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' + else + archive_expsym_cmds_GCJ='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -r ${wl}-bind_at_load -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' + fi + module_expsym_cmds_GCJ='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' + hardcode_direct_GCJ=no + hardcode_automatic_GCJ=yes + hardcode_shlibpath_var_GCJ=unsupported + whole_archive_flag_spec_GCJ='-all_load $convenience' + link_all_deplibs_GCJ=yes + else + ld_shlibs_GCJ=no + fi + ;; + + dgux*) + archive_cmds_GCJ='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + hardcode_libdir_flag_spec_GCJ='-L$libdir' + hardcode_shlibpath_var_GCJ=no + ;; + + freebsd1*) + ld_shlibs_GCJ=no + ;; + + # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor + # support. Future versions do this automatically, but an explicit c++rt0.o + # does not break anything, and helps significantly (at the cost of a little + # extra space). + freebsd2.2*) + archive_cmds_GCJ='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o' + hardcode_libdir_flag_spec_GCJ='-R$libdir' + hardcode_direct_GCJ=yes + hardcode_shlibpath_var_GCJ=no + ;; + + # Unfortunately, older versions of FreeBSD 2 do not have this feature. + freebsd2*) + archive_cmds_GCJ='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' + hardcode_direct_GCJ=yes + hardcode_minus_L_GCJ=yes + hardcode_shlibpath_var_GCJ=no + ;; + + # FreeBSD 3 and greater uses gcc -shared to do shared libraries. + freebsd* | kfreebsd*-gnu) + archive_cmds_GCJ='$CC -shared -o $lib $libobjs $deplibs $compiler_flags' + hardcode_libdir_flag_spec_GCJ='-R$libdir' + hardcode_direct_GCJ=yes + hardcode_shlibpath_var_GCJ=no + ;; + + hpux9*) + if test "$GCC" = yes; then + archive_cmds_GCJ='$rm $output_objdir/$soname~$CC -shared -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' + else + archive_cmds_GCJ='$rm $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' + fi + hardcode_libdir_flag_spec_GCJ='${wl}+b ${wl}$libdir' + hardcode_libdir_separator_GCJ=: + hardcode_direct_GCJ=yes + + # hardcode_minus_L: Not really in the search PATH, + # but as the default location of the library. + hardcode_minus_L_GCJ=yes + export_dynamic_flag_spec_GCJ='${wl}-E' + ;; + + hpux10* | hpux11*) + if test "$GCC" = yes -a "$with_gnu_ld" = no; then + case "$host_cpu" in + hppa*64*|ia64*) + archive_cmds_GCJ='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' + ;; + *) + archive_cmds_GCJ='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags' + ;; + esac + else + case "$host_cpu" in + hppa*64*|ia64*) + archive_cmds_GCJ='$LD -b +h $soname -o $lib $libobjs $deplibs $linker_flags' + ;; + *) + archive_cmds_GCJ='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' + ;; + esac + fi + if test "$with_gnu_ld" = no; then + case "$host_cpu" in + hppa*64*) + hardcode_libdir_flag_spec_GCJ='${wl}+b ${wl}$libdir' + hardcode_libdir_flag_spec_ld_GCJ='+b $libdir' + hardcode_libdir_separator_GCJ=: + hardcode_direct_GCJ=no + hardcode_shlibpath_var_GCJ=no + ;; + ia64*) + hardcode_libdir_flag_spec_GCJ='-L$libdir' + hardcode_direct_GCJ=no + hardcode_shlibpath_var_GCJ=no + + # hardcode_minus_L: Not really in the search PATH, + # but as the default location of the library. + hardcode_minus_L_GCJ=yes + ;; + *) + hardcode_libdir_flag_spec_GCJ='${wl}+b ${wl}$libdir' + hardcode_libdir_separator_GCJ=: + hardcode_direct_GCJ=yes + export_dynamic_flag_spec_GCJ='${wl}-E' + + # hardcode_minus_L: Not really in the search PATH, + # but as the default location of the library. + hardcode_minus_L_GCJ=yes + ;; + esac + fi + ;; + + irix5* | irix6* | nonstopux*) + if test "$GCC" = yes; then + archive_cmds_GCJ='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' + else + archive_cmds_GCJ='$LD -shared $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' + hardcode_libdir_flag_spec_ld_GCJ='-rpath $libdir' + fi + hardcode_libdir_flag_spec_GCJ='${wl}-rpath ${wl}$libdir' + hardcode_libdir_separator_GCJ=: + link_all_deplibs_GCJ=yes + ;; + + netbsd* | knetbsd*-gnu) + if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then + archive_cmds_GCJ='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out + else + archive_cmds_GCJ='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF + fi + hardcode_libdir_flag_spec_GCJ='-R$libdir' + hardcode_direct_GCJ=yes + hardcode_shlibpath_var_GCJ=no + ;; + + newsos6) + archive_cmds_GCJ='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + hardcode_direct_GCJ=yes + hardcode_libdir_flag_spec_GCJ='${wl}-rpath ${wl}$libdir' + hardcode_libdir_separator_GCJ=: + hardcode_shlibpath_var_GCJ=no + ;; + + openbsd*) + hardcode_direct_GCJ=yes + hardcode_shlibpath_var_GCJ=no + if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then + archive_cmds_GCJ='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' + hardcode_libdir_flag_spec_GCJ='${wl}-rpath,$libdir' + export_dynamic_flag_spec_GCJ='${wl}-E' + else + case $host_os in + openbsd[01].* | openbsd2.[0-7] | openbsd2.[0-7].*) + archive_cmds_GCJ='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' + hardcode_libdir_flag_spec_GCJ='-R$libdir' + ;; + *) + archive_cmds_GCJ='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' + hardcode_libdir_flag_spec_GCJ='${wl}-rpath,$libdir' + ;; + esac + fi + ;; + + os2*) + hardcode_libdir_flag_spec_GCJ='-L$libdir' + hardcode_minus_L_GCJ=yes + allow_undefined_flag_GCJ=unsupported + archive_cmds_GCJ='$echo "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$echo "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~$echo DATA >> $output_objdir/$libname.def~$echo " SINGLE NONSHARED" >> $output_objdir/$libname.def~$echo EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def' + old_archive_From_new_cmds_GCJ='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def' + ;; + + osf3*) + if test "$GCC" = yes; then + allow_undefined_flag_GCJ=' ${wl}-expect_unresolved ${wl}\*' + archive_cmds_GCJ='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' + else + allow_undefined_flag_GCJ=' -expect_unresolved \*' + archive_cmds_GCJ='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' + fi + hardcode_libdir_flag_spec_GCJ='${wl}-rpath ${wl}$libdir' + hardcode_libdir_separator_GCJ=: + ;; + + osf4* | osf5*) # as osf3* with the addition of -msym flag + if test "$GCC" = yes; then + allow_undefined_flag_GCJ=' ${wl}-expect_unresolved ${wl}\*' + archive_cmds_GCJ='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' + hardcode_libdir_flag_spec_GCJ='${wl}-rpath ${wl}$libdir' + else + allow_undefined_flag_GCJ=' -expect_unresolved \*' + archive_cmds_GCJ='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -msym -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' + archive_expsym_cmds_GCJ='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; echo "-hidden">> $lib.exp~ + $LD -shared${allow_undefined_flag} -input $lib.exp $linker_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib~$rm $lib.exp' + + # Both c and cxx compiler support -rpath directly + hardcode_libdir_flag_spec_GCJ='-rpath $libdir' + fi + hardcode_libdir_separator_GCJ=: + ;; + + sco3.2v5*) + archive_cmds_GCJ='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + hardcode_shlibpath_var_GCJ=no + export_dynamic_flag_spec_GCJ='${wl}-Bexport' + runpath_var=LD_RUN_PATH + hardcode_runpath_var=yes + ;; + + solaris*) + no_undefined_flag_GCJ=' -z text' + if test "$GCC" = yes; then + archive_cmds_GCJ='$CC -shared ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' + archive_expsym_cmds_GCJ='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ + $CC -shared ${wl}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags~$rm $lib.exp' + else + archive_cmds_GCJ='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags' + archive_expsym_cmds_GCJ='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ + $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp' + fi + hardcode_libdir_flag_spec_GCJ='-R$libdir' + hardcode_shlibpath_var_GCJ=no + case $host_os in + solaris2.[0-5] | solaris2.[0-5].*) ;; + *) # Supported since Solaris 2.6 (maybe 2.5.1?) + whole_archive_flag_spec_GCJ='-z allextract$convenience -z defaultextract' ;; + esac + link_all_deplibs_GCJ=yes + ;; + + sunos4*) + if test "x$host_vendor" = xsequent; then + # Use $CC to link under sequent, because it throws in some extra .o + # files that make .init and .fini sections work. + archive_cmds_GCJ='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags' + else + archive_cmds_GCJ='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags' + fi + hardcode_libdir_flag_spec_GCJ='-L$libdir' + hardcode_direct_GCJ=yes + hardcode_minus_L_GCJ=yes + hardcode_shlibpath_var_GCJ=no + ;; + + sysv4) + case $host_vendor in + sni) + archive_cmds_GCJ='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + hardcode_direct_GCJ=yes # is this really true??? + ;; + siemens) + ## LD is ld it makes a PLAMLIB + ## CC just makes a GrossModule. + archive_cmds_GCJ='$LD -G -o $lib $libobjs $deplibs $linker_flags' + reload_cmds_GCJ='$CC -r -o $output$reload_objs' + hardcode_direct_GCJ=no + ;; + motorola) + archive_cmds_GCJ='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + hardcode_direct_GCJ=no #Motorola manual says yes, but my tests say they lie + ;; + esac + runpath_var='LD_RUN_PATH' + hardcode_shlibpath_var_GCJ=no + ;; + + sysv4.3*) + archive_cmds_GCJ='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + hardcode_shlibpath_var_GCJ=no + export_dynamic_flag_spec_GCJ='-Bexport' + ;; + + sysv4*MP*) + if test -d /usr/nec; then + archive_cmds_GCJ='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + hardcode_shlibpath_var_GCJ=no + runpath_var=LD_RUN_PATH + hardcode_runpath_var=yes + ld_shlibs_GCJ=yes + fi + ;; + + sysv4.2uw2*) + archive_cmds_GCJ='$LD -G -o $lib $libobjs $deplibs $linker_flags' + hardcode_direct_GCJ=yes + hardcode_minus_L_GCJ=no + hardcode_shlibpath_var_GCJ=no + hardcode_runpath_var=yes + runpath_var=LD_RUN_PATH + ;; + + sysv5OpenUNIX8* | sysv5UnixWare7* | sysv5uw[78]* | unixware7*) + no_undefined_flag_GCJ='${wl}-z ${wl}text' + if test "$GCC" = yes; then + archive_cmds_GCJ='$CC -shared ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' + else + archive_cmds_GCJ='$CC -G ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' + fi + runpath_var='LD_RUN_PATH' + hardcode_shlibpath_var_GCJ=no + ;; + + sysv5*) + no_undefined_flag_GCJ=' -z text' + # $CC -shared without GNU ld will not create a library from C++ + # object files and a static libstdc++, better avoid it by now + archive_cmds_GCJ='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags' + archive_expsym_cmds_GCJ='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ + $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp' + hardcode_libdir_flag_spec_GCJ= + hardcode_shlibpath_var_GCJ=no + runpath_var='LD_RUN_PATH' + ;; + + uts4*) + archive_cmds_GCJ='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + hardcode_libdir_flag_spec_GCJ='-L$libdir' + hardcode_shlibpath_var_GCJ=no + ;; + + *) + ld_shlibs_GCJ=no + ;; + esac + fi + +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs_GCJ" >&5 +$as_echo "$ld_shlibs_GCJ" >&6; } +test "$ld_shlibs_GCJ" = no && can_build_shared=no + +variables_saved_for_relink="PATH $shlibpath_var $runpath_var" +if test "$GCC" = yes; then + variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" +fi + +# +# Do we need to explicitly link libc? +# +case "x$archive_cmds_need_lc_GCJ" in +x|xyes) + # Assume -lc should be added + archive_cmds_need_lc_GCJ=yes + + if test "$enable_shared" = yes && test "$GCC" = yes; then + case $archive_cmds_GCJ in + *'~'*) + # FIXME: we may have to deal with multi-command sequences. + ;; + '$CC '*) + # Test whether the compiler implicitly links with -lc since on some + # systems, -lgcc has to come before -lc. If gcc already passes -lc + # to ld, don't add -lc before -lgcc. + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -lc should be explicitly linked in" >&5 +$as_echo_n "checking whether -lc should be explicitly linked in... " >&6; } + $rm conftest* + printf "$lt_simple_compile_test_code" > conftest.$ac_ext + + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 + (eval $ac_compile) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } 2>conftest.err; then + soname=conftest + lib=conftest + libobjs=conftest.$ac_objext + deplibs= + wl=$lt_prog_compiler_wl_GCJ + compiler_flags=-v + linker_flags=-v + verstring= + output_objdir=. + libname=conftest + lt_save_allow_undefined_flag=$allow_undefined_flag_GCJ + allow_undefined_flag_GCJ= + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$archive_cmds_GCJ 2\>\&1 \| grep \" -lc \" \>/dev/null 2\>\&1\""; } >&5 + (eval $archive_cmds_GCJ 2\>\&1 \| grep \" -lc \" \>/dev/null 2\>\&1) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } + then + archive_cmds_need_lc_GCJ=no + else + archive_cmds_need_lc_GCJ=yes + fi + allow_undefined_flag_GCJ=$lt_save_allow_undefined_flag + else + cat conftest.err 1>&5 + fi + $rm conftest* + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $archive_cmds_need_lc_GCJ" >&5 +$as_echo "$archive_cmds_need_lc_GCJ" >&6; } + ;; + esac + fi + ;; +esac + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking dynamic linker characteristics" >&5 +$as_echo_n "checking dynamic linker characteristics... " >&6; } +library_names_spec= +libname_spec='lib$name' +soname_spec= +shrext=".so" +postinstall_cmds= +postuninstall_cmds= +finish_cmds= +finish_eval= +shlibpath_var= +shlibpath_overrides_runpath=unknown +version_type=none +dynamic_linker="$host_os ld.so" +sys_lib_dlsearch_path_spec="/lib /usr/lib" +if test "$GCC" = yes; then + sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"` + if echo "$sys_lib_search_path_spec" | grep ';' >/dev/null ; then + # if the path contains ";" then we assume it to be the separator + # otherwise default to the standard path separator (i.e. ":") - it is + # assumed that no part of a normal pathname contains ";" but that should + # okay in the real world where ";" in dirpaths is itself problematic. + sys_lib_search_path_spec=`echo "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'` + else + sys_lib_search_path_spec=`echo "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` + fi +else + sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" +fi +need_lib_prefix=unknown +hardcode_into_libs=no + +# when you set need_version to no, make sure it does not cause -set_version +# flags to be left without arguments +need_version=unknown + +case $host_os in +aix3*) + version_type=linux + library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a' + shlibpath_var=LIBPATH + + # AIX 3 has no versioning support, so we append a major version to the name. + soname_spec='${libname}${release}${shared_ext}$major' + ;; + +aix4* | aix5*) + version_type=linux + need_lib_prefix=no + need_version=no + hardcode_into_libs=yes + if test "$host_cpu" = ia64; then + # AIX 5 supports IA64 + library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}' + shlibpath_var=LD_LIBRARY_PATH + else + # With GCC up to 2.95.x, collect2 would create an import file + # for dependence libraries. The import file would start with + # the line `#! .'. This would cause the generated library to + # depend on `.', always an invalid library. This was fixed in + # development snapshots of GCC prior to 3.0. + case $host_os in + aix4 | aix4.[01] | aix4.[01].*) + if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)' + echo ' yes ' + echo '#endif'; } | ${CC} -E - | grep yes > /dev/null; then + : + else + can_build_shared=no + fi + ;; + esac + # AIX (on Power*) has no versioning support, so currently we can not hardcode correct + # soname into executable. Probably we can add versioning support to + # collect2, so additional links can be useful in future. + if test "$aix_use_runtimelinking" = yes; then + # If using run time linking (on AIX 4.2 or later) use lib.so + # instead of lib.a to let people know that these are not + # typical AIX shared libraries. + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + else + # We preserve .a as extension for shared libraries through AIX4.2 + # and later when we are not doing run time linking. + library_names_spec='${libname}${release}.a $libname.a' + soname_spec='${libname}${release}${shared_ext}$major' + fi + shlibpath_var=LIBPATH + fi + ;; + +amigaos*) + library_names_spec='$libname.ixlibrary $libname.a' + # Create ${libname}_ixlibrary.a entries in /sys/libs. + finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$echo "X$lib" | $Xsed -e '\''s%^.*/\([^/]*\)\.ixlibrary$%\1%'\''`; test $rm /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done' + ;; + +beos*) + library_names_spec='${libname}${shared_ext}' + dynamic_linker="$host_os ld.so" + shlibpath_var=LIBRARY_PATH + ;; + +bsdi4*) + version_type=linux + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir' + shlibpath_var=LD_LIBRARY_PATH + sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib" + sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib" + # the default ld.so.conf also contains /usr/contrib/lib and + # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow + # libtool to hard-code these into programs + ;; + +cygwin* | mingw* | pw32*) + version_type=windows + shrext=".dll" + need_version=no + need_lib_prefix=no + + case $GCC,$host_os in + yes,cygwin* | yes,mingw* | yes,pw32*) + library_names_spec='$libname.dll.a' + # DLL is installed to $(libdir)/../bin by postinstall_cmds + postinstall_cmds='base_file=`basename \${file}`~ + dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i;echo \$dlname'\''`~ + dldir=$destdir/`dirname \$dlpath`~ + test -d \$dldir || mkdir -p \$dldir~ + $install_prog $dir/$dlname \$dldir/$dlname' + postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~ + dlpath=$dir/\$dldll~ + $rm \$dlpath' + shlibpath_overrides_runpath=yes + + case $host_os in + cygwin*) + # Cygwin DLLs use 'cyg' prefix rather than 'lib' + soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}' + sys_lib_search_path_spec="/usr/lib /lib/w32api /lib /usr/local/lib" + ;; + mingw*) + # MinGW DLLs use traditional 'lib' prefix + soname_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}' + sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"` + if echo "$sys_lib_search_path_spec" | grep ';[c-zC-Z]:/' >/dev/null; then + # It is most probably a Windows format PATH printed by + # mingw gcc, but we are running on Cygwin. Gcc prints its search + # path with ; separators, and with drive letters. We can handle the + # drive letters (cygwin fileutils understands them), so leave them, + # especially as we might pass files found there to a mingw objdump, + # which wouldn't understand a cygwinified path. Ahh. + sys_lib_search_path_spec=`echo "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'` + else + sys_lib_search_path_spec=`echo "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` + fi + ;; + pw32*) + # pw32 DLLs use 'pw' prefix rather than 'lib' + library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/./-/g'`${versuffix}${shared_ext}' + ;; + esac + ;; + + *) + library_names_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext} $libname.lib' + ;; + esac + dynamic_linker='Win32 ld.exe' + # FIXME: first we should search . and the directory the executable is in + shlibpath_var=PATH + ;; + +darwin* | rhapsody*) + dynamic_linker="$host_os dyld" + version_type=darwin + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${versuffix}$shared_ext ${libname}${release}${major}$shared_ext ${libname}$shared_ext' + soname_spec='${libname}${release}${major}$shared_ext' + shlibpath_overrides_runpath=yes + shlibpath_var=DYLD_LIBRARY_PATH + shrext='$(test .$module = .yes && echo .so || echo .dylib)' + # Apple's gcc prints 'gcc -print-search-dirs' doesn't operate the same. + if test "$GCC" = yes; then + sys_lib_search_path_spec=`$CC -print-search-dirs | tr "\n" "$PATH_SEPARATOR" | sed -e 's/libraries:/@libraries:/' | tr "@" "\n" | grep "^libraries:" | sed -e "s/^libraries://" -e "s,=/,/,g" -e "s,$PATH_SEPARATOR, ,g" -e "s,.*,& /lib /usr/lib /usr/local/lib,g"` + else + sys_lib_search_path_spec='/lib /usr/lib /usr/local/lib' + fi + sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib' + ;; + +dgux*) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname$shared_ext' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + ;; + +freebsd1*) + dynamic_linker=no + ;; + +kfreebsd*-gnu) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=no + hardcode_into_libs=yes + dynamic_linker='GNU ld.so' + ;; + +freebsd*) + objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout` + version_type=freebsd-$objformat + case $version_type in + freebsd-elf*) + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}' + need_version=no + need_lib_prefix=no + ;; + freebsd-*) + library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix' + need_version=yes + ;; + esac + shlibpath_var=LD_LIBRARY_PATH + case $host_os in + freebsd2*) + shlibpath_overrides_runpath=yes + ;; + freebsd3.01* | freebsdelf3.01*) + shlibpath_overrides_runpath=yes + hardcode_into_libs=yes + ;; + *) # from 3.2 on + shlibpath_overrides_runpath=no + hardcode_into_libs=yes + ;; + esac + ;; + +gnu*) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + hardcode_into_libs=yes + ;; + +hpux9* | hpux10* | hpux11*) + # Give a soname corresponding to the major version so that dld.sl refuses to + # link against other versions. + version_type=sunos + need_lib_prefix=no + need_version=no + case "$host_cpu" in + ia64*) + shrext='.so' + hardcode_into_libs=yes + dynamic_linker="$host_os dld.so" + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + if test "X$HPUX_IA64_MODE" = X32; then + sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib" + else + sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64" + fi + sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec + ;; + hppa*64*) + shrext='.sl' + hardcode_into_libs=yes + dynamic_linker="$host_os dld.sl" + shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH + shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64" + sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec + ;; + *) + shrext='.sl' + dynamic_linker="$host_os dld.sl" + shlibpath_var=SHLIB_PATH + shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + ;; + esac + # HP-UX runs *really* slowly unless shared libraries are mode 555. + postinstall_cmds='chmod 555 $lib' + ;; + +irix5* | irix6* | nonstopux*) + case $host_os in + nonstopux*) version_type=nonstopux ;; + *) + if test "$lt_cv_prog_gnu_ld" = yes; then + version_type=linux + else + version_type=irix + fi ;; + esac + need_lib_prefix=no + need_version=no + soname_spec='${libname}${release}${shared_ext}$major' + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}' + case $host_os in + irix5* | nonstopux*) + libsuff= shlibsuff= + ;; + *) + case $LD in # libtool.m4 will add one of these switches to LD + *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ") + libsuff= shlibsuff= libmagic=32-bit;; + *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ") + libsuff=32 shlibsuff=N32 libmagic=N32;; + *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ") + libsuff=64 shlibsuff=64 libmagic=64-bit;; + *) libsuff= shlibsuff= libmagic=never-match;; + esac + ;; + esac + shlibpath_var=LD_LIBRARY${shlibsuff}_PATH + shlibpath_overrides_runpath=no + sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}" + sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}" + hardcode_into_libs=yes + ;; + +# No shared lib support for Linux oldld, aout, or coff. +linux*oldld* | linux*aout* | linux*coff*) + dynamic_linker=no + ;; + +# This must be Linux ELF. +linux*) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=no + # This implies no fast_install, which is unacceptable. + # Some rework will be needed to allow for fast_install + # before this can be enabled. + hardcode_into_libs=yes + + # Append ld.so.conf contents to the search path + if test -f /etc/ld.so.conf; then + ld_extra=`$SED -e 's/:,\t/ /g;s/=^=*$//;s/=^= * / /g' /etc/ld.so.conf` + sys_lib_dlsearch_path_spec="/lib /usr/lib $ld_extra" + fi + + # We used to test for /lib/ld.so.1 and disable shared libraries on + # powerpc, because MkLinux only supported shared libraries with the + # GNU dynamic linker. Since this was broken with cross compilers, + # most powerpc-linux boxes support dynamic linking these days and + # people can always --disable-shared, the test was removed, and we + # assume the GNU/Linux dynamic linker is in use. + dynamic_linker='GNU/Linux ld.so' + ;; + +knetbsd*-gnu) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=no + hardcode_into_libs=yes + dynamic_linker='GNU ld.so' + ;; + +netbsd*) + version_type=sunos + need_lib_prefix=no + need_version=no + if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' + finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' + dynamic_linker='NetBSD (a.out) ld.so' + else + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + dynamic_linker='NetBSD ld.elf_so' + fi + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + hardcode_into_libs=yes + ;; + +newsos6) + version_type=linux + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + ;; + +nto-qnx*) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + ;; + +openbsd*) + version_type=sunos + need_lib_prefix=no + need_version=yes + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' + finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' + shlibpath_var=LD_LIBRARY_PATH + if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then + case $host_os in + openbsd2.[89] | openbsd2.[89].*) + shlibpath_overrides_runpath=no + ;; + *) + shlibpath_overrides_runpath=yes + ;; + esac + else + shlibpath_overrides_runpath=yes + fi + ;; + +os2*) + libname_spec='$name' + shrext=".dll" + need_lib_prefix=no + library_names_spec='$libname${shared_ext} $libname.a' + dynamic_linker='OS/2 ld.exe' + shlibpath_var=LIBPATH + ;; + +osf3* | osf4* | osf5*) + version_type=osf + need_lib_prefix=no + need_version=no + soname_spec='${libname}${release}${shared_ext}$major' + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + shlibpath_var=LD_LIBRARY_PATH + sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib" + sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec" + ;; + +sco3.2v5*) + version_type=osf + soname_spec='${libname}${release}${shared_ext}$major' + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + shlibpath_var=LD_LIBRARY_PATH + ;; + +solaris*) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + hardcode_into_libs=yes + # ldd complains unless libraries are executable + postinstall_cmds='chmod +x $lib' + ;; + +sunos4*) + version_type=sunos + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' + finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + if test "$with_gnu_ld" = yes; then + need_lib_prefix=no + fi + need_version=yes + ;; + +sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) + version_type=linux + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + case $host_vendor in + sni) + shlibpath_overrides_runpath=no + need_lib_prefix=no + export_dynamic_flag_spec='${wl}-Blargedynsym' + runpath_var=LD_RUN_PATH + ;; + siemens) + need_lib_prefix=no + ;; + motorola) + need_lib_prefix=no + need_version=no + shlibpath_overrides_runpath=no + sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib' + ;; + esac + ;; + +sysv4*MP*) + if test -d /usr/nec ;then + version_type=linux + library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}' + soname_spec='$libname${shared_ext}.$major' + shlibpath_var=LD_LIBRARY_PATH + fi + ;; + +uts4*) + version_type=linux + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + ;; + +*) + dynamic_linker=no + ;; +esac +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $dynamic_linker" >&5 +$as_echo "$dynamic_linker" >&6; } +test "$dynamic_linker" = no && can_build_shared=no + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to hardcode library paths into programs" >&5 +$as_echo_n "checking how to hardcode library paths into programs... " >&6; } +hardcode_action_GCJ= +if test -n "$hardcode_libdir_flag_spec_GCJ" || \ + test -n "$runpath_var GCJ" || \ + test "X$hardcode_automatic_GCJ"="Xyes" ; then + + # We can hardcode non-existant directories. + if test "$hardcode_direct_GCJ" != no && + # If the only mechanism to avoid hardcoding is shlibpath_var, we + # have to relink, otherwise we might link with an installed library + # when we should be linking with a yet-to-be-installed one + ## test "$_LT_AC_TAGVAR(hardcode_shlibpath_var, GCJ)" != no && + test "$hardcode_minus_L_GCJ" != no; then + # Linking always hardcodes the temporary library directory. + hardcode_action_GCJ=relink + else + # We can link without hardcoding, and we can hardcode nonexisting dirs. + hardcode_action_GCJ=immediate + fi +else + # We cannot hardcode anything, or else we can only hardcode existing + # directories. + hardcode_action_GCJ=unsupported +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $hardcode_action_GCJ" >&5 +$as_echo "$hardcode_action_GCJ" >&6; } + +if test "$hardcode_action_GCJ" = relink; then + # Fast installation is not supported + enable_fast_install=no +elif test "$shlibpath_overrides_runpath" = yes || + test "$enable_shared" = no; then + # Fast installation is not necessary + enable_fast_install=needless +fi + +striplib= +old_striplib= +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether stripping libraries is possible" >&5 +$as_echo_n "checking whether stripping libraries is possible... " >&6; } +if test -n "$STRIP" && $STRIP -V 2>&1 | grep "GNU strip" >/dev/null; then + test -z "$old_striplib" && old_striplib="$STRIP --strip-debug" + test -z "$striplib" && striplib="$STRIP --strip-unneeded" + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } +else +# FIXME - insert some real tests, host_os isn't really good enough + case $host_os in + darwin*) + if test -n "$STRIP" ; then + striplib="$STRIP -x" + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + ;; + *) + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + ;; + esac +fi + +if test "x$enable_dlopen" != xyes; then + enable_dlopen=unknown + enable_dlopen_self=unknown + enable_dlopen_self_static=unknown +else + lt_cv_dlopen=no + lt_cv_dlopen_libs= + + case $host_os in + beos*) + lt_cv_dlopen="load_add_on" + lt_cv_dlopen_libs= + lt_cv_dlopen_self=yes + ;; + + mingw* | pw32*) + lt_cv_dlopen="LoadLibrary" + lt_cv_dlopen_libs= + ;; + + cygwin*) + lt_cv_dlopen="dlopen" + lt_cv_dlopen_libs= + ;; + + darwin*) + # if libdl is installed we need to link against it + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5 +$as_echo_n "checking for dlopen in -ldl... " >&6; } +if ${ac_cv_lib_dl_dlopen+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-ldl $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char dlopen (); +int +main () +{ +return dlopen (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_dl_dlopen=yes +else + ac_cv_lib_dl_dlopen=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5 +$as_echo "$ac_cv_lib_dl_dlopen" >&6; } +if test "x$ac_cv_lib_dl_dlopen" = xyes; then : + lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl" +else + + lt_cv_dlopen="dyld" + lt_cv_dlopen_libs= + lt_cv_dlopen_self=yes + +fi + + ;; + + *) + ac_fn_c_check_func "$LINENO" "shl_load" "ac_cv_func_shl_load" +if test "x$ac_cv_func_shl_load" = xyes; then : + lt_cv_dlopen="shl_load" +else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for shl_load in -ldld" >&5 +$as_echo_n "checking for shl_load in -ldld... " >&6; } +if ${ac_cv_lib_dld_shl_load+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-ldld $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char shl_load (); +int +main () +{ +return shl_load (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_dld_shl_load=yes +else + ac_cv_lib_dld_shl_load=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_shl_load" >&5 +$as_echo "$ac_cv_lib_dld_shl_load" >&6; } +if test "x$ac_cv_lib_dld_shl_load" = xyes; then : + lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-dld" +else + ac_fn_c_check_func "$LINENO" "dlopen" "ac_cv_func_dlopen" +if test "x$ac_cv_func_dlopen" = xyes; then : + lt_cv_dlopen="dlopen" +else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5 +$as_echo_n "checking for dlopen in -ldl... " >&6; } +if ${ac_cv_lib_dl_dlopen+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-ldl $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char dlopen (); +int +main () +{ +return dlopen (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_dl_dlopen=yes +else + ac_cv_lib_dl_dlopen=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5 +$as_echo "$ac_cv_lib_dl_dlopen" >&6; } +if test "x$ac_cv_lib_dl_dlopen" = xyes; then : + lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl" +else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -lsvld" >&5 +$as_echo_n "checking for dlopen in -lsvld... " >&6; } +if ${ac_cv_lib_svld_dlopen+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-lsvld $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char dlopen (); +int +main () +{ +return dlopen (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_svld_dlopen=yes +else + ac_cv_lib_svld_dlopen=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_svld_dlopen" >&5 +$as_echo "$ac_cv_lib_svld_dlopen" >&6; } +if test "x$ac_cv_lib_svld_dlopen" = xyes; then : + lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld" +else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dld_link in -ldld" >&5 +$as_echo_n "checking for dld_link in -ldld... " >&6; } +if ${ac_cv_lib_dld_dld_link+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-ldld $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char dld_link (); +int +main () +{ +return dld_link (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_dld_dld_link=yes +else + ac_cv_lib_dld_dld_link=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_dld_link" >&5 +$as_echo "$ac_cv_lib_dld_dld_link" >&6; } +if test "x$ac_cv_lib_dld_dld_link" = xyes; then : + lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-dld" +fi + + +fi + + +fi + + +fi + + +fi + + +fi + + ;; + esac + + if test "x$lt_cv_dlopen" != xno; then + enable_dlopen=yes + else + enable_dlopen=no + fi + + case $lt_cv_dlopen in + dlopen) + save_CPPFLAGS="$CPPFLAGS" + test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H" + + save_LDFLAGS="$LDFLAGS" + eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\" + + save_LIBS="$LIBS" + LIBS="$lt_cv_dlopen_libs $LIBS" + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a program can dlopen itself" >&5 +$as_echo_n "checking whether a program can dlopen itself... " >&6; } +if ${lt_cv_dlopen_self+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then : + lt_cv_dlopen_self=cross +else + lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 + lt_status=$lt_dlunknown + cat > conftest.$ac_ext < +#endif + +#include + +#ifdef RTLD_GLOBAL +# define LT_DLGLOBAL RTLD_GLOBAL +#else +# ifdef DL_GLOBAL +# define LT_DLGLOBAL DL_GLOBAL +# else +# define LT_DLGLOBAL 0 +# endif +#endif + +/* We may have to define LT_DLLAZY_OR_NOW in the command line if we + find out it does not work in some platform. */ +#ifndef LT_DLLAZY_OR_NOW +# ifdef RTLD_LAZY +# define LT_DLLAZY_OR_NOW RTLD_LAZY +# else +# ifdef DL_LAZY +# define LT_DLLAZY_OR_NOW DL_LAZY +# else +# ifdef RTLD_NOW +# define LT_DLLAZY_OR_NOW RTLD_NOW +# else +# ifdef DL_NOW +# define LT_DLLAZY_OR_NOW DL_NOW +# else +# define LT_DLLAZY_OR_NOW 0 +# endif +# endif +# endif +# endif +#endif + +#ifdef __cplusplus +extern "C" void exit (int); +#endif + +void fnord() { int i=42;} +int main () +{ + void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW); + int status = $lt_dlunknown; + + if (self) + { + if (dlsym (self,"fnord")) status = $lt_dlno_uscore; + else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore; + /* dlclose (self); */ + } + + exit (status); +} +EOF + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 + (eval $ac_link) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && test -s conftest${ac_exeext} 2>/dev/null; then + (./conftest; exit; ) 2>/dev/null + lt_status=$? + case x$lt_status in + x$lt_dlno_uscore) lt_cv_dlopen_self=yes ;; + x$lt_dlneed_uscore) lt_cv_dlopen_self=yes ;; + x$lt_unknown|x*) lt_cv_dlopen_self=no ;; + esac + else : + # compilation failed + lt_cv_dlopen_self=no + fi +fi +rm -fr conftest* + + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self" >&5 +$as_echo "$lt_cv_dlopen_self" >&6; } + + if test "x$lt_cv_dlopen_self" = xyes; then + LDFLAGS="$LDFLAGS $link_static_flag" + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a statically linked program can dlopen itself" >&5 +$as_echo_n "checking whether a statically linked program can dlopen itself... " >&6; } +if ${lt_cv_dlopen_self_static+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then : + lt_cv_dlopen_self_static=cross +else + lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 + lt_status=$lt_dlunknown + cat > conftest.$ac_ext < +#endif + +#include + +#ifdef RTLD_GLOBAL +# define LT_DLGLOBAL RTLD_GLOBAL +#else +# ifdef DL_GLOBAL +# define LT_DLGLOBAL DL_GLOBAL +# else +# define LT_DLGLOBAL 0 +# endif +#endif + +/* We may have to define LT_DLLAZY_OR_NOW in the command line if we + find out it does not work in some platform. */ +#ifndef LT_DLLAZY_OR_NOW +# ifdef RTLD_LAZY +# define LT_DLLAZY_OR_NOW RTLD_LAZY +# else +# ifdef DL_LAZY +# define LT_DLLAZY_OR_NOW DL_LAZY +# else +# ifdef RTLD_NOW +# define LT_DLLAZY_OR_NOW RTLD_NOW +# else +# ifdef DL_NOW +# define LT_DLLAZY_OR_NOW DL_NOW +# else +# define LT_DLLAZY_OR_NOW 0 +# endif +# endif +# endif +# endif +#endif + +#ifdef __cplusplus +extern "C" void exit (int); +#endif + +void fnord() { int i=42;} +int main () +{ + void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW); + int status = $lt_dlunknown; + + if (self) + { + if (dlsym (self,"fnord")) status = $lt_dlno_uscore; + else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore; + /* dlclose (self); */ + } + + exit (status); +} +EOF + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 + (eval $ac_link) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && test -s conftest${ac_exeext} 2>/dev/null; then + (./conftest; exit; ) 2>/dev/null + lt_status=$? + case x$lt_status in + x$lt_dlno_uscore) lt_cv_dlopen_self_static=yes ;; + x$lt_dlneed_uscore) lt_cv_dlopen_self_static=yes ;; + x$lt_unknown|x*) lt_cv_dlopen_self_static=no ;; + esac + else : + # compilation failed + lt_cv_dlopen_self_static=no + fi +fi +rm -fr conftest* + + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self_static" >&5 +$as_echo "$lt_cv_dlopen_self_static" >&6; } + fi + + CPPFLAGS="$save_CPPFLAGS" + LDFLAGS="$save_LDFLAGS" + LIBS="$save_LIBS" + ;; + esac + + case $lt_cv_dlopen_self in + yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;; + *) enable_dlopen_self=unknown ;; + esac + + case $lt_cv_dlopen_self_static in + yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;; + *) enable_dlopen_self_static=unknown ;; + esac +fi + + +# The else clause should only fire when bootstrapping the +# libtool distribution, otherwise you forgot to ship ltmain.sh +# with your package, and you will get complaints that there are +# no rules to generate ltmain.sh. +if test -f "$ltmain"; then + # See if we are running on zsh, and set the options which allow our commands through + # without removal of \ escapes. + if test -n "${ZSH_VERSION+set}" ; then + setopt NO_GLOB_SUBST + fi + # Now quote all the things that may contain metacharacters while being + # careful not to overquote the AC_SUBSTed values. We take copies of the + # variables and quote the copies for generation of the libtool script. + for var in echo old_CC old_CFLAGS AR AR_FLAGS EGREP RANLIB LN_S LTCC NM \ + SED SHELL STRIP \ + libname_spec library_names_spec soname_spec extract_expsyms_cmds \ + old_striplib striplib file_magic_cmd finish_cmds finish_eval \ + deplibs_check_method reload_flag reload_cmds need_locks \ + lt_cv_sys_global_symbol_pipe lt_cv_sys_global_symbol_to_cdecl \ + lt_cv_sys_global_symbol_to_c_name_address \ + sys_lib_search_path_spec sys_lib_dlsearch_path_spec \ + old_postinstall_cmds old_postuninstall_cmds \ + compiler_GCJ \ + CC_GCJ \ + LD_GCJ \ + lt_prog_compiler_wl_GCJ \ + lt_prog_compiler_pic_GCJ \ + lt_prog_compiler_static_GCJ \ + lt_prog_compiler_no_builtin_flag_GCJ \ + export_dynamic_flag_spec_GCJ \ + thread_safe_flag_spec_GCJ \ + whole_archive_flag_spec_GCJ \ + enable_shared_with_static_runtimes_GCJ \ + old_archive_cmds_GCJ \ + old_archive_from_new_cmds_GCJ \ + predep_objects_GCJ \ + postdep_objects_GCJ \ + predeps_GCJ \ + postdeps_GCJ \ + compiler_lib_search_path_GCJ \ + archive_cmds_GCJ \ + archive_expsym_cmds_GCJ \ + postinstall_cmds_GCJ \ + postuninstall_cmds_GCJ \ + old_archive_from_expsyms_cmds_GCJ \ + allow_undefined_flag_GCJ \ + no_undefined_flag_GCJ \ + export_symbols_cmds_GCJ \ + hardcode_libdir_flag_spec_GCJ \ + hardcode_libdir_flag_spec_ld_GCJ \ + hardcode_libdir_separator_GCJ \ + hardcode_automatic_GCJ \ + module_cmds_GCJ \ + module_expsym_cmds_GCJ \ + lt_cv_prog_compiler_c_o_GCJ \ + exclude_expsyms_GCJ \ + include_expsyms_GCJ; do + + case $var in + old_archive_cmds_GCJ | \ + old_archive_from_new_cmds_GCJ | \ + archive_cmds_GCJ | \ + archive_expsym_cmds_GCJ | \ + module_cmds_GCJ | \ + module_expsym_cmds_GCJ | \ + old_archive_from_expsyms_cmds_GCJ | \ + export_symbols_cmds_GCJ | \ + extract_expsyms_cmds | reload_cmds | finish_cmds | \ + postinstall_cmds | postuninstall_cmds | \ + old_postinstall_cmds | old_postuninstall_cmds | \ + sys_lib_search_path_spec | sys_lib_dlsearch_path_spec) + # Double-quote double-evaled strings. + eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$double_quote_subst\" -e \"\$sed_quote_subst\" -e \"\$delay_variable_subst\"\`\\\"" + ;; + *) + eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$sed_quote_subst\"\`\\\"" + ;; + esac + done + + case $lt_echo in + *'\$0 --fallback-echo"') + lt_echo=`$echo "X$lt_echo" | $Xsed -e 's/\\\\\\\$0 --fallback-echo"$/$0 --fallback-echo"/'` + ;; + esac + +cfgfile="$ofile" + + cat <<__EOF__ >> "$cfgfile" +# ### BEGIN LIBTOOL TAG CONFIG: $tagname + +# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`: + +# Shell to use when invoking shell scripts. +SHELL=$lt_SHELL + +# Whether or not to build shared libraries. +build_libtool_libs=$enable_shared + +# Whether or not to build static libraries. +build_old_libs=$enable_static + +# Whether or not to add -lc for building shared libraries. +build_libtool_need_lc=$archive_cmds_need_lc_GCJ + +# Whether or not to disallow shared libs when runtime libs are static +allow_libtool_libs_with_static_runtimes=$enable_shared_with_static_runtimes_GCJ + +# Whether or not to optimize for fast installation. +fast_install=$enable_fast_install + +# The host system. +host_alias=$host_alias +host=$host + +# An echo program that does not interpret backslashes. +echo=$lt_echo + +# The archiver. +AR=$lt_AR +AR_FLAGS=$lt_AR_FLAGS + +# A C compiler. +LTCC=$lt_LTCC + +# A language-specific compiler. +CC=$lt_compiler_GCJ + +# Is the compiler the GNU C compiler? +with_gcc=$GCC_GCJ + +# An ERE matcher. +EGREP=$lt_EGREP + +# The linker used to build libraries. +LD=$lt_LD_GCJ + +# Whether we need hard or soft links. +LN_S=$lt_LN_S + +# A BSD-compatible nm program. +NM=$lt_NM + +# A symbol stripping program +STRIP=$lt_STRIP + +# Used to examine libraries when file_magic_cmd begins "file" +MAGIC_CMD=$MAGIC_CMD + +# Used on cygwin: DLL creation program. +DLLTOOL="$DLLTOOL" + +# Used on cygwin: object dumper. +OBJDUMP="$OBJDUMP" + +# Used on cygwin: assembler. +AS="$AS" + +# The name of the directory that contains temporary libtool files. +objdir=$objdir + +# How to create reloadable object files. +reload_flag=$lt_reload_flag +reload_cmds=$lt_reload_cmds + +# How to pass a linker flag through the compiler. +wl=$lt_lt_prog_compiler_wl_GCJ + +# Object file suffix (normally "o"). +objext="$ac_objext" + +# Old archive suffix (normally "a"). +libext="$libext" + +# Shared library suffix (normally ".so"). +shrext='$shrext' + +# Executable file suffix (normally ""). +exeext="$exeext" + +# Additional compiler flags for building library objects. +pic_flag=$lt_lt_prog_compiler_pic_GCJ +pic_mode=$pic_mode + +# What is the maximum length of a command? +max_cmd_len=$lt_cv_sys_max_cmd_len + +# Does compiler simultaneously support -c and -o options? +compiler_c_o=$lt_lt_cv_prog_compiler_c_o_GCJ + +# Must we lock files when doing compilation ? +need_locks=$lt_need_locks + +# Do we need the lib prefix for modules? +need_lib_prefix=$need_lib_prefix + +# Do we need a version for libraries? +need_version=$need_version + +# Whether dlopen is supported. +dlopen_support=$enable_dlopen + +# Whether dlopen of programs is supported. +dlopen_self=$enable_dlopen_self + +# Whether dlopen of statically linked programs is supported. +dlopen_self_static=$enable_dlopen_self_static + +# Compiler flag to prevent dynamic linking. +link_static_flag=$lt_lt_prog_compiler_static_GCJ + +# Compiler flag to turn off builtin functions. +no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag_GCJ + +# Compiler flag to allow reflexive dlopens. +export_dynamic_flag_spec=$lt_export_dynamic_flag_spec_GCJ + +# Compiler flag to generate shared objects directly from archives. +whole_archive_flag_spec=$lt_whole_archive_flag_spec_GCJ + +# Compiler flag to generate thread-safe objects. +thread_safe_flag_spec=$lt_thread_safe_flag_spec_GCJ + +# Library versioning type. +version_type=$version_type + +# Format of library name prefix. +libname_spec=$lt_libname_spec + +# List of archive names. First name is the real one, the rest are links. +# The last name is the one that the linker finds with -lNAME. +library_names_spec=$lt_library_names_spec + +# The coded name of the library, if different from the real name. +soname_spec=$lt_soname_spec + +# Commands used to build and install an old-style archive. +RANLIB=$lt_RANLIB +old_archive_cmds=$lt_old_archive_cmds_GCJ +old_postinstall_cmds=$lt_old_postinstall_cmds +old_postuninstall_cmds=$lt_old_postuninstall_cmds + +# Create an old-style archive from a shared archive. +old_archive_from_new_cmds=$lt_old_archive_from_new_cmds_GCJ + +# Create a temporary old-style archive to link instead of a shared archive. +old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds_GCJ + +# Commands used to build and install a shared archive. +archive_cmds=$lt_archive_cmds_GCJ +archive_expsym_cmds=$lt_archive_expsym_cmds_GCJ +postinstall_cmds=$lt_postinstall_cmds +postuninstall_cmds=$lt_postuninstall_cmds + +# Commands used to build a loadable module (assumed same as above if empty) +module_cmds=$lt_module_cmds_GCJ +module_expsym_cmds=$lt_module_expsym_cmds_GCJ + +# Commands to strip libraries. +old_striplib=$lt_old_striplib +striplib=$lt_striplib + +# Dependencies to place before the objects being linked to create a +# shared library. +predep_objects=$lt_predep_objects_GCJ + +# Dependencies to place after the objects being linked to create a +# shared library. +postdep_objects=$lt_postdep_objects_GCJ + +# Dependencies to place before the objects being linked to create a +# shared library. +predeps=$lt_predeps_GCJ + +# Dependencies to place after the objects being linked to create a +# shared library. +postdeps=$lt_postdeps_GCJ + +# The library search path used internally by the compiler when linking +# a shared library. +compiler_lib_search_path=$lt_compiler_lib_search_path_GCJ + +# Method to check whether dependent libraries are shared objects. +deplibs_check_method=$lt_deplibs_check_method + +# Command to use when deplibs_check_method == file_magic. +file_magic_cmd=$lt_file_magic_cmd + +# Flag that allows shared libraries with undefined symbols to be built. +allow_undefined_flag=$lt_allow_undefined_flag_GCJ + +# Flag that forces no undefined symbols. +no_undefined_flag=$lt_no_undefined_flag_GCJ + +# Commands used to finish a libtool library installation in a directory. +finish_cmds=$lt_finish_cmds + +# Same as above, but a single script fragment to be evaled but not shown. +finish_eval=$lt_finish_eval + +# Take the output of nm and produce a listing of raw symbols and C names. +global_symbol_pipe=$lt_lt_cv_sys_global_symbol_pipe + +# Transform the output of nm in a proper C declaration +global_symbol_to_cdecl=$lt_lt_cv_sys_global_symbol_to_cdecl + +# Transform the output of nm in a C name address pair +global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address + +# This is the shared library runtime path variable. +runpath_var=$runpath_var + +# This is the shared library path variable. +shlibpath_var=$shlibpath_var + +# Is shlibpath searched before the hard-coded library search path? +shlibpath_overrides_runpath=$shlibpath_overrides_runpath + +# How to hardcode a shared library path into an executable. +hardcode_action=$hardcode_action_GCJ + +# Whether we should hardcode library paths into libraries. +hardcode_into_libs=$hardcode_into_libs + +# Flag to hardcode \$libdir into a binary during linking. +# This must work even if \$libdir does not exist. +hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec_GCJ + +# If ld is used when linking, flag to hardcode \$libdir into +# a binary during linking. This must work even if \$libdir does +# not exist. +hardcode_libdir_flag_spec_ld=$lt_hardcode_libdir_flag_spec_ld_GCJ + +# Whether we need a single -rpath flag with a separated argument. +hardcode_libdir_separator=$lt_hardcode_libdir_separator_GCJ + +# Set to yes if using DIR/libNAME${shared_ext} during linking hardcodes DIR into the +# resulting binary. +hardcode_direct=$hardcode_direct_GCJ + +# Set to yes if using the -LDIR flag during linking hardcodes DIR into the +# resulting binary. +hardcode_minus_L=$hardcode_minus_L_GCJ + +# Set to yes if using SHLIBPATH_VAR=DIR during linking hardcodes DIR into +# the resulting binary. +hardcode_shlibpath_var=$hardcode_shlibpath_var_GCJ + +# Set to yes if building a shared library automatically hardcodes DIR into the library +# and all subsequent libraries and executables linked against it. +hardcode_automatic=$hardcode_automatic_GCJ + +# Variables whose values should be saved in libtool wrapper scripts and +# restored at relink time. +variables_saved_for_relink="$variables_saved_for_relink" + +# Whether libtool must link a program against all its dependency libraries. +link_all_deplibs=$link_all_deplibs_GCJ + +# Compile-time system search path for libraries +sys_lib_search_path_spec=$lt_sys_lib_search_path_spec + +# Run-time system search path for libraries +sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec + +# Fix the shell variable \$srcfile for the compiler. +fix_srcfile_path="$fix_srcfile_path_GCJ" + +# Set to yes if exported symbols are required. +always_export_symbols=$always_export_symbols_GCJ + +# The commands to list exported symbols. +export_symbols_cmds=$lt_export_symbols_cmds_GCJ + +# The commands to extract the exported symbol list from a shared archive. +extract_expsyms_cmds=$lt_extract_expsyms_cmds + +# Symbols that should not be listed in the preloaded symbols. +exclude_expsyms=$lt_exclude_expsyms_GCJ + +# Symbols that must always be exported. +include_expsyms=$lt_include_expsyms_GCJ + +# ### END LIBTOOL TAG CONFIG: $tagname + +__EOF__ + + +else + # If there is no Makefile yet, we rely on a make rule to execute + # `config.status --recheck' to rerun these tests and create the + # libtool script then. + ltmain_in=`echo $ltmain | sed -e 's/\.sh$/.in/'` + if test -f "$ltmain_in"; then + test -f Makefile && make "$ltmain" + fi +fi + + +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu + +CC="$lt_save_CC" + + else + tagname="" + fi + ;; + + RC) + + +# Source file extension for RC test sources. +ac_ext=rc + +# Object file extension for compiled RC test sources. +objext=o +objext_RC=$objext + +# Code to be used in simple compile tests +lt_simple_compile_test_code='sample MENU { MENUITEM "&Soup", 100, CHECKED }\n' + +# Code to be used in simple link tests +lt_simple_link_test_code="$lt_simple_compile_test_code" + +# ltmain only uses $CC for tagged configurations so make sure $CC is set. + +# If no C compiler was specified, use CC. +LTCC=${LTCC-"$CC"} + +# Allow CC to be a program name with arguments. +compiler=$CC + + +# Allow CC to be a program name with arguments. +lt_save_CC="$CC" +CC=${RC-"windres"} +compiler=$CC +compiler_RC=$CC +lt_cv_prog_compiler_c_o_RC=yes + +# The else clause should only fire when bootstrapping the +# libtool distribution, otherwise you forgot to ship ltmain.sh +# with your package, and you will get complaints that there are +# no rules to generate ltmain.sh. +if test -f "$ltmain"; then + # See if we are running on zsh, and set the options which allow our commands through + # without removal of \ escapes. + if test -n "${ZSH_VERSION+set}" ; then + setopt NO_GLOB_SUBST + fi + # Now quote all the things that may contain metacharacters while being + # careful not to overquote the AC_SUBSTed values. We take copies of the + # variables and quote the copies for generation of the libtool script. + for var in echo old_CC old_CFLAGS AR AR_FLAGS EGREP RANLIB LN_S LTCC NM \ + SED SHELL STRIP \ + libname_spec library_names_spec soname_spec extract_expsyms_cmds \ + old_striplib striplib file_magic_cmd finish_cmds finish_eval \ + deplibs_check_method reload_flag reload_cmds need_locks \ + lt_cv_sys_global_symbol_pipe lt_cv_sys_global_symbol_to_cdecl \ + lt_cv_sys_global_symbol_to_c_name_address \ + sys_lib_search_path_spec sys_lib_dlsearch_path_spec \ + old_postinstall_cmds old_postuninstall_cmds \ + compiler_RC \ + CC_RC \ + LD_RC \ + lt_prog_compiler_wl_RC \ + lt_prog_compiler_pic_RC \ + lt_prog_compiler_static_RC \ + lt_prog_compiler_no_builtin_flag_RC \ + export_dynamic_flag_spec_RC \ + thread_safe_flag_spec_RC \ + whole_archive_flag_spec_RC \ + enable_shared_with_static_runtimes_RC \ + old_archive_cmds_RC \ + old_archive_from_new_cmds_RC \ + predep_objects_RC \ + postdep_objects_RC \ + predeps_RC \ + postdeps_RC \ + compiler_lib_search_path_RC \ + archive_cmds_RC \ + archive_expsym_cmds_RC \ + postinstall_cmds_RC \ + postuninstall_cmds_RC \ + old_archive_from_expsyms_cmds_RC \ + allow_undefined_flag_RC \ + no_undefined_flag_RC \ + export_symbols_cmds_RC \ + hardcode_libdir_flag_spec_RC \ + hardcode_libdir_flag_spec_ld_RC \ + hardcode_libdir_separator_RC \ + hardcode_automatic_RC \ + module_cmds_RC \ + module_expsym_cmds_RC \ + lt_cv_prog_compiler_c_o_RC \ + exclude_expsyms_RC \ + include_expsyms_RC; do + + case $var in + old_archive_cmds_RC | \ + old_archive_from_new_cmds_RC | \ + archive_cmds_RC | \ + archive_expsym_cmds_RC | \ + module_cmds_RC | \ + module_expsym_cmds_RC | \ + old_archive_from_expsyms_cmds_RC | \ + export_symbols_cmds_RC | \ + extract_expsyms_cmds | reload_cmds | finish_cmds | \ + postinstall_cmds | postuninstall_cmds | \ + old_postinstall_cmds | old_postuninstall_cmds | \ + sys_lib_search_path_spec | sys_lib_dlsearch_path_spec) + # Double-quote double-evaled strings. + eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$double_quote_subst\" -e \"\$sed_quote_subst\" -e \"\$delay_variable_subst\"\`\\\"" + ;; + *) + eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$sed_quote_subst\"\`\\\"" + ;; + esac + done + + case $lt_echo in + *'\$0 --fallback-echo"') + lt_echo=`$echo "X$lt_echo" | $Xsed -e 's/\\\\\\\$0 --fallback-echo"$/$0 --fallback-echo"/'` + ;; + esac + +cfgfile="$ofile" + + cat <<__EOF__ >> "$cfgfile" +# ### BEGIN LIBTOOL TAG CONFIG: $tagname + +# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`: + +# Shell to use when invoking shell scripts. +SHELL=$lt_SHELL + +# Whether or not to build shared libraries. +build_libtool_libs=$enable_shared + +# Whether or not to build static libraries. +build_old_libs=$enable_static + +# Whether or not to add -lc for building shared libraries. +build_libtool_need_lc=$archive_cmds_need_lc_RC + +# Whether or not to disallow shared libs when runtime libs are static +allow_libtool_libs_with_static_runtimes=$enable_shared_with_static_runtimes_RC + +# Whether or not to optimize for fast installation. +fast_install=$enable_fast_install + +# The host system. +host_alias=$host_alias +host=$host + +# An echo program that does not interpret backslashes. +echo=$lt_echo + +# The archiver. +AR=$lt_AR +AR_FLAGS=$lt_AR_FLAGS + +# A C compiler. +LTCC=$lt_LTCC + +# A language-specific compiler. +CC=$lt_compiler_RC + +# Is the compiler the GNU C compiler? +with_gcc=$GCC_RC + +# An ERE matcher. +EGREP=$lt_EGREP + +# The linker used to build libraries. +LD=$lt_LD_RC + +# Whether we need hard or soft links. +LN_S=$lt_LN_S + +# A BSD-compatible nm program. +NM=$lt_NM + +# A symbol stripping program +STRIP=$lt_STRIP + +# Used to examine libraries when file_magic_cmd begins "file" +MAGIC_CMD=$MAGIC_CMD + +# Used on cygwin: DLL creation program. +DLLTOOL="$DLLTOOL" + +# Used on cygwin: object dumper. +OBJDUMP="$OBJDUMP" + +# Used on cygwin: assembler. +AS="$AS" + +# The name of the directory that contains temporary libtool files. +objdir=$objdir + +# How to create reloadable object files. +reload_flag=$lt_reload_flag +reload_cmds=$lt_reload_cmds + +# How to pass a linker flag through the compiler. +wl=$lt_lt_prog_compiler_wl_RC + +# Object file suffix (normally "o"). +objext="$ac_objext" + +# Old archive suffix (normally "a"). +libext="$libext" + +# Shared library suffix (normally ".so"). +shrext='$shrext' + +# Executable file suffix (normally ""). +exeext="$exeext" + +# Additional compiler flags for building library objects. +pic_flag=$lt_lt_prog_compiler_pic_RC +pic_mode=$pic_mode + +# What is the maximum length of a command? +max_cmd_len=$lt_cv_sys_max_cmd_len + +# Does compiler simultaneously support -c and -o options? +compiler_c_o=$lt_lt_cv_prog_compiler_c_o_RC + +# Must we lock files when doing compilation ? +need_locks=$lt_need_locks + +# Do we need the lib prefix for modules? +need_lib_prefix=$need_lib_prefix + +# Do we need a version for libraries? +need_version=$need_version + +# Whether dlopen is supported. +dlopen_support=$enable_dlopen + +# Whether dlopen of programs is supported. +dlopen_self=$enable_dlopen_self + +# Whether dlopen of statically linked programs is supported. +dlopen_self_static=$enable_dlopen_self_static + +# Compiler flag to prevent dynamic linking. +link_static_flag=$lt_lt_prog_compiler_static_RC + +# Compiler flag to turn off builtin functions. +no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag_RC + +# Compiler flag to allow reflexive dlopens. +export_dynamic_flag_spec=$lt_export_dynamic_flag_spec_RC + +# Compiler flag to generate shared objects directly from archives. +whole_archive_flag_spec=$lt_whole_archive_flag_spec_RC + +# Compiler flag to generate thread-safe objects. +thread_safe_flag_spec=$lt_thread_safe_flag_spec_RC + +# Library versioning type. +version_type=$version_type + +# Format of library name prefix. +libname_spec=$lt_libname_spec + +# List of archive names. First name is the real one, the rest are links. +# The last name is the one that the linker finds with -lNAME. +library_names_spec=$lt_library_names_spec + +# The coded name of the library, if different from the real name. +soname_spec=$lt_soname_spec + +# Commands used to build and install an old-style archive. +RANLIB=$lt_RANLIB +old_archive_cmds=$lt_old_archive_cmds_RC +old_postinstall_cmds=$lt_old_postinstall_cmds +old_postuninstall_cmds=$lt_old_postuninstall_cmds + +# Create an old-style archive from a shared archive. +old_archive_from_new_cmds=$lt_old_archive_from_new_cmds_RC + +# Create a temporary old-style archive to link instead of a shared archive. +old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds_RC + +# Commands used to build and install a shared archive. +archive_cmds=$lt_archive_cmds_RC +archive_expsym_cmds=$lt_archive_expsym_cmds_RC +postinstall_cmds=$lt_postinstall_cmds +postuninstall_cmds=$lt_postuninstall_cmds + +# Commands used to build a loadable module (assumed same as above if empty) +module_cmds=$lt_module_cmds_RC +module_expsym_cmds=$lt_module_expsym_cmds_RC + +# Commands to strip libraries. +old_striplib=$lt_old_striplib +striplib=$lt_striplib + +# Dependencies to place before the objects being linked to create a +# shared library. +predep_objects=$lt_predep_objects_RC + +# Dependencies to place after the objects being linked to create a +# shared library. +postdep_objects=$lt_postdep_objects_RC + +# Dependencies to place before the objects being linked to create a +# shared library. +predeps=$lt_predeps_RC + +# Dependencies to place after the objects being linked to create a +# shared library. +postdeps=$lt_postdeps_RC + +# The library search path used internally by the compiler when linking +# a shared library. +compiler_lib_search_path=$lt_compiler_lib_search_path_RC + +# Method to check whether dependent libraries are shared objects. +deplibs_check_method=$lt_deplibs_check_method + +# Command to use when deplibs_check_method == file_magic. +file_magic_cmd=$lt_file_magic_cmd + +# Flag that allows shared libraries with undefined symbols to be built. +allow_undefined_flag=$lt_allow_undefined_flag_RC + +# Flag that forces no undefined symbols. +no_undefined_flag=$lt_no_undefined_flag_RC + +# Commands used to finish a libtool library installation in a directory. +finish_cmds=$lt_finish_cmds + +# Same as above, but a single script fragment to be evaled but not shown. +finish_eval=$lt_finish_eval + +# Take the output of nm and produce a listing of raw symbols and C names. +global_symbol_pipe=$lt_lt_cv_sys_global_symbol_pipe + +# Transform the output of nm in a proper C declaration +global_symbol_to_cdecl=$lt_lt_cv_sys_global_symbol_to_cdecl + +# Transform the output of nm in a C name address pair +global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address + +# This is the shared library runtime path variable. +runpath_var=$runpath_var + +# This is the shared library path variable. +shlibpath_var=$shlibpath_var + +# Is shlibpath searched before the hard-coded library search path? +shlibpath_overrides_runpath=$shlibpath_overrides_runpath + +# How to hardcode a shared library path into an executable. +hardcode_action=$hardcode_action_RC + +# Whether we should hardcode library paths into libraries. +hardcode_into_libs=$hardcode_into_libs + +# Flag to hardcode \$libdir into a binary during linking. +# This must work even if \$libdir does not exist. +hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec_RC + +# If ld is used when linking, flag to hardcode \$libdir into +# a binary during linking. This must work even if \$libdir does +# not exist. +hardcode_libdir_flag_spec_ld=$lt_hardcode_libdir_flag_spec_ld_RC + +# Whether we need a single -rpath flag with a separated argument. +hardcode_libdir_separator=$lt_hardcode_libdir_separator_RC + +# Set to yes if using DIR/libNAME${shared_ext} during linking hardcodes DIR into the +# resulting binary. +hardcode_direct=$hardcode_direct_RC + +# Set to yes if using the -LDIR flag during linking hardcodes DIR into the +# resulting binary. +hardcode_minus_L=$hardcode_minus_L_RC + +# Set to yes if using SHLIBPATH_VAR=DIR during linking hardcodes DIR into +# the resulting binary. +hardcode_shlibpath_var=$hardcode_shlibpath_var_RC + +# Set to yes if building a shared library automatically hardcodes DIR into the library +# and all subsequent libraries and executables linked against it. +hardcode_automatic=$hardcode_automatic_RC + +# Variables whose values should be saved in libtool wrapper scripts and +# restored at relink time. +variables_saved_for_relink="$variables_saved_for_relink" + +# Whether libtool must link a program against all its dependency libraries. +link_all_deplibs=$link_all_deplibs_RC + +# Compile-time system search path for libraries +sys_lib_search_path_spec=$lt_sys_lib_search_path_spec + +# Run-time system search path for libraries +sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec + +# Fix the shell variable \$srcfile for the compiler. +fix_srcfile_path="$fix_srcfile_path_RC" + +# Set to yes if exported symbols are required. +always_export_symbols=$always_export_symbols_RC + +# The commands to list exported symbols. +export_symbols_cmds=$lt_export_symbols_cmds_RC + +# The commands to extract the exported symbol list from a shared archive. +extract_expsyms_cmds=$lt_extract_expsyms_cmds + +# Symbols that should not be listed in the preloaded symbols. +exclude_expsyms=$lt_exclude_expsyms_RC + +# Symbols that must always be exported. +include_expsyms=$lt_include_expsyms_RC + +# ### END LIBTOOL TAG CONFIG: $tagname + +__EOF__ + + +else + # If there is no Makefile yet, we rely on a make rule to execute + # `config.status --recheck' to rerun these tests and create the + # libtool script then. + ltmain_in=`echo $ltmain | sed -e 's/\.sh$/.in/'` + if test -f "$ltmain_in"; then + test -f Makefile && make "$ltmain" + fi +fi + + +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu + +CC="$lt_save_CC" + + ;; + + *) + as_fn_error $? "Unsupported tag name: $tagname" "$LINENO" 5 + ;; + esac + + # Append the new tag name to the list of available tags. + if test -n "$tagname" ; then + available_tags="$available_tags $tagname" + fi + fi + done + IFS="$lt_save_ifs" + + # Now substitute the updated list of available tags. + if eval "sed -e 's/^available_tags=.*\$/available_tags=\"$available_tags\"/' \"$ofile\" > \"${ofile}T\""; then + mv "${ofile}T" "$ofile" + chmod +x "$ofile" + else + rm -f "${ofile}T" + as_fn_error $? "unable to update list of available tagged configurations." "$LINENO" 5 + fi +fi + + + +# This can be used to rebuild libtool when needed +LIBTOOL_DEPS="$ac_aux_dir/ltmain.sh" + +# Always use our own libtool. +LIBTOOL='$(SHELL) $(top_builddir)/libtool' + +# Prevent multiple expansion + + + + + + + + + + + + + + + + + + + + + + + + +arch="" +debug="" +optimize="" +profile="" + +set -- $CFLAGS +CFLAGS="" + +if test "$GCC" = yes +then + CFLAGS="-Wall" +fi + +while test $# -gt 0 +do + case "$1" in + -Wall) + if test "$GCC" = yes + then + : + else + CFLAGS="$CFLAGS $1" + fi + shift + ;; + -g) + debug="-g" + shift + ;; + -mno-cygwin) + shift + ;; + -m*) + arch="$arch $1" + shift + ;; + -fomit-frame-pointer) + shift + ;; + -O*|-f*) + optimize="$1" + shift + ;; + *) + CFLAGS="$CFLAGS $1" + shift + ;; + esac +done + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5 +$as_echo_n "checking for ANSI C header files... " >&6; } +if ${ac_cv_header_stdc+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +#include +#include +#include + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_cv_header_stdc=yes +else + ac_cv_header_stdc=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + +if test $ac_cv_header_stdc = yes; then + # SunOS 4.x string.h does not declare mem*, contrary to ANSI. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "memchr" >/dev/null 2>&1; then : + +else + ac_cv_header_stdc=no +fi +rm -f conftest* + +fi + +if test $ac_cv_header_stdc = yes; then + # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "free" >/dev/null 2>&1; then : + +else + ac_cv_header_stdc=no +fi +rm -f conftest* + +fi + +if test $ac_cv_header_stdc = yes; then + # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi. + if test "$cross_compiling" = yes; then : + : +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +#include +#if ((' ' & 0x0FF) == 0x020) +# define ISLOWER(c) ('a' <= (c) && (c) <= 'z') +# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) +#else +# define ISLOWER(c) \ + (('a' <= (c) && (c) <= 'i') \ + || ('j' <= (c) && (c) <= 'r') \ + || ('s' <= (c) && (c) <= 'z')) +# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c)) +#endif + +#define XOR(e, f) (((e) && !(f)) || (!(e) && (f))) +int +main () +{ + int i; + for (i = 0; i < 256; i++) + if (XOR (islower (i), ISLOWER (i)) + || toupper (i) != TOUPPER (i)) + return 2; + return 0; +} +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + +else + ac_cv_header_stdc=no +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext +fi + +fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5 +$as_echo "$ac_cv_header_stdc" >&6; } +if test $ac_cv_header_stdc = yes; then + +$as_echo "@%:@define STDC_HEADERS 1" >>confdefs.h + +fi + +for ac_header in assert.h unistd.h +do : + as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` +ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default" +if eval test \"x\$"$as_ac_Header"\" = x"yes"; then : + cat >>confdefs.h <<_ACEOF +@%:@define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 +_ACEOF + +fi + +done + + +ac_fn_c_check_header_mongrel "$LINENO" "zlib.h" "ac_cv_header_zlib_h" "$ac_includes_default" +if test "x$ac_cv_header_zlib_h" = xyes; then : + +else + + as_fn_error $? "zlib.h was not found +*** You must first install zlib (libz) before you can build this package. +*** If zlib is already installed, you may need to use the CPPFLAGS +*** environment variable to specify its installed location, e.g. -I

    ." "$LINENO" 5 + +fi + + + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for an ANSI C-conforming const" >&5 +$as_echo_n "checking for an ANSI C-conforming const... " >&6; } +if ${ac_cv_c_const+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ +/* FIXME: Include the comments suggested by Paul. */ +#ifndef __cplusplus + /* Ultrix mips cc rejects this. */ + typedef int charset[2]; + const charset cs; + /* SunOS 4.1.1 cc rejects this. */ + char const *const *pcpcc; + char **ppc; + /* NEC SVR4.0.2 mips cc rejects this. */ + struct point {int x, y;}; + static struct point const zero = {0,0}; + /* AIX XL C 1.02.0.0 rejects this. + It does not let you subtract one const X* pointer from another in + an arm of an if-expression whose if-part is not a constant + expression */ + const char *g = "string"; + pcpcc = &g + (g ? g-g : 0); + /* HPUX 7.0 cc rejects these. */ + ++pcpcc; + ppc = (char**) pcpcc; + pcpcc = (char const *const *) ppc; + { /* SCO 3.2v4 cc rejects this. */ + char *t; + char const *s = 0 ? (char *) 0 : (char const *) 0; + + *t++ = 0; + if (s) return 0; + } + { /* Someone thinks the Sun supposedly-ANSI compiler will reject this. */ + int x[] = {25, 17}; + const int *foo = &x[0]; + ++foo; + } + { /* Sun SC1.0 ANSI compiler rejects this -- but not the above. */ + typedef const int *iptr; + iptr p = 0; + ++p; + } + { /* AIX XL C 1.02.0.0 rejects this saying + "k.c", line 2.27: 1506-025 (S) Operand must be a modifiable lvalue. */ + struct s { int j; const int *ap[3]; }; + struct s *b; b->j = 5; + } + { /* ULTRIX-32 V3.1 (Rev 9) vcc rejects this */ + const int foo = 10; + if (!foo) return 0; + } + return !cs[0] && !zero.x; +#endif + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_cv_c_const=yes +else + ac_cv_c_const=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_const" >&5 +$as_echo "$ac_cv_c_const" >&6; } +if test $ac_cv_c_const = no; then + +$as_echo "@%:@define const /**/" >>confdefs.h + +fi + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for inline" >&5 +$as_echo_n "checking for inline... " >&6; } +if ${ac_cv_c_inline+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_cv_c_inline=no +for ac_kw in inline __inline__ __inline; do + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#ifndef __cplusplus +typedef int foo_t; +static $ac_kw foo_t static_foo () {return 0; } +$ac_kw foo_t foo () {return 0; } +#endif + +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_cv_c_inline=$ac_kw +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + test "$ac_cv_c_inline" != no && break +done + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_inline" >&5 +$as_echo "$ac_cv_c_inline" >&6; } + +case $ac_cv_c_inline in + inline | yes) ;; + *) + case $ac_cv_c_inline in + no) ac_val=;; + *) ac_val=$ac_cv_c_inline;; + esac + cat >>confdefs.h <<_ACEOF +#ifndef __cplusplus +#define inline $ac_val +#endif +_ACEOF + ;; +esac + + + +for ac_func in ftruncate +do : + ac_fn_c_check_func "$LINENO" "ftruncate" "ac_cv_func_ftruncate" +if test "x$ac_cv_func_ftruncate" = xyes; then : + cat >>confdefs.h <<_ACEOF +@%:@define HAVE_FTRUNCATE 1 +_ACEOF + +fi +done + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for compress2 in -lz" >&5 +$as_echo_n "checking for compress2 in -lz... " >&6; } +if ${ac_cv_lib_z_compress2+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-lz $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char compress2 (); +int +main () +{ +return compress2 (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_z_compress2=yes +else + ac_cv_lib_z_compress2=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_z_compress2" >&5 +$as_echo "$ac_cv_lib_z_compress2" >&6; } +if test "x$ac_cv_lib_z_compress2" = xyes; then : + cat >>confdefs.h <<_ACEOF +@%:@define HAVE_LIBZ 1 +_ACEOF + + LIBS="-lz $LIBS" + +else + + as_fn_error $? "libz was not found +*** You must first install zlib (libz) before you can build this package. +*** If zlib is already installed, you may need to use the LDFLAGS +*** environment variable to specify its installed location, e.g. -L." "$LINENO" 5 + +fi + + + +cat >confcache <<\_ACEOF +# This file is a shell script that caches the results of configure +# tests run on this system so they can be shared between configure +# scripts and configure runs, see configure's option --config-cache. +# It is not useful on other systems. If it contains results you don't +# want to keep, you may remove or edit it. +# +# config.status only pays attention to the cache file if you give it +# the --recheck option to rerun configure. +# +# `ac_cv_env_foo' variables (set or unset) will be overridden when +# loading this file, other *unset* `ac_cv_foo' will be assigned the +# following values. + +_ACEOF + +# The following way of writing the cache mishandles newlines in values, +# but we know of no workaround that is simple, portable, and efficient. +# So, we kill variables containing newlines. +# Ultrix sh set writes to stderr and can't be redirected directly, +# and sets the high bit in the cache file unless we assign to the vars. +( + for ac_var in `(set) 2>&1 | sed -n 's/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'`; do + eval ac_val=\$$ac_var + case $ac_val in #( + *${as_nl}*) + case $ac_var in #( + *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5 +$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;; + esac + case $ac_var in #( + _ | IFS | as_nl) ;; #( + BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #( + *) { eval $ac_var=; unset $ac_var;} ;; + esac ;; + esac + done + + (set) 2>&1 | + case $as_nl`(ac_space=' '; set) 2>&1` in #( + *${as_nl}ac_space=\ *) + # `set' does not quote correctly, so add quotes: double-quote + # substitution turns \\\\ into \\, and sed turns \\ into \. + sed -n \ + "s/'/'\\\\''/g; + s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p" + ;; #( + *) + # `set' quotes correctly as required by POSIX, so do not add quotes. + sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p" + ;; + esac | + sort +) | + sed ' + /^ac_cv_env_/b end + t clear + :clear + s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/ + t end + s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/ + :end' >>confcache +if diff "$cache_file" confcache >/dev/null 2>&1; then :; else + if test -w "$cache_file"; then + if test "x$cache_file" != "x/dev/null"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5 +$as_echo "$as_me: updating cache $cache_file" >&6;} + if test ! -f "$cache_file" || test -h "$cache_file"; then + cat confcache >"$cache_file" + else + case $cache_file in #( + */* | ?:*) + mv -f confcache "$cache_file"$$ && + mv -f "$cache_file"$$ "$cache_file" ;; #( + *) + mv -f confcache "$cache_file" ;; + esac + fi + fi + else + { $as_echo "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5 +$as_echo "$as_me: not updating unwritable cache $cache_file" >&6;} + fi +fi +rm -f confcache + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable profiling" >&5 +$as_echo_n "checking whether to enable profiling... " >&6; } +@%:@ Check whether --enable-profiling was given. +if test "${enable_profiling+set}" = set; then : + enableval=$enable_profiling; + case "$enableval" in + yes) profile="-pg" ;; + esac + +fi + +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: ${enable_profiling-no}" >&5 +$as_echo "${enable_profiling-no}" >&6; } + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable debugging" >&5 +$as_echo_n "checking whether to enable debugging... " >&6; } +@%:@ Check whether --enable-debugging was given. +if test "${enable_debugging+set}" = set; then : + enableval=$enable_debugging; + case "$enableval" in + yes) + +$as_echo "@%:@define DEBUG 1" >>confdefs.h + + optimize="" + ;; + no) + if test -n "$profile" + then + as_fn_error $? "--enable-profiling and --disable-debugging are incompatible" "$LINENO" 5 + fi + + +$as_echo "@%:@define NDEBUG 1" >>confdefs.h + + debug="" + if test "$GCC" = yes + then + optimize="$optimize -fomit-frame-pointer" + fi + ;; + esac + +fi + +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: ${enable_debugging-default}" >&5 +$as_echo "${enable_debugging-default}" >&6; } + + +if test ${enable_debugging-default} = yes; then + DEBUG_TRUE= + DEBUG_FALSE='#' +else + DEBUG_TRUE='#' + DEBUG_FALSE= +fi + + + +test -n "$arch" && CFLAGS="$CFLAGS $arch" +test -n "$debug" && CFLAGS="$CFLAGS $debug" +test -n "$optimize" && CFLAGS="$CFLAGS $optimize" +test -n "$profile" && CFLAGS="$CFLAGS $profile" LDFLAGS="$LDFLAGS $profile" + + +ac_config_files="$ac_config_files Makefile msvc++/Makefile libid3tag.list" + +cat >confcache <<\_ACEOF +# This file is a shell script that caches the results of configure +# tests run on this system so they can be shared between configure +# scripts and configure runs, see configure's option --config-cache. +# It is not useful on other systems. If it contains results you don't +# want to keep, you may remove or edit it. +# +# config.status only pays attention to the cache file if you give it +# the --recheck option to rerun configure. +# +# `ac_cv_env_foo' variables (set or unset) will be overridden when +# loading this file, other *unset* `ac_cv_foo' will be assigned the +# following values. + +_ACEOF + +# The following way of writing the cache mishandles newlines in values, +# but we know of no workaround that is simple, portable, and efficient. +# So, we kill variables containing newlines. +# Ultrix sh set writes to stderr and can't be redirected directly, +# and sets the high bit in the cache file unless we assign to the vars. +( + for ac_var in `(set) 2>&1 | sed -n 's/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'`; do + eval ac_val=\$$ac_var + case $ac_val in #( + *${as_nl}*) + case $ac_var in #( + *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5 +$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;; + esac + case $ac_var in #( + _ | IFS | as_nl) ;; #( + BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #( + *) { eval $ac_var=; unset $ac_var;} ;; + esac ;; + esac + done + + (set) 2>&1 | + case $as_nl`(ac_space=' '; set) 2>&1` in #( + *${as_nl}ac_space=\ *) + # `set' does not quote correctly, so add quotes: double-quote + # substitution turns \\\\ into \\, and sed turns \\ into \. + sed -n \ + "s/'/'\\\\''/g; + s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p" + ;; #( + *) + # `set' quotes correctly as required by POSIX, so do not add quotes. + sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p" + ;; + esac | + sort +) | + sed ' + /^ac_cv_env_/b end + t clear + :clear + s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/ + t end + s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/ + :end' >>confcache +if diff "$cache_file" confcache >/dev/null 2>&1; then :; else + if test -w "$cache_file"; then + if test "x$cache_file" != "x/dev/null"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5 +$as_echo "$as_me: updating cache $cache_file" >&6;} + if test ! -f "$cache_file" || test -h "$cache_file"; then + cat confcache >"$cache_file" + else + case $cache_file in #( + */* | ?:*) + mv -f confcache "$cache_file"$$ && + mv -f "$cache_file"$$ "$cache_file" ;; #( + *) + mv -f confcache "$cache_file" ;; + esac + fi + fi + else + { $as_echo "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5 +$as_echo "$as_me: not updating unwritable cache $cache_file" >&6;} + fi +fi +rm -f confcache + +test "x$prefix" = xNONE && prefix=$ac_default_prefix +# Let make expand exec_prefix. +test "x$exec_prefix" = xNONE && exec_prefix='${prefix}' + +DEFS=-DHAVE_CONFIG_H + +ac_libobjs= +ac_ltlibobjs= +U= +for ac_i in : $LIB@&t@OBJS; do test "x$ac_i" = x: && continue + # 1. Remove the extension, and $U if already installed. + ac_script='s/\$U\././;s/\.o$//;s/\.obj$//' + ac_i=`$as_echo "$ac_i" | sed "$ac_script"` + # 2. Prepend LIBOBJDIR. When used with automake>=1.10 LIBOBJDIR + # will be set to the directory where LIBOBJS objects are built. + as_fn_append ac_libobjs " \${LIBOBJDIR}$ac_i\$U.$ac_objext" + as_fn_append ac_ltlibobjs " \${LIBOBJDIR}$ac_i"'$U.lo' +done +LIB@&t@OBJS=$ac_libobjs + +LTLIBOBJS=$ac_ltlibobjs + + +if test -z "${AMDEP_TRUE}" && test -z "${AMDEP_FALSE}"; then + as_fn_error $? "conditional \"AMDEP\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then + as_fn_error $? "conditional \"am__fastdepCC\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${am__fastdepCXX_TRUE}" && test -z "${am__fastdepCXX_FALSE}"; then + as_fn_error $? "conditional \"am__fastdepCXX\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${DEBUG_TRUE}" && test -z "${DEBUG_FALSE}"; then + as_fn_error $? "conditional \"DEBUG\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi + +: "${CONFIG_STATUS=./config.status}" +ac_write_fail=0 +ac_clean_files_save=$ac_clean_files +ac_clean_files="$ac_clean_files $CONFIG_STATUS" +{ $as_echo "$as_me:${as_lineno-$LINENO}: creating $CONFIG_STATUS" >&5 +$as_echo "$as_me: creating $CONFIG_STATUS" >&6;} +as_write_fail=0 +cat >$CONFIG_STATUS <<_ASEOF || as_write_fail=1 +#! $SHELL +# Generated by $as_me. +# Run this file to recreate the current configuration. +# Compiler output produced by configure, useful for debugging +# configure, is in config.log if it exists. + +debug=false +ac_cs_recheck=false +ac_cs_silent=false + +SHELL=\${CONFIG_SHELL-$SHELL} +export SHELL +_ASEOF +cat >>$CONFIG_STATUS <<\_ASEOF || as_write_fail=1 +## -------------------- ## +## M4sh Initialization. ## +## -------------------- ## + +# Be more Bourne compatible +DUALCASE=1; export DUALCASE # for MKS sh +if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then : + emulate sh + NULLCMD=: + # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which + # is contrary to our usage. Disable this feature. + alias -g '${1+"$@"}'='"$@"' + setopt NO_GLOB_SUBST +else + case `(set -o) 2>/dev/null` in @%:@( + *posix*) : + set -o posix ;; @%:@( + *) : + ;; +esac +fi + + +as_nl=' +' +export as_nl +# Printing a long string crashes Solaris 7 /usr/bin/printf. +as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' +as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo +as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo +# Prefer a ksh shell builtin over an external printf program on Solaris, +# but without wasting forks for bash or zsh. +if test -z "$BASH_VERSION$ZSH_VERSION" \ + && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then + as_echo='print -r --' + as_echo_n='print -rn --' +elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then + as_echo='printf %s\n' + as_echo_n='printf %s' +else + if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then + as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"' + as_echo_n='/usr/ucb/echo -n' + else + as_echo_body='eval expr "X$1" : "X\\(.*\\)"' + as_echo_n_body='eval + arg=$1; + case $arg in @%:@( + *"$as_nl"*) + expr "X$arg" : "X\\(.*\\)$as_nl"; + arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;; + esac; + expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl" + ' + export as_echo_n_body + as_echo_n='sh -c $as_echo_n_body as_echo' + fi + export as_echo_body + as_echo='sh -c $as_echo_body as_echo' +fi + +# The user is always right. +if test "${PATH_SEPARATOR+set}" != set; then + PATH_SEPARATOR=: + (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { + (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || + PATH_SEPARATOR=';' + } +fi + + +# IFS +# We need space, tab and new line, in precisely that order. Quoting is +# there to prevent editors from complaining about space-tab. +# (If _AS_PATH_WALK were called with IFS unset, it would disable word +# splitting by setting IFS to empty value.) +IFS=" "" $as_nl" + +# Find who we are. Look in the path if we contain no directory separator. +as_myself= +case $0 in @%:@(( + *[\\/]* ) as_myself=$0 ;; + *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break + done +IFS=$as_save_IFS + + ;; +esac +# We did not find ourselves, most probably we were run as `sh COMMAND' +# in which case we are not to be found in the path. +if test "x$as_myself" = x; then + as_myself=$0 +fi +if test ! -f "$as_myself"; then + $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 + exit 1 +fi + +# Unset variables that we do not need and which cause bugs (e.g. in +# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1" +# suppresses any "Segmentation fault" message there. '((' could +# trigger a bug in pdksh 5.2.14. +for as_var in BASH_ENV ENV MAIL MAILPATH +do eval test x\${$as_var+set} = xset \ + && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : +done +PS1='$ ' +PS2='> ' +PS4='+ ' + +# NLS nuisances. +LC_ALL=C +export LC_ALL +LANGUAGE=C +export LANGUAGE + +# CDPATH. +(unset CDPATH) >/dev/null 2>&1 && unset CDPATH + + +@%:@ as_fn_error STATUS ERROR [LINENO LOG_FD] +@%:@ ---------------------------------------- +@%:@ Output "`basename @S|@0`: error: ERROR" to stderr. If LINENO and LOG_FD are +@%:@ provided, also output the error to LOG_FD, referencing LINENO. Then exit the +@%:@ script with STATUS, using 1 if that was 0. +as_fn_error () +{ + as_status=$1; test $as_status -eq 0 && as_status=1 + if test "$4"; then + as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4 + fi + $as_echo "$as_me: error: $2" >&2 + as_fn_exit $as_status +} @%:@ as_fn_error + + +@%:@ as_fn_set_status STATUS +@%:@ ----------------------- +@%:@ Set @S|@? to STATUS, without forking. +as_fn_set_status () +{ + return $1 +} @%:@ as_fn_set_status + +@%:@ as_fn_exit STATUS +@%:@ ----------------- +@%:@ Exit the shell with STATUS, even in a "trap 0" or "set -e" context. +as_fn_exit () +{ + set +e + as_fn_set_status $1 + exit $1 +} @%:@ as_fn_exit + +@%:@ as_fn_unset VAR +@%:@ --------------- +@%:@ Portably unset VAR. +as_fn_unset () +{ + { eval $1=; unset $1;} +} +as_unset=as_fn_unset +@%:@ as_fn_append VAR VALUE +@%:@ ---------------------- +@%:@ Append the text in VALUE to the end of the definition contained in VAR. Take +@%:@ advantage of any shell optimizations that allow amortized linear growth over +@%:@ repeated appends, instead of the typical quadratic growth present in naive +@%:@ implementations. +if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then : + eval 'as_fn_append () + { + eval $1+=\$2 + }' +else + as_fn_append () + { + eval $1=\$$1\$2 + } +fi # as_fn_append + +@%:@ as_fn_arith ARG... +@%:@ ------------------ +@%:@ Perform arithmetic evaluation on the ARGs, and store the result in the +@%:@ global @S|@as_val. Take advantage of shells that can avoid forks. The arguments +@%:@ must be portable across @S|@(()) and expr. +if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then : + eval 'as_fn_arith () + { + as_val=$(( $* )) + }' +else + as_fn_arith () + { + as_val=`expr "$@" || test $? -eq 1` + } +fi # as_fn_arith + + +if expr a : '\(a\)' >/dev/null 2>&1 && + test "X`expr 00001 : '.*\(...\)'`" = X001; then + as_expr=expr +else + as_expr=false +fi + +if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then + as_basename=basename +else + as_basename=false +fi + +if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then + as_dirname=dirname +else + as_dirname=false +fi + +as_me=`$as_basename -- "$0" || +$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ + X"$0" : 'X\(//\)$' \| \ + X"$0" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X/"$0" | + sed '/^.*\/\([^/][^/]*\)\/*$/{ + s//\1/ + q + } + /^X\/\(\/\/\)$/{ + s//\1/ + q + } + /^X\/\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + +# Avoid depending upon Character Ranges. +as_cr_letters='abcdefghijklmnopqrstuvwxyz' +as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' +as_cr_Letters=$as_cr_letters$as_cr_LETTERS +as_cr_digits='0123456789' +as_cr_alnum=$as_cr_Letters$as_cr_digits + +ECHO_C= ECHO_N= ECHO_T= +case `echo -n x` in @%:@((((( +-n*) + case `echo 'xy\c'` in + *c*) ECHO_T=' ';; # ECHO_T is single tab character. + xy) ECHO_C='\c';; + *) echo `echo ksh88 bug on AIX 6.1` > /dev/null + ECHO_T=' ';; + esac;; +*) + ECHO_N='-n';; +esac + +rm -f conf$$ conf$$.exe conf$$.file +if test -d conf$$.dir; then + rm -f conf$$.dir/conf$$.file +else + rm -f conf$$.dir + mkdir conf$$.dir 2>/dev/null +fi +if (echo >conf$$.file) 2>/dev/null; then + if ln -s conf$$.file conf$$ 2>/dev/null; then + as_ln_s='ln -s' + # ... but there are two gotchas: + # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. + # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. + # In both cases, we have to default to `cp -p'. + ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || + as_ln_s='cp -p' + elif ln conf$$.file conf$$ 2>/dev/null; then + as_ln_s=ln + else + as_ln_s='cp -p' + fi +else + as_ln_s='cp -p' +fi +rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file +rmdir conf$$.dir 2>/dev/null + + +@%:@ as_fn_mkdir_p +@%:@ ------------- +@%:@ Create "@S|@as_dir" as a directory, including parents if necessary. +as_fn_mkdir_p () +{ + + case $as_dir in #( + -*) as_dir=./$as_dir;; + esac + test -d "$as_dir" || eval $as_mkdir_p || { + as_dirs= + while :; do + case $as_dir in #( + *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( + *) as_qdir=$as_dir;; + esac + as_dirs="'$as_qdir' $as_dirs" + as_dir=`$as_dirname -- "$as_dir" || +$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$as_dir" : 'X\(//\)[^/]' \| \ + X"$as_dir" : 'X\(//\)$' \| \ + X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X"$as_dir" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + test -d "$as_dir" && break + done + test -z "$as_dirs" || eval "mkdir $as_dirs" + } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir" + + +} @%:@ as_fn_mkdir_p +if mkdir -p . 2>/dev/null; then + as_mkdir_p='mkdir -p "$as_dir"' +else + test -d ./-p && rmdir ./-p + as_mkdir_p=false +fi + +if test -x / >/dev/null 2>&1; then + as_test_x='test -x' +else + if ls -dL / >/dev/null 2>&1; then + as_ls_L_option=L + else + as_ls_L_option= + fi + as_test_x=' + eval sh -c '\'' + if test -d "$1"; then + test -d "$1/."; + else + case $1 in @%:@( + -*)set "./$1";; + esac; + case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in @%:@(( + ???[sx]*):;;*)false;;esac;fi + '\'' sh + ' +fi +as_executable_p=$as_test_x + +# Sed expression to map a string onto a valid CPP name. +as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" + +# Sed expression to map a string onto a valid variable name. +as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" + + +exec 6>&1 +## ----------------------------------- ## +## Main body of $CONFIG_STATUS script. ## +## ----------------------------------- ## +_ASEOF +test $as_write_fail = 0 && chmod +x $CONFIG_STATUS || ac_write_fail=1 + +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 +# Save the log message, to keep $0 and so on meaningful, and to +# report actual input values of CONFIG_FILES etc. instead of their +# values after options handling. +ac_log=" +This file was extended by ID3 Tag $as_me 0.15.1b, which was +generated by GNU Autoconf 2.68. Invocation command line was + + CONFIG_FILES = $CONFIG_FILES + CONFIG_HEADERS = $CONFIG_HEADERS + CONFIG_LINKS = $CONFIG_LINKS + CONFIG_COMMANDS = $CONFIG_COMMANDS + $ $0 $@ + +on `(hostname || uname -n) 2>/dev/null | sed 1q` +" + +_ACEOF + +case $ac_config_files in *" +"*) set x $ac_config_files; shift; ac_config_files=$*;; +esac + +case $ac_config_headers in *" +"*) set x $ac_config_headers; shift; ac_config_headers=$*;; +esac + + +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 +# Files that config.status was made for. +config_files="$ac_config_files" +config_headers="$ac_config_headers" +config_commands="$ac_config_commands" + +_ACEOF + +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 +ac_cs_usage="\ +\`$as_me' instantiates files and other configuration actions +from templates according to the current configuration. Unless the files +and actions are specified as TAGs, all are instantiated by default. + +Usage: $0 [OPTION]... [TAG]... + + -h, --help print this help, then exit + -V, --version print version number and configuration settings, then exit + --config print configuration, then exit + -q, --quiet, --silent + do not print progress messages + -d, --debug don't remove temporary files + --recheck update $as_me by reconfiguring in the same conditions + --file=FILE[:TEMPLATE] + instantiate the configuration file FILE + --header=FILE[:TEMPLATE] + instantiate the configuration header FILE + +Configuration files: +$config_files + +Configuration headers: +$config_headers + +Configuration commands: +$config_commands + +Report bugs to ." + +_ACEOF +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 +ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" +ac_cs_version="\\ +ID3 Tag config.status 0.15.1b +configured by $0, generated by GNU Autoconf 2.68, + with options \\"\$ac_cs_config\\" + +Copyright (C) 2010 Free Software Foundation, Inc. +This config.status script is free software; the Free Software Foundation +gives unlimited permission to copy, distribute and modify it." + +ac_pwd='$ac_pwd' +srcdir='$srcdir' +INSTALL='$INSTALL' +AWK='$AWK' +test -n "\$AWK" || AWK=awk +_ACEOF + +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 +# The default lists apply if the user does not specify any file. +ac_need_defaults=: +while test $# != 0 +do + case $1 in + --*=?*) + ac_option=`expr "X$1" : 'X\([^=]*\)='` + ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'` + ac_shift=: + ;; + --*=) + ac_option=`expr "X$1" : 'X\([^=]*\)='` + ac_optarg= + ac_shift=: + ;; + *) + ac_option=$1 + ac_optarg=$2 + ac_shift=shift + ;; + esac + + case $ac_option in + # Handling of the options. + -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) + ac_cs_recheck=: ;; + --version | --versio | --versi | --vers | --ver | --ve | --v | -V ) + $as_echo "$ac_cs_version"; exit ;; + --config | --confi | --conf | --con | --co | --c ) + $as_echo "$ac_cs_config"; exit ;; + --debug | --debu | --deb | --de | --d | -d ) + debug=: ;; + --file | --fil | --fi | --f ) + $ac_shift + case $ac_optarg in + *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; + '') as_fn_error $? "missing file argument" ;; + esac + as_fn_append CONFIG_FILES " '$ac_optarg'" + ac_need_defaults=false;; + --header | --heade | --head | --hea ) + $ac_shift + case $ac_optarg in + *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; + esac + as_fn_append CONFIG_HEADERS " '$ac_optarg'" + ac_need_defaults=false;; + --he | --h) + # Conflict between --help and --header + as_fn_error $? "ambiguous option: \`$1' +Try \`$0 --help' for more information.";; + --help | --hel | -h ) + $as_echo "$ac_cs_usage"; exit ;; + -q | -quiet | --quiet | --quie | --qui | --qu | --q \ + | -silent | --silent | --silen | --sile | --sil | --si | --s) + ac_cs_silent=: ;; + + # This is an error. + -*) as_fn_error $? "unrecognized option: \`$1' +Try \`$0 --help' for more information." ;; + + *) as_fn_append ac_config_targets " $1" + ac_need_defaults=false ;; + + esac + shift +done + +ac_configure_extra_args= + +if $ac_cs_silent; then + exec 6>/dev/null + ac_configure_extra_args="$ac_configure_extra_args --silent" +fi + +_ACEOF +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 +if \$ac_cs_recheck; then + set X '$SHELL' '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion + shift + \$as_echo "running CONFIG_SHELL=$SHELL \$*" >&6 + CONFIG_SHELL='$SHELL' + export CONFIG_SHELL + exec "\$@" +fi + +_ACEOF +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 +exec 5>>config.log +{ + echo + sed 'h;s/./-/g;s/^.../@%:@@%:@ /;s/...$/ @%:@@%:@/;p;x;p;x' <<_ASBOX +@%:@@%:@ Running $as_me. @%:@@%:@ +_ASBOX + $as_echo "$ac_log" +} >&5 + +_ACEOF +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 +# +# INIT-COMMANDS +# +AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir" + +_ACEOF + +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 + +# Handling of arguments. +for ac_config_target in $ac_config_targets +do + case $ac_config_target in + "config.h") CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;; + "depfiles") CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;; + "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;; + "msvc++/Makefile") CONFIG_FILES="$CONFIG_FILES msvc++/Makefile" ;; + "libid3tag.list") CONFIG_FILES="$CONFIG_FILES libid3tag.list" ;; + + *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;; + esac +done + + +# If the user did not use the arguments to specify the items to instantiate, +# then the envvar interface is used. Set only those that are not. +# We use the long form for the default assignment because of an extremely +# bizarre bug on SunOS 4.1.3. +if $ac_need_defaults; then + test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files + test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers + test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands +fi + +# Have a temporary directory for convenience. Make it in the build tree +# simply because there is no reason against having it here, and in addition, +# creating and moving files from /tmp can sometimes cause problems. +# Hook for its removal unless debugging. +# Note that there is a small window in which the directory will not be cleaned: +# after its creation but before its name has been assigned to `$tmp'. +$debug || +{ + tmp= ac_tmp= + trap 'exit_status=$? + : "${ac_tmp:=$tmp}" + { test ! -d "$ac_tmp" || rm -fr "$ac_tmp"; } && exit $exit_status +' 0 + trap 'as_fn_exit 1' 1 2 13 15 +} +# Create a (secure) tmp directory for tmp files. + +{ + tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` && + test -d "$tmp" +} || +{ + tmp=./conf$$-$RANDOM + (umask 077 && mkdir "$tmp") +} || as_fn_error $? "cannot create a temporary directory in ." "$LINENO" 5 +ac_tmp=$tmp + +# Set up the scripts for CONFIG_FILES section. +# No need to generate them if there are no CONFIG_FILES. +# This happens for instance with `./config.status config.h'. +if test -n "$CONFIG_FILES"; then + + +ac_cr=`echo X | tr X '\015'` +# On cygwin, bash can eat \r inside `` if the user requested igncr. +# But we know of no other shell where ac_cr would be empty at this +# point, so we can use a bashism as a fallback. +if test "x$ac_cr" = x; then + eval ac_cr=\$\'\\r\' +fi +ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' /dev/null` +if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then + ac_cs_awk_cr='\\r' +else + ac_cs_awk_cr=$ac_cr +fi + +echo 'BEGIN {' >"$ac_tmp/subs1.awk" && +_ACEOF + + +{ + echo "cat >conf$$subs.awk <<_ACEOF" && + echo "$ac_subst_vars" | sed 's/.*/&!$&$ac_delim/' && + echo "_ACEOF" +} >conf$$subs.sh || + as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5 +ac_delim_num=`echo "$ac_subst_vars" | grep -c '^'` +ac_delim='%!_!# ' +for ac_last_try in false false false false false :; do + . ./conf$$subs.sh || + as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5 + + ac_delim_n=`sed -n "s/.*$ac_delim\$/X/p" conf$$subs.awk | grep -c X` + if test $ac_delim_n = $ac_delim_num; then + break + elif $ac_last_try; then + as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5 + else + ac_delim="$ac_delim!$ac_delim _$ac_delim!! " + fi +done +rm -f conf$$subs.sh + +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 +cat >>"\$ac_tmp/subs1.awk" <<\\_ACAWK && +_ACEOF +sed -n ' +h +s/^/S["/; s/!.*/"]=/ +p +g +s/^[^!]*!// +:repl +t repl +s/'"$ac_delim"'$// +t delim +:nl +h +s/\(.\{148\}\)..*/\1/ +t more1 +s/["\\]/\\&/g; s/^/"/; s/$/\\n"\\/ +p +n +b repl +:more1 +s/["\\]/\\&/g; s/^/"/; s/$/"\\/ +p +g +s/.\{148\}// +t nl +:delim +h +s/\(.\{148\}\)..*/\1/ +t more2 +s/["\\]/\\&/g; s/^/"/; s/$/"/ +p +b +:more2 +s/["\\]/\\&/g; s/^/"/; s/$/"\\/ +p +g +s/.\{148\}// +t delim +' >$CONFIG_STATUS || ac_write_fail=1 +rm -f conf$$subs.awk +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 +_ACAWK +cat >>"\$ac_tmp/subs1.awk" <<_ACAWK && + for (key in S) S_is_set[key] = 1 + FS = "" + +} +{ + line = $ 0 + nfields = split(line, field, "@") + substed = 0 + len = length(field[1]) + for (i = 2; i < nfields; i++) { + key = field[i] + keylen = length(key) + if (S_is_set[key]) { + value = S[key] + line = substr(line, 1, len) "" value "" substr(line, len + keylen + 3) + len += length(value) + length(field[++i]) + substed = 1 + } else + len += 1 + keylen + } + + print line +} + +_ACAWK +_ACEOF +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 +if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then + sed "s/$ac_cr\$//; s/$ac_cr/$ac_cs_awk_cr/g" +else + cat +fi < "$ac_tmp/subs1.awk" > "$ac_tmp/subs.awk" \ + || as_fn_error $? "could not setup config files machinery" "$LINENO" 5 +_ACEOF + +# VPATH may cause trouble with some makes, so we remove sole $(srcdir), +# ${srcdir} and @srcdir@ entries from VPATH if srcdir is ".", strip leading and +# trailing colons and then remove the whole line if VPATH becomes empty +# (actually we leave an empty line to preserve line numbers). +if test "x$srcdir" = x.; then + ac_vpsub='/^[ ]*VPATH[ ]*=[ ]*/{ +h +s/// +s/^/:/ +s/[ ]*$/:/ +s/:\$(srcdir):/:/g +s/:\${srcdir}:/:/g +s/:@srcdir@:/:/g +s/^:*// +s/:*$// +x +s/\(=[ ]*\).*/\1/ +G +s/\n// +s/^[^=]*=[ ]*$// +}' +fi + +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 +fi # test -n "$CONFIG_FILES" + +# Set up the scripts for CONFIG_HEADERS section. +# No need to generate them if there are no CONFIG_HEADERS. +# This happens for instance with `./config.status Makefile'. +if test -n "$CONFIG_HEADERS"; then +cat >"$ac_tmp/defines.awk" <<\_ACAWK || +BEGIN { +_ACEOF + +# Transform confdefs.h into an awk script `defines.awk', embedded as +# here-document in config.status, that substitutes the proper values into +# config.h.in to produce config.h. + +# Create a delimiter string that does not exist in confdefs.h, to ease +# handling of long lines. +ac_delim='%!_!# ' +for ac_last_try in false false :; do + ac_tt=`sed -n "/$ac_delim/p" confdefs.h` + if test -z "$ac_tt"; then + break + elif $ac_last_try; then + as_fn_error $? "could not make $CONFIG_HEADERS" "$LINENO" 5 + else + ac_delim="$ac_delim!$ac_delim _$ac_delim!! " + fi +done + +# For the awk script, D is an array of macro values keyed by name, +# likewise P contains macro parameters if any. Preserve backslash +# newline sequences. + +ac_word_re=[_$as_cr_Letters][_$as_cr_alnum]* +sed -n ' +s/.\{148\}/&'"$ac_delim"'/g +t rset +:rset +s/^[ ]*#[ ]*define[ ][ ]*/ / +t def +d +:def +s/\\$// +t bsnl +s/["\\]/\\&/g +s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\ +D["\1"]=" \3"/p +s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2"/p +d +:bsnl +s/["\\]/\\&/g +s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\ +D["\1"]=" \3\\\\\\n"\\/p +t cont +s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2\\\\\\n"\\/p +t cont +d +:cont +n +s/.\{148\}/&'"$ac_delim"'/g +t clear +:clear +s/\\$// +t bsnlc +s/["\\]/\\&/g; s/^/"/; s/$/"/p +d +:bsnlc +s/["\\]/\\&/g; s/^/"/; s/$/\\\\\\n"\\/p +b cont +' >$CONFIG_STATUS || ac_write_fail=1 + +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 + for (key in D) D_is_set[key] = 1 + FS = "" +} +/^[\t ]*#[\t ]*(define|undef)[\t ]+$ac_word_re([\t (]|\$)/ { + line = \$ 0 + split(line, arg, " ") + if (arg[1] == "#") { + defundef = arg[2] + mac1 = arg[3] + } else { + defundef = substr(arg[1], 2) + mac1 = arg[2] + } + split(mac1, mac2, "(") #) + macro = mac2[1] + prefix = substr(line, 1, index(line, defundef) - 1) + if (D_is_set[macro]) { + # Preserve the white space surrounding the "#". + print prefix "define", macro P[macro] D[macro] + next + } else { + # Replace #undef with comments. This is necessary, for example, + # in the case of _POSIX_SOURCE, which is predefined and required + # on some systems where configure will not decide to define it. + if (defundef == "undef") { + print "/*", prefix defundef, macro, "*/" + next + } + } +} +{ print } +_ACAWK +_ACEOF +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 + as_fn_error $? "could not setup config headers machinery" "$LINENO" 5 +fi # test -n "$CONFIG_HEADERS" + + +eval set X " :F $CONFIG_FILES :H $CONFIG_HEADERS :C $CONFIG_COMMANDS" +shift +for ac_tag +do + case $ac_tag in + :[FHLC]) ac_mode=$ac_tag; continue;; + esac + case $ac_mode$ac_tag in + :[FHL]*:*);; + :L* | :C*:*) as_fn_error $? "invalid tag \`$ac_tag'" "$LINENO" 5;; + :[FH]-) ac_tag=-:-;; + :[FH]*) ac_tag=$ac_tag:$ac_tag.in;; + esac + ac_save_IFS=$IFS + IFS=: + set x $ac_tag + IFS=$ac_save_IFS + shift + ac_file=$1 + shift + + case $ac_mode in + :L) ac_source=$1;; + :[FH]) + ac_file_inputs= + for ac_f + do + case $ac_f in + -) ac_f="$ac_tmp/stdin";; + *) # Look for the file first in the build tree, then in the source tree + # (if the path is not absolute). The absolute path cannot be DOS-style, + # because $ac_f cannot contain `:'. + test -f "$ac_f" || + case $ac_f in + [\\/$]*) false;; + *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";; + esac || + as_fn_error 1 "cannot find input file: \`$ac_f'" "$LINENO" 5;; + esac + case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac + as_fn_append ac_file_inputs " '$ac_f'" + done + + # Let's still pretend it is `configure' which instantiates (i.e., don't + # use $as_me), people would be surprised to read: + # /* config.h. Generated by config.status. */ + configure_input='Generated from '` + $as_echo "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g' + `' by configure.' + if test x"$ac_file" != x-; then + configure_input="$ac_file. $configure_input" + { $as_echo "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5 +$as_echo "$as_me: creating $ac_file" >&6;} + fi + # Neutralize special characters interpreted by sed in replacement strings. + case $configure_input in #( + *\&* | *\|* | *\\* ) + ac_sed_conf_input=`$as_echo "$configure_input" | + sed 's/[\\\\&|]/\\\\&/g'`;; #( + *) ac_sed_conf_input=$configure_input;; + esac + + case $ac_tag in + *:-:* | *:-) cat >"$ac_tmp/stdin" \ + || as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;; + esac + ;; + esac + + ac_dir=`$as_dirname -- "$ac_file" || +$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$ac_file" : 'X\(//\)[^/]' \| \ + X"$ac_file" : 'X\(//\)$' \| \ + X"$ac_file" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X"$ac_file" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + as_dir="$ac_dir"; as_fn_mkdir_p + ac_builddir=. + +case "$ac_dir" in +.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; +*) + ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'` + # A ".." for each directory in $ac_dir_suffix. + ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'` + case $ac_top_builddir_sub in + "") ac_top_builddir_sub=. ac_top_build_prefix= ;; + *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; + esac ;; +esac +ac_abs_top_builddir=$ac_pwd +ac_abs_builddir=$ac_pwd$ac_dir_suffix +# for backward compatibility: +ac_top_builddir=$ac_top_build_prefix + +case $srcdir in + .) # We are building in place. + ac_srcdir=. + ac_top_srcdir=$ac_top_builddir_sub + ac_abs_top_srcdir=$ac_pwd ;; + [\\/]* | ?:[\\/]* ) # Absolute name. + ac_srcdir=$srcdir$ac_dir_suffix; + ac_top_srcdir=$srcdir + ac_abs_top_srcdir=$srcdir ;; + *) # Relative name. + ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix + ac_top_srcdir=$ac_top_build_prefix$srcdir + ac_abs_top_srcdir=$ac_pwd/$srcdir ;; +esac +ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix + + + case $ac_mode in + :F) + # + # CONFIG_FILE + # + + case $INSTALL in + [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;; + *) ac_INSTALL=$ac_top_build_prefix$INSTALL ;; + esac +_ACEOF + +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 +# If the template does not know about datarootdir, expand it. +# FIXME: This hack should be removed a few years after 2.60. +ac_datarootdir_hack=; ac_datarootdir_seen= +ac_sed_dataroot=' +/datarootdir/ { + p + q +} +/@datadir@/p +/@docdir@/p +/@infodir@/p +/@localedir@/p +/@mandir@/p' +case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in +*datarootdir*) ac_datarootdir_seen=yes;; +*@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*) + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5 +$as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;} +_ACEOF +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 + ac_datarootdir_hack=' + s&@datadir@&$datadir&g + s&@docdir@&$docdir&g + s&@infodir@&$infodir&g + s&@localedir@&$localedir&g + s&@mandir@&$mandir&g + s&\\\${datarootdir}&$datarootdir&g' ;; +esac +_ACEOF + +# Neutralize VPATH when `$srcdir' = `.'. +# Shell code in configure.ac might set extrasub. +# FIXME: do we really want to maintain this feature? +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 +ac_sed_extra="$ac_vpsub +$extrasub +_ACEOF +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 +:t +/@[a-zA-Z_][a-zA-Z_0-9]*@/!b +s|@configure_input@|$ac_sed_conf_input|;t t +s&@top_builddir@&$ac_top_builddir_sub&;t t +s&@top_build_prefix@&$ac_top_build_prefix&;t t +s&@srcdir@&$ac_srcdir&;t t +s&@abs_srcdir@&$ac_abs_srcdir&;t t +s&@top_srcdir@&$ac_top_srcdir&;t t +s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t +s&@builddir@&$ac_builddir&;t t +s&@abs_builddir@&$ac_abs_builddir&;t t +s&@abs_top_builddir@&$ac_abs_top_builddir&;t t +s&@INSTALL@&$ac_INSTALL&;t t +$ac_datarootdir_hack +" +eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$ac_tmp/subs.awk" \ + >$ac_tmp/out || as_fn_error $? "could not create $ac_file" "$LINENO" 5 + +test -z "$ac_datarootdir_hack$ac_datarootdir_seen" && + { ac_out=`sed -n '/\${datarootdir}/p' "$ac_tmp/out"`; test -n "$ac_out"; } && + { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' \ + "$ac_tmp/out"`; test -z "$ac_out"; } && + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir' +which seems to be undefined. Please make sure it is defined" >&5 +$as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir' +which seems to be undefined. Please make sure it is defined" >&2;} + + rm -f "$ac_tmp/stdin" + case $ac_file in + -) cat "$ac_tmp/out" && rm -f "$ac_tmp/out";; + *) rm -f "$ac_file" && mv "$ac_tmp/out" "$ac_file";; + esac \ + || as_fn_error $? "could not create $ac_file" "$LINENO" 5 + ;; + :H) + # + # CONFIG_HEADER + # + if test x"$ac_file" != x-; then + { + $as_echo "/* $configure_input */" \ + && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" + } >"$ac_tmp/config.h" \ + || as_fn_error $? "could not create $ac_file" "$LINENO" 5 + if diff "$ac_file" "$ac_tmp/config.h" >/dev/null 2>&1; then + { $as_echo "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5 +$as_echo "$as_me: $ac_file is unchanged" >&6;} + else + rm -f "$ac_file" + mv "$ac_tmp/config.h" "$ac_file" \ + || as_fn_error $? "could not create $ac_file" "$LINENO" 5 + fi + else + $as_echo "/* $configure_input */" \ + && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" \ + || as_fn_error $? "could not create -" "$LINENO" 5 + fi +# Compute "$ac_file"'s index in $config_headers. +_am_stamp_count=1 +for _am_header in $config_headers :; do + case $_am_header in + "$ac_file" | "$ac_file":* ) + break ;; + * ) + _am_stamp_count=`expr $_am_stamp_count + 1` ;; + esac +done +echo "timestamp for "$ac_file"" >`$as_dirname -- "$ac_file" || +$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$ac_file" : 'X\(//\)[^/]' \| \ + X"$ac_file" : 'X\(//\)$' \| \ + X"$ac_file" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X"$ac_file" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'`/stamp-h$_am_stamp_count + ;; + + :C) { $as_echo "$as_me:${as_lineno-$LINENO}: executing $ac_file commands" >&5 +$as_echo "$as_me: executing $ac_file commands" >&6;} + ;; + esac + + + case $ac_file$ac_mode in + "depfiles":C) test x"$AMDEP_TRUE" != x"" || for mf in $CONFIG_FILES; do + # Strip MF so we end up with the name of the file. + mf=`echo "$mf" | sed -e 's/:.*$//'` + # Check whether this is an Automake generated Makefile or not. + # We used to match only the files named `Makefile.in', but + # some people rename them; so instead we look at the file content. + # Grep'ing the first line is not enough: some people post-process + # each Makefile.in and add a new line on top of each file to say so. + # So let's grep whole file. + if grep '^#.*generated by automake' $mf > /dev/null 2>&1; then + dirpart=`$as_dirname -- "$mf" || +$as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$mf" : 'X\(//\)[^/]' \| \ + X"$mf" : 'X\(//\)$' \| \ + X"$mf" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X"$mf" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + else + continue + fi + grep '^DEP_FILES *= *[^ @%:@]' < "$mf" > /dev/null || continue + # Extract the definition of DEP_FILES from the Makefile without + # running `make'. + DEPDIR=`sed -n -e '/^DEPDIR = / s///p' < "$mf"` + test -z "$DEPDIR" && continue + # When using ansi2knr, U may be empty or an underscore; expand it + U=`sed -n -e '/^U = / s///p' < "$mf"` + test -d "$dirpart/$DEPDIR" || mkdir "$dirpart/$DEPDIR" + # We invoke sed twice because it is the simplest approach to + # changing $(DEPDIR) to its actual value in the expansion. + for file in `sed -n -e ' + /^DEP_FILES = .*\\\\$/ { + s/^DEP_FILES = // + :loop + s/\\\\$// + p + n + /\\\\$/ b loop + p + } + /^DEP_FILES = / s/^DEP_FILES = //p' < "$mf" | \ + sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do + # Make sure the directory exists. + test -f "$dirpart/$file" && continue + fdir=`$as_dirname -- "$file" || +$as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$file" : 'X\(//\)[^/]' \| \ + X"$file" : 'X\(//\)$' \| \ + X"$file" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X"$file" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + as_dir=$dirpart/$fdir; as_fn_mkdir_p + # echo "creating $dirpart/$file" + echo '# dummy' > "$dirpart/$file" + done +done + ;; + + esac +done # for ac_tag + + +as_fn_exit 0 +_ACEOF +ac_clean_files=$ac_clean_files_save + +test $ac_write_fail = 0 || + as_fn_error $? "write failure creating $CONFIG_STATUS" "$LINENO" 5 + + +# configure is writing to config.log, and then calls config.status. +# config.status does its own redirection, appending to config.log. +# Unfortunately, on DOS this fails, as config.log is still kept open +# by configure, so config.status won't be able to write to it; its +# output is simply discarded. So we exec the FD to /dev/null, +# effectively closing config.log, so it can be properly (re)opened and +# appended to by config.status. When coming back to configure, we +# need to make the FD available again. +if test "$no_create" != yes; then + ac_cs_success=: + ac_config_status_args= + test "$silent" = yes && + ac_config_status_args="$ac_config_status_args --quiet" + exec 5>/dev/null + $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false + exec 5>>config.log + # Use ||, not &&, to avoid exiting from the if with $? = 1, which + # would make configure fail if this is the last instruction. + $ac_cs_success || as_fn_exit 1 +fi +if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5 +$as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;} +fi + diff --git a/release/src/router/libid3tag/autom4te.cache/requests b/release/src/router/libid3tag/autom4te.cache/requests new file mode 100644 index 0000000000..78f436708f --- /dev/null +++ b/release/src/router/libid3tag/autom4te.cache/requests @@ -0,0 +1,76 @@ +# This file was generated by Autom4te Sun Nov 6 20:57:04 UTC 2011. +# It contains the lists of macros which have been traced. +# It can be safely removed. + +@request = ( + bless( [ + '0', + 1, + [ + '/usr/share/autoconf' + ], + [ + '/usr/share/autoconf/autoconf/autoconf.m4f', + 'aclocal.m4', + 'configure.ac' + ], + { + 'AM_PROG_F77_C_O' => 1, + '_LT_AC_TAGCONFIG' => 1, + 'm4_pattern_forbid' => 1, + 'AC_INIT' => 1, + 'AC_CANONICAL_TARGET' => 1, + '_AM_COND_IF' => 1, + 'AC_CONFIG_LIBOBJ_DIR' => 1, + 'AC_SUBST' => 1, + 'AC_CANONICAL_HOST' => 1, + 'AC_FC_SRCEXT' => 1, + 'AC_PROG_LIBTOOL' => 1, + 'AM_INIT_AUTOMAKE' => 1, + 'AC_CONFIG_SUBDIRS' => 1, + 'AM_PATH_GUILE' => 1, + 'AM_AUTOMAKE_VERSION' => 1, + 'LT_CONFIG_LTDL_DIR' => 1, + 'AC_CONFIG_LINKS' => 1, + 'AC_REQUIRE_AUX_FILE' => 1, + 'LT_SUPPORTED_TAG' => 1, + 'm4_sinclude' => 1, + 'AM_MAINTAINER_MODE' => 1, + 'AM_NLS' => 1, + 'AM_GNU_GETTEXT_INTL_SUBDIR' => 1, + '_m4_warn' => 1, + 'AM_MAKEFILE_INCLUDE' => 1, + 'AM_PROG_CXX_C_O' => 1, + '_AM_MAKEFILE_INCLUDE' => 1, + '_AM_COND_ENDIF' => 1, + 'AM_ENABLE_MULTILIB' => 1, + 'AM_SILENT_RULES' => 1, + 'AM_PROG_MOC' => 1, + 'AC_CONFIG_FILES' => 1, + 'LT_INIT' => 1, + 'include' => 1, + 'AM_GNU_GETTEXT' => 1, + 'AM_PROG_AR' => 1, + 'AC_LIBSOURCE' => 1, + 'AC_CANONICAL_BUILD' => 1, + 'AM_PROG_FC_C_O' => 1, + 'AC_FC_FREEFORM' => 1, + 'AH_OUTPUT' => 1, + 'AC_CONFIG_AUX_DIR' => 1, + '_AM_SUBST_NOTMAKE' => 1, + 'm4_pattern_allow' => 1, + 'AM_PROG_CC_C_O' => 1, + 'sinclude' => 1, + 'AM_CONDITIONAL' => 1, + 'AC_CANONICAL_SYSTEM' => 1, + 'AM_XGETTEXT_OPTION' => 1, + 'AC_CONFIG_HEADERS' => 1, + 'AC_DEFINE_TRACE_LITERAL' => 1, + 'AM_POT_TOOLS' => 1, + 'm4_include' => 1, + '_AM_COND_ELSE' => 1, + 'AC_SUBST_TRACE' => 1 + } + ], 'Autom4te::Request' ) + ); + diff --git a/release/src/router/libid3tag/autom4te.cache/traces.0 b/release/src/router/libid3tag/autom4te.cache/traces.0 new file mode 100644 index 0000000000..088a7f973b --- /dev/null +++ b/release/src/router/libid3tag/autom4te.cache/traces.0 @@ -0,0 +1,740 @@ +m4trace:configure.ac:24: -1- AC_INIT([ID3 Tag], [0.15.1b], [support@underbit.com], [libid3tag]) +m4trace:configure.ac:24: -1- m4_pattern_forbid([^_?A[CHUM]_]) +m4trace:configure.ac:24: -1- m4_pattern_forbid([_AC_]) +m4trace:configure.ac:24: -1- m4_pattern_forbid([^LIBOBJS$], [do not use LIBOBJS directly, use AC_LIBOBJ (see section `AC_LIBOBJ vs LIBOBJS']) +m4trace:configure.ac:24: -1- m4_pattern_allow([^AS_FLAGS$]) +m4trace:configure.ac:24: -1- m4_pattern_forbid([^_?m4_]) +m4trace:configure.ac:24: -1- m4_pattern_forbid([^dnl$]) +m4trace:configure.ac:24: -1- m4_pattern_forbid([^_?AS_]) +m4trace:configure.ac:24: -1- AC_SUBST([SHELL]) +m4trace:configure.ac:24: -1- AC_SUBST_TRACE([SHELL]) +m4trace:configure.ac:24: -1- m4_pattern_allow([^SHELL$]) +m4trace:configure.ac:24: -1- AC_SUBST([PATH_SEPARATOR]) +m4trace:configure.ac:24: -1- AC_SUBST_TRACE([PATH_SEPARATOR]) +m4trace:configure.ac:24: -1- m4_pattern_allow([^PATH_SEPARATOR$]) +m4trace:configure.ac:24: -1- AC_SUBST([PACKAGE_NAME], [m4_ifdef([AC_PACKAGE_NAME], ['AC_PACKAGE_NAME'])]) +m4trace:configure.ac:24: -1- AC_SUBST_TRACE([PACKAGE_NAME]) +m4trace:configure.ac:24: -1- m4_pattern_allow([^PACKAGE_NAME$]) +m4trace:configure.ac:24: -1- AC_SUBST([PACKAGE_TARNAME], [m4_ifdef([AC_PACKAGE_TARNAME], ['AC_PACKAGE_TARNAME'])]) +m4trace:configure.ac:24: -1- AC_SUBST_TRACE([PACKAGE_TARNAME]) +m4trace:configure.ac:24: -1- m4_pattern_allow([^PACKAGE_TARNAME$]) +m4trace:configure.ac:24: -1- AC_SUBST([PACKAGE_VERSION], [m4_ifdef([AC_PACKAGE_VERSION], ['AC_PACKAGE_VERSION'])]) +m4trace:configure.ac:24: -1- AC_SUBST_TRACE([PACKAGE_VERSION]) +m4trace:configure.ac:24: -1- m4_pattern_allow([^PACKAGE_VERSION$]) +m4trace:configure.ac:24: -1- AC_SUBST([PACKAGE_STRING], [m4_ifdef([AC_PACKAGE_STRING], ['AC_PACKAGE_STRING'])]) +m4trace:configure.ac:24: -1- AC_SUBST_TRACE([PACKAGE_STRING]) +m4trace:configure.ac:24: -1- m4_pattern_allow([^PACKAGE_STRING$]) +m4trace:configure.ac:24: -1- AC_SUBST([PACKAGE_BUGREPORT], [m4_ifdef([AC_PACKAGE_BUGREPORT], ['AC_PACKAGE_BUGREPORT'])]) +m4trace:configure.ac:24: -1- AC_SUBST_TRACE([PACKAGE_BUGREPORT]) +m4trace:configure.ac:24: -1- m4_pattern_allow([^PACKAGE_BUGREPORT$]) +m4trace:configure.ac:24: -1- AC_SUBST([PACKAGE_URL], [m4_ifdef([AC_PACKAGE_URL], ['AC_PACKAGE_URL'])]) +m4trace:configure.ac:24: -1- AC_SUBST_TRACE([PACKAGE_URL]) +m4trace:configure.ac:24: -1- m4_pattern_allow([^PACKAGE_URL$]) +m4trace:configure.ac:24: -1- AC_SUBST([exec_prefix], [NONE]) +m4trace:configure.ac:24: -1- AC_SUBST_TRACE([exec_prefix]) +m4trace:configure.ac:24: -1- m4_pattern_allow([^exec_prefix$]) +m4trace:configure.ac:24: -1- AC_SUBST([prefix], [NONE]) +m4trace:configure.ac:24: -1- AC_SUBST_TRACE([prefix]) +m4trace:configure.ac:24: -1- m4_pattern_allow([^prefix$]) +m4trace:configure.ac:24: -1- AC_SUBST([program_transform_name], [s,x,x,]) +m4trace:configure.ac:24: -1- AC_SUBST_TRACE([program_transform_name]) +m4trace:configure.ac:24: -1- m4_pattern_allow([^program_transform_name$]) +m4trace:configure.ac:24: -1- AC_SUBST([bindir], ['${exec_prefix}/bin']) +m4trace:configure.ac:24: -1- AC_SUBST_TRACE([bindir]) +m4trace:configure.ac:24: -1- m4_pattern_allow([^bindir$]) +m4trace:configure.ac:24: -1- AC_SUBST([sbindir], ['${exec_prefix}/sbin']) +m4trace:configure.ac:24: -1- AC_SUBST_TRACE([sbindir]) +m4trace:configure.ac:24: -1- m4_pattern_allow([^sbindir$]) +m4trace:configure.ac:24: -1- AC_SUBST([libexecdir], ['${exec_prefix}/libexec']) +m4trace:configure.ac:24: -1- AC_SUBST_TRACE([libexecdir]) +m4trace:configure.ac:24: -1- m4_pattern_allow([^libexecdir$]) +m4trace:configure.ac:24: -1- AC_SUBST([datarootdir], ['${prefix}/share']) +m4trace:configure.ac:24: -1- AC_SUBST_TRACE([datarootdir]) +m4trace:configure.ac:24: -1- m4_pattern_allow([^datarootdir$]) +m4trace:configure.ac:24: -1- AC_SUBST([datadir], ['${datarootdir}']) +m4trace:configure.ac:24: -1- AC_SUBST_TRACE([datadir]) +m4trace:configure.ac:24: -1- m4_pattern_allow([^datadir$]) +m4trace:configure.ac:24: -1- AC_SUBST([sysconfdir], ['${prefix}/etc']) +m4trace:configure.ac:24: -1- AC_SUBST_TRACE([sysconfdir]) +m4trace:configure.ac:24: -1- m4_pattern_allow([^sysconfdir$]) +m4trace:configure.ac:24: -1- AC_SUBST([sharedstatedir], ['${prefix}/com']) +m4trace:configure.ac:24: -1- AC_SUBST_TRACE([sharedstatedir]) +m4trace:configure.ac:24: -1- m4_pattern_allow([^sharedstatedir$]) +m4trace:configure.ac:24: -1- AC_SUBST([localstatedir], ['${prefix}/var']) +m4trace:configure.ac:24: -1- AC_SUBST_TRACE([localstatedir]) +m4trace:configure.ac:24: -1- m4_pattern_allow([^localstatedir$]) +m4trace:configure.ac:24: -1- AC_SUBST([includedir], ['${prefix}/include']) +m4trace:configure.ac:24: -1- AC_SUBST_TRACE([includedir]) +m4trace:configure.ac:24: -1- m4_pattern_allow([^includedir$]) +m4trace:configure.ac:24: -1- AC_SUBST([oldincludedir], ['/usr/include']) +m4trace:configure.ac:24: -1- AC_SUBST_TRACE([oldincludedir]) +m4trace:configure.ac:24: -1- m4_pattern_allow([^oldincludedir$]) +m4trace:configure.ac:24: -1- AC_SUBST([docdir], [m4_ifset([AC_PACKAGE_TARNAME], + ['${datarootdir}/doc/${PACKAGE_TARNAME}'], + ['${datarootdir}/doc/${PACKAGE}'])]) +m4trace:configure.ac:24: -1- AC_SUBST_TRACE([docdir]) +m4trace:configure.ac:24: -1- m4_pattern_allow([^docdir$]) +m4trace:configure.ac:24: -1- AC_SUBST([infodir], ['${datarootdir}/info']) +m4trace:configure.ac:24: -1- AC_SUBST_TRACE([infodir]) +m4trace:configure.ac:24: -1- m4_pattern_allow([^infodir$]) +m4trace:configure.ac:24: -1- AC_SUBST([htmldir], ['${docdir}']) +m4trace:configure.ac:24: -1- AC_SUBST_TRACE([htmldir]) +m4trace:configure.ac:24: -1- m4_pattern_allow([^htmldir$]) +m4trace:configure.ac:24: -1- AC_SUBST([dvidir], ['${docdir}']) +m4trace:configure.ac:24: -1- AC_SUBST_TRACE([dvidir]) +m4trace:configure.ac:24: -1- m4_pattern_allow([^dvidir$]) +m4trace:configure.ac:24: -1- AC_SUBST([pdfdir], ['${docdir}']) +m4trace:configure.ac:24: -1- AC_SUBST_TRACE([pdfdir]) +m4trace:configure.ac:24: -1- m4_pattern_allow([^pdfdir$]) +m4trace:configure.ac:24: -1- AC_SUBST([psdir], ['${docdir}']) +m4trace:configure.ac:24: -1- AC_SUBST_TRACE([psdir]) +m4trace:configure.ac:24: -1- m4_pattern_allow([^psdir$]) +m4trace:configure.ac:24: -1- AC_SUBST([libdir], ['${exec_prefix}/lib']) +m4trace:configure.ac:24: -1- AC_SUBST_TRACE([libdir]) +m4trace:configure.ac:24: -1- m4_pattern_allow([^libdir$]) +m4trace:configure.ac:24: -1- AC_SUBST([localedir], ['${datarootdir}/locale']) +m4trace:configure.ac:24: -1- AC_SUBST_TRACE([localedir]) +m4trace:configure.ac:24: -1- m4_pattern_allow([^localedir$]) +m4trace:configure.ac:24: -1- AC_SUBST([mandir], ['${datarootdir}/man']) +m4trace:configure.ac:24: -1- AC_SUBST_TRACE([mandir]) +m4trace:configure.ac:24: -1- m4_pattern_allow([^mandir$]) +m4trace:configure.ac:24: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_NAME]) +m4trace:configure.ac:24: -1- m4_pattern_allow([^PACKAGE_NAME$]) +m4trace:configure.ac:24: -1- AH_OUTPUT([PACKAGE_NAME], [/* Define to the full name of this package. */ +@%:@undef PACKAGE_NAME]) +m4trace:configure.ac:24: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_TARNAME]) +m4trace:configure.ac:24: -1- m4_pattern_allow([^PACKAGE_TARNAME$]) +m4trace:configure.ac:24: -1- AH_OUTPUT([PACKAGE_TARNAME], [/* Define to the one symbol short name of this package. */ +@%:@undef PACKAGE_TARNAME]) +m4trace:configure.ac:24: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_VERSION]) +m4trace:configure.ac:24: -1- m4_pattern_allow([^PACKAGE_VERSION$]) +m4trace:configure.ac:24: -1- AH_OUTPUT([PACKAGE_VERSION], [/* Define to the version of this package. */ +@%:@undef PACKAGE_VERSION]) +m4trace:configure.ac:24: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_STRING]) +m4trace:configure.ac:24: -1- m4_pattern_allow([^PACKAGE_STRING$]) +m4trace:configure.ac:24: -1- AH_OUTPUT([PACKAGE_STRING], [/* Define to the full name and version of this package. */ +@%:@undef PACKAGE_STRING]) +m4trace:configure.ac:24: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_BUGREPORT]) +m4trace:configure.ac:24: -1- m4_pattern_allow([^PACKAGE_BUGREPORT$]) +m4trace:configure.ac:24: -1- AH_OUTPUT([PACKAGE_BUGREPORT], [/* Define to the address where bug reports for this package should be sent. */ +@%:@undef PACKAGE_BUGREPORT]) +m4trace:configure.ac:24: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_URL]) +m4trace:configure.ac:24: -1- m4_pattern_allow([^PACKAGE_URL$]) +m4trace:configure.ac:24: -1- AH_OUTPUT([PACKAGE_URL], [/* Define to the home page for this package. */ +@%:@undef PACKAGE_URL]) +m4trace:configure.ac:24: -1- AC_SUBST([DEFS]) +m4trace:configure.ac:24: -1- AC_SUBST_TRACE([DEFS]) +m4trace:configure.ac:24: -1- m4_pattern_allow([^DEFS$]) +m4trace:configure.ac:24: -1- AC_SUBST([ECHO_C]) +m4trace:configure.ac:24: -1- AC_SUBST_TRACE([ECHO_C]) +m4trace:configure.ac:24: -1- m4_pattern_allow([^ECHO_C$]) +m4trace:configure.ac:24: -1- AC_SUBST([ECHO_N]) +m4trace:configure.ac:24: -1- AC_SUBST_TRACE([ECHO_N]) +m4trace:configure.ac:24: -1- m4_pattern_allow([^ECHO_N$]) +m4trace:configure.ac:24: -1- AC_SUBST([ECHO_T]) +m4trace:configure.ac:24: -1- AC_SUBST_TRACE([ECHO_T]) +m4trace:configure.ac:24: -1- m4_pattern_allow([^ECHO_T$]) +m4trace:configure.ac:24: -1- AC_SUBST([LIBS]) +m4trace:configure.ac:24: -1- AC_SUBST_TRACE([LIBS]) +m4trace:configure.ac:24: -1- m4_pattern_allow([^LIBS$]) +m4trace:configure.ac:24: -1- AC_SUBST([build_alias]) +m4trace:configure.ac:24: -1- AC_SUBST_TRACE([build_alias]) +m4trace:configure.ac:24: -1- m4_pattern_allow([^build_alias$]) +m4trace:configure.ac:24: -1- AC_SUBST([host_alias]) +m4trace:configure.ac:24: -1- AC_SUBST_TRACE([host_alias]) +m4trace:configure.ac:24: -1- m4_pattern_allow([^host_alias$]) +m4trace:configure.ac:24: -1- AC_SUBST([target_alias]) +m4trace:configure.ac:24: -1- AC_SUBST_TRACE([target_alias]) +m4trace:configure.ac:24: -1- m4_pattern_allow([^target_alias$]) +m4trace:configure.ac:29: -1- AM_INIT_AUTOMAKE +m4trace:configure.ac:29: -1- m4_pattern_allow([^AM_[A-Z]+FLAGS$]) +m4trace:configure.ac:29: -1- AM_AUTOMAKE_VERSION([1.8.2]) +m4trace:configure.ac:29: -1- AC_REQUIRE_AUX_FILE([install-sh]) +m4trace:configure.ac:29: -1- AC_SUBST([INSTALL_PROGRAM]) +m4trace:configure.ac:29: -1- AC_SUBST_TRACE([INSTALL_PROGRAM]) +m4trace:configure.ac:29: -1- m4_pattern_allow([^INSTALL_PROGRAM$]) +m4trace:configure.ac:29: -1- AC_SUBST([INSTALL_SCRIPT]) +m4trace:configure.ac:29: -1- AC_SUBST_TRACE([INSTALL_SCRIPT]) +m4trace:configure.ac:29: -1- m4_pattern_allow([^INSTALL_SCRIPT$]) +m4trace:configure.ac:29: -1- AC_SUBST([INSTALL_DATA]) +m4trace:configure.ac:29: -1- AC_SUBST_TRACE([INSTALL_DATA]) +m4trace:configure.ac:29: -1- m4_pattern_allow([^INSTALL_DATA$]) +m4trace:configure.ac:29: -1- AC_SUBST([CYGPATH_W]) +m4trace:configure.ac:29: -1- AC_SUBST_TRACE([CYGPATH_W]) +m4trace:configure.ac:29: -1- m4_pattern_allow([^CYGPATH_W$]) +m4trace:configure.ac:29: -1- _m4_warn([obsolete], [The macro `AC_FOREACH' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:196: AC_FOREACH is expanded from... +aclocal.m4:6706: _AM_SET_OPTIONS is expanded from... +aclocal.m4:6357: AM_INIT_AUTOMAKE is expanded from... +configure.ac:29: the top level]) +m4trace:configure.ac:29: -1- AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME']) +m4trace:configure.ac:29: -1- AC_SUBST_TRACE([PACKAGE]) +m4trace:configure.ac:29: -1- m4_pattern_allow([^PACKAGE$]) +m4trace:configure.ac:29: -1- AC_SUBST([VERSION], ['AC_PACKAGE_VERSION']) +m4trace:configure.ac:29: -1- AC_SUBST_TRACE([VERSION]) +m4trace:configure.ac:29: -1- m4_pattern_allow([^VERSION$]) +m4trace:configure.ac:29: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE]) +m4trace:configure.ac:29: -1- m4_pattern_allow([^PACKAGE$]) +m4trace:configure.ac:29: -1- AH_OUTPUT([PACKAGE], [/* Name of package */ +@%:@undef PACKAGE]) +m4trace:configure.ac:29: -1- AC_DEFINE_TRACE_LITERAL([VERSION]) +m4trace:configure.ac:29: -1- m4_pattern_allow([^VERSION$]) +m4trace:configure.ac:29: -1- AH_OUTPUT([VERSION], [/* Version number of package */ +@%:@undef VERSION]) +m4trace:configure.ac:29: -1- AC_SUBST([ACLOCAL]) +m4trace:configure.ac:29: -1- AC_SUBST_TRACE([ACLOCAL]) +m4trace:configure.ac:29: -1- m4_pattern_allow([^ACLOCAL$]) +m4trace:configure.ac:29: -1- AC_SUBST([AUTOCONF]) +m4trace:configure.ac:29: -1- AC_SUBST_TRACE([AUTOCONF]) +m4trace:configure.ac:29: -1- m4_pattern_allow([^AUTOCONF$]) +m4trace:configure.ac:29: -1- AC_SUBST([AUTOMAKE]) +m4trace:configure.ac:29: -1- AC_SUBST_TRACE([AUTOMAKE]) +m4trace:configure.ac:29: -1- m4_pattern_allow([^AUTOMAKE$]) +m4trace:configure.ac:29: -1- AC_SUBST([AUTOHEADER]) +m4trace:configure.ac:29: -1- AC_SUBST_TRACE([AUTOHEADER]) +m4trace:configure.ac:29: -1- m4_pattern_allow([^AUTOHEADER$]) +m4trace:configure.ac:29: -1- AC_SUBST([MAKEINFO]) +m4trace:configure.ac:29: -1- AC_SUBST_TRACE([MAKEINFO]) +m4trace:configure.ac:29: -1- m4_pattern_allow([^MAKEINFO$]) +m4trace:configure.ac:29: -1- AC_SUBST([AMTAR]) +m4trace:configure.ac:29: -1- AC_SUBST_TRACE([AMTAR]) +m4trace:configure.ac:29: -1- m4_pattern_allow([^AMTAR$]) +m4trace:configure.ac:29: -1- AC_SUBST([install_sh]) +m4trace:configure.ac:29: -1- AC_SUBST_TRACE([install_sh]) +m4trace:configure.ac:29: -1- m4_pattern_allow([^install_sh$]) +m4trace:configure.ac:29: -1- AC_SUBST([STRIP]) +m4trace:configure.ac:29: -1- AC_SUBST_TRACE([STRIP]) +m4trace:configure.ac:29: -1- m4_pattern_allow([^STRIP$]) +m4trace:configure.ac:29: -1- AC_SUBST([INSTALL_STRIP_PROGRAM]) +m4trace:configure.ac:29: -1- AC_SUBST_TRACE([INSTALL_STRIP_PROGRAM]) +m4trace:configure.ac:29: -1- m4_pattern_allow([^INSTALL_STRIP_PROGRAM$]) +m4trace:configure.ac:29: -1- AC_SUBST([mkdir_p]) +m4trace:configure.ac:29: -1- AC_SUBST_TRACE([mkdir_p]) +m4trace:configure.ac:29: -1- m4_pattern_allow([^mkdir_p$]) +m4trace:configure.ac:29: -1- AC_SUBST([AWK]) +m4trace:configure.ac:29: -1- AC_SUBST_TRACE([AWK]) +m4trace:configure.ac:29: -1- m4_pattern_allow([^AWK$]) +m4trace:configure.ac:29: -1- AC_SUBST([SET_MAKE]) +m4trace:configure.ac:29: -1- AC_SUBST_TRACE([SET_MAKE]) +m4trace:configure.ac:29: -1- m4_pattern_allow([^SET_MAKE$]) +m4trace:configure.ac:29: -1- AC_SUBST([am__leading_dot]) +m4trace:configure.ac:29: -1- AC_SUBST_TRACE([am__leading_dot]) +m4trace:configure.ac:29: -1- m4_pattern_allow([^am__leading_dot$]) +m4trace:configure.ac:31: -1- _m4_warn([obsolete], [The macro `AM_CONFIG_HEADER' is obsolete. +You should run autoupdate.], [aclocal.m4:6319: AM_CONFIG_HEADER is expanded from... +configure.ac:31: the top level]) +m4trace:configure.ac:31: -1- AC_CONFIG_HEADERS([config.h]) +m4trace:configure.ac:35: -1- AC_CANONICAL_HOST +m4trace:configure.ac:35: -1- AC_CANONICAL_BUILD +m4trace:configure.ac:35: -1- AC_REQUIRE_AUX_FILE([config.sub]) +m4trace:configure.ac:35: -1- AC_REQUIRE_AUX_FILE([config.guess]) +m4trace:configure.ac:35: -1- AC_SUBST([build], [$ac_cv_build]) +m4trace:configure.ac:35: -1- AC_SUBST_TRACE([build]) +m4trace:configure.ac:35: -1- m4_pattern_allow([^build$]) +m4trace:configure.ac:35: -1- AC_SUBST([build_cpu], [$[1]]) +m4trace:configure.ac:35: -1- AC_SUBST_TRACE([build_cpu]) +m4trace:configure.ac:35: -1- m4_pattern_allow([^build_cpu$]) +m4trace:configure.ac:35: -1- AC_SUBST([build_vendor], [$[2]]) +m4trace:configure.ac:35: -1- AC_SUBST_TRACE([build_vendor]) +m4trace:configure.ac:35: -1- m4_pattern_allow([^build_vendor$]) +m4trace:configure.ac:35: -1- AC_SUBST([build_os]) +m4trace:configure.ac:35: -1- AC_SUBST_TRACE([build_os]) +m4trace:configure.ac:35: -1- m4_pattern_allow([^build_os$]) +m4trace:configure.ac:35: -1- AC_SUBST([host], [$ac_cv_host]) +m4trace:configure.ac:35: -1- AC_SUBST_TRACE([host]) +m4trace:configure.ac:35: -1- m4_pattern_allow([^host$]) +m4trace:configure.ac:35: -1- AC_SUBST([host_cpu], [$[1]]) +m4trace:configure.ac:35: -1- AC_SUBST_TRACE([host_cpu]) +m4trace:configure.ac:35: -1- m4_pattern_allow([^host_cpu$]) +m4trace:configure.ac:35: -1- AC_SUBST([host_vendor], [$[2]]) +m4trace:configure.ac:35: -1- AC_SUBST_TRACE([host_vendor]) +m4trace:configure.ac:35: -1- m4_pattern_allow([^host_vendor$]) +m4trace:configure.ac:35: -1- AC_SUBST([host_os]) +m4trace:configure.ac:35: -1- AC_SUBST_TRACE([host_os]) +m4trace:configure.ac:35: -1- m4_pattern_allow([^host_os$]) +m4trace:configure.ac:39: -1- AC_SUBST([CC]) +m4trace:configure.ac:39: -1- AC_SUBST_TRACE([CC]) +m4trace:configure.ac:39: -1- m4_pattern_allow([^CC$]) +m4trace:configure.ac:39: -1- AC_SUBST([CFLAGS]) +m4trace:configure.ac:39: -1- AC_SUBST_TRACE([CFLAGS]) +m4trace:configure.ac:39: -1- m4_pattern_allow([^CFLAGS$]) +m4trace:configure.ac:39: -1- AC_SUBST([LDFLAGS]) +m4trace:configure.ac:39: -1- AC_SUBST_TRACE([LDFLAGS]) +m4trace:configure.ac:39: -1- m4_pattern_allow([^LDFLAGS$]) +m4trace:configure.ac:39: -1- AC_SUBST([LIBS]) +m4trace:configure.ac:39: -1- AC_SUBST_TRACE([LIBS]) +m4trace:configure.ac:39: -1- m4_pattern_allow([^LIBS$]) +m4trace:configure.ac:39: -1- AC_SUBST([CPPFLAGS]) +m4trace:configure.ac:39: -1- AC_SUBST_TRACE([CPPFLAGS]) +m4trace:configure.ac:39: -1- m4_pattern_allow([^CPPFLAGS$]) +m4trace:configure.ac:39: -1- AC_SUBST([CC]) +m4trace:configure.ac:39: -1- AC_SUBST_TRACE([CC]) +m4trace:configure.ac:39: -1- m4_pattern_allow([^CC$]) +m4trace:configure.ac:39: -1- AC_SUBST([CC]) +m4trace:configure.ac:39: -1- AC_SUBST_TRACE([CC]) +m4trace:configure.ac:39: -1- m4_pattern_allow([^CC$]) +m4trace:configure.ac:39: -1- AC_SUBST([CC]) +m4trace:configure.ac:39: -1- AC_SUBST_TRACE([CC]) +m4trace:configure.ac:39: -1- m4_pattern_allow([^CC$]) +m4trace:configure.ac:39: -1- AC_SUBST([CC]) +m4trace:configure.ac:39: -1- AC_SUBST_TRACE([CC]) +m4trace:configure.ac:39: -1- m4_pattern_allow([^CC$]) +m4trace:configure.ac:39: -1- AC_SUBST([ac_ct_CC]) +m4trace:configure.ac:39: -1- AC_SUBST_TRACE([ac_ct_CC]) +m4trace:configure.ac:39: -1- m4_pattern_allow([^ac_ct_CC$]) +m4trace:configure.ac:39: -1- AC_SUBST([EXEEXT], [$ac_cv_exeext]) +m4trace:configure.ac:39: -1- AC_SUBST_TRACE([EXEEXT]) +m4trace:configure.ac:39: -1- m4_pattern_allow([^EXEEXT$]) +m4trace:configure.ac:39: -1- AC_SUBST([OBJEXT], [$ac_cv_objext]) +m4trace:configure.ac:39: -1- AC_SUBST_TRACE([OBJEXT]) +m4trace:configure.ac:39: -1- m4_pattern_allow([^OBJEXT$]) +m4trace:configure.ac:39: -1- AC_SUBST([DEPDIR], ["${am__leading_dot}deps"]) +m4trace:configure.ac:39: -1- AC_SUBST_TRACE([DEPDIR]) +m4trace:configure.ac:39: -1- m4_pattern_allow([^DEPDIR$]) +m4trace:configure.ac:39: -1- AC_SUBST([am__include]) +m4trace:configure.ac:39: -1- AC_SUBST_TRACE([am__include]) +m4trace:configure.ac:39: -1- m4_pattern_allow([^am__include$]) +m4trace:configure.ac:39: -1- AC_SUBST([am__quote]) +m4trace:configure.ac:39: -1- AC_SUBST_TRACE([am__quote]) +m4trace:configure.ac:39: -1- m4_pattern_allow([^am__quote$]) +m4trace:configure.ac:39: -1- AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno]) +m4trace:configure.ac:39: -1- AC_SUBST([AMDEP_TRUE]) +m4trace:configure.ac:39: -1- AC_SUBST_TRACE([AMDEP_TRUE]) +m4trace:configure.ac:39: -1- m4_pattern_allow([^AMDEP_TRUE$]) +m4trace:configure.ac:39: -1- AC_SUBST([AMDEP_FALSE]) +m4trace:configure.ac:39: -1- AC_SUBST_TRACE([AMDEP_FALSE]) +m4trace:configure.ac:39: -1- m4_pattern_allow([^AMDEP_FALSE$]) +m4trace:configure.ac:39: -1- AC_SUBST([AMDEPBACKSLASH]) +m4trace:configure.ac:39: -1- AC_SUBST_TRACE([AMDEPBACKSLASH]) +m4trace:configure.ac:39: -1- m4_pattern_allow([^AMDEPBACKSLASH$]) +m4trace:configure.ac:39: -1- AC_SUBST([CCDEPMODE], [depmode=$am_cv_CC_dependencies_compiler_type]) +m4trace:configure.ac:39: -1- AC_SUBST_TRACE([CCDEPMODE]) +m4trace:configure.ac:39: -1- m4_pattern_allow([^CCDEPMODE$]) +m4trace:configure.ac:39: -1- AM_CONDITIONAL([am__fastdepCC], [ + test "x$enable_dependency_tracking" != xno \ + && test "$am_cv_CC_dependencies_compiler_type" = gcc3]) +m4trace:configure.ac:39: -1- AC_SUBST([am__fastdepCC_TRUE]) +m4trace:configure.ac:39: -1- AC_SUBST_TRACE([am__fastdepCC_TRUE]) +m4trace:configure.ac:39: -1- m4_pattern_allow([^am__fastdepCC_TRUE$]) +m4trace:configure.ac:39: -1- AC_SUBST([am__fastdepCC_FALSE]) +m4trace:configure.ac:39: -1- AC_SUBST_TRACE([am__fastdepCC_FALSE]) +m4trace:configure.ac:39: -1- m4_pattern_allow([^am__fastdepCC_FALSE$]) +m4trace:configure.ac:64: -1- AC_PROG_LIBTOOL +m4trace:configure.ac:64: -1- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from... +../../lib/autoconf/general.m4:1463: AC_ARG_ENABLE is expanded from... +aclocal.m4:1739: AC_ENABLE_SHARED is expanded from... +aclocal.m4:87: AC_LIBTOOL_SETUP is expanded from... +aclocal.m4:67: _AC_PROG_LIBTOOL is expanded from... +aclocal.m4:32: AC_PROG_LIBTOOL is expanded from... +configure.ac:64: the top level]) +m4trace:configure.ac:64: -1- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from... +../../lib/autoconf/general.m4:1463: AC_ARG_ENABLE is expanded from... +aclocal.m4:1778: AC_ENABLE_STATIC is expanded from... +aclocal.m4:87: AC_LIBTOOL_SETUP is expanded from... +aclocal.m4:67: _AC_PROG_LIBTOOL is expanded from... +aclocal.m4:32: AC_PROG_LIBTOOL is expanded from... +configure.ac:64: the top level]) +m4trace:configure.ac:64: -1- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from... +../../lib/autoconf/general.m4:1463: AC_ARG_ENABLE is expanded from... +aclocal.m4:1817: AC_ENABLE_FAST_INSTALL is expanded from... +aclocal.m4:87: AC_LIBTOOL_SETUP is expanded from... +aclocal.m4:67: _AC_PROG_LIBTOOL is expanded from... +aclocal.m4:32: AC_PROG_LIBTOOL is expanded from... +configure.ac:64: the top level]) +m4trace:configure.ac:64: -1- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from... +../../lib/autoconf/general.m4:1482: AC_ARG_WITH is expanded from... +aclocal.m4:1958: AC_PROG_LD is expanded from... +aclocal.m4:87: AC_LIBTOOL_SETUP is expanded from... +aclocal.m4:67: _AC_PROG_LIBTOOL is expanded from... +aclocal.m4:32: AC_PROG_LIBTOOL is expanded from... +configure.ac:64: the top level]) +m4trace:configure.ac:64: -1- AC_SUBST([GREP]) +m4trace:configure.ac:64: -1- AC_SUBST_TRACE([GREP]) +m4trace:configure.ac:64: -1- m4_pattern_allow([^GREP$]) +m4trace:configure.ac:64: -1- AC_SUBST([EGREP]) +m4trace:configure.ac:64: -1- AC_SUBST_TRACE([EGREP]) +m4trace:configure.ac:64: -1- m4_pattern_allow([^EGREP$]) +m4trace:configure.ac:64: -1- AC_SUBST([LN_S], [$as_ln_s]) +m4trace:configure.ac:64: -1- AC_SUBST_TRACE([LN_S]) +m4trace:configure.ac:64: -1- m4_pattern_allow([^LN_S$]) +m4trace:configure.ac:64: -1- AC_SUBST([ECHO]) +m4trace:configure.ac:64: -1- AC_SUBST_TRACE([ECHO]) +m4trace:configure.ac:64: -1- m4_pattern_allow([^ECHO$]) +m4trace:configure.ac:64: -1- AC_SUBST([AR]) +m4trace:configure.ac:64: -1- AC_SUBST_TRACE([AR]) +m4trace:configure.ac:64: -1- m4_pattern_allow([^AR$]) +m4trace:configure.ac:64: -1- AC_SUBST([RANLIB]) +m4trace:configure.ac:64: -1- AC_SUBST_TRACE([RANLIB]) +m4trace:configure.ac:64: -1- m4_pattern_allow([^RANLIB$]) +m4trace:configure.ac:64: -1- AC_SUBST([STRIP]) +m4trace:configure.ac:64: -1- AC_SUBST_TRACE([STRIP]) +m4trace:configure.ac:64: -1- m4_pattern_allow([^STRIP$]) +m4trace:configure.ac:64: -1- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from... +../../lib/autoconf/general.m4:1463: AC_ARG_ENABLE is expanded from... +aclocal.m4:87: AC_LIBTOOL_SETUP is expanded from... +aclocal.m4:67: _AC_PROG_LIBTOOL is expanded from... +aclocal.m4:32: AC_PROG_LIBTOOL is expanded from... +configure.ac:64: the top level]) +m4trace:configure.ac:64: -1- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from... +../../lib/autoconf/general.m4:1482: AC_ARG_WITH is expanded from... +aclocal.m4:87: AC_LIBTOOL_SETUP is expanded from... +aclocal.m4:67: _AC_PROG_LIBTOOL is expanded from... +aclocal.m4:32: AC_PROG_LIBTOOL is expanded from... +configure.ac:64: the top level]) +m4trace:configure.ac:64: -1- _m4_warn([syntax], [AC_CACHE_VAL(lt_prog_compiler_static_works, ...): suspicious cache-id, must contain _cv_ to be cached], [../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from... +../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from... +aclocal.m4:601: AC_LIBTOOL_LINKER_OPTION is expanded from... +aclocal.m4:2452: _LT_AC_LANG_C_CONFIG is expanded from... +aclocal.m4:2451: AC_LIBTOOL_LANG_C_CONFIG is expanded from... +aclocal.m4:87: AC_LIBTOOL_SETUP is expanded from... +aclocal.m4:67: _AC_PROG_LIBTOOL is expanded from... +aclocal.m4:32: AC_PROG_LIBTOOL is expanded from... +configure.ac:64: the top level]) +m4trace:configure.ac:64: -1- _m4_warn([syntax], [AC_CACHE_VAL(lt_prog_compiler_pic_works, ...): suspicious cache-id, must contain _cv_ to be cached], [../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from... +../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from... +aclocal.m4:558: AC_LIBTOOL_COMPILER_OPTION is expanded from... +aclocal.m4:4494: AC_LIBTOOL_PROG_COMPILER_PIC is expanded from... +aclocal.m4:2452: _LT_AC_LANG_C_CONFIG is expanded from... +aclocal.m4:2451: AC_LIBTOOL_LANG_C_CONFIG is expanded from... +aclocal.m4:87: AC_LIBTOOL_SETUP is expanded from... +aclocal.m4:67: _AC_PROG_LIBTOOL is expanded from... +aclocal.m4:32: AC_PROG_LIBTOOL is expanded from... +configure.ac:64: the top level]) +m4trace:configure.ac:64: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2688: AC_TRY_LINK is expanded from... +../../lib/m4sugar/m4sh.m4:606: AS_IF is expanded from... +../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from... +../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from... +aclocal.m4:428: _LT_AC_LOCK is expanded from... +aclocal.m4:961: AC_LIBTOOL_SYS_HARD_LINK_LOCKS is expanded from... +aclocal.m4:2452: _LT_AC_LANG_C_CONFIG is expanded from... +aclocal.m4:2451: AC_LIBTOOL_LANG_C_CONFIG is expanded from... +aclocal.m4:87: AC_LIBTOOL_SETUP is expanded from... +aclocal.m4:67: _AC_PROG_LIBTOOL is expanded from... +aclocal.m4:32: AC_PROG_LIBTOOL is expanded from... +configure.ac:64: the top level]) +m4trace:configure.ac:64: -1- _m4_warn([syntax], [AC_LANG_CONFTEST: no AC_LANG_SOURCE call detected in body], [../../lib/autoconf/lang.m4:194: AC_LANG_CONFTEST is expanded from... +../../lib/autoconf/general.m4:2662: _AC_LINK_IFELSE is expanded from... +../../lib/autoconf/general.m4:2679: AC_LINK_IFELSE is expanded from... +aclocal.m4:248: _LT_AC_SYS_LIBPATH_AIX is expanded from... +aclocal.m4:4956: AC_LIBTOOL_PROG_LD_SHLIBS is expanded from... +aclocal.m4:2452: _LT_AC_LANG_C_CONFIG is expanded from... +aclocal.m4:2451: AC_LIBTOOL_LANG_C_CONFIG is expanded from... +aclocal.m4:87: AC_LIBTOOL_SETUP is expanded from... +aclocal.m4:67: _AC_PROG_LIBTOOL is expanded from... +aclocal.m4:32: AC_PROG_LIBTOOL is expanded from... +configure.ac:64: the top level]) +m4trace:configure.ac:64: -1- _m4_warn([syntax], [AC_LANG_CONFTEST: no AC_LANG_SOURCE call detected in body], [../../lib/autoconf/lang.m4:194: AC_LANG_CONFTEST is expanded from... +../../lib/autoconf/general.m4:2662: _AC_LINK_IFELSE is expanded from... +../../lib/autoconf/general.m4:2679: AC_LINK_IFELSE is expanded from... +aclocal.m4:248: _LT_AC_SYS_LIBPATH_AIX is expanded from... +aclocal.m4:4956: AC_LIBTOOL_PROG_LD_SHLIBS is expanded from... +aclocal.m4:2452: _LT_AC_LANG_C_CONFIG is expanded from... +aclocal.m4:2451: AC_LIBTOOL_LANG_C_CONFIG is expanded from... +aclocal.m4:87: AC_LIBTOOL_SETUP is expanded from... +aclocal.m4:67: _AC_PROG_LIBTOOL is expanded from... +aclocal.m4:32: AC_PROG_LIBTOOL is expanded from... +configure.ac:64: the top level]) +m4trace:configure.ac:64: -1- AH_OUTPUT([HAVE_DLFCN_H], [/* Define to 1 if you have the header file. */ +@%:@undef HAVE_DLFCN_H]) +m4trace:configure.ac:64: -1- AC_SUBST([CPP]) +m4trace:configure.ac:64: -1- AC_SUBST_TRACE([CPP]) +m4trace:configure.ac:64: -1- m4_pattern_allow([^CPP$]) +m4trace:configure.ac:64: -1- AC_SUBST([CPPFLAGS]) +m4trace:configure.ac:64: -1- AC_SUBST_TRACE([CPPFLAGS]) +m4trace:configure.ac:64: -1- m4_pattern_allow([^CPPFLAGS$]) +m4trace:configure.ac:64: -1- AC_SUBST([CPP]) +m4trace:configure.ac:64: -1- AC_SUBST_TRACE([CPP]) +m4trace:configure.ac:64: -1- m4_pattern_allow([^CPP$]) +m4trace:configure.ac:64: -1- AC_DEFINE_TRACE_LITERAL([STDC_HEADERS]) +m4trace:configure.ac:64: -1- m4_pattern_allow([^STDC_HEADERS$]) +m4trace:configure.ac:64: -1- AH_OUTPUT([STDC_HEADERS], [/* Define to 1 if you have the ANSI C header files. */ +@%:@undef STDC_HEADERS]) +m4trace:configure.ac:64: -1- AH_OUTPUT([HAVE_SYS_TYPES_H], [/* Define to 1 if you have the header file. */ +@%:@undef HAVE_SYS_TYPES_H]) +m4trace:configure.ac:64: -1- AH_OUTPUT([HAVE_SYS_STAT_H], [/* Define to 1 if you have the header file. */ +@%:@undef HAVE_SYS_STAT_H]) +m4trace:configure.ac:64: -1- AH_OUTPUT([HAVE_STDLIB_H], [/* Define to 1 if you have the header file. */ +@%:@undef HAVE_STDLIB_H]) +m4trace:configure.ac:64: -1- AH_OUTPUT([HAVE_STRING_H], [/* Define to 1 if you have the header file. */ +@%:@undef HAVE_STRING_H]) +m4trace:configure.ac:64: -1- AH_OUTPUT([HAVE_MEMORY_H], [/* Define to 1 if you have the header file. */ +@%:@undef HAVE_MEMORY_H]) +m4trace:configure.ac:64: -1- AH_OUTPUT([HAVE_STRINGS_H], [/* Define to 1 if you have the header file. */ +@%:@undef HAVE_STRINGS_H]) +m4trace:configure.ac:64: -1- AH_OUTPUT([HAVE_INTTYPES_H], [/* Define to 1 if you have the header file. */ +@%:@undef HAVE_INTTYPES_H]) +m4trace:configure.ac:64: -1- AH_OUTPUT([HAVE_STDINT_H], [/* Define to 1 if you have the header file. */ +@%:@undef HAVE_STDINT_H]) +m4trace:configure.ac:64: -1- AH_OUTPUT([HAVE_UNISTD_H], [/* Define to 1 if you have the header file. */ +@%:@undef HAVE_UNISTD_H]) +m4trace:configure.ac:64: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DLFCN_H]) +m4trace:configure.ac:64: -1- m4_pattern_allow([^HAVE_DLFCN_H$]) +m4trace:configure.ac:64: -1- _LT_AC_TAGCONFIG +m4trace:configure.ac:64: -1- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from... +../../lib/autoconf/general.m4:1482: AC_ARG_WITH is expanded from... +aclocal.m4:1622: _LT_AC_TAGCONFIG is expanded from... +aclocal.m4:87: AC_LIBTOOL_SETUP is expanded from... +aclocal.m4:67: _AC_PROG_LIBTOOL is expanded from... +aclocal.m4:32: AC_PROG_LIBTOOL is expanded from... +configure.ac:64: the top level]) +m4trace:configure.ac:64: -1- _m4_warn([obsolete], [back quotes and double quotes must not be escaped in: tag name \"$tagname\" already exists], [aclocal.m4:1622: _LT_AC_TAGCONFIG is expanded from... +aclocal.m4:87: AC_LIBTOOL_SETUP is expanded from... +aclocal.m4:67: _AC_PROG_LIBTOOL is expanded from... +aclocal.m4:32: AC_PROG_LIBTOOL is expanded from... +configure.ac:64: the top level]) +m4trace:configure.ac:64: -1- AC_SUBST([CXX]) +m4trace:configure.ac:64: -1- AC_SUBST_TRACE([CXX]) +m4trace:configure.ac:64: -1- m4_pattern_allow([^CXX$]) +m4trace:configure.ac:64: -1- AC_SUBST([CXXFLAGS]) +m4trace:configure.ac:64: -1- AC_SUBST_TRACE([CXXFLAGS]) +m4trace:configure.ac:64: -1- m4_pattern_allow([^CXXFLAGS$]) +m4trace:configure.ac:64: -1- AC_SUBST([LDFLAGS]) +m4trace:configure.ac:64: -1- AC_SUBST_TRACE([LDFLAGS]) +m4trace:configure.ac:64: -1- m4_pattern_allow([^LDFLAGS$]) +m4trace:configure.ac:64: -1- AC_SUBST([LIBS]) +m4trace:configure.ac:64: -1- AC_SUBST_TRACE([LIBS]) +m4trace:configure.ac:64: -1- m4_pattern_allow([^LIBS$]) +m4trace:configure.ac:64: -1- AC_SUBST([CPPFLAGS]) +m4trace:configure.ac:64: -1- AC_SUBST_TRACE([CPPFLAGS]) +m4trace:configure.ac:64: -1- m4_pattern_allow([^CPPFLAGS$]) +m4trace:configure.ac:64: -1- AC_SUBST([CXX]) +m4trace:configure.ac:64: -1- AC_SUBST_TRACE([CXX]) +m4trace:configure.ac:64: -1- m4_pattern_allow([^CXX$]) +m4trace:configure.ac:64: -1- AC_SUBST([ac_ct_CXX]) +m4trace:configure.ac:64: -1- AC_SUBST_TRACE([ac_ct_CXX]) +m4trace:configure.ac:64: -1- m4_pattern_allow([^ac_ct_CXX$]) +m4trace:configure.ac:64: -1- AC_SUBST([CXXDEPMODE], [depmode=$am_cv_CXX_dependencies_compiler_type]) +m4trace:configure.ac:64: -1- AC_SUBST_TRACE([CXXDEPMODE]) +m4trace:configure.ac:64: -1- m4_pattern_allow([^CXXDEPMODE$]) +m4trace:configure.ac:64: -1- AM_CONDITIONAL([am__fastdepCXX], [ + test "x$enable_dependency_tracking" != xno \ + && test "$am_cv_CXX_dependencies_compiler_type" = gcc3]) +m4trace:configure.ac:64: -1- AC_SUBST([am__fastdepCXX_TRUE]) +m4trace:configure.ac:64: -1- AC_SUBST_TRACE([am__fastdepCXX_TRUE]) +m4trace:configure.ac:64: -1- m4_pattern_allow([^am__fastdepCXX_TRUE$]) +m4trace:configure.ac:64: -1- AC_SUBST([am__fastdepCXX_FALSE]) +m4trace:configure.ac:64: -1- AC_SUBST_TRACE([am__fastdepCXX_FALSE]) +m4trace:configure.ac:64: -1- m4_pattern_allow([^am__fastdepCXX_FALSE$]) +m4trace:configure.ac:64: -1- AC_SUBST([CXXCPP]) +m4trace:configure.ac:64: -1- AC_SUBST_TRACE([CXXCPP]) +m4trace:configure.ac:64: -1- m4_pattern_allow([^CXXCPP$]) +m4trace:configure.ac:64: -1- AC_SUBST([CPPFLAGS]) +m4trace:configure.ac:64: -1- AC_SUBST_TRACE([CPPFLAGS]) +m4trace:configure.ac:64: -1- m4_pattern_allow([^CPPFLAGS$]) +m4trace:configure.ac:64: -1- AC_SUBST([CXXCPP]) +m4trace:configure.ac:64: -1- AC_SUBST_TRACE([CXXCPP]) +m4trace:configure.ac:64: -1- m4_pattern_allow([^CXXCPP$]) +m4trace:configure.ac:64: -1- _m4_warn([syntax], [AC_LANG_CONFTEST: no AC_LANG_SOURCE call detected in body], [../../lib/autoconf/lang.m4:194: AC_LANG_CONFTEST is expanded from... +../../lib/autoconf/general.m4:2662: _AC_LINK_IFELSE is expanded from... +../../lib/autoconf/general.m4:2679: AC_LINK_IFELSE is expanded from... +aclocal.m4:248: _LT_AC_SYS_LIBPATH_AIX is expanded from... +aclocal.m4:2593: _LT_AC_LANG_CXX_CONFIG is expanded from... +aclocal.m4:2592: AC_LIBTOOL_LANG_CXX_CONFIG is expanded from... +aclocal.m4:1622: _LT_AC_TAGCONFIG is expanded from... +aclocal.m4:87: AC_LIBTOOL_SETUP is expanded from... +aclocal.m4:67: _AC_PROG_LIBTOOL is expanded from... +aclocal.m4:32: AC_PROG_LIBTOOL is expanded from... +configure.ac:64: the top level]) +m4trace:configure.ac:64: -1- _m4_warn([syntax], [AC_LANG_CONFTEST: no AC_LANG_SOURCE call detected in body], [../../lib/autoconf/lang.m4:194: AC_LANG_CONFTEST is expanded from... +../../lib/autoconf/general.m4:2662: _AC_LINK_IFELSE is expanded from... +../../lib/autoconf/general.m4:2679: AC_LINK_IFELSE is expanded from... +aclocal.m4:248: _LT_AC_SYS_LIBPATH_AIX is expanded from... +aclocal.m4:2593: _LT_AC_LANG_CXX_CONFIG is expanded from... +aclocal.m4:2592: AC_LIBTOOL_LANG_CXX_CONFIG is expanded from... +aclocal.m4:1622: _LT_AC_TAGCONFIG is expanded from... +aclocal.m4:87: AC_LIBTOOL_SETUP is expanded from... +aclocal.m4:67: _AC_PROG_LIBTOOL is expanded from... +aclocal.m4:32: AC_PROG_LIBTOOL is expanded from... +configure.ac:64: the top level]) +m4trace:configure.ac:64: -1- _m4_warn([syntax], [AC_CACHE_VAL(lt_prog_compiler_pic_works_CXX, ...): suspicious cache-id, must contain _cv_ to be cached], [../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from... +../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from... +aclocal.m4:558: AC_LIBTOOL_COMPILER_OPTION is expanded from... +aclocal.m4:4494: AC_LIBTOOL_PROG_COMPILER_PIC is expanded from... +aclocal.m4:2593: _LT_AC_LANG_CXX_CONFIG is expanded from... +aclocal.m4:2592: AC_LIBTOOL_LANG_CXX_CONFIG is expanded from... +aclocal.m4:1622: _LT_AC_TAGCONFIG is expanded from... +aclocal.m4:87: AC_LIBTOOL_SETUP is expanded from... +aclocal.m4:67: _AC_PROG_LIBTOOL is expanded from... +aclocal.m4:32: AC_PROG_LIBTOOL is expanded from... +configure.ac:64: the top level]) +m4trace:configure.ac:64: -1- AC_SUBST([F77]) +m4trace:configure.ac:64: -1- AC_SUBST_TRACE([F77]) +m4trace:configure.ac:64: -1- m4_pattern_allow([^F77$]) +m4trace:configure.ac:64: -1- AC_SUBST([FFLAGS]) +m4trace:configure.ac:64: -1- AC_SUBST_TRACE([FFLAGS]) +m4trace:configure.ac:64: -1- m4_pattern_allow([^FFLAGS$]) +m4trace:configure.ac:64: -1- AC_SUBST([LDFLAGS]) +m4trace:configure.ac:64: -1- AC_SUBST_TRACE([LDFLAGS]) +m4trace:configure.ac:64: -1- m4_pattern_allow([^LDFLAGS$]) +m4trace:configure.ac:64: -1- AC_SUBST([LIBS]) +m4trace:configure.ac:64: -1- AC_SUBST_TRACE([LIBS]) +m4trace:configure.ac:64: -1- m4_pattern_allow([^LIBS$]) +m4trace:configure.ac:64: -1- AC_SUBST([F77]) +m4trace:configure.ac:64: -1- AC_SUBST_TRACE([F77]) +m4trace:configure.ac:64: -1- m4_pattern_allow([^F77$]) +m4trace:configure.ac:64: -1- AC_SUBST([ac_ct_F77]) +m4trace:configure.ac:64: -1- AC_SUBST_TRACE([ac_ct_F77]) +m4trace:configure.ac:64: -1- m4_pattern_allow([^ac_ct_F77$]) +m4trace:configure.ac:64: -1- _m4_warn([syntax], [AC_CACHE_VAL(lt_prog_compiler_pic_works_F77, ...): suspicious cache-id, must contain _cv_ to be cached], [../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from... +../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from... +aclocal.m4:558: AC_LIBTOOL_COMPILER_OPTION is expanded from... +aclocal.m4:4494: AC_LIBTOOL_PROG_COMPILER_PIC is expanded from... +aclocal.m4:3619: _LT_AC_LANG_F77_CONFIG is expanded from... +aclocal.m4:3618: AC_LIBTOOL_LANG_F77_CONFIG is expanded from... +aclocal.m4:1622: _LT_AC_TAGCONFIG is expanded from... +aclocal.m4:87: AC_LIBTOOL_SETUP is expanded from... +aclocal.m4:67: _AC_PROG_LIBTOOL is expanded from... +aclocal.m4:32: AC_PROG_LIBTOOL is expanded from... +configure.ac:64: the top level]) +m4trace:configure.ac:64: -1- _m4_warn([obsolete], [The macro `AC_LANG_SAVE' is obsolete. +You should run autoupdate.], [../../lib/autoconf/lang.m4:126: AC_LANG_SAVE is expanded from... +aclocal.m4:3719: _LT_AC_LANG_GCJ_CONFIG is expanded from... +aclocal.m4:3718: AC_LIBTOOL_LANG_GCJ_CONFIG is expanded from... +aclocal.m4:1622: _LT_AC_TAGCONFIG is expanded from... +aclocal.m4:87: AC_LIBTOOL_SETUP is expanded from... +aclocal.m4:67: _AC_PROG_LIBTOOL is expanded from... +aclocal.m4:32: AC_PROG_LIBTOOL is expanded from... +configure.ac:64: the top level]) +m4trace:configure.ac:64: -1- _m4_warn([syntax], [AC_CACHE_VAL(lt_prog_compiler_pic_works_GCJ, ...): suspicious cache-id, must contain _cv_ to be cached], [../../lib/autoconf/general.m4:2032: AC_CACHE_VAL is expanded from... +../../lib/autoconf/general.m4:2053: AC_CACHE_CHECK is expanded from... +aclocal.m4:558: AC_LIBTOOL_COMPILER_OPTION is expanded from... +aclocal.m4:4494: AC_LIBTOOL_PROG_COMPILER_PIC is expanded from... +aclocal.m4:3719: _LT_AC_LANG_GCJ_CONFIG is expanded from... +aclocal.m4:3718: AC_LIBTOOL_LANG_GCJ_CONFIG is expanded from... +aclocal.m4:1622: _LT_AC_TAGCONFIG is expanded from... +aclocal.m4:87: AC_LIBTOOL_SETUP is expanded from... +aclocal.m4:67: _AC_PROG_LIBTOOL is expanded from... +aclocal.m4:32: AC_PROG_LIBTOOL is expanded from... +configure.ac:64: the top level]) +m4trace:configure.ac:64: -1- _m4_warn([syntax], [AC_LANG_CONFTEST: no AC_LANG_SOURCE call detected in body], [../../lib/autoconf/lang.m4:194: AC_LANG_CONFTEST is expanded from... +../../lib/autoconf/general.m4:2662: _AC_LINK_IFELSE is expanded from... +../../lib/autoconf/general.m4:2679: AC_LINK_IFELSE is expanded from... +aclocal.m4:248: _LT_AC_SYS_LIBPATH_AIX is expanded from... +aclocal.m4:4956: AC_LIBTOOL_PROG_LD_SHLIBS is expanded from... +aclocal.m4:3719: _LT_AC_LANG_GCJ_CONFIG is expanded from... +aclocal.m4:3718: AC_LIBTOOL_LANG_GCJ_CONFIG is expanded from... +aclocal.m4:1622: _LT_AC_TAGCONFIG is expanded from... +aclocal.m4:87: AC_LIBTOOL_SETUP is expanded from... +aclocal.m4:67: _AC_PROG_LIBTOOL is expanded from... +aclocal.m4:32: AC_PROG_LIBTOOL is expanded from... +configure.ac:64: the top level]) +m4trace:configure.ac:64: -1- _m4_warn([syntax], [AC_LANG_CONFTEST: no AC_LANG_SOURCE call detected in body], [../../lib/autoconf/lang.m4:194: AC_LANG_CONFTEST is expanded from... +../../lib/autoconf/general.m4:2662: _AC_LINK_IFELSE is expanded from... +../../lib/autoconf/general.m4:2679: AC_LINK_IFELSE is expanded from... +aclocal.m4:248: _LT_AC_SYS_LIBPATH_AIX is expanded from... +aclocal.m4:4956: AC_LIBTOOL_PROG_LD_SHLIBS is expanded from... +aclocal.m4:3719: _LT_AC_LANG_GCJ_CONFIG is expanded from... +aclocal.m4:3718: AC_LIBTOOL_LANG_GCJ_CONFIG is expanded from... +aclocal.m4:1622: _LT_AC_TAGCONFIG is expanded from... +aclocal.m4:87: AC_LIBTOOL_SETUP is expanded from... +aclocal.m4:67: _AC_PROG_LIBTOOL is expanded from... +aclocal.m4:32: AC_PROG_LIBTOOL is expanded from... +configure.ac:64: the top level]) +m4trace:configure.ac:64: -1- _m4_warn([obsolete], [The macro `AC_LANG_RESTORE' is obsolete. +You should run autoupdate.], [../../lib/autoconf/lang.m4:135: AC_LANG_RESTORE is expanded from... +aclocal.m4:3719: _LT_AC_LANG_GCJ_CONFIG is expanded from... +aclocal.m4:3718: AC_LIBTOOL_LANG_GCJ_CONFIG is expanded from... +aclocal.m4:1622: _LT_AC_TAGCONFIG is expanded from... +aclocal.m4:87: AC_LIBTOOL_SETUP is expanded from... +aclocal.m4:67: _AC_PROG_LIBTOOL is expanded from... +aclocal.m4:32: AC_PROG_LIBTOOL is expanded from... +configure.ac:64: the top level]) +m4trace:configure.ac:64: -1- _m4_warn([obsolete], [The macro `AC_LANG_SAVE' is obsolete. +You should run autoupdate.], [../../lib/autoconf/lang.m4:126: AC_LANG_SAVE is expanded from... +aclocal.m4:3770: _LT_AC_LANG_RC_CONFIG is expanded from... +aclocal.m4:3769: AC_LIBTOOL_LANG_RC_CONFIG is expanded from... +aclocal.m4:1622: _LT_AC_TAGCONFIG is expanded from... +aclocal.m4:87: AC_LIBTOOL_SETUP is expanded from... +aclocal.m4:67: _AC_PROG_LIBTOOL is expanded from... +aclocal.m4:32: AC_PROG_LIBTOOL is expanded from... +configure.ac:64: the top level]) +m4trace:configure.ac:64: -1- _m4_warn([obsolete], [The macro `AC_LANG_RESTORE' is obsolete. +You should run autoupdate.], [../../lib/autoconf/lang.m4:135: AC_LANG_RESTORE is expanded from... +aclocal.m4:3770: _LT_AC_LANG_RC_CONFIG is expanded from... +aclocal.m4:3769: AC_LIBTOOL_LANG_RC_CONFIG is expanded from... +aclocal.m4:1622: _LT_AC_TAGCONFIG is expanded from... +aclocal.m4:87: AC_LIBTOOL_SETUP is expanded from... +aclocal.m4:67: _AC_PROG_LIBTOOL is expanded from... +aclocal.m4:32: AC_PROG_LIBTOOL is expanded from... +configure.ac:64: the top level]) +m4trace:configure.ac:64: -1- AC_SUBST([LIBTOOL]) +m4trace:configure.ac:64: -1- AC_SUBST_TRACE([LIBTOOL]) +m4trace:configure.ac:64: -1- m4_pattern_allow([^LIBTOOL$]) +m4trace:configure.ac:66: -1- AC_SUBST([LIBTOOL_DEPS]) +m4trace:configure.ac:66: -1- AC_SUBST_TRACE([LIBTOOL_DEPS]) +m4trace:configure.ac:66: -1- m4_pattern_allow([^LIBTOOL_DEPS$]) +m4trace:configure.ac:122: -1- AC_DEFINE_TRACE_LITERAL([STDC_HEADERS]) +m4trace:configure.ac:122: -1- m4_pattern_allow([^STDC_HEADERS$]) +m4trace:configure.ac:122: -1- AH_OUTPUT([STDC_HEADERS], [/* Define to 1 if you have the ANSI C header files. */ +@%:@undef STDC_HEADERS]) +m4trace:configure.ac:123: -1- AH_OUTPUT([HAVE_ASSERT_H], [/* Define to 1 if you have the header file. */ +@%:@undef HAVE_ASSERT_H]) +m4trace:configure.ac:123: -1- AH_OUTPUT([HAVE_UNISTD_H], [/* Define to 1 if you have the header file. */ +@%:@undef HAVE_UNISTD_H]) +m4trace:configure.ac:134: -1- AC_DEFINE_TRACE_LITERAL([const]) +m4trace:configure.ac:134: -1- m4_pattern_allow([^const$]) +m4trace:configure.ac:134: -1- AH_OUTPUT([const], [/* Define to empty if `const\' does not conform to ANSI C. */ +@%:@undef const]) +m4trace:configure.ac:135: -1- AH_OUTPUT([inline], [/* Define to `__inline__\' or `__inline\' if that\'s what the C compiler + calls it, or to nothing if \'inline\' is not supported under any name. */ +#ifndef __cplusplus +#undef inline +#endif]) +m4trace:configure.ac:139: -1- AH_OUTPUT([HAVE_FTRUNCATE], [/* Define to 1 if you have the `ftruncate\' function. */ +@%:@undef HAVE_FTRUNCATE]) +m4trace:configure.ac:139: -1- AC_DEFINE_TRACE_LITERAL([HAVE_FTRUNCATE]) +m4trace:configure.ac:139: -1- m4_pattern_allow([^HAVE_FTRUNCATE$]) +m4trace:configure.ac:141: -1- AH_OUTPUT([HAVE_LIBZ], [/* Define to 1 if you have the `z\' library (-lz). */ +@%:@undef HAVE_LIBZ]) +m4trace:configure.ac:141: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LIBZ]) +m4trace:configure.ac:141: -1- m4_pattern_allow([^HAVE_LIBZ$]) +m4trace:configure.ac:153: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from... +configure.ac:153: the top level]) +m4trace:configure.ac:163: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from... +configure.ac:163: the top level]) +m4trace:configure.ac:165: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from... +configure.ac:165: the top level]) +m4trace:configure.ac:163: -1- AC_DEFINE_TRACE_LITERAL([DEBUG]) +m4trace:configure.ac:163: -1- m4_pattern_allow([^DEBUG$]) +m4trace:configure.ac:163: -1- AH_OUTPUT([DEBUG], [/* Define to enable diagnostic debugging support. */ +@%:@undef DEBUG]) +m4trace:configure.ac:163: -1- AC_DEFINE_TRACE_LITERAL([NDEBUG]) +m4trace:configure.ac:163: -1- m4_pattern_allow([^NDEBUG$]) +m4trace:configure.ac:163: -1- AH_OUTPUT([NDEBUG], [/* Define to disable debugging assertions. */ +@%:@undef NDEBUG]) +m4trace:configure.ac:191: -1- AM_CONDITIONAL([DEBUG], [test ${enable_debugging-default} = yes]) +m4trace:configure.ac:191: -1- AC_SUBST([DEBUG_TRUE]) +m4trace:configure.ac:191: -1- AC_SUBST_TRACE([DEBUG_TRUE]) +m4trace:configure.ac:191: -1- m4_pattern_allow([^DEBUG_TRUE$]) +m4trace:configure.ac:191: -1- AC_SUBST([DEBUG_FALSE]) +m4trace:configure.ac:191: -1- AC_SUBST_TRACE([DEBUG_FALSE]) +m4trace:configure.ac:191: -1- m4_pattern_allow([^DEBUG_FALSE$]) +m4trace:configure.ac:203: -1- AC_CONFIG_FILES([Makefile msvc++/Makefile \ + libid3tag.list]) +m4trace:configure.ac:205: -1- AC_SUBST([LIB@&t@OBJS], [$ac_libobjs]) +m4trace:configure.ac:205: -1- AC_SUBST_TRACE([LIB@&t@OBJS]) +m4trace:configure.ac:205: -1- m4_pattern_allow([^LIB@&t@OBJS$]) +m4trace:configure.ac:205: -1- AC_SUBST([LTLIBOBJS], [$ac_ltlibobjs]) +m4trace:configure.ac:205: -1- AC_SUBST_TRACE([LTLIBOBJS]) +m4trace:configure.ac:205: -1- m4_pattern_allow([^LTLIBOBJS$]) +m4trace:configure.ac:205: -1- AC_SUBST_TRACE([top_builddir]) +m4trace:configure.ac:205: -1- AC_SUBST_TRACE([top_build_prefix]) +m4trace:configure.ac:205: -1- AC_SUBST_TRACE([srcdir]) +m4trace:configure.ac:205: -1- AC_SUBST_TRACE([abs_srcdir]) +m4trace:configure.ac:205: -1- AC_SUBST_TRACE([top_srcdir]) +m4trace:configure.ac:205: -1- AC_SUBST_TRACE([abs_top_srcdir]) +m4trace:configure.ac:205: -1- AC_SUBST_TRACE([builddir]) +m4trace:configure.ac:205: -1- AC_SUBST_TRACE([abs_builddir]) +m4trace:configure.ac:205: -1- AC_SUBST_TRACE([abs_top_builddir]) +m4trace:configure.ac:205: -1- AC_SUBST_TRACE([INSTALL]) diff --git a/release/src/router/libid3tag/config.h.in b/release/src/router/libid3tag/config.h.in index ba35b4be93..2a66065bfd 100644 --- a/release/src/router/libid3tag/config.h.in +++ b/release/src/router/libid3tag/config.h.in @@ -60,6 +60,9 @@ /* Define to the one symbol short name of this package. */ #undef PACKAGE_TARNAME +/* Define to the home page for this package. */ +#undef PACKAGE_URL + /* Define to the version of this package. */ #undef PACKAGE_VERSION diff --git a/release/src/router/libid3tag/config.h.in b/release/src/router/libid3tag/config.h.in~ similarity index 100% copy from release/src/router/libid3tag/config.h.in copy to release/src/router/libid3tag/config.h.in~ diff --git a/release/src/router/libid3tag/configure b/release/src/router/libid3tag/configure index 735704ace7..6f925a7deb 100755 --- a/release/src/router/libid3tag/configure +++ b/release/src/router/libid3tag/configure @@ -1,84 +1,427 @@ #! /bin/sh # From configure.ac Id: configure.ac,v 1.12 2004/01/23 23:22:46 rob Exp . # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.59 for ID3 Tag 0.15.1b. +# Generated by GNU Autoconf 2.68 for ID3 Tag 0.15.1b. # # Report bugs to . # -# Copyright (C) 2003 Free Software Foundation, Inc. +# +# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, +# 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software +# Foundation, Inc. +# +# # This configure script is free software; the Free Software Foundation # gives unlimited permission to copy, distribute and modify it. -## --------------------- ## -## M4sh Initialization. ## -## --------------------- ## +## -------------------- ## +## M4sh Initialization. ## +## -------------------- ## -# Be Bourne compatible -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then +# Be more Bourne compatible +DUALCASE=1; export DUALCASE # for MKS sh +if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then : emulate sh NULLCMD=: - # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which + # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which # is contrary to our usage. Disable this feature. alias -g '${1+"$@"}'='"$@"' -elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then - set -o posix + setopt NO_GLOB_SUBST +else + case `(set -o) 2>/dev/null` in #( + *posix*) : + set -o posix ;; #( + *) : + ;; +esac fi -DUALCASE=1; export DUALCASE # for MKS sh -# Support unset when possible. -if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then - as_unset=unset -else - as_unset=false + +as_nl=' +' +export as_nl +# Printing a long string crashes Solaris 7 /usr/bin/printf. +as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' +as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo +as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo +# Prefer a ksh shell builtin over an external printf program on Solaris, +# but without wasting forks for bash or zsh. +if test -z "$BASH_VERSION$ZSH_VERSION" \ + && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then + as_echo='print -r --' + as_echo_n='print -rn --' +elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then + as_echo='printf %s\n' + as_echo_n='printf %s' +else + if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then + as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"' + as_echo_n='/usr/ucb/echo -n' + else + as_echo_body='eval expr "X$1" : "X\\(.*\\)"' + as_echo_n_body='eval + arg=$1; + case $arg in #( + *"$as_nl"*) + expr "X$arg" : "X\\(.*\\)$as_nl"; + arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;; + esac; + expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl" + ' + export as_echo_n_body + as_echo_n='sh -c $as_echo_n_body as_echo' + fi + export as_echo_body + as_echo='sh -c $as_echo_body as_echo' fi +# The user is always right. +if test "${PATH_SEPARATOR+set}" != set; then + PATH_SEPARATOR=: + (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { + (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || + PATH_SEPARATOR=';' + } +fi + + +# IFS +# We need space, tab and new line, in precisely that order. Quoting is +# there to prevent editors from complaining about space-tab. +# (If _AS_PATH_WALK were called with IFS unset, it would disable word +# splitting by setting IFS to empty value.) +IFS=" "" $as_nl" + +# Find who we are. Look in the path if we contain no directory separator. +as_myself= +case $0 in #(( + *[\\/]* ) as_myself=$0 ;; + *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break + done +IFS=$as_save_IFS -# Work around bugs in pre-3.0 UWIN ksh. -$as_unset ENV MAIL MAILPATH + ;; +esac +# We did not find ourselves, most probably we were run as `sh COMMAND' +# in which case we are not to be found in the path. +if test "x$as_myself" = x; then + as_myself=$0 +fi +if test ! -f "$as_myself"; then + $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 + exit 1 +fi + +# Unset variables that we do not need and which cause bugs (e.g. in +# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1" +# suppresses any "Segmentation fault" message there. '((' could +# trigger a bug in pdksh 5.2.14. +for as_var in BASH_ENV ENV MAIL MAILPATH +do eval test x\${$as_var+set} = xset \ + && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : +done PS1='$ ' PS2='> ' PS4='+ ' # NLS nuisances. -for as_var in \ - LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \ - LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \ - LC_TELEPHONE LC_TIME +LC_ALL=C +export LC_ALL +LANGUAGE=C +export LANGUAGE + +# CDPATH. +(unset CDPATH) >/dev/null 2>&1 && unset CDPATH + +if test "x$CONFIG_SHELL" = x; then + as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then : + emulate sh + NULLCMD=: + # Pre-4.2 versions of Zsh do word splitting on \${1+\"\$@\"}, which + # is contrary to our usage. Disable this feature. + alias -g '\${1+\"\$@\"}'='\"\$@\"' + setopt NO_GLOB_SUBST +else + case \`(set -o) 2>/dev/null\` in #( + *posix*) : + set -o posix ;; #( + *) : + ;; +esac +fi +" + as_required="as_fn_return () { (exit \$1); } +as_fn_success () { as_fn_return 0; } +as_fn_failure () { as_fn_return 1; } +as_fn_ret_success () { return 0; } +as_fn_ret_failure () { return 1; } + +exitcode=0 +as_fn_success || { exitcode=1; echo as_fn_success failed.; } +as_fn_failure && { exitcode=1; echo as_fn_failure succeeded.; } +as_fn_ret_success || { exitcode=1; echo as_fn_ret_success failed.; } +as_fn_ret_failure && { exitcode=1; echo as_fn_ret_failure succeeded.; } +if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then : + +else + exitcode=1; echo positional parameters were not saved. +fi +test x\$exitcode = x0 || exit 1" + as_suggested=" as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO + as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO + eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" && + test \"x\`expr \$as_lineno_1'\$as_run' + 1\`\" = \"x\$as_lineno_2'\$as_run'\"' || exit 1 +test \$(( 1 + 1 )) = 2 || exit 1" + if (eval "$as_required") 2>/dev/null; then : + as_have_required=yes +else + as_have_required=no +fi + if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null; then : + +else + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +as_found=false +for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH do - if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then - eval $as_var=C; export $as_var + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + as_found=: + case $as_dir in #( + /*) + for as_base in sh bash ksh sh5; do + # Try only shells that exist, to save several forks. + as_shell=$as_dir/$as_base + if { test -f "$as_shell" || test -f "$as_shell.exe"; } && + { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$as_shell"; } 2>/dev/null; then : + CONFIG_SHELL=$as_shell as_have_required=yes + if { $as_echo "$as_bourne_compatible""$as_suggested" | as_run=a "$as_shell"; } 2>/dev/null; then : + break 2 +fi +fi + done;; + esac + as_found=false +done +$as_found || { if { test -f "$SHELL" || test -f "$SHELL.exe"; } && + { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$SHELL"; } 2>/dev/null; then : + CONFIG_SHELL=$SHELL as_have_required=yes +fi; } +IFS=$as_save_IFS + + + if test "x$CONFIG_SHELL" != x; then : + # We cannot yet assume a decent shell, so we have to provide a + # neutralization value for shells without unset; and this also + # works around shells that cannot unset nonexistent variables. + # Preserve -v and -x to the replacement shell. + BASH_ENV=/dev/null + ENV=/dev/null + (unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV + export CONFIG_SHELL + case $- in # (((( + *v*x* | *x*v* ) as_opts=-vx ;; + *v* ) as_opts=-v ;; + *x* ) as_opts=-x ;; + * ) as_opts= ;; + esac + exec "$CONFIG_SHELL" $as_opts "$as_myself" ${1+"$@"} +fi + + if test x$as_have_required = xno; then : + $as_echo "$0: This script requires a shell more modern than all" + $as_echo "$0: the shells that I found on your system." + if test x${ZSH_VERSION+set} = xset ; then + $as_echo "$0: In particular, zsh $ZSH_VERSION has bugs and should" + $as_echo "$0: be upgraded to zsh 4.3.4 or later." else - $as_unset $as_var + $as_echo "$0: Please tell bug-autoconf@gnu.org and +$0: support@underbit.com about your system, including any +$0: error possibly output before this message. Then install +$0: a modern shell, or manually run the script under such a +$0: shell if you do have one." fi -done + exit 1 +fi +fi +fi +SHELL=${CONFIG_SHELL-/bin/sh} +export SHELL +# Unset more variables known to interfere with behavior of common tools. +CLICOLOR_FORCE= GREP_OPTIONS= +unset CLICOLOR_FORCE GREP_OPTIONS + +## --------------------- ## +## M4sh Shell Functions. ## +## --------------------- ## +# as_fn_unset VAR +# --------------- +# Portably unset VAR. +as_fn_unset () +{ + { eval $1=; unset $1;} +} +as_unset=as_fn_unset + +# as_fn_set_status STATUS +# ----------------------- +# Set $? to STATUS, without forking. +as_fn_set_status () +{ + return $1 +} # as_fn_set_status + +# as_fn_exit STATUS +# ----------------- +# Exit the shell with STATUS, even in a "trap 0" or "set -e" context. +as_fn_exit () +{ + set +e + as_fn_set_status $1 + exit $1 +} # as_fn_exit + +# as_fn_mkdir_p +# ------------- +# Create "$as_dir" as a directory, including parents if necessary. +as_fn_mkdir_p () +{ + + case $as_dir in #( + -*) as_dir=./$as_dir;; + esac + test -d "$as_dir" || eval $as_mkdir_p || { + as_dirs= + while :; do + case $as_dir in #( + *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( + *) as_qdir=$as_dir;; + esac + as_dirs="'$as_qdir' $as_dirs" + as_dir=`$as_dirname -- "$as_dir" || +$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$as_dir" : 'X\(//\)[^/]' \| \ + X"$as_dir" : 'X\(//\)$' \| \ + X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X"$as_dir" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + test -d "$as_dir" && break + done + test -z "$as_dirs" || eval "mkdir $as_dirs" + } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir" + + +} # as_fn_mkdir_p +# as_fn_append VAR VALUE +# ---------------------- +# Append the text in VALUE to the end of the definition contained in VAR. Take +# advantage of any shell optimizations that allow amortized linear growth over +# repeated appends, instead of the typical quadratic growth present in naive +# implementations. +if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then : + eval 'as_fn_append () + { + eval $1+=\$2 + }' +else + as_fn_append () + { + eval $1=\$$1\$2 + } +fi # as_fn_append + +# as_fn_arith ARG... +# ------------------ +# Perform arithmetic evaluation on the ARGs, and store the result in the +# global $as_val. Take advantage of shells that can avoid forks. The arguments +# must be portable across $(()) and expr. +if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then : + eval 'as_fn_arith () + { + as_val=$(( $* )) + }' +else + as_fn_arith () + { + as_val=`expr "$@" || test $? -eq 1` + } +fi # as_fn_arith + + +# as_fn_error STATUS ERROR [LINENO LOG_FD] +# ---------------------------------------- +# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are +# provided, also output the error to LOG_FD, referencing LINENO. Then exit the +# script with STATUS, using 1 if that was 0. +as_fn_error () +{ + as_status=$1; test $as_status -eq 0 && as_status=1 + if test "$4"; then + as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4 + fi + $as_echo "$as_me: error: $2" >&2 + as_fn_exit $as_status +} # as_fn_error -# Required to use basename. -if expr a : '\(a\)' >/dev/null 2>&1; then +if expr a : '\(a\)' >/dev/null 2>&1 && + test "X`expr 00001 : '.*\(...\)'`" = X001; then as_expr=expr else as_expr=false fi -if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then +if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then as_basename=basename else as_basename=false fi +if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then + as_dirname=dirname +else + as_dirname=false +fi -# Name of the executable. -as_me=`$as_basename "$0" || +as_me=`$as_basename -- "$0" || $as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)$' \| \ - . : '\(.\)' 2>/dev/null || -echo X/"$0" | - sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; } - /^X\/\(\/\/\)$/{ s//\1/; q; } - /^X\/\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - + X"$0" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X/"$0" | + sed '/^.*\/\([^/][^/]*\)\/*$/{ + s//\1/ + q + } + /^X\/\(\/\/\)$/{ + s//\1/ + q + } + /^X\/\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` -# PATH needs CR, and LINENO needs CR and PATH. # Avoid depending upon Character Ranges. as_cr_letters='abcdefghijklmnopqrstuvwxyz' as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' @@ -86,146 +429,107 @@ as_cr_Letters=$as_cr_letters$as_cr_LETTERS as_cr_digits='0123456789' as_cr_alnum=$as_cr_Letters$as_cr_digits -# The user is always right. -if test "${PATH_SEPARATOR+set}" != set; then - echo "#! /bin/sh" >conf$$.sh - echo "exit 0" >>conf$$.sh - chmod +x conf$$.sh - if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then - PATH_SEPARATOR=';' - else - PATH_SEPARATOR=: - fi - rm -f conf$$.sh -fi - - - as_lineno_1=$LINENO - as_lineno_2=$LINENO - as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` - test "x$as_lineno_1" != "x$as_lineno_2" && - test "x$as_lineno_3" = "x$as_lineno_2" || { - # Find who we are. Look in the path if we contain no path at all - # relative or not. - case $0 in - *[\\/]* ) as_myself=$0 ;; - *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break -done - - ;; - esac - # We did not find ourselves, most probably we were run as `sh COMMAND' - # in which case we are not to be found in the path. - if test "x$as_myself" = x; then - as_myself=$0 - fi - if test ! -f "$as_myself"; then - { echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2 - { (exit 1); exit 1; }; } - fi - case $CONFIG_SHELL in - '') - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for as_base in sh bash ksh sh5; do - case $as_dir in - /*) - if ("$as_dir/$as_base" -c ' - as_lineno_1=$LINENO - as_lineno_2=$LINENO - as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` - test "x$as_lineno_1" != "x$as_lineno_2" && - test "x$as_lineno_3" = "x$as_lineno_2" ') 2>/dev/null; then - $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { BASH_ENV=; export BASH_ENV; } - $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; } - CONFIG_SHELL=$as_dir/$as_base - export CONFIG_SHELL - exec "$CONFIG_SHELL" "$0" ${1+"$@"} - fi;; - esac - done -done -;; - esac - # Create $as_me.lineno as a copy of $as_myself, but with $LINENO - # uniformly replaced by the line number. The first 'sed' inserts a - # line-number line before each line; the second 'sed' does the real - # work. The second script uses 'N' to pair each line-number line - # with the numbered line, and appends trailing '-' during - # substitution so that $LINENO is not a special case at line end. - # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the - # second 'sed' script. Blame Lee E. McMahon for sed's syntax. :-) - sed '=' <$as_myself | + as_lineno_1=$LINENO as_lineno_1a=$LINENO + as_lineno_2=$LINENO as_lineno_2a=$LINENO + eval 'test "x$as_lineno_1'$as_run'" != "x$as_lineno_2'$as_run'" && + test "x`expr $as_lineno_1'$as_run' + 1`" = "x$as_lineno_2'$as_run'"' || { + # Blame Lee E. McMahon (1931-1989) for sed's syntax. :-) + sed -n ' + p + /[$]LINENO/= + ' <$as_myself | sed ' + s/[$]LINENO.*/&-/ + t lineno + b + :lineno N - s,$,-, - : loop - s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3, + :loop + s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/ t loop - s,-$,, - s,^['$as_cr_digits']*\n,, + s/-\n.*// ' >$as_me.lineno && - chmod +x $as_me.lineno || - { echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2 - { (exit 1); exit 1; }; } + chmod +x "$as_me.lineno" || + { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; } # Don't try to exec as it changes $[0], causing all sort of problems # (the dirname of $[0] is not the place where we might find the - # original and so on. Autoconf is especially sensible to this). - . ./$as_me.lineno + # original and so on. Autoconf is especially sensitive to this). + . "./$as_me.lineno" # Exit status is that of the last command. exit } - -case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in - *c*,-n*) ECHO_N= ECHO_C=' -' ECHO_T=' ' ;; - *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;; - *) ECHO_N= ECHO_C='\c' ECHO_T= ;; +ECHO_C= ECHO_N= ECHO_T= +case `echo -n x` in #((((( +-n*) + case `echo 'xy\c'` in + *c*) ECHO_T=' ';; # ECHO_T is single tab character. + xy) ECHO_C='\c';; + *) echo `echo ksh88 bug on AIX 6.1` > /dev/null + ECHO_T=' ';; + esac;; +*) + ECHO_N='-n';; esac -if expr a : '\(a\)' >/dev/null 2>&1; then - as_expr=expr +rm -f conf$$ conf$$.exe conf$$.file +if test -d conf$$.dir; then + rm -f conf$$.dir/conf$$.file else - as_expr=false + rm -f conf$$.dir + mkdir conf$$.dir 2>/dev/null fi - -rm -f conf$$ conf$$.exe conf$$.file -echo >conf$$.file -if ln -s conf$$.file conf$$ 2>/dev/null; then - # We could just check for DJGPP; but this test a) works b) is more generic - # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04). - if test -f conf$$.exe; then - # Don't use ln at all; we don't have any links - as_ln_s='cp -p' - else +if (echo >conf$$.file) 2>/dev/null; then + if ln -s conf$$.file conf$$ 2>/dev/null; then as_ln_s='ln -s' + # ... but there are two gotchas: + # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. + # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. + # In both cases, we have to default to `cp -p'. + ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || + as_ln_s='cp -p' + elif ln conf$$.file conf$$ 2>/dev/null; then + as_ln_s=ln + else + as_ln_s='cp -p' fi -elif ln conf$$.file conf$$ 2>/dev/null; then - as_ln_s=ln else as_ln_s='cp -p' fi -rm -f conf$$ conf$$.exe conf$$.file +rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file +rmdir conf$$.dir 2>/dev/null if mkdir -p . 2>/dev/null; then - as_mkdir_p=: + as_mkdir_p='mkdir -p "$as_dir"' else test -d ./-p && rmdir ./-p as_mkdir_p=false fi -as_executable_p="test -f" +if test -x / >/dev/null 2>&1; then + as_test_x='test -x' +else + if ls -dL / >/dev/null 2>&1; then + as_ls_L_option=L + else + as_ls_L_option= + fi + as_test_x=' + eval sh -c '\'' + if test -d "$1"; then + test -d "$1/."; + else + case $1 in #( + -*)set "./$1";; + esac; + case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #(( + ???[sx]*):;;*)false;;esac;fi + '\'' sh + ' +fi +as_executable_p=$as_test_x # Sed expression to map a string onto a valid CPP name. as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" @@ -234,16 +538,6 @@ as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" -# IFS -# We need space, tab and new line, in precisely that order. -as_nl=' -' -IFS=" $as_nl" - -# CDPATH. -$as_unset CDPATH - - # Check that we are running under the correct shell. SHELL=${CONFIG_SHELL-/bin/sh} @@ -398,28 +692,25 @@ tagnames=${tagnames+${tagnames},}CXX tagnames=${tagnames+${tagnames},}F77 +test -n "$DJDIR" || exec 7<&0 &1 + # Name of the host. -# hostname on some systems (SVR3.2, Linux) returns a bogus exit status, +# hostname on some systems (SVR3.2, old GNU/Linux) returns a bogus exit status, # so uname gets run too. ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q` -exec 6>&1 - # # Initializations. # ac_default_prefix=/usr/local +ac_clean_files= ac_config_libobj_dir=. +LIBOBJS= cross_compiling=no subdirs= MFLAGS= MAKEFLAGS= -SHELL=${CONFIG_SHELL-/bin/sh} - -# Maximum number of lines to put in a shell here document. -# This variable seems obsolete. It should probably be removed, and -# only ac_max_sed_lines should be used. -: ${ac_max_here_lines=38} # Identity of this package. PACKAGE_NAME='ID3 Tag' @@ -427,51 +718,185 @@ PACKAGE_TARNAME='libid3tag' PACKAGE_VERSION='0.15.1b' PACKAGE_STRING='ID3 Tag 0.15.1b' PACKAGE_BUGREPORT='support@underbit.com' +PACKAGE_URL='' ac_unique_file="id3tag.h" # Factoring default headers for most tests. ac_includes_default="\ #include -#if HAVE_SYS_TYPES_H +#ifdef HAVE_SYS_TYPES_H # include #endif -#if HAVE_SYS_STAT_H +#ifdef HAVE_SYS_STAT_H # include #endif -#if STDC_HEADERS +#ifdef STDC_HEADERS # include # include #else -# if HAVE_STDLIB_H +# ifdef HAVE_STDLIB_H # include # endif #endif -#if HAVE_STRING_H -# if !STDC_HEADERS && HAVE_MEMORY_H +#ifdef HAVE_STRING_H +# if !defined STDC_HEADERS && defined HAVE_MEMORY_H # include # endif # include #endif -#if HAVE_STRINGS_H +#ifdef HAVE_STRINGS_H # include #endif -#if HAVE_INTTYPES_H +#ifdef HAVE_INTTYPES_H # include -#else -# if HAVE_STDINT_H -# include -# endif #endif -#if HAVE_UNISTD_H +#ifdef HAVE_STDINT_H +# include +#endif +#ifdef HAVE_UNISTD_H # include #endif" -ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO AMTAR install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot build build_cpu build_vendor build_os host host_cpu host_vendor host_os CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE EGREP LN_S ECHO AR ac_ct_AR RANLIB ac_ct_RANLIB CPP CXX CXXFLAGS ac_ct_CXX CXXDEPMODE am__fastdepCXX_TRUE am__fastdepCXX_FALSE CXXCPP F77 FFLAGS ac_ct_F77 LIBTOOL LIBTOOL_DEPS DEBUG_TRUE DEBUG_FALSE LIBOBJS LTLIBOBJS' +ac_subst_vars='LTLIBOBJS +LIBOBJS +DEBUG_FALSE +DEBUG_TRUE +LIBTOOL_DEPS +LIBTOOL +ac_ct_F77 +FFLAGS +F77 +CXXCPP +am__fastdepCXX_FALSE +am__fastdepCXX_TRUE +CXXDEPMODE +ac_ct_CXX +CXXFLAGS +CXX +CPP +RANLIB +AR +ECHO +LN_S +EGREP +GREP +am__fastdepCC_FALSE +am__fastdepCC_TRUE +CCDEPMODE +AMDEPBACKSLASH +AMDEP_FALSE +AMDEP_TRUE +am__quote +am__include +DEPDIR +OBJEXT +EXEEXT +ac_ct_CC +CPPFLAGS +LDFLAGS +CFLAGS +CC +host_os +host_vendor +host_cpu +host +build_os +build_vendor +build_cpu +build +am__leading_dot +SET_MAKE +AWK +mkdir_p +INSTALL_STRIP_PROGRAM +STRIP +install_sh +AMTAR +MAKEINFO +AUTOHEADER +AUTOMAKE +AUTOCONF +ACLOCAL +VERSION +PACKAGE +CYGPATH_W +INSTALL_DATA +INSTALL_SCRIPT +INSTALL_PROGRAM +target_alias +host_alias +build_alias +LIBS +ECHO_T +ECHO_N +ECHO_C +DEFS +mandir +localedir +libdir +psdir +pdfdir +dvidir +htmldir +infodir +docdir +oldincludedir +includedir +localstatedir +sharedstatedir +sysconfdir +datadir +datarootdir +libexecdir +sbindir +bindir +program_transform_name +prefix +exec_prefix +PACKAGE_URL +PACKAGE_BUGREPORT +PACKAGE_STRING +PACKAGE_VERSION +PACKAGE_TARNAME +PACKAGE_NAME +PATH_SEPARATOR +SHELL' ac_subst_files='' +ac_user_opts=' +enable_option_checking +enable_dependency_tracking +enable_shared +enable_static +enable_fast_install +with_gnu_ld +enable_libtool_lock +with_pic +with_tags +enable_profiling +enable_debugging +' + ac_precious_vars='build_alias +host_alias +target_alias +CC +CFLAGS +LDFLAGS +LIBS +CPPFLAGS +CPP +CXX +CXXFLAGS +CCC +CXXCPP +F77 +FFLAGS' + # Initialize some variables set by options. ac_init_help= ac_init_version=false +ac_unrecognized_opts= +ac_unrecognized_sep= # The variables have the same names as the options, with # dashes changed to underlines. cache_file=/dev/null @@ -494,34 +919,49 @@ x_libraries=NONE # and all the variables that are supposed to be based on exec_prefix # by default will actually change. # Use braces instead of parens because sh, perl, etc. also accept them. +# (The list follows the same order as the GNU Coding Standards.) bindir='${exec_prefix}/bin' sbindir='${exec_prefix}/sbin' libexecdir='${exec_prefix}/libexec' -datadir='${prefix}/share' +datarootdir='${prefix}/share' +datadir='${datarootdir}' sysconfdir='${prefix}/etc' sharedstatedir='${prefix}/com' localstatedir='${prefix}/var' -libdir='${exec_prefix}/lib' includedir='${prefix}/include' oldincludedir='/usr/include' -infodir='${prefix}/info' -mandir='${prefix}/man' +docdir='${datarootdir}/doc/${PACKAGE_TARNAME}' +infodir='${datarootdir}/info' +htmldir='${docdir}' +dvidir='${docdir}' +pdfdir='${docdir}' +psdir='${docdir}' +libdir='${exec_prefix}/lib' +localedir='${datarootdir}/locale' +mandir='${datarootdir}/man' ac_prev= +ac_dashdash= for ac_option do # If the previous option needs an argument, assign it. if test -n "$ac_prev"; then - eval "$ac_prev=\$ac_option" + eval $ac_prev=\$ac_option ac_prev= continue fi - ac_optarg=`expr "x$ac_option" : 'x[^=]*=\(.*\)'` + case $ac_option in + *=?*) ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;; + *=) ac_optarg= ;; + *) ac_optarg=yes ;; + esac # Accept the important Cygnus configure options, so we can diagnose typos. - case $ac_option in + case $ac_dashdash$ac_option in + --) + ac_dashdash=yes ;; -bindir | --bindir | --bindi | --bind | --bin | --bi) ac_prev=bindir ;; @@ -543,33 +983,59 @@ do --config-cache | -C) cache_file=config.cache ;; - -datadir | --datadir | --datadi | --datad | --data | --dat | --da) + -datadir | --datadir | --datadi | --datad) ac_prev=datadir ;; - -datadir=* | --datadir=* | --datadi=* | --datad=* | --data=* | --dat=* \ - | --da=*) + -datadir=* | --datadir=* | --datadi=* | --datad=*) datadir=$ac_optarg ;; + -datarootdir | --datarootdir | --datarootdi | --datarootd | --dataroot \ + | --dataroo | --dataro | --datar) + ac_prev=datarootdir ;; + -datarootdir=* | --datarootdir=* | --datarootdi=* | --datarootd=* \ + | --dataroot=* | --dataroo=* | --dataro=* | --datar=*) + datarootdir=$ac_optarg ;; + -disable-* | --disable-*) - ac_feature=`expr "x$ac_option" : 'x-*disable-\(.*\)'` + ac_useropt=`expr "x$ac_option" : 'x-*disable-\(.*\)'` # Reject names that are not valid shell variable names. - expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null && - { echo "$as_me: error: invalid feature name: $ac_feature" >&2 - { (exit 1); exit 1; }; } - ac_feature=`echo $ac_feature | sed 's/-/_/g'` - eval "enable_$ac_feature=no" ;; + expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && + as_fn_error $? "invalid feature name: $ac_useropt" + ac_useropt_orig=$ac_useropt + ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` + case $ac_user_opts in + *" +"enable_$ac_useropt" +"*) ;; + *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--disable-$ac_useropt_orig" + ac_unrecognized_sep=', ';; + esac + eval enable_$ac_useropt=no ;; + + -docdir | --docdir | --docdi | --doc | --do) + ac_prev=docdir ;; + -docdir=* | --docdir=* | --docdi=* | --doc=* | --do=*) + docdir=$ac_optarg ;; + + -dvidir | --dvidir | --dvidi | --dvid | --dvi | --dv) + ac_prev=dvidir ;; + -dvidir=* | --dvidir=* | --dvidi=* | --dvid=* | --dvi=* | --dv=*) + dvidir=$ac_optarg ;; -enable-* | --enable-*) - ac_feature=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'` + ac_useropt=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'` # Reject names that are not valid shell variable names. - expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null && - { echo "$as_me: error: invalid feature name: $ac_feature" >&2 - { (exit 1); exit 1; }; } - ac_feature=`echo $ac_feature | sed 's/-/_/g'` - case $ac_option in - *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;; - *) ac_optarg=yes ;; + expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && + as_fn_error $? "invalid feature name: $ac_useropt" + ac_useropt_orig=$ac_useropt + ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` + case $ac_user_opts in + *" +"enable_$ac_useropt" +"*) ;; + *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--enable-$ac_useropt_orig" + ac_unrecognized_sep=', ';; esac - eval "enable_$ac_feature='$ac_optarg'" ;; + eval enable_$ac_useropt=\$ac_optarg ;; -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \ | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \ @@ -596,6 +1062,12 @@ do -host=* | --host=* | --hos=* | --ho=*) host_alias=$ac_optarg ;; + -htmldir | --htmldir | --htmldi | --htmld | --html | --htm | --ht) + ac_prev=htmldir ;; + -htmldir=* | --htmldir=* | --htmldi=* | --htmld=* | --html=* | --htm=* \ + | --ht=*) + htmldir=$ac_optarg ;; + -includedir | --includedir | --includedi | --included | --include \ | --includ | --inclu | --incl | --inc) ac_prev=includedir ;; @@ -620,13 +1092,16 @@ do | --libexe=* | --libex=* | --libe=*) libexecdir=$ac_optarg ;; + -localedir | --localedir | --localedi | --localed | --locale) + ac_prev=localedir ;; + -localedir=* | --localedir=* | --localedi=* | --localed=* | --locale=*) + localedir=$ac_optarg ;; + -localstatedir | --localstatedir | --localstatedi | --localstated \ - | --localstate | --localstat | --localsta | --localst \ - | --locals | --local | --loca | --loc | --lo) + | --localstate | --localstat | --localsta | --localst | --locals) ac_prev=localstatedir ;; -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \ - | --localstate=* | --localstat=* | --localsta=* | --localst=* \ - | --locals=* | --local=* | --loca=* | --loc=* | --lo=*) + | --localstate=* | --localstat=* | --localsta=* | --localst=* | --locals=*) localstatedir=$ac_optarg ;; -mandir | --mandir | --mandi | --mand | --man | --ma | --m) @@ -691,6 +1166,16 @@ do | --progr-tra=* | --program-tr=* | --program-t=*) program_transform_name=$ac_optarg ;; + -pdfdir | --pdfdir | --pdfdi | --pdfd | --pdf | --pd) + ac_prev=pdfdir ;; + -pdfdir=* | --pdfdir=* | --pdfdi=* | --pdfd=* | --pdf=* | --pd=*) + pdfdir=$ac_optarg ;; + + -psdir | --psdir | --psdi | --psd | --ps) + ac_prev=psdir ;; + -psdir=* | --psdir=* | --psdi=* | --psd=* | --ps=*) + psdir=$ac_optarg ;; + -q | -quiet | --quiet | --quie | --qui | --qu | --q \ | -silent | --silent | --silen | --sile | --sil) silent=yes ;; @@ -741,26 +1226,36 @@ do ac_init_version=: ;; -with-* | --with-*) - ac_package=`expr "x$ac_option" : 'x-*with-\([^=]*\)'` + ac_useropt=`expr "x$ac_option" : 'x-*with-\([^=]*\)'` # Reject names that are not valid shell variable names. - expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null && - { echo "$as_me: error: invalid package name: $ac_package" >&2 - { (exit 1); exit 1; }; } - ac_package=`echo $ac_package| sed 's/-/_/g'` - case $ac_option in - *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;; - *) ac_optarg=yes ;; + expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && + as_fn_error $? "invalid package name: $ac_useropt" + ac_useropt_orig=$ac_useropt + ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` + case $ac_user_opts in + *" +"with_$ac_useropt" +"*) ;; + *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--with-$ac_useropt_orig" + ac_unrecognized_sep=', ';; esac - eval "with_$ac_package='$ac_optarg'" ;; + eval with_$ac_useropt=\$ac_optarg ;; -without-* | --without-*) - ac_package=`expr "x$ac_option" : 'x-*without-\(.*\)'` + ac_useropt=`expr "x$ac_option" : 'x-*without-\(.*\)'` # Reject names that are not valid shell variable names. - expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null && - { echo "$as_me: error: invalid package name: $ac_package" >&2 - { (exit 1); exit 1; }; } - ac_package=`echo $ac_package | sed 's/-/_/g'` - eval "with_$ac_package=no" ;; + expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && + as_fn_error $? "invalid package name: $ac_useropt" + ac_useropt_orig=$ac_useropt + ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` + case $ac_user_opts in + *" +"with_$ac_useropt" +"*) ;; + *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--without-$ac_useropt_orig" + ac_unrecognized_sep=', ';; + esac + eval with_$ac_useropt=no ;; --x) # Obsolete; use --with-x. @@ -780,27 +1275,26 @@ do | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*) x_libraries=$ac_optarg ;; - -*) { echo "$as_me: error: unrecognized option: $ac_option -Try \`$0 --help' for more information." >&2 - { (exit 1); exit 1; }; } + -*) as_fn_error $? "unrecognized option: \`$ac_option' +Try \`$0 --help' for more information" ;; *=*) ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='` # Reject names that are not valid shell variable names. - expr "x$ac_envvar" : ".*[^_$as_cr_alnum]" >/dev/null && - { echo "$as_me: error: invalid variable name: $ac_envvar" >&2 - { (exit 1); exit 1; }; } - ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` - eval "$ac_envvar='$ac_optarg'" + case $ac_envvar in #( + '' | [0-9]* | *[!_$as_cr_alnum]* ) + as_fn_error $? "invalid variable name: \`$ac_envvar'" ;; + esac + eval $ac_envvar=\$ac_optarg export $ac_envvar ;; *) # FIXME: should be removed in autoconf 3.0. - echo "$as_me: WARNING: you should use --build, --host, --target" >&2 + $as_echo "$as_me: WARNING: you should use --build, --host, --target" >&2 expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null && - echo "$as_me: WARNING: invalid host type: $ac_option" >&2 - : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option} + $as_echo "$as_me: WARNING: invalid host type: $ac_option" >&2 + : "${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}" ;; esac @@ -808,31 +1302,36 @@ done if test -n "$ac_prev"; then ac_option=--`echo $ac_prev | sed 's/_/-/g'` - { echo "$as_me: error: missing argument to $ac_option" >&2 - { (exit 1); exit 1; }; } + as_fn_error $? "missing argument to $ac_option" fi -# Be sure to have absolute paths. -for ac_var in exec_prefix prefix -do - eval ac_val=$`echo $ac_var` - case $ac_val in - [\\/$]* | ?:[\\/]* | NONE | '' ) ;; - *) { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2 - { (exit 1); exit 1; }; };; +if test -n "$ac_unrecognized_opts"; then + case $enable_option_checking in + no) ;; + fatal) as_fn_error $? "unrecognized options: $ac_unrecognized_opts" ;; + *) $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;; esac -done +fi -# Be sure to have absolute paths. -for ac_var in bindir sbindir libexecdir datadir sysconfdir sharedstatedir \ - localstatedir libdir includedir oldincludedir infodir mandir +# Check all directory arguments for consistency. +for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \ + datadir sysconfdir sharedstatedir localstatedir includedir \ + oldincludedir docdir infodir htmldir dvidir pdfdir psdir \ + libdir localedir mandir do - eval ac_val=$`echo $ac_var` + eval ac_val=\$$ac_var + # Remove trailing slashes. + case $ac_val in + */ ) + ac_val=`expr "X$ac_val" : 'X\(.*[^/]\)' \| "X$ac_val" : 'X\(.*\)'` + eval $ac_var=\$ac_val;; + esac + # Be sure to have absolute directory names. case $ac_val in - [\\/$]* | ?:[\\/]* ) ;; - *) { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2 - { (exit 1); exit 1; }; };; + [\\/$]* | ?:[\\/]* ) continue;; + NONE | '' ) case $ac_var in *prefix ) continue;; esac;; esac + as_fn_error $? "expected an absolute directory name for --$ac_var: $ac_val" done # There might be people who depend on the old broken behavior: `$host' @@ -846,8 +1345,8 @@ target=$target_alias if test "x$host_alias" != x; then if test "x$build_alias" = x; then cross_compiling=maybe - echo "$as_me: WARNING: If you wanted to set the --build type, don't use --host. - If a cross compiler is detected then cross compile mode will be used." >&2 + $as_echo "$as_me: WARNING: if you wanted to set the --build type, don't use --host. + If a cross compiler is detected then cross compile mode will be used" >&2 elif test "x$build_alias" != "x$host_alias"; then cross_compiling=yes fi @@ -859,94 +1358,72 @@ test -n "$host_alias" && ac_tool_prefix=$host_alias- test "$silent" = yes && exec 6>/dev/null +ac_pwd=`pwd` && test -n "$ac_pwd" && +ac_ls_di=`ls -di .` && +ac_pwd_ls_di=`cd "$ac_pwd" && ls -di .` || + as_fn_error $? "working directory cannot be determined" +test "X$ac_ls_di" = "X$ac_pwd_ls_di" || + as_fn_error $? "pwd does not report name of working directory" + + # Find the source files, if location was not specified. if test -z "$srcdir"; then ac_srcdir_defaulted=yes - # Try the directory containing this script, then its parent. - ac_confdir=`(dirname "$0") 2>/dev/null || -$as_expr X"$0" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$0" : 'X\(//\)[^/]' \| \ - X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$0" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` + # Try the directory containing this script, then the parent directory. + ac_confdir=`$as_dirname -- "$as_myself" || +$as_expr X"$as_myself" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$as_myself" : 'X\(//\)[^/]' \| \ + X"$as_myself" : 'X\(//\)$' \| \ + X"$as_myself" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X"$as_myself" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` srcdir=$ac_confdir - if test ! -r $srcdir/$ac_unique_file; then + if test ! -r "$srcdir/$ac_unique_file"; then srcdir=.. fi else ac_srcdir_defaulted=no fi -if test ! -r $srcdir/$ac_unique_file; then - if test "$ac_srcdir_defaulted" = yes; then - { echo "$as_me: error: cannot find sources ($ac_unique_file) in $ac_confdir or .." >&2 - { (exit 1); exit 1; }; } - else - { echo "$as_me: error: cannot find sources ($ac_unique_file) in $srcdir" >&2 - { (exit 1); exit 1; }; } - fi -fi -(cd $srcdir && test -r ./$ac_unique_file) 2>/dev/null || - { echo "$as_me: error: sources are in $srcdir, but \`cd $srcdir' does not work" >&2 - { (exit 1); exit 1; }; } -srcdir=`echo "$srcdir" | sed 's%\([^\\/]\)[\\/]*$%\1%'` -ac_env_build_alias_set=${build_alias+set} -ac_env_build_alias_value=$build_alias -ac_cv_env_build_alias_set=${build_alias+set} -ac_cv_env_build_alias_value=$build_alias -ac_env_host_alias_set=${host_alias+set} -ac_env_host_alias_value=$host_alias -ac_cv_env_host_alias_set=${host_alias+set} -ac_cv_env_host_alias_value=$host_alias -ac_env_target_alias_set=${target_alias+set} -ac_env_target_alias_value=$target_alias -ac_cv_env_target_alias_set=${target_alias+set} -ac_cv_env_target_alias_value=$target_alias -ac_env_CC_set=${CC+set} -ac_env_CC_value=$CC -ac_cv_env_CC_set=${CC+set} -ac_cv_env_CC_value=$CC -ac_env_CFLAGS_set=${CFLAGS+set} -ac_env_CFLAGS_value=$CFLAGS -ac_cv_env_CFLAGS_set=${CFLAGS+set} -ac_cv_env_CFLAGS_value=$CFLAGS -ac_env_LDFLAGS_set=${LDFLAGS+set} -ac_env_LDFLAGS_value=$LDFLAGS -ac_cv_env_LDFLAGS_set=${LDFLAGS+set} -ac_cv_env_LDFLAGS_value=$LDFLAGS -ac_env_CPPFLAGS_set=${CPPFLAGS+set} -ac_env_CPPFLAGS_value=$CPPFLAGS -ac_cv_env_CPPFLAGS_set=${CPPFLAGS+set} -ac_cv_env_CPPFLAGS_value=$CPPFLAGS -ac_env_CPP_set=${CPP+set} -ac_env_CPP_value=$CPP -ac_cv_env_CPP_set=${CPP+set} -ac_cv_env_CPP_value=$CPP -ac_env_CXX_set=${CXX+set} -ac_env_CXX_value=$CXX -ac_cv_env_CXX_set=${CXX+set} -ac_cv_env_CXX_value=$CXX -ac_env_CXXFLAGS_set=${CXXFLAGS+set} -ac_env_CXXFLAGS_value=$CXXFLAGS -ac_cv_env_CXXFLAGS_set=${CXXFLAGS+set} -ac_cv_env_CXXFLAGS_value=$CXXFLAGS -ac_env_CXXCPP_set=${CXXCPP+set} -ac_env_CXXCPP_value=$CXXCPP -ac_cv_env_CXXCPP_set=${CXXCPP+set} -ac_cv_env_CXXCPP_value=$CXXCPP -ac_env_F77_set=${F77+set} -ac_env_F77_value=$F77 -ac_cv_env_F77_set=${F77+set} -ac_cv_env_F77_value=$F77 -ac_env_FFLAGS_set=${FFLAGS+set} -ac_env_FFLAGS_value=$FFLAGS -ac_cv_env_FFLAGS_set=${FFLAGS+set} -ac_cv_env_FFLAGS_value=$FFLAGS +if test ! -r "$srcdir/$ac_unique_file"; then + test "$ac_srcdir_defaulted" = yes && srcdir="$ac_confdir or .." + as_fn_error $? "cannot find sources ($ac_unique_file) in $srcdir" +fi +ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work" +ac_abs_confdir=`( + cd "$srcdir" && test -r "./$ac_unique_file" || as_fn_error $? "$ac_msg" + pwd)` +# When building in place, set srcdir=. +if test "$ac_abs_confdir" = "$ac_pwd"; then + srcdir=. +fi +# Remove unnecessary trailing slashes from srcdir. +# Double slashes in file names in object file debugging info +# mess up M-x gdb in Emacs. +case $srcdir in +*/) srcdir=`expr "X$srcdir" : 'X\(.*[^/]\)' \| "X$srcdir" : 'X\(.*\)'`;; +esac +for ac_var in $ac_precious_vars; do + eval ac_env_${ac_var}_set=\${${ac_var}+set} + eval ac_env_${ac_var}_value=\$${ac_var} + eval ac_cv_env_${ac_var}_set=\${${ac_var}+set} + eval ac_cv_env_${ac_var}_value=\$${ac_var} +done # # Report the --help message. @@ -969,20 +1446,17 @@ Configuration: --help=short display options specific to this package --help=recursive display the short help of all the included packages -V, --version display version information and exit - -q, --quiet, --silent do not print \`checking...' messages + -q, --quiet, --silent do not print \`checking ...' messages --cache-file=FILE cache test results in FILE [disabled] -C, --config-cache alias for \`--cache-file=config.cache' -n, --no-create do not create output files --srcdir=DIR find the sources in DIR [configure dir or \`..'] -_ACEOF - - cat <<_ACEOF Installation directories: --prefix=PREFIX install architecture-independent files in PREFIX - [$ac_default_prefix] + [$ac_default_prefix] --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX - [PREFIX] + [PREFIX] By default, \`make install' will install all the files in \`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify @@ -992,18 +1466,25 @@ for instance \`--prefix=\$HOME'. For better control, use the options below. Fine tuning of the installation directories: - --bindir=DIR user executables [EPREFIX/bin] - --sbindir=DIR system admin executables [EPREFIX/sbin] - --libexecdir=DIR program executables [EPREFIX/libexec] - --datadir=DIR read-only architecture-independent data [PREFIX/share] - --sysconfdir=DIR read-only single-machine data [PREFIX/etc] - --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] - --localstatedir=DIR modifiable single-machine data [PREFIX/var] - --libdir=DIR object code libraries [EPREFIX/lib] - --includedir=DIR C header files [PREFIX/include] - --oldincludedir=DIR C header files for non-gcc [/usr/include] - --infodir=DIR info documentation [PREFIX/info] - --mandir=DIR man documentation [PREFIX/man] + --bindir=DIR user executables [EPREFIX/bin] + --sbindir=DIR system admin executables [EPREFIX/sbin] + --libexecdir=DIR program executables [EPREFIX/libexec] + --sysconfdir=DIR read-only single-machine data [PREFIX/etc] + --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] + --localstatedir=DIR modifiable single-machine data [PREFIX/var] + --libdir=DIR object code libraries [EPREFIX/lib] + --includedir=DIR C header files [PREFIX/include] + --oldincludedir=DIR C header files for non-gcc [/usr/include] + --datarootdir=DIR read-only arch.-independent data root [PREFIX/share] + --datadir=DIR read-only architecture-independent data [DATAROOTDIR] + --infodir=DIR info documentation [DATAROOTDIR/info] + --localedir=DIR locale-dependent data [DATAROOTDIR/locale] + --mandir=DIR man documentation [DATAROOTDIR/man] + --docdir=DIR documentation root [DATAROOTDIR/doc/libid3tag] + --htmldir=DIR html documentation [DOCDIR] + --dvidir=DIR dvi documentation [DOCDIR] + --pdfdir=DIR pdf documentation [DOCDIR] + --psdir=DIR ps documentation [DOCDIR] _ACEOF cat <<\_ACEOF @@ -1026,14 +1507,13 @@ if test -n "$ac_init_help"; then cat <<\_ACEOF Optional Features: + --disable-option-checking ignore unrecognized --enable/--with options --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no) --enable-FEATURE[=ARG] include FEATURE [ARG=yes] --disable-dependency-tracking speeds up one-time build --enable-dependency-tracking do not reject slow dependency extractors - --enable-shared[=PKGS] - build shared libraries [default=yes] - --enable-static[=PKGS] - build static libraries [default=yes] + --enable-shared[=PKGS] build shared libraries [default=yes] + --enable-static[=PKGS] build static libraries [default=yes] --enable-fast-install[=PKGS] optimize for fast installation [default=yes] --disable-libtool-lock avoid locking (might break parallel builds) @@ -1047,16 +1527,16 @@ Optional Packages: --with-gnu-ld assume the C compiler uses GNU ld [default=no] --with-pic try to use only PIC/non-PIC objects [default=use both] - --with-tags[=TAGS] - include additional configurations [automatic] + --with-tags[=TAGS] include additional configurations [automatic] Some influential environment variables: CC C compiler command CFLAGS C compiler flags LDFLAGS linker flags, e.g. -L if you have libraries in a nonstandard directory - CPPFLAGS C/C++ preprocessor flags, e.g. -I if you have - headers in a nonstandard directory + LIBS libraries to pass to the linker, e.g. -l + CPPFLAGS (Objective) C/C++ preprocessor flags, e.g. -I if + you have headers in a nonstandard directory CPP C preprocessor CXX C++ compiler command CXXFLAGS C++ compiler flags @@ -1069,139 +1549,734 @@ it to find libraries and programs with nonstandard names/locations. Report bugs to . _ACEOF +ac_status=$? fi if test "$ac_init_help" = "recursive"; then # If there are subdirs, report their specific --help. - ac_popdir=`pwd` for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue - test -d $ac_dir || continue + test -d "$ac_dir" || + { cd "$srcdir" && ac_pwd=`pwd` && srcdir=. && test -d "$ac_dir"; } || + continue ac_builddir=. -if test "$ac_dir" != .; then - ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` - # A "../" for each directory in $ac_dir_suffix. - ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'` -else - ac_dir_suffix= ac_top_builddir= -fi +case "$ac_dir" in +.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; +*) + ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'` + # A ".." for each directory in $ac_dir_suffix. + ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'` + case $ac_top_builddir_sub in + "") ac_top_builddir_sub=. ac_top_build_prefix= ;; + *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; + esac ;; +esac +ac_abs_top_builddir=$ac_pwd +ac_abs_builddir=$ac_pwd$ac_dir_suffix +# for backward compatibility: +ac_top_builddir=$ac_top_build_prefix case $srcdir in - .) # No --srcdir option. We are building in place. + .) # We are building in place. ac_srcdir=. - if test -z "$ac_top_builddir"; then - ac_top_srcdir=. - else - ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'` - fi ;; - [\\/]* | ?:[\\/]* ) # Absolute path. + ac_top_srcdir=$ac_top_builddir_sub + ac_abs_top_srcdir=$ac_pwd ;; + [\\/]* | ?:[\\/]* ) # Absolute name. ac_srcdir=$srcdir$ac_dir_suffix; - ac_top_srcdir=$srcdir ;; - *) # Relative path. - ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix - ac_top_srcdir=$ac_top_builddir$srcdir ;; -esac - -# Do not use `cd foo && pwd` to compute absolute paths, because -# the directories may not exist. -case `pwd` in -.) ac_abs_builddir="$ac_dir";; -*) - case "$ac_dir" in - .) ac_abs_builddir=`pwd`;; - [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";; - *) ac_abs_builddir=`pwd`/"$ac_dir";; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_builddir=${ac_top_builddir}.;; -*) - case ${ac_top_builddir}. in - .) ac_abs_top_builddir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;; - *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_srcdir=$ac_srcdir;; -*) - case $ac_srcdir in - .) ac_abs_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;; - *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_srcdir=$ac_top_srcdir;; -*) - case $ac_top_srcdir in - .) ac_abs_top_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;; - *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;; - esac;; + ac_top_srcdir=$srcdir + ac_abs_top_srcdir=$srcdir ;; + *) # Relative name. + ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix + ac_top_srcdir=$ac_top_build_prefix$srcdir + ac_abs_top_srcdir=$ac_pwd/$srcdir ;; esac - - cd $ac_dir - # Check for guested configure; otherwise get Cygnus style configure. - if test -f $ac_srcdir/configure.gnu; then - echo - $SHELL $ac_srcdir/configure.gnu --help=recursive - elif test -f $ac_srcdir/configure; then - echo - $SHELL $ac_srcdir/configure --help=recursive - elif test -f $ac_srcdir/configure.ac || - test -f $ac_srcdir/configure.in; then - echo - $ac_configure --help +ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix + + cd "$ac_dir" || { ac_status=$?; continue; } + # Check for guested configure. + if test -f "$ac_srcdir/configure.gnu"; then + echo && + $SHELL "$ac_srcdir/configure.gnu" --help=recursive + elif test -f "$ac_srcdir/configure"; then + echo && + $SHELL "$ac_srcdir/configure" --help=recursive else - echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2 - fi - cd "$ac_popdir" + $as_echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2 + fi || ac_status=$? + cd "$ac_pwd" || { ac_status=$?; break; } done fi -test -n "$ac_init_help" && exit 0 +test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF ID3 Tag configure 0.15.1b -generated by GNU Autoconf 2.59 +generated by GNU Autoconf 2.68 -Copyright (C) 2003 Free Software Foundation, Inc. +Copyright (C) 2010 Free Software Foundation, Inc. This configure script is free software; the Free Software Foundation gives unlimited permission to copy, distribute and modify it. _ACEOF - exit 0 + exit fi -exec 5>config.log -cat >&5 <<_ACEOF -This file contains any messages produced by compilers while -running configure, to aid debugging if configure makes a mistake. -It was created by ID3 Tag $as_me 0.15.1b, which was -generated by GNU Autoconf 2.59. Invocation command line was +## ------------------------ ## +## Autoconf initialization. ## +## ------------------------ ## - $ $0 $@ +# ac_fn_c_try_compile LINENO +# -------------------------- +# Try to compile conftest.$ac_ext, and return whether this succeeded. +ac_fn_c_try_compile () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + rm -f conftest.$ac_objext + if { { ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_compile") 2>conftest.err + ac_status=$? + if test -s conftest.err; then + grep -v '^ *+' conftest.err >conftest.er1 + cat conftest.er1 >&5 + mv -f conftest.er1 conftest.err + fi + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then : + ac_retval=0 +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 -_ACEOF + ac_retval=1 +fi + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + as_fn_set_status $ac_retval + +} # ac_fn_c_try_compile + +# ac_fn_c_try_link LINENO +# ----------------------- +# Try to link conftest.$ac_ext, and return whether this succeeded. +ac_fn_c_try_link () { -cat <<_ASUNAME -## --------- ## -## Platform. ## -## --------- ## + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + rm -f conftest.$ac_objext conftest$ac_exeext + if { { ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_link") 2>conftest.err + ac_status=$? + if test -s conftest.err; then + grep -v '^ *+' conftest.err >conftest.er1 + cat conftest.er1 >&5 + mv -f conftest.er1 conftest.err + fi + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then : + ac_retval=0 +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 -hostname = `(hostname || uname -n) 2>/dev/null | sed 1q` -uname -m = `(uname -m) 2>/dev/null || echo unknown` -uname -r = `(uname -r) 2>/dev/null || echo unknown` -uname -s = `(uname -s) 2>/dev/null || echo unknown` -uname -v = `(uname -v) 2>/dev/null || echo unknown` + ac_retval=1 +fi + # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information + # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would + # interfere with the next link command; also delete a directory that is + # left behind by Apple's compiler. We do this before executing the actions. + rm -rf conftest.dSYM conftest_ipa8_conftest.oo + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + as_fn_set_status $ac_retval -/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown` -/bin/uname -X = `(/bin/uname -X) 2>/dev/null || echo unknown` +} # ac_fn_c_try_link -/bin/arch = `(/bin/arch) 2>/dev/null || echo unknown` -/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null || echo unknown` -/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown` -hostinfo = `(hostinfo) 2>/dev/null || echo unknown` +# ac_fn_c_try_cpp LINENO +# ---------------------- +# Try to preprocess conftest.$ac_ext, and return whether this succeeded. +ac_fn_c_try_cpp () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + if { { ac_try="$ac_cpp conftest.$ac_ext" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err + ac_status=$? + if test -s conftest.err; then + grep -v '^ *+' conftest.err >conftest.er1 + cat conftest.er1 >&5 + mv -f conftest.er1 conftest.err + fi + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } > conftest.i && { + test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || + test ! -s conftest.err + }; then : + ac_retval=0 +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_retval=1 +fi + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + as_fn_set_status $ac_retval + +} # ac_fn_c_try_cpp + +# ac_fn_c_check_header_mongrel LINENO HEADER VAR INCLUDES +# ------------------------------------------------------- +# Tests whether HEADER exists, giving a warning if it cannot be compiled using +# the include files in INCLUDES and setting the cache variable VAR +# accordingly. +ac_fn_c_check_header_mongrel () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + if eval \${$3+:} false; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 +$as_echo_n "checking for $2... " >&6; } +if eval \${$3+:} false; then : + $as_echo_n "(cached) " >&6 +fi +eval ac_res=\$$3 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +else + # Is the header compilable? +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 usability" >&5 +$as_echo_n "checking $2 usability... " >&6; } +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +$4 +#include <$2> +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_header_compiler=yes +else + ac_header_compiler=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_compiler" >&5 +$as_echo "$ac_header_compiler" >&6; } + +# Is the header present? +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 presence" >&5 +$as_echo_n "checking $2 presence... " >&6; } +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include <$2> +_ACEOF +if ac_fn_c_try_cpp "$LINENO"; then : + ac_header_preproc=yes +else + ac_header_preproc=no +fi +rm -f conftest.err conftest.i conftest.$ac_ext +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_preproc" >&5 +$as_echo "$ac_header_preproc" >&6; } + +# So? What about this header? +case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in #(( + yes:no: ) + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&5 +$as_echo "$as_me: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5 +$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;} + ;; + no:yes:* ) + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: present but cannot be compiled" >&5 +$as_echo "$as_me: WARNING: $2: present but cannot be compiled" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: check for missing prerequisite headers?" >&5 +$as_echo "$as_me: WARNING: $2: check for missing prerequisite headers?" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: see the Autoconf documentation" >&5 +$as_echo "$as_me: WARNING: $2: see the Autoconf documentation" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&5 +$as_echo "$as_me: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5 +$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;} +( $as_echo "## ----------------------------------- ## +## Report this to support@underbit.com ## +## ----------------------------------- ##" + ) | sed "s/^/$as_me: WARNING: /" >&2 + ;; +esac + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 +$as_echo_n "checking for $2... " >&6; } +if eval \${$3+:} false; then : + $as_echo_n "(cached) " >&6 +else + eval "$3=\$ac_header_compiler" +fi +eval ac_res=\$$3 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +fi + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + +} # ac_fn_c_check_header_mongrel + +# ac_fn_c_try_run LINENO +# ---------------------- +# Try to link conftest.$ac_ext, and return whether this succeeded. Assumes +# that executables *can* be run. +ac_fn_c_try_run () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + if { { ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && { ac_try='./conftest$ac_exeext' + { { case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; }; then : + ac_retval=0 +else + $as_echo "$as_me: program exited with status $ac_status" >&5 + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_retval=$ac_status +fi + rm -rf conftest.dSYM conftest_ipa8_conftest.oo + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + as_fn_set_status $ac_retval + +} # ac_fn_c_try_run + +# ac_fn_c_check_header_compile LINENO HEADER VAR INCLUDES +# ------------------------------------------------------- +# Tests whether HEADER exists and can be compiled using the include files in +# INCLUDES, setting the cache variable VAR accordingly. +ac_fn_c_check_header_compile () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 +$as_echo_n "checking for $2... " >&6; } +if eval \${$3+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +$4 +#include <$2> +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + eval "$3=yes" +else + eval "$3=no" +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +eval ac_res=\$$3 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + +} # ac_fn_c_check_header_compile + +# ac_fn_c_check_func LINENO FUNC VAR +# ---------------------------------- +# Tests whether FUNC exists, setting the cache variable VAR accordingly +ac_fn_c_check_func () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 +$as_echo_n "checking for $2... " >&6; } +if eval \${$3+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +/* Define $2 to an innocuous variant, in case declares $2. + For example, HP-UX 11i declares gettimeofday. */ +#define $2 innocuous_$2 + +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char $2 (); below. + Prefer to if __STDC__ is defined, since + exists even on freestanding compilers. */ + +#ifdef __STDC__ +# include +#else +# include +#endif + +#undef $2 + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char $2 (); +/* The GNU C library defines this for functions which it implements + to always fail with ENOSYS. Some functions are actually named + something starting with __ and the normal name is an alias. */ +#if defined __stub_$2 || defined __stub___$2 +choke me +#endif + +int +main () +{ +return $2 (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + eval "$3=yes" +else + eval "$3=no" +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +fi +eval ac_res=\$$3 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + +} # ac_fn_c_check_func + +# ac_fn_cxx_try_compile LINENO +# ---------------------------- +# Try to compile conftest.$ac_ext, and return whether this succeeded. +ac_fn_cxx_try_compile () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + rm -f conftest.$ac_objext + if { { ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_compile") 2>conftest.err + ac_status=$? + if test -s conftest.err; then + grep -v '^ *+' conftest.err >conftest.er1 + cat conftest.er1 >&5 + mv -f conftest.er1 conftest.err + fi + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && { + test -z "$ac_cxx_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then : + ac_retval=0 +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_retval=1 +fi + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + as_fn_set_status $ac_retval + +} # ac_fn_cxx_try_compile + +# ac_fn_cxx_try_cpp LINENO +# ------------------------ +# Try to preprocess conftest.$ac_ext, and return whether this succeeded. +ac_fn_cxx_try_cpp () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + if { { ac_try="$ac_cpp conftest.$ac_ext" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err + ac_status=$? + if test -s conftest.err; then + grep -v '^ *+' conftest.err >conftest.er1 + cat conftest.er1 >&5 + mv -f conftest.er1 conftest.err + fi + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } > conftest.i && { + test -z "$ac_cxx_preproc_warn_flag$ac_cxx_werror_flag" || + test ! -s conftest.err + }; then : + ac_retval=0 +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_retval=1 +fi + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + as_fn_set_status $ac_retval + +} # ac_fn_cxx_try_cpp + +# ac_fn_cxx_try_link LINENO +# ------------------------- +# Try to link conftest.$ac_ext, and return whether this succeeded. +ac_fn_cxx_try_link () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + rm -f conftest.$ac_objext conftest$ac_exeext + if { { ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_link") 2>conftest.err + ac_status=$? + if test -s conftest.err; then + grep -v '^ *+' conftest.err >conftest.er1 + cat conftest.er1 >&5 + mv -f conftest.er1 conftest.err + fi + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && { + test -z "$ac_cxx_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then : + ac_retval=0 +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_retval=1 +fi + # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information + # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would + # interfere with the next link command; also delete a directory that is + # left behind by Apple's compiler. We do this before executing the actions. + rm -rf conftest.dSYM conftest_ipa8_conftest.oo + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + as_fn_set_status $ac_retval + +} # ac_fn_cxx_try_link + +# ac_fn_cxx_check_func LINENO FUNC VAR +# ------------------------------------ +# Tests whether FUNC exists, setting the cache variable VAR accordingly +ac_fn_cxx_check_func () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 +$as_echo_n "checking for $2... " >&6; } +if eval \${$3+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +/* Define $2 to an innocuous variant, in case declares $2. + For example, HP-UX 11i declares gettimeofday. */ +#define $2 innocuous_$2 + +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char $2 (); below. + Prefer to if __STDC__ is defined, since + exists even on freestanding compilers. */ + +#ifdef __STDC__ +# include +#else +# include +#endif + +#undef $2 + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char $2 (); +/* The GNU C library defines this for functions which it implements + to always fail with ENOSYS. Some functions are actually named + something starting with __ and the normal name is an alias. */ +#if defined __stub_$2 || defined __stub___$2 +choke me +#endif + +int +main () +{ +return $2 (); + ; + return 0; +} +_ACEOF +if ac_fn_cxx_try_link "$LINENO"; then : + eval "$3=yes" +else + eval "$3=no" +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +fi +eval ac_res=\$$3 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + +} # ac_fn_cxx_check_func + +# ac_fn_f77_try_compile LINENO +# ---------------------------- +# Try to compile conftest.$ac_ext, and return whether this succeeded. +ac_fn_f77_try_compile () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + rm -f conftest.$ac_objext + if { { ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_compile") 2>conftest.err + ac_status=$? + if test -s conftest.err; then + grep -v '^ *+' conftest.err >conftest.er1 + cat conftest.er1 >&5 + mv -f conftest.er1 conftest.err + fi + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && { + test -z "$ac_f77_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then : + ac_retval=0 +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_retval=1 +fi + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + as_fn_set_status $ac_retval + +} # ac_fn_f77_try_compile + +# ac_fn_f77_try_link LINENO +# ------------------------- +# Try to link conftest.$ac_ext, and return whether this succeeded. +ac_fn_f77_try_link () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + rm -f conftest.$ac_objext conftest$ac_exeext + if { { ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_link") 2>conftest.err + ac_status=$? + if test -s conftest.err; then + grep -v '^ *+' conftest.err >conftest.er1 + cat conftest.er1 >&5 + mv -f conftest.er1 conftest.err + fi + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && { + test -z "$ac_f77_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then : + ac_retval=0 +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_retval=1 +fi + # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information + # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would + # interfere with the next link command; also delete a directory that is + # left behind by Apple's compiler. We do this before executing the actions. + rm -rf conftest.dSYM conftest_ipa8_conftest.oo + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + as_fn_set_status $ac_retval + +} # ac_fn_f77_try_link +cat >config.log <<_ACEOF +This file contains any messages produced by compilers while +running configure, to aid debugging if configure makes a mistake. + +It was created by ID3 Tag $as_me 0.15.1b, which was +generated by GNU Autoconf 2.68. Invocation command line was + + $ $0 $@ + +_ACEOF +exec 5>>config.log +{ +cat <<_ASUNAME +## --------- ## +## Platform. ## +## --------- ## + +hostname = `(hostname || uname -n) 2>/dev/null | sed 1q` +uname -m = `(uname -m) 2>/dev/null || echo unknown` +uname -r = `(uname -r) 2>/dev/null || echo unknown` +uname -s = `(uname -s) 2>/dev/null || echo unknown` +uname -v = `(uname -v) 2>/dev/null || echo unknown` + +/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown` +/bin/uname -X = `(/bin/uname -X) 2>/dev/null || echo unknown` + +/bin/arch = `(/bin/arch) 2>/dev/null || echo unknown` +/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null || echo unknown` +/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown` +/usr/bin/hostinfo = `(/usr/bin/hostinfo) 2>/dev/null || echo unknown` /bin/machine = `(/bin/machine) 2>/dev/null || echo unknown` /usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null || echo unknown` /bin/universe = `(/bin/universe) 2>/dev/null || echo unknown` @@ -1213,8 +2288,9 @@ for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - echo "PATH: $as_dir" -done + $as_echo "PATH: $as_dir" + done +IFS=$as_save_IFS } >&5 @@ -1236,7 +2312,6 @@ _ACEOF ac_configure_args= ac_configure_args0= ac_configure_args1= -ac_sep= ac_must_keep_next=false for ac_pass in 1 2 do @@ -1247,13 +2322,13 @@ do -q | -quiet | --quiet | --quie | --qui | --qu | --q \ | -silent | --silent | --silen | --sile | --sil) continue ;; - *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*) - ac_arg=`echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;; + *\'*) + ac_arg=`$as_echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;; esac case $ac_pass in - 1) ac_configure_args0="$ac_configure_args0 '$ac_arg'" ;; + 1) as_fn_append ac_configure_args0 " '$ac_arg'" ;; 2) - ac_configure_args1="$ac_configure_args1 '$ac_arg'" + as_fn_append ac_configure_args1 " '$ac_arg'" if test $ac_must_keep_next = true; then ac_must_keep_next=false # Got value, back to normal. else @@ -1269,104 +2344,115 @@ do -* ) ac_must_keep_next=true ;; esac fi - ac_configure_args="$ac_configure_args$ac_sep'$ac_arg'" - # Get rid of the leading space. - ac_sep=" " + as_fn_append ac_configure_args " '$ac_arg'" ;; esac done done -$as_unset ac_configure_args0 || test "${ac_configure_args0+set}" != set || { ac_configure_args0=; export ac_configure_args0; } -$as_unset ac_configure_args1 || test "${ac_configure_args1+set}" != set || { ac_configure_args1=; export ac_configure_args1; } +{ ac_configure_args0=; unset ac_configure_args0;} +{ ac_configure_args1=; unset ac_configure_args1;} # When interrupted or exit'd, cleanup temporary files, and complete # config.log. We remove comments because anyway the quotes in there # would cause problems or look ugly. -# WARNING: Be sure not to use single quotes in there, as some shells, -# such as our DU 5.0 friend, will then `close' the trap. +# WARNING: Use '\'' to represent an apostrophe within the trap. +# WARNING: Do not start the trap code with a newline, due to a FreeBSD 4.0 bug. trap 'exit_status=$? # Save into config.log some information that might help in debugging. { echo - cat <<\_ASBOX -## ---------------- ## + $as_echo "## ---------------- ## ## Cache variables. ## -## ---------------- ## -_ASBOX +## ---------------- ##" echo # The following way of writing the cache mishandles newlines in values, -{ +( + for ac_var in `(set) 2>&1 | sed -n '\''s/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'\''`; do + eval ac_val=\$$ac_var + case $ac_val in #( + *${as_nl}*) + case $ac_var in #( + *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5 +$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;; + esac + case $ac_var in #( + _ | IFS | as_nl) ;; #( + BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #( + *) { eval $ac_var=; unset $ac_var;} ;; + esac ;; + esac + done (set) 2>&1 | - case `(ac_space='"'"' '"'"'; set | grep ac_space) 2>&1` in - *ac_space=\ *) + case $as_nl`(ac_space='\'' '\''; set) 2>&1` in #( + *${as_nl}ac_space=\ *) sed -n \ - "s/'"'"'/'"'"'\\\\'"'"''"'"'/g; - s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='"'"'\\2'"'"'/p" - ;; + "s/'\''/'\''\\\\'\'''\''/g; + s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\''\\2'\''/p" + ;; #( *) - sed -n \ - "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p" + sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p" ;; - esac; -} + esac | + sort +) echo - cat <<\_ASBOX -## ----------------- ## + $as_echo "## ----------------- ## ## Output variables. ## -## ----------------- ## -_ASBOX +## ----------------- ##" echo for ac_var in $ac_subst_vars do - eval ac_val=$`echo $ac_var` - echo "$ac_var='"'"'$ac_val'"'"'" + eval ac_val=\$$ac_var + case $ac_val in + *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; + esac + $as_echo "$ac_var='\''$ac_val'\''" done | sort echo if test -n "$ac_subst_files"; then - cat <<\_ASBOX -## ------------- ## -## Output files. ## -## ------------- ## -_ASBOX + $as_echo "## ------------------- ## +## File substitutions. ## +## ------------------- ##" echo for ac_var in $ac_subst_files do - eval ac_val=$`echo $ac_var` - echo "$ac_var='"'"'$ac_val'"'"'" + eval ac_val=\$$ac_var + case $ac_val in + *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; + esac + $as_echo "$ac_var='\''$ac_val'\''" done | sort echo fi if test -s confdefs.h; then - cat <<\_ASBOX -## ----------- ## + $as_echo "## ----------- ## ## confdefs.h. ## -## ----------- ## -_ASBOX +## ----------- ##" echo - sed "/^$/d" confdefs.h | sort + cat confdefs.h echo fi test "$ac_signal" != 0 && - echo "$as_me: caught signal $ac_signal" - echo "$as_me: exit $exit_status" + $as_echo "$as_me: caught signal $ac_signal" + $as_echo "$as_me: exit $exit_status" } >&5 - rm -f core *.core && - rm -rf conftest* confdefs* conf$$* $ac_clean_files && + rm -f core *.core core.conftest.* && + rm -f -r conftest* confdefs* conf$$* $ac_clean_files && exit $exit_status - ' 0 +' 0 for ac_signal in 1 2 13 15; do - trap 'ac_signal='$ac_signal'; { (exit 1); exit 1; }' $ac_signal + trap 'ac_signal='$ac_signal'; as_fn_exit 1' $ac_signal done ac_signal=0 # confdefs.h avoids OS command line length limits that DEFS can exceed. -rm -rf conftest* confdefs.h -# AIX cpp loses on an empty file, so make sure it contains at least a newline. -echo >confdefs.h +rm -f -r conftest* confdefs.h + +$as_echo "/* confdefs.h */" > confdefs.h # Predefined preprocessor variables. @@ -1374,112 +2460,137 @@ cat >>confdefs.h <<_ACEOF #define PACKAGE_NAME "$PACKAGE_NAME" _ACEOF - cat >>confdefs.h <<_ACEOF #define PACKAGE_TARNAME "$PACKAGE_TARNAME" _ACEOF - cat >>confdefs.h <<_ACEOF #define PACKAGE_VERSION "$PACKAGE_VERSION" _ACEOF - cat >>confdefs.h <<_ACEOF #define PACKAGE_STRING "$PACKAGE_STRING" _ACEOF - cat >>confdefs.h <<_ACEOF #define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT" _ACEOF +cat >>confdefs.h <<_ACEOF +#define PACKAGE_URL "$PACKAGE_URL" +_ACEOF + # Let the site file select an alternate cache file if it wants to. -# Prefer explicitly selected file to automatically selected ones. -if test -z "$CONFIG_SITE"; then - if test "x$prefix" != xNONE; then - CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site" - else - CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site" - fi +# Prefer an explicitly selected file to automatically selected ones. +ac_site_file1=NONE +ac_site_file2=NONE +if test -n "$CONFIG_SITE"; then + # We do not want a PATH search for config.site. + case $CONFIG_SITE in #(( + -*) ac_site_file1=./$CONFIG_SITE;; + */*) ac_site_file1=$CONFIG_SITE;; + *) ac_site_file1=./$CONFIG_SITE;; + esac +elif test "x$prefix" != xNONE; then + ac_site_file1=$prefix/share/config.site + ac_site_file2=$prefix/etc/config.site +else + ac_site_file1=$ac_default_prefix/share/config.site + ac_site_file2=$ac_default_prefix/etc/config.site fi -for ac_site_file in $CONFIG_SITE; do - if test -r "$ac_site_file"; then - { echo "$as_me:$LINENO: loading site script $ac_site_file" >&5 -echo "$as_me: loading site script $ac_site_file" >&6;} +for ac_site_file in "$ac_site_file1" "$ac_site_file2" +do + test "x$ac_site_file" = xNONE && continue + if test /dev/null != "$ac_site_file" && test -r "$ac_site_file"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5 +$as_echo "$as_me: loading site script $ac_site_file" >&6;} sed 's/^/| /' "$ac_site_file" >&5 - . "$ac_site_file" + . "$ac_site_file" \ + || { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "failed to load site script $ac_site_file +See \`config.log' for more details" "$LINENO" 5; } fi done if test -r "$cache_file"; then - # Some versions of bash will fail to source /dev/null (special - # files actually), so we avoid doing that. - if test -f "$cache_file"; then - { echo "$as_me:$LINENO: loading cache $cache_file" >&5 -echo "$as_me: loading cache $cache_file" >&6;} + # Some versions of bash will fail to source /dev/null (special files + # actually), so we avoid doing that. DJGPP emulates it as a regular file. + if test /dev/null != "$cache_file" && test -f "$cache_file"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: loading cache $cache_file" >&5 +$as_echo "$as_me: loading cache $cache_file" >&6;} case $cache_file in - [\\/]* | ?:[\\/]* ) . $cache_file;; - *) . ./$cache_file;; + [\\/]* | ?:[\\/]* ) . "$cache_file";; + *) . "./$cache_file";; esac fi else - { echo "$as_me:$LINENO: creating cache $cache_file" >&5 -echo "$as_me: creating cache $cache_file" >&6;} + { $as_echo "$as_me:${as_lineno-$LINENO}: creating cache $cache_file" >&5 +$as_echo "$as_me: creating cache $cache_file" >&6;} >$cache_file fi # Check that the precious variables saved in the cache have kept the same # value. ac_cache_corrupted=false -for ac_var in `(set) 2>&1 | - sed -n 's/^ac_env_\([a-zA-Z_0-9]*\)_set=.*/\1/p'`; do +for ac_var in $ac_precious_vars; do eval ac_old_set=\$ac_cv_env_${ac_var}_set eval ac_new_set=\$ac_env_${ac_var}_set - eval ac_old_val="\$ac_cv_env_${ac_var}_value" - eval ac_new_val="\$ac_env_${ac_var}_value" + eval ac_old_val=\$ac_cv_env_${ac_var}_value + eval ac_new_val=\$ac_env_${ac_var}_value case $ac_old_set,$ac_new_set in set,) - { echo "$as_me:$LINENO: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5 -echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5 +$as_echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;} ac_cache_corrupted=: ;; ,set) - { echo "$as_me:$LINENO: error: \`$ac_var' was not set in the previous run" >&5 -echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was not set in the previous run" >&5 +$as_echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;} ac_cache_corrupted=: ;; ,);; *) if test "x$ac_old_val" != "x$ac_new_val"; then - { echo "$as_me:$LINENO: error: \`$ac_var' has changed since the previous run:" >&5 -echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;} - { echo "$as_me:$LINENO: former value: $ac_old_val" >&5 -echo "$as_me: former value: $ac_old_val" >&2;} - { echo "$as_me:$LINENO: current value: $ac_new_val" >&5 -echo "$as_me: current value: $ac_new_val" >&2;} - ac_cache_corrupted=: + # differences in whitespace do not lead to failure. + ac_old_val_w=`echo x $ac_old_val` + ac_new_val_w=`echo x $ac_new_val` + if test "$ac_old_val_w" != "$ac_new_val_w"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' has changed since the previous run:" >&5 +$as_echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;} + ac_cache_corrupted=: + else + { $as_echo "$as_me:${as_lineno-$LINENO}: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5 +$as_echo "$as_me: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&2;} + eval $ac_var=\$ac_old_val + fi + { $as_echo "$as_me:${as_lineno-$LINENO}: former value: \`$ac_old_val'" >&5 +$as_echo "$as_me: former value: \`$ac_old_val'" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: current value: \`$ac_new_val'" >&5 +$as_echo "$as_me: current value: \`$ac_new_val'" >&2;} fi;; esac # Pass precious variables to config.status. if test "$ac_new_set" = set; then case $ac_new_val in - *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*) - ac_arg=$ac_var=`echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;; + *\'*) ac_arg=$ac_var=`$as_echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;; *) ac_arg=$ac_var=$ac_new_val ;; esac case " $ac_configure_args " in *" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy. - *) ac_configure_args="$ac_configure_args '$ac_arg'" ;; + *) as_fn_append ac_configure_args " '$ac_arg'" ;; esac fi done if $ac_cache_corrupted; then - { echo "$as_me:$LINENO: error: changes in the environment can compromise the build" >&5 -echo "$as_me: error: changes in the environment can compromise the build" >&2;} - { { echo "$as_me:$LINENO: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5 -echo "$as_me: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&2;} - { (exit 1); exit 1; }; } + { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: error: changes in the environment can compromise the build" >&5 +$as_echo "$as_me: error: changes in the environment can compromise the build" >&2;} + as_fn_error $? "run \`make distclean' and/or \`rm $cache_file' and start over" "$LINENO" 5 fi +## -------------------- ## +## Main body of script. ## +## -------------------- ## ac_ext=c ac_cpp='$CPP $CPPFLAGS' @@ -1492,56 +2603,35 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu - - - - - - - - - - - - - - - - - - - - - - - - - am__api_version="1.8" ac_aux_dir= -for ac_dir in $srcdir $srcdir/.. $srcdir/../..; do - if test -f $ac_dir/install-sh; then +for ac_dir in "$srcdir" "$srcdir/.." "$srcdir/../.."; do + if test -f "$ac_dir/install-sh"; then ac_aux_dir=$ac_dir ac_install_sh="$ac_aux_dir/install-sh -c" break - elif test -f $ac_dir/install.sh; then + elif test -f "$ac_dir/install.sh"; then ac_aux_dir=$ac_dir ac_install_sh="$ac_aux_dir/install.sh -c" break - elif test -f $ac_dir/shtool; then + elif test -f "$ac_dir/shtool"; then ac_aux_dir=$ac_dir ac_install_sh="$ac_aux_dir/shtool install -c" break fi done if test -z "$ac_aux_dir"; then - { { echo "$as_me:$LINENO: error: cannot find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." >&5 -echo "$as_me: error: cannot find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." >&2;} - { (exit 1); exit 1; }; } + as_fn_error $? "cannot find install-sh, install.sh, or shtool in \"$srcdir\" \"$srcdir/..\" \"$srcdir/../..\"" "$LINENO" 5 fi -ac_config_guess="$SHELL $ac_aux_dir/config.guess" -ac_config_sub="$SHELL $ac_aux_dir/config.sub" -ac_configure="$SHELL $ac_aux_dir/configure" # This should be Cygnus configure. + +# These three variables are undocumented and unsupported, +# and are intended to be withdrawn in a future Autoconf release. +# They can cause serious problems if a builder's source tree is in a directory +# whose full name contains unusual characters. +ac_config_guess="$SHELL $ac_aux_dir/config.guess" # Please don't use this var. +ac_config_sub="$SHELL $ac_aux_dir/config.sub" # Please don't use this var. +ac_configure="$SHELL $ac_aux_dir/configure" # Please don't use this var. + # Find a good install program. We prefer a C program (faster), # so one script is as good as another. But avoid the broken or @@ -1556,22 +2646,23 @@ ac_configure="$SHELL $ac_aux_dir/configure" # This should be Cygnus configure. # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" # OS/2's system install, which has a completely different semantic # ./install, which can be erroneously created by make from ./install.sh. -echo "$as_me:$LINENO: checking for a BSD-compatible install" >&5 -echo $ECHO_N "checking for a BSD-compatible install... $ECHO_C" >&6 +# Reject install programs that cannot install multiple files. +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a BSD-compatible install" >&5 +$as_echo_n "checking for a BSD-compatible install... " >&6; } if test -z "$INSTALL"; then -if test "${ac_cv_path_install+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +if ${ac_cv_path_install+:} false; then : + $as_echo_n "(cached) " >&6 else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - # Account for people who put trailing slashes in PATH elements. -case $as_dir/ in - ./ | .// | /cC/* | \ + # Account for people who put trailing slashes in PATH elements. +case $as_dir/ in #(( + ./ | .// | /[cC]/* | \ /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \ - ?:\\/os2\\/install\\/* | ?:\\/OS2\\/INSTALL\\/* | \ + ?:[\\/]os2[\\/]install[\\/]* | ?:[\\/]OS2[\\/]INSTALL[\\/]* | \ /usr/ucb/* ) ;; *) # OSF1 and SCO ODT 3.0 have their own names for install. @@ -1579,7 +2670,7 @@ case $as_dir/ in # by default. for ac_prog in ginstall scoinst install; do for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then + if { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; }; then if test $ac_prog = install && grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then # AIX install. It has an incompatible calling convention. @@ -1589,30 +2680,43 @@ case $as_dir/ in # program-specific install script used by HP pwplus--don't use. : else - ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c" - break 3 + rm -rf conftest.one conftest.two conftest.dir + echo one > conftest.one + echo two > conftest.two + mkdir conftest.dir + if "$as_dir/$ac_prog$ac_exec_ext" -c conftest.one conftest.two "`pwd`/conftest.dir" && + test -s conftest.one && test -s conftest.two && + test -s conftest.dir/conftest.one && + test -s conftest.dir/conftest.two + then + ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c" + break 3 + fi fi fi done done ;; esac -done + done +IFS=$as_save_IFS + +rm -rf conftest.one conftest.two conftest.dir fi if test "${ac_cv_path_install+set}" = set; then INSTALL=$ac_cv_path_install else - # As a last resort, use the slow shell script. We don't cache a - # path for INSTALL within a source directory, because that will + # As a last resort, use the slow shell script. Don't cache a + # value for INSTALL within a source directory, because that will # break other packages using the cache if that directory is - # removed, or if the path is relative. + # removed, or if the value is a relative name. INSTALL=$ac_install_sh fi fi -echo "$as_me:$LINENO: result: $INSTALL" >&5 -echo "${ECHO_T}$INSTALL" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $INSTALL" >&5 +$as_echo "$INSTALL" >&6; } # Use test -z because SunOS4 sh mishandles braces in ${var-val}. # It thinks the first close brace ends the variable substitution. @@ -1622,8 +2726,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}' test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' -echo "$as_me:$LINENO: checking whether build environment is sane" >&5 -echo $ECHO_N "checking whether build environment is sane... $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether build environment is sane" >&5 +$as_echo_n "checking whether build environment is sane... " >&6; } # Just in case sleep 1 echo timestamp > conftest.file @@ -1646,11 +2750,8 @@ if ( # if, for instance, CONFIG_SHELL is bash and it inherits a # broken ls alias from the environment. This has actually # happened. Such a system could not be considered "sane". - { { echo "$as_me:$LINENO: error: ls -t appears to fail. Make sure there is not a broken -alias in your environment" >&5 -echo "$as_me: error: ls -t appears to fail. Make sure there is not a broken -alias in your environment" >&2;} - { (exit 1); exit 1; }; } + as_fn_error $? "ls -t appears to fail. Make sure there is not a broken +alias in your environment" "$LINENO" 5 fi test "$2" = conftest.file @@ -1659,26 +2760,20 @@ then # Ok. : else - { { echo "$as_me:$LINENO: error: newly created file is older than distributed files! -Check your system clock" >&5 -echo "$as_me: error: newly created file is older than distributed files! -Check your system clock" >&2;} - { (exit 1); exit 1; }; } + as_fn_error $? "newly created file is older than distributed files! +Check your system clock" "$LINENO" 5 fi -echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } test "$program_prefix" != NONE && - program_transform_name="s,^,$program_prefix,;$program_transform_name" + program_transform_name="s&^&$program_prefix&;$program_transform_name" # Use a double $ so make ignores it. test "$program_suffix" != NONE && - program_transform_name="s,\$,$program_suffix,;$program_transform_name" -# Double any \ or $. echo might interpret backslashes. + program_transform_name="s&\$&$program_suffix&;$program_transform_name" +# Double any \ or $. # By default was `s,x,x', remove it if useless. -cat <<\_ACEOF >conftest.sed -s/[\\$]/&&/g;s/;s,x,x,$// -_ACEOF -program_transform_name=`echo $program_transform_name | sed -f conftest.sed` -rm conftest.sed +ac_script='s/[\\$]/&&/g;s/;s,x,x,$//' +program_transform_name=`$as_echo "$program_transform_name" | sed "$ac_script"` # expand $ac_aux_dir to an absolute path am_aux_dir=`cd $ac_aux_dir && pwd` @@ -1689,8 +2784,8 @@ if eval "$MISSING --run true"; then am_missing_run="$MISSING --run " else am_missing_run= - { echo "$as_me:$LINENO: WARNING: \`missing' script is too old or missing" >&5 -echo "$as_me: WARNING: \`missing' script is too old or missing" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: \`missing' script is too old or missing" >&5 +$as_echo "$as_me: WARNING: \`missing' script is too old or missing" >&2;} fi if mkdir -p -- . 2>/dev/null; then @@ -1722,10 +2817,10 @@ for ac_prog in gawk mawk nawk awk do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_AWK+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_AWK+:} false; then : + $as_echo_n "(cached) " >&6 else if test -n "$AWK"; then ac_cv_prog_AWK="$AWK" # Let the user override the test. @@ -1735,55 +2830,59 @@ for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_AWK="$ac_prog" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done +IFS=$as_save_IFS fi fi AWK=$ac_cv_prog_AWK if test -n "$AWK"; then - echo "$as_me:$LINENO: result: $AWK" >&5 -echo "${ECHO_T}$AWK" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AWK" >&5 +$as_echo "$AWK" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } fi + test -n "$AWK" && break done -echo "$as_me:$LINENO: checking whether ${MAKE-make} sets \$(MAKE)" >&5 -echo $ECHO_N "checking whether ${MAKE-make} sets \$(MAKE)... $ECHO_C" >&6 -set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y,:./+-,___p_,'` -if eval "test \"\${ac_cv_prog_make_${ac_make}_set+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5 +$as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; } +set x ${MAKE-make} +ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'` +if eval \${ac_cv_prog_make_${ac_make}_set+:} false; then : + $as_echo_n "(cached) " >&6 else cat >conftest.make <<\_ACEOF +SHELL = /bin/sh all: - @echo 'ac_maketemp="$(MAKE)"' + @echo '@@@%%%=$(MAKE)=@@@%%%' _ACEOF -# GNU make sometimes prints "make[1]: Entering...", which would confuse us. -eval `${MAKE-make} -f conftest.make 2>/dev/null | grep temp=` -if test -n "$ac_maketemp"; then - eval ac_cv_prog_make_${ac_make}_set=yes -else - eval ac_cv_prog_make_${ac_make}_set=no -fi +# GNU make sometimes prints "make[1]: Entering ...", which would confuse us. +case `${MAKE-make} -f conftest.make 2>/dev/null` in + *@@@%%%=?*=@@@%%%*) + eval ac_cv_prog_make_${ac_make}_set=yes;; + *) + eval ac_cv_prog_make_${ac_make}_set=no;; +esac rm -f conftest.make fi -if eval "test \"`echo '$ac_cv_prog_make_'${ac_make}_set`\" = yes"; then - echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6 +if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } SET_MAKE= else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } SET_MAKE="MAKE=${MAKE-make}" fi @@ -1799,9 +2898,7 @@ rmdir .tst 2>/dev/null # test to see if srcdir already configured if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then - { { echo "$as_me:$LINENO: error: source directory already configured; run \"make distclean\" there first" >&5 -echo "$as_me: error: source directory already configured; run \"make distclean\" there first" >&2;} - { (exit 1); exit 1; }; } + as_fn_error $? "source directory already configured; run \"make distclean\" there first" "$LINENO" 5 fi # test whether we have cygpath @@ -1857,10 +2954,10 @@ if test "$cross_compiling" != no; then if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args. set dummy ${ac_tool_prefix}strip; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_STRIP+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_STRIP+:} false; then : + $as_echo_n "(cached) " >&6 else if test -n "$STRIP"; then ac_cv_prog_STRIP="$STRIP" # Let the user override the test. @@ -1870,35 +2967,37 @@ for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_STRIP="${ac_tool_prefix}strip" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done +IFS=$as_save_IFS fi fi STRIP=$ac_cv_prog_STRIP if test -n "$STRIP"; then - echo "$as_me:$LINENO: result: $STRIP" >&5 -echo "${ECHO_T}$STRIP" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5 +$as_echo "$STRIP" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } fi + fi if test -z "$ac_cv_prog_STRIP"; then ac_ct_STRIP=$STRIP # Extract the first word of "strip", so it can be a program name with args. set dummy strip; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_ac_ct_STRIP+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ac_ct_STRIP+:} false; then : + $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_STRIP"; then ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test. @@ -1908,28 +3007,38 @@ for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_STRIP="strip" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done +IFS=$as_save_IFS - test -z "$ac_cv_prog_ac_ct_STRIP" && ac_cv_prog_ac_ct_STRIP=":" fi fi ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP if test -n "$ac_ct_STRIP"; then - echo "$as_me:$LINENO: result: $ac_ct_STRIP" >&5 -echo "${ECHO_T}$ac_ct_STRIP" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5 +$as_echo "$ac_ct_STRIP" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } fi - STRIP=$ac_ct_STRIP + if test "x$ac_ct_STRIP" = x; then + STRIP=":" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + STRIP=$ac_ct_STRIP + fi else STRIP="$ac_cv_prog_STRIP" fi @@ -1943,62 +3052,79 @@ INSTALL_STRIP_PROGRAM="\${SHELL} \$(install_sh) -c -s" - ac_config_headers="$ac_config_headers config.h" +ac_config_headers="$ac_config_headers config.h" # Make sure we can run config.sub. -$ac_config_sub sun4 >/dev/null 2>&1 || - { { echo "$as_me:$LINENO: error: cannot run $ac_config_sub" >&5 -echo "$as_me: error: cannot run $ac_config_sub" >&2;} - { (exit 1); exit 1; }; } - -echo "$as_me:$LINENO: checking build system type" >&5 -echo $ECHO_N "checking build system type... $ECHO_C" >&6 -if test "${ac_cv_build+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_cv_build_alias=$build_alias -test -z "$ac_cv_build_alias" && - ac_cv_build_alias=`$ac_config_guess` -test -z "$ac_cv_build_alias" && - { { echo "$as_me:$LINENO: error: cannot guess build type; you must specify one" >&5 -echo "$as_me: error: cannot guess build type; you must specify one" >&2;} - { (exit 1); exit 1; }; } -ac_cv_build=`$ac_config_sub $ac_cv_build_alias` || - { { echo "$as_me:$LINENO: error: $ac_config_sub $ac_cv_build_alias failed" >&5 -echo "$as_me: error: $ac_config_sub $ac_cv_build_alias failed" >&2;} - { (exit 1); exit 1; }; } - -fi -echo "$as_me:$LINENO: result: $ac_cv_build" >&5 -echo "${ECHO_T}$ac_cv_build" >&6 +$SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 || + as_fn_error $? "cannot run $SHELL $ac_aux_dir/config.sub" "$LINENO" 5 + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking build system type" >&5 +$as_echo_n "checking build system type... " >&6; } +if ${ac_cv_build+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_build_alias=$build_alias +test "x$ac_build_alias" = x && + ac_build_alias=`$SHELL "$ac_aux_dir/config.guess"` +test "x$ac_build_alias" = x && + as_fn_error $? "cannot guess build type; you must specify one" "$LINENO" 5 +ac_cv_build=`$SHELL "$ac_aux_dir/config.sub" $ac_build_alias` || + as_fn_error $? "$SHELL $ac_aux_dir/config.sub $ac_build_alias failed" "$LINENO" 5 + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build" >&5 +$as_echo "$ac_cv_build" >&6; } +case $ac_cv_build in +*-*-*) ;; +*) as_fn_error $? "invalid value of canonical build" "$LINENO" 5;; +esac build=$ac_cv_build -build_cpu=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` -build_vendor=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` -build_os=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` +ac_save_IFS=$IFS; IFS='-' +set x $ac_cv_build +shift +build_cpu=$1 +build_vendor=$2 +shift; shift +# Remember, the first character of IFS is used to create $*, +# except with old shells: +build_os=$* +IFS=$ac_save_IFS +case $build_os in *\ *) build_os=`echo "$build_os" | sed 's/ /-/g'`;; esac -echo "$as_me:$LINENO: checking host system type" >&5 -echo $ECHO_N "checking host system type... $ECHO_C" >&6 -if test "${ac_cv_host+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking host system type" >&5 +$as_echo_n "checking host system type... " >&6; } +if ${ac_cv_host+:} false; then : + $as_echo_n "(cached) " >&6 else - ac_cv_host_alias=$host_alias -test -z "$ac_cv_host_alias" && - ac_cv_host_alias=$ac_cv_build_alias -ac_cv_host=`$ac_config_sub $ac_cv_host_alias` || - { { echo "$as_me:$LINENO: error: $ac_config_sub $ac_cv_host_alias failed" >&5 -echo "$as_me: error: $ac_config_sub $ac_cv_host_alias failed" >&2;} - { (exit 1); exit 1; }; } + if test "x$host_alias" = x; then + ac_cv_host=$ac_cv_build +else + ac_cv_host=`$SHELL "$ac_aux_dir/config.sub" $host_alias` || + as_fn_error $? "$SHELL $ac_aux_dir/config.sub $host_alias failed" "$LINENO" 5 +fi fi -echo "$as_me:$LINENO: result: $ac_cv_host" >&5 -echo "${ECHO_T}$ac_cv_host" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_host" >&5 +$as_echo "$ac_cv_host" >&6; } +case $ac_cv_host in +*-*-*) ;; +*) as_fn_error $? "invalid value of canonical host" "$LINENO" 5;; +esac host=$ac_cv_host -host_cpu=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` -host_vendor=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` -host_os=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` +ac_save_IFS=$IFS; IFS='-' +set x $ac_cv_host +shift +host_cpu=$1 +host_vendor=$2 +shift; shift +# Remember, the first character of IFS is used to create $*, +# except with old shells: +host_os=$* +IFS=$ac_save_IFS +case $host_os in *\ *) host_os=`echo "$host_os" | sed 's/ /-/g'`;; esac @@ -2011,10 +3137,10 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args. set dummy ${ac_tool_prefix}gcc; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_CC+:} false; then : + $as_echo_n "(cached) " >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. @@ -2024,35 +3150,37 @@ for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_CC="${ac_tool_prefix}gcc" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done +IFS=$as_save_IFS fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then - echo "$as_me:$LINENO: result: $CC" >&5 -echo "${ECHO_T}$CC" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 +$as_echo "$CC" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } fi + fi if test -z "$ac_cv_prog_CC"; then ac_ct_CC=$CC # Extract the first word of "gcc", so it can be a program name with args. set dummy gcc; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_ac_ct_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ac_ct_CC+:} false; then : + $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_CC"; then ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. @@ -2062,39 +3190,50 @@ for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_CC="gcc" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done +IFS=$as_save_IFS fi fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then - echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 -echo "${ECHO_T}$ac_ct_CC" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 +$as_echo "$ac_ct_CC" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } fi - CC=$ac_ct_CC + if test "x$ac_ct_CC" = x; then + CC="" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + CC=$ac_ct_CC + fi else CC="$ac_cv_prog_CC" fi if test -z "$CC"; then - if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args. + if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args. set dummy ${ac_tool_prefix}cc; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_CC+:} false; then : + $as_echo_n "(cached) " >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. @@ -2104,77 +3243,37 @@ for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_CC="${ac_tool_prefix}cc" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done +IFS=$as_save_IFS fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then - echo "$as_me:$LINENO: result: $CC" >&5 -echo "${ECHO_T}$CC" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - -fi -if test -z "$ac_cv_prog_CC"; then - ac_ct_CC=$CC - # Extract the first word of "cc", so it can be a program name with args. -set dummy cc; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_ac_ct_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$ac_ct_CC"; then - ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_CC="cc" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - -fi -fi -ac_ct_CC=$ac_cv_prog_ac_ct_CC -if test -n "$ac_ct_CC"; then - echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 -echo "${ECHO_T}$ac_ct_CC" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 +$as_echo "$CC" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } fi - CC=$ac_ct_CC -else - CC="$ac_cv_prog_CC" -fi + fi fi if test -z "$CC"; then # Extract the first word of "cc", so it can be a program name with args. set dummy cc; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_CC+:} false; then : + $as_echo_n "(cached) " >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. @@ -2185,18 +3284,19 @@ for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then ac_prog_rejected=yes continue fi ac_cv_prog_CC="cc" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done +IFS=$as_save_IFS if test $ac_prog_rejected = yes; then # We found a bogon in the path, so make sure we never use it. @@ -2214,24 +3314,25 @@ fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then - echo "$as_me:$LINENO: result: $CC" >&5 -echo "${ECHO_T}$CC" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 +$as_echo "$CC" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } fi + fi if test -z "$CC"; then if test -n "$ac_tool_prefix"; then - for ac_prog in cl + for ac_prog in cl.exe do # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. set dummy $ac_tool_prefix$ac_prog; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_CC+:} false; then : + $as_echo_n "(cached) " >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. @@ -2241,39 +3342,41 @@ for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_CC="$ac_tool_prefix$ac_prog" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done +IFS=$as_save_IFS fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then - echo "$as_me:$LINENO: result: $CC" >&5 -echo "${ECHO_T}$CC" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 +$as_echo "$CC" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } fi + test -n "$CC" && break done fi if test -z "$CC"; then ac_ct_CC=$CC - for ac_prog in cl + for ac_prog in cl.exe do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_ac_ct_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ac_ct_CC+:} false; then : + $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_CC"; then ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. @@ -2283,66 +3386,78 @@ for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_CC="$ac_prog" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done +IFS=$as_save_IFS fi fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then - echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 -echo "${ECHO_T}$ac_ct_CC" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 +$as_echo "$ac_ct_CC" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } fi + test -n "$ac_ct_CC" && break done - CC=$ac_ct_CC + if test "x$ac_ct_CC" = x; then + CC="" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + CC=$ac_ct_CC + fi fi fi -test -z "$CC" && { { echo "$as_me:$LINENO: error: no acceptable C compiler found in \$PATH -See \`config.log' for more details." >&5 -echo "$as_me: error: no acceptable C compiler found in \$PATH -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; } +test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "no acceptable C compiler found in \$PATH +See \`config.log' for more details" "$LINENO" 5; } # Provide some information about the compiler. -echo "$as_me:$LINENO:" \ - "checking for C compiler version" >&5 -ac_compiler=`set X $ac_compile; echo $2` -{ (eval echo "$as_me:$LINENO: \"$ac_compiler --version &5\"") >&5 - (eval $ac_compiler --version &5) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } -{ (eval echo "$as_me:$LINENO: \"$ac_compiler -v &5\"") >&5 - (eval $ac_compiler -v &5) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } -{ (eval echo "$as_me:$LINENO: \"$ac_compiler -V &5\"") >&5 - (eval $ac_compiler -V &5) 2>&5 +$as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5 +set X $ac_compile +ac_compiler=$2 +for ac_option in --version -v -V -qversion; do + { { ac_try="$ac_compiler $ac_option >&5" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_compiler $ac_option >&5") 2>conftest.err ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } + if test -s conftest.err; then + sed '10a\ +... rest of stderr output deleted ... + 10q' conftest.err >conftest.er1 + cat conftest.er1 >&5 + fi + rm -f conftest.er1 conftest.err + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } +done -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF +cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -2354,112 +3469,108 @@ main () } _ACEOF ac_clean_files_save=$ac_clean_files -ac_clean_files="$ac_clean_files a.out a.exe b.out" +ac_clean_files="$ac_clean_files a.out a.out.dSYM a.exe b.out" # Try to create an executable without -o first, disregard a.out. # It will help us diagnose broken compilers, and finding out an intuition # of exeext. -echo "$as_me:$LINENO: checking for C compiler default output file name" >&5 -echo $ECHO_N "checking for C compiler default output file name... $ECHO_C" >&6 -ac_link_default=`echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'` -if { (eval echo "$as_me:$LINENO: \"$ac_link_default\"") >&5 - (eval $ac_link_default) 2>&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler works" >&5 +$as_echo_n "checking whether the C compiler works... " >&6; } +ac_link_default=`$as_echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'` + +# The possible output files: +ac_files="a.out conftest.exe conftest a.exe a_out.exe b.out conftest.*" + +ac_rmfiles= +for ac_file in $ac_files +do + case $ac_file in + *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;; + * ) ac_rmfiles="$ac_rmfiles $ac_file";; + esac +done +rm -f $ac_rmfiles + +if { { ac_try="$ac_link_default" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_link_default") 2>&5 ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then - # Find the output, starting from the most likely. This scheme is -# not robust to junk in `.', hence go to wildcards (a.*) only as a last -# resort. - -# Be careful to initialize this variable, since it used to be cached. -# Otherwise an old cache value of `no' led to `EXEEXT = no' in a Makefile. -ac_cv_exeext= -# b.out is created by i960 compilers. -for ac_file in a_out.exe a.exe conftest.exe a.out conftest a.* conftest.* b.out + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then : + # Autoconf-2.13 could set the ac_cv_exeext variable to `no'. +# So ignore a value of `no', otherwise this would lead to `EXEEXT = no' +# in a Makefile. We should not override ac_cv_exeext if it was cached, +# so that the user can short-circuit this test for compilers unknown to +# Autoconf. +for ac_file in $ac_files '' do test -f "$ac_file" || continue case $ac_file in - *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.o | *.obj ) - ;; - conftest.$ac_ext ) - # This is the source file. + *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;; [ab].out ) # We found the default executable, but exeext='' is most # certainly right. break;; *.* ) - ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` - # FIXME: I believe we export ac_cv_exeext for Libtool, - # but it would be cool to find out if it's true. Does anybody - # maintain Libtool? --akim. - export ac_cv_exeext + if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no; + then :; else + ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` + fi + # We set ac_cv_exeext here because the later test for it is not + # safe: cross compilers may not add the suffix if given an `-o' + # argument, so we may need to know it at that point already. + # Even if this section looks crufty: it has the advantage of + # actually working. break;; * ) break;; esac done +test "$ac_cv_exeext" = no && ac_cv_exeext= + else - echo "$as_me: failed program was:" >&5 + ac_file='' +fi +if test -z "$ac_file"; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +$as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -{ { echo "$as_me:$LINENO: error: C compiler cannot create executables -See \`config.log' for more details." >&5 -echo "$as_me: error: C compiler cannot create executables -See \`config.log' for more details." >&2;} - { (exit 77); exit 77; }; } +{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error 77 "C compiler cannot create executables +See \`config.log' for more details" "$LINENO" 5; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } fi - +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler default output file name" >&5 +$as_echo_n "checking for C compiler default output file name... " >&6; } +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_file" >&5 +$as_echo "$ac_file" >&6; } ac_exeext=$ac_cv_exeext -echo "$as_me:$LINENO: result: $ac_file" >&5 -echo "${ECHO_T}$ac_file" >&6 - -# Check the compiler produces executables we can run. If not, either -# the compiler is broken, or we cross compile. -echo "$as_me:$LINENO: checking whether the C compiler works" >&5 -echo $ECHO_N "checking whether the C compiler works... $ECHO_C" >&6 -# FIXME: These cross compiler hacks should be removed for Autoconf 3.0 -# If not cross compiling, check that we can run a simple program. -if test "$cross_compiling" != yes; then - if { ac_try='./$ac_file' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cross_compiling=no - else - if test "$cross_compiling" = maybe; then - cross_compiling=yes - else - { { echo "$as_me:$LINENO: error: cannot run C compiled programs. -If you meant to cross compile, use \`--host'. -See \`config.log' for more details." >&5 -echo "$as_me: error: cannot run C compiled programs. -If you meant to cross compile, use \`--host'. -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; } - fi - fi -fi -echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6 -rm -f a.out a.exe conftest$ac_cv_exeext b.out +rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_exeext b.out ac_clean_files=$ac_clean_files_save -# Check the compiler produces executables we can run. If not, either -# the compiler is broken, or we cross compile. -echo "$as_me:$LINENO: checking whether we are cross compiling" >&5 -echo $ECHO_N "checking whether we are cross compiling... $ECHO_C" >&6 -echo "$as_me:$LINENO: result: $cross_compiling" >&5 -echo "${ECHO_T}$cross_compiling" >&6 - -echo "$as_me:$LINENO: checking for suffix of executables" >&5 -echo $ECHO_N "checking for suffix of executables... $ECHO_C" >&6 -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of executables" >&5 +$as_echo_n "checking for suffix of executables... " >&6; } +if { { ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_link") 2>&5 ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then : # If both `conftest.exe' and `conftest' are `present' (well, observable) # catch `conftest.exe'. For instance with Cygwin, `ls conftest' will # work properly (i.e., refer to `conftest.exe'), while it won't with @@ -2467,38 +3578,90 @@ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 for ac_file in conftest.exe conftest conftest.*; do test -f "$ac_file" || continue case $ac_file in - *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.o | *.obj ) ;; + *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;; *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` - export ac_cv_exeext break;; * ) break;; esac done else - { { echo "$as_me:$LINENO: error: cannot compute suffix of executables: cannot compile and link -See \`config.log' for more details." >&5 -echo "$as_me: error: cannot compute suffix of executables: cannot compile and link -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; } + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "cannot compute suffix of executables: cannot compile and link +See \`config.log' for more details" "$LINENO" 5; } fi - -rm -f conftest$ac_cv_exeext -echo "$as_me:$LINENO: result: $ac_cv_exeext" >&5 -echo "${ECHO_T}$ac_cv_exeext" >&6 +rm -f conftest conftest$ac_cv_exeext +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_exeext" >&5 +$as_echo "$ac_cv_exeext" >&6; } rm -f conftest.$ac_ext EXEEXT=$ac_cv_exeext ac_exeext=$EXEEXT -echo "$as_me:$LINENO: checking for suffix of object files" >&5 -echo $ECHO_N "checking for suffix of object files... $ECHO_C" >&6 -if test "${ac_cv_objext+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +int +main () +{ +FILE *f = fopen ("conftest.out", "w"); + return ferror (f) || fclose (f) != 0; + + ; + return 0; +} _ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF +ac_clean_files="$ac_clean_files conftest.out" +# Check that the compiler produces executables we can run. If not, either +# the compiler is broken, or we cross compile. +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5 +$as_echo_n "checking whether we are cross compiling... " >&6; } +if test "$cross_compiling" != yes; then + { { ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } + if { ac_try='./conftest$ac_cv_exeext' + { { case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; }; then + cross_compiling=no + else + if test "$cross_compiling" = maybe; then + cross_compiling=yes + else + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "cannot run C compiled programs. +If you meant to cross compile, use \`--host'. +See \`config.log' for more details" "$LINENO" 5; } + fi + fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5 +$as_echo "$cross_compiling" >&6; } + +rm -f conftest.$ac_ext conftest$ac_cv_exeext conftest.out +ac_clean_files=$ac_clean_files_save +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of object files" >&5 +$as_echo_n "checking for suffix of object files... " >&6; } +if ${ac_cv_objext+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -2510,45 +3673,46 @@ main () } _ACEOF rm -f conftest.o conftest.obj -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 +if { { ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_compile") 2>&5 ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then - for ac_file in `(ls conftest.o conftest.obj; ls conftest.*) 2>/dev/null`; do + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then : + for ac_file in conftest.o conftest.obj conftest.*; do + test -f "$ac_file" || continue; case $ac_file in - *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg ) ;; + *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM ) ;; *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'` break;; esac done else - echo "$as_me: failed program was:" >&5 + $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -{ { echo "$as_me:$LINENO: error: cannot compute suffix of object files: cannot compile -See \`config.log' for more details." >&5 -echo "$as_me: error: cannot compute suffix of object files: cannot compile -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; } +{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "cannot compute suffix of object files: cannot compile +See \`config.log' for more details" "$LINENO" 5; } fi - rm -f conftest.$ac_cv_objext conftest.$ac_ext fi -echo "$as_me:$LINENO: result: $ac_cv_objext" >&5 -echo "${ECHO_T}$ac_cv_objext" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_objext" >&5 +$as_echo "$ac_cv_objext" >&6; } OBJEXT=$ac_cv_objext ac_objext=$OBJEXT -echo "$as_me:$LINENO: checking whether we are using the GNU C compiler" >&5 -echo $ECHO_N "checking whether we are using the GNU C compiler... $ECHO_C" >&6 -if test "${ac_cv_c_compiler_gnu+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5 +$as_echo_n "checking whether we are using the GNU C compiler... " >&6; } +if ${ac_cv_c_compiler_gnu+:} false; then : + $as_echo_n "(cached) " >&6 else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -2562,54 +3726,34 @@ main () return 0; } _ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then +if ac_fn_c_try_compile "$LINENO"; then : ac_compiler_gnu=yes else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_compiler_gnu=no + ac_compiler_gnu=no fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext ac_cv_c_compiler_gnu=$ac_compiler_gnu fi -echo "$as_me:$LINENO: result: $ac_cv_c_compiler_gnu" >&5 -echo "${ECHO_T}$ac_cv_c_compiler_gnu" >&6 -GCC=`test $ac_compiler_gnu = yes && echo yes` +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5 +$as_echo "$ac_cv_c_compiler_gnu" >&6; } +if test $ac_compiler_gnu = yes; then + GCC=yes +else + GCC= +fi ac_test_CFLAGS=${CFLAGS+set} ac_save_CFLAGS=$CFLAGS -CFLAGS="-g" -echo "$as_me:$LINENO: checking whether $CC accepts -g" >&5 -echo $ECHO_N "checking whether $CC accepts -g... $ECHO_C" >&6 -if test "${ac_cv_prog_cc_g+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5 +$as_echo_n "checking whether $CC accepts -g... " >&6; } +if ${ac_cv_prog_cc_g+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_save_c_werror_flag=$ac_c_werror_flag + ac_c_werror_flag=yes + ac_cv_prog_cc_g=no + CFLAGS="-g" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -2620,38 +3764,49 @@ main () return 0; } _ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then +if ac_fn_c_try_compile "$LINENO"; then : ac_cv_prog_cc_g=yes else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 + CFLAGS="" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + +else + ac_c_werror_flag=$ac_save_c_werror_flag + CFLAGS="-g" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ -ac_cv_prog_cc_g=no +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_cv_prog_cc_g=yes +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -echo "$as_me:$LINENO: result: $ac_cv_prog_cc_g" >&5 -echo "${ECHO_T}$ac_cv_prog_cc_g" >&6 +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + ac_c_werror_flag=$ac_save_c_werror_flag +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5 +$as_echo "$ac_cv_prog_cc_g" >&6; } if test "$ac_test_CFLAGS" = set; then CFLAGS=$ac_save_CFLAGS elif test $ac_cv_prog_cc_g = yes; then @@ -2667,18 +3822,14 @@ else CFLAGS= fi fi -echo "$as_me:$LINENO: checking for $CC option to accept ANSI C" >&5 -echo $ECHO_N "checking for $CC option to accept ANSI C... $ECHO_C" >&6 -if test "${ac_cv_prog_cc_stdc+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5 +$as_echo_n "checking for $CC option to accept ISO C89... " >&6; } +if ${ac_cv_prog_cc_c89+:} false; then : + $as_echo_n "(cached) " >&6 else - ac_cv_prog_cc_stdc=no + ac_cv_prog_cc_c89=no ac_save_CC=$CC -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF +cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include @@ -2706,12 +3857,17 @@ static char *f (char * (*g) (char **, int), char **p, ...) /* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has function prototypes and stuff, but not '\xHH' hex character constants. These don't provoke an error unfortunately, instead are silently treated - as 'x'. The following induces an error, until -std1 is added to get + as 'x'. The following induces an error, until -std is added to get proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an array size at least. It's necessary to write '\x00'==0 to get something - that's true only with -std1. */ + that's true only with -std. */ int osf4_cc_array ['\x00' == 0 ? 1 : -1]; +/* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters + inside strings and character constants. */ +#define FOO(x) 'x' +int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1]; + int test (int i, double x); struct s1 {int (*f) (int a);}; struct s2 {int (*f) (double a);}; @@ -2726,201 +3882,37 @@ return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]; return 0; } _ACEOF -# Don't try gcc -ansi; that turns off useful extensions and -# breaks some systems' header files. -# AIX -qlanglvl=ansi -# Ultrix and OSF/1 -std1 -# HP-UX 10.20 and later -Ae -# HP-UX older versions -Aa -D_HPUX_SOURCE -# SVR4 -Xc -D__EXTENSIONS__ -for ac_arg in "" -qlanglvl=ansi -std1 -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" +for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \ + -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" do CC="$ac_save_CC $ac_arg" - rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_prog_cc_stdc=$ac_arg -break -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - + if ac_fn_c_try_compile "$LINENO"; then : + ac_cv_prog_cc_c89=$ac_arg fi -rm -f conftest.err conftest.$ac_objext +rm -f core conftest.err conftest.$ac_objext + test "x$ac_cv_prog_cc_c89" != "xno" && break done -rm -f conftest.$ac_ext conftest.$ac_objext +rm -f conftest.$ac_ext CC=$ac_save_CC fi - -case "x$ac_cv_prog_cc_stdc" in - x|xno) - echo "$as_me:$LINENO: result: none needed" >&5 -echo "${ECHO_T}none needed" >&6 ;; +# AC_CACHE_VAL +case "x$ac_cv_prog_cc_c89" in + x) + { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5 +$as_echo "none needed" >&6; } ;; + xno) + { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5 +$as_echo "unsupported" >&6; } ;; *) - echo "$as_me:$LINENO: result: $ac_cv_prog_cc_stdc" >&5 -echo "${ECHO_T}$ac_cv_prog_cc_stdc" >&6 - CC="$CC $ac_cv_prog_cc_stdc" ;; + CC="$CC $ac_cv_prog_cc_c89" + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5 +$as_echo "$ac_cv_prog_cc_c89" >&6; } ;; esac +if test "x$ac_cv_prog_cc_c89" != xno; then : -# Some people use a C++ compiler to compile C. Since we use `exit', -# in C++ we need to declare it. In case someone uses the same compiler -# for both compiling C and C++ we need to have the C++ compiler decide -# the declaration of exit, since it's the most demanding environment. -cat >conftest.$ac_ext <<_ACEOF -#ifndef __cplusplus - choke me -#endif -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - for ac_declaration in \ - '' \ - 'extern "C" void std::exit (int) throw (); using std::exit;' \ - 'extern "C" void std::exit (int); using std::exit;' \ - 'extern "C" void exit (int) throw ();' \ - 'extern "C" void exit (int);' \ - 'void exit (int);' -do - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_declaration -#include -int -main () -{ -exit (42); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - : -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -continue -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_declaration -int -main () -{ -exit (42); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - break -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -done -rm -f conftest* -if test -n "$ac_declaration"; then - echo '#ifdef __cplusplus' >>confdefs.h - echo $ac_declaration >>confdefs.h - echo '#endif' >>confdefs.h fi -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' @@ -2928,7 +3920,7 @@ ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $ ac_compiler_gnu=$ac_cv_c_compiler_gnu DEPDIR="${am__leading_dot}deps" - ac_config_commands="$ac_config_commands depfiles" +ac_config_commands="$ac_config_commands depfiles" am_make=${MAKE-make} @@ -2938,8 +3930,8 @@ am__doit: .PHONY: am__doit END # If we don't find an include directive, just comment out the code. -echo "$as_me:$LINENO: checking for style of include used by $am_make" >&5 -echo $ECHO_N "checking for style of include used by $am_make... $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for style of include used by $am_make" >&5 +$as_echo_n "checking for style of include used by $am_make... " >&6; } am__include="#" am__quote= _am_result=none @@ -2966,15 +3958,15 @@ if test "$am__include" = "#"; then fi -echo "$as_me:$LINENO: result: $_am_result" >&5 -echo "${ECHO_T}$_am_result" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $_am_result" >&5 +$as_echo "$_am_result" >&6; } rm -f confinc confmf -# Check whether --enable-dependency-tracking or --disable-dependency-tracking was given. -if test "${enable_dependency_tracking+set}" = set; then - enableval="$enable_dependency_tracking" +# Check whether --enable-dependency-tracking was given. +if test "${enable_dependency_tracking+set}" = set; then : + enableval=$enable_dependency_tracking; +fi -fi; if test "x$enable_dependency_tracking" != xno; then am_depcomp="$ac_aux_dir/depcomp" AMDEPBACKSLASH='\' @@ -2994,10 +3986,10 @@ fi depcc="$CC" am_compiler_list= -echo "$as_me:$LINENO: checking dependency style of $depcc" >&5 -echo $ECHO_N "checking dependency style of $depcc... $ECHO_C" >&6 -if test "${am_cv_CC_dependencies_compiler_type+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5 +$as_echo_n "checking dependency style of $depcc... " >&6; } +if ${am_cv_CC_dependencies_compiler_type+:} false; then : + $as_echo_n "(cached) " >&6 else if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then # We make a subdir and do the tests there. Otherwise we can end up @@ -3077,8 +4069,8 @@ else fi fi -echo "$as_me:$LINENO: result: $am_cv_CC_dependencies_compiler_type" >&5 -echo "${ECHO_T}$am_cv_CC_dependencies_compiler_type" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CC_dependencies_compiler_type" >&5 +$as_echo "$am_cv_CC_dependencies_compiler_type" >&6; } CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type @@ -3110,10 +4102,9 @@ then fi -# Check whether --enable-shared or --disable-shared was given. -if test "${enable_shared+set}" = set; then - enableval="$enable_shared" - p=${PACKAGE-default} +# Check whether --enable-shared was given. +if test "${enable_shared+set}" = set; then : + enableval=$enable_shared; p=${PACKAGE-default} case $enableval in yes) enable_shared=yes ;; no) enable_shared=no ;; @@ -3132,12 +4123,12 @@ if test "${enable_shared+set}" = set; then esac else enable_shared=yes -fi; +fi -# Check whether --enable-static or --disable-static was given. -if test "${enable_static+set}" = set; then - enableval="$enable_static" - p=${PACKAGE-default} + +# Check whether --enable-static was given. +if test "${enable_static+set}" = set; then : + enableval=$enable_static; p=${PACKAGE-default} case $enableval in yes) enable_static=yes ;; no) enable_static=no ;; @@ -3156,12 +4147,12 @@ if test "${enable_static+set}" = set; then esac else enable_static=yes -fi; +fi -# Check whether --enable-fast-install or --disable-fast-install was given. -if test "${enable_fast_install+set}" = set; then - enableval="$enable_fast_install" - p=${PACKAGE-default} + +# Check whether --enable-fast-install was given. +if test "${enable_fast_install+set}" = set; then : + enableval=$enable_fast_install; p=${PACKAGE-default} case $enableval in yes) enable_fast_install=yes ;; no) enable_fast_install=no ;; @@ -3180,12 +4171,13 @@ if test "${enable_fast_install+set}" = set; then esac else enable_fast_install=yes -fi; +fi -echo "$as_me:$LINENO: checking for a sed that does not truncate output" >&5 -echo $ECHO_N "checking for a sed that does not truncate output... $ECHO_C" >&6 -if test "${lt_cv_path_SED+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a sed that does not truncate output" >&5 +$as_echo_n "checking for a sed that does not truncate output... " >&6; } +if ${lt_cv_path_SED+:} false; then : + $as_echo_n "(cached) " >&6 else # Loop through the user's path and test for sed and gsed. # Then use that list of sed's as ones to test for truncation. @@ -3231,42 +4223,157 @@ for lt_ac_sed in $lt_ac_sed_list /usr/xpg4/bin/sed; do lt_cv_path_SED=$lt_ac_sed fi done -done -SED=$lt_cv_path_SED +done +SED=$lt_cv_path_SED + +fi + +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $SED" >&5 +$as_echo "$SED" >&6; } + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5 +$as_echo_n "checking for grep that handles long lines and -e... " >&6; } +if ${ac_cv_path_GREP+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -z "$GREP"; then + ac_path_GREP_found=false + # Loop through the user's path and test for each of PROGNAME-LIST + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_prog in grep ggrep; do + for ac_exec_ext in '' $ac_executable_extensions; do + ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext" + { test -f "$ac_path_GREP" && $as_test_x "$ac_path_GREP"; } || continue +# Check for GNU ac_path_GREP and select it if it is found. + # Check for GNU $ac_path_GREP +case `"$ac_path_GREP" --version 2>&1` in +*GNU*) + ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;; +*) + ac_count=0 + $as_echo_n 0123456789 >"conftest.in" + while : + do + cat "conftest.in" "conftest.in" >"conftest.tmp" + mv "conftest.tmp" "conftest.in" + cp "conftest.in" "conftest.nl" + $as_echo 'GREP' >> "conftest.nl" + "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break + diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break + as_fn_arith $ac_count + 1 && ac_count=$as_val + if test $ac_count -gt ${ac_path_GREP_max-0}; then + # Best one so far, save it but keep looking for a better one + ac_cv_path_GREP="$ac_path_GREP" + ac_path_GREP_max=$ac_count + fi + # 10*(2^10) chars as input seems more than enough + test $ac_count -gt 10 && break + done + rm -f conftest.in conftest.tmp conftest.nl conftest.out;; +esac + + $ac_path_GREP_found && break 3 + done + done + done +IFS=$as_save_IFS + if test -z "$ac_cv_path_GREP"; then + as_fn_error $? "no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 + fi +else + ac_cv_path_GREP=$GREP +fi fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5 +$as_echo "$ac_cv_path_GREP" >&6; } + GREP="$ac_cv_path_GREP" -echo "$as_me:$LINENO: result: $SED" >&5 -echo "${ECHO_T}$SED" >&6 -echo "$as_me:$LINENO: checking for egrep" >&5 -echo $ECHO_N "checking for egrep... $ECHO_C" >&6 -if test "${ac_cv_prog_egrep+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5 +$as_echo_n "checking for egrep... " >&6; } +if ${ac_cv_path_EGREP+:} false; then : + $as_echo_n "(cached) " >&6 else - if echo a | (grep -E '(a|b)') >/dev/null 2>&1 - then ac_cv_prog_egrep='grep -E' - else ac_cv_prog_egrep='egrep' + if echo a | $GREP -E '(a|b)' >/dev/null 2>&1 + then ac_cv_path_EGREP="$GREP -E" + else + if test -z "$EGREP"; then + ac_path_EGREP_found=false + # Loop through the user's path and test for each of PROGNAME-LIST + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_prog in egrep; do + for ac_exec_ext in '' $ac_executable_extensions; do + ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext" + { test -f "$ac_path_EGREP" && $as_test_x "$ac_path_EGREP"; } || continue +# Check for GNU ac_path_EGREP and select it if it is found. + # Check for GNU $ac_path_EGREP +case `"$ac_path_EGREP" --version 2>&1` in +*GNU*) + ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;; +*) + ac_count=0 + $as_echo_n 0123456789 >"conftest.in" + while : + do + cat "conftest.in" "conftest.in" >"conftest.tmp" + mv "conftest.tmp" "conftest.in" + cp "conftest.in" "conftest.nl" + $as_echo 'EGREP' >> "conftest.nl" + "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break + diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break + as_fn_arith $ac_count + 1 && ac_count=$as_val + if test $ac_count -gt ${ac_path_EGREP_max-0}; then + # Best one so far, save it but keep looking for a better one + ac_cv_path_EGREP="$ac_path_EGREP" + ac_path_EGREP_max=$ac_count fi + # 10*(2^10) chars as input seems more than enough + test $ac_count -gt 10 && break + done + rm -f conftest.in conftest.tmp conftest.nl conftest.out;; +esac + + $ac_path_EGREP_found && break 3 + done + done + done +IFS=$as_save_IFS + if test -z "$ac_cv_path_EGREP"; then + as_fn_error $? "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 + fi +else + ac_cv_path_EGREP=$EGREP +fi + + fi fi -echo "$as_me:$LINENO: result: $ac_cv_prog_egrep" >&5 -echo "${ECHO_T}$ac_cv_prog_egrep" >&6 - EGREP=$ac_cv_prog_egrep +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5 +$as_echo "$ac_cv_path_EGREP" >&6; } + EGREP="$ac_cv_path_EGREP" -# Check whether --with-gnu-ld or --without-gnu-ld was given. -if test "${with_gnu_ld+set}" = set; then - withval="$with_gnu_ld" - test "$withval" = no || with_gnu_ld=yes +# Check whether --with-gnu-ld was given. +if test "${with_gnu_ld+set}" = set; then : + withval=$with_gnu_ld; test "$withval" = no || with_gnu_ld=yes else with_gnu_ld=no -fi; +fi + ac_prog=ld if test "$GCC" = yes; then # Check if gcc -print-prog-name=ld gives a path. - echo "$as_me:$LINENO: checking for ld used by $CC" >&5 -echo $ECHO_N "checking for ld used by $CC... $ECHO_C" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld used by $CC" >&5 +$as_echo_n "checking for ld used by $CC... " >&6; } case $host in *-*-mingw*) # gcc leaves a trailing carriage return which upsets mingw @@ -3295,14 +4402,14 @@ echo $ECHO_N "checking for ld used by $CC... $ECHO_C" >&6 ;; esac elif test "$with_gnu_ld" = yes; then - echo "$as_me:$LINENO: checking for GNU ld" >&5 -echo $ECHO_N "checking for GNU ld... $ECHO_C" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5 +$as_echo_n "checking for GNU ld... " >&6; } else - echo "$as_me:$LINENO: checking for non-GNU ld" >&5 -echo $ECHO_N "checking for non-GNU ld... $ECHO_C" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5 +$as_echo_n "checking for non-GNU ld... " >&6; } fi -if test "${lt_cv_path_LD+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +if ${lt_cv_path_LD+:} false; then : + $as_echo_n "(cached) " >&6 else if test -z "$LD"; then lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR @@ -3332,19 +4439,17 @@ fi LD="$lt_cv_path_LD" if test -n "$LD"; then - echo "$as_me:$LINENO: result: $LD" >&5 -echo "${ECHO_T}$LD" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LD" >&5 +$as_echo "$LD" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } fi -test -z "$LD" && { { echo "$as_me:$LINENO: error: no acceptable ld found in \$PATH" >&5 -echo "$as_me: error: no acceptable ld found in \$PATH" >&2;} - { (exit 1); exit 1; }; } -echo "$as_me:$LINENO: checking if the linker ($LD) is GNU ld" >&5 -echo $ECHO_N "checking if the linker ($LD) is GNU ld... $ECHO_C" >&6 -if test "${lt_cv_prog_gnu_ld+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +test -z "$LD" && as_fn_error $? "no acceptable ld found in \$PATH" "$LINENO" 5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5 +$as_echo_n "checking if the linker ($LD) is GNU ld... " >&6; } +if ${lt_cv_prog_gnu_ld+:} false; then : + $as_echo_n "(cached) " >&6 else # I'd rather use --version here, but apparently some GNU ld's only accept -v. case `$LD -v 2>&1 &1 &5 -echo "${ECHO_T}$lt_cv_prog_gnu_ld" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_gnu_ld" >&5 +$as_echo "$lt_cv_prog_gnu_ld" >&6; } with_gnu_ld=$lt_cv_prog_gnu_ld -echo "$as_me:$LINENO: checking for $LD option to reload object files" >&5 -echo $ECHO_N "checking for $LD option to reload object files... $ECHO_C" >&6 -if test "${lt_cv_ld_reload_flag+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $LD option to reload object files" >&5 +$as_echo_n "checking for $LD option to reload object files... " >&6; } +if ${lt_cv_ld_reload_flag+:} false; then : + $as_echo_n "(cached) " >&6 else lt_cv_ld_reload_flag='-r' fi -echo "$as_me:$LINENO: result: $lt_cv_ld_reload_flag" >&5 -echo "${ECHO_T}$lt_cv_ld_reload_flag" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_reload_flag" >&5 +$as_echo "$lt_cv_ld_reload_flag" >&6; } reload_flag=$lt_cv_ld_reload_flag case $reload_flag in "" | " "*) ;; @@ -3377,10 +4482,10 @@ case $reload_flag in esac reload_cmds='$LD$reload_flag -o $output$reload_objs' -echo "$as_me:$LINENO: checking for BSD-compatible nm" >&5 -echo $ECHO_N "checking for BSD-compatible nm... $ECHO_C" >&6 -if test "${lt_cv_path_NM+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for BSD-compatible nm" >&5 +$as_echo_n "checking for BSD-compatible nm... " >&6; } +if ${lt_cv_path_NM+:} false; then : + $as_echo_n "(cached) " >&6 else if test -n "$NM"; then # Let the user override the test. @@ -3419,25 +4524,25 @@ else test -z "$lt_cv_path_NM" && lt_cv_path_NM=nm fi fi -echo "$as_me:$LINENO: result: $lt_cv_path_NM" >&5 -echo "${ECHO_T}$lt_cv_path_NM" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_NM" >&5 +$as_echo "$lt_cv_path_NM" >&6; } NM="$lt_cv_path_NM" -echo "$as_me:$LINENO: checking whether ln -s works" >&5 -echo $ECHO_N "checking whether ln -s works... $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ln -s works" >&5 +$as_echo_n "checking whether ln -s works... " >&6; } LN_S=$as_ln_s if test "$LN_S" = "ln -s"; then - echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } else - echo "$as_me:$LINENO: result: no, using $LN_S" >&5 -echo "${ECHO_T}no, using $LN_S" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no, using $LN_S" >&5 +$as_echo "no, using $LN_S" >&6; } fi -echo "$as_me:$LINENO: checking how to recognise dependent libraries" >&5 -echo $ECHO_N "checking how to recognise dependent libraries... $ECHO_C" >&6 -if test "${lt_cv_deplibs_check_method+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to recognise dependent libraries" >&5 +$as_echo_n "checking how to recognise dependent libraries... " >&6; } +if ${lt_cv_deplibs_check_method+:} false; then : + $as_echo_n "(cached) " >&6 else lt_cv_file_magic_cmd='$MAGIC_CMD' lt_cv_file_magic_test_file= @@ -3608,8 +4713,8 @@ sysv5OpenUNIX8* | sysv5UnixWare7* | sysv5uw[78]* | unixware7* | sysv4*uw2*) esac fi -echo "$as_me:$LINENO: result: $lt_cv_deplibs_check_method" >&5 -echo "${ECHO_T}$lt_cv_deplibs_check_method" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_deplibs_check_method" >&5 +$as_echo "$lt_cv_deplibs_check_method" >&6; } file_magic_cmd=$lt_cv_file_magic_cmd deplibs_check_method=$lt_cv_deplibs_check_method test -z "$deplibs_check_method" && deplibs_check_method=unknown @@ -3624,11 +4729,11 @@ LTCC=${LTCC-"$CC"} compiler=$CC -# Check whether --enable-libtool-lock or --disable-libtool-lock was given. -if test "${enable_libtool_lock+set}" = set; then - enableval="$enable_libtool_lock" +# Check whether --enable-libtool-lock was given. +if test "${enable_libtool_lock+set}" = set; then : + enableval=$enable_libtool_lock; +fi -fi; test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes # Some flags need to be propagated to the compiler or linker for good @@ -3637,11 +4742,11 @@ case $host in ia64-*-hpux*) # Find out which ABI we are using. echo 'int i;' > conftest.$ac_ext - if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 (eval $ac_compile) 2>&5 ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then case `/usr/bin/file conftest.$ac_objext` in *ELF-32*) HPUX_IA64_MODE="32" @@ -3655,12 +4760,12 @@ ia64-*-hpux*) ;; *-*-irix6*) # Find out which ABI we are using. - echo '#line 3658 "configure"' > conftest.$ac_ext - if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 + echo '#line 4763 "configure"' > conftest.$ac_ext + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 (eval $ac_compile) 2>&5 ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then if test "$lt_cv_prog_gnu_ld" = yes; then case `/usr/bin/file conftest.$ac_objext` in *32-bit*) @@ -3693,11 +4798,11 @@ ia64-*-hpux*) x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*|s390*-*linux*|sparc*-*linux*) # Find out which ABI we are using. echo 'int i;' > conftest.$ac_ext - if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 (eval $ac_compile) 2>&5 ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then case "`/usr/bin/file conftest.o`" in *32-bit*) case $host in @@ -3740,10 +4845,10 @@ x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*|s390*-*linux*|sparc*-*linux*) # On SCO OpenServer 5, we need -belf to get full-featured binaries. SAVE_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS -belf" - echo "$as_me:$LINENO: checking whether the C compiler needs -belf" >&5 -echo $ECHO_N "checking whether the C compiler needs -belf... $ECHO_C" >&6 -if test "${lt_cv_cc_needs_belf+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler needs -belf" >&5 +$as_echo_n "checking whether the C compiler needs -belf... " >&6; } +if ${lt_cv_cc_needs_belf+:} false; then : + $as_echo_n "(cached) " >&6 else ac_ext=c ac_cpp='$CPP $CPPFLAGS' @@ -3751,11 +4856,7 @@ ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -3766,36 +4867,13 @@ main () return 0; } _ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then +if ac_fn_c_try_link "$LINENO"; then : lt_cv_cc_needs_belf=yes else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -lt_cv_cc_needs_belf=no + lt_cv_cc_needs_belf=no fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' @@ -3803,8 +4881,8 @@ ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $ ac_compiler_gnu=$ac_cv_c_compiler_gnu fi -echo "$as_me:$LINENO: result: $lt_cv_cc_needs_belf" >&5 -echo "${ECHO_T}$lt_cv_cc_needs_belf" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_cc_needs_belf" >&5 +$as_echo "$lt_cv_cc_needs_belf" >&6; } if test x"$lt_cv_cc_needs_belf" != x"yes"; then # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf CFLAGS="$SAVE_CFLAGS" @@ -3821,15 +4899,15 @@ ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu -echo "$as_me:$LINENO: checking how to run the C preprocessor" >&5 -echo $ECHO_N "checking how to run the C preprocessor... $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&5 +$as_echo_n "checking how to run the C preprocessor... " >&6; } # On Suns, sometimes $CPP names a directory. if test -n "$CPP" && test -d "$CPP"; then CPP= fi if test -z "$CPP"; then - if test "${ac_cv_prog_CPP+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 + if ${ac_cv_prog_CPP+:} false; then : + $as_echo_n "(cached) " >&6 else # Double quotes because CPP needs to be expanded for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp" @@ -3843,11 +4921,7 @@ do # exists even on freestanding compilers. # On the NeXT, cc -E runs the code through the compiler's parser, # not just through cpp. "Syntax error" is here to catch this case. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #ifdef __STDC__ # include @@ -3856,78 +4930,34 @@ cat >>conftest.$ac_ext <<_ACEOF #endif Syntax error _ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then - : -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 +if ac_fn_c_try_cpp "$LINENO"; then : +else # Broken: fails on valid input. continue fi -rm -f conftest.err conftest.$ac_ext +rm -f conftest.err conftest.i conftest.$ac_ext - # OK, works on sane cases. Now check whether non-existent headers + # OK, works on sane cases. Now check whether nonexistent headers # can be detected and how. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include _ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then +if ac_fn_c_try_cpp "$LINENO"; then : # Broken: success on invalid input. continue else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - # Passes both tests. ac_preproc_ok=: break fi -rm -f conftest.err conftest.$ac_ext +rm -f conftest.err conftest.i conftest.$ac_ext done # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. -rm -f conftest.err conftest.$ac_ext -if $ac_preproc_ok; then +rm -f conftest.i conftest.err conftest.$ac_ext +if $ac_preproc_ok; then : break fi @@ -3939,8 +4969,8 @@ fi else ac_cv_prog_CPP=$CPP fi -echo "$as_me:$LINENO: result: $CPP" >&5 -echo "${ECHO_T}$CPP" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $CPP" >&5 +$as_echo "$CPP" >&6; } ac_preproc_ok=false for ac_c_preproc_warn_flag in '' yes do @@ -3950,11 +4980,7 @@ do # exists even on freestanding compilers. # On the NeXT, cc -E runs the code through the compiler's parser, # not just through cpp. "Syntax error" is here to catch this case. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #ifdef __STDC__ # include @@ -3963,85 +4989,40 @@ cat >>conftest.$ac_ext <<_ACEOF #endif Syntax error _ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then - : -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 +if ac_fn_c_try_cpp "$LINENO"; then : +else # Broken: fails on valid input. continue fi -rm -f conftest.err conftest.$ac_ext +rm -f conftest.err conftest.i conftest.$ac_ext - # OK, works on sane cases. Now check whether non-existent headers + # OK, works on sane cases. Now check whether nonexistent headers # can be detected and how. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include _ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then +if ac_fn_c_try_cpp "$LINENO"; then : # Broken: success on invalid input. continue else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - # Passes both tests. ac_preproc_ok=: break fi -rm -f conftest.err conftest.$ac_ext +rm -f conftest.err conftest.i conftest.$ac_ext done # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. -rm -f conftest.err conftest.$ac_ext -if $ac_preproc_ok; then - : +rm -f conftest.i conftest.err conftest.$ac_ext +if $ac_preproc_ok; then : + else - { { echo "$as_me:$LINENO: error: C preprocessor \"$CPP\" fails sanity check -See \`config.log' for more details." >&5 -echo "$as_me: error: C preprocessor \"$CPP\" fails sanity check -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; } + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "C preprocessor \"$CPP\" fails sanity check +See \`config.log' for more details" "$LINENO" 5; } fi ac_ext=c @@ -4051,16 +5032,12 @@ ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $ ac_compiler_gnu=$ac_cv_c_compiler_gnu -echo "$as_me:$LINENO: checking for ANSI C header files" >&5 -echo $ECHO_N "checking for ANSI C header files... $ECHO_C" >&6 -if test "${ac_cv_header_stdc+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5 +$as_echo_n "checking for ANSI C header files... " >&6; } +if ${ac_cv_header_stdc+:} false; then : + $as_echo_n "(cached) " >&6 else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include @@ -4075,50 +5052,23 @@ main () return 0; } _ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then +if ac_fn_c_try_compile "$LINENO"; then : ac_cv_header_stdc=yes else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_header_stdc=no + ac_cv_header_stdc=no fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext if test $ac_cv_header_stdc = yes; then # SunOS 4.x string.h does not declare mem*, contrary to ANSI. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "memchr" >/dev/null 2>&1; then - : + $EGREP "memchr" >/dev/null 2>&1; then : + else ac_cv_header_stdc=no fi @@ -4128,18 +5078,14 @@ fi if test $ac_cv_header_stdc = yes; then # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "free" >/dev/null 2>&1; then - : + $EGREP "free" >/dev/null 2>&1; then : + else ac_cv_header_stdc=no fi @@ -4149,16 +5095,13 @@ fi if test $ac_cv_header_stdc = yes; then # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi. - if test "$cross_compiling" = yes; then + if test "$cross_compiling" = yes; then : : else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include +#include #if ((' ' & 0x0FF) == 0x020) # define ISLOWER(c) ('a' <= (c) && (c) <= 'z') # define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) @@ -4178,108 +5121,39 @@ main () for (i = 0; i < 256; i++) if (XOR (islower (i), ISLOWER (i)) || toupper (i) != TOUPPER (i)) - exit(2); - exit (0); + return 2; + return 0; } _ACEOF -rm -f conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - : -else - echo "$as_me: program exited with status $ac_status" >&5 -echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 +if ac_fn_c_try_run "$LINENO"; then : -( exit $ac_status ) -ac_cv_header_stdc=no +else + ac_cv_header_stdc=no fi -rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext fi + fi fi -echo "$as_me:$LINENO: result: $ac_cv_header_stdc" >&5 -echo "${ECHO_T}$ac_cv_header_stdc" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5 +$as_echo "$ac_cv_header_stdc" >&6; } if test $ac_cv_header_stdc = yes; then -cat >>confdefs.h <<\_ACEOF -#define STDC_HEADERS 1 -_ACEOF +$as_echo "#define STDC_HEADERS 1" >>confdefs.h fi # On IRIX 5.3, sys/types and inttypes.h are conflicting. - - - - - - - - - for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \ inttypes.h stdint.h unistd.h -do -as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` -echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default - -#include <$ac_header> -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - eval "$as_ac_Header=yes" -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -eval "$as_ac_Header=no" -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 -if test `eval echo '${'$as_ac_Header'}'` = yes; then +do : + as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` +ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default +" +if eval test \"x\$"$as_ac_Header"\" = x"yes"; then : cat >>confdefs.h <<_ACEOF -#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 +#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 _ACEOF fi @@ -4287,169 +5161,36 @@ fi done - for ac_header in dlfcn.h -do -as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 -else - # Is the header compilable? -echo "$as_me:$LINENO: checking $ac_header usability" >&5 -echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -#include <$ac_header> -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_header_compiler=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_header_compiler=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 -echo "${ECHO_T}$ac_header_compiler" >&6 - -# Is the header present? -echo "$as_me:$LINENO: checking $ac_header presence" >&5 -echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include <$ac_header> -_ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then - ac_header_preproc=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_header_preproc=no -fi -rm -f conftest.err conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 -echo "${ECHO_T}$ac_header_preproc" >&6 - -# So? What about this header? -case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in - yes:no: ) - { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 -echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} - ac_header_preproc=yes - ;; - no:yes:* ) - { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 -echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 -echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 -echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 -echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 -echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} - ( - cat <<\_ASBOX -## ----------------------------------- ## -## Report this to support@underbit.com ## -## ----------------------------------- ## -_ASBOX - ) | - sed "s/^/$as_me: WARNING: /" >&2 - ;; -esac -echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - eval "$as_ac_Header=\$ac_header_preproc" -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 - -fi -if test `eval echo '${'$as_ac_Header'}'` = yes; then +do : + ac_fn_c_check_header_mongrel "$LINENO" "dlfcn.h" "ac_cv_header_dlfcn_h" "$ac_includes_default" +if test "x$ac_cv_header_dlfcn_h" = xyes; then : cat >>confdefs.h <<_ACEOF -#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 +#define HAVE_DLFCN_H 1 _ACEOF fi done -ac_ext=cc +ac_ext=cpp ac_cpp='$CXXCPP $CPPFLAGS' ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_cxx_compiler_gnu -if test -n "$ac_tool_prefix"; then - for ac_prog in $CCC g++ c++ gpp aCC CC cxx cc++ cl FCC KCC RCC xlC_r xlC +if test -z "$CXX"; then + if test -n "$CCC"; then + CXX=$CCC + else + if test -n "$ac_tool_prefix"; then + for ac_prog in g++ c++ gpp aCC CC cxx cc++ cl.exe FCC KCC RCC xlC_r xlC do # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. set dummy $ac_tool_prefix$ac_prog; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_CXX+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_CXX+:} false; then : + $as_echo_n "(cached) " >&6 else if test -n "$CXX"; then ac_cv_prog_CXX="$CXX" # Let the user override the test. @@ -4459,39 +5200,41 @@ for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_CXX="$ac_tool_prefix$ac_prog" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done +IFS=$as_save_IFS fi fi CXX=$ac_cv_prog_CXX if test -n "$CXX"; then - echo "$as_me:$LINENO: result: $CXX" >&5 -echo "${ECHO_T}$CXX" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CXX" >&5 +$as_echo "$CXX" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } fi + test -n "$CXX" && break done fi if test -z "$CXX"; then ac_ct_CXX=$CXX - for ac_prog in $CCC g++ c++ gpp aCC CC cxx cc++ cl FCC KCC RCC xlC_r xlC + for ac_prog in g++ c++ gpp aCC CC cxx cc++ cl.exe FCC KCC RCC xlC_r xlC do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_ac_ct_CXX+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ac_ct_CXX+:} false; then : + $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_CXX"; then ac_cv_prog_ac_ct_CXX="$ac_ct_CXX" # Let the user override the test. @@ -4501,64 +5244,77 @@ for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_CXX="$ac_prog" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done +IFS=$as_save_IFS fi fi ac_ct_CXX=$ac_cv_prog_ac_ct_CXX if test -n "$ac_ct_CXX"; then - echo "$as_me:$LINENO: result: $ac_ct_CXX" >&5 -echo "${ECHO_T}$ac_ct_CXX" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CXX" >&5 +$as_echo "$ac_ct_CXX" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } fi + test -n "$ac_ct_CXX" && break done -test -n "$ac_ct_CXX" || ac_ct_CXX="g++" - CXX=$ac_ct_CXX + if test "x$ac_ct_CXX" = x; then + CXX="g++" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + CXX=$ac_ct_CXX + fi fi - + fi +fi # Provide some information about the compiler. -echo "$as_me:$LINENO:" \ - "checking for C++ compiler version" >&5 -ac_compiler=`set X $ac_compile; echo $2` -{ (eval echo "$as_me:$LINENO: \"$ac_compiler --version &5\"") >&5 - (eval $ac_compiler --version &5) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } -{ (eval echo "$as_me:$LINENO: \"$ac_compiler -v &5\"") >&5 - (eval $ac_compiler -v &5) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } -{ (eval echo "$as_me:$LINENO: \"$ac_compiler -V &5\"") >&5 - (eval $ac_compiler -V &5) 2>&5 +$as_echo "$as_me:${as_lineno-$LINENO}: checking for C++ compiler version" >&5 +set X $ac_compile +ac_compiler=$2 +for ac_option in --version -v -V -qversion; do + { { ac_try="$ac_compiler $ac_option >&5" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_compiler $ac_option >&5") 2>conftest.err ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } + if test -s conftest.err; then + sed '10a\ +... rest of stderr output deleted ... + 10q' conftest.err >conftest.er1 + cat conftest.er1 >&5 + fi + rm -f conftest.er1 conftest.err + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } +done -echo "$as_me:$LINENO: checking whether we are using the GNU C++ compiler" >&5 -echo $ECHO_N "checking whether we are using the GNU C++ compiler... $ECHO_C" >&6 -if test "${ac_cv_cxx_compiler_gnu+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C++ compiler" >&5 +$as_echo_n "checking whether we are using the GNU C++ compiler... " >&6; } +if ${ac_cv_cxx_compiler_gnu+:} false; then : + $as_echo_n "(cached) " >&6 else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -4572,54 +5328,34 @@ main () return 0; } _ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then +if ac_fn_cxx_try_compile "$LINENO"; then : ac_compiler_gnu=yes else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_compiler_gnu=no + ac_compiler_gnu=no fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext ac_cv_cxx_compiler_gnu=$ac_compiler_gnu fi -echo "$as_me:$LINENO: result: $ac_cv_cxx_compiler_gnu" >&5 -echo "${ECHO_T}$ac_cv_cxx_compiler_gnu" >&6 -GXX=`test $ac_compiler_gnu = yes && echo yes` +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_cxx_compiler_gnu" >&5 +$as_echo "$ac_cv_cxx_compiler_gnu" >&6; } +if test $ac_compiler_gnu = yes; then + GXX=yes +else + GXX= +fi ac_test_CXXFLAGS=${CXXFLAGS+set} ac_save_CXXFLAGS=$CXXFLAGS -CXXFLAGS="-g" -echo "$as_me:$LINENO: checking whether $CXX accepts -g" >&5 -echo $ECHO_N "checking whether $CXX accepts -g... $ECHO_C" >&6 -if test "${ac_cv_prog_cxx_g+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CXX accepts -g" >&5 +$as_echo_n "checking whether $CXX accepts -g... " >&6; } +if ${ac_cv_prog_cxx_g+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_save_cxx_werror_flag=$ac_cxx_werror_flag + ac_cxx_werror_flag=yes + ac_cv_prog_cxx_g=no + CXXFLAGS="-g" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -4630,158 +5366,65 @@ main () return 0; } _ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then +if ac_fn_cxx_try_compile "$LINENO"; then : ac_cv_prog_cxx_g=yes else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_prog_cxx_g=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: $ac_cv_prog_cxx_g" >&5 -echo "${ECHO_T}$ac_cv_prog_cxx_g" >&6 -if test "$ac_test_CXXFLAGS" = set; then - CXXFLAGS=$ac_save_CXXFLAGS -elif test $ac_cv_prog_cxx_g = yes; then - if test "$GXX" = yes; then - CXXFLAGS="-g -O2" - else - CXXFLAGS="-g" - fi -else - if test "$GXX" = yes; then - CXXFLAGS="-O2" - else - CXXFLAGS= - fi -fi -for ac_declaration in \ - '' \ - 'extern "C" void std::exit (int) throw (); using std::exit;' \ - 'extern "C" void std::exit (int); using std::exit;' \ - 'extern "C" void exit (int) throw ();' \ - 'extern "C" void exit (int);' \ - 'void exit (int);' -do - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + CXXFLAGS="" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -$ac_declaration -#include + int main () { -exit (42); + ; return 0; } _ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - : -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 +if ac_fn_cxx_try_compile "$LINENO"; then : -continue -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF +else + ac_cxx_werror_flag=$ac_save_cxx_werror_flag + CXXFLAGS="-g" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -$ac_declaration + int main () { -exit (42); + ; return 0; } _ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - break -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - +if ac_fn_cxx_try_compile "$LINENO"; then : + ac_cv_prog_cxx_g=yes +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -done -rm -f conftest* -if test -n "$ac_declaration"; then - echo '#ifdef __cplusplus' >>confdefs.h - echo $ac_declaration >>confdefs.h - echo '#endif' >>confdefs.h +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi - -ac_ext=cc +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + ac_cxx_werror_flag=$ac_save_cxx_werror_flag +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cxx_g" >&5 +$as_echo "$ac_cv_prog_cxx_g" >&6; } +if test "$ac_test_CXXFLAGS" = set; then + CXXFLAGS=$ac_save_CXXFLAGS +elif test $ac_cv_prog_cxx_g = yes; then + if test "$GXX" = yes; then + CXXFLAGS="-g -O2" + else + CXXFLAGS="-g" + fi +else + if test "$GXX" = yes; then + CXXFLAGS="-O2" + else + CXXFLAGS= + fi +fi +ac_ext=cpp ac_cpp='$CXXCPP $CPPFLAGS' ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' @@ -4789,10 +5432,10 @@ ac_compiler_gnu=$ac_cv_cxx_compiler_gnu depcc="$CXX" am_compiler_list= -echo "$as_me:$LINENO: checking dependency style of $depcc" >&5 -echo $ECHO_N "checking dependency style of $depcc... $ECHO_C" >&6 -if test "${am_cv_CXX_dependencies_compiler_type+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5 +$as_echo_n "checking dependency style of $depcc... " >&6; } +if ${am_cv_CXX_dependencies_compiler_type+:} false; then : + $as_echo_n "(cached) " >&6 else if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then # We make a subdir and do the tests there. Otherwise we can end up @@ -4872,8 +5515,8 @@ else fi fi -echo "$as_me:$LINENO: result: $am_cv_CXX_dependencies_compiler_type" >&5 -echo "${ECHO_T}$am_cv_CXX_dependencies_compiler_type" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CXX_dependencies_compiler_type" >&5 +$as_echo "$am_cv_CXX_dependencies_compiler_type" >&6; } CXXDEPMODE=depmode=$am_cv_CXX_dependencies_compiler_type @@ -4889,16 +5532,16 @@ else fi -ac_ext=cc +ac_ext=cpp ac_cpp='$CXXCPP $CPPFLAGS' ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_cxx_compiler_gnu -echo "$as_me:$LINENO: checking how to run the C++ preprocessor" >&5 -echo $ECHO_N "checking how to run the C++ preprocessor... $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C++ preprocessor" >&5 +$as_echo_n "checking how to run the C++ preprocessor... " >&6; } if test -z "$CXXCPP"; then - if test "${ac_cv_prog_CXXCPP+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 + if ${ac_cv_prog_CXXCPP+:} false; then : + $as_echo_n "(cached) " >&6 else # Double quotes because CXXCPP needs to be expanded for CXXCPP in "$CXX -E" "/lib/cpp" @@ -4912,11 +5555,7 @@ do # exists even on freestanding compilers. # On the NeXT, cc -E runs the code through the compiler's parser, # not just through cpp. "Syntax error" is here to catch this case. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #ifdef __STDC__ # include @@ -4925,78 +5564,34 @@ cat >>conftest.$ac_ext <<_ACEOF #endif Syntax error _ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_cxx_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_cxx_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then - : -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 +if ac_fn_cxx_try_cpp "$LINENO"; then : +else # Broken: fails on valid input. continue fi -rm -f conftest.err conftest.$ac_ext +rm -f conftest.err conftest.i conftest.$ac_ext - # OK, works on sane cases. Now check whether non-existent headers + # OK, works on sane cases. Now check whether nonexistent headers # can be detected and how. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include _ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_cxx_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_cxx_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then +if ac_fn_cxx_try_cpp "$LINENO"; then : # Broken: success on invalid input. continue else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - # Passes both tests. ac_preproc_ok=: break fi -rm -f conftest.err conftest.$ac_ext +rm -f conftest.err conftest.i conftest.$ac_ext done # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. -rm -f conftest.err conftest.$ac_ext -if $ac_preproc_ok; then +rm -f conftest.i conftest.err conftest.$ac_ext +if $ac_preproc_ok; then : break fi @@ -5008,8 +5603,8 @@ fi else ac_cv_prog_CXXCPP=$CXXCPP fi -echo "$as_me:$LINENO: result: $CXXCPP" >&5 -echo "${ECHO_T}$CXXCPP" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $CXXCPP" >&5 +$as_echo "$CXXCPP" >&6; } ac_preproc_ok=false for ac_cxx_preproc_warn_flag in '' yes do @@ -5019,11 +5614,7 @@ do # exists even on freestanding compilers. # On the NeXT, cc -E runs the code through the compiler's parser, # not just through cpp. "Syntax error" is here to catch this case. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #ifdef __STDC__ # include @@ -5032,88 +5623,43 @@ cat >>conftest.$ac_ext <<_ACEOF #endif Syntax error _ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_cxx_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_cxx_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then - : -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 +if ac_fn_cxx_try_cpp "$LINENO"; then : +else # Broken: fails on valid input. continue fi -rm -f conftest.err conftest.$ac_ext +rm -f conftest.err conftest.i conftest.$ac_ext - # OK, works on sane cases. Now check whether non-existent headers + # OK, works on sane cases. Now check whether nonexistent headers # can be detected and how. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include _ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_cxx_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_cxx_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then +if ac_fn_cxx_try_cpp "$LINENO"; then : # Broken: success on invalid input. continue else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - # Passes both tests. ac_preproc_ok=: break fi -rm -f conftest.err conftest.$ac_ext +rm -f conftest.err conftest.i conftest.$ac_ext done # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. -rm -f conftest.err conftest.$ac_ext -if $ac_preproc_ok; then - : +rm -f conftest.i conftest.err conftest.$ac_ext +if $ac_preproc_ok; then : + else - { { echo "$as_me:$LINENO: error: C++ preprocessor \"$CXXCPP\" fails sanity check -See \`config.log' for more details." >&5 -echo "$as_me: error: C++ preprocessor \"$CXXCPP\" fails sanity check -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; } + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "C++ preprocessor \"$CXXCPP\" fails sanity check +See \`config.log' for more details" "$LINENO" 5; } fi -ac_ext=cc +ac_ext=cpp ac_cpp='$CXXCPP $CPPFLAGS' ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' @@ -5125,14 +5671,14 @@ ac_compile='$F77 -c $FFLAGS conftest.$ac_ext >&5' ac_link='$F77 -o conftest$ac_exeext $FFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_f77_compiler_gnu if test -n "$ac_tool_prefix"; then - for ac_prog in g77 f77 xlf frt pgf77 fort77 fl32 af77 f90 xlf90 pgf90 epcf90 f95 fort xlf95 ifc efc pgf95 lf95 gfortran + for ac_prog in g77 xlf f77 frt pgf77 cf77 fort77 fl32 af77 xlf90 f90 pgf90 pghpf epcf90 gfortran g95 xlf95 f95 fort ifort ifc efc pgfortran pgf95 lf95 ftn do # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. set dummy $ac_tool_prefix$ac_prog; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_F77+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_F77+:} false; then : + $as_echo_n "(cached) " >&6 else if test -n "$F77"; then ac_cv_prog_F77="$F77" # Let the user override the test. @@ -5142,39 +5688,41 @@ for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_F77="$ac_tool_prefix$ac_prog" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done +IFS=$as_save_IFS fi fi F77=$ac_cv_prog_F77 if test -n "$F77"; then - echo "$as_me:$LINENO: result: $F77" >&5 -echo "${ECHO_T}$F77" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $F77" >&5 +$as_echo "$F77" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } fi + test -n "$F77" && break done fi if test -z "$F77"; then ac_ct_F77=$F77 - for ac_prog in g77 f77 xlf frt pgf77 fort77 fl32 af77 f90 xlf90 pgf90 epcf90 f95 fort xlf95 ifc efc pgf95 lf95 gfortran + for ac_prog in g77 xlf f77 frt pgf77 cf77 fort77 fl32 af77 xlf90 f90 pgf90 pghpf epcf90 gfortran g95 xlf95 f95 fort ifort ifc efc pgfortran pgf95 lf95 ftn do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_ac_ct_F77+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ac_ct_F77+:} false; then : + $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_F77"; then ac_cv_prog_ac_ct_F77="$ac_ct_F77" # Let the user override the test. @@ -5184,64 +5732,81 @@ for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_F77="$ac_prog" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done +IFS=$as_save_IFS fi fi ac_ct_F77=$ac_cv_prog_ac_ct_F77 if test -n "$ac_ct_F77"; then - echo "$as_me:$LINENO: result: $ac_ct_F77" >&5 -echo "${ECHO_T}$ac_ct_F77" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_F77" >&5 +$as_echo "$ac_ct_F77" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } fi + test -n "$ac_ct_F77" && break done - F77=$ac_ct_F77 + if test "x$ac_ct_F77" = x; then + F77="" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + F77=$ac_ct_F77 + fi fi # Provide some information about the compiler. -echo "$as_me:5215:" \ - "checking for Fortran 77 compiler version" >&5 -ac_compiler=`set X $ac_compile; echo $2` -{ (eval echo "$as_me:$LINENO: \"$ac_compiler --version &5\"") >&5 - (eval $ac_compiler --version &5) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } -{ (eval echo "$as_me:$LINENO: \"$ac_compiler -v &5\"") >&5 - (eval $ac_compiler -v &5) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } -{ (eval echo "$as_me:$LINENO: \"$ac_compiler -V &5\"") >&5 - (eval $ac_compiler -V &5) 2>&5 +$as_echo "$as_me:${as_lineno-$LINENO}: checking for Fortran 77 compiler version" >&5 +set X $ac_compile +ac_compiler=$2 +for ac_option in --version -v -V -qversion; do + { { ac_try="$ac_compiler $ac_option >&5" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_compiler $ac_option >&5") 2>conftest.err ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } + if test -s conftest.err; then + sed '10a\ +... rest of stderr output deleted ... + 10q' conftest.err >conftest.er1 + cat conftest.er1 >&5 + fi + rm -f conftest.er1 conftest.err + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } +done rm -f a.out # If we don't use `.F' as extension, the preprocessor is not run on the # input file. (Note that this only needs to work for GNU compilers.) ac_save_ext=$ac_ext ac_ext=F -echo "$as_me:$LINENO: checking whether we are using the GNU Fortran 77 compiler" >&5 -echo $ECHO_N "checking whether we are using the GNU Fortran 77 compiler... $ECHO_C" >&6 -if test "${ac_cv_f77_compiler_gnu+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU Fortran 77 compiler" >&5 +$as_echo_n "checking whether we are using the GNU Fortran 77 compiler... " >&6; } +if ${ac_cv_f77_compiler_gnu+:} false; then : + $as_echo_n "(cached) " >&6 else - cat >conftest.$ac_ext <<_ACEOF + cat > conftest.$ac_ext <<_ACEOF program main #ifndef __GNUC__ choke me @@ -5249,88 +5814,42 @@ else end _ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_f77_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then +if ac_fn_f77_try_compile "$LINENO"; then : ac_compiler_gnu=yes else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_compiler_gnu=no + ac_compiler_gnu=no fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext ac_cv_f77_compiler_gnu=$ac_compiler_gnu fi -echo "$as_me:$LINENO: result: $ac_cv_f77_compiler_gnu" >&5 -echo "${ECHO_T}$ac_cv_f77_compiler_gnu" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_f77_compiler_gnu" >&5 +$as_echo "$ac_cv_f77_compiler_gnu" >&6; } ac_ext=$ac_save_ext ac_test_FFLAGS=${FFLAGS+set} ac_save_FFLAGS=$FFLAGS FFLAGS= -echo "$as_me:$LINENO: checking whether $F77 accepts -g" >&5 -echo $ECHO_N "checking whether $F77 accepts -g... $ECHO_C" >&6 -if test "${ac_cv_prog_f77_g+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $F77 accepts -g" >&5 +$as_echo_n "checking whether $F77 accepts -g... " >&6; } +if ${ac_cv_prog_f77_g+:} false; then : + $as_echo_n "(cached) " >&6 else FFLAGS=-g -cat >conftest.$ac_ext <<_ACEOF +cat > conftest.$ac_ext <<_ACEOF program main end _ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_f77_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then +if ac_fn_f77_try_compile "$LINENO"; then : ac_cv_prog_f77_g=yes else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_prog_f77_g=no + ac_cv_prog_f77_g=no fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -echo "$as_me:$LINENO: result: $ac_cv_prog_f77_g" >&5 -echo "${ECHO_T}$ac_cv_prog_f77_g" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_f77_g" >&5 +$as_echo "$ac_cv_prog_f77_g" >&6; } if test "$ac_test_FFLAGS" = set; then FFLAGS=$ac_save_FFLAGS elif test $ac_cv_prog_f77_g = yes; then @@ -5347,7 +5866,11 @@ else fi fi -G77=`test $ac_compiler_gnu = yes && echo yes` +if test $ac_compiler_gnu = yes; then + G77=yes +else + G77= +fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' @@ -5359,10 +5882,10 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu # Autoconf 2.13's AC_OBJEXT and AC_EXEEXT macros only works for C compilers! # find the maximum length of command line arguments -echo "$as_me:$LINENO: checking the maximum length of command line arguments" >&5 -echo $ECHO_N "checking the maximum length of command line arguments... $ECHO_C" >&6 -if test "${lt_cv_sys_max_cmd_len+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking the maximum length of command line arguments" >&5 +$as_echo_n "checking the maximum length of command line arguments... " >&6; } +if ${lt_cv_sys_max_cmd_len+:} false; then : + $as_echo_n "(cached) " >&6 else i=0 testring="ABCD" @@ -5424,21 +5947,21 @@ else fi if test -n $lt_cv_sys_max_cmd_len ; then - echo "$as_me:$LINENO: result: $lt_cv_sys_max_cmd_len" >&5 -echo "${ECHO_T}$lt_cv_sys_max_cmd_len" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sys_max_cmd_len" >&5 +$as_echo "$lt_cv_sys_max_cmd_len" >&6; } else - echo "$as_me:$LINENO: result: none" >&5 -echo "${ECHO_T}none" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: none" >&5 +$as_echo "none" >&6; } fi # Check for command to grab the raw symbol name followed by C symbol from nm. -echo "$as_me:$LINENO: checking command to parse $NM output from $compiler object" >&5 -echo $ECHO_N "checking command to parse $NM output from $compiler object... $ECHO_C" >&6 -if test "${lt_cv_sys_global_symbol_pipe+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking command to parse $NM output from $compiler object" >&5 +$as_echo_n "checking command to parse $NM output from $compiler object... " >&6; } +if ${lt_cv_sys_global_symbol_pipe+:} false; then : + $as_echo_n "(cached) " >&6 else # These are sane defaults that work on at least a few old systems. @@ -5524,18 +6047,18 @@ void nm_test_func(){} int main(){nm_test_var='a';nm_test_func();return(0);} EOF - if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 (eval $ac_compile) 2>&5 ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then # Now try to grab the symbols. nlist=conftest.nm - if { (eval echo "$as_me:$LINENO: \"$NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $nlist\"") >&5 + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $nlist\""; } >&5 (eval $NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $nlist) 2>&5 ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && test -s "$nlist"; then + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && test -s "$nlist"; then # Try sorting and uniquifying the output. if sort "$nlist" | uniq > "$nlist"T; then mv -f "$nlist"T "$nlist" @@ -5586,11 +6109,11 @@ EOF lt_save_CFLAGS="$CFLAGS" LIBS="conftstm.$ac_objext" CFLAGS="$CFLAGS$lt_prog_compiler_no_builtin_flag" - if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 (eval $ac_link) 2>&5 ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && test -s conftest${ac_exeext}; then + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && test -s conftest${ac_exeext}; then pipe_works=yes fi LIBS="$lt_save_LIBS" @@ -5624,17 +6147,17 @@ if test -z "$lt_cv_sys_global_symbol_pipe"; then lt_cv_sys_global_symbol_to_cdecl= fi if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then - echo "$as_me:$LINENO: result: failed" >&5 -echo "${ECHO_T}failed" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: failed" >&5 +$as_echo "failed" >&6; } else - echo "$as_me:$LINENO: result: ok" >&5 -echo "${ECHO_T}ok" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: ok" >&5 +$as_echo "ok" >&6; } fi -echo "$as_me:$LINENO: checking for objdir" >&5 -echo $ECHO_N "checking for objdir... $ECHO_C" >&6 -if test "${lt_cv_objdir+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for objdir" >&5 +$as_echo_n "checking for objdir... " >&6; } +if ${lt_cv_objdir+:} false; then : + $as_echo_n "(cached) " >&6 else rm -f .libs 2>/dev/null mkdir .libs 2>/dev/null @@ -5646,8 +6169,8 @@ else fi rmdir .libs 2>/dev/null fi -echo "$as_me:$LINENO: result: $lt_cv_objdir" >&5 -echo "${ECHO_T}$lt_cv_objdir" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_objdir" >&5 +$as_echo "$lt_cv_objdir" >&6; } objdir=$lt_cv_objdir @@ -5698,10 +6221,10 @@ with_gnu_ld="$lt_cv_prog_gnu_ld" if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args. set dummy ${ac_tool_prefix}ar; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_AR+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_AR+:} false; then : + $as_echo_n "(cached) " >&6 else if test -n "$AR"; then ac_cv_prog_AR="$AR" # Let the user override the test. @@ -5711,35 +6234,37 @@ for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_AR="${ac_tool_prefix}ar" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done +IFS=$as_save_IFS fi fi AR=$ac_cv_prog_AR if test -n "$AR"; then - echo "$as_me:$LINENO: result: $AR" >&5 -echo "${ECHO_T}$AR" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AR" >&5 +$as_echo "$AR" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } fi + fi if test -z "$ac_cv_prog_AR"; then ac_ct_AR=$AR # Extract the first word of "ar", so it can be a program name with args. set dummy ar; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_ac_ct_AR+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ac_ct_AR+:} false; then : + $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_AR"; then ac_cv_prog_ac_ct_AR="$ac_ct_AR" # Let the user override the test. @@ -5749,28 +6274,38 @@ for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_AR="ar" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done +IFS=$as_save_IFS - test -z "$ac_cv_prog_ac_ct_AR" && ac_cv_prog_ac_ct_AR="false" fi fi ac_ct_AR=$ac_cv_prog_ac_ct_AR if test -n "$ac_ct_AR"; then - echo "$as_me:$LINENO: result: $ac_ct_AR" >&5 -echo "${ECHO_T}$ac_ct_AR" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_AR" >&5 +$as_echo "$ac_ct_AR" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } fi - AR=$ac_ct_AR + if test "x$ac_ct_AR" = x; then + AR="false" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + AR=$ac_ct_AR + fi else AR="$ac_cv_prog_AR" fi @@ -5778,10 +6313,10 @@ fi if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args. set dummy ${ac_tool_prefix}ranlib; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_RANLIB+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_RANLIB+:} false; then : + $as_echo_n "(cached) " >&6 else if test -n "$RANLIB"; then ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test. @@ -5791,35 +6326,37 @@ for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done +IFS=$as_save_IFS fi fi RANLIB=$ac_cv_prog_RANLIB if test -n "$RANLIB"; then - echo "$as_me:$LINENO: result: $RANLIB" >&5 -echo "${ECHO_T}$RANLIB" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $RANLIB" >&5 +$as_echo "$RANLIB" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } fi + fi if test -z "$ac_cv_prog_RANLIB"; then ac_ct_RANLIB=$RANLIB # Extract the first word of "ranlib", so it can be a program name with args. set dummy ranlib; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_ac_ct_RANLIB+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ac_ct_RANLIB+:} false; then : + $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_RANLIB"; then ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test. @@ -5829,28 +6366,38 @@ for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_RANLIB="ranlib" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done +IFS=$as_save_IFS - test -z "$ac_cv_prog_ac_ct_RANLIB" && ac_cv_prog_ac_ct_RANLIB=":" fi fi ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB if test -n "$ac_ct_RANLIB"; then - echo "$as_me:$LINENO: result: $ac_ct_RANLIB" >&5 -echo "${ECHO_T}$ac_ct_RANLIB" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_RANLIB" >&5 +$as_echo "$ac_ct_RANLIB" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } fi - RANLIB=$ac_ct_RANLIB + if test "x$ac_ct_RANLIB" = x; then + RANLIB=":" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + RANLIB=$ac_ct_RANLIB + fi else RANLIB="$ac_cv_prog_RANLIB" fi @@ -5858,10 +6405,10 @@ fi if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args. set dummy ${ac_tool_prefix}strip; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_STRIP+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_STRIP+:} false; then : + $as_echo_n "(cached) " >&6 else if test -n "$STRIP"; then ac_cv_prog_STRIP="$STRIP" # Let the user override the test. @@ -5871,35 +6418,37 @@ for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_STRIP="${ac_tool_prefix}strip" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done +IFS=$as_save_IFS fi fi STRIP=$ac_cv_prog_STRIP if test -n "$STRIP"; then - echo "$as_me:$LINENO: result: $STRIP" >&5 -echo "${ECHO_T}$STRIP" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5 +$as_echo "$STRIP" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } fi + fi if test -z "$ac_cv_prog_STRIP"; then ac_ct_STRIP=$STRIP # Extract the first word of "strip", so it can be a program name with args. set dummy strip; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_ac_ct_STRIP+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ac_ct_STRIP+:} false; then : + $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_STRIP"; then ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test. @@ -5909,28 +6458,38 @@ for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_STRIP="strip" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done +IFS=$as_save_IFS - test -z "$ac_cv_prog_ac_ct_STRIP" && ac_cv_prog_ac_ct_STRIP=":" fi fi ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP if test -n "$ac_ct_STRIP"; then - echo "$as_me:$LINENO: result: $ac_ct_STRIP" >&5 -echo "${ECHO_T}$ac_ct_STRIP" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5 +$as_echo "$ac_ct_STRIP" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } fi - STRIP=$ac_ct_STRIP + if test "x$ac_ct_STRIP" = x; then + STRIP=":" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + STRIP=$ac_ct_STRIP + fi else STRIP="$ac_cv_prog_STRIP" fi @@ -5977,10 +6536,10 @@ fi case $deplibs_check_method in file_magic*) if test "$file_magic_cmd" = '$MAGIC_CMD'; then - echo "$as_me:$LINENO: checking for ${ac_tool_prefix}file" >&5 -echo $ECHO_N "checking for ${ac_tool_prefix}file... $ECHO_C" >&6 -if test "${lt_cv_path_MAGIC_CMD+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ${ac_tool_prefix}file" >&5 +$as_echo_n "checking for ${ac_tool_prefix}file... " >&6; } +if ${lt_cv_path_MAGIC_CMD+:} false; then : + $as_echo_n "(cached) " >&6 else case $MAGIC_CMD in [\\/*] | ?:[\\/]*) @@ -6030,19 +6589,19 @@ fi MAGIC_CMD="$lt_cv_path_MAGIC_CMD" if test -n "$MAGIC_CMD"; then - echo "$as_me:$LINENO: result: $MAGIC_CMD" >&5 -echo "${ECHO_T}$MAGIC_CMD" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5 +$as_echo "$MAGIC_CMD" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } fi if test -z "$lt_cv_path_MAGIC_CMD"; then if test -n "$ac_tool_prefix"; then - echo "$as_me:$LINENO: checking for file" >&5 -echo $ECHO_N "checking for file... $ECHO_C" >&6 -if test "${lt_cv_path_MAGIC_CMD+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for file" >&5 +$as_echo_n "checking for file... " >&6; } +if ${lt_cv_path_MAGIC_CMD+:} false; then : + $as_echo_n "(cached) " >&6 else case $MAGIC_CMD in [\\/*] | ?:[\\/]*) @@ -6092,11 +6651,11 @@ fi MAGIC_CMD="$lt_cv_path_MAGIC_CMD" if test -n "$MAGIC_CMD"; then - echo "$as_me:$LINENO: result: $MAGIC_CMD" >&5 -echo "${ECHO_T}$MAGIC_CMD" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5 +$as_echo "$MAGIC_CMD" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } fi else @@ -6111,21 +6670,21 @@ esac enable_dlopen=no enable_win32_dll=no -# Check whether --enable-libtool-lock or --disable-libtool-lock was given. -if test "${enable_libtool_lock+set}" = set; then - enableval="$enable_libtool_lock" +# Check whether --enable-libtool-lock was given. +if test "${enable_libtool_lock+set}" = set; then : + enableval=$enable_libtool_lock; +fi -fi; test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes -# Check whether --with-pic or --without-pic was given. -if test "${with_pic+set}" = set; then - withval="$with_pic" - pic_mode="$withval" +# Check whether --with-pic was given. +if test "${with_pic+set}" = set; then : + withval=$with_pic; pic_mode="$withval" else pic_mode=default -fi; +fi + test -z "$pic_mode" && pic_mode=default # Use C for the default configuration in the libtool script @@ -6171,12 +6730,12 @@ if test "$GCC" = no; then esac fi if test -n "$lt_prog_cc_shlib"; then - { echo "$as_me:$LINENO: WARNING: \`$CC' requires \`$lt_prog_cc_shlib' to build shared libraries" >&5 -echo "$as_me: WARNING: \`$CC' requires \`$lt_prog_cc_shlib' to build shared libraries" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: \`$CC' requires \`$lt_prog_cc_shlib' to build shared libraries" >&5 +$as_echo "$as_me: WARNING: \`$CC' requires \`$lt_prog_cc_shlib' to build shared libraries" >&2;} if echo "$old_CC $old_CFLAGS " | grep "[ ]$lt_prog_cc_shlib[ ]" >/dev/null; then : else - { echo "$as_me:$LINENO: WARNING: add \`$lt_prog_cc_shlib' to the CC or CFLAGS env variable and reconfigure" >&5 -echo "$as_me: WARNING: add \`$lt_prog_cc_shlib' to the CC or CFLAGS env variable and reconfigure" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: add \`$lt_prog_cc_shlib' to the CC or CFLAGS env variable and reconfigure" >&5 +$as_echo "$as_me: WARNING: add \`$lt_prog_cc_shlib' to the CC or CFLAGS env variable and reconfigure" >&2;} lt_cv_prog_cc_can_build_shared=no fi fi @@ -6185,10 +6744,10 @@ fi # # Check to make sure the static flag actually works. # -echo "$as_me:$LINENO: checking if $compiler static flag $lt_prog_compiler_static works" >&5 -echo $ECHO_N "checking if $compiler static flag $lt_prog_compiler_static works... $ECHO_C" >&6 -if test "${lt_prog_compiler_static_works+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler static flag $lt_prog_compiler_static works" >&5 +$as_echo_n "checking if $compiler static flag $lt_prog_compiler_static works... " >&6; } +if ${lt_prog_compiler_static_works+:} false; then : + $as_echo_n "(cached) " >&6 else lt_prog_compiler_static_works=no save_LDFLAGS="$LDFLAGS" @@ -6208,8 +6767,8 @@ else LDFLAGS="$save_LDFLAGS" fi -echo "$as_me:$LINENO: result: $lt_prog_compiler_static_works" >&5 -echo "${ECHO_T}$lt_prog_compiler_static_works" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_prog_compiler_static_works" >&5 +$as_echo "$lt_prog_compiler_static_works" >&6; } if test x"$lt_prog_compiler_static_works" = xyes; then : @@ -6226,10 +6785,10 @@ if test "$GCC" = yes; then lt_prog_compiler_no_builtin_flag=' -fno-builtin' -echo "$as_me:$LINENO: checking if $compiler supports -fno-rtti -fno-exceptions" >&5 -echo $ECHO_N "checking if $compiler supports -fno-rtti -fno-exceptions... $ECHO_C" >&6 -if test "${lt_cv_prog_compiler_rtti_exceptions+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -fno-rtti -fno-exceptions" >&5 +$as_echo_n "checking if $compiler supports -fno-rtti -fno-exceptions... " >&6; } +if ${lt_cv_prog_compiler_rtti_exceptions+:} false; then : + $as_echo_n "(cached) " >&6 else lt_cv_prog_compiler_rtti_exceptions=no ac_outfile=conftest.$ac_objext @@ -6244,11 +6803,11 @@ else -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:6247: $lt_compile\"" >&5) + (eval echo "\"\$as_me:6806: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:6251: \$? = $ac_status" >&5 + echo "$as_me:6810: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings @@ -6259,8 +6818,8 @@ else $rm conftest* fi -echo "$as_me:$LINENO: result: $lt_cv_prog_compiler_rtti_exceptions" >&5 -echo "${ECHO_T}$lt_cv_prog_compiler_rtti_exceptions" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_rtti_exceptions" >&5 +$as_echo "$lt_cv_prog_compiler_rtti_exceptions" >&6; } if test x"$lt_cv_prog_compiler_rtti_exceptions" = xyes; then lt_prog_compiler_no_builtin_flag="$lt_prog_compiler_no_builtin_flag -fno-rtti -fno-exceptions" @@ -6274,8 +6833,8 @@ lt_prog_compiler_wl= lt_prog_compiler_pic= lt_prog_compiler_static= -echo "$as_me:$LINENO: checking for $compiler option to produce PIC" >&5 -echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&5 +$as_echo_n "checking for $compiler option to produce PIC... " >&6; } if test "$GCC" = yes; then lt_prog_compiler_wl='-Wl,' @@ -6451,18 +7010,18 @@ echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6 esac fi -echo "$as_me:$LINENO: result: $lt_prog_compiler_pic" >&5 -echo "${ECHO_T}$lt_prog_compiler_pic" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_prog_compiler_pic" >&5 +$as_echo "$lt_prog_compiler_pic" >&6; } # # Check to make sure the PIC flag actually works. # if test -n "$lt_prog_compiler_pic"; then -echo "$as_me:$LINENO: checking if $compiler PIC flag $lt_prog_compiler_pic works" >&5 -echo $ECHO_N "checking if $compiler PIC flag $lt_prog_compiler_pic works... $ECHO_C" >&6 -if test "${lt_prog_compiler_pic_works+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler PIC flag $lt_prog_compiler_pic works" >&5 +$as_echo_n "checking if $compiler PIC flag $lt_prog_compiler_pic works... " >&6; } +if ${lt_prog_compiler_pic_works+:} false; then : + $as_echo_n "(cached) " >&6 else lt_prog_compiler_pic_works=no ac_outfile=conftest.$ac_objext @@ -6477,11 +7036,11 @@ else -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:6480: $lt_compile\"" >&5) + (eval echo "\"\$as_me:7039: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:6484: \$? = $ac_status" >&5 + echo "$as_me:7043: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings @@ -6492,8 +7051,8 @@ else $rm conftest* fi -echo "$as_me:$LINENO: result: $lt_prog_compiler_pic_works" >&5 -echo "${ECHO_T}$lt_prog_compiler_pic_works" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_prog_compiler_pic_works" >&5 +$as_echo "$lt_prog_compiler_pic_works" >&6; } if test x"$lt_prog_compiler_pic_works" = xyes; then case $lt_prog_compiler_pic in @@ -6516,10 +7075,10 @@ case "$host_os" in ;; esac -echo "$as_me:$LINENO: checking if $compiler supports -c -o file.$ac_objext" >&5 -echo $ECHO_N "checking if $compiler supports -c -o file.$ac_objext... $ECHO_C" >&6 -if test "${lt_cv_prog_compiler_c_o+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5 +$as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; } +if ${lt_cv_prog_compiler_c_o+:} false; then : + $as_echo_n "(cached) " >&6 else lt_cv_prog_compiler_c_o=no $rm -r conftest 2>/dev/null @@ -6537,11 +7096,11 @@ else -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:6540: $lt_compile\"" >&5) + (eval echo "\"\$as_me:7099: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 - echo "$as_me:6544: \$? = $ac_status" >&5 + echo "$as_me:7103: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized @@ -6561,34 +7120,34 @@ else $rm conftest* fi -echo "$as_me:$LINENO: result: $lt_cv_prog_compiler_c_o" >&5 -echo "${ECHO_T}$lt_cv_prog_compiler_c_o" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o" >&5 +$as_echo "$lt_cv_prog_compiler_c_o" >&6; } hard_links="nottested" if test "$lt_cv_prog_compiler_c_o" = no && test "$need_locks" != no; then # do not overwrite the value of need_locks provided by the user - echo "$as_me:$LINENO: checking if we can lock with hard links" >&5 -echo $ECHO_N "checking if we can lock with hard links... $ECHO_C" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if we can lock with hard links" >&5 +$as_echo_n "checking if we can lock with hard links... " >&6; } hard_links=yes $rm conftest* ln conftest.a conftest.b 2>/dev/null && hard_links=no touch conftest.a ln conftest.a conftest.b 2>&5 || hard_links=no ln conftest.a conftest.b 2>/dev/null && hard_links=no - echo "$as_me:$LINENO: result: $hard_links" >&5 -echo "${ECHO_T}$hard_links" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $hard_links" >&5 +$as_echo "$hard_links" >&6; } if test "$hard_links" = no; then - { echo "$as_me:$LINENO: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&5 -echo "$as_me: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&5 +$as_echo "$as_me: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&2;} need_locks=warn fi else need_locks=no fi -echo "$as_me:$LINENO: checking whether the $compiler linker ($LD) supports shared libraries" >&5 -echo $ECHO_N "checking whether the $compiler linker ($LD) supports shared libraries... $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&5 +$as_echo_n "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; } runpath_var= allow_undefined_flag= @@ -6904,11 +7463,7 @@ $echo "local: *; };" >> $output_objdir/$libname.ver~ # -berok will link without error, but may produce a broken library. allow_undefined_flag='-berok' # Determine the default libpath from the value encoded in an empty executable. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -6919,40 +7474,16 @@ main () return 0; } _ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then +if ac_fn_c_try_link "$LINENO"; then : aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; } }'` # Check for a 64-bit object if we didn't find anything. if test -z "$aix_libpath"; then aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; } }'`; fi -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath" @@ -6964,11 +7495,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols" else # Determine the default libpath from the value encoded in an empty executable. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -6979,40 +7506,16 @@ main () return 0; } _ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then +if ac_fn_c_try_link "$LINENO"; then : aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; } }'` # Check for a 64-bit object if we didn't find anything. if test -z "$aix_libpath"; then aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; } }'`; fi -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath" @@ -7433,8 +7936,8 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi esac fi -echo "$as_me:$LINENO: result: $ld_shlibs" >&5 -echo "${ECHO_T}$ld_shlibs" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs" >&5 +$as_echo "$ld_shlibs" >&6; } test "$ld_shlibs" = no && can_build_shared=no variables_saved_for_relink="PATH $shlibpath_var $runpath_var" @@ -7459,16 +7962,16 @@ x|xyes) # Test whether the compiler implicitly links with -lc since on some # systems, -lgcc has to come before -lc. If gcc already passes -lc # to ld, don't add -lc before -lgcc. - echo "$as_me:$LINENO: checking whether -lc should be explicitly linked in" >&5 -echo $ECHO_N "checking whether -lc should be explicitly linked in... $ECHO_C" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -lc should be explicitly linked in" >&5 +$as_echo_n "checking whether -lc should be explicitly linked in... " >&6; } $rm conftest* printf "$lt_simple_compile_test_code" > conftest.$ac_ext - if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 (eval $ac_compile) 2>&5 ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } 2>conftest.err; then + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } 2>conftest.err; then soname=conftest lib=conftest libobjs=conftest.$ac_objext @@ -7481,11 +7984,11 @@ echo $ECHO_N "checking whether -lc should be explicitly linked in... $ECHO_C" >& libname=conftest lt_save_allow_undefined_flag=$allow_undefined_flag allow_undefined_flag= - if { (eval echo "$as_me:$LINENO: \"$archive_cmds 2\>\&1 \| grep \" -lc \" \>/dev/null 2\>\&1\"") >&5 + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$archive_cmds 2\>\&1 \| grep \" -lc \" \>/dev/null 2\>\&1\""; } >&5 (eval $archive_cmds 2\>\&1 \| grep \" -lc \" \>/dev/null 2\>\&1) 2>&5 ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } then archive_cmds_need_lc=no else @@ -7496,16 +7999,16 @@ echo $ECHO_N "checking whether -lc should be explicitly linked in... $ECHO_C" >& cat conftest.err 1>&5 fi $rm conftest* - echo "$as_me:$LINENO: result: $archive_cmds_need_lc" >&5 -echo "${ECHO_T}$archive_cmds_need_lc" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $archive_cmds_need_lc" >&5 +$as_echo "$archive_cmds_need_lc" >&6; } ;; esac fi ;; esac -echo "$as_me:$LINENO: checking dynamic linker characteristics" >&5 -echo $ECHO_N "checking dynamic linker characteristics... $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking dynamic linker characteristics" >&5 +$as_echo_n "checking dynamic linker characteristics... " >&6; } library_names_spec= libname_spec='lib$name' soname_spec= @@ -8044,12 +8547,12 @@ uts4*) dynamic_linker=no ;; esac -echo "$as_me:$LINENO: result: $dynamic_linker" >&5 -echo "${ECHO_T}$dynamic_linker" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $dynamic_linker" >&5 +$as_echo "$dynamic_linker" >&6; } test "$dynamic_linker" = no && can_build_shared=no -echo "$as_me:$LINENO: checking how to hardcode library paths into programs" >&5 -echo $ECHO_N "checking how to hardcode library paths into programs... $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to hardcode library paths into programs" >&5 +$as_echo_n "checking how to hardcode library paths into programs... " >&6; } hardcode_action= if test -n "$hardcode_libdir_flag_spec" || \ test -n "$runpath_var " || \ @@ -8073,8 +8576,8 @@ else # directories. hardcode_action=unsupported fi -echo "$as_me:$LINENO: result: $hardcode_action" >&5 -echo "${ECHO_T}$hardcode_action" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $hardcode_action" >&5 +$as_echo "$hardcode_action" >&6; } if test "$hardcode_action" = relink; then # Fast installation is not supported @@ -8087,29 +8590,29 @@ fi striplib= old_striplib= -echo "$as_me:$LINENO: checking whether stripping libraries is possible" >&5 -echo $ECHO_N "checking whether stripping libraries is possible... $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether stripping libraries is possible" >&5 +$as_echo_n "checking whether stripping libraries is possible... " >&6; } if test -n "$STRIP" && $STRIP -V 2>&1 | grep "GNU strip" >/dev/null; then test -z "$old_striplib" && old_striplib="$STRIP --strip-debug" test -z "$striplib" && striplib="$STRIP --strip-unneeded" - echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } else # FIXME - insert some real tests, host_os isn't really good enough case $host_os in darwin*) if test -n "$STRIP" ; then striplib="$STRIP -x" - echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } fi ;; *) - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } ;; esac fi @@ -8141,70 +8644,43 @@ else darwin*) # if libdl is installed we need to link against it - echo "$as_me:$LINENO: checking for dlopen in -ldl" >&5 -echo $ECHO_N "checking for dlopen in -ldl... $ECHO_C" >&6 -if test "${ac_cv_lib_dl_dlopen+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5 +$as_echo_n "checking for dlopen in -ldl... " >&6; } +if ${ac_cv_lib_dl_dlopen+:} false; then : + $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-ldl $LIBS" -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF +cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -/* Override any gcc2 internal prototype to avoid an error. */ +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ char dlopen (); int main () { -dlopen (); +return dlopen (); ; return 0; } _ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then +if ac_fn_c_try_link "$LINENO"; then : ac_cv_lib_dl_dlopen=yes else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_lib_dl_dlopen=no + ac_cv_lib_dl_dlopen=no fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -echo "$as_me:$LINENO: result: $ac_cv_lib_dl_dlopen" >&5 -echo "${ECHO_T}$ac_cv_lib_dl_dlopen" >&6 -if test $ac_cv_lib_dl_dlopen = yes; then +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5 +$as_echo "$ac_cv_lib_dl_dlopen" >&6; } +if test "x$ac_cv_lib_dl_dlopen" = xyes; then : lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl" else @@ -8217,452 +8693,168 @@ fi ;; *) - echo "$as_me:$LINENO: checking for shl_load" >&5 -echo $ECHO_N "checking for shl_load... $ECHO_C" >&6 -if test "${ac_cv_func_shl_load+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -/* Define shl_load to an innocuous variant, in case declares shl_load. - For example, HP-UX 11i declares gettimeofday. */ -#define shl_load innocuous_shl_load - -/* System header to define __stub macros and hopefully few prototypes, - which can conflict with char shl_load (); below. - Prefer to if __STDC__ is defined, since - exists even on freestanding compilers. */ - -#ifdef __STDC__ -# include -#else -# include -#endif - -#undef shl_load - -/* Override any gcc2 internal prototype to avoid an error. */ -#ifdef __cplusplus -extern "C" -{ -#endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ -char shl_load (); -/* The GNU C library defines this for functions which it implements - to always fail with ENOSYS. Some functions are actually named - something starting with __ and the normal name is an alias. */ -#if defined (__stub_shl_load) || defined (__stub___shl_load) -choke me -#else -char (*f) () = shl_load; -#endif -#ifdef __cplusplus -} -#endif - -int -main () -{ -return f != shl_load; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_func_shl_load=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_func_shl_load=no -fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: $ac_cv_func_shl_load" >&5 -echo "${ECHO_T}$ac_cv_func_shl_load" >&6 -if test $ac_cv_func_shl_load = yes; then + ac_fn_c_check_func "$LINENO" "shl_load" "ac_cv_func_shl_load" +if test "x$ac_cv_func_shl_load" = xyes; then : lt_cv_dlopen="shl_load" else - echo "$as_me:$LINENO: checking for shl_load in -ldld" >&5 -echo $ECHO_N "checking for shl_load in -ldld... $ECHO_C" >&6 -if test "${ac_cv_lib_dld_shl_load+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for shl_load in -ldld" >&5 +$as_echo_n "checking for shl_load in -ldld... " >&6; } +if ${ac_cv_lib_dld_shl_load+:} false; then : + $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-ldld $LIBS" -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF +cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -/* Override any gcc2 internal prototype to avoid an error. */ +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ char shl_load (); int main () { -shl_load (); +return shl_load (); ; return 0; } _ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then +if ac_fn_c_try_link "$LINENO"; then : ac_cv_lib_dld_shl_load=yes else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_lib_dld_shl_load=no + ac_cv_lib_dld_shl_load=no fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -echo "$as_me:$LINENO: result: $ac_cv_lib_dld_shl_load" >&5 -echo "${ECHO_T}$ac_cv_lib_dld_shl_load" >&6 -if test $ac_cv_lib_dld_shl_load = yes; then +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_shl_load" >&5 +$as_echo "$ac_cv_lib_dld_shl_load" >&6; } +if test "x$ac_cv_lib_dld_shl_load" = xyes; then : lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-dld" else - echo "$as_me:$LINENO: checking for dlopen" >&5 -echo $ECHO_N "checking for dlopen... $ECHO_C" >&6 -if test "${ac_cv_func_dlopen+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -/* Define dlopen to an innocuous variant, in case declares dlopen. - For example, HP-UX 11i declares gettimeofday. */ -#define dlopen innocuous_dlopen - -/* System header to define __stub macros and hopefully few prototypes, - which can conflict with char dlopen (); below. - Prefer to if __STDC__ is defined, since - exists even on freestanding compilers. */ - -#ifdef __STDC__ -# include -#else -# include -#endif - -#undef dlopen - -/* Override any gcc2 internal prototype to avoid an error. */ -#ifdef __cplusplus -extern "C" -{ -#endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ -char dlopen (); -/* The GNU C library defines this for functions which it implements - to always fail with ENOSYS. Some functions are actually named - something starting with __ and the normal name is an alias. */ -#if defined (__stub_dlopen) || defined (__stub___dlopen) -choke me -#else -char (*f) () = dlopen; -#endif -#ifdef __cplusplus -} -#endif - -int -main () -{ -return f != dlopen; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_func_dlopen=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_func_dlopen=no -fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: $ac_cv_func_dlopen" >&5 -echo "${ECHO_T}$ac_cv_func_dlopen" >&6 -if test $ac_cv_func_dlopen = yes; then + ac_fn_c_check_func "$LINENO" "dlopen" "ac_cv_func_dlopen" +if test "x$ac_cv_func_dlopen" = xyes; then : lt_cv_dlopen="dlopen" else - echo "$as_me:$LINENO: checking for dlopen in -ldl" >&5 -echo $ECHO_N "checking for dlopen in -ldl... $ECHO_C" >&6 -if test "${ac_cv_lib_dl_dlopen+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5 +$as_echo_n "checking for dlopen in -ldl... " >&6; } +if ${ac_cv_lib_dl_dlopen+:} false; then : + $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-ldl $LIBS" -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF +cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -/* Override any gcc2 internal prototype to avoid an error. */ +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ char dlopen (); int main () { -dlopen (); +return dlopen (); ; return 0; } _ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then +if ac_fn_c_try_link "$LINENO"; then : ac_cv_lib_dl_dlopen=yes else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_lib_dl_dlopen=no + ac_cv_lib_dl_dlopen=no fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -echo "$as_me:$LINENO: result: $ac_cv_lib_dl_dlopen" >&5 -echo "${ECHO_T}$ac_cv_lib_dl_dlopen" >&6 -if test $ac_cv_lib_dl_dlopen = yes; then +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5 +$as_echo "$ac_cv_lib_dl_dlopen" >&6; } +if test "x$ac_cv_lib_dl_dlopen" = xyes; then : lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl" else - echo "$as_me:$LINENO: checking for dlopen in -lsvld" >&5 -echo $ECHO_N "checking for dlopen in -lsvld... $ECHO_C" >&6 -if test "${ac_cv_lib_svld_dlopen+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -lsvld" >&5 +$as_echo_n "checking for dlopen in -lsvld... " >&6; } +if ${ac_cv_lib_svld_dlopen+:} false; then : + $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lsvld $LIBS" -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF +cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -/* Override any gcc2 internal prototype to avoid an error. */ +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ char dlopen (); int main () { -dlopen (); +return dlopen (); ; return 0; } _ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then +if ac_fn_c_try_link "$LINENO"; then : ac_cv_lib_svld_dlopen=yes else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_lib_svld_dlopen=no + ac_cv_lib_svld_dlopen=no fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -echo "$as_me:$LINENO: result: $ac_cv_lib_svld_dlopen" >&5 -echo "${ECHO_T}$ac_cv_lib_svld_dlopen" >&6 -if test $ac_cv_lib_svld_dlopen = yes; then +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_svld_dlopen" >&5 +$as_echo "$ac_cv_lib_svld_dlopen" >&6; } +if test "x$ac_cv_lib_svld_dlopen" = xyes; then : lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld" else - echo "$as_me:$LINENO: checking for dld_link in -ldld" >&5 -echo $ECHO_N "checking for dld_link in -ldld... $ECHO_C" >&6 -if test "${ac_cv_lib_dld_dld_link+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dld_link in -ldld" >&5 +$as_echo_n "checking for dld_link in -ldld... " >&6; } +if ${ac_cv_lib_dld_dld_link+:} false; then : + $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-ldld $LIBS" -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF +cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -/* Override any gcc2 internal prototype to avoid an error. */ +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ char dld_link (); int main () { -dld_link (); +return dld_link (); ; return 0; } _ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then +if ac_fn_c_try_link "$LINENO"; then : ac_cv_lib_dld_dld_link=yes else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_lib_dld_dld_link=no + ac_cv_lib_dld_dld_link=no fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -echo "$as_me:$LINENO: result: $ac_cv_lib_dld_dld_link" >&5 -echo "${ECHO_T}$ac_cv_lib_dld_dld_link" >&6 -if test $ac_cv_lib_dld_dld_link = yes; then +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_dld_link" >&5 +$as_echo "$ac_cv_lib_dld_dld_link" >&6; } +if test "x$ac_cv_lib_dld_dld_link" = xyes; then : lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-dld" fi @@ -8701,10 +8893,10 @@ fi save_LIBS="$LIBS" LIBS="$lt_cv_dlopen_libs $LIBS" - echo "$as_me:$LINENO: checking whether a program can dlopen itself" >&5 -echo $ECHO_N "checking whether a program can dlopen itself... $ECHO_C" >&6 -if test "${lt_cv_dlopen_self+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a program can dlopen itself" >&5 +$as_echo_n "checking whether a program can dlopen itself... " >&6; } +if ${lt_cv_dlopen_self+:} false; then : + $as_echo_n "(cached) " >&6 else if test "$cross_compiling" = yes; then : lt_cv_dlopen_self=cross @@ -8712,7 +8904,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <&5 + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 (eval $ac_link) 2>&5 ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && test -s conftest${ac_exeext} 2>/dev/null; then + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && test -s conftest${ac_exeext} 2>/dev/null; then (./conftest; exit; ) 2>/dev/null lt_status=$? case x$lt_status in @@ -8794,15 +8986,15 @@ rm -fr conftest* fi -echo "$as_me:$LINENO: result: $lt_cv_dlopen_self" >&5 -echo "${ECHO_T}$lt_cv_dlopen_self" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self" >&5 +$as_echo "$lt_cv_dlopen_self" >&6; } if test "x$lt_cv_dlopen_self" = xyes; then LDFLAGS="$LDFLAGS $link_static_flag" - echo "$as_me:$LINENO: checking whether a statically linked program can dlopen itself" >&5 -echo $ECHO_N "checking whether a statically linked program can dlopen itself... $ECHO_C" >&6 -if test "${lt_cv_dlopen_self_static+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a statically linked program can dlopen itself" >&5 +$as_echo_n "checking whether a statically linked program can dlopen itself... " >&6; } +if ${lt_cv_dlopen_self_static+:} false; then : + $as_echo_n "(cached) " >&6 else if test "$cross_compiling" = yes; then : lt_cv_dlopen_self_static=cross @@ -8810,7 +9002,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <&5 + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 (eval $ac_link) 2>&5 ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && test -s conftest${ac_exeext} 2>/dev/null; then + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && test -s conftest${ac_exeext} 2>/dev/null; then (./conftest; exit; ) 2>/dev/null lt_status=$? case x$lt_status in @@ -8892,8 +9084,8 @@ rm -fr conftest* fi -echo "$as_me:$LINENO: result: $lt_cv_dlopen_self_static" >&5 -echo "${ECHO_T}$lt_cv_dlopen_self_static" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self_static" >&5 +$as_echo "$lt_cv_dlopen_self_static" >&6; } fi CPPFLAGS="$save_CPPFLAGS" @@ -8915,13 +9107,13 @@ fi # Report which librarie types wil actually be built -echo "$as_me:$LINENO: checking if libtool supports shared libraries" >&5 -echo $ECHO_N "checking if libtool supports shared libraries... $ECHO_C" >&6 -echo "$as_me:$LINENO: result: $can_build_shared" >&5 -echo "${ECHO_T}$can_build_shared" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if libtool supports shared libraries" >&5 +$as_echo_n "checking if libtool supports shared libraries... " >&6; } +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $can_build_shared" >&5 +$as_echo "$can_build_shared" >&6; } -echo "$as_me:$LINENO: checking whether to build shared libraries" >&5 -echo $ECHO_N "checking whether to build shared libraries... $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build shared libraries" >&5 +$as_echo_n "checking whether to build shared libraries... " >&6; } test "$can_build_shared" = "no" && enable_shared=no # On AIX, shared libraries and static libraries use the same namespace, and @@ -8978,15 +9170,15 @@ aix4*) fi ;; esac -echo "$as_me:$LINENO: result: $enable_shared" >&5 -echo "${ECHO_T}$enable_shared" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_shared" >&5 +$as_echo "$enable_shared" >&6; } -echo "$as_me:$LINENO: checking whether to build static libraries" >&5 -echo $ECHO_N "checking whether to build static libraries... $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build static libraries" >&5 +$as_echo_n "checking whether to build static libraries... " >&6; } # Make sure either enable_shared or enable_static is yes. test "$enable_shared" = yes || enable_static=yes -echo "$as_me:$LINENO: result: $enable_static" >&5 -echo "${ECHO_T}$enable_static" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_static" >&5 +$as_echo "$enable_static" >&6; } # The else clause should only fire when bootstrapping the # libtool distribution, otherwise you forgot to ship ltmain.sh @@ -9077,8 +9269,8 @@ if test -f "$ltmain"; then cfgfile="${ofile}T" trap "$rm \"$cfgfile\"; exit 1" 1 2 15 $rm -f "$cfgfile" - { echo "$as_me:$LINENO: creating $ofile" >&5 -echo "$as_me: creating $ofile" >&6;} + { $as_echo "$as_me:${as_lineno-$LINENO}: creating $ofile" >&5 +$as_echo "$as_me: creating $ofile" >&6;} cat <<__EOF__ >> "$cfgfile" #! $SHELL @@ -9469,26 +9661,26 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu CC="$lt_save_CC" -# Check whether --with-tags or --without-tags was given. -if test "${with_tags+set}" = set; then - withval="$with_tags" - tagnames="$withval" -fi; +# Check whether --with-tags was given. +if test "${with_tags+set}" = set; then : + withval=$with_tags; tagnames="$withval" +fi + if test -f "$ltmain" && test -n "$tagnames"; then if test ! -f "${ofile}"; then - { echo "$as_me:$LINENO: WARNING: output file \`$ofile' does not exist" >&5 -echo "$as_me: WARNING: output file \`$ofile' does not exist" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: output file \`$ofile' does not exist" >&5 +$as_echo "$as_me: WARNING: output file \`$ofile' does not exist" >&2;} fi if test -z "$LTCC"; then eval "`$SHELL ${ofile} --config | grep '^LTCC='`" if test -z "$LTCC"; then - { echo "$as_me:$LINENO: WARNING: output file \`$ofile' does not look like a libtool script" >&5 -echo "$as_me: WARNING: output file \`$ofile' does not look like a libtool script" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: output file \`$ofile' does not look like a libtool script" >&5 +$as_echo "$as_me: WARNING: output file \`$ofile' does not look like a libtool script" >&2;} else - { echo "$as_me:$LINENO: WARNING: using \`LTCC=$LTCC', extracted from \`$ofile'" >&5 -echo "$as_me: WARNING: using \`LTCC=$LTCC', extracted from \`$ofile'" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using \`LTCC=$LTCC', extracted from \`$ofile'" >&5 +$as_echo "$as_me: WARNING: using \`LTCC=$LTCC', extracted from \`$ofile'" >&2;} fi fi @@ -9502,17 +9694,13 @@ echo "$as_me: WARNING: using \`LTCC=$LTCC', extracted from \`$ofile'" >&2;} # Check whether tagname contains only valid characters case `$echo "X$tagname" | $Xsed -e 's:[-_ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890,/]::g'` in "") ;; - *) { { echo "$as_me:$LINENO: error: invalid tag name: $tagname" >&5 -echo "$as_me: error: invalid tag name: $tagname" >&2;} - { (exit 1); exit 1; }; } + *) as_fn_error $? "invalid tag name: $tagname" "$LINENO" 5 ;; esac if grep "^# ### BEGIN LIBTOOL TAG CONFIG: $tagname$" < "${ofile}" > /dev/null then - { { echo "$as_me:$LINENO: error: tag name \"$tagname\" already exists" >&5 -echo "$as_me: error: tag name \"$tagname\" already exists" >&2;} - { (exit 1); exit 1; }; } + as_fn_error $? "tag name \"$tagname\" already exists" "$LINENO" 5 fi # Update the list of available tags. @@ -9522,7 +9710,7 @@ echo "$as_me: error: tag name \"$tagname\" already exists" >&2;} case $tagname in CXX) if test -n "$CXX" && test "X$CXX" != "Xno"; then - ac_ext=cc + ac_ext=cpp ac_cpp='$CXXCPP $CPPFLAGS' ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' @@ -9614,18 +9802,18 @@ if test "$GXX" = yes; then # Set up default GNU C++ configuration -# Check whether --with-gnu-ld or --without-gnu-ld was given. -if test "${with_gnu_ld+set}" = set; then - withval="$with_gnu_ld" - test "$withval" = no || with_gnu_ld=yes +# Check whether --with-gnu-ld was given. +if test "${with_gnu_ld+set}" = set; then : + withval=$with_gnu_ld; test "$withval" = no || with_gnu_ld=yes else with_gnu_ld=no -fi; +fi + ac_prog=ld if test "$GCC" = yes; then # Check if gcc -print-prog-name=ld gives a path. - echo "$as_me:$LINENO: checking for ld used by $CC" >&5 -echo $ECHO_N "checking for ld used by $CC... $ECHO_C" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld used by $CC" >&5 +$as_echo_n "checking for ld used by $CC... " >&6; } case $host in *-*-mingw*) # gcc leaves a trailing carriage return which upsets mingw @@ -9654,14 +9842,14 @@ echo $ECHO_N "checking for ld used by $CC... $ECHO_C" >&6 ;; esac elif test "$with_gnu_ld" = yes; then - echo "$as_me:$LINENO: checking for GNU ld" >&5 -echo $ECHO_N "checking for GNU ld... $ECHO_C" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5 +$as_echo_n "checking for GNU ld... " >&6; } else - echo "$as_me:$LINENO: checking for non-GNU ld" >&5 -echo $ECHO_N "checking for non-GNU ld... $ECHO_C" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5 +$as_echo_n "checking for non-GNU ld... " >&6; } fi -if test "${lt_cv_path_LD+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +if ${lt_cv_path_LD+:} false; then : + $as_echo_n "(cached) " >&6 else if test -z "$LD"; then lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR @@ -9691,19 +9879,17 @@ fi LD="$lt_cv_path_LD" if test -n "$LD"; then - echo "$as_me:$LINENO: result: $LD" >&5 -echo "${ECHO_T}$LD" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LD" >&5 +$as_echo "$LD" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } fi -test -z "$LD" && { { echo "$as_me:$LINENO: error: no acceptable ld found in \$PATH" >&5 -echo "$as_me: error: no acceptable ld found in \$PATH" >&2;} - { (exit 1); exit 1; }; } -echo "$as_me:$LINENO: checking if the linker ($LD) is GNU ld" >&5 -echo $ECHO_N "checking if the linker ($LD) is GNU ld... $ECHO_C" >&6 -if test "${lt_cv_prog_gnu_ld+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +test -z "$LD" && as_fn_error $? "no acceptable ld found in \$PATH" "$LINENO" 5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5 +$as_echo_n "checking if the linker ($LD) is GNU ld... " >&6; } +if ${lt_cv_prog_gnu_ld+:} false; then : + $as_echo_n "(cached) " >&6 else # I'd rather use --version here, but apparently some GNU ld's only accept -v. case `$LD -v 2>&1 &1 &5 -echo "${ECHO_T}$lt_cv_prog_gnu_ld" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_gnu_ld" >&5 +$as_echo "$lt_cv_prog_gnu_ld" >&6; } with_gnu_ld=$lt_cv_prog_gnu_ld @@ -9766,8 +9952,8 @@ else fi # PORTME: fill in a description of your system's C++ link characteristics -echo "$as_me:$LINENO: checking whether the $compiler linker ($LD) supports shared libraries" >&5 -echo $ECHO_N "checking whether the $compiler linker ($LD) supports shared libraries... $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&5 +$as_echo_n "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; } ld_shlibs_CXX=yes case $host_os in aix3*) @@ -9858,11 +10044,7 @@ case $host_os in # -berok will link without error, but may produce a broken library. allow_undefined_flag_CXX='-berok' # Determine the default libpath from the value encoded in an empty executable. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -9873,40 +10055,16 @@ main () return 0; } _ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then +if ac_fn_cxx_try_link "$LINENO"; then : aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; } }'` # Check for a 64-bit object if we didn't find anything. if test -z "$aix_libpath"; then aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; } }'`; fi -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi hardcode_libdir_flag_spec_CXX='${wl}-blibpath:$libdir:'"$aix_libpath" @@ -9919,11 +10077,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi archive_expsym_cmds_CXX="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols" else # Determine the default libpath from the value encoded in an empty executable. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -9934,40 +10088,16 @@ main () return 0; } _ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then +if ac_fn_cxx_try_link "$LINENO"; then : aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; } }'` # Check for a 64-bit object if we didn't find anything. if test -z "$aix_libpath"; then aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; } }'`; fi -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi hardcode_libdir_flag_spec_CXX='${wl}-blibpath:$libdir:'"$aix_libpath" @@ -10592,8 +10722,8 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi ld_shlibs_CXX=no ;; esac -echo "$as_me:$LINENO: result: $ld_shlibs_CXX" >&5 -echo "${ECHO_T}$ld_shlibs_CXX" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs_CXX" >&5 +$as_echo "$ld_shlibs_CXX" >&6; } test "$ld_shlibs_CXX" = no && can_build_shared=no GCC_CXX="$GXX" @@ -10610,11 +10740,11 @@ private: }; EOF -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 +if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 (eval $ac_compile) 2>&5 ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then # Parse the compiler output and extract the necessary # objects, libraries and library flags. @@ -10709,8 +10839,8 @@ lt_prog_compiler_wl_CXX= lt_prog_compiler_pic_CXX= lt_prog_compiler_static_CXX= -echo "$as_me:$LINENO: checking for $compiler option to produce PIC" >&5 -echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&5 +$as_echo_n "checking for $compiler option to produce PIC... " >&6; } # C++ specific cases for pic, static, wl, etc. if test "$GXX" = yes; then @@ -10961,18 +11091,18 @@ echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6 esac fi -echo "$as_me:$LINENO: result: $lt_prog_compiler_pic_CXX" >&5 -echo "${ECHO_T}$lt_prog_compiler_pic_CXX" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_prog_compiler_pic_CXX" >&5 +$as_echo "$lt_prog_compiler_pic_CXX" >&6; } # # Check to make sure the PIC flag actually works. # if test -n "$lt_prog_compiler_pic_CXX"; then -echo "$as_me:$LINENO: checking if $compiler PIC flag $lt_prog_compiler_pic_CXX works" >&5 -echo $ECHO_N "checking if $compiler PIC flag $lt_prog_compiler_pic_CXX works... $ECHO_C" >&6 -if test "${lt_prog_compiler_pic_works_CXX+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler PIC flag $lt_prog_compiler_pic_CXX works" >&5 +$as_echo_n "checking if $compiler PIC flag $lt_prog_compiler_pic_CXX works... " >&6; } +if ${lt_prog_compiler_pic_works_CXX+:} false; then : + $as_echo_n "(cached) " >&6 else lt_prog_compiler_pic_works_CXX=no ac_outfile=conftest.$ac_objext @@ -10987,11 +11117,11 @@ else -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:10990: $lt_compile\"" >&5) + (eval echo "\"\$as_me:11120: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:10994: \$? = $ac_status" >&5 + echo "$as_me:11124: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings @@ -11002,8 +11132,8 @@ else $rm conftest* fi -echo "$as_me:$LINENO: result: $lt_prog_compiler_pic_works_CXX" >&5 -echo "${ECHO_T}$lt_prog_compiler_pic_works_CXX" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_prog_compiler_pic_works_CXX" >&5 +$as_echo "$lt_prog_compiler_pic_works_CXX" >&6; } if test x"$lt_prog_compiler_pic_works_CXX" = xyes; then case $lt_prog_compiler_pic_CXX in @@ -11026,10 +11156,10 @@ case "$host_os" in ;; esac -echo "$as_me:$LINENO: checking if $compiler supports -c -o file.$ac_objext" >&5 -echo $ECHO_N "checking if $compiler supports -c -o file.$ac_objext... $ECHO_C" >&6 -if test "${lt_cv_prog_compiler_c_o_CXX+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5 +$as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; } +if ${lt_cv_prog_compiler_c_o_CXX+:} false; then : + $as_echo_n "(cached) " >&6 else lt_cv_prog_compiler_c_o_CXX=no $rm -r conftest 2>/dev/null @@ -11047,11 +11177,11 @@ else -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:11050: $lt_compile\"" >&5) + (eval echo "\"\$as_me:11180: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 - echo "$as_me:11054: \$? = $ac_status" >&5 + echo "$as_me:11184: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized @@ -11071,34 +11201,34 @@ else $rm conftest* fi -echo "$as_me:$LINENO: result: $lt_cv_prog_compiler_c_o_CXX" >&5 -echo "${ECHO_T}$lt_cv_prog_compiler_c_o_CXX" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o_CXX" >&5 +$as_echo "$lt_cv_prog_compiler_c_o_CXX" >&6; } hard_links="nottested" if test "$lt_cv_prog_compiler_c_o_CXX" = no && test "$need_locks" != no; then # do not overwrite the value of need_locks provided by the user - echo "$as_me:$LINENO: checking if we can lock with hard links" >&5 -echo $ECHO_N "checking if we can lock with hard links... $ECHO_C" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if we can lock with hard links" >&5 +$as_echo_n "checking if we can lock with hard links... " >&6; } hard_links=yes $rm conftest* ln conftest.a conftest.b 2>/dev/null && hard_links=no touch conftest.a ln conftest.a conftest.b 2>&5 || hard_links=no ln conftest.a conftest.b 2>/dev/null && hard_links=no - echo "$as_me:$LINENO: result: $hard_links" >&5 -echo "${ECHO_T}$hard_links" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $hard_links" >&5 +$as_echo "$hard_links" >&6; } if test "$hard_links" = no; then - { echo "$as_me:$LINENO: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&5 -echo "$as_me: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&5 +$as_echo "$as_me: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&2;} need_locks=warn fi else need_locks=no fi -echo "$as_me:$LINENO: checking whether the $compiler linker ($LD) supports shared libraries" >&5 -echo $ECHO_N "checking whether the $compiler linker ($LD) supports shared libraries... $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&5 +$as_echo_n "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; } export_symbols_cmds_CXX='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' case $host_os in @@ -11122,8 +11252,8 @@ echo $ECHO_N "checking whether the $compiler linker ($LD) supports shared librar ;; esac -echo "$as_me:$LINENO: result: $ld_shlibs_CXX" >&5 -echo "${ECHO_T}$ld_shlibs_CXX" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs_CXX" >&5 +$as_echo "$ld_shlibs_CXX" >&6; } test "$ld_shlibs_CXX" = no && can_build_shared=no variables_saved_for_relink="PATH $shlibpath_var $runpath_var" @@ -11148,16 +11278,16 @@ x|xyes) # Test whether the compiler implicitly links with -lc since on some # systems, -lgcc has to come before -lc. If gcc already passes -lc # to ld, don't add -lc before -lgcc. - echo "$as_me:$LINENO: checking whether -lc should be explicitly linked in" >&5 -echo $ECHO_N "checking whether -lc should be explicitly linked in... $ECHO_C" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -lc should be explicitly linked in" >&5 +$as_echo_n "checking whether -lc should be explicitly linked in... " >&6; } $rm conftest* printf "$lt_simple_compile_test_code" > conftest.$ac_ext - if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 (eval $ac_compile) 2>&5 ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } 2>conftest.err; then + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } 2>conftest.err; then soname=conftest lib=conftest libobjs=conftest.$ac_objext @@ -11170,11 +11300,11 @@ echo $ECHO_N "checking whether -lc should be explicitly linked in... $ECHO_C" >& libname=conftest lt_save_allow_undefined_flag=$allow_undefined_flag_CXX allow_undefined_flag_CXX= - if { (eval echo "$as_me:$LINENO: \"$archive_cmds_CXX 2\>\&1 \| grep \" -lc \" \>/dev/null 2\>\&1\"") >&5 + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$archive_cmds_CXX 2\>\&1 \| grep \" -lc \" \>/dev/null 2\>\&1\""; } >&5 (eval $archive_cmds_CXX 2\>\&1 \| grep \" -lc \" \>/dev/null 2\>\&1) 2>&5 ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } then archive_cmds_need_lc_CXX=no else @@ -11185,16 +11315,16 @@ echo $ECHO_N "checking whether -lc should be explicitly linked in... $ECHO_C" >& cat conftest.err 1>&5 fi $rm conftest* - echo "$as_me:$LINENO: result: $archive_cmds_need_lc_CXX" >&5 -echo "${ECHO_T}$archive_cmds_need_lc_CXX" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $archive_cmds_need_lc_CXX" >&5 +$as_echo "$archive_cmds_need_lc_CXX" >&6; } ;; esac fi ;; esac -echo "$as_me:$LINENO: checking dynamic linker characteristics" >&5 -echo $ECHO_N "checking dynamic linker characteristics... $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking dynamic linker characteristics" >&5 +$as_echo_n "checking dynamic linker characteristics... " >&6; } library_names_spec= libname_spec='lib$name' soname_spec= @@ -11733,12 +11863,12 @@ uts4*) dynamic_linker=no ;; esac -echo "$as_me:$LINENO: result: $dynamic_linker" >&5 -echo "${ECHO_T}$dynamic_linker" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $dynamic_linker" >&5 +$as_echo "$dynamic_linker" >&6; } test "$dynamic_linker" = no && can_build_shared=no -echo "$as_me:$LINENO: checking how to hardcode library paths into programs" >&5 -echo $ECHO_N "checking how to hardcode library paths into programs... $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to hardcode library paths into programs" >&5 +$as_echo_n "checking how to hardcode library paths into programs... " >&6; } hardcode_action_CXX= if test -n "$hardcode_libdir_flag_spec_CXX" || \ test -n "$runpath_var CXX" || \ @@ -11762,8 +11892,8 @@ else # directories. hardcode_action_CXX=unsupported fi -echo "$as_me:$LINENO: result: $hardcode_action_CXX" >&5 -echo "${ECHO_T}$hardcode_action_CXX" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $hardcode_action_CXX" >&5 +$as_echo "$hardcode_action_CXX" >&6; } if test "$hardcode_action_CXX" = relink; then # Fast installation is not supported @@ -11776,29 +11906,29 @@ fi striplib= old_striplib= -echo "$as_me:$LINENO: checking whether stripping libraries is possible" >&5 -echo $ECHO_N "checking whether stripping libraries is possible... $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether stripping libraries is possible" >&5 +$as_echo_n "checking whether stripping libraries is possible... " >&6; } if test -n "$STRIP" && $STRIP -V 2>&1 | grep "GNU strip" >/dev/null; then test -z "$old_striplib" && old_striplib="$STRIP --strip-debug" test -z "$striplib" && striplib="$STRIP --strip-unneeded" - echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } else # FIXME - insert some real tests, host_os isn't really good enough case $host_os in darwin*) if test -n "$STRIP" ; then striplib="$STRIP -x" - echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } fi ;; *) - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } ;; esac fi @@ -11830,70 +11960,43 @@ else darwin*) # if libdl is installed we need to link against it - echo "$as_me:$LINENO: checking for dlopen in -ldl" >&5 -echo $ECHO_N "checking for dlopen in -ldl... $ECHO_C" >&6 -if test "${ac_cv_lib_dl_dlopen+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5 +$as_echo_n "checking for dlopen in -ldl... " >&6; } +if ${ac_cv_lib_dl_dlopen+:} false; then : + $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-ldl $LIBS" -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF +cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -/* Override any gcc2 internal prototype to avoid an error. */ +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ char dlopen (); int main () { -dlopen (); +return dlopen (); ; return 0; } _ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then +if ac_fn_cxx_try_link "$LINENO"; then : ac_cv_lib_dl_dlopen=yes else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_lib_dl_dlopen=no + ac_cv_lib_dl_dlopen=no fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -echo "$as_me:$LINENO: result: $ac_cv_lib_dl_dlopen" >&5 -echo "${ECHO_T}$ac_cv_lib_dl_dlopen" >&6 -if test $ac_cv_lib_dl_dlopen = yes; then +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5 +$as_echo "$ac_cv_lib_dl_dlopen" >&6; } +if test "x$ac_cv_lib_dl_dlopen" = xyes; then : lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl" else @@ -11906,452 +12009,168 @@ fi ;; *) - echo "$as_me:$LINENO: checking for shl_load" >&5 -echo $ECHO_N "checking for shl_load... $ECHO_C" >&6 -if test "${ac_cv_func_shl_load+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -/* Define shl_load to an innocuous variant, in case declares shl_load. - For example, HP-UX 11i declares gettimeofday. */ -#define shl_load innocuous_shl_load - -/* System header to define __stub macros and hopefully few prototypes, - which can conflict with char shl_load (); below. - Prefer to if __STDC__ is defined, since - exists even on freestanding compilers. */ - -#ifdef __STDC__ -# include -#else -# include -#endif - -#undef shl_load - -/* Override any gcc2 internal prototype to avoid an error. */ -#ifdef __cplusplus -extern "C" -{ -#endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ -char shl_load (); -/* The GNU C library defines this for functions which it implements - to always fail with ENOSYS. Some functions are actually named - something starting with __ and the normal name is an alias. */ -#if defined (__stub_shl_load) || defined (__stub___shl_load) -choke me -#else -char (*f) () = shl_load; -#endif -#ifdef __cplusplus -} -#endif - -int -main () -{ -return f != shl_load; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_func_shl_load=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_func_shl_load=no -fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: $ac_cv_func_shl_load" >&5 -echo "${ECHO_T}$ac_cv_func_shl_load" >&6 -if test $ac_cv_func_shl_load = yes; then + ac_fn_cxx_check_func "$LINENO" "shl_load" "ac_cv_func_shl_load" +if test "x$ac_cv_func_shl_load" = xyes; then : lt_cv_dlopen="shl_load" else - echo "$as_me:$LINENO: checking for shl_load in -ldld" >&5 -echo $ECHO_N "checking for shl_load in -ldld... $ECHO_C" >&6 -if test "${ac_cv_lib_dld_shl_load+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for shl_load in -ldld" >&5 +$as_echo_n "checking for shl_load in -ldld... " >&6; } +if ${ac_cv_lib_dld_shl_load+:} false; then : + $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-ldld $LIBS" -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF +cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -/* Override any gcc2 internal prototype to avoid an error. */ +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ char shl_load (); int main () { -shl_load (); +return shl_load (); ; return 0; } _ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then +if ac_fn_cxx_try_link "$LINENO"; then : ac_cv_lib_dld_shl_load=yes else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_lib_dld_shl_load=no + ac_cv_lib_dld_shl_load=no fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -echo "$as_me:$LINENO: result: $ac_cv_lib_dld_shl_load" >&5 -echo "${ECHO_T}$ac_cv_lib_dld_shl_load" >&6 -if test $ac_cv_lib_dld_shl_load = yes; then +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_shl_load" >&5 +$as_echo "$ac_cv_lib_dld_shl_load" >&6; } +if test "x$ac_cv_lib_dld_shl_load" = xyes; then : lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-dld" else - echo "$as_me:$LINENO: checking for dlopen" >&5 -echo $ECHO_N "checking for dlopen... $ECHO_C" >&6 -if test "${ac_cv_func_dlopen+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -/* Define dlopen to an innocuous variant, in case declares dlopen. - For example, HP-UX 11i declares gettimeofday. */ -#define dlopen innocuous_dlopen - -/* System header to define __stub macros and hopefully few prototypes, - which can conflict with char dlopen (); below. - Prefer to if __STDC__ is defined, since - exists even on freestanding compilers. */ - -#ifdef __STDC__ -# include -#else -# include -#endif - -#undef dlopen - -/* Override any gcc2 internal prototype to avoid an error. */ -#ifdef __cplusplus -extern "C" -{ -#endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ -char dlopen (); -/* The GNU C library defines this for functions which it implements - to always fail with ENOSYS. Some functions are actually named - something starting with __ and the normal name is an alias. */ -#if defined (__stub_dlopen) || defined (__stub___dlopen) -choke me -#else -char (*f) () = dlopen; -#endif -#ifdef __cplusplus -} -#endif - -int -main () -{ -return f != dlopen; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_func_dlopen=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_func_dlopen=no -fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: $ac_cv_func_dlopen" >&5 -echo "${ECHO_T}$ac_cv_func_dlopen" >&6 -if test $ac_cv_func_dlopen = yes; then + ac_fn_cxx_check_func "$LINENO" "dlopen" "ac_cv_func_dlopen" +if test "x$ac_cv_func_dlopen" = xyes; then : lt_cv_dlopen="dlopen" else - echo "$as_me:$LINENO: checking for dlopen in -ldl" >&5 -echo $ECHO_N "checking for dlopen in -ldl... $ECHO_C" >&6 -if test "${ac_cv_lib_dl_dlopen+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5 +$as_echo_n "checking for dlopen in -ldl... " >&6; } +if ${ac_cv_lib_dl_dlopen+:} false; then : + $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-ldl $LIBS" -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF +cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -/* Override any gcc2 internal prototype to avoid an error. */ +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ char dlopen (); int main () { -dlopen (); +return dlopen (); ; return 0; } _ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then +if ac_fn_cxx_try_link "$LINENO"; then : ac_cv_lib_dl_dlopen=yes else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_lib_dl_dlopen=no + ac_cv_lib_dl_dlopen=no fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -echo "$as_me:$LINENO: result: $ac_cv_lib_dl_dlopen" >&5 -echo "${ECHO_T}$ac_cv_lib_dl_dlopen" >&6 -if test $ac_cv_lib_dl_dlopen = yes; then +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5 +$as_echo "$ac_cv_lib_dl_dlopen" >&6; } +if test "x$ac_cv_lib_dl_dlopen" = xyes; then : lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl" else - echo "$as_me:$LINENO: checking for dlopen in -lsvld" >&5 -echo $ECHO_N "checking for dlopen in -lsvld... $ECHO_C" >&6 -if test "${ac_cv_lib_svld_dlopen+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -lsvld" >&5 +$as_echo_n "checking for dlopen in -lsvld... " >&6; } +if ${ac_cv_lib_svld_dlopen+:} false; then : + $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lsvld $LIBS" -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF +cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -/* Override any gcc2 internal prototype to avoid an error. */ +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ char dlopen (); int main () { -dlopen (); +return dlopen (); ; return 0; } _ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then +if ac_fn_cxx_try_link "$LINENO"; then : ac_cv_lib_svld_dlopen=yes else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_lib_svld_dlopen=no + ac_cv_lib_svld_dlopen=no fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -echo "$as_me:$LINENO: result: $ac_cv_lib_svld_dlopen" >&5 -echo "${ECHO_T}$ac_cv_lib_svld_dlopen" >&6 -if test $ac_cv_lib_svld_dlopen = yes; then +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_svld_dlopen" >&5 +$as_echo "$ac_cv_lib_svld_dlopen" >&6; } +if test "x$ac_cv_lib_svld_dlopen" = xyes; then : lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld" else - echo "$as_me:$LINENO: checking for dld_link in -ldld" >&5 -echo $ECHO_N "checking for dld_link in -ldld... $ECHO_C" >&6 -if test "${ac_cv_lib_dld_dld_link+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dld_link in -ldld" >&5 +$as_echo_n "checking for dld_link in -ldld... " >&6; } +if ${ac_cv_lib_dld_dld_link+:} false; then : + $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-ldld $LIBS" -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF +cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -/* Override any gcc2 internal prototype to avoid an error. */ +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ char dld_link (); int main () { -dld_link (); +return dld_link (); ; return 0; } _ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then +if ac_fn_cxx_try_link "$LINENO"; then : ac_cv_lib_dld_dld_link=yes else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_lib_dld_dld_link=no + ac_cv_lib_dld_dld_link=no fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -echo "$as_me:$LINENO: result: $ac_cv_lib_dld_dld_link" >&5 -echo "${ECHO_T}$ac_cv_lib_dld_dld_link" >&6 -if test $ac_cv_lib_dld_dld_link = yes; then +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_dld_link" >&5 +$as_echo "$ac_cv_lib_dld_dld_link" >&6; } +if test "x$ac_cv_lib_dld_dld_link" = xyes; then : lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-dld" fi @@ -12390,10 +12209,10 @@ fi save_LIBS="$LIBS" LIBS="$lt_cv_dlopen_libs $LIBS" - echo "$as_me:$LINENO: checking whether a program can dlopen itself" >&5 -echo $ECHO_N "checking whether a program can dlopen itself... $ECHO_C" >&6 -if test "${lt_cv_dlopen_self+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a program can dlopen itself" >&5 +$as_echo_n "checking whether a program can dlopen itself... " >&6; } +if ${lt_cv_dlopen_self+:} false; then : + $as_echo_n "(cached) " >&6 else if test "$cross_compiling" = yes; then : lt_cv_dlopen_self=cross @@ -12401,7 +12220,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <&5 + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 (eval $ac_link) 2>&5 ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && test -s conftest${ac_exeext} 2>/dev/null; then + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && test -s conftest${ac_exeext} 2>/dev/null; then (./conftest; exit; ) 2>/dev/null lt_status=$? case x$lt_status in @@ -12483,15 +12302,15 @@ rm -fr conftest* fi -echo "$as_me:$LINENO: result: $lt_cv_dlopen_self" >&5 -echo "${ECHO_T}$lt_cv_dlopen_self" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self" >&5 +$as_echo "$lt_cv_dlopen_self" >&6; } if test "x$lt_cv_dlopen_self" = xyes; then LDFLAGS="$LDFLAGS $link_static_flag" - echo "$as_me:$LINENO: checking whether a statically linked program can dlopen itself" >&5 -echo $ECHO_N "checking whether a statically linked program can dlopen itself... $ECHO_C" >&6 -if test "${lt_cv_dlopen_self_static+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a statically linked program can dlopen itself" >&5 +$as_echo_n "checking whether a statically linked program can dlopen itself... " >&6; } +if ${lt_cv_dlopen_self_static+:} false; then : + $as_echo_n "(cached) " >&6 else if test "$cross_compiling" = yes; then : lt_cv_dlopen_self_static=cross @@ -12499,7 +12318,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <&5 + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 (eval $ac_link) 2>&5 ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && test -s conftest${ac_exeext} 2>/dev/null; then + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && test -s conftest${ac_exeext} 2>/dev/null; then (./conftest; exit; ) 2>/dev/null lt_status=$? case x$lt_status in @@ -12581,8 +12400,8 @@ rm -fr conftest* fi -echo "$as_me:$LINENO: result: $lt_cv_dlopen_self_static" >&5 -echo "${ECHO_T}$lt_cv_dlopen_self_static" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self_static" >&5 +$as_echo "$lt_cv_dlopen_self_static" >&6; } fi CPPFLAGS="$save_CPPFLAGS" @@ -13081,13 +12900,13 @@ compiler=$CC compiler_F77=$CC cc_basename=`$echo X"$compiler" | $Xsed -e 's%^.*/%%'` -echo "$as_me:$LINENO: checking if libtool supports shared libraries" >&5 -echo $ECHO_N "checking if libtool supports shared libraries... $ECHO_C" >&6 -echo "$as_me:$LINENO: result: $can_build_shared" >&5 -echo "${ECHO_T}$can_build_shared" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if libtool supports shared libraries" >&5 +$as_echo_n "checking if libtool supports shared libraries... " >&6; } +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $can_build_shared" >&5 +$as_echo "$can_build_shared" >&6; } -echo "$as_me:$LINENO: checking whether to build shared libraries" >&5 -echo $ECHO_N "checking whether to build shared libraries... $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build shared libraries" >&5 +$as_echo_n "checking whether to build shared libraries... " >&6; } test "$can_build_shared" = "no" && enable_shared=no # On AIX, shared libraries and static libraries use the same namespace, and @@ -13104,15 +12923,15 @@ aix4*) test "$enable_shared" = yes && enable_static=no ;; esac -echo "$as_me:$LINENO: result: $enable_shared" >&5 -echo "${ECHO_T}$enable_shared" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_shared" >&5 +$as_echo "$enable_shared" >&6; } -echo "$as_me:$LINENO: checking whether to build static libraries" >&5 -echo $ECHO_N "checking whether to build static libraries... $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build static libraries" >&5 +$as_echo_n "checking whether to build static libraries... " >&6; } # Make sure either enable_shared or enable_static is yes. test "$enable_shared" = yes || enable_static=yes -echo "$as_me:$LINENO: result: $enable_static" >&5 -echo "${ECHO_T}$enable_static" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_static" >&5 +$as_echo "$enable_static" >&6; } test "$ld_shlibs_F77" = no && can_build_shared=no @@ -13123,8 +12942,8 @@ lt_prog_compiler_wl_F77= lt_prog_compiler_pic_F77= lt_prog_compiler_static_F77= -echo "$as_me:$LINENO: checking for $compiler option to produce PIC" >&5 -echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&5 +$as_echo_n "checking for $compiler option to produce PIC... " >&6; } if test "$GCC" = yes; then lt_prog_compiler_wl_F77='-Wl,' @@ -13300,18 +13119,18 @@ echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6 esac fi -echo "$as_me:$LINENO: result: $lt_prog_compiler_pic_F77" >&5 -echo "${ECHO_T}$lt_prog_compiler_pic_F77" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_prog_compiler_pic_F77" >&5 +$as_echo "$lt_prog_compiler_pic_F77" >&6; } # # Check to make sure the PIC flag actually works. # if test -n "$lt_prog_compiler_pic_F77"; then -echo "$as_me:$LINENO: checking if $compiler PIC flag $lt_prog_compiler_pic_F77 works" >&5 -echo $ECHO_N "checking if $compiler PIC flag $lt_prog_compiler_pic_F77 works... $ECHO_C" >&6 -if test "${lt_prog_compiler_pic_works_F77+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler PIC flag $lt_prog_compiler_pic_F77 works" >&5 +$as_echo_n "checking if $compiler PIC flag $lt_prog_compiler_pic_F77 works... " >&6; } +if ${lt_prog_compiler_pic_works_F77+:} false; then : + $as_echo_n "(cached) " >&6 else lt_prog_compiler_pic_works_F77=no ac_outfile=conftest.$ac_objext @@ -13326,11 +13145,11 @@ else -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:13329: $lt_compile\"" >&5) + (eval echo "\"\$as_me:13148: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:13333: \$? = $ac_status" >&5 + echo "$as_me:13152: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings @@ -13341,8 +13160,8 @@ else $rm conftest* fi -echo "$as_me:$LINENO: result: $lt_prog_compiler_pic_works_F77" >&5 -echo "${ECHO_T}$lt_prog_compiler_pic_works_F77" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_prog_compiler_pic_works_F77" >&5 +$as_echo "$lt_prog_compiler_pic_works_F77" >&6; } if test x"$lt_prog_compiler_pic_works_F77" = xyes; then case $lt_prog_compiler_pic_F77 in @@ -13365,10 +13184,10 @@ case "$host_os" in ;; esac -echo "$as_me:$LINENO: checking if $compiler supports -c -o file.$ac_objext" >&5 -echo $ECHO_N "checking if $compiler supports -c -o file.$ac_objext... $ECHO_C" >&6 -if test "${lt_cv_prog_compiler_c_o_F77+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5 +$as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; } +if ${lt_cv_prog_compiler_c_o_F77+:} false; then : + $as_echo_n "(cached) " >&6 else lt_cv_prog_compiler_c_o_F77=no $rm -r conftest 2>/dev/null @@ -13386,11 +13205,11 @@ else -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:13389: $lt_compile\"" >&5) + (eval echo "\"\$as_me:13208: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 - echo "$as_me:13393: \$? = $ac_status" >&5 + echo "$as_me:13212: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized @@ -13410,34 +13229,34 @@ else $rm conftest* fi -echo "$as_me:$LINENO: result: $lt_cv_prog_compiler_c_o_F77" >&5 -echo "${ECHO_T}$lt_cv_prog_compiler_c_o_F77" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o_F77" >&5 +$as_echo "$lt_cv_prog_compiler_c_o_F77" >&6; } hard_links="nottested" if test "$lt_cv_prog_compiler_c_o_F77" = no && test "$need_locks" != no; then # do not overwrite the value of need_locks provided by the user - echo "$as_me:$LINENO: checking if we can lock with hard links" >&5 -echo $ECHO_N "checking if we can lock with hard links... $ECHO_C" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if we can lock with hard links" >&5 +$as_echo_n "checking if we can lock with hard links... " >&6; } hard_links=yes $rm conftest* ln conftest.a conftest.b 2>/dev/null && hard_links=no touch conftest.a ln conftest.a conftest.b 2>&5 || hard_links=no ln conftest.a conftest.b 2>/dev/null && hard_links=no - echo "$as_me:$LINENO: result: $hard_links" >&5 -echo "${ECHO_T}$hard_links" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $hard_links" >&5 +$as_echo "$hard_links" >&6; } if test "$hard_links" = no; then - { echo "$as_me:$LINENO: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&5 -echo "$as_me: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&5 +$as_echo "$as_me: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&2;} need_locks=warn fi else need_locks=no fi -echo "$as_me:$LINENO: checking whether the $compiler linker ($LD) supports shared libraries" >&5 -echo $ECHO_N "checking whether the $compiler linker ($LD) supports shared libraries... $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&5 +$as_echo_n "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; } runpath_var= allow_undefined_flag_F77= @@ -13753,45 +13572,21 @@ $echo "local: *; };" >> $output_objdir/$libname.ver~ # -berok will link without error, but may produce a broken library. allow_undefined_flag_F77='-berok' # Determine the default libpath from the value encoded in an empty executable. - cat >conftest.$ac_ext <<_ACEOF + cat > conftest.$ac_ext <<_ACEOF program main end _ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_f77_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then +if ac_fn_f77_try_link "$LINENO"; then : aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; } }'` # Check for a 64-bit object if we didn't find anything. if test -z "$aix_libpath"; then aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; } }'`; fi -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi hardcode_libdir_flag_spec_F77='${wl}-blibpath:$libdir:'"$aix_libpath" @@ -13803,45 +13598,21 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi archive_expsym_cmds_F77="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols" else # Determine the default libpath from the value encoded in an empty executable. - cat >conftest.$ac_ext <<_ACEOF + cat > conftest.$ac_ext <<_ACEOF program main end _ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_f77_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then +if ac_fn_f77_try_link "$LINENO"; then : aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; } }'` # Check for a 64-bit object if we didn't find anything. if test -z "$aix_libpath"; then aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; } }'`; fi -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi hardcode_libdir_flag_spec_F77='${wl}-blibpath:$libdir:'"$aix_libpath" @@ -14262,8 +14033,8 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi esac fi -echo "$as_me:$LINENO: result: $ld_shlibs_F77" >&5 -echo "${ECHO_T}$ld_shlibs_F77" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs_F77" >&5 +$as_echo "$ld_shlibs_F77" >&6; } test "$ld_shlibs_F77" = no && can_build_shared=no variables_saved_for_relink="PATH $shlibpath_var $runpath_var" @@ -14288,16 +14059,16 @@ x|xyes) # Test whether the compiler implicitly links with -lc since on some # systems, -lgcc has to come before -lc. If gcc already passes -lc # to ld, don't add -lc before -lgcc. - echo "$as_me:$LINENO: checking whether -lc should be explicitly linked in" >&5 -echo $ECHO_N "checking whether -lc should be explicitly linked in... $ECHO_C" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -lc should be explicitly linked in" >&5 +$as_echo_n "checking whether -lc should be explicitly linked in... " >&6; } $rm conftest* printf "$lt_simple_compile_test_code" > conftest.$ac_ext - if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 (eval $ac_compile) 2>&5 ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } 2>conftest.err; then + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } 2>conftest.err; then soname=conftest lib=conftest libobjs=conftest.$ac_objext @@ -14310,11 +14081,11 @@ echo $ECHO_N "checking whether -lc should be explicitly linked in... $ECHO_C" >& libname=conftest lt_save_allow_undefined_flag=$allow_undefined_flag_F77 allow_undefined_flag_F77= - if { (eval echo "$as_me:$LINENO: \"$archive_cmds_F77 2\>\&1 \| grep \" -lc \" \>/dev/null 2\>\&1\"") >&5 + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$archive_cmds_F77 2\>\&1 \| grep \" -lc \" \>/dev/null 2\>\&1\""; } >&5 (eval $archive_cmds_F77 2\>\&1 \| grep \" -lc \" \>/dev/null 2\>\&1) 2>&5 ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } then archive_cmds_need_lc_F77=no else @@ -14325,16 +14096,16 @@ echo $ECHO_N "checking whether -lc should be explicitly linked in... $ECHO_C" >& cat conftest.err 1>&5 fi $rm conftest* - echo "$as_me:$LINENO: result: $archive_cmds_need_lc_F77" >&5 -echo "${ECHO_T}$archive_cmds_need_lc_F77" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $archive_cmds_need_lc_F77" >&5 +$as_echo "$archive_cmds_need_lc_F77" >&6; } ;; esac fi ;; esac -echo "$as_me:$LINENO: checking dynamic linker characteristics" >&5 -echo $ECHO_N "checking dynamic linker characteristics... $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking dynamic linker characteristics" >&5 +$as_echo_n "checking dynamic linker characteristics... " >&6; } library_names_spec= libname_spec='lib$name' soname_spec= @@ -14873,12 +14644,12 @@ uts4*) dynamic_linker=no ;; esac -echo "$as_me:$LINENO: result: $dynamic_linker" >&5 -echo "${ECHO_T}$dynamic_linker" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $dynamic_linker" >&5 +$as_echo "$dynamic_linker" >&6; } test "$dynamic_linker" = no && can_build_shared=no -echo "$as_me:$LINENO: checking how to hardcode library paths into programs" >&5 -echo $ECHO_N "checking how to hardcode library paths into programs... $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to hardcode library paths into programs" >&5 +$as_echo_n "checking how to hardcode library paths into programs... " >&6; } hardcode_action_F77= if test -n "$hardcode_libdir_flag_spec_F77" || \ test -n "$runpath_var F77" || \ @@ -14902,8 +14673,8 @@ else # directories. hardcode_action_F77=unsupported fi -echo "$as_me:$LINENO: result: $hardcode_action_F77" >&5 -echo "${ECHO_T}$hardcode_action_F77" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $hardcode_action_F77" >&5 +$as_echo "$hardcode_action_F77" >&6; } if test "$hardcode_action_F77" = relink; then # Fast installation is not supported @@ -14916,29 +14687,29 @@ fi striplib= old_striplib= -echo "$as_me:$LINENO: checking whether stripping libraries is possible" >&5 -echo $ECHO_N "checking whether stripping libraries is possible... $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether stripping libraries is possible" >&5 +$as_echo_n "checking whether stripping libraries is possible... " >&6; } if test -n "$STRIP" && $STRIP -V 2>&1 | grep "GNU strip" >/dev/null; then test -z "$old_striplib" && old_striplib="$STRIP --strip-debug" test -z "$striplib" && striplib="$STRIP --strip-unneeded" - echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } else # FIXME - insert some real tests, host_os isn't really good enough case $host_os in darwin*) if test -n "$STRIP" ; then striplib="$STRIP -x" - echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } fi ;; *) - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } ;; esac fi @@ -15361,7 +15132,6 @@ CC="$lt_save_CC" if test -n "$GCJ" && test "X$GCJ" != "Xno"; then - # Source file extension for Java test sources. ac_ext=java @@ -15400,10 +15170,10 @@ if test "$GCC" = yes; then lt_prog_compiler_no_builtin_flag_GCJ=' -fno-builtin' -echo "$as_me:$LINENO: checking if $compiler supports -fno-rtti -fno-exceptions" >&5 -echo $ECHO_N "checking if $compiler supports -fno-rtti -fno-exceptions... $ECHO_C" >&6 -if test "${lt_cv_prog_compiler_rtti_exceptions+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -fno-rtti -fno-exceptions" >&5 +$as_echo_n "checking if $compiler supports -fno-rtti -fno-exceptions... " >&6; } +if ${lt_cv_prog_compiler_rtti_exceptions+:} false; then : + $as_echo_n "(cached) " >&6 else lt_cv_prog_compiler_rtti_exceptions=no ac_outfile=conftest.$ac_objext @@ -15418,11 +15188,11 @@ else -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:15421: $lt_compile\"" >&5) + (eval echo "\"\$as_me:15191: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:15425: \$? = $ac_status" >&5 + echo "$as_me:15195: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings @@ -15433,8 +15203,8 @@ else $rm conftest* fi -echo "$as_me:$LINENO: result: $lt_cv_prog_compiler_rtti_exceptions" >&5 -echo "${ECHO_T}$lt_cv_prog_compiler_rtti_exceptions" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_rtti_exceptions" >&5 +$as_echo "$lt_cv_prog_compiler_rtti_exceptions" >&6; } if test x"$lt_cv_prog_compiler_rtti_exceptions" = xyes; then lt_prog_compiler_no_builtin_flag_GCJ="$lt_prog_compiler_no_builtin_flag_GCJ -fno-rtti -fno-exceptions" @@ -15448,8 +15218,8 @@ lt_prog_compiler_wl_GCJ= lt_prog_compiler_pic_GCJ= lt_prog_compiler_static_GCJ= -echo "$as_me:$LINENO: checking for $compiler option to produce PIC" >&5 -echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&5 +$as_echo_n "checking for $compiler option to produce PIC... " >&6; } if test "$GCC" = yes; then lt_prog_compiler_wl_GCJ='-Wl,' @@ -15625,18 +15395,18 @@ echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6 esac fi -echo "$as_me:$LINENO: result: $lt_prog_compiler_pic_GCJ" >&5 -echo "${ECHO_T}$lt_prog_compiler_pic_GCJ" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_prog_compiler_pic_GCJ" >&5 +$as_echo "$lt_prog_compiler_pic_GCJ" >&6; } # # Check to make sure the PIC flag actually works. # if test -n "$lt_prog_compiler_pic_GCJ"; then -echo "$as_me:$LINENO: checking if $compiler PIC flag $lt_prog_compiler_pic_GCJ works" >&5 -echo $ECHO_N "checking if $compiler PIC flag $lt_prog_compiler_pic_GCJ works... $ECHO_C" >&6 -if test "${lt_prog_compiler_pic_works_GCJ+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler PIC flag $lt_prog_compiler_pic_GCJ works" >&5 +$as_echo_n "checking if $compiler PIC flag $lt_prog_compiler_pic_GCJ works... " >&6; } +if ${lt_prog_compiler_pic_works_GCJ+:} false; then : + $as_echo_n "(cached) " >&6 else lt_prog_compiler_pic_works_GCJ=no ac_outfile=conftest.$ac_objext @@ -15651,11 +15421,11 @@ else -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:15654: $lt_compile\"" >&5) + (eval echo "\"\$as_me:15424: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:15658: \$? = $ac_status" >&5 + echo "$as_me:15428: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings @@ -15666,8 +15436,8 @@ else $rm conftest* fi -echo "$as_me:$LINENO: result: $lt_prog_compiler_pic_works_GCJ" >&5 -echo "${ECHO_T}$lt_prog_compiler_pic_works_GCJ" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_prog_compiler_pic_works_GCJ" >&5 +$as_echo "$lt_prog_compiler_pic_works_GCJ" >&6; } if test x"$lt_prog_compiler_pic_works_GCJ" = xyes; then case $lt_prog_compiler_pic_GCJ in @@ -15690,10 +15460,10 @@ case "$host_os" in ;; esac -echo "$as_me:$LINENO: checking if $compiler supports -c -o file.$ac_objext" >&5 -echo $ECHO_N "checking if $compiler supports -c -o file.$ac_objext... $ECHO_C" >&6 -if test "${lt_cv_prog_compiler_c_o_GCJ+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5 +$as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; } +if ${lt_cv_prog_compiler_c_o_GCJ+:} false; then : + $as_echo_n "(cached) " >&6 else lt_cv_prog_compiler_c_o_GCJ=no $rm -r conftest 2>/dev/null @@ -15711,11 +15481,11 @@ else -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:15714: $lt_compile\"" >&5) + (eval echo "\"\$as_me:15484: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 - echo "$as_me:15718: \$? = $ac_status" >&5 + echo "$as_me:15488: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized @@ -15735,34 +15505,34 @@ else $rm conftest* fi -echo "$as_me:$LINENO: result: $lt_cv_prog_compiler_c_o_GCJ" >&5 -echo "${ECHO_T}$lt_cv_prog_compiler_c_o_GCJ" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o_GCJ" >&5 +$as_echo "$lt_cv_prog_compiler_c_o_GCJ" >&6; } hard_links="nottested" if test "$lt_cv_prog_compiler_c_o_GCJ" = no && test "$need_locks" != no; then # do not overwrite the value of need_locks provided by the user - echo "$as_me:$LINENO: checking if we can lock with hard links" >&5 -echo $ECHO_N "checking if we can lock with hard links... $ECHO_C" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if we can lock with hard links" >&5 +$as_echo_n "checking if we can lock with hard links... " >&6; } hard_links=yes $rm conftest* ln conftest.a conftest.b 2>/dev/null && hard_links=no touch conftest.a ln conftest.a conftest.b 2>&5 || hard_links=no ln conftest.a conftest.b 2>/dev/null && hard_links=no - echo "$as_me:$LINENO: result: $hard_links" >&5 -echo "${ECHO_T}$hard_links" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $hard_links" >&5 +$as_echo "$hard_links" >&6; } if test "$hard_links" = no; then - { echo "$as_me:$LINENO: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&5 -echo "$as_me: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&5 +$as_echo "$as_me: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&2;} need_locks=warn fi else need_locks=no fi -echo "$as_me:$LINENO: checking whether the $compiler linker ($LD) supports shared libraries" >&5 -echo $ECHO_N "checking whether the $compiler linker ($LD) supports shared libraries... $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&5 +$as_echo_n "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; } runpath_var= allow_undefined_flag_GCJ= @@ -16078,11 +15848,7 @@ $echo "local: *; };" >> $output_objdir/$libname.ver~ # -berok will link without error, but may produce a broken library. allow_undefined_flag_GCJ='-berok' # Determine the default libpath from the value encoded in an empty executable. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -16093,40 +15859,16 @@ main () return 0; } _ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then +if ac_fn_c_try_link "$LINENO"; then : aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; } }'` # Check for a 64-bit object if we didn't find anything. if test -z "$aix_libpath"; then aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; } }'`; fi -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi hardcode_libdir_flag_spec_GCJ='${wl}-blibpath:$libdir:'"$aix_libpath" @@ -16138,11 +15880,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi archive_expsym_cmds_GCJ="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols" else # Determine the default libpath from the value encoded in an empty executable. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -16153,40 +15891,16 @@ main () return 0; } _ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then +if ac_fn_c_try_link "$LINENO"; then : aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; } }'` # Check for a 64-bit object if we didn't find anything. if test -z "$aix_libpath"; then aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; } }'`; fi -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi hardcode_libdir_flag_spec_GCJ='${wl}-blibpath:$libdir:'"$aix_libpath" @@ -16607,8 +16321,8 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi esac fi -echo "$as_me:$LINENO: result: $ld_shlibs_GCJ" >&5 -echo "${ECHO_T}$ld_shlibs_GCJ" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs_GCJ" >&5 +$as_echo "$ld_shlibs_GCJ" >&6; } test "$ld_shlibs_GCJ" = no && can_build_shared=no variables_saved_for_relink="PATH $shlibpath_var $runpath_var" @@ -16633,16 +16347,16 @@ x|xyes) # Test whether the compiler implicitly links with -lc since on some # systems, -lgcc has to come before -lc. If gcc already passes -lc # to ld, don't add -lc before -lgcc. - echo "$as_me:$LINENO: checking whether -lc should be explicitly linked in" >&5 -echo $ECHO_N "checking whether -lc should be explicitly linked in... $ECHO_C" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -lc should be explicitly linked in" >&5 +$as_echo_n "checking whether -lc should be explicitly linked in... " >&6; } $rm conftest* printf "$lt_simple_compile_test_code" > conftest.$ac_ext - if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 (eval $ac_compile) 2>&5 ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } 2>conftest.err; then + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } 2>conftest.err; then soname=conftest lib=conftest libobjs=conftest.$ac_objext @@ -16655,11 +16369,11 @@ echo $ECHO_N "checking whether -lc should be explicitly linked in... $ECHO_C" >& libname=conftest lt_save_allow_undefined_flag=$allow_undefined_flag_GCJ allow_undefined_flag_GCJ= - if { (eval echo "$as_me:$LINENO: \"$archive_cmds_GCJ 2\>\&1 \| grep \" -lc \" \>/dev/null 2\>\&1\"") >&5 + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$archive_cmds_GCJ 2\>\&1 \| grep \" -lc \" \>/dev/null 2\>\&1\""; } >&5 (eval $archive_cmds_GCJ 2\>\&1 \| grep \" -lc \" \>/dev/null 2\>\&1) 2>&5 ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } then archive_cmds_need_lc_GCJ=no else @@ -16670,16 +16384,16 @@ echo $ECHO_N "checking whether -lc should be explicitly linked in... $ECHO_C" >& cat conftest.err 1>&5 fi $rm conftest* - echo "$as_me:$LINENO: result: $archive_cmds_need_lc_GCJ" >&5 -echo "${ECHO_T}$archive_cmds_need_lc_GCJ" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $archive_cmds_need_lc_GCJ" >&5 +$as_echo "$archive_cmds_need_lc_GCJ" >&6; } ;; esac fi ;; esac -echo "$as_me:$LINENO: checking dynamic linker characteristics" >&5 -echo $ECHO_N "checking dynamic linker characteristics... $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking dynamic linker characteristics" >&5 +$as_echo_n "checking dynamic linker characteristics... " >&6; } library_names_spec= libname_spec='lib$name' soname_spec= @@ -17218,12 +16932,12 @@ uts4*) dynamic_linker=no ;; esac -echo "$as_me:$LINENO: result: $dynamic_linker" >&5 -echo "${ECHO_T}$dynamic_linker" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $dynamic_linker" >&5 +$as_echo "$dynamic_linker" >&6; } test "$dynamic_linker" = no && can_build_shared=no -echo "$as_me:$LINENO: checking how to hardcode library paths into programs" >&5 -echo $ECHO_N "checking how to hardcode library paths into programs... $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to hardcode library paths into programs" >&5 +$as_echo_n "checking how to hardcode library paths into programs... " >&6; } hardcode_action_GCJ= if test -n "$hardcode_libdir_flag_spec_GCJ" || \ test -n "$runpath_var GCJ" || \ @@ -17247,8 +16961,8 @@ else # directories. hardcode_action_GCJ=unsupported fi -echo "$as_me:$LINENO: result: $hardcode_action_GCJ" >&5 -echo "${ECHO_T}$hardcode_action_GCJ" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $hardcode_action_GCJ" >&5 +$as_echo "$hardcode_action_GCJ" >&6; } if test "$hardcode_action_GCJ" = relink; then # Fast installation is not supported @@ -17261,29 +16975,29 @@ fi striplib= old_striplib= -echo "$as_me:$LINENO: checking whether stripping libraries is possible" >&5 -echo $ECHO_N "checking whether stripping libraries is possible... $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether stripping libraries is possible" >&5 +$as_echo_n "checking whether stripping libraries is possible... " >&6; } if test -n "$STRIP" && $STRIP -V 2>&1 | grep "GNU strip" >/dev/null; then test -z "$old_striplib" && old_striplib="$STRIP --strip-debug" test -z "$striplib" && striplib="$STRIP --strip-unneeded" - echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } else # FIXME - insert some real tests, host_os isn't really good enough case $host_os in darwin*) if test -n "$STRIP" ; then striplib="$STRIP -x" - echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } fi ;; *) - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } ;; esac fi @@ -17310,533 +17024,222 @@ else cygwin*) lt_cv_dlopen="dlopen" - lt_cv_dlopen_libs= - ;; - - darwin*) - # if libdl is installed we need to link against it - echo "$as_me:$LINENO: checking for dlopen in -ldl" >&5 -echo $ECHO_N "checking for dlopen in -ldl... $ECHO_C" >&6 -if test "${ac_cv_lib_dl_dlopen+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-ldl $LIBS" -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -/* Override any gcc2 internal prototype to avoid an error. */ -#ifdef __cplusplus -extern "C" -#endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ -char dlopen (); -int -main () -{ -dlopen (); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_lib_dl_dlopen=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_lib_dl_dlopen=no -fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -echo "$as_me:$LINENO: result: $ac_cv_lib_dl_dlopen" >&5 -echo "${ECHO_T}$ac_cv_lib_dl_dlopen" >&6 -if test $ac_cv_lib_dl_dlopen = yes; then - lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl" -else - - lt_cv_dlopen="dyld" - lt_cv_dlopen_libs= - lt_cv_dlopen_self=yes - -fi - - ;; - - *) - echo "$as_me:$LINENO: checking for shl_load" >&5 -echo $ECHO_N "checking for shl_load... $ECHO_C" >&6 -if test "${ac_cv_func_shl_load+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -/* Define shl_load to an innocuous variant, in case declares shl_load. - For example, HP-UX 11i declares gettimeofday. */ -#define shl_load innocuous_shl_load - -/* System header to define __stub macros and hopefully few prototypes, - which can conflict with char shl_load (); below. - Prefer to if __STDC__ is defined, since - exists even on freestanding compilers. */ - -#ifdef __STDC__ -# include -#else -# include -#endif + lt_cv_dlopen_libs= + ;; -#undef shl_load + darwin*) + # if libdl is installed we need to link against it + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5 +$as_echo_n "checking for dlopen in -ldl... " >&6; } +if ${ac_cv_lib_dl_dlopen+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-ldl $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ -/* Override any gcc2 internal prototype to avoid an error. */ -#ifdef __cplusplus -extern "C" -{ -#endif -/* We use char because int might match the return type of a gcc2 +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC builtin and then its argument prototype would still apply. */ -char shl_load (); -/* The GNU C library defines this for functions which it implements - to always fail with ENOSYS. Some functions are actually named - something starting with __ and the normal name is an alias. */ -#if defined (__stub_shl_load) || defined (__stub___shl_load) -choke me -#else -char (*f) () = shl_load; -#endif #ifdef __cplusplus -} +extern "C" #endif - +char dlopen (); int main () { -return f != shl_load; +return dlopen (); ; return 0; } _ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_func_shl_load=yes +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_dl_dlopen=yes else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_func_shl_load=no + ac_cv_lib_dl_dlopen=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5 +$as_echo "$ac_cv_lib_dl_dlopen" >&6; } +if test "x$ac_cv_lib_dl_dlopen" = xyes; then : + lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl" +else + + lt_cv_dlopen="dyld" + lt_cv_dlopen_libs= + lt_cv_dlopen_self=yes + fi -echo "$as_me:$LINENO: result: $ac_cv_func_shl_load" >&5 -echo "${ECHO_T}$ac_cv_func_shl_load" >&6 -if test $ac_cv_func_shl_load = yes; then + + ;; + + *) + ac_fn_c_check_func "$LINENO" "shl_load" "ac_cv_func_shl_load" +if test "x$ac_cv_func_shl_load" = xyes; then : lt_cv_dlopen="shl_load" else - echo "$as_me:$LINENO: checking for shl_load in -ldld" >&5 -echo $ECHO_N "checking for shl_load in -ldld... $ECHO_C" >&6 -if test "${ac_cv_lib_dld_shl_load+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for shl_load in -ldld" >&5 +$as_echo_n "checking for shl_load in -ldld... " >&6; } +if ${ac_cv_lib_dld_shl_load+:} false; then : + $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-ldld $LIBS" -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF +cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -/* Override any gcc2 internal prototype to avoid an error. */ +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ char shl_load (); int main () { -shl_load (); +return shl_load (); ; return 0; } _ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then +if ac_fn_c_try_link "$LINENO"; then : ac_cv_lib_dld_shl_load=yes else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_lib_dld_shl_load=no + ac_cv_lib_dld_shl_load=no fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -echo "$as_me:$LINENO: result: $ac_cv_lib_dld_shl_load" >&5 -echo "${ECHO_T}$ac_cv_lib_dld_shl_load" >&6 -if test $ac_cv_lib_dld_shl_load = yes; then +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_shl_load" >&5 +$as_echo "$ac_cv_lib_dld_shl_load" >&6; } +if test "x$ac_cv_lib_dld_shl_load" = xyes; then : lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-dld" else - echo "$as_me:$LINENO: checking for dlopen" >&5 -echo $ECHO_N "checking for dlopen... $ECHO_C" >&6 -if test "${ac_cv_func_dlopen+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -/* Define dlopen to an innocuous variant, in case declares dlopen. - For example, HP-UX 11i declares gettimeofday. */ -#define dlopen innocuous_dlopen - -/* System header to define __stub macros and hopefully few prototypes, - which can conflict with char dlopen (); below. - Prefer to if __STDC__ is defined, since - exists even on freestanding compilers. */ - -#ifdef __STDC__ -# include -#else -# include -#endif - -#undef dlopen - -/* Override any gcc2 internal prototype to avoid an error. */ -#ifdef __cplusplus -extern "C" -{ -#endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ -char dlopen (); -/* The GNU C library defines this for functions which it implements - to always fail with ENOSYS. Some functions are actually named - something starting with __ and the normal name is an alias. */ -#if defined (__stub_dlopen) || defined (__stub___dlopen) -choke me -#else -char (*f) () = dlopen; -#endif -#ifdef __cplusplus -} -#endif - -int -main () -{ -return f != dlopen; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_func_dlopen=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_func_dlopen=no -fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: $ac_cv_func_dlopen" >&5 -echo "${ECHO_T}$ac_cv_func_dlopen" >&6 -if test $ac_cv_func_dlopen = yes; then + ac_fn_c_check_func "$LINENO" "dlopen" "ac_cv_func_dlopen" +if test "x$ac_cv_func_dlopen" = xyes; then : lt_cv_dlopen="dlopen" else - echo "$as_me:$LINENO: checking for dlopen in -ldl" >&5 -echo $ECHO_N "checking for dlopen in -ldl... $ECHO_C" >&6 -if test "${ac_cv_lib_dl_dlopen+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5 +$as_echo_n "checking for dlopen in -ldl... " >&6; } +if ${ac_cv_lib_dl_dlopen+:} false; then : + $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-ldl $LIBS" -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF +cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -/* Override any gcc2 internal prototype to avoid an error. */ +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ char dlopen (); int main () { -dlopen (); +return dlopen (); ; return 0; } _ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then +if ac_fn_c_try_link "$LINENO"; then : ac_cv_lib_dl_dlopen=yes else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_lib_dl_dlopen=no + ac_cv_lib_dl_dlopen=no fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -echo "$as_me:$LINENO: result: $ac_cv_lib_dl_dlopen" >&5 -echo "${ECHO_T}$ac_cv_lib_dl_dlopen" >&6 -if test $ac_cv_lib_dl_dlopen = yes; then +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5 +$as_echo "$ac_cv_lib_dl_dlopen" >&6; } +if test "x$ac_cv_lib_dl_dlopen" = xyes; then : lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl" else - echo "$as_me:$LINENO: checking for dlopen in -lsvld" >&5 -echo $ECHO_N "checking for dlopen in -lsvld... $ECHO_C" >&6 -if test "${ac_cv_lib_svld_dlopen+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -lsvld" >&5 +$as_echo_n "checking for dlopen in -lsvld... " >&6; } +if ${ac_cv_lib_svld_dlopen+:} false; then : + $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lsvld $LIBS" -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF +cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -/* Override any gcc2 internal prototype to avoid an error. */ +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ char dlopen (); int main () { -dlopen (); +return dlopen (); ; return 0; } _ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then +if ac_fn_c_try_link "$LINENO"; then : ac_cv_lib_svld_dlopen=yes else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_lib_svld_dlopen=no + ac_cv_lib_svld_dlopen=no fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -echo "$as_me:$LINENO: result: $ac_cv_lib_svld_dlopen" >&5 -echo "${ECHO_T}$ac_cv_lib_svld_dlopen" >&6 -if test $ac_cv_lib_svld_dlopen = yes; then +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_svld_dlopen" >&5 +$as_echo "$ac_cv_lib_svld_dlopen" >&6; } +if test "x$ac_cv_lib_svld_dlopen" = xyes; then : lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld" else - echo "$as_me:$LINENO: checking for dld_link in -ldld" >&5 -echo $ECHO_N "checking for dld_link in -ldld... $ECHO_C" >&6 -if test "${ac_cv_lib_dld_dld_link+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dld_link in -ldld" >&5 +$as_echo_n "checking for dld_link in -ldld... " >&6; } +if ${ac_cv_lib_dld_dld_link+:} false; then : + $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-ldld $LIBS" -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF +cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -/* Override any gcc2 internal prototype to avoid an error. */ +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ char dld_link (); int main () { -dld_link (); +return dld_link (); ; return 0; } _ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then +if ac_fn_c_try_link "$LINENO"; then : ac_cv_lib_dld_dld_link=yes else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_lib_dld_dld_link=no + ac_cv_lib_dld_dld_link=no fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -echo "$as_me:$LINENO: result: $ac_cv_lib_dld_dld_link" >&5 -echo "${ECHO_T}$ac_cv_lib_dld_dld_link" >&6 -if test $ac_cv_lib_dld_dld_link = yes; then +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_dld_link" >&5 +$as_echo "$ac_cv_lib_dld_dld_link" >&6; } +if test "x$ac_cv_lib_dld_dld_link" = xyes; then : lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-dld" fi @@ -17875,10 +17278,10 @@ fi save_LIBS="$LIBS" LIBS="$lt_cv_dlopen_libs $LIBS" - echo "$as_me:$LINENO: checking whether a program can dlopen itself" >&5 -echo $ECHO_N "checking whether a program can dlopen itself... $ECHO_C" >&6 -if test "${lt_cv_dlopen_self+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a program can dlopen itself" >&5 +$as_echo_n "checking whether a program can dlopen itself... " >&6; } +if ${lt_cv_dlopen_self+:} false; then : + $as_echo_n "(cached) " >&6 else if test "$cross_compiling" = yes; then : lt_cv_dlopen_self=cross @@ -17886,7 +17289,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <&5 + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 (eval $ac_link) 2>&5 ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && test -s conftest${ac_exeext} 2>/dev/null; then + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && test -s conftest${ac_exeext} 2>/dev/null; then (./conftest; exit; ) 2>/dev/null lt_status=$? case x$lt_status in @@ -17968,15 +17371,15 @@ rm -fr conftest* fi -echo "$as_me:$LINENO: result: $lt_cv_dlopen_self" >&5 -echo "${ECHO_T}$lt_cv_dlopen_self" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self" >&5 +$as_echo "$lt_cv_dlopen_self" >&6; } if test "x$lt_cv_dlopen_self" = xyes; then LDFLAGS="$LDFLAGS $link_static_flag" - echo "$as_me:$LINENO: checking whether a statically linked program can dlopen itself" >&5 -echo $ECHO_N "checking whether a statically linked program can dlopen itself... $ECHO_C" >&6 -if test "${lt_cv_dlopen_self_static+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a statically linked program can dlopen itself" >&5 +$as_echo_n "checking whether a statically linked program can dlopen itself... " >&6; } +if ${lt_cv_dlopen_self_static+:} false; then : + $as_echo_n "(cached) " >&6 else if test "$cross_compiling" = yes; then : lt_cv_dlopen_self_static=cross @@ -17984,7 +17387,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <&5 + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 (eval $ac_link) 2>&5 ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && test -s conftest${ac_exeext} 2>/dev/null; then + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && test -s conftest${ac_exeext} 2>/dev/null; then (./conftest; exit; ) 2>/dev/null lt_status=$? case x$lt_status in @@ -18066,8 +17469,8 @@ rm -fr conftest* fi -echo "$as_me:$LINENO: result: $lt_cv_dlopen_self_static" >&5 -echo "${ECHO_T}$lt_cv_dlopen_self_static" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self_static" >&5 +$as_echo "$lt_cv_dlopen_self_static" >&6; } fi CPPFLAGS="$save_CPPFLAGS" @@ -18503,7 +17906,6 @@ CC="$lt_save_CC" RC) - # Source file extension for RC test sources. ac_ext=rc @@ -18943,9 +18345,7 @@ CC="$lt_save_CC" ;; *) - { { echo "$as_me:$LINENO: error: Unsupported tag name: $tagname" >&5 -echo "$as_me: error: Unsupported tag name: $tagname" >&2;} - { (exit 1); exit 1; }; } + as_fn_error $? "Unsupported tag name: $tagname" "$LINENO" 5 ;; esac @@ -18963,9 +18363,7 @@ echo "$as_me: error: Unsupported tag name: $tagname" >&2;} chmod +x "$ofile" else rm -f "${ofile}T" - { { echo "$as_me:$LINENO: error: unable to update list of available tagged configurations." >&5 -echo "$as_me: error: unable to update list of available tagged configurations." >&2;} - { (exit 1); exit 1; }; } + as_fn_error $? "unable to update list of available tagged configurations." "$LINENO" 5 fi fi @@ -19053,16 +18451,12 @@ do done -echo "$as_me:$LINENO: checking for ANSI C header files" >&5 -echo $ECHO_N "checking for ANSI C header files... $ECHO_C" >&6 -if test "${ac_cv_header_stdc+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5 +$as_echo_n "checking for ANSI C header files... " >&6; } +if ${ac_cv_header_stdc+:} false; then : + $as_echo_n "(cached) " >&6 else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include @@ -19077,50 +18471,23 @@ main () return 0; } _ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then +if ac_fn_c_try_compile "$LINENO"; then : ac_cv_header_stdc=yes else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_header_stdc=no + ac_cv_header_stdc=no fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext if test $ac_cv_header_stdc = yes; then # SunOS 4.x string.h does not declare mem*, contrary to ANSI. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "memchr" >/dev/null 2>&1; then - : + $EGREP "memchr" >/dev/null 2>&1; then : + else ac_cv_header_stdc=no fi @@ -19130,18 +18497,14 @@ fi if test $ac_cv_header_stdc = yes; then # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "free" >/dev/null 2>&1; then - : + $EGREP "free" >/dev/null 2>&1; then : + else ac_cv_header_stdc=no fi @@ -19151,16 +18514,13 @@ fi if test $ac_cv_header_stdc = yes; then # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi. - if test "$cross_compiling" = yes; then + if test "$cross_compiling" = yes; then : : else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include +#include #if ((' ' & 0x0FF) == 0x020) # define ISLOWER(c) ('a' <= (c) && (c) <= 'z') # define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) @@ -19180,360 +18540,64 @@ main () for (i = 0; i < 256; i++) if (XOR (islower (i), ISLOWER (i)) || toupper (i) != TOUPPER (i)) - exit(2); - exit (0); + return 2; + return 0; } -_ACEOF -rm -f conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - : -else - echo "$as_me: program exited with status $ac_status" >&5 -echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -( exit $ac_status ) -ac_cv_header_stdc=no -fi -rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -fi -fi -fi -echo "$as_me:$LINENO: result: $ac_cv_header_stdc" >&5 -echo "${ECHO_T}$ac_cv_header_stdc" >&6 -if test $ac_cv_header_stdc = yes; then - -cat >>confdefs.h <<\_ACEOF -#define STDC_HEADERS 1 -_ACEOF - -fi - - - -for ac_header in assert.h unistd.h -do -as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 -else - # Is the header compilable? -echo "$as_me:$LINENO: checking $ac_header usability" >&5 -echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -#include <$ac_header> -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_header_compiler=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_header_compiler=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 -echo "${ECHO_T}$ac_header_compiler" >&6 - -# Is the header present? -echo "$as_me:$LINENO: checking $ac_header presence" >&5 -echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include <$ac_header> -_ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then - ac_header_preproc=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_header_preproc=no -fi -rm -f conftest.err conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 -echo "${ECHO_T}$ac_header_preproc" >&6 - -# So? What about this header? -case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in - yes:no: ) - { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 -echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} - ac_header_preproc=yes - ;; - no:yes:* ) - { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 -echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 -echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 -echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 -echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 -echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} - ( - cat <<\_ASBOX -## ----------------------------------- ## -## Report this to support@underbit.com ## -## ----------------------------------- ## -_ASBOX - ) | - sed "s/^/$as_me: WARNING: /" >&2 - ;; -esac -echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - eval "$as_ac_Header=\$ac_header_preproc" -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 - -fi -if test `eval echo '${'$as_ac_Header'}'` = yes; then - cat >>confdefs.h <<_ACEOF -#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 -_ACEOF - -fi - -done - - -if test "${ac_cv_header_zlib_h+set}" = set; then - echo "$as_me:$LINENO: checking for zlib.h" >&5 -echo $ECHO_N "checking for zlib.h... $ECHO_C" >&6 -if test "${ac_cv_header_zlib_h+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -fi -echo "$as_me:$LINENO: result: $ac_cv_header_zlib_h" >&5 -echo "${ECHO_T}$ac_cv_header_zlib_h" >&6 -else - # Is the header compilable? -echo "$as_me:$LINENO: checking zlib.h usability" >&5 -echo $ECHO_N "checking zlib.h usability... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -#include -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_header_compiler=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_header_compiler=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 -echo "${ECHO_T}$ac_header_compiler" >&6 - -# Is the header present? -echo "$as_me:$LINENO: checking zlib.h presence" >&5 -echo $ECHO_N "checking zlib.h presence... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -_ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then - ac_header_preproc=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_header_preproc=no -fi -rm -f conftest.err conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 -echo "${ECHO_T}$ac_header_preproc" >&6 - -# So? What about this header? -case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in - yes:no: ) - { echo "$as_me:$LINENO: WARNING: zlib.h: accepted by the compiler, rejected by the preprocessor!" >&5 -echo "$as_me: WARNING: zlib.h: accepted by the compiler, rejected by the preprocessor!" >&2;} - { echo "$as_me:$LINENO: WARNING: zlib.h: proceeding with the compiler's result" >&5 -echo "$as_me: WARNING: zlib.h: proceeding with the compiler's result" >&2;} - ac_header_preproc=yes - ;; - no:yes:* ) - { echo "$as_me:$LINENO: WARNING: zlib.h: present but cannot be compiled" >&5 -echo "$as_me: WARNING: zlib.h: present but cannot be compiled" >&2;} - { echo "$as_me:$LINENO: WARNING: zlib.h: check for missing prerequisite headers?" >&5 -echo "$as_me: WARNING: zlib.h: check for missing prerequisite headers?" >&2;} - { echo "$as_me:$LINENO: WARNING: zlib.h: see the Autoconf documentation" >&5 -echo "$as_me: WARNING: zlib.h: see the Autoconf documentation" >&2;} - { echo "$as_me:$LINENO: WARNING: zlib.h: section \"Present But Cannot Be Compiled\"" >&5 -echo "$as_me: WARNING: zlib.h: section \"Present But Cannot Be Compiled\"" >&2;} - { echo "$as_me:$LINENO: WARNING: zlib.h: proceeding with the preprocessor's result" >&5 -echo "$as_me: WARNING: zlib.h: proceeding with the preprocessor's result" >&2;} - { echo "$as_me:$LINENO: WARNING: zlib.h: in the future, the compiler will take precedence" >&5 -echo "$as_me: WARNING: zlib.h: in the future, the compiler will take precedence" >&2;} - ( - cat <<\_ASBOX -## ----------------------------------- ## -## Report this to support@underbit.com ## -## ----------------------------------- ## -_ASBOX - ) | - sed "s/^/$as_me: WARNING: /" >&2 - ;; -esac -echo "$as_me:$LINENO: checking for zlib.h" >&5 -echo $ECHO_N "checking for zlib.h... $ECHO_C" >&6 -if test "${ac_cv_header_zlib_h+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + else - ac_cv_header_zlib_h=$ac_header_preproc + ac_cv_header_stdc=no +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext fi -echo "$as_me:$LINENO: result: $ac_cv_header_zlib_h" >&5 -echo "${ECHO_T}$ac_cv_header_zlib_h" >&6 fi -if test $ac_cv_header_zlib_h = yes; then - : +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5 +$as_echo "$ac_cv_header_stdc" >&6; } +if test $ac_cv_header_stdc = yes; then + +$as_echo "#define STDC_HEADERS 1" >>confdefs.h + +fi + +for ac_header in assert.h unistd.h +do : + as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` +ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default" +if eval test \"x\$"$as_ac_Header"\" = x"yes"; then : + cat >>confdefs.h <<_ACEOF +#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 +_ACEOF + +fi + +done + + +ac_fn_c_check_header_mongrel "$LINENO" "zlib.h" "ac_cv_header_zlib_h" "$ac_includes_default" +if test "x$ac_cv_header_zlib_h" = xyes; then : + else - { { echo "$as_me:$LINENO: error: zlib.h was not found -*** You must first install zlib (libz) before you can build this package. -*** If zlib is already installed, you may need to use the CPPFLAGS -*** environment variable to specify its installed location, e.g. -I." >&5 -echo "$as_me: error: zlib.h was not found + as_fn_error $? "zlib.h was not found *** You must first install zlib (libz) before you can build this package. *** If zlib is already installed, you may need to use the CPPFLAGS -*** environment variable to specify its installed location, e.g. -I." >&2;} - { (exit 1); exit 1; }; } +*** environment variable to specify its installed location, e.g. -I." "$LINENO" 5 fi -echo "$as_me:$LINENO: checking for an ANSI C-conforming const" >&5 -echo $ECHO_N "checking for an ANSI C-conforming const... $ECHO_C" >&6 -if test "${ac_cv_c_const+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for an ANSI C-conforming const" >&5 +$as_echo_n "checking for an ANSI C-conforming const... " >&6; } +if ${ac_cv_c_const+:} false; then : + $as_echo_n "(cached) " >&6 else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -19543,10 +18607,10 @@ main () #ifndef __cplusplus /* Ultrix mips cc rejects this. */ typedef int charset[2]; - const charset x; + const charset cs; /* SunOS 4.1.1 cc rejects this. */ - char const *const *ccp; - char **p; + char const *const *pcpcc; + char **ppc; /* NEC SVR4.0.2 mips cc rejects this. */ struct point {int x, y;}; static struct point const zero = {0,0}; @@ -19555,16 +18619,17 @@ main () an arm of an if-expression whose if-part is not a constant expression */ const char *g = "string"; - ccp = &g + (g ? g-g : 0); + pcpcc = &g + (g ? g-g : 0); /* HPUX 7.0 cc rejects these. */ - ++ccp; - p = (char**) ccp; - ccp = (char const *const *) p; + ++pcpcc; + ppc = (char**) pcpcc; + pcpcc = (char const *const *) ppc; { /* SCO 3.2v4 cc rejects this. */ char *t; char const *s = 0 ? (char *) 0 : (char const *) 0; *t++ = 0; + if (s) return 0; } { /* Someone thinks the Sun supposedly-ANSI compiler will reject this. */ int x[] = {25, 17}; @@ -19583,65 +18648,38 @@ main () } { /* ULTRIX-32 V3.1 (Rev 9) vcc rejects this */ const int foo = 10; + if (!foo) return 0; } + return !cs[0] && !zero.x; #endif ; return 0; } _ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then +if ac_fn_c_try_compile "$LINENO"; then : ac_cv_c_const=yes else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_c_const=no + ac_cv_c_const=no fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -echo "$as_me:$LINENO: result: $ac_cv_c_const" >&5 -echo "${ECHO_T}$ac_cv_c_const" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_const" >&5 +$as_echo "$ac_cv_c_const" >&6; } if test $ac_cv_c_const = no; then -cat >>confdefs.h <<\_ACEOF -#define const -_ACEOF +$as_echo "#define const /**/" >>confdefs.h fi -echo "$as_me:$LINENO: checking for inline" >&5 -echo $ECHO_N "checking for inline... $ECHO_C" >&6 -if test "${ac_cv_c_inline+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for inline" >&5 +$as_echo_n "checking for inline... " >&6; } +if ${ac_cv_c_inline+:} false; then : + $as_echo_n "(cached) " >&6 else ac_cv_c_inline=no for ac_kw in inline __inline__ __inline; do - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #ifndef __cplusplus typedef int foo_t; @@ -19650,40 +18688,16 @@ $ac_kw foo_t foo () {return 0; } #endif _ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_c_inline=$ac_kw; break -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - +if ac_fn_c_try_compile "$LINENO"; then : + ac_cv_c_inline=$ac_kw fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + test "$ac_cv_c_inline" != no && break done fi -echo "$as_me:$LINENO: result: $ac_cv_c_inline" >&5 -echo "${ECHO_T}$ac_cv_c_inline" >&6 - +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_inline" >&5 +$as_echo "$ac_cv_c_inline" >&6; } case $ac_cv_c_inline in inline | yes) ;; @@ -19702,173 +18716,55 @@ esac - for ac_func in ftruncate -do -as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh` -echo "$as_me:$LINENO: checking for $ac_func" >&5 -echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6 -if eval "test \"\${$as_ac_var+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -/* Define $ac_func to an innocuous variant, in case declares $ac_func. - For example, HP-UX 11i declares gettimeofday. */ -#define $ac_func innocuous_$ac_func - -/* System header to define __stub macros and hopefully few prototypes, - which can conflict with char $ac_func (); below. - Prefer to if __STDC__ is defined, since - exists even on freestanding compilers. */ - -#ifdef __STDC__ -# include -#else -# include -#endif - -#undef $ac_func - -/* Override any gcc2 internal prototype to avoid an error. */ -#ifdef __cplusplus -extern "C" -{ -#endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ -char $ac_func (); -/* The GNU C library defines this for functions which it implements - to always fail with ENOSYS. Some functions are actually named - something starting with __ and the normal name is an alias. */ -#if defined (__stub_$ac_func) || defined (__stub___$ac_func) -choke me -#else -char (*f) () = $ac_func; -#endif -#ifdef __cplusplus -} -#endif - -int -main () -{ -return f != $ac_func; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - eval "$as_ac_var=yes" -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -eval "$as_ac_var=no" -fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6 -if test `eval echo '${'$as_ac_var'}'` = yes; then +do : + ac_fn_c_check_func "$LINENO" "ftruncate" "ac_cv_func_ftruncate" +if test "x$ac_cv_func_ftruncate" = xyes; then : cat >>confdefs.h <<_ACEOF -#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1 +#define HAVE_FTRUNCATE 1 _ACEOF fi done - -echo "$as_me:$LINENO: checking for compress2 in -lz" >&5 -echo $ECHO_N "checking for compress2 in -lz... $ECHO_C" >&6 -if test "${ac_cv_lib_z_compress2+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for compress2 in -lz" >&5 +$as_echo_n "checking for compress2 in -lz... " >&6; } +if ${ac_cv_lib_z_compress2+:} false; then : + $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lz $LIBS" -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF +cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -/* Override any gcc2 internal prototype to avoid an error. */ +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ char compress2 (); int main () { -compress2 (); +return compress2 (); ; return 0; } _ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then +if ac_fn_c_try_link "$LINENO"; then : ac_cv_lib_z_compress2=yes else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_lib_z_compress2=no + ac_cv_lib_z_compress2=no fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -echo "$as_me:$LINENO: result: $ac_cv_lib_z_compress2" >&5 -echo "${ECHO_T}$ac_cv_lib_z_compress2" >&6 -if test $ac_cv_lib_z_compress2 = yes; then +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_z_compress2" >&5 +$as_echo "$ac_cv_lib_z_compress2" >&6; } +if test "x$ac_cv_lib_z_compress2" = xyes; then : cat >>confdefs.h <<_ACEOF #define HAVE_LIBZ 1 _ACEOF @@ -19877,15 +18773,10 @@ _ACEOF else - { { echo "$as_me:$LINENO: error: libz was not found -*** You must first install zlib (libz) before you can build this package. -*** If zlib is already installed, you may need to use the LDFLAGS -*** environment variable to specify its installed location, e.g. -L." >&5 -echo "$as_me: error: libz was not found + as_fn_error $? "libz was not found *** You must first install zlib (libz) before you can build this package. *** If zlib is already installed, you may need to use the LDFLAGS -*** environment variable to specify its installed location, e.g. -L." >&2;} - { (exit 1); exit 1; }; } +*** environment variable to specify its installed location, e.g. -L." "$LINENO" 5 fi @@ -19909,84 +18800,108 @@ _ACEOF # The following way of writing the cache mishandles newlines in values, # but we know of no workaround that is simple, portable, and efficient. -# So, don't put newlines in cache variables' values. +# So, we kill variables containing newlines. # Ultrix sh set writes to stderr and can't be redirected directly, # and sets the high bit in the cache file unless we assign to the vars. -{ +( + for ac_var in `(set) 2>&1 | sed -n 's/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'`; do + eval ac_val=\$$ac_var + case $ac_val in #( + *${as_nl}*) + case $ac_var in #( + *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5 +$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;; + esac + case $ac_var in #( + _ | IFS | as_nl) ;; #( + BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #( + *) { eval $ac_var=; unset $ac_var;} ;; + esac ;; + esac + done + (set) 2>&1 | - case `(ac_space=' '; set | grep ac_space) 2>&1` in - *ac_space=\ *) - # `set' does not quote correctly, so add quotes (double-quote - # substitution turns \\\\ into \\, and sed turns \\ into \). + case $as_nl`(ac_space=' '; set) 2>&1` in #( + *${as_nl}ac_space=\ *) + # `set' does not quote correctly, so add quotes: double-quote + # substitution turns \\\\ into \\, and sed turns \\ into \. sed -n \ "s/'/'\\\\''/g; s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p" - ;; + ;; #( *) # `set' quotes correctly as required by POSIX, so do not add quotes. - sed -n \ - "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p" + sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p" ;; - esac; -} | + esac | + sort +) | sed ' + /^ac_cv_env_/b end t clear - : clear + :clear s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/ t end - /^ac_cv_env/!s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/ - : end' >>confcache -if diff $cache_file confcache >/dev/null 2>&1; then :; else - if test -w $cache_file; then - test "x$cache_file" != "x/dev/null" && echo "updating cache $cache_file" - cat confcache >$cache_file + s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/ + :end' >>confcache +if diff "$cache_file" confcache >/dev/null 2>&1; then :; else + if test -w "$cache_file"; then + if test "x$cache_file" != "x/dev/null"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5 +$as_echo "$as_me: updating cache $cache_file" >&6;} + if test ! -f "$cache_file" || test -h "$cache_file"; then + cat confcache >"$cache_file" + else + case $cache_file in #( + */* | ?:*) + mv -f confcache "$cache_file"$$ && + mv -f "$cache_file"$$ "$cache_file" ;; #( + *) + mv -f confcache "$cache_file" ;; + esac + fi + fi else - echo "not updating unwritable cache $cache_file" + { $as_echo "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5 +$as_echo "$as_me: not updating unwritable cache $cache_file" >&6;} fi fi rm -f confcache -echo "$as_me:$LINENO: checking whether to enable profiling" >&5 -echo $ECHO_N "checking whether to enable profiling... $ECHO_C" >&6 -# Check whether --enable-profiling or --disable-profiling was given. -if test "${enable_profiling+set}" = set; then - enableval="$enable_profiling" - +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable profiling" >&5 +$as_echo_n "checking whether to enable profiling... " >&6; } +# Check whether --enable-profiling was given. +if test "${enable_profiling+set}" = set; then : + enableval=$enable_profiling; case "$enableval" in yes) profile="-pg" ;; esac -fi; -echo "$as_me:$LINENO: result: ${enable_profiling-no}" >&5 -echo "${ECHO_T}${enable_profiling-no}" >&6 +fi -echo "$as_me:$LINENO: checking whether to enable debugging" >&5 -echo $ECHO_N "checking whether to enable debugging... $ECHO_C" >&6 -# Check whether --enable-debugging or --disable-debugging was given. -if test "${enable_debugging+set}" = set; then - enableval="$enable_debugging" +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: ${enable_profiling-no}" >&5 +$as_echo "${enable_profiling-no}" >&6; } +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable debugging" >&5 +$as_echo_n "checking whether to enable debugging... " >&6; } +# Check whether --enable-debugging was given. +if test "${enable_debugging+set}" = set; then : + enableval=$enable_debugging; case "$enableval" in yes) -cat >>confdefs.h <<\_ACEOF -#define DEBUG 1 -_ACEOF +$as_echo "#define DEBUG 1" >>confdefs.h optimize="" ;; no) if test -n "$profile" then - { { echo "$as_me:$LINENO: error: --enable-profiling and --disable-debugging are incompatible" >&5 -echo "$as_me: error: --enable-profiling and --disable-debugging are incompatible" >&2;} - { (exit 1); exit 1; }; } + as_fn_error $? "--enable-profiling and --disable-debugging are incompatible" "$LINENO" 5 fi -cat >>confdefs.h <<\_ACEOF -#define NDEBUG 1 -_ACEOF +$as_echo "#define NDEBUG 1" >>confdefs.h debug="" if test "$GCC" = yes @@ -19996,9 +18911,10 @@ _ACEOF ;; esac -fi; -echo "$as_me:$LINENO: result: ${enable_debugging-default}" >&5 -echo "${ECHO_T}${enable_debugging-default}" >&6 +fi + +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: ${enable_debugging-default}" >&5 +$as_echo "${enable_debugging-default}" >&6; } if test ${enable_debugging-default} = yes; then @@ -20017,7 +18933,7 @@ test -n "$optimize" && CFLAGS="$CFLAGS $optimize" test -n "$profile" && CFLAGS="$CFLAGS $profile" LDFLAGS="$LDFLAGS $profile" - ac_config_files="$ac_config_files Makefile msvc++/Makefile libid3tag.list" +ac_config_files="$ac_config_files Makefile msvc++/Makefile libid3tag.list" cat >confcache <<\_ACEOF # This file is a shell script that caches the results of configure @@ -20037,39 +18953,70 @@ _ACEOF # The following way of writing the cache mishandles newlines in values, # but we know of no workaround that is simple, portable, and efficient. -# So, don't put newlines in cache variables' values. +# So, we kill variables containing newlines. # Ultrix sh set writes to stderr and can't be redirected directly, # and sets the high bit in the cache file unless we assign to the vars. -{ +( + for ac_var in `(set) 2>&1 | sed -n 's/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'`; do + eval ac_val=\$$ac_var + case $ac_val in #( + *${as_nl}*) + case $ac_var in #( + *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5 +$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;; + esac + case $ac_var in #( + _ | IFS | as_nl) ;; #( + BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #( + *) { eval $ac_var=; unset $ac_var;} ;; + esac ;; + esac + done + (set) 2>&1 | - case `(ac_space=' '; set | grep ac_space) 2>&1` in - *ac_space=\ *) - # `set' does not quote correctly, so add quotes (double-quote - # substitution turns \\\\ into \\, and sed turns \\ into \). + case $as_nl`(ac_space=' '; set) 2>&1` in #( + *${as_nl}ac_space=\ *) + # `set' does not quote correctly, so add quotes: double-quote + # substitution turns \\\\ into \\, and sed turns \\ into \. sed -n \ "s/'/'\\\\''/g; s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p" - ;; + ;; #( *) # `set' quotes correctly as required by POSIX, so do not add quotes. - sed -n \ - "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p" + sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p" ;; - esac; -} | + esac | + sort +) | sed ' + /^ac_cv_env_/b end t clear - : clear + :clear s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/ t end - /^ac_cv_env/!s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/ - : end' >>confcache -if diff $cache_file confcache >/dev/null 2>&1; then :; else - if test -w $cache_file; then - test "x$cache_file" != "x/dev/null" && echo "updating cache $cache_file" - cat confcache >$cache_file + s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/ + :end' >>confcache +if diff "$cache_file" confcache >/dev/null 2>&1; then :; else + if test -w "$cache_file"; then + if test "x$cache_file" != "x/dev/null"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5 +$as_echo "$as_me: updating cache $cache_file" >&6;} + if test ! -f "$cache_file" || test -h "$cache_file"; then + cat confcache >"$cache_file" + else + case $cache_file in #( + */* | ?:*) + mv -f confcache "$cache_file"$$ && + mv -f "$cache_file"$$ "$cache_file" ;; #( + *) + mv -f confcache "$cache_file" ;; + esac + fi + fi else - echo "not updating unwritable cache $cache_file" + { $as_echo "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5 +$as_echo "$as_me: not updating unwritable cache $cache_file" >&6;} fi fi rm -f confcache @@ -20078,32 +19025,19 @@ test "x$prefix" = xNONE && prefix=$ac_default_prefix # Let make expand exec_prefix. test "x$exec_prefix" = xNONE && exec_prefix='${prefix}' -# VPATH may cause trouble with some makes, so we remove $(srcdir), -# ${srcdir} and @srcdir@ from VPATH if srcdir is ".", strip leading and -# trailing colons and then remove the whole line if VPATH becomes empty -# (actually we leave an empty line to preserve line numbers). -if test "x$srcdir" = x.; then - ac_vpsub='/^[ ]*VPATH[ ]*=/{ -s/:*\$(srcdir):*/:/; -s/:*\${srcdir}:*/:/; -s/:*@srcdir@:*/:/; -s/^\([^=]*=[ ]*\):*/\1/; -s/:*$//; -s/^[^=]*=[ ]*$//; -}' -fi - DEFS=-DHAVE_CONFIG_H ac_libobjs= ac_ltlibobjs= +U= for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue # 1. Remove the extension, and $U if already installed. - ac_i=`echo "$ac_i" | - sed 's/\$U\././;s/\.o$//;s/\.obj$//'` - # 2. Add them. - ac_libobjs="$ac_libobjs $ac_i\$U.$ac_objext" - ac_ltlibobjs="$ac_ltlibobjs $ac_i"'$U.lo' + ac_script='s/\$U\././;s/\.o$//;s/\.obj$//' + ac_i=`$as_echo "$ac_i" | sed "$ac_script"` + # 2. Prepend LIBOBJDIR. When used with automake>=1.10 LIBOBJDIR + # will be set to the directory where LIBOBJS objects are built. + as_fn_append ac_libobjs " \${LIBOBJDIR}$ac_i\$U.$ac_objext" + as_fn_append ac_ltlibobjs " \${LIBOBJDIR}$ac_i"'$U.lo' done LIBOBJS=$ac_libobjs @@ -20111,40 +19045,30 @@ LTLIBOBJS=$ac_ltlibobjs if test -z "${AMDEP_TRUE}" && test -z "${AMDEP_FALSE}"; then - { { echo "$as_me:$LINENO: error: conditional \"AMDEP\" was never defined. -Usually this means the macro was only invoked conditionally." >&5 -echo "$as_me: error: conditional \"AMDEP\" was never defined. -Usually this means the macro was only invoked conditionally." >&2;} - { (exit 1); exit 1; }; } + as_fn_error $? "conditional \"AMDEP\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then - { { echo "$as_me:$LINENO: error: conditional \"am__fastdepCC\" was never defined. -Usually this means the macro was only invoked conditionally." >&5 -echo "$as_me: error: conditional \"am__fastdepCC\" was never defined. -Usually this means the macro was only invoked conditionally." >&2;} - { (exit 1); exit 1; }; } + as_fn_error $? "conditional \"am__fastdepCC\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${am__fastdepCXX_TRUE}" && test -z "${am__fastdepCXX_FALSE}"; then - { { echo "$as_me:$LINENO: error: conditional \"am__fastdepCXX\" was never defined. -Usually this means the macro was only invoked conditionally." >&5 -echo "$as_me: error: conditional \"am__fastdepCXX\" was never defined. -Usually this means the macro was only invoked conditionally." >&2;} - { (exit 1); exit 1; }; } + as_fn_error $? "conditional \"am__fastdepCXX\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${DEBUG_TRUE}" && test -z "${DEBUG_FALSE}"; then - { { echo "$as_me:$LINENO: error: conditional \"DEBUG\" was never defined. -Usually this means the macro was only invoked conditionally." >&5 -echo "$as_me: error: conditional \"DEBUG\" was never defined. -Usually this means the macro was only invoked conditionally." >&2;} - { (exit 1); exit 1; }; } + as_fn_error $? "conditional \"DEBUG\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi -: ${CONFIG_STATUS=./config.status} +: "${CONFIG_STATUS=./config.status}" +ac_write_fail=0 ac_clean_files_save=$ac_clean_files ac_clean_files="$ac_clean_files $CONFIG_STATUS" -{ echo "$as_me:$LINENO: creating $CONFIG_STATUS" >&5 -echo "$as_me: creating $CONFIG_STATUS" >&6;} -cat >$CONFIG_STATUS <<_ACEOF +{ $as_echo "$as_me:${as_lineno-$LINENO}: creating $CONFIG_STATUS" >&5 +$as_echo "$as_me: creating $CONFIG_STATUS" >&6;} +as_write_fail=0 +cat >$CONFIG_STATUS <<_ASEOF || as_write_fail=1 #! $SHELL # Generated by $as_me. # Run this file to recreate the current configuration. @@ -20154,81 +19078,253 @@ cat >$CONFIG_STATUS <<_ACEOF debug=false ac_cs_recheck=false ac_cs_silent=false -SHELL=\${CONFIG_SHELL-$SHELL} -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF -## --------------------- ## -## M4sh Initialization. ## -## --------------------- ## - -# Be Bourne compatible -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then +SHELL=\${CONFIG_SHELL-$SHELL} +export SHELL +_ASEOF +cat >>$CONFIG_STATUS <<\_ASEOF || as_write_fail=1 +## -------------------- ## +## M4sh Initialization. ## +## -------------------- ## + +# Be more Bourne compatible +DUALCASE=1; export DUALCASE # for MKS sh +if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then : emulate sh NULLCMD=: - # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which + # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which # is contrary to our usage. Disable this feature. alias -g '${1+"$@"}'='"$@"' -elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then - set -o posix + setopt NO_GLOB_SUBST +else + case `(set -o) 2>/dev/null` in #( + *posix*) : + set -o posix ;; #( + *) : + ;; +esac fi -DUALCASE=1; export DUALCASE # for MKS sh -# Support unset when possible. -if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then - as_unset=unset -else - as_unset=false + +as_nl=' +' +export as_nl +# Printing a long string crashes Solaris 7 /usr/bin/printf. +as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' +as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo +as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo +# Prefer a ksh shell builtin over an external printf program on Solaris, +# but without wasting forks for bash or zsh. +if test -z "$BASH_VERSION$ZSH_VERSION" \ + && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then + as_echo='print -r --' + as_echo_n='print -rn --' +elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then + as_echo='printf %s\n' + as_echo_n='printf %s' +else + if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then + as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"' + as_echo_n='/usr/ucb/echo -n' + else + as_echo_body='eval expr "X$1" : "X\\(.*\\)"' + as_echo_n_body='eval + arg=$1; + case $arg in #( + *"$as_nl"*) + expr "X$arg" : "X\\(.*\\)$as_nl"; + arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;; + esac; + expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl" + ' + export as_echo_n_body + as_echo_n='sh -c $as_echo_n_body as_echo' + fi + export as_echo_body + as_echo='sh -c $as_echo_body as_echo' +fi + +# The user is always right. +if test "${PATH_SEPARATOR+set}" != set; then + PATH_SEPARATOR=: + (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { + (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || + PATH_SEPARATOR=';' + } fi -# Work around bugs in pre-3.0 UWIN ksh. -$as_unset ENV MAIL MAILPATH +# IFS +# We need space, tab and new line, in precisely that order. Quoting is +# there to prevent editors from complaining about space-tab. +# (If _AS_PATH_WALK were called with IFS unset, it would disable word +# splitting by setting IFS to empty value.) +IFS=" "" $as_nl" + +# Find who we are. Look in the path if we contain no directory separator. +as_myself= +case $0 in #(( + *[\\/]* ) as_myself=$0 ;; + *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break + done +IFS=$as_save_IFS + + ;; +esac +# We did not find ourselves, most probably we were run as `sh COMMAND' +# in which case we are not to be found in the path. +if test "x$as_myself" = x; then + as_myself=$0 +fi +if test ! -f "$as_myself"; then + $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 + exit 1 +fi + +# Unset variables that we do not need and which cause bugs (e.g. in +# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1" +# suppresses any "Segmentation fault" message there. '((' could +# trigger a bug in pdksh 5.2.14. +for as_var in BASH_ENV ENV MAIL MAILPATH +do eval test x\${$as_var+set} = xset \ + && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : +done PS1='$ ' PS2='> ' PS4='+ ' # NLS nuisances. -for as_var in \ - LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \ - LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \ - LC_TELEPHONE LC_TIME -do - if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then - eval $as_var=C; export $as_var - else - $as_unset $as_var +LC_ALL=C +export LC_ALL +LANGUAGE=C +export LANGUAGE + +# CDPATH. +(unset CDPATH) >/dev/null 2>&1 && unset CDPATH + + +# as_fn_error STATUS ERROR [LINENO LOG_FD] +# ---------------------------------------- +# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are +# provided, also output the error to LOG_FD, referencing LINENO. Then exit the +# script with STATUS, using 1 if that was 0. +as_fn_error () +{ + as_status=$1; test $as_status -eq 0 && as_status=1 + if test "$4"; then + as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4 fi -done + $as_echo "$as_me: error: $2" >&2 + as_fn_exit $as_status +} # as_fn_error + + +# as_fn_set_status STATUS +# ----------------------- +# Set $? to STATUS, without forking. +as_fn_set_status () +{ + return $1 +} # as_fn_set_status + +# as_fn_exit STATUS +# ----------------- +# Exit the shell with STATUS, even in a "trap 0" or "set -e" context. +as_fn_exit () +{ + set +e + as_fn_set_status $1 + exit $1 +} # as_fn_exit + +# as_fn_unset VAR +# --------------- +# Portably unset VAR. +as_fn_unset () +{ + { eval $1=; unset $1;} +} +as_unset=as_fn_unset +# as_fn_append VAR VALUE +# ---------------------- +# Append the text in VALUE to the end of the definition contained in VAR. Take +# advantage of any shell optimizations that allow amortized linear growth over +# repeated appends, instead of the typical quadratic growth present in naive +# implementations. +if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then : + eval 'as_fn_append () + { + eval $1+=\$2 + }' +else + as_fn_append () + { + eval $1=\$$1\$2 + } +fi # as_fn_append + +# as_fn_arith ARG... +# ------------------ +# Perform arithmetic evaluation on the ARGs, and store the result in the +# global $as_val. Take advantage of shells that can avoid forks. The arguments +# must be portable across $(()) and expr. +if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then : + eval 'as_fn_arith () + { + as_val=$(( $* )) + }' +else + as_fn_arith () + { + as_val=`expr "$@" || test $? -eq 1` + } +fi # as_fn_arith + -# Required to use basename. -if expr a : '\(a\)' >/dev/null 2>&1; then +if expr a : '\(a\)' >/dev/null 2>&1 && + test "X`expr 00001 : '.*\(...\)'`" = X001; then as_expr=expr else as_expr=false fi -if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then +if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then as_basename=basename else as_basename=false fi +if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then + as_dirname=dirname +else + as_dirname=false +fi -# Name of the executable. -as_me=`$as_basename "$0" || +as_me=`$as_basename -- "$0" || $as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)$' \| \ - . : '\(.\)' 2>/dev/null || -echo X/"$0" | - sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; } - /^X\/\(\/\/\)$/{ s//\1/; q; } - /^X\/\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` + X"$0" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X/"$0" | + sed '/^.*\/\([^/][^/]*\)\/*$/{ + s//\1/ + q + } + /^X\/\(\/\/\)$/{ + s//\1/ + q + } + /^X\/\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` - -# PATH needs CR, and LINENO needs CR and PATH. # Avoid depending upon Character Ranges. as_cr_letters='abcdefghijklmnopqrstuvwxyz' as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' @@ -20236,148 +19332,123 @@ as_cr_Letters=$as_cr_letters$as_cr_LETTERS as_cr_digits='0123456789' as_cr_alnum=$as_cr_Letters$as_cr_digits -# The user is always right. -if test "${PATH_SEPARATOR+set}" != set; then - echo "#! /bin/sh" >conf$$.sh - echo "exit 0" >>conf$$.sh - chmod +x conf$$.sh - if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then - PATH_SEPARATOR=';' - else - PATH_SEPARATOR=: - fi - rm -f conf$$.sh -fi - - - as_lineno_1=$LINENO - as_lineno_2=$LINENO - as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` - test "x$as_lineno_1" != "x$as_lineno_2" && - test "x$as_lineno_3" = "x$as_lineno_2" || { - # Find who we are. Look in the path if we contain no path at all - # relative or not. - case $0 in - *[\\/]* ) as_myself=$0 ;; - *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break -done - - ;; - esac - # We did not find ourselves, most probably we were run as `sh COMMAND' - # in which case we are not to be found in the path. - if test "x$as_myself" = x; then - as_myself=$0 - fi - if test ! -f "$as_myself"; then - { { echo "$as_me:$LINENO: error: cannot find myself; rerun with an absolute path" >&5 -echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2;} - { (exit 1); exit 1; }; } - fi - case $CONFIG_SHELL in - '') - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for as_base in sh bash ksh sh5; do - case $as_dir in - /*) - if ("$as_dir/$as_base" -c ' - as_lineno_1=$LINENO - as_lineno_2=$LINENO - as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` - test "x$as_lineno_1" != "x$as_lineno_2" && - test "x$as_lineno_3" = "x$as_lineno_2" ') 2>/dev/null; then - $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { BASH_ENV=; export BASH_ENV; } - $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; } - CONFIG_SHELL=$as_dir/$as_base - export CONFIG_SHELL - exec "$CONFIG_SHELL" "$0" ${1+"$@"} - fi;; - esac - done -done -;; - esac - - # Create $as_me.lineno as a copy of $as_myself, but with $LINENO - # uniformly replaced by the line number. The first 'sed' inserts a - # line-number line before each line; the second 'sed' does the real - # work. The second script uses 'N' to pair each line-number line - # with the numbered line, and appends trailing '-' during - # substitution so that $LINENO is not a special case at line end. - # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the - # second 'sed' script. Blame Lee E. McMahon for sed's syntax. :-) - sed '=' <$as_myself | - sed ' - N - s,$,-, - : loop - s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3, - t loop - s,-$,, - s,^['$as_cr_digits']*\n,, - ' >$as_me.lineno && - chmod +x $as_me.lineno || - { { echo "$as_me:$LINENO: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&5 -echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2;} - { (exit 1); exit 1; }; } - - # Don't try to exec as it changes $[0], causing all sort of problems - # (the dirname of $[0] is not the place where we might find the - # original and so on. Autoconf is especially sensible to this). - . ./$as_me.lineno - # Exit status is that of the last command. - exit -} - - -case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in - *c*,-n*) ECHO_N= ECHO_C=' -' ECHO_T=' ' ;; - *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;; - *) ECHO_N= ECHO_C='\c' ECHO_T= ;; +ECHO_C= ECHO_N= ECHO_T= +case `echo -n x` in #((((( +-n*) + case `echo 'xy\c'` in + *c*) ECHO_T=' ';; # ECHO_T is single tab character. + xy) ECHO_C='\c';; + *) echo `echo ksh88 bug on AIX 6.1` > /dev/null + ECHO_T=' ';; + esac;; +*) + ECHO_N='-n';; esac -if expr a : '\(a\)' >/dev/null 2>&1; then - as_expr=expr +rm -f conf$$ conf$$.exe conf$$.file +if test -d conf$$.dir; then + rm -f conf$$.dir/conf$$.file else - as_expr=false + rm -f conf$$.dir + mkdir conf$$.dir 2>/dev/null fi - -rm -f conf$$ conf$$.exe conf$$.file -echo >conf$$.file -if ln -s conf$$.file conf$$ 2>/dev/null; then - # We could just check for DJGPP; but this test a) works b) is more generic - # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04). - if test -f conf$$.exe; then - # Don't use ln at all; we don't have any links - as_ln_s='cp -p' - else +if (echo >conf$$.file) 2>/dev/null; then + if ln -s conf$$.file conf$$ 2>/dev/null; then as_ln_s='ln -s' + # ... but there are two gotchas: + # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. + # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. + # In both cases, we have to default to `cp -p'. + ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || + as_ln_s='cp -p' + elif ln conf$$.file conf$$ 2>/dev/null; then + as_ln_s=ln + else + as_ln_s='cp -p' fi -elif ln conf$$.file conf$$ 2>/dev/null; then - as_ln_s=ln else as_ln_s='cp -p' fi -rm -f conf$$ conf$$.exe conf$$.file +rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file +rmdir conf$$.dir 2>/dev/null + +# as_fn_mkdir_p +# ------------- +# Create "$as_dir" as a directory, including parents if necessary. +as_fn_mkdir_p () +{ + + case $as_dir in #( + -*) as_dir=./$as_dir;; + esac + test -d "$as_dir" || eval $as_mkdir_p || { + as_dirs= + while :; do + case $as_dir in #( + *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( + *) as_qdir=$as_dir;; + esac + as_dirs="'$as_qdir' $as_dirs" + as_dir=`$as_dirname -- "$as_dir" || +$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$as_dir" : 'X\(//\)[^/]' \| \ + X"$as_dir" : 'X\(//\)$' \| \ + X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X"$as_dir" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + test -d "$as_dir" && break + done + test -z "$as_dirs" || eval "mkdir $as_dirs" + } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir" + + +} # as_fn_mkdir_p if mkdir -p . 2>/dev/null; then - as_mkdir_p=: + as_mkdir_p='mkdir -p "$as_dir"' else test -d ./-p && rmdir ./-p as_mkdir_p=false fi -as_executable_p="test -f" +if test -x / >/dev/null 2>&1; then + as_test_x='test -x' +else + if ls -dL / >/dev/null 2>&1; then + as_ls_L_option=L + else + as_ls_L_option= + fi + as_test_x=' + eval sh -c '\'' + if test -d "$1"; then + test -d "$1/."; + else + case $1 in #( + -*)set "./$1";; + esac; + case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #(( + ???[sx]*):;;*)false;;esac;fi + '\'' sh + ' +fi +as_executable_p=$as_test_x # Sed expression to map a string onto a valid CPP name. as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" @@ -20386,31 +19457,20 @@ as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" -# IFS -# We need space, tab and new line, in precisely that order. -as_nl=' -' -IFS=" $as_nl" - -# CDPATH. -$as_unset CDPATH - exec 6>&1 +## ----------------------------------- ## +## Main body of $CONFIG_STATUS script. ## +## ----------------------------------- ## +_ASEOF +test $as_write_fail = 0 && chmod +x $CONFIG_STATUS || ac_write_fail=1 -# Open the log real soon, to keep \$[0] and so on meaningful, and to +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 +# Save the log message, to keep $0 and so on meaningful, and to # report actual input values of CONFIG_FILES etc. instead of their -# values after options handling. Logging --version etc. is OK. -exec 5>>config.log -{ - echo - sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX -## Running $as_me. ## -_ASBOX -} >&5 -cat >&5 <<_CSEOF - +# values after options handling. +ac_log=" This file was extended by ID3 Tag $as_me 0.15.1b, which was -generated by GNU Autoconf 2.59. Invocation command line was +generated by GNU Autoconf 2.68. Invocation command line was CONFIG_FILES = $CONFIG_FILES CONFIG_HEADERS = $CONFIG_HEADERS @@ -20418,45 +19478,47 @@ generated by GNU Autoconf 2.59. Invocation command line was CONFIG_COMMANDS = $CONFIG_COMMANDS $ $0 $@ -_CSEOF -echo "on `(hostname || uname -n) 2>/dev/null | sed 1q`" >&5 -echo >&5 +on `(hostname || uname -n) 2>/dev/null | sed 1q` +" + _ACEOF -# Files that config.status was made for. -if test -n "$ac_config_files"; then - echo "config_files=\"$ac_config_files\"" >>$CONFIG_STATUS -fi +case $ac_config_files in *" +"*) set x $ac_config_files; shift; ac_config_files=$*;; +esac -if test -n "$ac_config_headers"; then - echo "config_headers=\"$ac_config_headers\"" >>$CONFIG_STATUS -fi +case $ac_config_headers in *" +"*) set x $ac_config_headers; shift; ac_config_headers=$*;; +esac -if test -n "$ac_config_links"; then - echo "config_links=\"$ac_config_links\"" >>$CONFIG_STATUS -fi -if test -n "$ac_config_commands"; then - echo "config_commands=\"$ac_config_commands\"" >>$CONFIG_STATUS -fi +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 +# Files that config.status was made for. +config_files="$ac_config_files" +config_headers="$ac_config_headers" +config_commands="$ac_config_commands" -cat >>$CONFIG_STATUS <<\_ACEOF +_ACEOF +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 ac_cs_usage="\ -\`$as_me' instantiates files from templates according to the -current configuration. +\`$as_me' instantiates files and other configuration actions +from templates according to the current configuration. Unless the files +and actions are specified as TAGs, all are instantiated by default. -Usage: $0 [OPTIONS] [FILE]... +Usage: $0 [OPTION]... [TAG]... -h, --help print this help, then exit - -V, --version print version number, then exit - -q, --quiet do not print progress messages + -V, --version print version number and configuration settings, then exit + --config print configuration, then exit + -q, --quiet, --silent + do not print progress messages -d, --debug don't remove temporary files --recheck update $as_me by reconfiguring in the same conditions - --file=FILE[:TEMPLATE] - instantiate the configuration file FILE - --header=FILE[:TEMPLATE] - instantiate the configuration header FILE + --file=FILE[:TEMPLATE] + instantiate the configuration file FILE + --header=FILE[:TEMPLATE] + instantiate the configuration header FILE Configuration files: $config_files @@ -20467,84 +19529,91 @@ $config_headers Configuration commands: $config_commands -Report bugs to ." -_ACEOF +Report bugs to ." -cat >>$CONFIG_STATUS <<_ACEOF +_ACEOF +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 +ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ ID3 Tag config.status 0.15.1b -configured by $0, generated by GNU Autoconf 2.59, - with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\" +configured by $0, generated by GNU Autoconf 2.68, + with options \\"\$ac_cs_config\\" -Copyright (C) 2003 Free Software Foundation, Inc. +Copyright (C) 2010 Free Software Foundation, Inc. This config.status script is free software; the Free Software Foundation gives unlimited permission to copy, distribute and modify it." -srcdir=$srcdir -INSTALL="$INSTALL" + +ac_pwd='$ac_pwd' +srcdir='$srcdir' +INSTALL='$INSTALL' +AWK='$AWK' +test -n "\$AWK" || AWK=awk _ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF -# If no file are specified by the user, then we need to provide default -# value. By we need to know if files were specified by the user. +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 +# The default lists apply if the user does not specify any file. ac_need_defaults=: while test $# != 0 do case $1 in - --*=*) - ac_option=`expr "x$1" : 'x\([^=]*\)='` - ac_optarg=`expr "x$1" : 'x[^=]*=\(.*\)'` + --*=?*) + ac_option=`expr "X$1" : 'X\([^=]*\)='` + ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'` + ac_shift=: + ;; + --*=) + ac_option=`expr "X$1" : 'X\([^=]*\)='` + ac_optarg= ac_shift=: ;; - -*) + *) ac_option=$1 ac_optarg=$2 ac_shift=shift ;; - *) # This is not an option, so the user has probably given explicit - # arguments. - ac_option=$1 - ac_need_defaults=false;; esac case $ac_option in # Handling of the options. -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) ac_cs_recheck=: ;; - --version | --vers* | -V ) - echo "$ac_cs_version"; exit 0 ;; - --he | --h) - # Conflict between --help and --header - { { echo "$as_me:$LINENO: error: ambiguous option: $1 -Try \`$0 --help' for more information." >&5 -echo "$as_me: error: ambiguous option: $1 -Try \`$0 --help' for more information." >&2;} - { (exit 1); exit 1; }; };; - --help | --hel | -h ) - echo "$ac_cs_usage"; exit 0 ;; - --debug | --d* | -d ) + --version | --versio | --versi | --vers | --ver | --ve | --v | -V ) + $as_echo "$ac_cs_version"; exit ;; + --config | --confi | --conf | --con | --co | --c ) + $as_echo "$ac_cs_config"; exit ;; + --debug | --debu | --deb | --de | --d | -d ) debug=: ;; --file | --fil | --fi | --f ) $ac_shift - CONFIG_FILES="$CONFIG_FILES $ac_optarg" + case $ac_optarg in + *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; + '') as_fn_error $? "missing file argument" ;; + esac + as_fn_append CONFIG_FILES " '$ac_optarg'" ac_need_defaults=false;; --header | --heade | --head | --hea ) $ac_shift - CONFIG_HEADERS="$CONFIG_HEADERS $ac_optarg" + case $ac_optarg in + *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; + esac + as_fn_append CONFIG_HEADERS " '$ac_optarg'" ac_need_defaults=false;; + --he | --h) + # Conflict between --help and --header + as_fn_error $? "ambiguous option: \`$1' +Try \`$0 --help' for more information.";; + --help | --hel | -h ) + $as_echo "$ac_cs_usage"; exit ;; -q | -quiet | --quiet | --quie | --qui | --qu | --q \ | -silent | --silent | --silen | --sile | --sil | --si | --s) ac_cs_silent=: ;; # This is an error. - -*) { { echo "$as_me:$LINENO: error: unrecognized option: $1 -Try \`$0 --help' for more information." >&5 -echo "$as_me: error: unrecognized option: $1 -Try \`$0 --help' for more information." >&2;} - { (exit 1); exit 1; }; } ;; + -*) as_fn_error $? "unrecognized option: \`$1' +Try \`$0 --help' for more information." ;; - *) ac_config_targets="$ac_config_targets $1" ;; + *) as_fn_append ac_config_targets " $1" + ac_need_defaults=false ;; esac shift @@ -20558,41 +19627,53 @@ if $ac_cs_silent; then fi _ACEOF -cat >>$CONFIG_STATUS <<_ACEOF +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 if \$ac_cs_recheck; then - echo "running $SHELL $0 " $ac_configure_args \$ac_configure_extra_args " --no-create --no-recursion" >&6 - exec $SHELL $0 $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion + set X '$SHELL' '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion + shift + \$as_echo "running CONFIG_SHELL=$SHELL \$*" >&6 + CONFIG_SHELL='$SHELL' + export CONFIG_SHELL + exec "\$@" fi _ACEOF +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 +exec 5>>config.log +{ + echo + sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX +## Running $as_me. ## +_ASBOX + $as_echo "$ac_log" +} >&5 -cat >>$CONFIG_STATUS <<_ACEOF +_ACEOF +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 # -# INIT-COMMANDS section. +# INIT-COMMANDS # - AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir" _ACEOF +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 - -cat >>$CONFIG_STATUS <<\_ACEOF +# Handling of arguments. for ac_config_target in $ac_config_targets do - case "$ac_config_target" in - # Handling of arguments. - "Makefile" ) CONFIG_FILES="$CONFIG_FILES Makefile" ;; - "msvc++/Makefile" ) CONFIG_FILES="$CONFIG_FILES msvc++/Makefile" ;; - "libid3tag.list" ) CONFIG_FILES="$CONFIG_FILES libid3tag.list" ;; - "depfiles" ) CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;; - "config.h" ) CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;; - *) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5 -echo "$as_me: error: invalid argument: $ac_config_target" >&2;} - { (exit 1); exit 1; }; };; + case $ac_config_target in + "config.h") CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;; + "depfiles") CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;; + "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;; + "msvc++/Makefile") CONFIG_FILES="$CONFIG_FILES msvc++/Makefile" ;; + "libid3tag.list") CONFIG_FILES="$CONFIG_FILES libid3tag.list" ;; + + *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;; esac done + # If the user did not use the arguments to specify the items to instantiate, # then the envvar interface is used. Set only those that are not. # We use the long form for the default assignment because of an extremely @@ -20604,741 +19685,578 @@ if $ac_need_defaults; then fi # Have a temporary directory for convenience. Make it in the build tree -# simply because there is no reason to put it here, and in addition, +# simply because there is no reason against having it here, and in addition, # creating and moving files from /tmp can sometimes cause problems. -# Create a temporary directory, and hook for its removal unless debugging. +# Hook for its removal unless debugging. +# Note that there is a small window in which the directory will not be cleaned: +# after its creation but before its name has been assigned to `$tmp'. $debug || { - trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' 0 - trap '{ (exit 1); exit 1; }' 1 2 13 15 + tmp= ac_tmp= + trap 'exit_status=$? + : "${ac_tmp:=$tmp}" + { test ! -d "$ac_tmp" || rm -fr "$ac_tmp"; } && exit $exit_status +' 0 + trap 'as_fn_exit 1' 1 2 13 15 } - # Create a (secure) tmp directory for tmp files. { - tmp=`(umask 077 && mktemp -d -q "./confstatXXXXXX") 2>/dev/null` && - test -n "$tmp" && test -d "$tmp" + tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` && + test -d "$tmp" } || { - tmp=./confstat$$-$RANDOM - (umask 077 && mkdir $tmp) -} || + tmp=./conf$$-$RANDOM + (umask 077 && mkdir "$tmp") +} || as_fn_error $? "cannot create a temporary directory in ." "$LINENO" 5 +ac_tmp=$tmp + +# Set up the scripts for CONFIG_FILES section. +# No need to generate them if there are no CONFIG_FILES. +# This happens for instance with `./config.status config.h'. +if test -n "$CONFIG_FILES"; then + + +ac_cr=`echo X | tr X '\015'` +# On cygwin, bash can eat \r inside `` if the user requested igncr. +# But we know of no other shell where ac_cr would be empty at this +# point, so we can use a bashism as a fallback. +if test "x$ac_cr" = x; then + eval ac_cr=\$\'\\r\' +fi +ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' /dev/null` +if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then + ac_cs_awk_cr='\\r' +else + ac_cs_awk_cr=$ac_cr +fi + +echo 'BEGIN {' >"$ac_tmp/subs1.awk" && +_ACEOF + + +{ + echo "cat >conf$$subs.awk <<_ACEOF" && + echo "$ac_subst_vars" | sed 's/.*/&!$&$ac_delim/' && + echo "_ACEOF" +} >conf$$subs.sh || + as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5 +ac_delim_num=`echo "$ac_subst_vars" | grep -c '^'` +ac_delim='%!_!# ' +for ac_last_try in false false false false false :; do + . ./conf$$subs.sh || + as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5 + + ac_delim_n=`sed -n "s/.*$ac_delim\$/X/p" conf$$subs.awk | grep -c X` + if test $ac_delim_n = $ac_delim_num; then + break + elif $ac_last_try; then + as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5 + else + ac_delim="$ac_delim!$ac_delim _$ac_delim!! " + fi +done +rm -f conf$$subs.sh + +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 +cat >>"\$ac_tmp/subs1.awk" <<\\_ACAWK && +_ACEOF +sed -n ' +h +s/^/S["/; s/!.*/"]=/ +p +g +s/^[^!]*!// +:repl +t repl +s/'"$ac_delim"'$// +t delim +:nl +h +s/\(.\{148\}\)..*/\1/ +t more1 +s/["\\]/\\&/g; s/^/"/; s/$/\\n"\\/ +p +n +b repl +:more1 +s/["\\]/\\&/g; s/^/"/; s/$/"\\/ +p +g +s/.\{148\}// +t nl +:delim +h +s/\(.\{148\}\)..*/\1/ +t more2 +s/["\\]/\\&/g; s/^/"/; s/$/"/ +p +b +:more2 +s/["\\]/\\&/g; s/^/"/; s/$/"\\/ +p +g +s/.\{148\}// +t delim +' >$CONFIG_STATUS || ac_write_fail=1 +rm -f conf$$subs.awk +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 +_ACAWK +cat >>"\$ac_tmp/subs1.awk" <<_ACAWK && + for (key in S) S_is_set[key] = 1 + FS = "" + +} { - echo "$me: cannot create a temporary directory in ." >&2 - { (exit 1); exit 1; } + line = $ 0 + nfields = split(line, field, "@") + substed = 0 + len = length(field[1]) + for (i = 2; i < nfields; i++) { + key = field[i] + keylen = length(key) + if (S_is_set[key]) { + value = S[key] + line = substr(line, 1, len) "" value "" substr(line, len + keylen + 3) + len += length(value) + length(field[++i]) + substed = 1 + } else + len += 1 + keylen + } + + print line } +_ACAWK +_ACEOF +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 +if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then + sed "s/$ac_cr\$//; s/$ac_cr/$ac_cs_awk_cr/g" +else + cat +fi < "$ac_tmp/subs1.awk" > "$ac_tmp/subs.awk" \ + || as_fn_error $? "could not setup config files machinery" "$LINENO" 5 _ACEOF -cat >>$CONFIG_STATUS <<_ACEOF - -# -# CONFIG_FILES section. -# +# VPATH may cause trouble with some makes, so we remove sole $(srcdir), +# ${srcdir} and @srcdir@ entries from VPATH if srcdir is ".", strip leading and +# trailing colons and then remove the whole line if VPATH becomes empty +# (actually we leave an empty line to preserve line numbers). +if test "x$srcdir" = x.; then + ac_vpsub='/^[ ]*VPATH[ ]*=[ ]*/{ +h +s/// +s/^/:/ +s/[ ]*$/:/ +s/:\$(srcdir):/:/g +s/:\${srcdir}:/:/g +s/:@srcdir@:/:/g +s/^:*// +s/:*$// +x +s/\(=[ ]*\).*/\1/ +G +s/\n// +s/^[^=]*=[ ]*$// +}' +fi -# No need to generate the scripts if there are no CONFIG_FILES. -# This happens for instance when ./config.status config.h -if test -n "\$CONFIG_FILES"; then - # Protect against being on the right side of a sed subst in config.status. - sed 's/,@/@@/; s/@,/@@/; s/,;t t\$/@;t t/; /@;t t\$/s/[\\\\&,]/\\\\&/g; - s/@@/,@/; s/@@/@,/; s/@;t t\$/,;t t/' >\$tmp/subs.sed <<\\CEOF -s,@SHELL@,$SHELL,;t t -s,@PATH_SEPARATOR@,$PATH_SEPARATOR,;t t -s,@PACKAGE_NAME@,$PACKAGE_NAME,;t t -s,@PACKAGE_TARNAME@,$PACKAGE_TARNAME,;t t -s,@PACKAGE_VERSION@,$PACKAGE_VERSION,;t t -s,@PACKAGE_STRING@,$PACKAGE_STRING,;t t -s,@PACKAGE_BUGREPORT@,$PACKAGE_BUGREPORT,;t t -s,@exec_prefix@,$exec_prefix,;t t -s,@prefix@,$prefix,;t t -s,@program_transform_name@,$program_transform_name,;t t -s,@bindir@,$bindir,;t t -s,@sbindir@,$sbindir,;t t -s,@libexecdir@,$libexecdir,;t t -s,@datadir@,$datadir,;t t -s,@sysconfdir@,$sysconfdir,;t t -s,@sharedstatedir@,$sharedstatedir,;t t -s,@localstatedir@,$localstatedir,;t t -s,@libdir@,$libdir,;t t -s,@includedir@,$includedir,;t t -s,@oldincludedir@,$oldincludedir,;t t -s,@infodir@,$infodir,;t t -s,@mandir@,$mandir,;t t -s,@build_alias@,$build_alias,;t t -s,@host_alias@,$host_alias,;t t -s,@target_alias@,$target_alias,;t t -s,@DEFS@,$DEFS,;t t -s,@ECHO_C@,$ECHO_C,;t t -s,@ECHO_N@,$ECHO_N,;t t -s,@ECHO_T@,$ECHO_T,;t t -s,@LIBS@,$LIBS,;t t -s,@INSTALL_PROGRAM@,$INSTALL_PROGRAM,;t t -s,@INSTALL_SCRIPT@,$INSTALL_SCRIPT,;t t -s,@INSTALL_DATA@,$INSTALL_DATA,;t t -s,@CYGPATH_W@,$CYGPATH_W,;t t -s,@PACKAGE@,$PACKAGE,;t t -s,@VERSION@,$VERSION,;t t -s,@ACLOCAL@,$ACLOCAL,;t t -s,@AUTOCONF@,$AUTOCONF,;t t -s,@AUTOMAKE@,$AUTOMAKE,;t t -s,@AUTOHEADER@,$AUTOHEADER,;t t -s,@MAKEINFO@,$MAKEINFO,;t t -s,@AMTAR@,$AMTAR,;t t -s,@install_sh@,$install_sh,;t t -s,@STRIP@,$STRIP,;t t -s,@ac_ct_STRIP@,$ac_ct_STRIP,;t t -s,@INSTALL_STRIP_PROGRAM@,$INSTALL_STRIP_PROGRAM,;t t -s,@mkdir_p@,$mkdir_p,;t t -s,@AWK@,$AWK,;t t -s,@SET_MAKE@,$SET_MAKE,;t t -s,@am__leading_dot@,$am__leading_dot,;t t -s,@build@,$build,;t t -s,@build_cpu@,$build_cpu,;t t -s,@build_vendor@,$build_vendor,;t t -s,@build_os@,$build_os,;t t -s,@host@,$host,;t t -s,@host_cpu@,$host_cpu,;t t -s,@host_vendor@,$host_vendor,;t t -s,@host_os@,$host_os,;t t -s,@CC@,$CC,;t t -s,@CFLAGS@,$CFLAGS,;t t -s,@LDFLAGS@,$LDFLAGS,;t t -s,@CPPFLAGS@,$CPPFLAGS,;t t -s,@ac_ct_CC@,$ac_ct_CC,;t t -s,@EXEEXT@,$EXEEXT,;t t -s,@OBJEXT@,$OBJEXT,;t t -s,@DEPDIR@,$DEPDIR,;t t -s,@am__include@,$am__include,;t t -s,@am__quote@,$am__quote,;t t -s,@AMDEP_TRUE@,$AMDEP_TRUE,;t t -s,@AMDEP_FALSE@,$AMDEP_FALSE,;t t -s,@AMDEPBACKSLASH@,$AMDEPBACKSLASH,;t t -s,@CCDEPMODE@,$CCDEPMODE,;t t -s,@am__fastdepCC_TRUE@,$am__fastdepCC_TRUE,;t t -s,@am__fastdepCC_FALSE@,$am__fastdepCC_FALSE,;t t -s,@EGREP@,$EGREP,;t t -s,@LN_S@,$LN_S,;t t -s,@ECHO@,$ECHO,;t t -s,@AR@,$AR,;t t -s,@ac_ct_AR@,$ac_ct_AR,;t t -s,@RANLIB@,$RANLIB,;t t -s,@ac_ct_RANLIB@,$ac_ct_RANLIB,;t t -s,@CPP@,$CPP,;t t -s,@CXX@,$CXX,;t t -s,@CXXFLAGS@,$CXXFLAGS,;t t -s,@ac_ct_CXX@,$ac_ct_CXX,;t t -s,@CXXDEPMODE@,$CXXDEPMODE,;t t -s,@am__fastdepCXX_TRUE@,$am__fastdepCXX_TRUE,;t t -s,@am__fastdepCXX_FALSE@,$am__fastdepCXX_FALSE,;t t -s,@CXXCPP@,$CXXCPP,;t t -s,@F77@,$F77,;t t -s,@FFLAGS@,$FFLAGS,;t t -s,@ac_ct_F77@,$ac_ct_F77,;t t -s,@LIBTOOL@,$LIBTOOL,;t t -s,@LIBTOOL_DEPS@,$LIBTOOL_DEPS,;t t -s,@DEBUG_TRUE@,$DEBUG_TRUE,;t t -s,@DEBUG_FALSE@,$DEBUG_FALSE,;t t -s,@LIBOBJS@,$LIBOBJS,;t t -s,@LTLIBOBJS@,$LTLIBOBJS,;t t -CEOF +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 +fi # test -n "$CONFIG_FILES" +# Set up the scripts for CONFIG_HEADERS section. +# No need to generate them if there are no CONFIG_HEADERS. +# This happens for instance with `./config.status Makefile'. +if test -n "$CONFIG_HEADERS"; then +cat >"$ac_tmp/defines.awk" <<\_ACAWK || +BEGIN { _ACEOF - cat >>$CONFIG_STATUS <<\_ACEOF - # Split the substitutions into bite-sized pieces for seds with - # small command number limits, like on Digital OSF/1 and HP-UX. - ac_max_sed_lines=48 - ac_sed_frag=1 # Number of current file. - ac_beg=1 # First line for current file. - ac_end=$ac_max_sed_lines # Line after last line for current file. - ac_more_lines=: - ac_sed_cmds= - while $ac_more_lines; do - if test $ac_beg -gt 1; then - sed "1,${ac_beg}d; ${ac_end}q" $tmp/subs.sed >$tmp/subs.frag - else - sed "${ac_end}q" $tmp/subs.sed >$tmp/subs.frag - fi - if test ! -s $tmp/subs.frag; then - ac_more_lines=false - else - # The purpose of the label and of the branching condition is to - # speed up the sed processing (if there are no `@' at all, there - # is no need to browse any of the substitutions). - # These are the two extra sed commands mentioned above. - (echo ':t - /@[a-zA-Z_][a-zA-Z_0-9]*@/!b' && cat $tmp/subs.frag) >$tmp/subs-$ac_sed_frag.sed - if test -z "$ac_sed_cmds"; then - ac_sed_cmds="sed -f $tmp/subs-$ac_sed_frag.sed" - else - ac_sed_cmds="$ac_sed_cmds | sed -f $tmp/subs-$ac_sed_frag.sed" - fi - ac_sed_frag=`expr $ac_sed_frag + 1` - ac_beg=$ac_end - ac_end=`expr $ac_end + $ac_max_sed_lines` - fi - done - if test -z "$ac_sed_cmds"; then - ac_sed_cmds=cat +# Transform confdefs.h into an awk script `defines.awk', embedded as +# here-document in config.status, that substitutes the proper values into +# config.h.in to produce config.h. + +# Create a delimiter string that does not exist in confdefs.h, to ease +# handling of long lines. +ac_delim='%!_!# ' +for ac_last_try in false false :; do + ac_tt=`sed -n "/$ac_delim/p" confdefs.h` + if test -z "$ac_tt"; then + break + elif $ac_last_try; then + as_fn_error $? "could not make $CONFIG_HEADERS" "$LINENO" 5 + else + ac_delim="$ac_delim!$ac_delim _$ac_delim!! " fi -fi # test -n "$CONFIG_FILES" +done +# For the awk script, D is an array of macro values keyed by name, +# likewise P contains macro parameters if any. Preserve backslash +# newline sequences. + +ac_word_re=[_$as_cr_Letters][_$as_cr_alnum]* +sed -n ' +s/.\{148\}/&'"$ac_delim"'/g +t rset +:rset +s/^[ ]*#[ ]*define[ ][ ]*/ / +t def +d +:def +s/\\$// +t bsnl +s/["\\]/\\&/g +s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\ +D["\1"]=" \3"/p +s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2"/p +d +:bsnl +s/["\\]/\\&/g +s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\ +D["\1"]=" \3\\\\\\n"\\/p +t cont +s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2\\\\\\n"\\/p +t cont +d +:cont +n +s/.\{148\}/&'"$ac_delim"'/g +t clear +:clear +s/\\$// +t bsnlc +s/["\\]/\\&/g; s/^/"/; s/$/"/p +d +:bsnlc +s/["\\]/\\&/g; s/^/"/; s/$/\\\\\\n"\\/p +b cont +' >$CONFIG_STATUS || ac_write_fail=1 + +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 + for (key in D) D_is_set[key] = 1 + FS = "" +} +/^[\t ]*#[\t ]*(define|undef)[\t ]+$ac_word_re([\t (]|\$)/ { + line = \$ 0 + split(line, arg, " ") + if (arg[1] == "#") { + defundef = arg[2] + mac1 = arg[3] + } else { + defundef = substr(arg[1], 2) + mac1 = arg[2] + } + split(mac1, mac2, "(") #) + macro = mac2[1] + prefix = substr(line, 1, index(line, defundef) - 1) + if (D_is_set[macro]) { + # Preserve the white space surrounding the "#". + print prefix "define", macro P[macro] D[macro] + next + } else { + # Replace #undef with comments. This is necessary, for example, + # in the case of _POSIX_SOURCE, which is predefined and required + # on some systems where configure will not decide to define it. + if (defundef == "undef") { + print "/*", prefix defundef, macro, "*/" + next + } + } +} +{ print } +_ACAWK _ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF -for ac_file in : $CONFIG_FILES; do test "x$ac_file" = x: && continue - # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in". - case $ac_file in - - | *:- | *:-:* ) # input from stdin - cat >$tmp/stdin - ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; - *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; - * ) ac_file_in=$ac_file.in ;; +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 + as_fn_error $? "could not setup config headers machinery" "$LINENO" 5 +fi # test -n "$CONFIG_HEADERS" + + +eval set X " :F $CONFIG_FILES :H $CONFIG_HEADERS :C $CONFIG_COMMANDS" +shift +for ac_tag +do + case $ac_tag in + :[FHLC]) ac_mode=$ac_tag; continue;; + esac + case $ac_mode$ac_tag in + :[FHL]*:*);; + :L* | :C*:*) as_fn_error $? "invalid tag \`$ac_tag'" "$LINENO" 5;; + :[FH]-) ac_tag=-:-;; + :[FH]*) ac_tag=$ac_tag:$ac_tag.in;; + esac + ac_save_IFS=$IFS + IFS=: + set x $ac_tag + IFS=$ac_save_IFS + shift + ac_file=$1 + shift + + case $ac_mode in + :L) ac_source=$1;; + :[FH]) + ac_file_inputs= + for ac_f + do + case $ac_f in + -) ac_f="$ac_tmp/stdin";; + *) # Look for the file first in the build tree, then in the source tree + # (if the path is not absolute). The absolute path cannot be DOS-style, + # because $ac_f cannot contain `:'. + test -f "$ac_f" || + case $ac_f in + [\\/$]*) false;; + *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";; + esac || + as_fn_error 1 "cannot find input file: \`$ac_f'" "$LINENO" 5;; + esac + case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac + as_fn_append ac_file_inputs " '$ac_f'" + done + + # Let's still pretend it is `configure' which instantiates (i.e., don't + # use $as_me), people would be surprised to read: + # /* config.h. Generated by config.status. */ + configure_input='Generated from '` + $as_echo "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g' + `' by configure.' + if test x"$ac_file" != x-; then + configure_input="$ac_file. $configure_input" + { $as_echo "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5 +$as_echo "$as_me: creating $ac_file" >&6;} + fi + # Neutralize special characters interpreted by sed in replacement strings. + case $configure_input in #( + *\&* | *\|* | *\\* ) + ac_sed_conf_input=`$as_echo "$configure_input" | + sed 's/[\\\\&|]/\\\\&/g'`;; #( + *) ac_sed_conf_input=$configure_input;; + esac + + case $ac_tag in + *:-:* | *:-) cat >"$ac_tmp/stdin" \ + || as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;; + esac + ;; esac - # Compute @srcdir@, @top_srcdir@, and @INSTALL@ for subdirectories. - ac_dir=`(dirname "$ac_file") 2>/dev/null || + ac_dir=`$as_dirname -- "$ac_file" || $as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$ac_file" : 'X\(//\)[^/]' \| \ X"$ac_file" : 'X\(//\)$' \| \ - X"$ac_file" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$ac_file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - { if $as_mkdir_p; then - mkdir -p "$ac_dir" - else - as_dir="$ac_dir" - as_dirs= - while test ! -d "$as_dir"; do - as_dirs="$as_dir $as_dirs" - as_dir=`(dirname "$as_dir") 2>/dev/null || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - done - test ! -n "$as_dirs" || mkdir $as_dirs - fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5 -echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;} - { (exit 1); exit 1; }; }; } - + X"$ac_file" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X"$ac_file" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + as_dir="$ac_dir"; as_fn_mkdir_p ac_builddir=. -if test "$ac_dir" != .; then - ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` - # A "../" for each directory in $ac_dir_suffix. - ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'` -else - ac_dir_suffix= ac_top_builddir= -fi +case "$ac_dir" in +.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; +*) + ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'` + # A ".." for each directory in $ac_dir_suffix. + ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'` + case $ac_top_builddir_sub in + "") ac_top_builddir_sub=. ac_top_build_prefix= ;; + *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; + esac ;; +esac +ac_abs_top_builddir=$ac_pwd +ac_abs_builddir=$ac_pwd$ac_dir_suffix +# for backward compatibility: +ac_top_builddir=$ac_top_build_prefix case $srcdir in - .) # No --srcdir option. We are building in place. + .) # We are building in place. ac_srcdir=. - if test -z "$ac_top_builddir"; then - ac_top_srcdir=. - else - ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'` - fi ;; - [\\/]* | ?:[\\/]* ) # Absolute path. + ac_top_srcdir=$ac_top_builddir_sub + ac_abs_top_srcdir=$ac_pwd ;; + [\\/]* | ?:[\\/]* ) # Absolute name. ac_srcdir=$srcdir$ac_dir_suffix; - ac_top_srcdir=$srcdir ;; - *) # Relative path. - ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix - ac_top_srcdir=$ac_top_builddir$srcdir ;; + ac_top_srcdir=$srcdir + ac_abs_top_srcdir=$srcdir ;; + *) # Relative name. + ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix + ac_top_srcdir=$ac_top_build_prefix$srcdir + ac_abs_top_srcdir=$ac_pwd/$srcdir ;; esac +ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix -# Do not use `cd foo && pwd` to compute absolute paths, because -# the directories may not exist. -case `pwd` in -.) ac_abs_builddir="$ac_dir";; -*) - case "$ac_dir" in - .) ac_abs_builddir=`pwd`;; - [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";; - *) ac_abs_builddir=`pwd`/"$ac_dir";; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_builddir=${ac_top_builddir}.;; -*) - case ${ac_top_builddir}. in - .) ac_abs_top_builddir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;; - *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_srcdir=$ac_srcdir;; -*) - case $ac_srcdir in - .) ac_abs_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;; - *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_srcdir=$ac_top_srcdir;; -*) - case $ac_top_srcdir in - .) ac_abs_top_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;; - *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;; - esac;; -esac + case $ac_mode in + :F) + # + # CONFIG_FILE + # case $INSTALL in [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;; - *) ac_INSTALL=$ac_top_builddir$INSTALL ;; + *) ac_INSTALL=$ac_top_build_prefix$INSTALL ;; esac +_ACEOF - # Let's still pretend it is `configure' which instantiates (i.e., don't - # use $as_me), people would be surprised to read: - # /* config.h. Generated by config.status. */ - if test x"$ac_file" = x-; then - configure_input= - else - configure_input="$ac_file. " - fi - configure_input=$configure_input"Generated from `echo $ac_file_in | - sed 's,.*/,,'` by configure." - - # First look for the input files in the build tree, otherwise in the - # src tree. - ac_file_inputs=`IFS=: - for f in $ac_file_in; do - case $f in - -) echo $tmp/stdin ;; - [\\/$]*) - # Absolute (can't be DOS-style, as IFS=:) - test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 -echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - echo "$f";; - *) # Relative - if test -f "$f"; then - # Build tree - echo "$f" - elif test -f "$srcdir/$f"; then - # Source tree - echo "$srcdir/$f" - else - # /dev/null tree - { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 -echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - fi;; - esac - done` || { (exit 1); exit 1; } - - if test x"$ac_file" != x-; then - { echo "$as_me:$LINENO: creating $ac_file" >&5 -echo "$as_me: creating $ac_file" >&6;} - rm -f "$ac_file" - fi +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 +# If the template does not know about datarootdir, expand it. +# FIXME: This hack should be removed a few years after 2.60. +ac_datarootdir_hack=; ac_datarootdir_seen= +ac_sed_dataroot=' +/datarootdir/ { + p + q +} +/@datadir@/p +/@docdir@/p +/@infodir@/p +/@localedir@/p +/@mandir@/p' +case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in +*datarootdir*) ac_datarootdir_seen=yes;; +*@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*) + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5 +$as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;} +_ACEOF +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 + ac_datarootdir_hack=' + s&@datadir@&$datadir&g + s&@docdir@&$docdir&g + s&@infodir@&$infodir&g + s&@localedir@&$localedir&g + s&@mandir@&$mandir&g + s&\\\${datarootdir}&$datarootdir&g' ;; +esac _ACEOF -cat >>$CONFIG_STATUS <<_ACEOF - sed "$ac_vpsub + +# Neutralize VPATH when `$srcdir' = `.'. +# Shell code in configure.ac might set extrasub. +# FIXME: do we really want to maintain this feature? +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 +ac_sed_extra="$ac_vpsub $extrasub _ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 :t /@[a-zA-Z_][a-zA-Z_0-9]*@/!b -s,@configure_input@,$configure_input,;t t -s,@srcdir@,$ac_srcdir,;t t -s,@abs_srcdir@,$ac_abs_srcdir,;t t -s,@top_srcdir@,$ac_top_srcdir,;t t -s,@abs_top_srcdir@,$ac_abs_top_srcdir,;t t -s,@builddir@,$ac_builddir,;t t -s,@abs_builddir@,$ac_abs_builddir,;t t -s,@top_builddir@,$ac_top_builddir,;t t -s,@abs_top_builddir@,$ac_abs_top_builddir,;t t -s,@INSTALL@,$ac_INSTALL,;t t -" $ac_file_inputs | (eval "$ac_sed_cmds") >$tmp/out - rm -f $tmp/stdin - if test x"$ac_file" != x-; then - mv $tmp/out $ac_file - else - cat $tmp/out - rm -f $tmp/out - fi - -done -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF - -# -# CONFIG_HEADER section. -# - -# These sed commands are passed to sed as "A NAME B NAME C VALUE D", where -# NAME is the cpp macro being defined and VALUE is the value it is being given. -# -# ac_d sets the value in "#define NAME VALUE" lines. -ac_dA='s,^\([ ]*\)#\([ ]*define[ ][ ]*\)' -ac_dB='[ ].*$,\1#\2' -ac_dC=' ' -ac_dD=',;t' -# ac_u turns "#undef NAME" without trailing blanks into "#define NAME VALUE". -ac_uA='s,^\([ ]*\)#\([ ]*\)undef\([ ][ ]*\)' -ac_uB='$,\1#\2define\3' -ac_uC=' ' -ac_uD=',;t' - -for ac_file in : $CONFIG_HEADERS; do test "x$ac_file" = x: && continue - # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in". +s|@configure_input@|$ac_sed_conf_input|;t t +s&@top_builddir@&$ac_top_builddir_sub&;t t +s&@top_build_prefix@&$ac_top_build_prefix&;t t +s&@srcdir@&$ac_srcdir&;t t +s&@abs_srcdir@&$ac_abs_srcdir&;t t +s&@top_srcdir@&$ac_top_srcdir&;t t +s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t +s&@builddir@&$ac_builddir&;t t +s&@abs_builddir@&$ac_abs_builddir&;t t +s&@abs_top_builddir@&$ac_abs_top_builddir&;t t +s&@INSTALL@&$ac_INSTALL&;t t +$ac_datarootdir_hack +" +eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$ac_tmp/subs.awk" \ + >$ac_tmp/out || as_fn_error $? "could not create $ac_file" "$LINENO" 5 + +test -z "$ac_datarootdir_hack$ac_datarootdir_seen" && + { ac_out=`sed -n '/\${datarootdir}/p' "$ac_tmp/out"`; test -n "$ac_out"; } && + { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' \ + "$ac_tmp/out"`; test -z "$ac_out"; } && + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir' +which seems to be undefined. Please make sure it is defined" >&5 +$as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir' +which seems to be undefined. Please make sure it is defined" >&2;} + + rm -f "$ac_tmp/stdin" case $ac_file in - - | *:- | *:-:* ) # input from stdin - cat >$tmp/stdin - ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; - *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; - * ) ac_file_in=$ac_file.in ;; - esac - - test x"$ac_file" != x- && { echo "$as_me:$LINENO: creating $ac_file" >&5 -echo "$as_me: creating $ac_file" >&6;} - - # First look for the input files in the build tree, otherwise in the - # src tree. - ac_file_inputs=`IFS=: - for f in $ac_file_in; do - case $f in - -) echo $tmp/stdin ;; - [\\/$]*) - # Absolute (can't be DOS-style, as IFS=:) - test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 -echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - # Do quote $f, to prevent DOS paths from being IFS'd. - echo "$f";; - *) # Relative - if test -f "$f"; then - # Build tree - echo "$f" - elif test -f "$srcdir/$f"; then - # Source tree - echo "$srcdir/$f" - else - # /dev/null tree - { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 -echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - fi;; - esac - done` || { (exit 1); exit 1; } - # Remove the trailing spaces. - sed 's/[ ]*$//' $ac_file_inputs >$tmp/in - -_ACEOF - -# Transform confdefs.h into two sed scripts, `conftest.defines' and -# `conftest.undefs', that substitutes the proper values into -# config.h.in to produce config.h. The first handles `#define' -# templates, and the second `#undef' templates. -# And first: Protect against being on the right side of a sed subst in -# config.status. Protect against being in an unquoted here document -# in config.status. -rm -f conftest.defines conftest.undefs -# Using a here document instead of a string reduces the quoting nightmare. -# Putting comments in sed scripts is not portable. -# -# `end' is used to avoid that the second main sed command (meant for -# 0-ary CPP macros) applies to n-ary macro definitions. -# See the Autoconf documentation for `clear'. -cat >confdef2sed.sed <<\_ACEOF -s/[\\&,]/\\&/g -s,[\\$`],\\&,g -t clear -: clear -s,^[ ]*#[ ]*define[ ][ ]*\([^ (][^ (]*\)\(([^)]*)\)[ ]*\(.*\)$,${ac_dA}\1${ac_dB}\1\2${ac_dC}\3${ac_dD},gp -t end -s,^[ ]*#[ ]*define[ ][ ]*\([^ ][^ ]*\)[ ]*\(.*\)$,${ac_dA}\1${ac_dB}\1${ac_dC}\2${ac_dD},gp -: end -_ACEOF -# If some macros were called several times there might be several times -# the same #defines, which is useless. Nevertheless, we may not want to -# sort them, since we want the *last* AC-DEFINE to be honored. -uniq confdefs.h | sed -n -f confdef2sed.sed >conftest.defines -sed 's/ac_d/ac_u/g' conftest.defines >conftest.undefs -rm -f confdef2sed.sed - -# This sed command replaces #undef with comments. This is necessary, for -# example, in the case of _POSIX_SOURCE, which is predefined and required -# on some systems where configure will not decide to define it. -cat >>conftest.undefs <<\_ACEOF -s,^[ ]*#[ ]*undef[ ][ ]*[a-zA-Z_][a-zA-Z_0-9]*,/* & */, -_ACEOF - -# Break up conftest.defines because some shells have a limit on the size -# of here documents, and old seds have small limits too (100 cmds). -echo ' # Handle all the #define templates only if necessary.' >>$CONFIG_STATUS -echo ' if grep "^[ ]*#[ ]*define" $tmp/in >/dev/null; then' >>$CONFIG_STATUS -echo ' # If there are no defines, we may have an empty if/fi' >>$CONFIG_STATUS -echo ' :' >>$CONFIG_STATUS -rm -f conftest.tail -while grep . conftest.defines >/dev/null -do - # Write a limited-size here document to $tmp/defines.sed. - echo ' cat >$tmp/defines.sed <>$CONFIG_STATUS - # Speed up: don't consider the non `#define' lines. - echo '/^[ ]*#[ ]*define/!b' >>$CONFIG_STATUS - # Work around the forget-to-reset-the-flag bug. - echo 't clr' >>$CONFIG_STATUS - echo ': clr' >>$CONFIG_STATUS - sed ${ac_max_here_lines}q conftest.defines >>$CONFIG_STATUS - echo 'CEOF - sed -f $tmp/defines.sed $tmp/in >$tmp/out - rm -f $tmp/in - mv $tmp/out $tmp/in -' >>$CONFIG_STATUS - sed 1,${ac_max_here_lines}d conftest.defines >conftest.tail - rm -f conftest.defines - mv conftest.tail conftest.defines -done -rm -f conftest.defines -echo ' fi # grep' >>$CONFIG_STATUS -echo >>$CONFIG_STATUS - -# Break up conftest.undefs because some shells have a limit on the size -# of here documents, and old seds have small limits too (100 cmds). -echo ' # Handle all the #undef templates' >>$CONFIG_STATUS -rm -f conftest.tail -while grep . conftest.undefs >/dev/null -do - # Write a limited-size here document to $tmp/undefs.sed. - echo ' cat >$tmp/undefs.sed <>$CONFIG_STATUS - # Speed up: don't consider the non `#undef' - echo '/^[ ]*#[ ]*undef/!b' >>$CONFIG_STATUS - # Work around the forget-to-reset-the-flag bug. - echo 't clr' >>$CONFIG_STATUS - echo ': clr' >>$CONFIG_STATUS - sed ${ac_max_here_lines}q conftest.undefs >>$CONFIG_STATUS - echo 'CEOF - sed -f $tmp/undefs.sed $tmp/in >$tmp/out - rm -f $tmp/in - mv $tmp/out $tmp/in -' >>$CONFIG_STATUS - sed 1,${ac_max_here_lines}d conftest.undefs >conftest.tail - rm -f conftest.undefs - mv conftest.tail conftest.undefs -done -rm -f conftest.undefs - -cat >>$CONFIG_STATUS <<\_ACEOF - # Let's still pretend it is `configure' which instantiates (i.e., don't - # use $as_me), people would be surprised to read: - # /* config.h. Generated by config.status. */ - if test x"$ac_file" = x-; then - echo "/* Generated by configure. */" >$tmp/config.h - else - echo "/* $ac_file. Generated by configure. */" >$tmp/config.h - fi - cat $tmp/in >>$tmp/config.h - rm -f $tmp/in + -) cat "$ac_tmp/out" && rm -f "$ac_tmp/out";; + *) rm -f "$ac_file" && mv "$ac_tmp/out" "$ac_file";; + esac \ + || as_fn_error $? "could not create $ac_file" "$LINENO" 5 + ;; + :H) + # + # CONFIG_HEADER + # if test x"$ac_file" != x-; then - if diff $ac_file $tmp/config.h >/dev/null 2>&1; then - { echo "$as_me:$LINENO: $ac_file is unchanged" >&5 -echo "$as_me: $ac_file is unchanged" >&6;} + { + $as_echo "/* $configure_input */" \ + && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" + } >"$ac_tmp/config.h" \ + || as_fn_error $? "could not create $ac_file" "$LINENO" 5 + if diff "$ac_file" "$ac_tmp/config.h" >/dev/null 2>&1; then + { $as_echo "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5 +$as_echo "$as_me: $ac_file is unchanged" >&6;} else - ac_dir=`(dirname "$ac_file") 2>/dev/null || -$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$ac_file" : 'X\(//\)[^/]' \| \ - X"$ac_file" : 'X\(//\)$' \| \ - X"$ac_file" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$ac_file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - { if $as_mkdir_p; then - mkdir -p "$ac_dir" - else - as_dir="$ac_dir" - as_dirs= - while test ! -d "$as_dir"; do - as_dirs="$as_dir $as_dirs" - as_dir=`(dirname "$as_dir") 2>/dev/null || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - done - test ! -n "$as_dirs" || mkdir $as_dirs - fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5 -echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;} - { (exit 1); exit 1; }; }; } - - rm -f $ac_file - mv $tmp/config.h $ac_file + rm -f "$ac_file" + mv "$ac_tmp/config.h" "$ac_file" \ + || as_fn_error $? "could not create $ac_file" "$LINENO" 5 fi else - cat $tmp/config.h - rm -f $tmp/config.h + $as_echo "/* $configure_input */" \ + && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" \ + || as_fn_error $? "could not create -" "$LINENO" 5 fi -# Compute $ac_file's index in $config_headers. +# Compute "$ac_file"'s index in $config_headers. _am_stamp_count=1 for _am_header in $config_headers :; do case $_am_header in - $ac_file | $ac_file:* ) + "$ac_file" | "$ac_file":* ) break ;; * ) _am_stamp_count=`expr $_am_stamp_count + 1` ;; esac done -echo "timestamp for $ac_file" >`(dirname $ac_file) 2>/dev/null || -$as_expr X$ac_file : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X$ac_file : 'X\(//\)[^/]' \| \ - X$ac_file : 'X\(//\)$' \| \ - X$ac_file : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X$ac_file | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'`/stamp-h$_am_stamp_count -done -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF - -# -# CONFIG_COMMANDS section. -# -for ac_file in : $CONFIG_COMMANDS; do test "x$ac_file" = x: && continue - ac_dest=`echo "$ac_file" | sed 's,:.*,,'` - ac_source=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_dir=`(dirname "$ac_dest") 2>/dev/null || -$as_expr X"$ac_dest" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$ac_dest" : 'X\(//\)[^/]' \| \ - X"$ac_dest" : 'X\(//\)$' \| \ - X"$ac_dest" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$ac_dest" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - { if $as_mkdir_p; then - mkdir -p "$ac_dir" - else - as_dir="$ac_dir" - as_dirs= - while test ! -d "$as_dir"; do - as_dirs="$as_dir $as_dirs" - as_dir=`(dirname "$as_dir") 2>/dev/null || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - done - test ! -n "$as_dirs" || mkdir $as_dirs - fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5 -echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;} - { (exit 1); exit 1; }; }; } - - ac_builddir=. - -if test "$ac_dir" != .; then - ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` - # A "../" for each directory in $ac_dir_suffix. - ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'` -else - ac_dir_suffix= ac_top_builddir= -fi - -case $srcdir in - .) # No --srcdir option. We are building in place. - ac_srcdir=. - if test -z "$ac_top_builddir"; then - ac_top_srcdir=. - else - ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'` - fi ;; - [\\/]* | ?:[\\/]* ) # Absolute path. - ac_srcdir=$srcdir$ac_dir_suffix; - ac_top_srcdir=$srcdir ;; - *) # Relative path. - ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix - ac_top_srcdir=$ac_top_builddir$srcdir ;; -esac +echo "timestamp for "$ac_file"" >`$as_dirname -- "$ac_file" || +$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$ac_file" : 'X\(//\)[^/]' \| \ + X"$ac_file" : 'X\(//\)$' \| \ + X"$ac_file" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X"$ac_file" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'`/stamp-h$_am_stamp_count + ;; -# Do not use `cd foo && pwd` to compute absolute paths, because -# the directories may not exist. -case `pwd` in -.) ac_abs_builddir="$ac_dir";; -*) - case "$ac_dir" in - .) ac_abs_builddir=`pwd`;; - [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";; - *) ac_abs_builddir=`pwd`/"$ac_dir";; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_builddir=${ac_top_builddir}.;; -*) - case ${ac_top_builddir}. in - .) ac_abs_top_builddir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;; - *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_srcdir=$ac_srcdir;; -*) - case $ac_srcdir in - .) ac_abs_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;; - *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_srcdir=$ac_top_srcdir;; -*) - case $ac_top_srcdir in - .) ac_abs_top_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;; - *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;; - esac;; -esac + :C) { $as_echo "$as_me:${as_lineno-$LINENO}: executing $ac_file commands" >&5 +$as_echo "$as_me: executing $ac_file commands" >&6;} + ;; + esac - { echo "$as_me:$LINENO: executing $ac_dest commands" >&5 -echo "$as_me: executing $ac_dest commands" >&6;} - case $ac_dest in - depfiles ) test x"$AMDEP_TRUE" != x"" || for mf in $CONFIG_FILES; do + case $ac_file$ac_mode in + "depfiles":C) test x"$AMDEP_TRUE" != x"" || for mf in $CONFIG_FILES; do # Strip MF so we end up with the name of the file. mf=`echo "$mf" | sed -e 's/:.*$//'` # Check whether this is an Automake generated Makefile or not. @@ -21348,18 +20266,29 @@ echo "$as_me: executing $ac_dest commands" >&6;} # each Makefile.in and add a new line on top of each file to say so. # So let's grep whole file. if grep '^#.*generated by automake' $mf > /dev/null 2>&1; then - dirpart=`(dirname "$mf") 2>/dev/null || + dirpart=`$as_dirname -- "$mf" || $as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$mf" : 'X\(//\)[^/]' \| \ X"$mf" : 'X\(//\)$' \| \ - X"$mf" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$mf" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` + X"$mf" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X"$mf" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` else continue fi @@ -21387,59 +20316,47 @@ echo X"$mf" | sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do # Make sure the directory exists. test -f "$dirpart/$file" && continue - fdir=`(dirname "$file") 2>/dev/null || + fdir=`$as_dirname -- "$file" || $as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$file" : 'X\(//\)[^/]' \| \ X"$file" : 'X\(//\)$' \| \ - X"$file" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - { if $as_mkdir_p; then - mkdir -p $dirpart/$fdir - else - as_dir=$dirpart/$fdir - as_dirs= - while test ! -d "$as_dir"; do - as_dirs="$as_dir $as_dirs" - as_dir=`(dirname "$as_dir") 2>/dev/null || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - done - test ! -n "$as_dirs" || mkdir $as_dirs - fi || { { echo "$as_me:$LINENO: error: cannot create directory $dirpart/$fdir" >&5 -echo "$as_me: error: cannot create directory $dirpart/$fdir" >&2;} - { (exit 1); exit 1; }; }; } - + X"$file" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X"$file" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + as_dir=$dirpart/$fdir; as_fn_mkdir_p # echo "creating $dirpart/$file" echo '# dummy' > "$dirpart/$file" done done ;; + esac -done -_ACEOF +done # for ac_tag -cat >>$CONFIG_STATUS <<\_ACEOF -{ (exit 0); exit 0; } +as_fn_exit 0 _ACEOF -chmod +x $CONFIG_STATUS ac_clean_files=$ac_clean_files_save +test $ac_write_fail = 0 || + as_fn_error $? "write failure creating $CONFIG_STATUS" "$LINENO" 5 + # configure is writing to config.log, and then calls config.status. # config.status does its own redirection, appending to config.log. @@ -21459,6 +20376,10 @@ if test "$no_create" != yes; then exec 5>>config.log # Use ||, not &&, to avoid exiting from the if with $? = 1, which # would make configure fail if this is the last instruction. - $ac_cs_success || { (exit 1); exit 1; } + $ac_cs_success || as_fn_exit 1 +fi +if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5 +$as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;} fi diff --git a/release/src/router/libnfnetlink/Makefile b/release/src/router/libnfnetlink/Makefile index 994e89e33e..b6144f985e 100644 --- a/release/src/router/libnfnetlink/Makefile +++ b/release/src/router/libnfnetlink/Makefile @@ -167,13 +167,13 @@ distuninstallcheck_listfiles = find . -type f -print am__distuninstallcheck_listfiles = $(distuninstallcheck_listfiles) \ | sed 's|^\./|$(prefix)/|' | grep -v '$(infodir)/dir$$' distcleancheck_listfiles = find . -type f -print -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src-rt/router/libnfnetlink/build-aux/missing --run aclocal-1.11 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/libnfnetlink/build-aux/missing --run aclocal-1.11 AMTAR = $${TAR-tar} AM_DEFAULT_VERBOSITY = 0 AR = mipsel-uclibc-ar -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src-rt/router/libnfnetlink/build-aux/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src-rt/router/libnfnetlink/build-aux/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src-rt/router/libnfnetlink/build-aux/missing --run automake-1.11 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/libnfnetlink/build-aux/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/libnfnetlink/build-aux/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/libnfnetlink/build-aux/missing --run automake-1.11 AWK = gawk CC = mipsel-uclibc-gcc CCDEPMODE = depmode=gcc3 @@ -206,7 +206,7 @@ LIBTOOL = $(SHELL) $(top_builddir)/libtool LIPO = LN_S = ln -s LTLIBOBJS = -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src-rt/router/libnfnetlink/build-aux/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/libnfnetlink/build-aux/missing --run makeinfo MANIFEST_TOOL = : MKDIR_P = /bin/mkdir -p NM = mipsel-uclibc-nm @@ -229,10 +229,10 @@ SET_MAKE = SHELL = /bin/sh STRIP = mipsel-uclibc-strip VERSION = 1.0.1 -abs_builddir = /home/vicente/tomato/release/src-rt/router/libnfnetlink -abs_srcdir = /home/vicente/tomato/release/src-rt/router/libnfnetlink -abs_top_builddir = /home/vicente/tomato/release/src-rt/router/libnfnetlink -abs_top_srcdir = /home/vicente/tomato/release/src-rt/router/libnfnetlink +abs_builddir = /home/vicente/repos/tomato/release/src-rt/router/libnfnetlink +abs_srcdir = /home/vicente/repos/tomato/release/src-rt/router/libnfnetlink +abs_top_builddir = /home/vicente/repos/tomato/release/src-rt/router/libnfnetlink +abs_top_srcdir = /home/vicente/repos/tomato/release/src-rt/router/libnfnetlink ac_ct_AR = ac_ct_CC = ac_ct_DUMPBIN = @@ -261,7 +261,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = ${SHELL} /home/vicente/tomato/release/src-rt/router/libnfnetlink/build-aux/install-sh +install_sh = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/libnfnetlink/build-aux/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = ${datarootdir}/locale diff --git a/release/src/router/libnfnetlink/config.log b/release/src/router/libnfnetlink/config.log deleted file mode 100644 index 84501a340d..0000000000 --- a/release/src/router/libnfnetlink/config.log +++ /dev/null @@ -1,615 +0,0 @@ -This file contains any messages produced by compilers while -running configure, to aid debugging if configure makes a mistake. - -It was created by libnfnetlink configure 1.0.1, which was -generated by GNU Autoconf 2.69. Invocation command line was - - $ ./configure --host=mipsel-linux --build=x86_64-linux-gnu --prefix=/usr --enable-shared --enable-static - -## --------- ## -## Platform. ## -## --------- ## - -hostname = vicente-P5K-E -uname -m = x86_64 -uname -r = 3.2.0-47-generic -uname -s = Linux -uname -v = #72-Ubuntu SMP Mon Jun 3 17:53:49 UTC 2013 - -/usr/bin/uname -p = unknown -/bin/uname -X = unknown - -/bin/arch = unknown -/usr/bin/arch -k = unknown -/usr/convex/getsysinfo = unknown -/usr/bin/hostinfo = unknown -/bin/machine = unknown -/usr/bin/oslevel = unknown -/bin/universe = unknown - -PATH: /home/vicente/tomato/release/tools -PATH: /home/vicente/tomato/release/tools -PATH: /home/vicente/tomato/release/tools -PATH: /home/vicente/tomato/release/tools -PATH: /opt/brcm/hndtools-mipsel-uclibc/bin -PATH: /opt/brcm/hndtools-mipsel-linux/bin -PATH: /usr/lib/lightdm/lightdm -PATH: /usr/local/sbin -PATH: /usr/local/bin -PATH: /usr/sbin -PATH: /usr/bin -PATH: /sbin -PATH: /bin -PATH: /usr/games - - -## ----------- ## -## Core tests. ## -## ----------- ## - -configure:2142: checking build system type -configure:2156: result: x86_64-pc-linux-gnu -configure:2176: checking host system type -configure:2189: result: mipsel-unknown-linux-gnu -configure:2226: checking for a BSD-compatible install -configure:2294: result: /usr/bin/install -c -configure:2305: checking whether build environment is sane -configure:2355: result: yes -configure:2404: checking for mipsel-linux-strip -configure:2431: result: mipsel-uclibc-strip -configure:2496: checking for a thread-safe mkdir -p -configure:2535: result: /bin/mkdir -p -configure:2548: checking for gawk -configure:2564: found /usr/bin/gawk -configure:2575: result: gawk -configure:2586: checking whether make sets $(MAKE) -configure:2608: result: yes -configure:2683: checking how to create a pax tar archive -configure:2696: tar --version -tar (GNU tar) 1.26 -Copyright (C) 2011 Free Software Foundation, Inc. -License GPLv3+: GNU GPL version 3 or later . -This is free software: you are free to change and redistribute it. -There is NO WARRANTY, to the extent permitted by law. - -Written by John Gilmore and Jay Fenlason. -configure:2699: $? = 0 -configure:2739: tardir=conftest.dir && eval tar --format=posix -chf - "$tardir" >conftest.tar -configure:2742: $? = 0 -configure:2746: tar -xf - &5 -mipsel-uclibc-gcc (GCC) 4.2.4 -Copyright (C) 2007 Free Software Foundation, Inc. -This is free software; see the source for copying conditions. There is NO -warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - -configure:3134: $? = 0 -configure:3123: mipsel-uclibc-gcc -v >&5 -Using built-in specs. -Target: mipsel-linux-uclibc -Configured with: /home/fedork/tomato/toolchain/build_dir/toolchain-mipsel_gcc4.2.4/gcc-4.2.4/configure --prefix=/opt/brcm/hndtools-mipsel-uclibc-4.2.4 --build=i486-linux-gnu --host=i486-linux-gnu --target=mipsel-linux-uclibc --with-gnu-ld --enable-target-optspace --disable-libgomp --disable-libmudflap --disable-multilib --disable-nls --disable-__cxa_atexit --enable-libssp --enable-languages=c,c++ --enable-shared --enable-threads --enable-tls -Thread model: posix -gcc version 4.2.4 -configure:3134: $? = 0 -configure:3123: mipsel-uclibc-gcc -V >&5 -mipsel-uclibc-gcc: '-V' option must have argument -configure:3134: $? = 1 -configure:3123: mipsel-uclibc-gcc -qversion >&5 -mipsel-uclibc-gcc: unrecognized option '-qversion' -mipsel-uclibc-gcc: no input files -configure:3134: $? = 1 -configure:3154: checking whether the C compiler works -configure:3176: mipsel-uclibc-gcc -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -ffunction-sections -fdata-sections -Wl,--gc-sections conftest.c >&5 -configure:3180: $? = 0 -configure:3228: result: yes -configure:3231: checking for C compiler default output file name -configure:3233: result: a.out -configure:3239: checking for suffix of executables -configure:3246: mipsel-uclibc-gcc -o conftest -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -ffunction-sections -fdata-sections -Wl,--gc-sections conftest.c >&5 -configure:3250: $? = 0 -configure:3272: result: -configure:3294: checking whether we are cross compiling -configure:3332: result: yes -configure:3337: checking for suffix of object files -configure:3359: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections conftest.c >&5 -configure:3363: $? = 0 -configure:3384: result: o -configure:3388: checking whether we are using the GNU C compiler -configure:3407: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections conftest.c >&5 -configure:3407: $? = 0 -configure:3416: result: yes -configure:3425: checking whether mipsel-uclibc-gcc accepts -g -configure:3445: mipsel-uclibc-gcc -c -g conftest.c >&5 -configure:3445: $? = 0 -configure:3486: result: yes -configure:3503: checking for mipsel-uclibc-gcc option to accept ISO C89 -configure:3566: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections conftest.c >&5 -configure:3566: $? = 0 -configure:3579: result: none needed -configure:3610: checking for style of include used by make -configure:3638: result: GNU -configure:3664: checking dependency style of mipsel-uclibc-gcc -configure:3775: result: gcc3 -configure:3791: checking whether mipsel-uclibc-gcc and cc understand -c and -o together -configure:3822: mipsel-uclibc-gcc -c conftest.c -o conftest2.o >&5 -configure:3826: $? = 0 -configure:3832: mipsel-uclibc-gcc -c conftest.c -o conftest2.o >&5 -configure:3836: $? = 0 -configure:3847: cc -c conftest.c >&5 -configure:3851: $? = 0 -configure:3859: cc -c conftest.c -o conftest2.o >&5 -configure:3863: $? = 0 -configure:3869: cc -c conftest.c -o conftest2.o >&5 -configure:3873: $? = 0 -configure:3891: result: yes -configure:3993: checking how to print strings -configure:4020: result: printf -configure:4041: checking for a sed that does not truncate output -configure:4105: result: /bin/sed -configure:4123: checking for grep that handles long lines and -e -configure:4181: result: /bin/grep -configure:4186: checking for egrep -configure:4248: result: /bin/grep -E -configure:4253: checking for fgrep -configure:4315: result: /bin/grep -F -configure:4350: checking for ld used by mipsel-uclibc-gcc -configure:4417: result: mipsel-uclibc-ld -configure:4424: checking if the linker (mipsel-uclibc-ld) is GNU ld -configure:4439: result: yes -configure:4451: checking for BSD- or MS-compatible name lister (nm) -configure:4500: result: mipsel-uclibc-nm -configure:4630: checking the name lister (mipsel-uclibc-nm) interface -configure:4637: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections conftest.c >&5 -configure:4640: mipsel-uclibc-nm "conftest.o" -configure:4643: output -00000000 B some_variable -configure:4650: result: BSD nm -configure:4653: checking whether ln -s works -configure:4657: result: yes -configure:4665: checking the maximum length of command line arguments -configure:4795: result: 3458764513820540925 -configure:4812: checking whether the shell understands some XSI constructs -configure:4822: result: yes -configure:4826: checking whether the shell understands "+=" -configure:4832: result: yes -configure:4867: checking how to convert x86_64-pc-linux-gnu file names to mipsel-unknown-linux-gnu format -configure:4907: result: func_convert_file_noop -configure:4914: checking how to convert x86_64-pc-linux-gnu file names to toolchain format -configure:4934: result: func_convert_file_noop -configure:4941: checking for mipsel-uclibc-ld option to reload object files -configure:4948: result: -r -configure:4982: checking for mipsel-linux-objdump -configure:4998: found /opt/brcm/hndtools-mipsel-uclibc/bin/mipsel-linux-objdump -configure:5009: result: mipsel-linux-objdump -configure:5081: checking how to recognize dependent libraries -configure:5279: result: pass_all -configure:5324: checking for mipsel-linux-dlltool -configure:5354: result: no -configure:5364: checking for dlltool -configure:5394: result: no -configure:5424: checking how to associate runtime and link libraries -configure:5451: result: printf %s\n -configure:5468: checking for mipsel-linux-ar -configure:5495: result: mipsel-uclibc-ar -configure:5576: checking for archiver @FILE support -configure:5593: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections conftest.c >&5 -configure:5593: $? = 0 -configure:5596: mipsel-uclibc-ar cru libconftest.a @conftest.lst >&5 -configure:5599: $? = 0 -configure:5604: mipsel-uclibc-ar cru libconftest.a @conftest.lst >&5 -mipsel-uclibc-ar: conftest.o: No such file or directory -configure:5607: $? = 1 -configure:5619: result: @ -configure:5637: checking for mipsel-linux-strip -configure:5664: result: mipsel-uclibc-strip -configure:5736: checking for mipsel-linux-ranlib -configure:5763: result: mipsel-uclibc-ranlib -configure:5905: checking command to parse mipsel-uclibc-nm output from mipsel-uclibc-gcc object -configure:6025: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections conftest.c >&5 -configure:6028: $? = 0 -configure:6032: mipsel-uclibc-nm conftest.o \| sed -n -e 's/^.*[ ]\([ABCDGIRSTW][ABCDGIRSTW]*\)[ ][ ]*\([_A-Za-z][_A-Za-z0-9]*\)$/\1 \2 \2/p' | sed '/ __gnu_lto/d' \> conftest.nm -configure:6035: $? = 0 -configure:6101: mipsel-uclibc-gcc -o conftest -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -ffunction-sections -fdata-sections -Wl,--gc-sections conftest.c conftstm.o >&5 -configure:6104: $? = 0 -configure:6142: result: ok -configure:6179: checking for sysroot -configure:6209: result: no -configure:6425: checking for mipsel-linux-mt -configure:6455: result: no -configure:6465: checking for mt -configure:6481: found /bin/mt -configure:6492: result: mt -configure:6504: WARNING: using cross tools not prefixed with host triplet -configure:6515: checking if mt is a manifest tool -configure:6521: mt '-?' -configure:6529: result: no -configure:7171: checking how to run the C preprocessor -configure:7202: mipsel-uclibc-gcc -E conftest.c -configure:7202: $? = 0 -configure:7216: mipsel-uclibc-gcc -E conftest.c -conftest.c:11:28: error: ac_nonexistent.h: No such file or directory -configure:7216: $? = 1 -configure: failed program was: -| /* confdefs.h */ -| #define PACKAGE_NAME "libnfnetlink" -| #define PACKAGE_TARNAME "libnfnetlink" -| #define PACKAGE_VERSION "1.0.1" -| #define PACKAGE_STRING "libnfnetlink 1.0.1" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE_URL "" -| #define PACKAGE "libnfnetlink" -| #define VERSION "1.0.1" -| /* end confdefs.h. */ -| #include -configure:7241: result: mipsel-uclibc-gcc -E -configure:7261: mipsel-uclibc-gcc -E conftest.c -configure:7261: $? = 0 -configure:7275: mipsel-uclibc-gcc -E conftest.c -conftest.c:11:28: error: ac_nonexistent.h: No such file or directory -configure:7275: $? = 1 -configure: failed program was: -| /* confdefs.h */ -| #define PACKAGE_NAME "libnfnetlink" -| #define PACKAGE_TARNAME "libnfnetlink" -| #define PACKAGE_VERSION "1.0.1" -| #define PACKAGE_STRING "libnfnetlink 1.0.1" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE_URL "" -| #define PACKAGE "libnfnetlink" -| #define VERSION "1.0.1" -| /* end confdefs.h. */ -| #include -configure:7304: checking for ANSI C header files -configure:7324: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections conftest.c >&5 -configure:7324: $? = 0 -configure:7408: result: yes -configure:7421: checking for sys/types.h -configure:7421: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections conftest.c >&5 -configure:7421: $? = 0 -configure:7421: result: yes -configure:7421: checking for sys/stat.h -configure:7421: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections conftest.c >&5 -configure:7421: $? = 0 -configure:7421: result: yes -configure:7421: checking for stdlib.h -configure:7421: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections conftest.c >&5 -configure:7421: $? = 0 -configure:7421: result: yes -configure:7421: checking for string.h -configure:7421: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections conftest.c >&5 -configure:7421: $? = 0 -configure:7421: result: yes -configure:7421: checking for memory.h -configure:7421: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections conftest.c >&5 -configure:7421: $? = 0 -configure:7421: result: yes -configure:7421: checking for strings.h -configure:7421: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections conftest.c >&5 -configure:7421: $? = 0 -configure:7421: result: yes -configure:7421: checking for inttypes.h -configure:7421: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections conftest.c >&5 -configure:7421: $? = 0 -configure:7421: result: yes -configure:7421: checking for stdint.h -configure:7421: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections conftest.c >&5 -configure:7421: $? = 0 -configure:7421: result: yes -configure:7421: checking for unistd.h -configure:7421: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections conftest.c >&5 -configure:7421: $? = 0 -configure:7421: result: yes -configure:7435: checking for dlfcn.h -configure:7435: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections conftest.c >&5 -configure:7435: $? = 0 -configure:7435: result: yes -configure:7611: checking for objdir -configure:7626: result: .libs -configure:7897: checking if mipsel-uclibc-gcc supports -fno-rtti -fno-exceptions -configure:7915: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fno-rtti -fno-exceptions conftest.c >&5 -cc1: warning: command line option "-fno-rtti" is valid for C++/ObjC++ but not for C -configure:7919: $? = 0 -configure:7932: result: no -configure:8259: checking for mipsel-uclibc-gcc option to produce PIC -configure:8266: result: -fPIC -DPIC -configure:8274: checking if mipsel-uclibc-gcc PIC flag -fPIC -DPIC works -configure:8292: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -fPIC -DPIC -DPIC conftest.c >&5 -configure:8296: $? = 0 -configure:8309: result: yes -configure:8338: checking if mipsel-uclibc-gcc static flag -static works -configure:8366: result: yes -configure:8381: checking if mipsel-uclibc-gcc supports -c -o file.o -configure:8402: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -o out/conftest2.o conftest.c >&5 -configure:8406: $? = 0 -configure:8428: result: yes -configure:8436: checking if mipsel-uclibc-gcc supports -c -o file.o -configure:8483: result: yes -configure:8516: checking whether the mipsel-uclibc-gcc linker (mipsel-uclibc-ld) supports shared libraries -configure:9673: result: yes -configure:9710: checking whether -lc should be explicitly linked in -configure:9718: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections conftest.c >&5 -configure:9721: $? = 0 -configure:9736: mipsel-uclibc-gcc -shared -fPIC -DPIC conftest.o -v -Wl,-soname -Wl,conftest -o conftest 2\>\&1 \| /bin/grep -lc \>/dev/null 2\>\&1 -configure:9739: $? = 0 -configure:9753: result: no -configure:9913: checking dynamic linker characteristics -configure:10413: mipsel-uclibc-gcc -o conftest -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -ffunction-sections -fdata-sections -Wl,--gc-sections -Wl,-rpath -Wl,/foo conftest.c >&5 -configure:10413: $? = 0 -configure:10647: result: GNU/Linux ld.so -configure:10754: checking how to hardcode library paths into programs -configure:10779: result: immediate -configure:11319: checking whether stripping libraries is possible -configure:11324: result: yes -configure:11359: checking if libtool supports shared libraries -configure:11361: result: yes -configure:11364: checking whether to build shared libraries -configure:11385: result: yes -configure:11388: checking whether to build static libraries -configure:11392: result: yes -configure:11606: creating ./config.status - -## ---------------------- ## -## Running config.status. ## -## ---------------------- ## - -This file was extended by libnfnetlink config.status 1.0.1, which was -generated by GNU Autoconf 2.69. Invocation command line was - - CONFIG_FILES = - CONFIG_HEADERS = - CONFIG_LINKS = - CONFIG_COMMANDS = - $ ./config.status - -on vicente-P5K-E - -config.status:1008: creating Makefile -config.status:1008: creating src/Makefile -config.status:1008: creating include/Makefile -config.status:1008: creating include/libnfnetlink/Makefile -config.status:1008: creating utils/Makefile -config.status:1008: creating libnfnetlink.pc -config.status:1180: executing depfiles commands -config.status:1180: executing libtool commands - -## ---------------- ## -## Cache variables. ## -## ---------------- ## - -ac_cv_build=x86_64-pc-linux-gnu -ac_cv_c_compiler_gnu=yes -ac_cv_env_CC_set=set -ac_cv_env_CC_value=mipsel-uclibc-gcc -ac_cv_env_CFLAGS_set=set -ac_cv_env_CFLAGS_value='-Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections' -ac_cv_env_CPPFLAGS_set= -ac_cv_env_CPPFLAGS_value= -ac_cv_env_CPP_set= -ac_cv_env_CPP_value= -ac_cv_env_LDFLAGS_set=set -ac_cv_env_LDFLAGS_value='-ffunction-sections -fdata-sections -Wl,--gc-sections' -ac_cv_env_LIBS_set= -ac_cv_env_LIBS_value= -ac_cv_env_build_alias_set=set -ac_cv_env_build_alias_value=x86_64-linux-gnu -ac_cv_env_host_alias_set=set -ac_cv_env_host_alias_value=mipsel-linux -ac_cv_env_target_alias_set= -ac_cv_env_target_alias_value= -ac_cv_func_malloc_0_nonnull=yes -ac_cv_header_dlfcn_h=yes -ac_cv_header_inttypes_h=yes -ac_cv_header_memory_h=yes -ac_cv_header_stdc=yes -ac_cv_header_stdint_h=yes -ac_cv_header_stdlib_h=yes -ac_cv_header_string_h=yes -ac_cv_header_strings_h=yes -ac_cv_header_sys_stat_h=yes -ac_cv_header_sys_types_h=yes -ac_cv_header_unistd_h=yes -ac_cv_host=mipsel-unknown-linux-gnu -ac_cv_objext=o -ac_cv_path_EGREP='/bin/grep -E' -ac_cv_path_FGREP='/bin/grep -F' -ac_cv_path_GREP=/bin/grep -ac_cv_path_SED=/bin/sed -ac_cv_path_install='/usr/bin/install -c' -ac_cv_path_mkdir=/bin/mkdir -ac_cv_prog_AR=mipsel-uclibc-ar -ac_cv_prog_AWK=gawk -ac_cv_prog_CC=mipsel-uclibc-gcc -ac_cv_prog_CPP='mipsel-uclibc-gcc -E' -ac_cv_prog_OBJDUMP=mipsel-linux-objdump -ac_cv_prog_RANLIB=mipsel-uclibc-ranlib -ac_cv_prog_STRIP=mipsel-uclibc-strip -ac_cv_prog_ac_ct_MANIFEST_TOOL=mt -ac_cv_prog_cc_c89= -ac_cv_prog_cc_g=yes -ac_cv_prog_cc_mipsel_uclibc_gcc_c_o=yes -ac_cv_prog_make_make_set=yes -am_cv_CC_dependencies_compiler_type=gcc3 -am_cv_make_support_nested_variables=yes -am_cv_prog_tar_pax=gnutar -lt_cv_ar_at_file=@ -lt_cv_archive_cmds_need_lc=no -lt_cv_deplibs_check_method=pass_all -lt_cv_file_magic_cmd='$MAGIC_CMD' -lt_cv_file_magic_test_file= -lt_cv_ld_reload_flag=-r -lt_cv_nm_interface='BSD nm' -lt_cv_objdir=.libs -lt_cv_path_LD=mipsel-uclibc-ld -lt_cv_path_NM=mipsel-uclibc-nm -lt_cv_path_mainfest_tool=no -lt_cv_prog_compiler_c_o=yes -lt_cv_prog_compiler_pic='-fPIC -DPIC' -lt_cv_prog_compiler_pic_works=yes -lt_cv_prog_compiler_rtti_exceptions=no -lt_cv_prog_compiler_static_works=yes -lt_cv_prog_gnu_ld=yes -lt_cv_sharedlib_from_linklib_cmd='printf %s\n' -lt_cv_shlibpath_overrides_runpath=no -lt_cv_sys_global_symbol_pipe='sed -n -e '\''s/^.*[ ]\([ABCDGIRSTW][ABCDGIRSTW]*\)[ ][ ]*\([_A-Za-z][_A-Za-z0-9]*\)$/\1 \2 \2/p'\'' | sed '\''/ __gnu_lto/d'\''' -lt_cv_sys_global_symbol_to_c_name_address='sed -n -e '\''s/^: \([^ ]*\)[ ]*$/ {\"\1\", (void *) 0},/p'\'' -e '\''s/^[ABCDGIRSTW]* \([^ ]*\) \([^ ]*\)$/ {"\2", (void *) \&\2},/p'\''' -lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='sed -n -e '\''s/^: \([^ ]*\)[ ]*$/ {\"\1\", (void *) 0},/p'\'' -e '\''s/^[ABCDGIRSTW]* \([^ ]*\) \(lib[^ ]*\)$/ {"\2", (void *) \&\2},/p'\'' -e '\''s/^[ABCDGIRSTW]* \([^ ]*\) \([^ ]*\)$/ {"lib\2", (void *) \&\2},/p'\''' -lt_cv_sys_global_symbol_to_cdecl='sed -n -e '\''s/^T .* \(.*\)$/extern int \1();/p'\'' -e '\''s/^[ABCDGIRSTW]* .* \(.*\)$/extern char \1;/p'\''' -lt_cv_sys_max_cmd_len=3458764513820540925 -lt_cv_to_host_file_cmd=func_convert_file_noop -lt_cv_to_tool_file_cmd=func_convert_file_noop - -## ----------------- ## -## Output variables. ## -## ----------------- ## - -ACLOCAL='${SHELL} /home/vicente/tomato/release/src-rt/router/libnfnetlink/build-aux/missing --run aclocal-1.11' -AMDEPBACKSLASH='\' -AMDEP_FALSE='#' -AMDEP_TRUE='' -AMTAR='$${TAR-tar}' -AM_BACKSLASH='\' -AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)' -AM_DEFAULT_VERBOSITY='0' -AM_V='$(V)' -AR='mipsel-uclibc-ar' -AUTOCONF='${SHELL} /home/vicente/tomato/release/src-rt/router/libnfnetlink/build-aux/missing --run autoconf' -AUTOHEADER='${SHELL} /home/vicente/tomato/release/src-rt/router/libnfnetlink/build-aux/missing --run autoheader' -AUTOMAKE='${SHELL} /home/vicente/tomato/release/src-rt/router/libnfnetlink/build-aux/missing --run automake-1.11' -AWK='gawk' -CC='mipsel-uclibc-gcc' -CCDEPMODE='depmode=gcc3' -CFLAGS='-Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections' -CPP='mipsel-uclibc-gcc -E' -CPPFLAGS='' -CYGPATH_W='echo' -DEFS='-DPACKAGE_NAME=\"libnfnetlink\" -DPACKAGE_TARNAME=\"libnfnetlink\" -DPACKAGE_VERSION=\"1.0.1\" -DPACKAGE_STRING=\"libnfnetlink\ 1.0.1\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DPACKAGE=\"libnfnetlink\" -DVERSION=\"1.0.1\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\"' -DEPDIR='.deps' -DLLTOOL='false' -DSYMUTIL='' -DUMPBIN='' -ECHO_C='' -ECHO_N='-n' -ECHO_T='' -EGREP='/bin/grep -E' -EXEEXT='' -FGREP='/bin/grep -F' -GREP='/bin/grep' -INSTALL_DATA='${INSTALL} -m 644' -INSTALL_PROGRAM='${INSTALL}' -INSTALL_SCRIPT='${INSTALL}' -INSTALL_STRIP_PROGRAM='$(install_sh) -c -s' -LD='mipsel-uclibc-ld' -LDFLAGS='-ffunction-sections -fdata-sections -Wl,--gc-sections' -LIBOBJS='' -LIBS='' -LIBTOOL='$(SHELL) $(top_builddir)/libtool' -LIPO='' -LN_S='ln -s' -LTLIBOBJS='' -MAKEINFO='${SHELL} /home/vicente/tomato/release/src-rt/router/libnfnetlink/build-aux/missing --run makeinfo' -MANIFEST_TOOL=':' -MKDIR_P='/bin/mkdir -p' -NM='mipsel-uclibc-nm' -NMEDIT='' -OBJDUMP='mipsel-linux-objdump' -OBJEXT='o' -OTOOL64='' -OTOOL='' -PACKAGE='libnfnetlink' -PACKAGE_BUGREPORT='' -PACKAGE_NAME='libnfnetlink' -PACKAGE_STRING='libnfnetlink 1.0.1' -PACKAGE_TARNAME='libnfnetlink' -PACKAGE_URL='' -PACKAGE_VERSION='1.0.1' -PATH_SEPARATOR=':' -RANLIB='mipsel-uclibc-ranlib' -SED='/bin/sed' -SET_MAKE='' -SHELL='/bin/sh' -STRIP='mipsel-uclibc-strip' -VERSION='1.0.1' -ac_ct_AR='' -ac_ct_CC='' -ac_ct_DUMPBIN='' -am__EXEEXT_FALSE='' -am__EXEEXT_TRUE='#' -am__fastdepCC_FALSE='#' -am__fastdepCC_TRUE='' -am__include='include' -am__isrc='' -am__leading_dot='.' -am__nodep='_no' -am__quote='' -am__tar='tar --format=posix -chf - "$$tardir"' -am__untar='tar -xf -' -bindir='${exec_prefix}/bin' -build='x86_64-pc-linux-gnu' -build_alias='x86_64-linux-gnu' -build_cpu='x86_64' -build_os='linux-gnu' -build_vendor='pc' -datadir='${datarootdir}' -datarootdir='${prefix}/share' -docdir='${datarootdir}/doc/${PACKAGE_TARNAME}' -dvidir='${docdir}' -exec_prefix='${prefix}' -host='mipsel-unknown-linux-gnu' -host_alias='mipsel-linux' -host_cpu='mipsel' -host_os='linux-gnu' -host_vendor='unknown' -htmldir='${docdir}' -includedir='${prefix}/include' -infodir='${datarootdir}/info' -install_sh='${SHELL} /home/vicente/tomato/release/src-rt/router/libnfnetlink/build-aux/install-sh' -libdir='${exec_prefix}/lib' -libexecdir='${exec_prefix}/libexec' -localedir='${datarootdir}/locale' -localstatedir='${prefix}/var' -mandir='${datarootdir}/man' -mkdir_p='/bin/mkdir -p' -oldincludedir='/usr/include' -pdfdir='${docdir}' -prefix='/usr' -program_transform_name='s,x,x,' -psdir='${docdir}' -sbindir='${exec_prefix}/sbin' -sharedstatedir='${prefix}/com' -sysconfdir='${prefix}/etc' -target_alias='' - -## ----------- ## -## confdefs.h. ## -## ----------- ## - -/* confdefs.h */ -#define PACKAGE_NAME "libnfnetlink" -#define PACKAGE_TARNAME "libnfnetlink" -#define PACKAGE_VERSION "1.0.1" -#define PACKAGE_STRING "libnfnetlink 1.0.1" -#define PACKAGE_BUGREPORT "" -#define PACKAGE_URL "" -#define PACKAGE "libnfnetlink" -#define VERSION "1.0.1" -#define STDC_HEADERS 1 -#define HAVE_SYS_TYPES_H 1 -#define HAVE_SYS_STAT_H 1 -#define HAVE_STDLIB_H 1 -#define HAVE_STRING_H 1 -#define HAVE_MEMORY_H 1 -#define HAVE_STRINGS_H 1 -#define HAVE_INTTYPES_H 1 -#define HAVE_STDINT_H 1 -#define HAVE_UNISTD_H 1 -#define HAVE_DLFCN_H 1 -#define LT_OBJDIR ".libs/" - -configure: exit 0 diff --git a/release/src/router/libnfnetlink/config.status b/release/src/router/libnfnetlink/config.status deleted file mode 100755 index 489a8eeadf..0000000000 --- a/release/src/router/libnfnetlink/config.status +++ /dev/null @@ -1,1917 +0,0 @@ -#! /bin/sh -# Generated by configure. -# Run this file to recreate the current configuration. -# Compiler output produced by configure, useful for debugging -# configure, is in config.log if it exists. - -debug=false -ac_cs_recheck=false -ac_cs_silent=false - -SHELL=${CONFIG_SHELL-/bin/sh} -export SHELL -## -------------------- ## -## M4sh Initialization. ## -## -------------------- ## - -# Be more Bourne compatible -DUALCASE=1; export DUALCASE # for MKS sh -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then : - emulate sh - NULLCMD=: - # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which - # is contrary to our usage. Disable this feature. - alias -g '${1+"$@"}'='"$@"' - setopt NO_GLOB_SUBST -else - case `(set -o) 2>/dev/null` in #( - *posix*) : - set -o posix ;; #( - *) : - ;; -esac -fi - - -as_nl=' -' -export as_nl -# Printing a long string crashes Solaris 7 /usr/bin/printf. -as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' -as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo -as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo -# Prefer a ksh shell builtin over an external printf program on Solaris, -# but without wasting forks for bash or zsh. -if test -z "$BASH_VERSION$ZSH_VERSION" \ - && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then - as_echo='print -r --' - as_echo_n='print -rn --' -elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then - as_echo='printf %s\n' - as_echo_n='printf %s' -else - if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then - as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"' - as_echo_n='/usr/ucb/echo -n' - else - as_echo_body='eval expr "X$1" : "X\\(.*\\)"' - as_echo_n_body='eval - arg=$1; - case $arg in #( - *"$as_nl"*) - expr "X$arg" : "X\\(.*\\)$as_nl"; - arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;; - esac; - expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl" - ' - export as_echo_n_body - as_echo_n='sh -c $as_echo_n_body as_echo' - fi - export as_echo_body - as_echo='sh -c $as_echo_body as_echo' -fi - -# The user is always right. -if test "${PATH_SEPARATOR+set}" != set; then - PATH_SEPARATOR=: - (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { - (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || - PATH_SEPARATOR=';' - } -fi - - -# IFS -# We need space, tab and new line, in precisely that order. Quoting is -# there to prevent editors from complaining about space-tab. -# (If _AS_PATH_WALK were called with IFS unset, it would disable word -# splitting by setting IFS to empty value.) -IFS=" "" $as_nl" - -# Find who we are. Look in the path if we contain no directory separator. -as_myself= -case $0 in #(( - *[\\/]* ) as_myself=$0 ;; - *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break - done -IFS=$as_save_IFS - - ;; -esac -# We did not find ourselves, most probably we were run as `sh COMMAND' -# in which case we are not to be found in the path. -if test "x$as_myself" = x; then - as_myself=$0 -fi -if test ! -f "$as_myself"; then - $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 - exit 1 -fi - -# Unset variables that we do not need and which cause bugs (e.g. in -# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1" -# suppresses any "Segmentation fault" message there. '((' could -# trigger a bug in pdksh 5.2.14. -for as_var in BASH_ENV ENV MAIL MAILPATH -do eval test x\${$as_var+set} = xset \ - && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : -done -PS1='$ ' -PS2='> ' -PS4='+ ' - -# NLS nuisances. -LC_ALL=C -export LC_ALL -LANGUAGE=C -export LANGUAGE - -# CDPATH. -(unset CDPATH) >/dev/null 2>&1 && unset CDPATH - - -# as_fn_error STATUS ERROR [LINENO LOG_FD] -# ---------------------------------------- -# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are -# provided, also output the error to LOG_FD, referencing LINENO. Then exit the -# script with STATUS, using 1 if that was 0. -as_fn_error () -{ - as_status=$1; test $as_status -eq 0 && as_status=1 - if test "$4"; then - as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4 - fi - $as_echo "$as_me: error: $2" >&2 - as_fn_exit $as_status -} # as_fn_error - - -# as_fn_set_status STATUS -# ----------------------- -# Set $? to STATUS, without forking. -as_fn_set_status () -{ - return $1 -} # as_fn_set_status - -# as_fn_exit STATUS -# ----------------- -# Exit the shell with STATUS, even in a "trap 0" or "set -e" context. -as_fn_exit () -{ - set +e - as_fn_set_status $1 - exit $1 -} # as_fn_exit - -# as_fn_unset VAR -# --------------- -# Portably unset VAR. -as_fn_unset () -{ - { eval $1=; unset $1;} -} -as_unset=as_fn_unset -# as_fn_append VAR VALUE -# ---------------------- -# Append the text in VALUE to the end of the definition contained in VAR. Take -# advantage of any shell optimizations that allow amortized linear growth over -# repeated appends, instead of the typical quadratic growth present in naive -# implementations. -if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then : - eval 'as_fn_append () - { - eval $1+=\$2 - }' -else - as_fn_append () - { - eval $1=\$$1\$2 - } -fi # as_fn_append - -# as_fn_arith ARG... -# ------------------ -# Perform arithmetic evaluation on the ARGs, and store the result in the -# global $as_val. Take advantage of shells that can avoid forks. The arguments -# must be portable across $(()) and expr. -if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then : - eval 'as_fn_arith () - { - as_val=$(( $* )) - }' -else - as_fn_arith () - { - as_val=`expr "$@" || test $? -eq 1` - } -fi # as_fn_arith - - -if expr a : '\(a\)' >/dev/null 2>&1 && - test "X`expr 00001 : '.*\(...\)'`" = X001; then - as_expr=expr -else - as_expr=false -fi - -if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then - as_basename=basename -else - as_basename=false -fi - -if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then - as_dirname=dirname -else - as_dirname=false -fi - -as_me=`$as_basename -- "$0" || -$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ - X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X/"$0" | - sed '/^.*\/\([^/][^/]*\)\/*$/{ - s//\1/ - q - } - /^X\/\(\/\/\)$/{ - s//\1/ - q - } - /^X\/\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - -# Avoid depending upon Character Ranges. -as_cr_letters='abcdefghijklmnopqrstuvwxyz' -as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' -as_cr_Letters=$as_cr_letters$as_cr_LETTERS -as_cr_digits='0123456789' -as_cr_alnum=$as_cr_Letters$as_cr_digits - -ECHO_C= ECHO_N= ECHO_T= -case `echo -n x` in #((((( --n*) - case `echo 'xy\c'` in - *c*) ECHO_T=' ';; # ECHO_T is single tab character. - xy) ECHO_C='\c';; - *) echo `echo ksh88 bug on AIX 6.1` > /dev/null - ECHO_T=' ';; - esac;; -*) - ECHO_N='-n';; -esac - -rm -f conf$$ conf$$.exe conf$$.file -if test -d conf$$.dir; then - rm -f conf$$.dir/conf$$.file -else - rm -f conf$$.dir - mkdir conf$$.dir 2>/dev/null -fi -if (echo >conf$$.file) 2>/dev/null; then - if ln -s conf$$.file conf$$ 2>/dev/null; then - as_ln_s='ln -s' - # ... but there are two gotchas: - # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. - # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. - # In both cases, we have to default to `cp -pR'. - ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || - as_ln_s='cp -pR' - elif ln conf$$.file conf$$ 2>/dev/null; then - as_ln_s=ln - else - as_ln_s='cp -pR' - fi -else - as_ln_s='cp -pR' -fi -rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file -rmdir conf$$.dir 2>/dev/null - - -# as_fn_mkdir_p -# ------------- -# Create "$as_dir" as a directory, including parents if necessary. -as_fn_mkdir_p () -{ - - case $as_dir in #( - -*) as_dir=./$as_dir;; - esac - test -d "$as_dir" || eval $as_mkdir_p || { - as_dirs= - while :; do - case $as_dir in #( - *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( - *) as_qdir=$as_dir;; - esac - as_dirs="'$as_qdir' $as_dirs" - as_dir=`$as_dirname -- "$as_dir" || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - test -d "$as_dir" && break - done - test -z "$as_dirs" || eval "mkdir $as_dirs" - } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir" - - -} # as_fn_mkdir_p -if mkdir -p . 2>/dev/null; then - as_mkdir_p='mkdir -p "$as_dir"' -else - test -d ./-p && rmdir ./-p - as_mkdir_p=false -fi - - -# as_fn_executable_p FILE -# ----------------------- -# Test if FILE is an executable regular file. -as_fn_executable_p () -{ - test -f "$1" && test -x "$1" -} # as_fn_executable_p -as_test_x='test -x' -as_executable_p=as_fn_executable_p - -# Sed expression to map a string onto a valid CPP name. -as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" - -# Sed expression to map a string onto a valid variable name. -as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" - - -exec 6>&1 -## ----------------------------------- ## -## Main body of $CONFIG_STATUS script. ## -## ----------------------------------- ## -# Save the log message, to keep $0 and so on meaningful, and to -# report actual input values of CONFIG_FILES etc. instead of their -# values after options handling. -ac_log=" -This file was extended by libnfnetlink $as_me 1.0.1, which was -generated by GNU Autoconf 2.69. Invocation command line was - - CONFIG_FILES = $CONFIG_FILES - CONFIG_HEADERS = $CONFIG_HEADERS - CONFIG_LINKS = $CONFIG_LINKS - CONFIG_COMMANDS = $CONFIG_COMMANDS - $ $0 $@ - -on `(hostname || uname -n) 2>/dev/null | sed 1q` -" - -# Files that config.status was made for. -config_files=" Makefile src/Makefile include/Makefile include/libnfnetlink/Makefile utils/Makefile libnfnetlink.pc" -config_commands=" depfiles libtool" - -ac_cs_usage="\ -\`$as_me' instantiates files and other configuration actions -from templates according to the current configuration. Unless the files -and actions are specified as TAGs, all are instantiated by default. - -Usage: $0 [OPTION]... [TAG]... - - -h, --help print this help, then exit - -V, --version print version number and configuration settings, then exit - --config print configuration, then exit - -q, --quiet, --silent - do not print progress messages - -d, --debug don't remove temporary files - --recheck update $as_me by reconfiguring in the same conditions - --file=FILE[:TEMPLATE] - instantiate the configuration file FILE - -Configuration files: -$config_files - -Configuration commands: -$config_commands - -Report bugs to the package provider." - -ac_cs_config="'--host=mipsel-linux' '--build=x86_64-linux-gnu' '--prefix=/usr' '--enable-shared' '--enable-static' 'build_alias=x86_64-linux-gnu' 'host_alias=mipsel-linux' 'CC=mipsel-uclibc-gcc' 'CFLAGS=-Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections' 'LDFLAGS=-ffunction-sections -fdata-sections -Wl,--gc-sections'" -ac_cs_version="\ -libnfnetlink config.status 1.0.1 -configured by ./configure, generated by GNU Autoconf 2.69, - with options \"$ac_cs_config\" - -Copyright (C) 2012 Free Software Foundation, Inc. -This config.status script is free software; the Free Software Foundation -gives unlimited permission to copy, distribute and modify it." - -ac_pwd='/home/vicente/tomato/release/src-rt/router/libnfnetlink' -srcdir='.' -INSTALL='/usr/bin/install -c' -MKDIR_P='/bin/mkdir -p' -AWK='gawk' -test -n "$AWK" || AWK=awk -# The default lists apply if the user does not specify any file. -ac_need_defaults=: -while test $# != 0 -do - case $1 in - --*=?*) - ac_option=`expr "X$1" : 'X\([^=]*\)='` - ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'` - ac_shift=: - ;; - --*=) - ac_option=`expr "X$1" : 'X\([^=]*\)='` - ac_optarg= - ac_shift=: - ;; - *) - ac_option=$1 - ac_optarg=$2 - ac_shift=shift - ;; - esac - - case $ac_option in - # Handling of the options. - -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) - ac_cs_recheck=: ;; - --version | --versio | --versi | --vers | --ver | --ve | --v | -V ) - $as_echo "$ac_cs_version"; exit ;; - --config | --confi | --conf | --con | --co | --c ) - $as_echo "$ac_cs_config"; exit ;; - --debug | --debu | --deb | --de | --d | -d ) - debug=: ;; - --file | --fil | --fi | --f ) - $ac_shift - case $ac_optarg in - *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; - '') as_fn_error $? "missing file argument" ;; - esac - as_fn_append CONFIG_FILES " '$ac_optarg'" - ac_need_defaults=false;; - --he | --h | --help | --hel | -h ) - $as_echo "$ac_cs_usage"; exit ;; - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil | --si | --s) - ac_cs_silent=: ;; - - # This is an error. - -*) as_fn_error $? "unrecognized option: \`$1' -Try \`$0 --help' for more information." ;; - - *) as_fn_append ac_config_targets " $1" - ac_need_defaults=false ;; - - esac - shift -done - -ac_configure_extra_args= - -if $ac_cs_silent; then - exec 6>/dev/null - ac_configure_extra_args="$ac_configure_extra_args --silent" -fi - -if $ac_cs_recheck; then - set X /bin/sh './configure' '--host=mipsel-linux' '--build=x86_64-linux-gnu' '--prefix=/usr' '--enable-shared' '--enable-static' 'build_alias=x86_64-linux-gnu' 'host_alias=mipsel-linux' 'CC=mipsel-uclibc-gcc' 'CFLAGS=-Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections' 'LDFLAGS=-ffunction-sections -fdata-sections -Wl,--gc-sections' $ac_configure_extra_args --no-create --no-recursion - shift - $as_echo "running CONFIG_SHELL=/bin/sh $*" >&6 - CONFIG_SHELL='/bin/sh' - export CONFIG_SHELL - exec "$@" -fi - -exec 5>>config.log -{ - echo - sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX -## Running $as_me. ## -_ASBOX - $as_echo "$ac_log" -} >&5 - -# -# INIT-COMMANDS -# -AMDEP_TRUE="" ac_aux_dir="build-aux" - - -# The HP-UX ksh and POSIX shell print the target directory to stdout -# if CDPATH is set. -(unset CDPATH) >/dev/null 2>&1 && unset CDPATH - -sed_quote_subst='s/\(["`$\\]\)/\\\1/g' -double_quote_subst='s/\(["`\\]\)/\\\1/g' -delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g' -enable_static='yes' -macro_version='2.4.2' -macro_revision='1.3337' -enable_shared='yes' -pic_mode='default' -enable_fast_install='yes' -SHELL='/bin/sh' -ECHO='printf %s\n' -PATH_SEPARATOR=':' -host_alias='mipsel-linux' -host='mipsel-unknown-linux-gnu' -host_os='linux-gnu' -build_alias='x86_64-linux-gnu' -build='x86_64-pc-linux-gnu' -build_os='linux-gnu' -SED='/bin/sed' -Xsed='/bin/sed -e 1s/^X//' -GREP='/bin/grep' -EGREP='/bin/grep -E' -FGREP='/bin/grep -F' -LD='mipsel-uclibc-ld' -NM='mipsel-uclibc-nm' -LN_S='ln -s' -max_cmd_len='3458764513820540925' -ac_objext='o' -exeext='' -lt_unset='unset' -lt_SP2NL='tr \040 \012' -lt_NL2SP='tr \015\012 \040\040' -lt_cv_to_host_file_cmd='func_convert_file_noop' -lt_cv_to_tool_file_cmd='func_convert_file_noop' -reload_flag=' -r' -reload_cmds='$LD$reload_flag -o $output$reload_objs' -OBJDUMP='mipsel-linux-objdump' -deplibs_check_method='pass_all' -file_magic_cmd='$MAGIC_CMD' -file_magic_glob='' -want_nocaseglob='no' -DLLTOOL='false' -sharedlib_from_linklib_cmd='printf %s\n' -AR='mipsel-uclibc-ar' -AR_FLAGS='cru' -archiver_list_spec='@' -STRIP='mipsel-uclibc-strip' -RANLIB='mipsel-uclibc-ranlib' -old_postinstall_cmds='chmod 644 $oldlib~$RANLIB $tool_oldlib' -old_postuninstall_cmds='' -old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs~$RANLIB $tool_oldlib' -lock_old_archive_extraction='no' -CC='mipsel-uclibc-gcc' -CFLAGS='-Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections' -compiler='mipsel-uclibc-gcc' -GCC='yes' -lt_cv_sys_global_symbol_pipe='sed -n -e '\''s/^.*[ ]\([ABCDGIRSTW][ABCDGIRSTW]*\)[ ][ ]*\([_A-Za-z][_A-Za-z0-9]*\)$/\1 \2 \2/p'\'' | sed '\''/ __gnu_lto/d'\''' -lt_cv_sys_global_symbol_to_cdecl='sed -n -e '\''s/^T .* \(.*\)$/extern int \1();/p'\'' -e '\''s/^[ABCDGIRSTW]* .* \(.*\)$/extern char \1;/p'\''' -lt_cv_sys_global_symbol_to_c_name_address='sed -n -e '\''s/^: \([^ ]*\)[ ]*$/ {\"\1\", (void *) 0},/p'\'' -e '\''s/^[ABCDGIRSTW]* \([^ ]*\) \([^ ]*\)$/ {"\2", (void *) \&\2},/p'\''' -lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='sed -n -e '\''s/^: \([^ ]*\)[ ]*$/ {\"\1\", (void *) 0},/p'\'' -e '\''s/^[ABCDGIRSTW]* \([^ ]*\) \(lib[^ ]*\)$/ {"\2", (void *) \&\2},/p'\'' -e '\''s/^[ABCDGIRSTW]* \([^ ]*\) \([^ ]*\)$/ {"lib\2", (void *) \&\2},/p'\''' -nm_file_list_spec='@' -lt_sysroot='' -objdir='.libs' -MAGIC_CMD='file' -lt_prog_compiler_no_builtin_flag=' -fno-builtin' -lt_prog_compiler_pic=' -fPIC -DPIC' -lt_prog_compiler_wl='-Wl,' -lt_prog_compiler_static='-static' -lt_cv_prog_compiler_c_o='yes' -need_locks='no' -MANIFEST_TOOL=':' -DSYMUTIL='' -NMEDIT='' -LIPO='' -OTOOL='' -OTOOL64='' -libext='a' -shrext_cmds='.so' -extract_expsyms_cmds='' -archive_cmds_need_lc='no' -enable_shared_with_static_runtimes='no' -export_dynamic_flag_spec='${wl}--export-dynamic' -whole_archive_flag_spec='${wl}--whole-archive$convenience ${wl}--no-whole-archive' -compiler_needs_object='no' -old_archive_from_new_cmds='' -old_archive_from_expsyms_cmds='' -archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' -archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~ - cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ - echo "local: *; };" >> $output_objdir/$libname.ver~ - $CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib' -module_cmds='' -module_expsym_cmds='' -with_gnu_ld='yes' -allow_undefined_flag='' -no_undefined_flag='' -hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' -hardcode_libdir_separator='' -hardcode_direct='no' -hardcode_direct_absolute='no' -hardcode_minus_L='no' -hardcode_shlibpath_var='unsupported' -hardcode_automatic='no' -inherit_rpath='no' -link_all_deplibs='no' -always_export_symbols='no' -export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' -exclude_expsyms='_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*' -include_expsyms='' -prelink_cmds='' -postlink_cmds='' -file_list_spec='' -variables_saved_for_relink='PATH LD_LIBRARY_PATH LD_RUN_PATH GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH' -need_lib_prefix='no' -need_version='no' -version_type='linux' -runpath_var='LD_RUN_PATH' -shlibpath_var='LD_LIBRARY_PATH' -shlibpath_overrides_runpath='no' -libname_spec='lib$name' -library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' -soname_spec='${libname}${release}${shared_ext}$major' -install_override_mode='' -postinstall_cmds='' -postuninstall_cmds='' -finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' -finish_eval='' -hardcode_into_libs='yes' -sys_lib_search_path_spec='/home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/lib/gcc/mipsel-linux-uclibc/4.2.4 /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/lib/gcc /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/mipsel-linux-uclibc/lib ' -sys_lib_dlsearch_path_spec='/lib /usr/lib /lib/i386-linux-gnu /usr/lib/i386-linux-gnu /lib/i686-linux-gnu /usr/lib/i686-linux-gnu /usr/local/lib /usr/lib/nvidia-settings /lib/x86_64-linux-gnu /usr/lib/x86_64-linux-gnu /usr/lib/nvidia-current /usr/lib32/nvidia-current /lib32 /usr/lib32 ' -hardcode_action='immediate' -enable_dlopen='unknown' -enable_dlopen_self='unknown' -enable_dlopen_self_static='unknown' -old_striplib='mipsel-uclibc-strip --strip-debug' -striplib='mipsel-uclibc-strip --strip-unneeded' - -LTCC='mipsel-uclibc-gcc' -LTCFLAGS='-Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections' -compiler='mipsel-uclibc-gcc' - -# A function that is used when there is no print builtin or printf. -func_fallback_echo () -{ - eval 'cat <<_LTECHO_EOF -$1 -_LTECHO_EOF' -} - -# Quote evaled strings. -for var in SHELL ECHO PATH_SEPARATOR SED GREP EGREP FGREP LD NM LN_S lt_SP2NL lt_NL2SP reload_flag OBJDUMP deplibs_check_method file_magic_cmd file_magic_glob want_nocaseglob DLLTOOL sharedlib_from_linklib_cmd AR AR_FLAGS archiver_list_spec STRIP RANLIB CC CFLAGS compiler lt_cv_sys_global_symbol_pipe lt_cv_sys_global_symbol_to_cdecl lt_cv_sys_global_symbol_to_c_name_address lt_cv_sys_global_symbol_to_c_name_address_lib_prefix nm_file_list_spec lt_prog_compiler_no_builtin_flag lt_prog_compiler_pic lt_prog_compiler_wl lt_prog_compiler_static lt_cv_prog_compiler_c_o need_locks MANIFEST_TOOL DSYMUTIL NMEDIT LIPO OTOOL OTOOL64 shrext_cmds export_dynamic_flag_spec whole_archive_flag_spec compiler_needs_object with_gnu_ld allow_undefined_flag no_undefined_flag hardcode_libdir_flag_spec hardcode_libdir_separator exclude_expsyms include_expsyms file_list_spec variables_saved_for_relink libname_spec library_names_spec soname_spec install_override_mode finish_eval old_striplib striplib; do - case `eval \\$ECHO \\""\\$$var"\\"` in - *[\\\`\"\$]*) - eval "lt_$var=\\\"\`\$ECHO \"\$$var\" | \$SED \"\$sed_quote_subst\"\`\\\"" - ;; - *) - eval "lt_$var=\\\"\$$var\\\"" - ;; - esac -done - -# Double-quote double-evaled strings. -for var in reload_cmds old_postinstall_cmds old_postuninstall_cmds old_archive_cmds extract_expsyms_cmds old_archive_from_new_cmds old_archive_from_expsyms_cmds archive_cmds archive_expsym_cmds module_cmds module_expsym_cmds export_symbols_cmds prelink_cmds postlink_cmds postinstall_cmds postuninstall_cmds finish_cmds sys_lib_search_path_spec sys_lib_dlsearch_path_spec; do - case `eval \\$ECHO \\""\\$$var"\\"` in - *[\\\`\"\$]*) - eval "lt_$var=\\\"\`\$ECHO \"\$$var\" | \$SED -e \"\$double_quote_subst\" -e \"\$sed_quote_subst\" -e \"\$delay_variable_subst\"\`\\\"" - ;; - *) - eval "lt_$var=\\\"\$$var\\\"" - ;; - esac -done - -ac_aux_dir='build-aux' -xsi_shell='yes' -lt_shell_append='yes' - -# See if we are running on zsh, and set the options which allow our -# commands through without removal of \ escapes INIT. -if test -n "${ZSH_VERSION+set}" ; then - setopt NO_GLOB_SUBST -fi - - - PACKAGE='libnfnetlink' - VERSION='1.0.1' - TIMESTAMP='' - RM='rm -f' - ofile='libtool' - - - - - -# Handling of arguments. -for ac_config_target in $ac_config_targets -do - case $ac_config_target in - "depfiles") CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;; - "libtool") CONFIG_COMMANDS="$CONFIG_COMMANDS libtool" ;; - "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;; - "src/Makefile") CONFIG_FILES="$CONFIG_FILES src/Makefile" ;; - "include/Makefile") CONFIG_FILES="$CONFIG_FILES include/Makefile" ;; - "include/libnfnetlink/Makefile") CONFIG_FILES="$CONFIG_FILES include/libnfnetlink/Makefile" ;; - "utils/Makefile") CONFIG_FILES="$CONFIG_FILES utils/Makefile" ;; - "libnfnetlink.pc") CONFIG_FILES="$CONFIG_FILES libnfnetlink.pc" ;; - - *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;; - esac -done - - -# If the user did not use the arguments to specify the items to instantiate, -# then the envvar interface is used. Set only those that are not. -# We use the long form for the default assignment because of an extremely -# bizarre bug on SunOS 4.1.3. -if $ac_need_defaults; then - test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files - test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands -fi - -# Have a temporary directory for convenience. Make it in the build tree -# simply because there is no reason against having it here, and in addition, -# creating and moving files from /tmp can sometimes cause problems. -# Hook for its removal unless debugging. -# Note that there is a small window in which the directory will not be cleaned: -# after its creation but before its name has been assigned to `$tmp'. -$debug || -{ - tmp= ac_tmp= - trap 'exit_status=$? - : "${ac_tmp:=$tmp}" - { test ! -d "$ac_tmp" || rm -fr "$ac_tmp"; } && exit $exit_status -' 0 - trap 'as_fn_exit 1' 1 2 13 15 -} -# Create a (secure) tmp directory for tmp files. - -{ - tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` && - test -d "$tmp" -} || -{ - tmp=./conf$$-$RANDOM - (umask 077 && mkdir "$tmp") -} || as_fn_error $? "cannot create a temporary directory in ." "$LINENO" 5 -ac_tmp=$tmp - -# Set up the scripts for CONFIG_FILES section. -# No need to generate them if there are no CONFIG_FILES. -# This happens for instance with `./config.status config.h'. -if test -n "$CONFIG_FILES"; then - - -ac_cr=`echo X | tr X '\015'` -# On cygwin, bash can eat \r inside `` if the user requested igncr. -# But we know of no other shell where ac_cr would be empty at this -# point, so we can use a bashism as a fallback. -if test "x$ac_cr" = x; then - eval ac_cr=\$\'\\r\' -fi -ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' /dev/null` -if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then - ac_cs_awk_cr='\\r' -else - ac_cs_awk_cr=$ac_cr -fi - -echo 'BEGIN {' >"$ac_tmp/subs1.awk" && -cat >>"$ac_tmp/subs1.awk" <<\_ACAWK && -S["am__EXEEXT_FALSE"]="" -S["am__EXEEXT_TRUE"]="#" -S["LTLIBOBJS"]="" -S["LIBOBJS"]="" -S["CPP"]="mipsel-uclibc-gcc -E" -S["OTOOL64"]="" -S["OTOOL"]="" -S["LIPO"]="" -S["NMEDIT"]="" -S["DSYMUTIL"]="" -S["MANIFEST_TOOL"]=":" -S["RANLIB"]="mipsel-uclibc-ranlib" -S["ac_ct_AR"]="" -S["AR"]="mipsel-uclibc-ar" -S["DLLTOOL"]="false" -S["OBJDUMP"]="mipsel-linux-objdump" -S["LN_S"]="ln -s" -S["NM"]="mipsel-uclibc-nm" -S["ac_ct_DUMPBIN"]="" -S["DUMPBIN"]="" -S["LD"]="mipsel-uclibc-ld" -S["FGREP"]="/bin/grep -F" -S["EGREP"]="/bin/grep -E" -S["GREP"]="/bin/grep" -S["SED"]="/bin/sed" -S["LIBTOOL"]="$(SHELL) $(top_builddir)/libtool" -S["am__fastdepCC_FALSE"]="#" -S["am__fastdepCC_TRUE"]="" -S["CCDEPMODE"]="depmode=gcc3" -S["am__nodep"]="_no" -S["AMDEPBACKSLASH"]="\\" -S["AMDEP_FALSE"]="#" -S["AMDEP_TRUE"]="" -S["am__quote"]="" -S["am__include"]="include" -S["DEPDIR"]=".deps" -S["OBJEXT"]="o" -S["EXEEXT"]="" -S["ac_ct_CC"]="" -S["CPPFLAGS"]="" -S["LDFLAGS"]="-ffunction-sections -fdata-sections -Wl,--gc-sections" -S["CFLAGS"]="-Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections" -S["CC"]="mipsel-uclibc-gcc" -S["AM_BACKSLASH"]="\\" -S["AM_DEFAULT_VERBOSITY"]="0" -S["AM_DEFAULT_V"]="$(AM_DEFAULT_VERBOSITY)" -S["AM_V"]="$(V)" -S["am__untar"]="tar -xf -" -S["am__tar"]="tar --format=posix -chf - \"$$tardir\"" -S["AMTAR"]="$${TAR-tar}" -S["am__leading_dot"]="." -S["SET_MAKE"]="" -S["AWK"]="gawk" -S["mkdir_p"]="/bin/mkdir -p" -S["MKDIR_P"]="/bin/mkdir -p" -S["INSTALL_STRIP_PROGRAM"]="$(install_sh) -c -s" -S["STRIP"]="mipsel-uclibc-strip" -S["install_sh"]="${SHELL} /home/vicente/tomato/release/src-rt/router/libnfnetlink/build-aux/install-sh" -S["MAKEINFO"]="${SHELL} /home/vicente/tomato/release/src-rt/router/libnfnetlink/build-aux/missing --run makeinfo" -S["AUTOHEADER"]="${SHELL} /home/vicente/tomato/release/src-rt/router/libnfnetlink/build-aux/missing --run autoheader" -S["AUTOMAKE"]="${SHELL} /home/vicente/tomato/release/src-rt/router/libnfnetlink/build-aux/missing --run automake-1.11" -S["AUTOCONF"]="${SHELL} /home/vicente/tomato/release/src-rt/router/libnfnetlink/build-aux/missing --run autoconf" -S["ACLOCAL"]="${SHELL} /home/vicente/tomato/release/src-rt/router/libnfnetlink/build-aux/missing --run aclocal-1.11" -S["VERSION"]="1.0.1" -S["PACKAGE"]="libnfnetlink" -S["CYGPATH_W"]="echo" -S["am__isrc"]="" -S["INSTALL_DATA"]="${INSTALL} -m 644" -S["INSTALL_SCRIPT"]="${INSTALL}" -S["INSTALL_PROGRAM"]="${INSTALL}" -S["host_os"]="linux-gnu" -S["host_vendor"]="unknown" -S["host_cpu"]="mipsel" -S["host"]="mipsel-unknown-linux-gnu" -S["build_os"]="linux-gnu" -S["build_vendor"]="pc" -S["build_cpu"]="x86_64" -S["build"]="x86_64-pc-linux-gnu" -S["target_alias"]="" -S["host_alias"]="mipsel-linux" -S["build_alias"]="x86_64-linux-gnu" -S["LIBS"]="" -S["ECHO_T"]="" -S["ECHO_N"]="-n" -S["ECHO_C"]="" -S["DEFS"]="-DPACKAGE_NAME=\\\"libnfnetlink\\\" -DPACKAGE_TARNAME=\\\"libnfnetlink\\\" -DPACKAGE_VERSION=\\\"1.0.1\\\" -DPACKAGE_STRING=\\\"libnfnetlink\\ 1.0.1\\\" -DPACKAGE_BU"\ -"GREPORT=\\\"\\\" -DPACKAGE_URL=\\\"\\\" -DPACKAGE=\\\"libnfnetlink\\\" -DVERSION=\\\"1.0.1\\\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDL"\ -"IB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\\"\ -"\".libs/\\\"" -S["mandir"]="${datarootdir}/man" -S["localedir"]="${datarootdir}/locale" -S["libdir"]="${exec_prefix}/lib" -S["psdir"]="${docdir}" -S["pdfdir"]="${docdir}" -S["dvidir"]="${docdir}" -S["htmldir"]="${docdir}" -S["infodir"]="${datarootdir}/info" -S["docdir"]="${datarootdir}/doc/${PACKAGE_TARNAME}" -S["oldincludedir"]="/usr/include" -S["includedir"]="${prefix}/include" -S["localstatedir"]="${prefix}/var" -S["sharedstatedir"]="${prefix}/com" -S["sysconfdir"]="${prefix}/etc" -S["datadir"]="${datarootdir}" -S["datarootdir"]="${prefix}/share" -S["libexecdir"]="${exec_prefix}/libexec" -S["sbindir"]="${exec_prefix}/sbin" -S["bindir"]="${exec_prefix}/bin" -S["program_transform_name"]="s,x,x," -S["prefix"]="/usr" -S["exec_prefix"]="${prefix}" -S["PACKAGE_URL"]="" -S["PACKAGE_BUGREPORT"]="" -S["PACKAGE_STRING"]="libnfnetlink 1.0.1" -S["PACKAGE_VERSION"]="1.0.1" -S["PACKAGE_TARNAME"]="libnfnetlink" -S["PACKAGE_NAME"]="libnfnetlink" -S["PATH_SEPARATOR"]=":" -S["SHELL"]="/bin/sh" -_ACAWK -cat >>"$ac_tmp/subs1.awk" <<_ACAWK && - for (key in S) S_is_set[key] = 1 - FS = "" - -} -{ - line = $ 0 - nfields = split(line, field, "@") - substed = 0 - len = length(field[1]) - for (i = 2; i < nfields; i++) { - key = field[i] - keylen = length(key) - if (S_is_set[key]) { - value = S[key] - line = substr(line, 1, len) "" value "" substr(line, len + keylen + 3) - len += length(value) + length(field[++i]) - substed = 1 - } else - len += 1 + keylen - } - - print line -} - -_ACAWK -if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then - sed "s/$ac_cr\$//; s/$ac_cr/$ac_cs_awk_cr/g" -else - cat -fi < "$ac_tmp/subs1.awk" > "$ac_tmp/subs.awk" \ - || as_fn_error $? "could not setup config files machinery" "$LINENO" 5 -fi # test -n "$CONFIG_FILES" - - -eval set X " :F $CONFIG_FILES :C $CONFIG_COMMANDS" -shift -for ac_tag -do - case $ac_tag in - :[FHLC]) ac_mode=$ac_tag; continue;; - esac - case $ac_mode$ac_tag in - :[FHL]*:*);; - :L* | :C*:*) as_fn_error $? "invalid tag \`$ac_tag'" "$LINENO" 5;; - :[FH]-) ac_tag=-:-;; - :[FH]*) ac_tag=$ac_tag:$ac_tag.in;; - esac - ac_save_IFS=$IFS - IFS=: - set x $ac_tag - IFS=$ac_save_IFS - shift - ac_file=$1 - shift - - case $ac_mode in - :L) ac_source=$1;; - :[FH]) - ac_file_inputs= - for ac_f - do - case $ac_f in - -) ac_f="$ac_tmp/stdin";; - *) # Look for the file first in the build tree, then in the source tree - # (if the path is not absolute). The absolute path cannot be DOS-style, - # because $ac_f cannot contain `:'. - test -f "$ac_f" || - case $ac_f in - [\\/$]*) false;; - *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";; - esac || - as_fn_error 1 "cannot find input file: \`$ac_f'" "$LINENO" 5;; - esac - case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac - as_fn_append ac_file_inputs " '$ac_f'" - done - - # Let's still pretend it is `configure' which instantiates (i.e., don't - # use $as_me), people would be surprised to read: - # /* config.h. Generated by config.status. */ - configure_input='Generated from '` - $as_echo "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g' - `' by configure.' - if test x"$ac_file" != x-; then - configure_input="$ac_file. $configure_input" - { $as_echo "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5 -$as_echo "$as_me: creating $ac_file" >&6;} - fi - # Neutralize special characters interpreted by sed in replacement strings. - case $configure_input in #( - *\&* | *\|* | *\\* ) - ac_sed_conf_input=`$as_echo "$configure_input" | - sed 's/[\\\\&|]/\\\\&/g'`;; #( - *) ac_sed_conf_input=$configure_input;; - esac - - case $ac_tag in - *:-:* | *:-) cat >"$ac_tmp/stdin" \ - || as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;; - esac - ;; - esac - - ac_dir=`$as_dirname -- "$ac_file" || -$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$ac_file" : 'X\(//\)[^/]' \| \ - X"$ac_file" : 'X\(//\)$' \| \ - X"$ac_file" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$ac_file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - as_dir="$ac_dir"; as_fn_mkdir_p - ac_builddir=. - -case "$ac_dir" in -.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; -*) - ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'` - # A ".." for each directory in $ac_dir_suffix. - ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'` - case $ac_top_builddir_sub in - "") ac_top_builddir_sub=. ac_top_build_prefix= ;; - *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; - esac ;; -esac -ac_abs_top_builddir=$ac_pwd -ac_abs_builddir=$ac_pwd$ac_dir_suffix -# for backward compatibility: -ac_top_builddir=$ac_top_build_prefix - -case $srcdir in - .) # We are building in place. - ac_srcdir=. - ac_top_srcdir=$ac_top_builddir_sub - ac_abs_top_srcdir=$ac_pwd ;; - [\\/]* | ?:[\\/]* ) # Absolute name. - ac_srcdir=$srcdir$ac_dir_suffix; - ac_top_srcdir=$srcdir - ac_abs_top_srcdir=$srcdir ;; - *) # Relative name. - ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix - ac_top_srcdir=$ac_top_build_prefix$srcdir - ac_abs_top_srcdir=$ac_pwd/$srcdir ;; -esac -ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix - - - case $ac_mode in - :F) - # - # CONFIG_FILE - # - - case $INSTALL in - [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;; - *) ac_INSTALL=$ac_top_build_prefix$INSTALL ;; - esac - ac_MKDIR_P=$MKDIR_P - case $MKDIR_P in - [\\/$]* | ?:[\\/]* ) ;; - */*) ac_MKDIR_P=$ac_top_build_prefix$MKDIR_P ;; - esac -# If the template does not know about datarootdir, expand it. -# FIXME: This hack should be removed a few years after 2.60. -ac_datarootdir_hack=; ac_datarootdir_seen= -ac_sed_dataroot=' -/datarootdir/ { - p - q -} -/@datadir@/p -/@docdir@/p -/@infodir@/p -/@localedir@/p -/@mandir@/p' -case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in -*datarootdir*) ac_datarootdir_seen=yes;; -*@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*) - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5 -$as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;} - ac_datarootdir_hack=' - s&@datadir@&${datarootdir}&g - s&@docdir@&${datarootdir}/doc/${PACKAGE_TARNAME}&g - s&@infodir@&${datarootdir}/info&g - s&@localedir@&${datarootdir}/locale&g - s&@mandir@&${datarootdir}/man&g - s&\${datarootdir}&${prefix}/share&g' ;; -esac -ac_sed_extra="/^[ ]*VPATH[ ]*=[ ]*/{ -h -s/// -s/^/:/ -s/[ ]*$/:/ -s/:\$(srcdir):/:/g -s/:\${srcdir}:/:/g -s/:@srcdir@:/:/g -s/^:*// -s/:*$// -x -s/\(=[ ]*\).*/\1/ -G -s/\n// -s/^[^=]*=[ ]*$// -} - -:t -/@[a-zA-Z_][a-zA-Z_0-9]*@/!b -s|@configure_input@|$ac_sed_conf_input|;t t -s&@top_builddir@&$ac_top_builddir_sub&;t t -s&@top_build_prefix@&$ac_top_build_prefix&;t t -s&@srcdir@&$ac_srcdir&;t t -s&@abs_srcdir@&$ac_abs_srcdir&;t t -s&@top_srcdir@&$ac_top_srcdir&;t t -s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t -s&@builddir@&$ac_builddir&;t t -s&@abs_builddir@&$ac_abs_builddir&;t t -s&@abs_top_builddir@&$ac_abs_top_builddir&;t t -s&@INSTALL@&$ac_INSTALL&;t t -s&@MKDIR_P@&$ac_MKDIR_P&;t t -$ac_datarootdir_hack -" -eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$ac_tmp/subs.awk" \ - >$ac_tmp/out || as_fn_error $? "could not create $ac_file" "$LINENO" 5 - -test -z "$ac_datarootdir_hack$ac_datarootdir_seen" && - { ac_out=`sed -n '/\${datarootdir}/p' "$ac_tmp/out"`; test -n "$ac_out"; } && - { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' \ - "$ac_tmp/out"`; test -z "$ac_out"; } && - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir' -which seems to be undefined. Please make sure it is defined" >&5 -$as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir' -which seems to be undefined. Please make sure it is defined" >&2;} - - rm -f "$ac_tmp/stdin" - case $ac_file in - -) cat "$ac_tmp/out" && rm -f "$ac_tmp/out";; - *) rm -f "$ac_file" && mv "$ac_tmp/out" "$ac_file";; - esac \ - || as_fn_error $? "could not create $ac_file" "$LINENO" 5 - ;; - - - :C) { $as_echo "$as_me:${as_lineno-$LINENO}: executing $ac_file commands" >&5 -$as_echo "$as_me: executing $ac_file commands" >&6;} - ;; - esac - - - case $ac_file$ac_mode in - "depfiles":C) test x"$AMDEP_TRUE" != x"" || { - # Autoconf 2.62 quotes --file arguments for eval, but not when files - # are listed without --file. Let's play safe and only enable the eval - # if we detect the quoting. - case $CONFIG_FILES in - *\'*) eval set x "$CONFIG_FILES" ;; - *) set x $CONFIG_FILES ;; - esac - shift - for mf - do - # Strip MF so we end up with the name of the file. - mf=`echo "$mf" | sed -e 's/:.*$//'` - # Check whether this is an Automake generated Makefile or not. - # We used to match only the files named `Makefile.in', but - # some people rename them; so instead we look at the file content. - # Grep'ing the first line is not enough: some people post-process - # each Makefile.in and add a new line on top of each file to say so. - # Grep'ing the whole file is not good either: AIX grep has a line - # limit of 2048, but all sed's we know have understand at least 4000. - if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then - dirpart=`$as_dirname -- "$mf" || -$as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$mf" : 'X\(//\)[^/]' \| \ - X"$mf" : 'X\(//\)$' \| \ - X"$mf" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$mf" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - else - continue - fi - # Extract the definition of DEPDIR, am__include, and am__quote - # from the Makefile without running `make'. - DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"` - test -z "$DEPDIR" && continue - am__include=`sed -n 's/^am__include = //p' < "$mf"` - test -z "am__include" && continue - am__quote=`sed -n 's/^am__quote = //p' < "$mf"` - # When using ansi2knr, U may be empty or an underscore; expand it - U=`sed -n 's/^U = //p' < "$mf"` - # Find all dependency output files, they are included files with - # $(DEPDIR) in their names. We invoke sed twice because it is the - # simplest approach to changing $(DEPDIR) to its actual value in the - # expansion. - for file in `sed -n " - s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \ - sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do - # Make sure the directory exists. - test -f "$dirpart/$file" && continue - fdir=`$as_dirname -- "$file" || -$as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$file" : 'X\(//\)[^/]' \| \ - X"$file" : 'X\(//\)$' \| \ - X"$file" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - as_dir=$dirpart/$fdir; as_fn_mkdir_p - # echo "creating $dirpart/$file" - echo '# dummy' > "$dirpart/$file" - done - done -} - ;; - "libtool":C) - - # See if we are running on zsh, and set the options which allow our - # commands through without removal of \ escapes. - if test -n "${ZSH_VERSION+set}" ; then - setopt NO_GLOB_SUBST - fi - - cfgfile="${ofile}T" - trap "$RM \"$cfgfile\"; exit 1" 1 2 15 - $RM "$cfgfile" - - cat <<_LT_EOF >> "$cfgfile" -#! $SHELL - -# `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services. -# Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $VERSION -# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`: -# NOTE: Changes made to this file will be lost: look at ltmain.sh. -# -# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, -# 2006, 2007, 2008, 2009, 2010, 2011 Free Software -# Foundation, Inc. -# Written by Gordon Matzigkeit, 1996 -# -# This file is part of GNU Libtool. -# -# GNU Libtool is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License as -# published by the Free Software Foundation; either version 2 of -# the License, or (at your option) any later version. -# -# As a special exception to the GNU General Public License, -# if you distribute this file as part of a program or library that -# is built using GNU Libtool, you may include this file under the -# same distribution terms that you use for the rest of that program. -# -# GNU Libtool is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GNU Libtool; see the file COPYING. If not, a copy -# can be downloaded from http://www.gnu.org/licenses/gpl.html, or -# obtained by writing to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - - -# The names of the tagged configurations supported by this script. -available_tags="" - -# ### BEGIN LIBTOOL CONFIG - -# Whether or not to build static libraries. -build_old_libs=$enable_static - -# Which release of libtool.m4 was used? -macro_version=$macro_version -macro_revision=$macro_revision - -# Whether or not to build shared libraries. -build_libtool_libs=$enable_shared - -# What type of objects to build. -pic_mode=$pic_mode - -# Whether or not to optimize for fast installation. -fast_install=$enable_fast_install - -# Shell to use when invoking shell scripts. -SHELL=$lt_SHELL - -# An echo program that protects backslashes. -ECHO=$lt_ECHO - -# The PATH separator for the build system. -PATH_SEPARATOR=$lt_PATH_SEPARATOR - -# The host system. -host_alias=$host_alias -host=$host -host_os=$host_os - -# The build system. -build_alias=$build_alias -build=$build -build_os=$build_os - -# A sed program that does not truncate output. -SED=$lt_SED - -# Sed that helps us avoid accidentally triggering echo(1) options like -n. -Xsed="\$SED -e 1s/^X//" - -# A grep program that handles long lines. -GREP=$lt_GREP - -# An ERE matcher. -EGREP=$lt_EGREP - -# A literal string matcher. -FGREP=$lt_FGREP - -# A BSD- or MS-compatible name lister. -NM=$lt_NM - -# Whether we need soft or hard links. -LN_S=$lt_LN_S - -# What is the maximum length of a command? -max_cmd_len=$max_cmd_len - -# Object file suffix (normally "o"). -objext=$ac_objext - -# Executable file suffix (normally ""). -exeext=$exeext - -# whether the shell understands "unset". -lt_unset=$lt_unset - -# turn spaces into newlines. -SP2NL=$lt_lt_SP2NL - -# turn newlines into spaces. -NL2SP=$lt_lt_NL2SP - -# convert \$build file names to \$host format. -to_host_file_cmd=$lt_cv_to_host_file_cmd - -# convert \$build files to toolchain format. -to_tool_file_cmd=$lt_cv_to_tool_file_cmd - -# An object symbol dumper. -OBJDUMP=$lt_OBJDUMP - -# Method to check whether dependent libraries are shared objects. -deplibs_check_method=$lt_deplibs_check_method - -# Command to use when deplibs_check_method = "file_magic". -file_magic_cmd=$lt_file_magic_cmd - -# How to find potential files when deplibs_check_method = "file_magic". -file_magic_glob=$lt_file_magic_glob - -# Find potential files using nocaseglob when deplibs_check_method = "file_magic". -want_nocaseglob=$lt_want_nocaseglob - -# DLL creation program. -DLLTOOL=$lt_DLLTOOL - -# Command to associate shared and link libraries. -sharedlib_from_linklib_cmd=$lt_sharedlib_from_linklib_cmd - -# The archiver. -AR=$lt_AR - -# Flags to create an archive. -AR_FLAGS=$lt_AR_FLAGS - -# How to feed a file listing to the archiver. -archiver_list_spec=$lt_archiver_list_spec - -# A symbol stripping program. -STRIP=$lt_STRIP - -# Commands used to install an old-style archive. -RANLIB=$lt_RANLIB -old_postinstall_cmds=$lt_old_postinstall_cmds -old_postuninstall_cmds=$lt_old_postuninstall_cmds - -# Whether to use a lock for old archive extraction. -lock_old_archive_extraction=$lock_old_archive_extraction - -# A C compiler. -LTCC=$lt_CC - -# LTCC compiler flags. -LTCFLAGS=$lt_CFLAGS - -# Take the output of nm and produce a listing of raw symbols and C names. -global_symbol_pipe=$lt_lt_cv_sys_global_symbol_pipe - -# Transform the output of nm in a proper C declaration. -global_symbol_to_cdecl=$lt_lt_cv_sys_global_symbol_to_cdecl - -# Transform the output of nm in a C name address pair. -global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address - -# Transform the output of nm in a C name address pair when lib prefix is needed. -global_symbol_to_c_name_address_lib_prefix=$lt_lt_cv_sys_global_symbol_to_c_name_address_lib_prefix - -# Specify filename containing input files for \$NM. -nm_file_list_spec=$lt_nm_file_list_spec - -# The root where to search for dependent libraries,and in which our libraries should be installed. -lt_sysroot=$lt_sysroot - -# The name of the directory that contains temporary libtool files. -objdir=$objdir - -# Used to examine libraries when file_magic_cmd begins with "file". -MAGIC_CMD=$MAGIC_CMD - -# Must we lock files when doing compilation? -need_locks=$lt_need_locks - -# Manifest tool. -MANIFEST_TOOL=$lt_MANIFEST_TOOL - -# Tool to manipulate archived DWARF debug symbol files on Mac OS X. -DSYMUTIL=$lt_DSYMUTIL - -# Tool to change global to local symbols on Mac OS X. -NMEDIT=$lt_NMEDIT - -# Tool to manipulate fat objects and archives on Mac OS X. -LIPO=$lt_LIPO - -# ldd/readelf like tool for Mach-O binaries on Mac OS X. -OTOOL=$lt_OTOOL - -# ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4. -OTOOL64=$lt_OTOOL64 - -# Old archive suffix (normally "a"). -libext=$libext - -# Shared library suffix (normally ".so"). -shrext_cmds=$lt_shrext_cmds - -# The commands to extract the exported symbol list from a shared archive. -extract_expsyms_cmds=$lt_extract_expsyms_cmds - -# Variables whose values should be saved in libtool wrapper scripts and -# restored at link time. -variables_saved_for_relink=$lt_variables_saved_for_relink - -# Do we need the "lib" prefix for modules? -need_lib_prefix=$need_lib_prefix - -# Do we need a version for libraries? -need_version=$need_version - -# Library versioning type. -version_type=$version_type - -# Shared library runtime path variable. -runpath_var=$runpath_var - -# Shared library path variable. -shlibpath_var=$shlibpath_var - -# Is shlibpath searched before the hard-coded library search path? -shlibpath_overrides_runpath=$shlibpath_overrides_runpath - -# Format of library name prefix. -libname_spec=$lt_libname_spec - -# List of archive names. First name is the real one, the rest are links. -# The last name is the one that the linker finds with -lNAME -library_names_spec=$lt_library_names_spec - -# The coded name of the library, if different from the real name. -soname_spec=$lt_soname_spec - -# Permission mode override for installation of shared libraries. -install_override_mode=$lt_install_override_mode - -# Command to use after installation of a shared archive. -postinstall_cmds=$lt_postinstall_cmds - -# Command to use after uninstallation of a shared archive. -postuninstall_cmds=$lt_postuninstall_cmds - -# Commands used to finish a libtool library installation in a directory. -finish_cmds=$lt_finish_cmds - -# As "finish_cmds", except a single script fragment to be evaled but -# not shown. -finish_eval=$lt_finish_eval - -# Whether we should hardcode library paths into libraries. -hardcode_into_libs=$hardcode_into_libs - -# Compile-time system search path for libraries. -sys_lib_search_path_spec=$lt_sys_lib_search_path_spec - -# Run-time system search path for libraries. -sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec - -# Whether dlopen is supported. -dlopen_support=$enable_dlopen - -# Whether dlopen of programs is supported. -dlopen_self=$enable_dlopen_self - -# Whether dlopen of statically linked programs is supported. -dlopen_self_static=$enable_dlopen_self_static - -# Commands to strip libraries. -old_striplib=$lt_old_striplib -striplib=$lt_striplib - - -# The linker used to build libraries. -LD=$lt_LD - -# How to create reloadable object files. -reload_flag=$lt_reload_flag -reload_cmds=$lt_reload_cmds - -# Commands used to build an old-style archive. -old_archive_cmds=$lt_old_archive_cmds - -# A language specific compiler. -CC=$lt_compiler - -# Is the compiler the GNU compiler? -with_gcc=$GCC - -# Compiler flag to turn off builtin functions. -no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag - -# Additional compiler flags for building library objects. -pic_flag=$lt_lt_prog_compiler_pic - -# How to pass a linker flag through the compiler. -wl=$lt_lt_prog_compiler_wl - -# Compiler flag to prevent dynamic linking. -link_static_flag=$lt_lt_prog_compiler_static - -# Does compiler simultaneously support -c and -o options? -compiler_c_o=$lt_lt_cv_prog_compiler_c_o - -# Whether or not to add -lc for building shared libraries. -build_libtool_need_lc=$archive_cmds_need_lc - -# Whether or not to disallow shared libs when runtime libs are static. -allow_libtool_libs_with_static_runtimes=$enable_shared_with_static_runtimes - -# Compiler flag to allow reflexive dlopens. -export_dynamic_flag_spec=$lt_export_dynamic_flag_spec - -# Compiler flag to generate shared objects directly from archives. -whole_archive_flag_spec=$lt_whole_archive_flag_spec - -# Whether the compiler copes with passing no objects directly. -compiler_needs_object=$lt_compiler_needs_object - -# Create an old-style archive from a shared archive. -old_archive_from_new_cmds=$lt_old_archive_from_new_cmds - -# Create a temporary old-style archive to link instead of a shared archive. -old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds - -# Commands used to build a shared archive. -archive_cmds=$lt_archive_cmds -archive_expsym_cmds=$lt_archive_expsym_cmds - -# Commands used to build a loadable module if different from building -# a shared archive. -module_cmds=$lt_module_cmds -module_expsym_cmds=$lt_module_expsym_cmds - -# Whether we are building with GNU ld or not. -with_gnu_ld=$lt_with_gnu_ld - -# Flag that allows shared libraries with undefined symbols to be built. -allow_undefined_flag=$lt_allow_undefined_flag - -# Flag that enforces no undefined symbols. -no_undefined_flag=$lt_no_undefined_flag - -# Flag to hardcode \$libdir into a binary during linking. -# This must work even if \$libdir does not exist -hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec - -# Whether we need a single "-rpath" flag with a separated argument. -hardcode_libdir_separator=$lt_hardcode_libdir_separator - -# Set to "yes" if using DIR/libNAME\${shared_ext} during linking hardcodes -# DIR into the resulting binary. -hardcode_direct=$hardcode_direct - -# Set to "yes" if using DIR/libNAME\${shared_ext} during linking hardcodes -# DIR into the resulting binary and the resulting library dependency is -# "absolute",i.e impossible to change by setting \${shlibpath_var} if the -# library is relocated. -hardcode_direct_absolute=$hardcode_direct_absolute - -# Set to "yes" if using the -LDIR flag during linking hardcodes DIR -# into the resulting binary. -hardcode_minus_L=$hardcode_minus_L - -# Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR -# into the resulting binary. -hardcode_shlibpath_var=$hardcode_shlibpath_var - -# Set to "yes" if building a shared library automatically hardcodes DIR -# into the library and all subsequent libraries and executables linked -# against it. -hardcode_automatic=$hardcode_automatic - -# Set to yes if linker adds runtime paths of dependent libraries -# to runtime path list. -inherit_rpath=$inherit_rpath - -# Whether libtool must link a program against all its dependency libraries. -link_all_deplibs=$link_all_deplibs - -# Set to "yes" if exported symbols are required. -always_export_symbols=$always_export_symbols - -# The commands to list exported symbols. -export_symbols_cmds=$lt_export_symbols_cmds - -# Symbols that should not be listed in the preloaded symbols. -exclude_expsyms=$lt_exclude_expsyms - -# Symbols that must always be exported. -include_expsyms=$lt_include_expsyms - -# Commands necessary for linking programs (against libraries) with templates. -prelink_cmds=$lt_prelink_cmds - -# Commands necessary for finishing linking programs. -postlink_cmds=$lt_postlink_cmds - -# Specify filename containing input files. -file_list_spec=$lt_file_list_spec - -# How to hardcode a shared library path into an executable. -hardcode_action=$hardcode_action - -# ### END LIBTOOL CONFIG - -_LT_EOF - - case $host_os in - aix3*) - cat <<\_LT_EOF >> "$cfgfile" -# AIX sometimes has problems with the GCC collect2 program. For some -# reason, if we set the COLLECT_NAMES environment variable, the problems -# vanish in a puff of smoke. -if test "X${COLLECT_NAMES+set}" != Xset; then - COLLECT_NAMES= - export COLLECT_NAMES -fi -_LT_EOF - ;; - esac - - -ltmain="$ac_aux_dir/ltmain.sh" - - - # We use sed instead of cat because bash on DJGPP gets confused if - # if finds mixed CR/LF and LF-only lines. Since sed operates in - # text mode, it properly converts lines to CR/LF. This bash problem - # is reportedly fixed, but why not run on old versions too? - sed '$q' "$ltmain" >> "$cfgfile" \ - || (rm -f "$cfgfile"; exit 1) - - if test x"$xsi_shell" = xyes; then - sed -e '/^func_dirname ()$/,/^} # func_dirname /c\ -func_dirname ()\ -{\ -\ case ${1} in\ -\ */*) func_dirname_result="${1%/*}${2}" ;;\ -\ * ) func_dirname_result="${3}" ;;\ -\ esac\ -} # Extended-shell func_dirname implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_basename ()$/,/^} # func_basename /c\ -func_basename ()\ -{\ -\ func_basename_result="${1##*/}"\ -} # Extended-shell func_basename implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_dirname_and_basename ()$/,/^} # func_dirname_and_basename /c\ -func_dirname_and_basename ()\ -{\ -\ case ${1} in\ -\ */*) func_dirname_result="${1%/*}${2}" ;;\ -\ * ) func_dirname_result="${3}" ;;\ -\ esac\ -\ func_basename_result="${1##*/}"\ -} # Extended-shell func_dirname_and_basename implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_stripname ()$/,/^} # func_stripname /c\ -func_stripname ()\ -{\ -\ # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are\ -\ # positional parameters, so assign one to ordinary parameter first.\ -\ func_stripname_result=${3}\ -\ func_stripname_result=${func_stripname_result#"${1}"}\ -\ func_stripname_result=${func_stripname_result%"${2}"}\ -} # Extended-shell func_stripname implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_split_long_opt ()$/,/^} # func_split_long_opt /c\ -func_split_long_opt ()\ -{\ -\ func_split_long_opt_name=${1%%=*}\ -\ func_split_long_opt_arg=${1#*=}\ -} # Extended-shell func_split_long_opt implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_split_short_opt ()$/,/^} # func_split_short_opt /c\ -func_split_short_opt ()\ -{\ -\ func_split_short_opt_arg=${1#??}\ -\ func_split_short_opt_name=${1%"$func_split_short_opt_arg"}\ -} # Extended-shell func_split_short_opt implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_lo2o ()$/,/^} # func_lo2o /c\ -func_lo2o ()\ -{\ -\ case ${1} in\ -\ *.lo) func_lo2o_result=${1%.lo}.${objext} ;;\ -\ *) func_lo2o_result=${1} ;;\ -\ esac\ -} # Extended-shell func_lo2o implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_xform ()$/,/^} # func_xform /c\ -func_xform ()\ -{\ - func_xform_result=${1%.*}.lo\ -} # Extended-shell func_xform implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_arith ()$/,/^} # func_arith /c\ -func_arith ()\ -{\ - func_arith_result=$(( $* ))\ -} # Extended-shell func_arith implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_len ()$/,/^} # func_len /c\ -func_len ()\ -{\ - func_len_result=${#1}\ -} # Extended-shell func_len implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - -fi - -if test x"$lt_shell_append" = xyes; then - sed -e '/^func_append ()$/,/^} # func_append /c\ -func_append ()\ -{\ - eval "${1}+=\\${2}"\ -} # Extended-shell func_append implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_append_quoted ()$/,/^} # func_append_quoted /c\ -func_append_quoted ()\ -{\ -\ func_quote_for_eval "${2}"\ -\ eval "${1}+=\\\\ \\$func_quote_for_eval_result"\ -} # Extended-shell func_append_quoted implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - # Save a `func_append' function call where possible by direct use of '+=' - sed -e 's%func_append \([a-zA-Z_]\{1,\}\) "%\1+="%g' $cfgfile > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") - test 0 -eq $? || _lt_function_replace_fail=: -else - # Save a `func_append' function call even when '+=' is not available - sed -e 's%func_append \([a-zA-Z_]\{1,\}\) "%\1="$\1%g' $cfgfile > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") - test 0 -eq $? || _lt_function_replace_fail=: -fi - -if test x"$_lt_function_replace_fail" = x":"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Unable to substitute extended shell functions in $ofile" >&5 -$as_echo "$as_me: WARNING: Unable to substitute extended shell functions in $ofile" >&2;} -fi - - - mv -f "$cfgfile" "$ofile" || - (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile") - chmod +x "$ofile" - - ;; - - esac -done # for ac_tag - - -as_fn_exit 0 diff --git a/release/src/router/libnfnetlink/include/Makefile b/release/src/router/libnfnetlink/include/Makefile index 14a5af543c..f5450a15a4 100644 --- a/release/src/router/libnfnetlink/include/Makefile +++ b/release/src/router/libnfnetlink/include/Makefile @@ -119,13 +119,13 @@ am__relativize = \ dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \ done; \ reldir="$$dir2" -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src-rt/router/libnfnetlink/build-aux/missing --run aclocal-1.11 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/libnfnetlink/build-aux/missing --run aclocal-1.11 AMTAR = $${TAR-tar} AM_DEFAULT_VERBOSITY = 0 AR = mipsel-uclibc-ar -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src-rt/router/libnfnetlink/build-aux/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src-rt/router/libnfnetlink/build-aux/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src-rt/router/libnfnetlink/build-aux/missing --run automake-1.11 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/libnfnetlink/build-aux/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/libnfnetlink/build-aux/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/libnfnetlink/build-aux/missing --run automake-1.11 AWK = gawk CC = mipsel-uclibc-gcc CCDEPMODE = depmode=gcc3 @@ -158,7 +158,7 @@ LIBTOOL = $(SHELL) $(top_builddir)/libtool LIPO = LN_S = ln -s LTLIBOBJS = -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src-rt/router/libnfnetlink/build-aux/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/libnfnetlink/build-aux/missing --run makeinfo MANIFEST_TOOL = : MKDIR_P = /bin/mkdir -p NM = mipsel-uclibc-nm @@ -181,10 +181,10 @@ SET_MAKE = SHELL = /bin/sh STRIP = mipsel-uclibc-strip VERSION = 1.0.1 -abs_builddir = /home/vicente/tomato/release/src-rt/router/libnfnetlink/include -abs_srcdir = /home/vicente/tomato/release/src-rt/router/libnfnetlink/include -abs_top_builddir = /home/vicente/tomato/release/src-rt/router/libnfnetlink -abs_top_srcdir = /home/vicente/tomato/release/src-rt/router/libnfnetlink +abs_builddir = /home/vicente/repos/tomato/release/src-rt/router/libnfnetlink/include +abs_srcdir = /home/vicente/repos/tomato/release/src-rt/router/libnfnetlink/include +abs_top_builddir = /home/vicente/repos/tomato/release/src-rt/router/libnfnetlink +abs_top_srcdir = /home/vicente/repos/tomato/release/src-rt/router/libnfnetlink ac_ct_AR = ac_ct_CC = ac_ct_DUMPBIN = @@ -213,7 +213,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = ${SHELL} /home/vicente/tomato/release/src-rt/router/libnfnetlink/build-aux/install-sh +install_sh = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/libnfnetlink/build-aux/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = ${datarootdir}/locale diff --git a/release/src/router/libnfnetlink/include/libnfnetlink/Makefile b/release/src/router/libnfnetlink/include/libnfnetlink/Makefile index 74906a829c..7f7f75d80a 100644 --- a/release/src/router/libnfnetlink/include/libnfnetlink/Makefile +++ b/release/src/router/libnfnetlink/include/libnfnetlink/Makefile @@ -109,13 +109,13 @@ HEADERS = $(pkginclude_HEADERS) ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src-rt/router/libnfnetlink/build-aux/missing --run aclocal-1.11 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/libnfnetlink/build-aux/missing --run aclocal-1.11 AMTAR = $${TAR-tar} AM_DEFAULT_VERBOSITY = 0 AR = mipsel-uclibc-ar -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src-rt/router/libnfnetlink/build-aux/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src-rt/router/libnfnetlink/build-aux/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src-rt/router/libnfnetlink/build-aux/missing --run automake-1.11 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/libnfnetlink/build-aux/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/libnfnetlink/build-aux/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/libnfnetlink/build-aux/missing --run automake-1.11 AWK = gawk CC = mipsel-uclibc-gcc CCDEPMODE = depmode=gcc3 @@ -148,7 +148,7 @@ LIBTOOL = $(SHELL) $(top_builddir)/libtool LIPO = LN_S = ln -s LTLIBOBJS = -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src-rt/router/libnfnetlink/build-aux/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/libnfnetlink/build-aux/missing --run makeinfo MANIFEST_TOOL = : MKDIR_P = /bin/mkdir -p NM = mipsel-uclibc-nm @@ -171,10 +171,10 @@ SET_MAKE = SHELL = /bin/sh STRIP = mipsel-uclibc-strip VERSION = 1.0.1 -abs_builddir = /home/vicente/tomato/release/src-rt/router/libnfnetlink/include/libnfnetlink -abs_srcdir = /home/vicente/tomato/release/src-rt/router/libnfnetlink/include/libnfnetlink -abs_top_builddir = /home/vicente/tomato/release/src-rt/router/libnfnetlink -abs_top_srcdir = /home/vicente/tomato/release/src-rt/router/libnfnetlink +abs_builddir = /home/vicente/repos/tomato/release/src-rt/router/libnfnetlink/include/libnfnetlink +abs_srcdir = /home/vicente/repos/tomato/release/src-rt/router/libnfnetlink/include/libnfnetlink +abs_top_builddir = /home/vicente/repos/tomato/release/src-rt/router/libnfnetlink +abs_top_srcdir = /home/vicente/repos/tomato/release/src-rt/router/libnfnetlink ac_ct_AR = ac_ct_CC = ac_ct_DUMPBIN = @@ -203,7 +203,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = ${SHELL} /home/vicente/tomato/release/src-rt/router/libnfnetlink/build-aux/install-sh +install_sh = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/libnfnetlink/build-aux/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = ${datarootdir}/locale diff --git a/release/src/router/libnfnetlink/src/Makefile b/release/src/router/libnfnetlink/src/Makefile index fb63ee85e7..4d758e966a 100644 --- a/release/src/router/libnfnetlink/src/Makefile +++ b/release/src/router/libnfnetlink/src/Makefile @@ -141,13 +141,13 @@ HEADERS = $(noinst_HEADERS) ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src-rt/router/libnfnetlink/build-aux/missing --run aclocal-1.11 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/libnfnetlink/build-aux/missing --run aclocal-1.11 AMTAR = $${TAR-tar} AM_DEFAULT_VERBOSITY = 0 AR = mipsel-uclibc-ar -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src-rt/router/libnfnetlink/build-aux/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src-rt/router/libnfnetlink/build-aux/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src-rt/router/libnfnetlink/build-aux/missing --run automake-1.11 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/libnfnetlink/build-aux/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/libnfnetlink/build-aux/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/libnfnetlink/build-aux/missing --run automake-1.11 AWK = gawk CC = mipsel-uclibc-gcc CCDEPMODE = depmode=gcc3 @@ -180,7 +180,7 @@ LIBTOOL = $(SHELL) $(top_builddir)/libtool LIPO = LN_S = ln -s LTLIBOBJS = -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src-rt/router/libnfnetlink/build-aux/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/libnfnetlink/build-aux/missing --run makeinfo MANIFEST_TOOL = : MKDIR_P = /bin/mkdir -p NM = mipsel-uclibc-nm @@ -203,10 +203,10 @@ SET_MAKE = SHELL = /bin/sh STRIP = mipsel-uclibc-strip VERSION = 1.0.1 -abs_builddir = /home/vicente/tomato/release/src-rt/router/libnfnetlink/src -abs_srcdir = /home/vicente/tomato/release/src-rt/router/libnfnetlink/src -abs_top_builddir = /home/vicente/tomato/release/src-rt/router/libnfnetlink -abs_top_srcdir = /home/vicente/tomato/release/src-rt/router/libnfnetlink +abs_builddir = /home/vicente/repos/tomato/release/src-rt/router/libnfnetlink/src +abs_srcdir = /home/vicente/repos/tomato/release/src-rt/router/libnfnetlink/src +abs_top_builddir = /home/vicente/repos/tomato/release/src-rt/router/libnfnetlink +abs_top_srcdir = /home/vicente/repos/tomato/release/src-rt/router/libnfnetlink ac_ct_AR = ac_ct_CC = ac_ct_DUMPBIN = @@ -235,7 +235,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = ${SHELL} /home/vicente/tomato/release/src-rt/router/libnfnetlink/build-aux/install-sh +install_sh = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/libnfnetlink/build-aux/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = ${datarootdir}/locale diff --git a/release/src/router/libnfnetlink/utils/Makefile b/release/src/router/libnfnetlink/utils/Makefile index afa5385a45..ab5a7802c1 100644 --- a/release/src/router/libnfnetlink/utils/Makefile +++ b/release/src/router/libnfnetlink/utils/Makefile @@ -109,13 +109,13 @@ am__can_run_installinfo = \ ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src-rt/router/libnfnetlink/build-aux/missing --run aclocal-1.11 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/libnfnetlink/build-aux/missing --run aclocal-1.11 AMTAR = $${TAR-tar} AM_DEFAULT_VERBOSITY = 0 AR = mipsel-uclibc-ar -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src-rt/router/libnfnetlink/build-aux/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src-rt/router/libnfnetlink/build-aux/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src-rt/router/libnfnetlink/build-aux/missing --run automake-1.11 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/libnfnetlink/build-aux/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/libnfnetlink/build-aux/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/libnfnetlink/build-aux/missing --run automake-1.11 AWK = gawk CC = mipsel-uclibc-gcc CCDEPMODE = depmode=gcc3 @@ -148,7 +148,7 @@ LIBTOOL = $(SHELL) $(top_builddir)/libtool LIPO = LN_S = ln -s LTLIBOBJS = -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src-rt/router/libnfnetlink/build-aux/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/libnfnetlink/build-aux/missing --run makeinfo MANIFEST_TOOL = : MKDIR_P = /bin/mkdir -p NM = mipsel-uclibc-nm @@ -171,10 +171,10 @@ SET_MAKE = SHELL = /bin/sh STRIP = mipsel-uclibc-strip VERSION = 1.0.1 -abs_builddir = /home/vicente/tomato/release/src-rt/router/libnfnetlink/utils -abs_srcdir = /home/vicente/tomato/release/src-rt/router/libnfnetlink/utils -abs_top_builddir = /home/vicente/tomato/release/src-rt/router/libnfnetlink -abs_top_srcdir = /home/vicente/tomato/release/src-rt/router/libnfnetlink +abs_builddir = /home/vicente/repos/tomato/release/src-rt/router/libnfnetlink/utils +abs_srcdir = /home/vicente/repos/tomato/release/src-rt/router/libnfnetlink/utils +abs_top_builddir = /home/vicente/repos/tomato/release/src-rt/router/libnfnetlink +abs_top_srcdir = /home/vicente/repos/tomato/release/src-rt/router/libnfnetlink ac_ct_AR = ac_ct_CC = ac_ct_DUMPBIN = @@ -203,7 +203,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = ${SHELL} /home/vicente/tomato/release/src-rt/router/libnfnetlink/build-aux/install-sh +install_sh = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/libnfnetlink/build-aux/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = ${datarootdir}/locale diff --git a/release/src/router/libogg/Makefile b/release/src/router/libogg/Makefile index eadad9fff8..4525f574ab 100644 --- a/release/src/router/libogg/Makefile +++ b/release/src/router/libogg/Makefile @@ -83,12 +83,12 @@ DIST_ARCHIVES = $(distdir).tar.gz $(distdir).zip GZIP_ENV = --best distuninstallcheck_listfiles = find . -type f -print distcleancheck_listfiles = find . -type f -print -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/libogg/missing --run aclocal-1.10 -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/libogg/missing --run tar +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/libogg/missing --run aclocal-1.10 +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/libogg/missing --run tar AR = mipsel-uclibc-ar -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/libogg/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/libogg/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/libogg/missing --run automake-1.10 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/libogg/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/libogg/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/libogg/missing --run automake-1.10 AWK = gawk CC = mipsel-uclibc-gcc CCDEPMODE = depmode=gcc3 @@ -129,7 +129,7 @@ LIB_REVISION = 0 LN_S = ln -s LTLIBOBJS = ${LIBOBJDIR}memcmp$U.lo MAINT = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/libogg/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/libogg/missing --run makeinfo MKDIR_P = /bin/mkdir -p NMEDIT = OBJEXT = o @@ -153,10 +153,10 @@ STRIP = mipsel-uclibc-strip -R .note -R .comment USIZE16 = unsigned short USIZE32 = unsigned int VERSION = 1.1.4 -abs_builddir = /home/vicente/tomato/release/src/router/libogg -abs_srcdir = /home/vicente/tomato/release/src/router/libogg -abs_top_builddir = /home/vicente/tomato/release/src/router/libogg -abs_top_srcdir = /home/vicente/tomato/release/src/router/libogg +abs_builddir = /home/vicente/repos/tomato/release/src/router/libogg +abs_srcdir = /home/vicente/repos/tomato/release/src/router/libogg +abs_top_builddir = /home/vicente/repos/tomato/release/src/router/libogg +abs_top_srcdir = /home/vicente/repos/tomato/release/src/router/libogg ac_ct_CC = ac_ct_CXX = ac_ct_F77 = @@ -185,7 +185,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = $(SHELL) /home/vicente/tomato/release/src/router/libogg/install-sh +install_sh = $(SHELL) /home/vicente/repos/tomato/release/src/router/libogg/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = ${datarootdir}/locale diff --git a/release/src/router/libogg/config.log b/release/src/router/libogg/config.log deleted file mode 100644 index 250b980bc2..0000000000 --- a/release/src/router/libogg/config.log +++ /dev/null @@ -1,1766 +0,0 @@ -This file contains any messages produced by compilers while -running configure, to aid debugging if configure makes a mistake. - -It was created by configure, which was -generated by GNU Autoconf 2.61. Invocation command line was - - $ ./configure --host=mipsel-linux --build=x86_64-linux-gnu --enable-shared --enable-static --prefix= - -## --------- ## -## Platform. ## -## --------- ## - -hostname = vicente-P5K-E -uname -m = x86_64 -uname -r = 3.2.0-47-generic -uname -s = Linux -uname -v = #72-Ubuntu SMP Mon Jun 3 17:53:49 UTC 2013 - -/usr/bin/uname -p = unknown -/bin/uname -X = unknown - -/bin/arch = unknown -/usr/bin/arch -k = unknown -/usr/convex/getsysinfo = unknown -/usr/bin/hostinfo = unknown -/bin/machine = unknown -/usr/bin/oslevel = unknown -/bin/universe = unknown - -PATH: /home/vicente/tomato/release/tools -PATH: /home/vicente/tomato/release/tools -PATH: /home/vicente/tomato/release/tools -PATH: /home/vicente/tomato/release/tools -PATH: /opt/brcm/hndtools-mipsel-uclibc/bin -PATH: /opt/brcm/hndtools-mipsel-linux/bin -PATH: /usr/lib/lightdm/lightdm -PATH: /usr/local/sbin -PATH: /usr/local/bin -PATH: /usr/sbin -PATH: /usr/bin -PATH: /sbin -PATH: /bin -PATH: /usr/games - - -## ----------- ## -## Core tests. ## -## ----------- ## - -configure:1986: checking for a BSD-compatible install -configure:2042: result: /usr/bin/install -c -configure:2053: checking whether build environment is sane -configure:2096: result: yes -configure:2124: checking for a thread-safe mkdir -p -configure:2163: result: /bin/mkdir -p -configure:2176: checking for gawk -configure:2192: found /usr/bin/gawk -configure:2203: result: gawk -configure:2214: checking whether make sets $(MAKE) -configure:2235: result: yes -configure:2315: checking for mipsel-linux-strip -configure:2342: result: mipsel-uclibc-strip -R .note -R .comment -configure:2423: checking whether to enable maintainer-specific portions of Makefiles -configure:2432: result: no -configure:2462: checking for mipsel-linux-gcc -configure:2489: result: mipsel-uclibc-gcc -configure:2767: checking for C compiler version -configure:2774: mipsel-uclibc-gcc --version >&5 -mipsel-uclibc-gcc (GCC) 4.2.4 -Copyright (C) 2007 Free Software Foundation, Inc. -This is free software; see the source for copying conditions. There is NO -warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - -configure:2777: $? = 0 -configure:2784: mipsel-uclibc-gcc -v >&5 -Using built-in specs. -Target: mipsel-linux-uclibc -Configured with: /home/fedork/tomato/toolchain/build_dir/toolchain-mipsel_gcc4.2.4/gcc-4.2.4/configure --prefix=/opt/brcm/hndtools-mipsel-uclibc-4.2.4 --build=i486-linux-gnu --host=i486-linux-gnu --target=mipsel-linux-uclibc --with-gnu-ld --enable-target-optspace --disable-libgomp --disable-libmudflap --disable-multilib --disable-nls --disable-__cxa_atexit --enable-libssp --enable-languages=c,c++ --enable-shared --enable-threads --enable-tls -Thread model: posix -gcc version 4.2.4 -configure:2787: $? = 0 -configure:2794: mipsel-uclibc-gcc -V >&5 -mipsel-uclibc-gcc: '-V' option must have argument -configure:2797: $? = 1 -configure:2820: checking for C compiler default output file name -configure:2847: mipsel-uclibc-gcc -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections conftest.c >&5 -configure:2850: $? = 0 -configure:2888: result: a.out -configure:2905: checking whether the C compiler works -configure:2935: result: yes -configure:2942: checking whether we are cross compiling -configure:2944: result: yes -configure:2947: checking for suffix of executables -configure:2954: mipsel-uclibc-gcc -o conftest -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections conftest.c >&5 -configure:2957: $? = 0 -configure:2981: result: -configure:2987: checking for suffix of object files -configure:3013: mipsel-uclibc-gcc -c -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections conftest.c >&5 -configure:3016: $? = 0 -configure:3039: result: o -configure:3043: checking whether we are using the GNU C compiler -configure:3072: mipsel-uclibc-gcc -c -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections conftest.c >&5 -configure:3078: $? = 0 -configure:3095: result: yes -configure:3100: checking whether mipsel-uclibc-gcc accepts -g -configure:3130: mipsel-uclibc-gcc -c -g conftest.c >&5 -configure:3136: $? = 0 -configure:3235: result: yes -configure:3252: checking for mipsel-uclibc-gcc option to accept ISO C89 -configure:3326: mipsel-uclibc-gcc -c -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections conftest.c >&5 -configure:3332: $? = 0 -configure:3355: result: none needed -configure:3384: checking for style of include used by make -configure:3412: result: GNU -configure:3437: checking dependency style of mipsel-uclibc-gcc -configure:3528: result: gcc3 -configure:3621: checking build system type -configure:3639: result: x86_64-pc-linux-gnu -configure:3661: checking host system type -configure:3676: result: mipsel-unknown-linux-gnu -configure:3698: checking for a sed that does not truncate output -configure:3754: result: /bin/sed -configure:3757: checking for grep that handles long lines and -e -configure:3831: result: /bin/grep -configure:3836: checking for egrep -configure:3914: result: /bin/grep -E -configure:3930: checking for ld used by mipsel-uclibc-gcc -configure:3997: result: mipsel-uclibc-ld -configure:4006: checking if the linker (mipsel-uclibc-ld) is GNU ld -configure:4021: result: yes -configure:4026: checking for mipsel-uclibc-ld option to reload object files -configure:4033: result: -r -configure:4051: checking for BSD-compatible nm -configure:4100: result: mipsel-uclibc-nm -configure:4104: checking whether ln -s works -configure:4108: result: yes -configure:4115: checking how to recognize dependent libraries -configure:4301: result: pass_all -configure:4546: checking how to run the C preprocessor -configure:4586: mipsel-uclibc-gcc -E conftest.c -configure:4592: $? = 0 -configure:4623: mipsel-uclibc-gcc -E conftest.c -conftest.c:10:28: error: ac_nonexistent.h: No such file or directory -configure:4629: $? = 1 -configure: failed program was: -| /* confdefs.h. */ -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE "libogg" -| #define VERSION "1.1.4" -| /* end confdefs.h. */ -| #include -configure:4662: result: mipsel-uclibc-gcc -E -configure:4691: mipsel-uclibc-gcc -E conftest.c -configure:4697: $? = 0 -configure:4728: mipsel-uclibc-gcc -E conftest.c -conftest.c:10:28: error: ac_nonexistent.h: No such file or directory -configure:4734: $? = 1 -configure: failed program was: -| /* confdefs.h. */ -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE "libogg" -| #define VERSION "1.1.4" -| /* end confdefs.h. */ -| #include -configure:4772: checking for ANSI C header files -configure:4802: mipsel-uclibc-gcc -c -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections conftest.c >&5 -configure:4808: $? = 0 -configure:4936: result: yes -configure:4960: checking for sys/types.h -configure:4981: mipsel-uclibc-gcc -c -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections conftest.c >&5 -configure:4987: $? = 0 -configure:5003: result: yes -configure:4960: checking for sys/stat.h -configure:4981: mipsel-uclibc-gcc -c -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections conftest.c >&5 -configure:4987: $? = 0 -configure:5003: result: yes -configure:4960: checking for stdlib.h -configure:4981: mipsel-uclibc-gcc -c -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections conftest.c >&5 -configure:4987: $? = 0 -configure:5003: result: yes -configure:4960: checking for string.h -configure:4981: mipsel-uclibc-gcc -c -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections conftest.c >&5 -configure:4987: $? = 0 -configure:5003: result: yes -configure:4960: checking for memory.h -configure:4981: mipsel-uclibc-gcc -c -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections conftest.c >&5 -configure:4987: $? = 0 -configure:5003: result: yes -configure:4960: checking for strings.h -configure:4981: mipsel-uclibc-gcc -c -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections conftest.c >&5 -configure:4987: $? = 0 -configure:5003: result: yes -configure:4960: checking for inttypes.h -configure:4981: mipsel-uclibc-gcc -c -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections conftest.c >&5 -configure:4987: $? = 0 -configure:5003: result: yes -configure:4960: checking for stdint.h -configure:4981: mipsel-uclibc-gcc -c -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections conftest.c >&5 -configure:4987: $? = 0 -configure:5003: result: yes -configure:4960: checking for unistd.h -configure:4981: mipsel-uclibc-gcc -c -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections conftest.c >&5 -configure:4987: $? = 0 -configure:5003: result: yes -configure:5030: checking dlfcn.h usability -configure:5047: mipsel-uclibc-gcc -c -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections conftest.c >&5 -configure:5053: $? = 0 -configure:5067: result: yes -configure:5071: checking dlfcn.h presence -configure:5086: mipsel-uclibc-gcc -E conftest.c -configure:5092: $? = 0 -configure:5106: result: yes -configure:5134: checking for dlfcn.h -configure:5142: result: yes -configure:5169: checking for mipsel-linux-g++ -configure:5185: found /opt/brcm/hndtools-mipsel-uclibc/bin/mipsel-linux-g++ -configure:5196: result: mipsel-linux-g++ -configure:5271: checking for C++ compiler version -configure:5278: mipsel-linux-g++ --version >&5 -mipsel-linux-g++ (GCC) 4.2.4 -Copyright (C) 2007 Free Software Foundation, Inc. -This is free software; see the source for copying conditions. There is NO -warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - -configure:5281: $? = 0 -configure:5288: mipsel-linux-g++ -v >&5 -Using built-in specs. -Target: mipsel-linux-uclibc -Configured with: /home/fedork/tomato/toolchain/build_dir/toolchain-mipsel_gcc4.2.4/gcc-4.2.4/configure --prefix=/opt/brcm/hndtools-mipsel-uclibc-4.2.4 --build=i486-linux-gnu --host=i486-linux-gnu --target=mipsel-linux-uclibc --with-gnu-ld --enable-target-optspace --disable-libgomp --disable-libmudflap --disable-multilib --disable-nls --disable-__cxa_atexit --enable-libssp --enable-languages=c,c++ --enable-shared --enable-threads --enable-tls -Thread model: posix -gcc version 4.2.4 -configure:5291: $? = 0 -configure:5298: mipsel-linux-g++ -V >&5 -mipsel-linux-g++: '-V' option must have argument -configure:5301: $? = 1 -configure:5304: checking whether we are using the GNU C++ compiler -configure:5333: mipsel-linux-g++ -c conftest.cpp >&5 -configure:5339: $? = 0 -configure:5356: result: yes -configure:5361: checking whether mipsel-linux-g++ accepts -g -configure:5391: mipsel-linux-g++ -c -g conftest.cpp >&5 -configure:5397: $? = 0 -configure:5496: result: yes -configure:5521: checking dependency style of mipsel-linux-g++ -configure:5612: result: gcc3 -configure:5637: checking how to run the C++ preprocessor -configure:5673: mipsel-linux-g++ -E conftest.cpp -configure:5679: $? = 0 -configure:5710: mipsel-linux-g++ -E conftest.cpp -conftest.cpp:21:28: error: ac_nonexistent.h: No such file or directory -configure:5716: $? = 1 -configure: failed program was: -| /* confdefs.h. */ -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE "libogg" -| #define VERSION "1.1.4" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_DLFCN_H 1 -| /* end confdefs.h. */ -| #include -configure:5749: result: mipsel-linux-g++ -E -configure:5778: mipsel-linux-g++ -E conftest.cpp -configure:5784: $? = 0 -configure:5815: mipsel-linux-g++ -E conftest.cpp -conftest.cpp:21:28: error: ac_nonexistent.h: No such file or directory -configure:5821: $? = 1 -configure: failed program was: -| /* confdefs.h. */ -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE "libogg" -| #define VERSION "1.1.4" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_DLFCN_H 1 -| /* end confdefs.h. */ -| #include -configure:5870: checking for mipsel-linux-g77 -configure:5900: result: no -configure:5870: checking for mipsel-linux-xlf -configure:5900: result: no -configure:5870: checking for mipsel-linux-f77 -configure:5900: result: no -configure:5870: checking for mipsel-linux-frt -configure:5900: result: no -configure:5870: checking for mipsel-linux-pgf77 -configure:5900: result: no -configure:5870: checking for mipsel-linux-cf77 -configure:5900: result: no -configure:5870: checking for mipsel-linux-fort77 -configure:5900: result: no -configure:5870: checking for mipsel-linux-fl32 -configure:5900: result: no -configure:5870: checking for mipsel-linux-af77 -configure:5900: result: no -configure:5870: checking for mipsel-linux-xlf90 -configure:5900: result: no -configure:5870: checking for mipsel-linux-f90 -configure:5900: result: no -configure:5870: checking for mipsel-linux-pgf90 -configure:5900: result: no -configure:5870: checking for mipsel-linux-pghpf -configure:5900: result: no -configure:5870: checking for mipsel-linux-epcf90 -configure:5900: result: no -configure:5870: checking for mipsel-linux-gfortran -configure:5900: result: no -configure:5870: checking for mipsel-linux-g95 -configure:5900: result: no -configure:5870: checking for mipsel-linux-xlf95 -configure:5900: result: no -configure:5870: checking for mipsel-linux-f95 -configure:5900: result: no -configure:5870: checking for mipsel-linux-fort -configure:5900: result: no -configure:5870: checking for mipsel-linux-ifort -configure:5900: result: no -configure:5870: checking for mipsel-linux-ifc -configure:5900: result: no -configure:5870: checking for mipsel-linux-efc -configure:5900: result: no -configure:5870: checking for mipsel-linux-pgf95 -configure:5900: result: no -configure:5870: checking for mipsel-linux-lf95 -configure:5900: result: no -configure:5870: checking for mipsel-linux-ftn -configure:5900: result: no -configure:5914: checking for g77 -configure:5944: result: no -configure:5914: checking for xlf -configure:5944: result: no -configure:5914: checking for f77 -configure:5944: result: no -configure:5914: checking for frt -configure:5944: result: no -configure:5914: checking for pgf77 -configure:5944: result: no -configure:5914: checking for cf77 -configure:5944: result: no -configure:5914: checking for fort77 -configure:5944: result: no -configure:5914: checking for fl32 -configure:5944: result: no -configure:5914: checking for af77 -configure:5944: result: no -configure:5914: checking for xlf90 -configure:5944: result: no -configure:5914: checking for f90 -configure:5944: result: no -configure:5914: checking for pgf90 -configure:5944: result: no -configure:5914: checking for pghpf -configure:5944: result: no -configure:5914: checking for epcf90 -configure:5944: result: no -configure:5914: checking for gfortran -configure:5944: result: no -configure:5914: checking for g95 -configure:5944: result: no -configure:5914: checking for xlf95 -configure:5944: result: no -configure:5914: checking for f95 -configure:5944: result: no -configure:5914: checking for fort -configure:5944: result: no -configure:5914: checking for ifort -configure:5944: result: no -configure:5914: checking for ifc -configure:5944: result: no -configure:5914: checking for efc -configure:5944: result: no -configure:5914: checking for pgf95 -configure:5944: result: no -configure:5914: checking for lf95 -configure:5944: result: no -configure:5914: checking for ftn -configure:5944: result: no -configure:5971: checking for Fortran 77 compiler version -configure:5978: --version >&5 -./configure: line 5979: --version: command not found -configure:5981: $? = 127 -configure:5988: -v >&5 -./configure: line 5989: -v: command not found -configure:5991: $? = 127 -configure:5998: -V >&5 -./configure: line 5999: -V: command not found -configure:6001: $? = 127 -configure:6009: checking whether we are using the GNU Fortran 77 compiler -configure:6028: -c conftest.F >&5 -./configure: line 6029: -c: command not found -configure:6034: $? = 127 -configure: failed program was: -| program main -| #ifndef __GNUC__ -| choke me -| #endif -| -| end -configure:6051: result: no -configure:6057: checking whether accepts -g -configure:6074: -c -g conftest.f >&5 -./configure: line 6075: -c: command not found -configure:6080: $? = 127 -configure: failed program was: -| program main -| -| end -configure:6096: result: no -configure:6125: checking the maximum length of command line arguments -configure:6237: result: 3458764513820540925 -configure:6249: checking command to parse mipsel-uclibc-nm output from mipsel-uclibc-gcc object -configure:6354: mipsel-uclibc-gcc -c -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections conftest.c >&5 -configure:6357: $? = 0 -configure:6361: mipsel-uclibc-nm conftest.o \| sed -n -e 's/^.*[ ]\([ABCDGIRSTW][ABCDGIRSTW]*\)[ ][ ]*\([_A-Za-z][_A-Za-z0-9]*\)$/\1 \2 \2/p' \> conftest.nm -configure:6364: $? = 0 -configure:6416: mipsel-uclibc-gcc -o conftest -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections conftest.c conftstm.o >&5 -configure:6419: $? = 0 -configure:6457: result: ok -configure:6461: checking for objdir -configure:6476: result: .libs -configure:6528: checking for mipsel-linux-ar -configure:6555: result: mipsel-uclibc-ar -configure:6624: checking for mipsel-linux-ranlib -configure:6651: result: mipsel-uclibc-ranlib -configure:6720: checking for mipsel-linux-strip -configure:6747: result: mipsel-uclibc-strip -R .note -R .comment -configure:7385: checking if mipsel-uclibc-gcc supports -fno-rtti -fno-exceptions -configure:7403: mipsel-uclibc-gcc -c -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -fno-rtti -fno-exceptions conftest.c >&5 -cc1: warning: command line option "-fno-rtti" is valid for C++/ObjC++ but not for C -configure:7407: $? = 0 -configure:7420: result: no -configure:7435: checking for mipsel-uclibc-gcc option to produce PIC -configure:7667: result: -fPIC -configure:7675: checking if mipsel-uclibc-gcc PIC flag -fPIC works -configure:7693: mipsel-uclibc-gcc -c -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -fPIC -DPIC conftest.c >&5 -configure:7697: $? = 0 -configure:7710: result: yes -configure:7738: checking if mipsel-uclibc-gcc static flag -static works -configure:7766: result: yes -configure:7776: checking if mipsel-uclibc-gcc supports -c -o file.o -configure:7797: mipsel-uclibc-gcc -c -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -o out/conftest2.o conftest.c >&5 -configure:7801: $? = 0 -configure:7823: result: yes -configure:7849: checking whether the mipsel-uclibc-gcc linker (mipsel-uclibc-ld) supports shared libraries -configure:8830: result: yes -configure:8851: checking whether -lc should be explicitly linked in -configure:8856: mipsel-uclibc-gcc -c -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections conftest.c >&5 -configure:8859: $? = 0 -configure:8874: mipsel-uclibc-gcc -shared conftest.o -v -Wl,-soname -Wl,conftest -o conftest 2\>\&1 \| grep -lc \>/dev/null 2\>\&1 -configure:8877: $? = 0 -configure:8889: result: no -configure:8897: checking dynamic linker characteristics -configure:9511: result: GNU/Linux ld.so -configure:9535: checking how to hardcode library paths into programs -configure:9560: result: immediate -configure:9574: checking whether stripping libraries is possible -configure:9579: result: yes -configure:10381: checking if libtool supports shared libraries -configure:10383: result: yes -configure:10386: checking whether to build shared libraries -configure:10407: result: yes -configure:10410: checking whether to build static libraries -configure:10414: result: yes -configure:10508: creating libtool -configure:11101: checking for ld used by mipsel-linux-g++ -configure:11168: result: mipsel-uclibc-ld -configure:11177: checking if the linker (mipsel-uclibc-ld) is GNU ld -configure:11192: result: yes -configure:11243: checking whether the mipsel-linux-g++ linker (mipsel-uclibc-ld) supports shared libraries -configure:12189: result: yes -configure:12206: mipsel-linux-g++ -c -g -O2 conftest.cpp >&5 -configure:12209: $? = 0 -configure:12365: checking for mipsel-linux-g++ option to produce PIC -configure:12649: result: -fPIC -configure:12657: checking if mipsel-linux-g++ PIC flag -fPIC works -configure:12675: mipsel-linux-g++ -c -g -O2 -fPIC -DPIC conftest.cpp >&5 -configure:12679: $? = 0 -configure:12692: result: yes -configure:12720: checking if mipsel-linux-g++ static flag -static works -configure:12748: result: yes -configure:12758: checking if mipsel-linux-g++ supports -c -o file.o -configure:12779: mipsel-linux-g++ -c -g -O2 -o out/conftest2.o conftest.cpp >&5 -configure:12783: $? = 0 -configure:12805: result: yes -configure:12831: checking whether the mipsel-linux-g++ linker (mipsel-uclibc-ld) supports shared libraries -configure:12860: result: yes -configure:12927: checking dynamic linker characteristics -configure:13489: result: GNU/Linux ld.so -configure:13513: checking how to hardcode library paths into programs -configure:13538: result: immediate -configure:19786: checking whether mipsel-uclibc-gcc and cc understand -c and -o together -configure:19821: mipsel-uclibc-gcc -c conftest.c -o conftest2.o >&5 -configure:19824: $? = 0 -configure:19830: mipsel-uclibc-gcc -c conftest.c -o conftest2.o >&5 -configure:19833: $? = 0 -configure:19844: cc -c conftest.c >&5 -configure:19847: $? = 0 -configure:19855: cc -c conftest.c -o conftest2.o >&5 -configure:19858: $? = 0 -configure:19864: cc -c conftest.c -o conftest2.o >&5 -configure:19867: $? = 0 -configure:19885: result: yes -configure:20016: checking for ANSI C header files -configure:20180: result: yes -configure:20191: checking for an ANSI C-conforming const -configure:20266: mipsel-uclibc-gcc -c -O20 -ffast-math -fsigned-char -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections conftest.c >&5 -configure:20272: $? = 0 -configure:20287: result: yes -configure:20299: checking for int16_t -configure:20358: result: no -configure:20361: checking for int32_t -configure:20420: result: no -configure:20423: checking for uint32_t -configure:20482: result: no -configure:20485: checking for uint16_t -configure:20544: result: no -configure:20547: checking for u_int32_t -configure:20606: result: no -configure:20609: checking for u_int16_t -configure:20668: result: no -configure:20671: checking for int64_t -configure:20730: result: no -configure:20733: checking for short -configure:20763: mipsel-uclibc-gcc -c -O20 -ffast-math -fsigned-char -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections conftest.c >&5 -configure:20769: $? = 0 -configure:20784: result: yes -configure:20791: checking size of short -configure:20822: mipsel-uclibc-gcc -c -O20 -ffast-math -fsigned-char -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections conftest.c >&5 -configure:20828: $? = 0 -configure:20859: mipsel-uclibc-gcc -c -O20 -ffast-math -fsigned-char -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections conftest.c >&5 -conftest.c: In function 'main': -conftest.c:59: error: size of array 'test_array' is negative -configure:20865: $? = 1 -configure: failed program was: -| /* confdefs.h. */ -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE "libogg" -| #define VERSION "1.1.4" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_DLFCN_H 1 -| #define STDC_HEADERS 1 -| /* end confdefs.h. */ -| #include -| #ifdef HAVE_SYS_TYPES_H -| # include -| #endif -| #ifdef HAVE_SYS_STAT_H -| # include -| #endif -| #ifdef STDC_HEADERS -| # include -| # include -| #else -| # ifdef HAVE_STDLIB_H -| # include -| # endif -| #endif -| #ifdef HAVE_STRING_H -| # if !defined STDC_HEADERS && defined HAVE_MEMORY_H -| # include -| # endif -| # include -| #endif -| #ifdef HAVE_STRINGS_H -| # include -| #endif -| #ifdef HAVE_INTTYPES_H -| # include -| #endif -| #ifdef HAVE_STDINT_H -| # include -| #endif -| #ifdef HAVE_UNISTD_H -| # include -| #endif -| typedef short ac__type_sizeof_; -| int -| main () -| { -| static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) <= 0)]; -| test_array [0] = 0 -| -| ; -| return 0; -| } -configure:20859: mipsel-uclibc-gcc -c -O20 -ffast-math -fsigned-char -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections conftest.c >&5 -conftest.c: In function 'main': -conftest.c:59: error: size of array 'test_array' is negative -configure:20865: $? = 1 -configure: failed program was: -| /* confdefs.h. */ -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE "libogg" -| #define VERSION "1.1.4" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_DLFCN_H 1 -| #define STDC_HEADERS 1 -| /* end confdefs.h. */ -| #include -| #ifdef HAVE_SYS_TYPES_H -| # include -| #endif -| #ifdef HAVE_SYS_STAT_H -| # include -| #endif -| #ifdef STDC_HEADERS -| # include -| # include -| #else -| # ifdef HAVE_STDLIB_H -| # include -| # endif -| #endif -| #ifdef HAVE_STRING_H -| # if !defined STDC_HEADERS && defined HAVE_MEMORY_H -| # include -| # endif -| # include -| #endif -| #ifdef HAVE_STRINGS_H -| # include -| #endif -| #ifdef HAVE_INTTYPES_H -| # include -| #endif -| #ifdef HAVE_STDINT_H -| # include -| #endif -| #ifdef HAVE_UNISTD_H -| # include -| #endif -| typedef short ac__type_sizeof_; -| int -| main () -| { -| static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) <= 1)]; -| test_array [0] = 0 -| -| ; -| return 0; -| } -configure:20859: mipsel-uclibc-gcc -c -O20 -ffast-math -fsigned-char -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections conftest.c >&5 -configure:20865: $? = 0 -configure:21014: mipsel-uclibc-gcc -c -O20 -ffast-math -fsigned-char -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections conftest.c >&5 -configure:21020: $? = 0 -configure:21128: result: 2 -configure:21138: checking for int -configure:21168: mipsel-uclibc-gcc -c -O20 -ffast-math -fsigned-char -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections conftest.c >&5 -configure:21174: $? = 0 -configure:21189: result: yes -configure:21196: checking size of int -configure:21227: mipsel-uclibc-gcc -c -O20 -ffast-math -fsigned-char -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections conftest.c >&5 -configure:21233: $? = 0 -configure:21264: mipsel-uclibc-gcc -c -O20 -ffast-math -fsigned-char -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections conftest.c >&5 -conftest.c: In function 'main': -conftest.c:60: error: size of array 'test_array' is negative -configure:21270: $? = 1 -configure: failed program was: -| /* confdefs.h. */ -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE "libogg" -| #define VERSION "1.1.4" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_DLFCN_H 1 -| #define STDC_HEADERS 1 -| #define SIZEOF_SHORT 2 -| /* end confdefs.h. */ -| #include -| #ifdef HAVE_SYS_TYPES_H -| # include -| #endif -| #ifdef HAVE_SYS_STAT_H -| # include -| #endif -| #ifdef STDC_HEADERS -| # include -| # include -| #else -| # ifdef HAVE_STDLIB_H -| # include -| # endif -| #endif -| #ifdef HAVE_STRING_H -| # if !defined STDC_HEADERS && defined HAVE_MEMORY_H -| # include -| # endif -| # include -| #endif -| #ifdef HAVE_STRINGS_H -| # include -| #endif -| #ifdef HAVE_INTTYPES_H -| # include -| #endif -| #ifdef HAVE_STDINT_H -| # include -| #endif -| #ifdef HAVE_UNISTD_H -| # include -| #endif -| typedef int ac__type_sizeof_; -| int -| main () -| { -| static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) <= 0)]; -| test_array [0] = 0 -| -| ; -| return 0; -| } -configure:21264: mipsel-uclibc-gcc -c -O20 -ffast-math -fsigned-char -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections conftest.c >&5 -conftest.c: In function 'main': -conftest.c:60: error: size of array 'test_array' is negative -configure:21270: $? = 1 -configure: failed program was: -| /* confdefs.h. */ -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE "libogg" -| #define VERSION "1.1.4" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_DLFCN_H 1 -| #define STDC_HEADERS 1 -| #define SIZEOF_SHORT 2 -| /* end confdefs.h. */ -| #include -| #ifdef HAVE_SYS_TYPES_H -| # include -| #endif -| #ifdef HAVE_SYS_STAT_H -| # include -| #endif -| #ifdef STDC_HEADERS -| # include -| # include -| #else -| # ifdef HAVE_STDLIB_H -| # include -| # endif -| #endif -| #ifdef HAVE_STRING_H -| # if !defined STDC_HEADERS && defined HAVE_MEMORY_H -| # include -| # endif -| # include -| #endif -| #ifdef HAVE_STRINGS_H -| # include -| #endif -| #ifdef HAVE_INTTYPES_H -| # include -| #endif -| #ifdef HAVE_STDINT_H -| # include -| #endif -| #ifdef HAVE_UNISTD_H -| # include -| #endif -| typedef int ac__type_sizeof_; -| int -| main () -| { -| static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) <= 1)]; -| test_array [0] = 0 -| -| ; -| return 0; -| } -configure:21264: mipsel-uclibc-gcc -c -O20 -ffast-math -fsigned-char -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections conftest.c >&5 -conftest.c: In function 'main': -conftest.c:60: error: size of array 'test_array' is negative -configure:21270: $? = 1 -configure: failed program was: -| /* confdefs.h. */ -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE "libogg" -| #define VERSION "1.1.4" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_DLFCN_H 1 -| #define STDC_HEADERS 1 -| #define SIZEOF_SHORT 2 -| /* end confdefs.h. */ -| #include -| #ifdef HAVE_SYS_TYPES_H -| # include -| #endif -| #ifdef HAVE_SYS_STAT_H -| # include -| #endif -| #ifdef STDC_HEADERS -| # include -| # include -| #else -| # ifdef HAVE_STDLIB_H -| # include -| # endif -| #endif -| #ifdef HAVE_STRING_H -| # if !defined STDC_HEADERS && defined HAVE_MEMORY_H -| # include -| # endif -| # include -| #endif -| #ifdef HAVE_STRINGS_H -| # include -| #endif -| #ifdef HAVE_INTTYPES_H -| # include -| #endif -| #ifdef HAVE_STDINT_H -| # include -| #endif -| #ifdef HAVE_UNISTD_H -| # include -| #endif -| typedef int ac__type_sizeof_; -| int -| main () -| { -| static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) <= 3)]; -| test_array [0] = 0 -| -| ; -| return 0; -| } -configure:21264: mipsel-uclibc-gcc -c -O20 -ffast-math -fsigned-char -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections conftest.c >&5 -configure:21270: $? = 0 -configure:21419: mipsel-uclibc-gcc -c -O20 -ffast-math -fsigned-char -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections conftest.c >&5 -configure:21425: $? = 0 -configure:21419: mipsel-uclibc-gcc -c -O20 -ffast-math -fsigned-char -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections conftest.c >&5 -configure:21425: $? = 0 -configure:21533: result: 4 -configure:21543: checking for long -configure:21573: mipsel-uclibc-gcc -c -O20 -ffast-math -fsigned-char -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections conftest.c >&5 -configure:21579: $? = 0 -configure:21594: result: yes -configure:21601: checking size of long -configure:21632: mipsel-uclibc-gcc -c -O20 -ffast-math -fsigned-char -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections conftest.c >&5 -configure:21638: $? = 0 -configure:21669: mipsel-uclibc-gcc -c -O20 -ffast-math -fsigned-char -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections conftest.c >&5 -conftest.c: In function 'main': -conftest.c:61: error: size of array 'test_array' is negative -configure:21675: $? = 1 -configure: failed program was: -| /* confdefs.h. */ -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE "libogg" -| #define VERSION "1.1.4" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_DLFCN_H 1 -| #define STDC_HEADERS 1 -| #define SIZEOF_SHORT 2 -| #define SIZEOF_INT 4 -| /* end confdefs.h. */ -| #include -| #ifdef HAVE_SYS_TYPES_H -| # include -| #endif -| #ifdef HAVE_SYS_STAT_H -| # include -| #endif -| #ifdef STDC_HEADERS -| # include -| # include -| #else -| # ifdef HAVE_STDLIB_H -| # include -| # endif -| #endif -| #ifdef HAVE_STRING_H -| # if !defined STDC_HEADERS && defined HAVE_MEMORY_H -| # include -| # endif -| # include -| #endif -| #ifdef HAVE_STRINGS_H -| # include -| #endif -| #ifdef HAVE_INTTYPES_H -| # include -| #endif -| #ifdef HAVE_STDINT_H -| # include -| #endif -| #ifdef HAVE_UNISTD_H -| # include -| #endif -| typedef long ac__type_sizeof_; -| int -| main () -| { -| static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) <= 0)]; -| test_array [0] = 0 -| -| ; -| return 0; -| } -configure:21669: mipsel-uclibc-gcc -c -O20 -ffast-math -fsigned-char -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections conftest.c >&5 -conftest.c: In function 'main': -conftest.c:61: error: size of array 'test_array' is negative -configure:21675: $? = 1 -configure: failed program was: -| /* confdefs.h. */ -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE "libogg" -| #define VERSION "1.1.4" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_DLFCN_H 1 -| #define STDC_HEADERS 1 -| #define SIZEOF_SHORT 2 -| #define SIZEOF_INT 4 -| /* end confdefs.h. */ -| #include -| #ifdef HAVE_SYS_TYPES_H -| # include -| #endif -| #ifdef HAVE_SYS_STAT_H -| # include -| #endif -| #ifdef STDC_HEADERS -| # include -| # include -| #else -| # ifdef HAVE_STDLIB_H -| # include -| # endif -| #endif -| #ifdef HAVE_STRING_H -| # if !defined STDC_HEADERS && defined HAVE_MEMORY_H -| # include -| # endif -| # include -| #endif -| #ifdef HAVE_STRINGS_H -| # include -| #endif -| #ifdef HAVE_INTTYPES_H -| # include -| #endif -| #ifdef HAVE_STDINT_H -| # include -| #endif -| #ifdef HAVE_UNISTD_H -| # include -| #endif -| typedef long ac__type_sizeof_; -| int -| main () -| { -| static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) <= 1)]; -| test_array [0] = 0 -| -| ; -| return 0; -| } -configure:21669: mipsel-uclibc-gcc -c -O20 -ffast-math -fsigned-char -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections conftest.c >&5 -conftest.c: In function 'main': -conftest.c:61: error: size of array 'test_array' is negative -configure:21675: $? = 1 -configure: failed program was: -| /* confdefs.h. */ -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE "libogg" -| #define VERSION "1.1.4" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_DLFCN_H 1 -| #define STDC_HEADERS 1 -| #define SIZEOF_SHORT 2 -| #define SIZEOF_INT 4 -| /* end confdefs.h. */ -| #include -| #ifdef HAVE_SYS_TYPES_H -| # include -| #endif -| #ifdef HAVE_SYS_STAT_H -| # include -| #endif -| #ifdef STDC_HEADERS -| # include -| # include -| #else -| # ifdef HAVE_STDLIB_H -| # include -| # endif -| #endif -| #ifdef HAVE_STRING_H -| # if !defined STDC_HEADERS && defined HAVE_MEMORY_H -| # include -| # endif -| # include -| #endif -| #ifdef HAVE_STRINGS_H -| # include -| #endif -| #ifdef HAVE_INTTYPES_H -| # include -| #endif -| #ifdef HAVE_STDINT_H -| # include -| #endif -| #ifdef HAVE_UNISTD_H -| # include -| #endif -| typedef long ac__type_sizeof_; -| int -| main () -| { -| static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) <= 3)]; -| test_array [0] = 0 -| -| ; -| return 0; -| } -configure:21669: mipsel-uclibc-gcc -c -O20 -ffast-math -fsigned-char -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections conftest.c >&5 -configure:21675: $? = 0 -configure:21824: mipsel-uclibc-gcc -c -O20 -ffast-math -fsigned-char -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections conftest.c >&5 -configure:21830: $? = 0 -configure:21824: mipsel-uclibc-gcc -c -O20 -ffast-math -fsigned-char -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections conftest.c >&5 -configure:21830: $? = 0 -configure:21938: result: 4 -configure:21948: checking for long long -configure:21978: mipsel-uclibc-gcc -c -O20 -ffast-math -fsigned-char -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections conftest.c >&5 -configure:21984: $? = 0 -configure:21999: result: yes -configure:22006: checking size of long long -configure:22037: mipsel-uclibc-gcc -c -O20 -ffast-math -fsigned-char -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections conftest.c >&5 -configure:22043: $? = 0 -configure:22074: mipsel-uclibc-gcc -c -O20 -ffast-math -fsigned-char -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections conftest.c >&5 -conftest.c: In function 'main': -conftest.c:62: error: size of array 'test_array' is negative -configure:22080: $? = 1 -configure: failed program was: -| /* confdefs.h. */ -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE "libogg" -| #define VERSION "1.1.4" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_DLFCN_H 1 -| #define STDC_HEADERS 1 -| #define SIZEOF_SHORT 2 -| #define SIZEOF_INT 4 -| #define SIZEOF_LONG 4 -| /* end confdefs.h. */ -| #include -| #ifdef HAVE_SYS_TYPES_H -| # include -| #endif -| #ifdef HAVE_SYS_STAT_H -| # include -| #endif -| #ifdef STDC_HEADERS -| # include -| # include -| #else -| # ifdef HAVE_STDLIB_H -| # include -| # endif -| #endif -| #ifdef HAVE_STRING_H -| # if !defined STDC_HEADERS && defined HAVE_MEMORY_H -| # include -| # endif -| # include -| #endif -| #ifdef HAVE_STRINGS_H -| # include -| #endif -| #ifdef HAVE_INTTYPES_H -| # include -| #endif -| #ifdef HAVE_STDINT_H -| # include -| #endif -| #ifdef HAVE_UNISTD_H -| # include -| #endif -| typedef long long ac__type_sizeof_; -| int -| main () -| { -| static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) <= 0)]; -| test_array [0] = 0 -| -| ; -| return 0; -| } -configure:22074: mipsel-uclibc-gcc -c -O20 -ffast-math -fsigned-char -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections conftest.c >&5 -conftest.c: In function 'main': -conftest.c:62: error: size of array 'test_array' is negative -configure:22080: $? = 1 -configure: failed program was: -| /* confdefs.h. */ -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE "libogg" -| #define VERSION "1.1.4" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_DLFCN_H 1 -| #define STDC_HEADERS 1 -| #define SIZEOF_SHORT 2 -| #define SIZEOF_INT 4 -| #define SIZEOF_LONG 4 -| /* end confdefs.h. */ -| #include -| #ifdef HAVE_SYS_TYPES_H -| # include -| #endif -| #ifdef HAVE_SYS_STAT_H -| # include -| #endif -| #ifdef STDC_HEADERS -| # include -| # include -| #else -| # ifdef HAVE_STDLIB_H -| # include -| # endif -| #endif -| #ifdef HAVE_STRING_H -| # if !defined STDC_HEADERS && defined HAVE_MEMORY_H -| # include -| # endif -| # include -| #endif -| #ifdef HAVE_STRINGS_H -| # include -| #endif -| #ifdef HAVE_INTTYPES_H -| # include -| #endif -| #ifdef HAVE_STDINT_H -| # include -| #endif -| #ifdef HAVE_UNISTD_H -| # include -| #endif -| typedef long long ac__type_sizeof_; -| int -| main () -| { -| static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) <= 1)]; -| test_array [0] = 0 -| -| ; -| return 0; -| } -configure:22074: mipsel-uclibc-gcc -c -O20 -ffast-math -fsigned-char -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections conftest.c >&5 -conftest.c: In function 'main': -conftest.c:62: error: size of array 'test_array' is negative -configure:22080: $? = 1 -configure: failed program was: -| /* confdefs.h. */ -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE "libogg" -| #define VERSION "1.1.4" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_DLFCN_H 1 -| #define STDC_HEADERS 1 -| #define SIZEOF_SHORT 2 -| #define SIZEOF_INT 4 -| #define SIZEOF_LONG 4 -| /* end confdefs.h. */ -| #include -| #ifdef HAVE_SYS_TYPES_H -| # include -| #endif -| #ifdef HAVE_SYS_STAT_H -| # include -| #endif -| #ifdef STDC_HEADERS -| # include -| # include -| #else -| # ifdef HAVE_STDLIB_H -| # include -| # endif -| #endif -| #ifdef HAVE_STRING_H -| # if !defined STDC_HEADERS && defined HAVE_MEMORY_H -| # include -| # endif -| # include -| #endif -| #ifdef HAVE_STRINGS_H -| # include -| #endif -| #ifdef HAVE_INTTYPES_H -| # include -| #endif -| #ifdef HAVE_STDINT_H -| # include -| #endif -| #ifdef HAVE_UNISTD_H -| # include -| #endif -| typedef long long ac__type_sizeof_; -| int -| main () -| { -| static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) <= 3)]; -| test_array [0] = 0 -| -| ; -| return 0; -| } -configure:22074: mipsel-uclibc-gcc -c -O20 -ffast-math -fsigned-char -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections conftest.c >&5 -conftest.c: In function 'main': -conftest.c:62: error: size of array 'test_array' is negative -configure:22080: $? = 1 -configure: failed program was: -| /* confdefs.h. */ -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE "libogg" -| #define VERSION "1.1.4" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_DLFCN_H 1 -| #define STDC_HEADERS 1 -| #define SIZEOF_SHORT 2 -| #define SIZEOF_INT 4 -| #define SIZEOF_LONG 4 -| /* end confdefs.h. */ -| #include -| #ifdef HAVE_SYS_TYPES_H -| # include -| #endif -| #ifdef HAVE_SYS_STAT_H -| # include -| #endif -| #ifdef STDC_HEADERS -| # include -| # include -| #else -| # ifdef HAVE_STDLIB_H -| # include -| # endif -| #endif -| #ifdef HAVE_STRING_H -| # if !defined STDC_HEADERS && defined HAVE_MEMORY_H -| # include -| # endif -| # include -| #endif -| #ifdef HAVE_STRINGS_H -| # include -| #endif -| #ifdef HAVE_INTTYPES_H -| # include -| #endif -| #ifdef HAVE_STDINT_H -| # include -| #endif -| #ifdef HAVE_UNISTD_H -| # include -| #endif -| typedef long long ac__type_sizeof_; -| int -| main () -| { -| static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) <= 7)]; -| test_array [0] = 0 -| -| ; -| return 0; -| } -configure:22074: mipsel-uclibc-gcc -c -O20 -ffast-math -fsigned-char -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections conftest.c >&5 -configure:22080: $? = 0 -configure:22229: mipsel-uclibc-gcc -c -O20 -ffast-math -fsigned-char -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections conftest.c >&5 -configure:22235: $? = 0 -configure:22229: mipsel-uclibc-gcc -c -O20 -ffast-math -fsigned-char -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections conftest.c >&5 -configure:22235: $? = 0 -configure:22229: mipsel-uclibc-gcc -c -O20 -ffast-math -fsigned-char -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections conftest.c >&5 -configure:22235: $? = 0 -configure:22343: result: 8 -configure:22437: checking for working memcmp -configure:22518: result: no -configure:22671: creating ./config.status - -## ---------------------- ## -## Running config.status. ## -## ---------------------- ## - -This file was extended by config.status, which was -generated by GNU Autoconf 2.61. Invocation command line was - - CONFIG_FILES = - CONFIG_HEADERS = - CONFIG_LINKS = - CONFIG_COMMANDS = - $ ./config.status - -on vicente-P5K-E - -config.status:688: creating Makefile -config.status:688: creating src/Makefile -config.status:688: creating doc/Makefile -config.status:688: creating doc/libogg/Makefile -config.status:688: creating include/Makefile -config.status:688: creating include/ogg/Makefile -config.status:688: creating include/ogg/config_types.h -config.status:688: creating libogg.spec -config.status:688: creating ogg.pc -config.status:688: creating ogg-uninstalled.pc -config.status:688: creating config.h -config.status:920: config.h is unchanged -config.status:967: executing depfiles commands - -## ---------------- ## -## Cache variables. ## -## ---------------- ## - -ac_cv_build=x86_64-pc-linux-gnu -ac_cv_c_compiler_gnu=yes -ac_cv_c_const=yes -ac_cv_cxx_compiler_gnu=yes -ac_cv_env_CCC_set= -ac_cv_env_CCC_value= -ac_cv_env_CC_set=set -ac_cv_env_CC_value=mipsel-uclibc-gcc -ac_cv_env_CFLAGS_set=set -ac_cv_env_CFLAGS_value='-Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections' -ac_cv_env_CPPFLAGS_set= -ac_cv_env_CPPFLAGS_value= -ac_cv_env_CPP_set= -ac_cv_env_CPP_value= -ac_cv_env_CXXCPP_set= -ac_cv_env_CXXCPP_value= -ac_cv_env_CXXFLAGS_set= -ac_cv_env_CXXFLAGS_value= -ac_cv_env_CXX_set= -ac_cv_env_CXX_value= -ac_cv_env_F77_set= -ac_cv_env_F77_value= -ac_cv_env_FFLAGS_set= -ac_cv_env_FFLAGS_value= -ac_cv_env_LDFLAGS_set=set -ac_cv_env_LDFLAGS_value='-fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections' -ac_cv_env_LIBS_set= -ac_cv_env_LIBS_value= -ac_cv_env_build_alias_set=set -ac_cv_env_build_alias_value=x86_64-linux-gnu -ac_cv_env_host_alias_set=set -ac_cv_env_host_alias_value=mipsel-linux -ac_cv_env_target_alias_set= -ac_cv_env_target_alias_value= -ac_cv_f77_compiler_gnu=no -ac_cv_func_malloc_0_nonnull=yes -ac_cv_func_memcmp_working=no -ac_cv_header_dlfcn_h=yes -ac_cv_header_inttypes_h=yes -ac_cv_header_memory_h=yes -ac_cv_header_stdc=yes -ac_cv_header_stdint_h=yes -ac_cv_header_stdlib_h=yes -ac_cv_header_string_h=yes -ac_cv_header_strings_h=yes -ac_cv_header_sys_stat_h=yes -ac_cv_header_sys_types_h=yes -ac_cv_header_unistd_h=yes -ac_cv_host=mipsel-unknown-linux-gnu -ac_cv_objext=o -ac_cv_path_EGREP='/bin/grep -E' -ac_cv_path_GREP=/bin/grep -ac_cv_path_install='/usr/bin/install -c' -ac_cv_path_mkdir=/bin/mkdir -ac_cv_prog_AR=mipsel-uclibc-ar -ac_cv_prog_AWK=gawk -ac_cv_prog_CC=mipsel-uclibc-gcc -ac_cv_prog_CPP='mipsel-uclibc-gcc -E' -ac_cv_prog_CXX=mipsel-linux-g++ -ac_cv_prog_CXXCPP='mipsel-linux-g++ -E' -ac_cv_prog_RANLIB=mipsel-uclibc-ranlib -ac_cv_prog_STRIP='mipsel-uclibc-strip -R .note -R .comment' -ac_cv_prog_cc_c89= -ac_cv_prog_cc_g=yes -ac_cv_prog_cc_mipsel_uclibc_gcc_c_o=yes -ac_cv_prog_cxx_g=yes -ac_cv_prog_f77_g=no -ac_cv_prog_make_make_set=yes -ac_cv_sizeof_int=4 -ac_cv_sizeof_long=4 -ac_cv_sizeof_long_long=8 -ac_cv_sizeof_short=2 -ac_cv_type_int=yes -ac_cv_type_long=yes -ac_cv_type_long_long=yes -ac_cv_type_short=yes -am_cv_CC_dependencies_compiler_type=gcc3 -am_cv_CXX_dependencies_compiler_type=gcc3 -has_cv_int16_t=no -has_cv_int32_t=no -has_cv_int64_t=no -has_cv_u_int16_t=no -has_cv_u_int32_t=no -has_cv_uint16_t=no -has_cv_uint32_t=no -lt_cv_deplibs_check_method=pass_all -lt_cv_file_magic_cmd='$MAGIC_CMD' -lt_cv_file_magic_test_file= -lt_cv_ld_reload_flag=-r -lt_cv_objdir=.libs -lt_cv_path_LD=mipsel-uclibc-ld -lt_cv_path_LDCXX=mipsel-uclibc-ld -lt_cv_path_NM=mipsel-uclibc-nm -lt_cv_path_SED=/bin/sed -lt_cv_prog_compiler_c_o=yes -lt_cv_prog_compiler_c_o_CXX=yes -lt_cv_prog_compiler_pic_works=yes -lt_cv_prog_compiler_pic_works_CXX=yes -lt_cv_prog_compiler_rtti_exceptions=no -lt_cv_prog_compiler_static_works=yes -lt_cv_prog_compiler_static_works_CXX=yes -lt_cv_prog_gnu_ld=yes -lt_cv_prog_gnu_ldcxx=yes -lt_cv_sys_global_symbol_pipe='sed -n -e '\''s/^.*[ ]\([ABCDGIRSTW][ABCDGIRSTW]*\)[ ][ ]*\([_A-Za-z][_A-Za-z0-9]*\)$/\1 \2 \2/p'\''' -lt_cv_sys_global_symbol_to_c_name_address='sed -n -e '\''s/^: \([^ ]*\) $/ {\"\1\", (lt_ptr) 0},/p'\'' -e '\''s/^[BCDEGRST] \([^ ]*\) \([^ ]*\)$/ {"\2", (lt_ptr) \&\2},/p'\''' -lt_cv_sys_global_symbol_to_cdecl='sed -n -e '\''s/^. .* \(.*\)$/extern int \1;/p'\''' -lt_cv_sys_lib_dlsearch_path_spec='/lib /usr/lib /lib/i386-linux-gnu /usr/lib/i386-linux-gnu /lib/i686-linux-gnu /usr/lib/i686-linux-gnu /usr/local/lib /usr/lib/nvidia-settings /lib/x86_64-linux-gnu /usr/lib/x86_64-linux-gnu /usr/lib/nvidia-current /usr/lib32/nvidia-current /lib32 /usr/lib32 ' -lt_cv_sys_lib_search_path_spec='/home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/lib/gcc/mipsel-linux-uclibc/4.2.4 /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/lib/gcc /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/mipsel-linux-uclibc/lib' -lt_cv_sys_max_cmd_len=3458764513820540925 -lt_lt_cv_prog_compiler_c_o='"yes"' -lt_lt_cv_prog_compiler_c_o_CXX='"yes"' -lt_lt_cv_sys_global_symbol_pipe='"sed -n -e '\''s/^.*[ ]\\([ABCDGIRSTW][ABCDGIRSTW]*\\)[ ][ ]*\\([_A-Za-z][_A-Za-z0-9]*\\)\$/\\1 \\2 \\2/p'\''"' -lt_lt_cv_sys_global_symbol_to_c_name_address='"sed -n -e '\''s/^: \\([^ ]*\\) \$/ {\\\"\\1\\\", (lt_ptr) 0},/p'\'' -e '\''s/^[BCDEGRST] \\([^ ]*\\) \\([^ ]*\\)\$/ {\"\\2\", (lt_ptr) \\&\\2},/p'\''"' -lt_lt_cv_sys_global_symbol_to_cdecl='"sed -n -e '\''s/^. .* \\(.*\\)\$/extern int \\1;/p'\''"' - -## ----------------- ## -## Output variables. ## -## ----------------- ## - -ACLOCAL='${SHELL} /home/vicente/tomato/release/src/router/libogg/missing --run aclocal-1.10' -AMDEPBACKSLASH='\' -AMDEP_FALSE='#' -AMDEP_TRUE='' -AMTAR='${SHELL} /home/vicente/tomato/release/src/router/libogg/missing --run tar' -AR='mipsel-uclibc-ar' -AUTOCONF='${SHELL} /home/vicente/tomato/release/src/router/libogg/missing --run autoconf' -AUTOHEADER='${SHELL} /home/vicente/tomato/release/src/router/libogg/missing --run autoheader' -AUTOMAKE='${SHELL} /home/vicente/tomato/release/src/router/libogg/missing --run automake-1.10' -AWK='gawk' -CC='mipsel-uclibc-gcc' -CCDEPMODE='depmode=gcc3' -CFLAGS='-O20 -ffast-math -fsigned-char -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections' -CPP='mipsel-uclibc-gcc -E' -CPPFLAGS='' -CXX='mipsel-linux-g++' -CXXCPP='mipsel-linux-g++ -E' -CXXDEPMODE='depmode=gcc3' -CXXFLAGS='-g -O2' -CYGPATH_W='echo' -DEBUG='-g -Wall -fsigned-char -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections' -DEFS='-DHAVE_CONFIG_H' -DEPDIR='.deps' -DSYMUTIL='' -ECHO='echo' -ECHO_C='' -ECHO_N='-n' -ECHO_T='' -EGREP='/bin/grep -E' -EXEEXT='' -F77='' -FFLAGS='' -GREP='/bin/grep' -INSTALL_DATA='${INSTALL} -m 644' -INSTALL_PROGRAM='${INSTALL}' -INSTALL_SCRIPT='${INSTALL}' -INSTALL_STRIP_PROGRAM='$(install_sh) -c -s' -LDFLAGS='-fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections' -LIBOBJS=' ${LIBOBJDIR}memcmp$U.o' -LIBS='' -LIBTOOL='$(SHELL) $(top_builddir)/libtool' -LIBTOOL_DEPS='./ltmain.sh' -LIB_AGE='6' -LIB_CURRENT='6' -LIB_REVISION='0' -LN_S='ln -s' -LTLIBOBJS=' ${LIBOBJDIR}memcmp$U.lo' -MAINT='#' -MAINTAINER_MODE_FALSE='' -MAINTAINER_MODE_TRUE='#' -MAKEINFO='${SHELL} /home/vicente/tomato/release/src/router/libogg/missing --run makeinfo' -NMEDIT='' -OBJEXT='o' -OPT='' -PACKAGE='libogg' -PACKAGE_BUGREPORT='' -PACKAGE_NAME='' -PACKAGE_STRING='' -PACKAGE_TARNAME='' -PACKAGE_VERSION='' -PATH_SEPARATOR=':' -PROFILE='-Wall -W -pg -g -O20 -ffast-math -fsigned-char -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections' -RANLIB='mipsel-uclibc-ranlib' -SED='/bin/sed' -SET_MAKE='' -SHELL='/bin/sh' -SIZE16='short' -SIZE32='int' -SIZE64='long long' -STRIP='mipsel-uclibc-strip -R .note -R .comment' -USIZE16='unsigned short' -USIZE32='unsigned int' -VERSION='1.1.4' -ac_ct_CC='' -ac_ct_CXX='' -ac_ct_F77='' -am__fastdepCC_FALSE='#' -am__fastdepCC_TRUE='' -am__fastdepCXX_FALSE='#' -am__fastdepCXX_TRUE='' -am__include='include' -am__isrc='' -am__leading_dot='.' -am__quote='' -am__tar='${AMTAR} chof - "$$tardir"' -am__untar='${AMTAR} xf -' -bindir='${exec_prefix}/bin' -build='x86_64-pc-linux-gnu' -build_alias='x86_64-linux-gnu' -build_cpu='x86_64' -build_os='linux-gnu' -build_vendor='pc' -datadir='${datarootdir}' -datarootdir='${prefix}/share' -docdir='${datarootdir}/doc/${PACKAGE}' -dvidir='${docdir}' -exec_prefix='${prefix}' -host='mipsel-unknown-linux-gnu' -host_alias='mipsel-linux' -host_cpu='mipsel' -host_os='linux-gnu' -host_vendor='unknown' -htmldir='${docdir}' -includedir='${prefix}/include' -infodir='${datarootdir}/info' -install_sh='$(SHELL) /home/vicente/tomato/release/src/router/libogg/install-sh' -libdir='${exec_prefix}/lib' -libexecdir='${exec_prefix}/libexec' -localedir='${datarootdir}/locale' -localstatedir='${prefix}/var' -mandir='${datarootdir}/man' -mkdir_p='/bin/mkdir -p' -oldincludedir='/usr/include' -pdfdir='${docdir}' -prefix='' -program_transform_name='s,x,x,' -psdir='${docdir}' -sbindir='${exec_prefix}/sbin' -sharedstatedir='${prefix}/com' -sysconfdir='${prefix}/etc' -target_alias='' - -## ----------- ## -## confdefs.h. ## -## ----------- ## - -#define PACKAGE_NAME "" -#define PACKAGE_TARNAME "" -#define PACKAGE_VERSION "" -#define PACKAGE_STRING "" -#define PACKAGE_BUGREPORT "" -#define PACKAGE "libogg" -#define VERSION "1.1.4" -#define STDC_HEADERS 1 -#define HAVE_SYS_TYPES_H 1 -#define HAVE_SYS_STAT_H 1 -#define HAVE_STDLIB_H 1 -#define HAVE_STRING_H 1 -#define HAVE_MEMORY_H 1 -#define HAVE_STRINGS_H 1 -#define HAVE_INTTYPES_H 1 -#define HAVE_STDINT_H 1 -#define HAVE_UNISTD_H 1 -#define HAVE_DLFCN_H 1 -#define STDC_HEADERS 1 -#define SIZEOF_SHORT 2 -#define SIZEOF_INT 4 -#define SIZEOF_LONG 4 -#define SIZEOF_LONG_LONG 8 - -configure: exit 0 diff --git a/release/src/router/libogg/config.status b/release/src/router/libogg/config.status deleted file mode 100755 index c967ed69a9..0000000000 --- a/release/src/router/libogg/config.status +++ /dev/null @@ -1,1103 +0,0 @@ -#! /bin/sh -# Generated by configure. -# Run this file to recreate the current configuration. -# Compiler output produced by configure, useful for debugging -# configure, is in config.log if it exists. - -debug=false -ac_cs_recheck=false -ac_cs_silent=false -SHELL=${CONFIG_SHELL-/bin/sh} -## --------------------- ## -## M4sh Initialization. ## -## --------------------- ## - -# Be more Bourne compatible -DUALCASE=1; export DUALCASE # for MKS sh -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then - emulate sh - NULLCMD=: - # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which - # is contrary to our usage. Disable this feature. - alias -g '${1+"$@"}'='"$@"' - setopt NO_GLOB_SUBST -else - case `(set -o) 2>/dev/null` in - *posix*) set -o posix ;; -esac - -fi - - - - -# PATH needs CR -# Avoid depending upon Character Ranges. -as_cr_letters='abcdefghijklmnopqrstuvwxyz' -as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' -as_cr_Letters=$as_cr_letters$as_cr_LETTERS -as_cr_digits='0123456789' -as_cr_alnum=$as_cr_Letters$as_cr_digits - -# The user is always right. -if test "${PATH_SEPARATOR+set}" != set; then - echo "#! /bin/sh" >conf$$.sh - echo "exit 0" >>conf$$.sh - chmod +x conf$$.sh - if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then - PATH_SEPARATOR=';' - else - PATH_SEPARATOR=: - fi - rm -f conf$$.sh -fi - -# Support unset when possible. -if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then - as_unset=unset -else - as_unset=false -fi - - -# IFS -# We need space, tab and new line, in precisely that order. Quoting is -# there to prevent editors from complaining about space-tab. -# (If _AS_PATH_WALK were called with IFS unset, it would disable word -# splitting by setting IFS to empty value.) -as_nl=' -' -IFS=" "" $as_nl" - -# Find who we are. Look in the path if we contain no directory separator. -case $0 in - *[\\/]* ) as_myself=$0 ;; - *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break -done -IFS=$as_save_IFS - - ;; -esac -# We did not find ourselves, most probably we were run as `sh COMMAND' -# in which case we are not to be found in the path. -if test "x$as_myself" = x; then - as_myself=$0 -fi -if test ! -f "$as_myself"; then - echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 - { (exit 1); exit 1; } -fi - -# Work around bugs in pre-3.0 UWIN ksh. -for as_var in ENV MAIL MAILPATH -do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var -done -PS1='$ ' -PS2='> ' -PS4='+ ' - -# NLS nuisances. -for as_var in \ - LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \ - LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \ - LC_TELEPHONE LC_TIME -do - if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then - eval $as_var=C; export $as_var - else - ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var - fi -done - -# Required to use basename. -if expr a : '\(a\)' >/dev/null 2>&1 && - test "X`expr 00001 : '.*\(...\)'`" = X001; then - as_expr=expr -else - as_expr=false -fi - -if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then - as_basename=basename -else - as_basename=false -fi - - -# Name of the executable. -as_me=`$as_basename -- "$0" || -$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ - X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)' \| . 2>/dev/null || -echo X/"$0" | - sed '/^.*\/\([^/][^/]*\)\/*$/{ - s//\1/ - q - } - /^X\/\(\/\/\)$/{ - s//\1/ - q - } - /^X\/\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - -# CDPATH. -$as_unset CDPATH - - - - as_lineno_1=$LINENO - as_lineno_2=$LINENO - test "x$as_lineno_1" != "x$as_lineno_2" && - test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2" || { - - # Create $as_me.lineno as a copy of $as_myself, but with $LINENO - # uniformly replaced by the line number. The first 'sed' inserts a - # line-number line after each line using $LINENO; the second 'sed' - # does the real work. The second script uses 'N' to pair each - # line-number line with the line containing $LINENO, and appends - # trailing '-' during substitution so that $LINENO is not a special - # case at line end. - # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the - # scripts with optimization help from Paolo Bonzini. Blame Lee - # E. McMahon (1931-1989) for sed's syntax. :-) - sed -n ' - p - /[$]LINENO/= - ' <$as_myself | - sed ' - s/[$]LINENO.*/&-/ - t lineno - b - :lineno - N - :loop - s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/ - t loop - s/-\n.*// - ' >$as_me.lineno && - chmod +x "$as_me.lineno" || - { echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2 - { (exit 1); exit 1; }; } - - # Don't try to exec as it changes $[0], causing all sort of problems - # (the dirname of $[0] is not the place where we might find the - # original and so on. Autoconf is especially sensitive to this). - . "./$as_me.lineno" - # Exit status is that of the last command. - exit -} - - -if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then - as_dirname=dirname -else - as_dirname=false -fi - -ECHO_C= ECHO_N= ECHO_T= -case `echo -n x` in --n*) - case `echo 'x\c'` in - *c*) ECHO_T=' ';; # ECHO_T is single tab character. - *) ECHO_C='\c';; - esac;; -*) - ECHO_N='-n';; -esac - -if expr a : '\(a\)' >/dev/null 2>&1 && - test "X`expr 00001 : '.*\(...\)'`" = X001; then - as_expr=expr -else - as_expr=false -fi - -rm -f conf$$ conf$$.exe conf$$.file -if test -d conf$$.dir; then - rm -f conf$$.dir/conf$$.file -else - rm -f conf$$.dir - mkdir conf$$.dir -fi -echo >conf$$.file -if ln -s conf$$.file conf$$ 2>/dev/null; then - as_ln_s='ln -s' - # ... but there are two gotchas: - # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. - # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. - # In both cases, we have to default to `cp -p'. - ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || - as_ln_s='cp -p' -elif ln conf$$.file conf$$ 2>/dev/null; then - as_ln_s=ln -else - as_ln_s='cp -p' -fi -rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file -rmdir conf$$.dir 2>/dev/null - -if mkdir -p . 2>/dev/null; then - as_mkdir_p=: -else - test -d ./-p && rmdir ./-p - as_mkdir_p=false -fi - -if test -x / >/dev/null 2>&1; then - as_test_x='test -x' -else - if ls -dL / >/dev/null 2>&1; then - as_ls_L_option=L - else - as_ls_L_option= - fi - as_test_x=' - eval sh -c '\'' - if test -d "$1"; then - test -d "$1/."; - else - case $1 in - -*)set "./$1";; - esac; - case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in - ???[sx]*):;;*)false;;esac;fi - '\'' sh - ' -fi -as_executable_p=$as_test_x - -# Sed expression to map a string onto a valid CPP name. -as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" - -# Sed expression to map a string onto a valid variable name. -as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" - - -exec 6>&1 - -# Save the log message, to keep $[0] and so on meaningful, and to -# report actual input values of CONFIG_FILES etc. instead of their -# values after options handling. -ac_log=" -This file was extended by $as_me, which was -generated by GNU Autoconf 2.61. Invocation command line was - - CONFIG_FILES = $CONFIG_FILES - CONFIG_HEADERS = $CONFIG_HEADERS - CONFIG_LINKS = $CONFIG_LINKS - CONFIG_COMMANDS = $CONFIG_COMMANDS - $ $0 $@ - -on `(hostname || uname -n) 2>/dev/null | sed 1q` -" - -# Files that config.status was made for. -config_files=" Makefile src/Makefile doc/Makefile doc/libogg/Makefile include/Makefile include/ogg/Makefile include/ogg/config_types.h libogg.spec ogg.pc ogg-uninstalled.pc" -config_headers=" config.h" -config_commands=" depfiles" - -ac_cs_usage="\ -\`$as_me' instantiates files from templates according to the -current configuration. - -Usage: $0 [OPTIONS] [FILE]... - - -h, --help print this help, then exit - -V, --version print version number and configuration settings, then exit - -q, --quiet do not print progress messages - -d, --debug don't remove temporary files - --recheck update $as_me by reconfiguring in the same conditions - --file=FILE[:TEMPLATE] - instantiate the configuration file FILE - --header=FILE[:TEMPLATE] - instantiate the configuration header FILE - -Configuration files: -$config_files - -Configuration headers: -$config_headers - -Configuration commands: -$config_commands - -Report bugs to ." - -ac_cs_version="\ -config.status -configured by ./configure, generated by GNU Autoconf 2.61, - with options \"'--host=mipsel-linux' '--build=x86_64-linux-gnu' '--enable-shared' '--enable-static' '--prefix=' 'build_alias=x86_64-linux-gnu' 'host_alias=mipsel-linux' 'CC=mipsel-uclibc-gcc' 'CFLAGS=-Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections' 'LDFLAGS=-fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections'\" - -Copyright (C) 2006 Free Software Foundation, Inc. -This config.status script is free software; the Free Software Foundation -gives unlimited permission to copy, distribute and modify it." - -ac_pwd='/home/vicente/tomato/release/src/router/libogg' -srcdir='.' -INSTALL='/usr/bin/install -c' -MKDIR_P='/bin/mkdir -p' -# If no file are specified by the user, then we need to provide default -# value. By we need to know if files were specified by the user. -ac_need_defaults=: -while test $# != 0 -do - case $1 in - --*=*) - ac_option=`expr "X$1" : 'X\([^=]*\)='` - ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'` - ac_shift=: - ;; - *) - ac_option=$1 - ac_optarg=$2 - ac_shift=shift - ;; - esac - - case $ac_option in - # Handling of the options. - -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) - ac_cs_recheck=: ;; - --version | --versio | --versi | --vers | --ver | --ve | --v | -V ) - echo "$ac_cs_version"; exit ;; - --debug | --debu | --deb | --de | --d | -d ) - debug=: ;; - --file | --fil | --fi | --f ) - $ac_shift - CONFIG_FILES="$CONFIG_FILES $ac_optarg" - ac_need_defaults=false;; - --header | --heade | --head | --hea ) - $ac_shift - CONFIG_HEADERS="$CONFIG_HEADERS $ac_optarg" - ac_need_defaults=false;; - --he | --h) - # Conflict between --help and --header - { echo "$as_me: error: ambiguous option: $1 -Try \`$0 --help' for more information." >&2 - { (exit 1); exit 1; }; };; - --help | --hel | -h ) - echo "$ac_cs_usage"; exit ;; - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil | --si | --s) - ac_cs_silent=: ;; - - # This is an error. - -*) { echo "$as_me: error: unrecognized option: $1 -Try \`$0 --help' for more information." >&2 - { (exit 1); exit 1; }; } ;; - - *) ac_config_targets="$ac_config_targets $1" - ac_need_defaults=false ;; - - esac - shift -done - -ac_configure_extra_args= - -if $ac_cs_silent; then - exec 6>/dev/null - ac_configure_extra_args="$ac_configure_extra_args --silent" -fi - -if $ac_cs_recheck; then - echo "running CONFIG_SHELL=/bin/sh /bin/sh ./configure " '--host=mipsel-linux' '--build=x86_64-linux-gnu' '--enable-shared' '--enable-static' '--prefix=' 'build_alias=x86_64-linux-gnu' 'host_alias=mipsel-linux' 'CC=mipsel-uclibc-gcc' 'CFLAGS=-Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections' 'LDFLAGS=-fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections' $ac_configure_extra_args " --no-create --no-recursion" >&6 - CONFIG_SHELL=/bin/sh - export CONFIG_SHELL - exec /bin/sh "./configure" '--host=mipsel-linux' '--build=x86_64-linux-gnu' '--enable-shared' '--enable-static' '--prefix=' 'build_alias=x86_64-linux-gnu' 'host_alias=mipsel-linux' 'CC=mipsel-uclibc-gcc' 'CFLAGS=-Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections' 'LDFLAGS=-fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections' $ac_configure_extra_args --no-create --no-recursion -fi - -exec 5>>config.log -{ - echo - sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX -## Running $as_me. ## -_ASBOX - echo "$ac_log" -} >&5 - -# -# INIT-COMMANDS -# -AMDEP_TRUE="" ac_aux_dir="." - - -# Handling of arguments. -for ac_config_target in $ac_config_targets -do - case $ac_config_target in - "depfiles") CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;; - "config.h") CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;; - "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;; - "src/Makefile") CONFIG_FILES="$CONFIG_FILES src/Makefile" ;; - "doc/Makefile") CONFIG_FILES="$CONFIG_FILES doc/Makefile" ;; - "doc/libogg/Makefile") CONFIG_FILES="$CONFIG_FILES doc/libogg/Makefile" ;; - "include/Makefile") CONFIG_FILES="$CONFIG_FILES include/Makefile" ;; - "include/ogg/Makefile") CONFIG_FILES="$CONFIG_FILES include/ogg/Makefile" ;; - "include/ogg/config_types.h") CONFIG_FILES="$CONFIG_FILES include/ogg/config_types.h" ;; - "libogg.spec") CONFIG_FILES="$CONFIG_FILES libogg.spec" ;; - "ogg.pc") CONFIG_FILES="$CONFIG_FILES ogg.pc" ;; - "ogg-uninstalled.pc") CONFIG_FILES="$CONFIG_FILES ogg-uninstalled.pc" ;; - - *) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5 -echo "$as_me: error: invalid argument: $ac_config_target" >&2;} - { (exit 1); exit 1; }; };; - esac -done - - -# If the user did not use the arguments to specify the items to instantiate, -# then the envvar interface is used. Set only those that are not. -# We use the long form for the default assignment because of an extremely -# bizarre bug on SunOS 4.1.3. -if $ac_need_defaults; then - test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files - test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers - test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands -fi - -# Have a temporary directory for convenience. Make it in the build tree -# simply because there is no reason against having it here, and in addition, -# creating and moving files from /tmp can sometimes cause problems. -# Hook for its removal unless debugging. -# Note that there is a small window in which the directory will not be cleaned: -# after its creation but before its name has been assigned to `$tmp'. -$debug || -{ - tmp= - trap 'exit_status=$? - { test -z "$tmp" || test ! -d "$tmp" || rm -fr "$tmp"; } && exit $exit_status -' 0 - trap '{ (exit 1); exit 1; }' 1 2 13 15 -} -# Create a (secure) tmp directory for tmp files. - -{ - tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` && - test -n "$tmp" && test -d "$tmp" -} || -{ - tmp=./conf$$-$RANDOM - (umask 077 && mkdir "$tmp") -} || -{ - echo "$me: cannot create a temporary directory in ." >&2 - { (exit 1); exit 1; } -} - -# -# Set up the sed scripts for CONFIG_FILES section. -# - -# No need to generate the scripts if there are no CONFIG_FILES. -# This happens for instance when ./config.status config.h -if test -n "$CONFIG_FILES"; then - -cat >"$tmp/subs-1.sed" <<\CEOF -/@[a-zA-Z_][a-zA-Z_0-9]*@/!b -s,@SHELL@,|#_!!_#|/bin/sh,g -s,@PATH_SEPARATOR@,|#_!!_#|:,g -s,@PACKAGE_NAME@,|#_!!_#|,g -s,@PACKAGE_TARNAME@,|#_!!_#|,g -s,@PACKAGE_VERSION@,|#_!!_#|,g -s,@PACKAGE_STRING@,|#_!!_#|,g -s,@PACKAGE_BUGREPORT@,|#_!!_#|,g -s,@exec_prefix@,|#_!!_#|${prefix},g -s,@prefix@,|#_!!_#|,g -s,@program_transform_name@,|#_!!_#|s\,x\,x\,,g -s,@bindir@,|#_!!_#|${exec_prefix}/bin,g -s,@sbindir@,|#_!!_#|${exec_prefix}/sbin,g -s,@libexecdir@,|#_!!_#|${exec_prefix}/libexec,g -s,@datarootdir@,|#_!!_#|${prefix}/share,g -s,@datadir@,|#_!!_#|${datarootdir},g -s,@sysconfdir@,|#_!!_#|${prefix}/etc,g -s,@sharedstatedir@,|#_!!_#|${prefix}/com,g -s,@localstatedir@,|#_!!_#|${prefix}/var,g -s,@includedir@,|#_!!_#|${prefix}/include,g -s,@oldincludedir@,|#_!!_#|/usr/include,g -s,@docdir@,|#_!!_#|${datarootdir}/doc/${PACKAGE},g -s,@infodir@,|#_!!_#|${datarootdir}/info,g -s,@htmldir@,|#_!!_#|${docdir},g -s,@dvidir@,|#_!!_#|${docdir},g -s,@pdfdir@,|#_!!_#|${docdir},g -s,@psdir@,|#_!!_#|${docdir},g -s,@libdir@,|#_!!_#|${exec_prefix}/lib,g -s,@localedir@,|#_!!_#|${datarootdir}/locale,g -s,@mandir@,|#_!!_#|${datarootdir}/man,g -s,@DEFS@,|#_!!_#|-DHAVE_CONFIG_H,g -s,@ECHO_C@,|#_!!_#|,g -s,@ECHO_N@,|#_!!_#|-n,g -s,@ECHO_T@,|#_!!_#|,g -s,@LIBS@,|#_!!_#|,g -s,@build_alias@,|#_!!_#|x86_64-linux-gnu,g -s,@host_alias@,|#_!!_#|mipsel-linux,g -s,@target_alias@,|#_!!_#|,g -s,@INSTALL_PROGRAM@,|#_!!_#|${INSTALL},g -s,@INSTALL_SCRIPT@,|#_!!_#|${INSTALL},g -s,@INSTALL_DATA@,|#_!!_#|${INSTALL} -m 644,g -s,@am__isrc@,|#_!!_#|,g -s,@CYGPATH_W@,|#_!!_#|echo,g -s,@PACKAGE@,|#_!!_#|libogg,g -s,@VERSION@,|#_!!_#|1.1.4,g -s,@ACLOCAL@,|#_!!_#|${SHELL} /home/vicente/tomato/release/src/router/libogg/missing --run aclocal-1.10,g -s,@AUTOCONF@,|#_!!_#|${SHELL} /home/vicente/tomato/release/src/router/libogg/missing --run autoconf,g -s,@AUTOMAKE@,|#_!!_#|${SHELL} /home/vicente/tomato/release/src/router/libogg/missing --run automake-1.10,g -s,@AUTOHEADER@,|#_!!_#|${SHELL} /home/vicente/tomato/release/src/router/libogg/missing --run autoheader,g -s,@MAKEINFO@,|#_!!_#|${SHELL} /home/vicente/tomato/release/src/router/libogg/missing --run makeinfo,g -s,@install_sh@,|#_!!_#|$(SHELL) /home/vicente/tomato/release/src/router/libogg/install-sh,g -s,@STRIP@,|#_!!_#|mipsel-uclibc-strip -R .note -R .comment,g -s,@INSTALL_STRIP_PROGRAM@,|#_!!_#|$(install_sh) -c -s,g -s,@mkdir_p@,|#_!!_#|/bin/mkdir -p,g -s,@AWK@,|#_!!_#|gawk,g -s,@SET_MAKE@,|#_!!_#|,g -s,@am__leading_dot@,|#_!!_#|.,g -s,@AMTAR@,|#_!!_#|${SHELL} /home/vicente/tomato/release/src/router/libogg/missing --run tar,g -s,@am__tar@,|#_!!_#|${AMTAR} chof - "$$tardir",g -s,@am__untar@,|#_!!_#|${AMTAR} xf -,g -s,@MAINTAINER_MODE_TRUE@,|#_!!_#|#,g -s,@MAINTAINER_MODE_FALSE@,|#_!!_#|,g -s,@MAINT@,|#_!!_#|#,g -s,@LIB_CURRENT@,|#_!!_#|6,g -s,@LIB_REVISION@,|#_!!_#|0,g -s,@LIB_AGE@,|#_!!_#|6,g -s,@CC@,|#_!!_#|mipsel-uclibc-gcc,g -s,@CFLAGS@,|#_!!_#|-O20 -ffast-math -fsigned-char -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections,g -s,@LDFLAGS@,|#_!!_#|-fPIC -ffunction-sections -fdata-sections -Wl\,--gc-sections,g -s,@CPPFLAGS@,|#_!!_#|,g -s,@ac_ct_CC@,|#_!!_#|,g -s,@EXEEXT@,|#_!!_#|,g -s,@OBJEXT@,|#_!!_#|o,g -s,@DEPDIR@,|#_!!_#|.deps,g -s,@am__include@,|#_!!_#|include,g -s,@am__quote@,|#_!!_#|,g -s,@AMDEP_TRUE@,|#_!!_#|,g -s,@AMDEP_FALSE@,|#_!!_#|#,g -s,@AMDEPBACKSLASH@,|#_!!_#|\\,g -s,@CCDEPMODE@,|#_!!_#|depmode=gcc3,g -s,@am__fastdepCC_TRUE@,|#_!!_#|,g -s,@am__fastdepCC_FALSE@,|#_!!_#|#,g -s,@build@,|#_!!_#|x86_64-pc-linux-gnu,g -s,@build_cpu@,|#_!!_#|x86_64,g -s,@build_vendor@,|#_!!_#|pc,g -s,@build_os@,|#_!!_#|linux-gnu,g -s,@host@,|#_!!_#|mipsel-unknown-linux-gnu,g -s,@host_cpu@,|#_!!_#|mipsel,g -s,@host_vendor@,|#_!!_#|unknown,g -s,@host_os@,|#_!!_#|linux-gnu,g -s,@SED@,|#_!!_#|/bin/sed,g -s,@GREP@,|#_!!_#|/bin/grep,g -s,@EGREP@,|#_!!_#|/bin/grep -E,g -s,@LN_S@,|#_!!_#|ln -s,g -s,@ECHO@,|#_!!_#|echo,g -s,@AR@,|#_!!_#|mipsel-uclibc-ar,g -s,@RANLIB@,|#_!!_#|mipsel-uclibc-ranlib,g -s,@DSYMUTIL@,|#_!!_#|,g -CEOF -cat >"$tmp/subs-2.sed" <<\CEOF -/@[a-zA-Z_][a-zA-Z_0-9]*@/!b end -s,@NMEDIT@,|#_!!_#|,g -s,@CPP@,|#_!!_#|mipsel-uclibc-gcc -E,g -s,@CXX@,|#_!!_#|mipsel-linux-g++,g -s,@CXXFLAGS@,|#_!!_#|-g -O2,g -s,@ac_ct_CXX@,|#_!!_#|,g -s,@CXXDEPMODE@,|#_!!_#|depmode=gcc3,g -s,@am__fastdepCXX_TRUE@,|#_!!_#|,g -s,@am__fastdepCXX_FALSE@,|#_!!_#|#,g -s,@CXXCPP@,|#_!!_#|mipsel-linux-g++ -E,g -s,@F77@,|#_!!_#|,g -s,@FFLAGS@,|#_!!_#|,g -s,@ac_ct_F77@,|#_!!_#|,g -s,@LIBTOOL@,|#_!!_#|$(SHELL) $(top_builddir)/libtool,g -s,@LIBOBJS@,|#_!!_#| ${LIBOBJDIR}memcmp$U.o,g -s,@LIBTOOL_DEPS@,|#_!!_#|./ltmain.sh,g -s,@SIZE16@,|#_!!_#|short,g -s,@USIZE16@,|#_!!_#|unsigned short,g -s,@SIZE32@,|#_!!_#|int,g -s,@USIZE32@,|#_!!_#|unsigned int,g -s,@SIZE64@,|#_!!_#|long long,g -s,@OPT@,|#_!!_#|,g -s,@DEBUG@,|#_!!_#|-g -Wall -fsigned-char -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections,g -s,@PROFILE@,|#_!!_#|-Wall -W -pg -g -O20 -ffast-math -fsigned-char -Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections,g -s,@LTLIBOBJS@,|#_!!_#| ${LIBOBJDIR}memcmp$U.lo,g -:end -s/|#_!!_#|//g -CEOF -fi # test -n "$CONFIG_FILES" - - -for ac_tag in :F $CONFIG_FILES :H $CONFIG_HEADERS :C $CONFIG_COMMANDS -do - case $ac_tag in - :[FHLC]) ac_mode=$ac_tag; continue;; - esac - case $ac_mode$ac_tag in - :[FHL]*:*);; - :L* | :C*:*) { { echo "$as_me:$LINENO: error: Invalid tag $ac_tag." >&5 -echo "$as_me: error: Invalid tag $ac_tag." >&2;} - { (exit 1); exit 1; }; };; - :[FH]-) ac_tag=-:-;; - :[FH]*) ac_tag=$ac_tag:$ac_tag.in;; - esac - ac_save_IFS=$IFS - IFS=: - set x $ac_tag - IFS=$ac_save_IFS - shift - ac_file=$1 - shift - - case $ac_mode in - :L) ac_source=$1;; - :[FH]) - ac_file_inputs= - for ac_f - do - case $ac_f in - -) ac_f="$tmp/stdin";; - *) # Look for the file first in the build tree, then in the source tree - # (if the path is not absolute). The absolute path cannot be DOS-style, - # because $ac_f cannot contain `:'. - test -f "$ac_f" || - case $ac_f in - [\\/$]*) false;; - *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";; - esac || - { { echo "$as_me:$LINENO: error: cannot find input file: $ac_f" >&5 -echo "$as_me: error: cannot find input file: $ac_f" >&2;} - { (exit 1); exit 1; }; };; - esac - ac_file_inputs="$ac_file_inputs $ac_f" - done - - # Let's still pretend it is `configure' which instantiates (i.e., don't - # use $as_me), people would be surprised to read: - # /* config.h. Generated by config.status. */ - configure_input="Generated from "`IFS=: - echo $* | sed 's|^[^:]*/||;s|:[^:]*/|, |g'`" by configure." - if test x"$ac_file" != x-; then - configure_input="$ac_file. $configure_input" - { echo "$as_me:$LINENO: creating $ac_file" >&5 -echo "$as_me: creating $ac_file" >&6;} - fi - - case $ac_tag in - *:-:* | *:-) cat >"$tmp/stdin";; - esac - ;; - esac - - ac_dir=`$as_dirname -- "$ac_file" || -$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$ac_file" : 'X\(//\)[^/]' \| \ - X"$ac_file" : 'X\(//\)$' \| \ - X"$ac_file" : 'X\(/\)' \| . 2>/dev/null || -echo X"$ac_file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - { as_dir="$ac_dir" - case $as_dir in #( - -*) as_dir=./$as_dir;; - esac - test -d "$as_dir" || { $as_mkdir_p && mkdir -p "$as_dir"; } || { - as_dirs= - while :; do - case $as_dir in #( - *\'*) as_qdir=`echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #( - *) as_qdir=$as_dir;; - esac - as_dirs="'$as_qdir' $as_dirs" - as_dir=`$as_dirname -- "$as_dir" || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || -echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - test -d "$as_dir" && break - done - test -z "$as_dirs" || eval "mkdir $as_dirs" - } || test -d "$as_dir" || { { echo "$as_me:$LINENO: error: cannot create directory $as_dir" >&5 -echo "$as_me: error: cannot create directory $as_dir" >&2;} - { (exit 1); exit 1; }; }; } - ac_builddir=. - -case "$ac_dir" in -.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; -*) - ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` - # A ".." for each directory in $ac_dir_suffix. - ac_top_builddir_sub=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,/..,g;s,/,,'` - case $ac_top_builddir_sub in - "") ac_top_builddir_sub=. ac_top_build_prefix= ;; - *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; - esac ;; -esac -ac_abs_top_builddir=$ac_pwd -ac_abs_builddir=$ac_pwd$ac_dir_suffix -# for backward compatibility: -ac_top_builddir=$ac_top_build_prefix - -case $srcdir in - .) # We are building in place. - ac_srcdir=. - ac_top_srcdir=$ac_top_builddir_sub - ac_abs_top_srcdir=$ac_pwd ;; - [\\/]* | ?:[\\/]* ) # Absolute name. - ac_srcdir=$srcdir$ac_dir_suffix; - ac_top_srcdir=$srcdir - ac_abs_top_srcdir=$srcdir ;; - *) # Relative name. - ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix - ac_top_srcdir=$ac_top_build_prefix$srcdir - ac_abs_top_srcdir=$ac_pwd/$srcdir ;; -esac -ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix - - - case $ac_mode in - :F) - # - # CONFIG_FILE - # - - case $INSTALL in - [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;; - *) ac_INSTALL=$ac_top_build_prefix$INSTALL ;; - esac - ac_MKDIR_P=$MKDIR_P - case $MKDIR_P in - [\\/$]* | ?:[\\/]* ) ;; - */*) ac_MKDIR_P=$ac_top_build_prefix$MKDIR_P ;; - esac -# If the template does not know about datarootdir, expand it. -# FIXME: This hack should be removed a few years after 2.60. -ac_datarootdir_hack=; ac_datarootdir_seen= - -case `sed -n '/datarootdir/ { - p - q -} -/@datadir@/p -/@docdir@/p -/@infodir@/p -/@localedir@/p -/@mandir@/p -' $ac_file_inputs` in -*datarootdir*) ac_datarootdir_seen=yes;; -*@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*) - { echo "$as_me:$LINENO: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5 -echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;} - ac_datarootdir_hack=' - s&@datadir@&${datarootdir}&g - s&@docdir@&${datarootdir}/doc/${PACKAGE}&g - s&@infodir@&${datarootdir}/info&g - s&@localedir@&${datarootdir}/locale&g - s&@mandir@&${datarootdir}/man&g - s&\${datarootdir}&${prefix}/share&g' ;; -esac - sed "/^[ ]*VPATH[ ]*=/{ -s/:*\$(srcdir):*/:/ -s/:*\${srcdir}:*/:/ -s/:*@srcdir@:*/:/ -s/^\([^=]*=[ ]*\):*/\1/ -s/:*$// -s/^[^=]*=[ ]*$// -} - -:t -/@[a-zA-Z_][a-zA-Z_0-9]*@/!b -s&@configure_input@&$configure_input&;t t -s&@top_builddir@&$ac_top_builddir_sub&;t t -s&@srcdir@&$ac_srcdir&;t t -s&@abs_srcdir@&$ac_abs_srcdir&;t t -s&@top_srcdir@&$ac_top_srcdir&;t t -s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t -s&@builddir@&$ac_builddir&;t t -s&@abs_builddir@&$ac_abs_builddir&;t t -s&@abs_top_builddir@&$ac_abs_top_builddir&;t t -s&@INSTALL@&$ac_INSTALL&;t t -s&@MKDIR_P@&$ac_MKDIR_P&;t t -$ac_datarootdir_hack -" $ac_file_inputs | sed -f "$tmp/subs-1.sed" | sed -f "$tmp/subs-2.sed" >$tmp/out - -test -z "$ac_datarootdir_hack$ac_datarootdir_seen" && - { ac_out=`sed -n '/\${datarootdir}/p' "$tmp/out"`; test -n "$ac_out"; } && - { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' "$tmp/out"`; test -z "$ac_out"; } && - { echo "$as_me:$LINENO: WARNING: $ac_file contains a reference to the variable \`datarootdir' -which seems to be undefined. Please make sure it is defined." >&5 -echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir' -which seems to be undefined. Please make sure it is defined." >&2;} - - rm -f "$tmp/stdin" - case $ac_file in - -) cat "$tmp/out"; rm -f "$tmp/out";; - *) rm -f "$ac_file"; mv "$tmp/out" $ac_file;; - esac - ;; - :H) - # - # CONFIG_HEADER - # - # First, check the format of the line: - cat >"$tmp/defines.sed" <<\CEOF -/^[ ]*#[ ]*undef[ ][ ]*[_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ][_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789]*[ ]*$/b def -/^[ ]*#[ ]*define[ ][ ]*[_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ][_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789]*[( ]/b def -b -:def -s/$/ / -s,^\([ #]*\)[^ ]*\([ ]*PACKAGE_NAME\)[ (].*,\1define\2 "" , -s,^\([ #]*\)[^ ]*\([ ]*PACKAGE_TARNAME\)[ (].*,\1define\2 "" , -s,^\([ #]*\)[^ ]*\([ ]*PACKAGE_VERSION\)[ (].*,\1define\2 "" , -s,^\([ #]*\)[^ ]*\([ ]*PACKAGE_STRING\)[ (].*,\1define\2 "" , -s,^\([ #]*\)[^ ]*\([ ]*PACKAGE_BUGREPORT\)[ (].*,\1define\2 "" , -s,^\([ #]*\)[^ ]*\([ ]*PACKAGE\)[ (].*,\1define\2 "libogg" , -s,^\([ #]*\)[^ ]*\([ ]*VERSION\)[ (].*,\1define\2 "1.1.4" , -s,^\([ #]*\)[^ ]*\([ ]*STDC_HEADERS\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_SYS_TYPES_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_SYS_STAT_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_STDLIB_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_STRING_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_MEMORY_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_STRINGS_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_INTTYPES_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_STDINT_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_UNISTD_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_DLFCN_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*STDC_HEADERS\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*SIZEOF_SHORT\)[ (].*,\1define\2 2 , -s,^\([ #]*\)[^ ]*\([ ]*SIZEOF_INT\)[ (].*,\1define\2 4 , -s,^\([ #]*\)[^ ]*\([ ]*SIZEOF_LONG\)[ (].*,\1define\2 4 , -s,^\([ #]*\)[^ ]*\([ ]*SIZEOF_LONG_LONG\)[ (].*,\1define\2 8 , -s/ $// -s,^[ #]*u.*,/* & */, -CEOF - sed -f "$tmp/defines.sed" $ac_file_inputs >"$tmp/out1" -ac_result="$tmp/out1" - if test x"$ac_file" != x-; then - echo "/* $configure_input */" >"$tmp/config.h" - cat "$ac_result" >>"$tmp/config.h" - if diff $ac_file "$tmp/config.h" >/dev/null 2>&1; then - { echo "$as_me:$LINENO: $ac_file is unchanged" >&5 -echo "$as_me: $ac_file is unchanged" >&6;} - else - rm -f $ac_file - mv "$tmp/config.h" $ac_file - fi - else - echo "/* $configure_input */" - cat "$ac_result" - fi - rm -f "$tmp/out12" -# Compute $ac_file's index in $config_headers. -_am_arg=$ac_file -_am_stamp_count=1 -for _am_header in $config_headers :; do - case $_am_header in - $_am_arg | $_am_arg:* ) - break ;; - * ) - _am_stamp_count=`expr $_am_stamp_count + 1` ;; - esac -done -echo "timestamp for $_am_arg" >`$as_dirname -- "$_am_arg" || -$as_expr X"$_am_arg" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$_am_arg" : 'X\(//\)[^/]' \| \ - X"$_am_arg" : 'X\(//\)$' \| \ - X"$_am_arg" : 'X\(/\)' \| . 2>/dev/null || -echo X"$_am_arg" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'`/stamp-h$_am_stamp_count - ;; - - :C) { echo "$as_me:$LINENO: executing $ac_file commands" >&5 -echo "$as_me: executing $ac_file commands" >&6;} - ;; - esac - - - case $ac_file$ac_mode in - "depfiles":C) test x"$AMDEP_TRUE" != x"" || for mf in $CONFIG_FILES; do - # Strip MF so we end up with the name of the file. - mf=`echo "$mf" | sed -e 's/:.*$//'` - # Check whether this is an Automake generated Makefile or not. - # We used to match only the files named `Makefile.in', but - # some people rename them; so instead we look at the file content. - # Grep'ing the first line is not enough: some people post-process - # each Makefile.in and add a new line on top of each file to say so. - # Grep'ing the whole file is not good either: AIX grep has a line - # limit of 2048, but all sed's we know have understand at least 4000. - if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then - dirpart=`$as_dirname -- "$mf" || -$as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$mf" : 'X\(//\)[^/]' \| \ - X"$mf" : 'X\(//\)$' \| \ - X"$mf" : 'X\(/\)' \| . 2>/dev/null || -echo X"$mf" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - else - continue - fi - # Extract the definition of DEPDIR, am__include, and am__quote - # from the Makefile without running `make'. - DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"` - test -z "$DEPDIR" && continue - am__include=`sed -n 's/^am__include = //p' < "$mf"` - test -z "am__include" && continue - am__quote=`sed -n 's/^am__quote = //p' < "$mf"` - # When using ansi2knr, U may be empty or an underscore; expand it - U=`sed -n 's/^U = //p' < "$mf"` - # Find all dependency output files, they are included files with - # $(DEPDIR) in their names. We invoke sed twice because it is the - # simplest approach to changing $(DEPDIR) to its actual value in the - # expansion. - for file in `sed -n " - s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \ - sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do - # Make sure the directory exists. - test -f "$dirpart/$file" && continue - fdir=`$as_dirname -- "$file" || -$as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$file" : 'X\(//\)[^/]' \| \ - X"$file" : 'X\(//\)$' \| \ - X"$file" : 'X\(/\)' \| . 2>/dev/null || -echo X"$file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - { as_dir=$dirpart/$fdir - case $as_dir in #( - -*) as_dir=./$as_dir;; - esac - test -d "$as_dir" || { $as_mkdir_p && mkdir -p "$as_dir"; } || { - as_dirs= - while :; do - case $as_dir in #( - *\'*) as_qdir=`echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #( - *) as_qdir=$as_dir;; - esac - as_dirs="'$as_qdir' $as_dirs" - as_dir=`$as_dirname -- "$as_dir" || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || -echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - test -d "$as_dir" && break - done - test -z "$as_dirs" || eval "mkdir $as_dirs" - } || test -d "$as_dir" || { { echo "$as_me:$LINENO: error: cannot create directory $as_dir" >&5 -echo "$as_me: error: cannot create directory $as_dir" >&2;} - { (exit 1); exit 1; }; }; } - # echo "creating $dirpart/$file" - echo '# dummy' > "$dirpart/$file" - done -done - ;; - - esac -done # for ac_tag - - -{ (exit 0); exit 0; } diff --git a/release/src/router/libogg/doc/Makefile b/release/src/router/libogg/doc/Makefile index 48b8840c94..380cf67555 100644 --- a/release/src/router/libogg/doc/Makefile +++ b/release/src/router/libogg/doc/Makefile @@ -65,12 +65,12 @@ ETAGS = etags CTAGS = ctags DIST_SUBDIRS = $(SUBDIRS) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/libogg/missing --run aclocal-1.10 -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/libogg/missing --run tar +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/libogg/missing --run aclocal-1.10 +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/libogg/missing --run tar AR = mipsel-uclibc-ar -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/libogg/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/libogg/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/libogg/missing --run automake-1.10 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/libogg/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/libogg/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/libogg/missing --run automake-1.10 AWK = gawk CC = mipsel-uclibc-gcc CCDEPMODE = depmode=gcc3 @@ -111,7 +111,7 @@ LIB_REVISION = 0 LN_S = ln -s LTLIBOBJS = ${LIBOBJDIR}memcmp$U.lo MAINT = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/libogg/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/libogg/missing --run makeinfo MKDIR_P = /bin/mkdir -p NMEDIT = OBJEXT = o @@ -135,10 +135,10 @@ STRIP = mipsel-uclibc-strip -R .note -R .comment USIZE16 = unsigned short USIZE32 = unsigned int VERSION = 1.1.4 -abs_builddir = /home/vicente/tomato/release/src/router/libogg/doc -abs_srcdir = /home/vicente/tomato/release/src/router/libogg/doc -abs_top_builddir = /home/vicente/tomato/release/src/router/libogg -abs_top_srcdir = /home/vicente/tomato/release/src/router/libogg +abs_builddir = /home/vicente/repos/tomato/release/src/router/libogg/doc +abs_srcdir = /home/vicente/repos/tomato/release/src/router/libogg/doc +abs_top_builddir = /home/vicente/repos/tomato/release/src/router/libogg +abs_top_srcdir = /home/vicente/repos/tomato/release/src/router/libogg ac_ct_CC = ac_ct_CXX = ac_ct_F77 = @@ -167,7 +167,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = $(SHELL) /home/vicente/tomato/release/src/router/libogg/install-sh +install_sh = $(SHELL) /home/vicente/repos/tomato/release/src/router/libogg/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = ${datarootdir}/locale diff --git a/release/src/router/libogg/doc/libogg/Makefile b/release/src/router/libogg/doc/libogg/Makefile index 1e24855069..47c717c752 100644 --- a/release/src/router/libogg/doc/libogg/Makefile +++ b/release/src/router/libogg/doc/libogg/Makefile @@ -53,12 +53,12 @@ am__installdirs = "$(DESTDIR)$(docdir)" docDATA_INSTALL = $(INSTALL_DATA) DATA = $(doc_DATA) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/libogg/missing --run aclocal-1.10 -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/libogg/missing --run tar +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/libogg/missing --run aclocal-1.10 +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/libogg/missing --run tar AR = mipsel-uclibc-ar -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/libogg/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/libogg/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/libogg/missing --run automake-1.10 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/libogg/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/libogg/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/libogg/missing --run automake-1.10 AWK = gawk CC = mipsel-uclibc-gcc CCDEPMODE = depmode=gcc3 @@ -99,7 +99,7 @@ LIB_REVISION = 0 LN_S = ln -s LTLIBOBJS = ${LIBOBJDIR}memcmp$U.lo MAINT = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/libogg/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/libogg/missing --run makeinfo MKDIR_P = /bin/mkdir -p NMEDIT = OBJEXT = o @@ -123,10 +123,10 @@ STRIP = mipsel-uclibc-strip -R .note -R .comment USIZE16 = unsigned short USIZE32 = unsigned int VERSION = 1.1.4 -abs_builddir = /home/vicente/tomato/release/src/router/libogg/doc/libogg -abs_srcdir = /home/vicente/tomato/release/src/router/libogg/doc/libogg -abs_top_builddir = /home/vicente/tomato/release/src/router/libogg -abs_top_srcdir = /home/vicente/tomato/release/src/router/libogg +abs_builddir = /home/vicente/repos/tomato/release/src/router/libogg/doc/libogg +abs_srcdir = /home/vicente/repos/tomato/release/src/router/libogg/doc/libogg +abs_top_builddir = /home/vicente/repos/tomato/release/src/router/libogg +abs_top_srcdir = /home/vicente/repos/tomato/release/src/router/libogg ac_ct_CC = ac_ct_CXX = ac_ct_F77 = @@ -155,7 +155,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = $(SHELL) /home/vicente/tomato/release/src/router/libogg/install-sh +install_sh = $(SHELL) /home/vicente/repos/tomato/release/src/router/libogg/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = ${datarootdir}/locale diff --git a/release/src/router/libogg/include/Makefile b/release/src/router/libogg/include/Makefile index a57f2ad272..4eff1e7e66 100644 --- a/release/src/router/libogg/include/Makefile +++ b/release/src/router/libogg/include/Makefile @@ -55,12 +55,12 @@ ETAGS = etags CTAGS = ctags DIST_SUBDIRS = $(SUBDIRS) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/libogg/missing --run aclocal-1.10 -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/libogg/missing --run tar +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/libogg/missing --run aclocal-1.10 +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/libogg/missing --run tar AR = mipsel-uclibc-ar -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/libogg/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/libogg/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/libogg/missing --run automake-1.10 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/libogg/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/libogg/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/libogg/missing --run automake-1.10 AWK = gawk CC = mipsel-uclibc-gcc CCDEPMODE = depmode=gcc3 @@ -101,7 +101,7 @@ LIB_REVISION = 0 LN_S = ln -s LTLIBOBJS = ${LIBOBJDIR}memcmp$U.lo MAINT = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/libogg/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/libogg/missing --run makeinfo MKDIR_P = /bin/mkdir -p NMEDIT = OBJEXT = o @@ -125,10 +125,10 @@ STRIP = mipsel-uclibc-strip -R .note -R .comment USIZE16 = unsigned short USIZE32 = unsigned int VERSION = 1.1.4 -abs_builddir = /home/vicente/tomato/release/src/router/libogg/include -abs_srcdir = /home/vicente/tomato/release/src/router/libogg/include -abs_top_builddir = /home/vicente/tomato/release/src/router/libogg -abs_top_srcdir = /home/vicente/tomato/release/src/router/libogg +abs_builddir = /home/vicente/repos/tomato/release/src/router/libogg/include +abs_srcdir = /home/vicente/repos/tomato/release/src/router/libogg/include +abs_top_builddir = /home/vicente/repos/tomato/release/src/router/libogg +abs_top_srcdir = /home/vicente/repos/tomato/release/src/router/libogg ac_ct_CC = ac_ct_CXX = ac_ct_F77 = @@ -157,7 +157,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = $(SHELL) /home/vicente/tomato/release/src/router/libogg/install-sh +install_sh = $(SHELL) /home/vicente/repos/tomato/release/src/router/libogg/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = ${datarootdir}/locale diff --git a/release/src/router/libogg/include/ogg/Makefile b/release/src/router/libogg/include/ogg/Makefile index db92a538fb..d96d12a0a2 100644 --- a/release/src/router/libogg/include/ogg/Makefile +++ b/release/src/router/libogg/include/ogg/Makefile @@ -58,12 +58,12 @@ HEADERS = $(nodist_ogginclude_HEADERS) $(ogginclude_HEADERS) ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/libogg/missing --run aclocal-1.10 -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/libogg/missing --run tar +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/libogg/missing --run aclocal-1.10 +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/libogg/missing --run tar AR = mipsel-uclibc-ar -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/libogg/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/libogg/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/libogg/missing --run automake-1.10 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/libogg/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/libogg/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/libogg/missing --run automake-1.10 AWK = gawk CC = mipsel-uclibc-gcc CCDEPMODE = depmode=gcc3 @@ -104,7 +104,7 @@ LIB_REVISION = 0 LN_S = ln -s LTLIBOBJS = ${LIBOBJDIR}memcmp$U.lo MAINT = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/libogg/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/libogg/missing --run makeinfo MKDIR_P = /bin/mkdir -p NMEDIT = OBJEXT = o @@ -128,10 +128,10 @@ STRIP = mipsel-uclibc-strip -R .note -R .comment USIZE16 = unsigned short USIZE32 = unsigned int VERSION = 1.1.4 -abs_builddir = /home/vicente/tomato/release/src/router/libogg/include/ogg -abs_srcdir = /home/vicente/tomato/release/src/router/libogg/include/ogg -abs_top_builddir = /home/vicente/tomato/release/src/router/libogg -abs_top_srcdir = /home/vicente/tomato/release/src/router/libogg +abs_builddir = /home/vicente/repos/tomato/release/src/router/libogg/include/ogg +abs_srcdir = /home/vicente/repos/tomato/release/src/router/libogg/include/ogg +abs_top_builddir = /home/vicente/repos/tomato/release/src/router/libogg +abs_top_srcdir = /home/vicente/repos/tomato/release/src/router/libogg ac_ct_CC = ac_ct_CXX = ac_ct_F77 = @@ -160,7 +160,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = $(SHELL) /home/vicente/tomato/release/src/router/libogg/install-sh +install_sh = $(SHELL) /home/vicente/repos/tomato/release/src/router/libogg/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = ${datarootdir}/locale diff --git a/release/src/router/libogg/src/Makefile b/release/src/router/libogg/src/Makefile index 20e39b7325..babf9b892b 100644 --- a/release/src/router/libogg/src/Makefile +++ b/release/src/router/libogg/src/Makefile @@ -90,12 +90,12 @@ DIST_SOURCES = $(libogg_la_SOURCES) $(test_bitwise_SOURCES) \ ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/libogg/missing --run aclocal-1.10 -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/libogg/missing --run tar +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/libogg/missing --run aclocal-1.10 +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/libogg/missing --run tar AR = mipsel-uclibc-ar -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/libogg/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/libogg/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/libogg/missing --run automake-1.10 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/libogg/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/libogg/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/libogg/missing --run automake-1.10 AWK = gawk CC = mipsel-uclibc-gcc CCDEPMODE = depmode=gcc3 @@ -136,7 +136,7 @@ LIB_REVISION = 0 LN_S = ln -s LTLIBOBJS = ${LIBOBJDIR}memcmp$U.lo MAINT = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/libogg/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/libogg/missing --run makeinfo MKDIR_P = /bin/mkdir -p NMEDIT = OBJEXT = o @@ -160,10 +160,10 @@ STRIP = mipsel-uclibc-strip -R .note -R .comment USIZE16 = unsigned short USIZE32 = unsigned int VERSION = 1.1.4 -abs_builddir = /home/vicente/tomato/release/src/router/libogg/src -abs_srcdir = /home/vicente/tomato/release/src/router/libogg/src -abs_top_builddir = /home/vicente/tomato/release/src/router/libogg -abs_top_srcdir = /home/vicente/tomato/release/src/router/libogg +abs_builddir = /home/vicente/repos/tomato/release/src/router/libogg/src +abs_srcdir = /home/vicente/repos/tomato/release/src/router/libogg/src +abs_top_builddir = /home/vicente/repos/tomato/release/src/router/libogg +abs_top_srcdir = /home/vicente/repos/tomato/release/src/router/libogg ac_ct_CC = ac_ct_CXX = ac_ct_F77 = @@ -192,7 +192,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = $(SHELL) /home/vicente/tomato/release/src/router/libogg/install-sh +install_sh = $(SHELL) /home/vicente/repos/tomato/release/src/router/libogg/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = ${datarootdir}/locale diff --git a/release/src/router/libusb10/config.log b/release/src/router/libusb10/config.log deleted file mode 100644 index d1db86fbdc..0000000000 --- a/release/src/router/libusb10/config.log +++ /dev/null @@ -1,605 +0,0 @@ -This file contains any messages produced by compilers while -running configure, to aid debugging if configure makes a mistake. - -It was created by libusb configure 1.0.8, which was -generated by GNU Autoconf 2.65. Invocation command line was - - $ ./configure --host=mipsel-linux --build=x86_64-linux-gnu --prefix=/usr ac_cv_lib_rt_clock_gettime=no - -## --------- ## -## Platform. ## -## --------- ## - -hostname = vicente-P5K-E -uname -m = x86_64 -uname -r = 3.2.0-47-generic -uname -s = Linux -uname -v = #72-Ubuntu SMP Mon Jun 3 17:53:49 UTC 2013 - -/usr/bin/uname -p = unknown -/bin/uname -X = unknown - -/bin/arch = unknown -/usr/bin/arch -k = unknown -/usr/convex/getsysinfo = unknown -/usr/bin/hostinfo = unknown -/bin/machine = unknown -/usr/bin/oslevel = unknown -/bin/universe = unknown - -PATH: /home/vicente/tomato/release/tools -PATH: /home/vicente/tomato/release/tools -PATH: /home/vicente/tomato/release/tools -PATH: /home/vicente/tomato/release/tools -PATH: /opt/brcm/hndtools-mipsel-uclibc/bin -PATH: /opt/brcm/hndtools-mipsel-linux/bin -PATH: /usr/lib/lightdm/lightdm -PATH: /usr/local/sbin -PATH: /usr/local/bin -PATH: /usr/sbin -PATH: /usr/bin -PATH: /sbin -PATH: /bin -PATH: /usr/games - - -## ----------- ## -## Core tests. ## -## ----------- ## - -configure:2399: checking for a BSD-compatible install -configure:2467: result: /usr/bin/install -c -configure:2478: checking whether build environment is sane -configure:2528: result: yes -configure:2577: checking for mipsel-linux-strip -configure:2604: result: mipsel-uclibc-strip -R .note -R .comment -configure:2669: checking for a thread-safe mkdir -p -configure:2708: result: /bin/mkdir -p -configure:2721: checking for gawk -configure:2737: found /usr/bin/gawk -configure:2748: result: gawk -configure:2759: checking whether make sets $(MAKE) -configure:2781: result: yes -configure:2887: checking for mipsel-linux-gcc -configure:2914: result: mipsel-uclibc-gcc -configure:3183: checking for C compiler version -configure:3192: mipsel-uclibc-gcc --version >&5 -mipsel-uclibc-gcc (GCC) 4.2.4 -Copyright (C) 2007 Free Software Foundation, Inc. -This is free software; see the source for copying conditions. There is NO -warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - -configure:3203: $? = 0 -configure:3192: mipsel-uclibc-gcc -v >&5 -Using built-in specs. -Target: mipsel-linux-uclibc -Configured with: /home/fedork/tomato/toolchain/build_dir/toolchain-mipsel_gcc4.2.4/gcc-4.2.4/configure --prefix=/opt/brcm/hndtools-mipsel-uclibc-4.2.4 --build=i486-linux-gnu --host=i486-linux-gnu --target=mipsel-linux-uclibc --with-gnu-ld --enable-target-optspace --disable-libgomp --disable-libmudflap --disable-multilib --disable-nls --disable-__cxa_atexit --enable-libssp --enable-languages=c,c++ --enable-shared --enable-threads --enable-tls -Thread model: posix -gcc version 4.2.4 -configure:3203: $? = 0 -configure:3192: mipsel-uclibc-gcc -V >&5 -mipsel-uclibc-gcc: '-V' option must have argument -configure:3203: $? = 1 -configure:3192: mipsel-uclibc-gcc -qversion >&5 -mipsel-uclibc-gcc: unrecognized option '-qversion' -mipsel-uclibc-gcc: no input files -configure:3203: $? = 1 -configure:3223: checking whether the C compiler works -configure:3245: mipsel-uclibc-gcc -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c -lpthread >&5 -configure:3249: $? = 0 -configure:3298: result: yes -configure:3301: checking for C compiler default output file name -configure:3303: result: a.out -configure:3309: checking for suffix of executables -configure:3316: mipsel-uclibc-gcc -o conftest -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c -lpthread >&5 -configure:3320: $? = 0 -configure:3342: result: -configure:3364: checking whether we are cross compiling -configure:3402: result: yes -configure:3407: checking for suffix of object files -configure:3429: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:3433: $? = 0 -configure:3454: result: o -configure:3458: checking whether we are using the GNU C compiler -configure:3477: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:3477: $? = 0 -configure:3486: result: yes -configure:3495: checking whether mipsel-uclibc-gcc accepts -g -configure:3515: mipsel-uclibc-gcc -c -g conftest.c >&5 -configure:3515: $? = 0 -configure:3556: result: yes -configure:3573: checking for mipsel-uclibc-gcc option to accept ISO C89 -configure:3637: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:3637: $? = 0 -configure:3650: result: none needed -configure:3681: checking for style of include used by make -configure:3709: result: GNU -configure:3734: checking dependency style of mipsel-uclibc-gcc -configure:3844: result: gcc3 -configure:3888: checking build system type -configure:3902: result: x86_64-pc-linux-gnu -configure:3922: checking host system type -configure:3935: result: mipsel-unknown-linux-gnu -configure:3955: checking for a sed that does not truncate output -configure:4019: result: /bin/sed -configure:4037: checking for grep that handles long lines and -e -configure:4095: result: /bin/grep -configure:4100: checking for egrep -configure:4162: result: /bin/grep -E -configure:4167: checking for fgrep -configure:4229: result: /bin/grep -F -configure:4264: checking for ld used by mipsel-uclibc-gcc -configure:4331: result: mipsel-uclibc-ld -configure:4338: checking if the linker (mipsel-uclibc-ld) is GNU ld -configure:4353: result: yes -configure:4365: checking for BSD- or MS-compatible name lister (nm) -configure:4414: result: mipsel-uclibc-nm -configure:4532: checking the name lister (mipsel-uclibc-nm) interface -configure:4539: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:4542: mipsel-uclibc-nm "conftest.o" -configure:4545: output -00000000 B some_variable -configure:4552: result: BSD nm -configure:4555: checking whether ln -s works -configure:4559: result: yes -configure:4567: checking the maximum length of command line arguments -configure:4687: result: 3458764513820540925 -configure:4704: checking whether the shell understands some XSI constructs -configure:4714: result: yes -configure:4718: checking whether the shell understands "+=" -configure:4724: result: yes -configure:4759: checking for mipsel-uclibc-ld option to reload object files -configure:4766: result: -r -configure:4795: checking for mipsel-linux-objdump -configure:4811: found /opt/brcm/hndtools-mipsel-uclibc/bin/mipsel-linux-objdump -configure:4822: result: mipsel-linux-objdump -configure:4894: checking how to recognize dependent libraries -configure:5090: result: pass_all -configure:5110: checking for mipsel-linux-ar -configure:5137: result: mipsel-uclibc-ar -configure:5215: checking for mipsel-linux-strip -configure:5242: result: mipsel-uclibc-strip -R .note -R .comment -configure:5314: checking for mipsel-linux-ranlib -configure:5341: result: mipsel-uclibc-ranlib -configure:5471: checking command to parse mipsel-uclibc-nm output from mipsel-uclibc-gcc object -configure:5589: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:5592: $? = 0 -configure:5596: mipsel-uclibc-nm conftest.o \| sed -n -e 's/^.*[ ]\([ABCDGIRSTW][ABCDGIRSTW]*\)[ ][ ]*\([_A-Za-z][_A-Za-z0-9]*\)$/\1 \2 \2/p' \> conftest.nm -configure:5599: $? = 0 -configure:5653: mipsel-uclibc-gcc -o conftest -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c conftstm.o >&5 -configure:5656: $? = 0 -configure:5694: result: ok -configure:6503: checking how to run the C preprocessor -configure:6534: mipsel-uclibc-gcc -E conftest.c -configure:6534: $? = 0 -configure:6548: mipsel-uclibc-gcc -E conftest.c -conftest.c:11:28: error: ac_nonexistent.h: No such file or directory -configure:6548: $? = 1 -configure: failed program was: -| /* confdefs.h */ -| #define PACKAGE_NAME "libusb" -| #define PACKAGE_TARNAME "libusb" -| #define PACKAGE_VERSION "1.0.8" -| #define PACKAGE_STRING "libusb 1.0.8" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE_URL "" -| #define PACKAGE "libusb" -| #define VERSION "1.0.8" -| /* end confdefs.h. */ -| #include -configure:6573: result: mipsel-uclibc-gcc -E -configure:6593: mipsel-uclibc-gcc -E conftest.c -configure:6593: $? = 0 -configure:6607: mipsel-uclibc-gcc -E conftest.c -conftest.c:11:28: error: ac_nonexistent.h: No such file or directory -configure:6607: $? = 1 -configure: failed program was: -| /* confdefs.h */ -| #define PACKAGE_NAME "libusb" -| #define PACKAGE_TARNAME "libusb" -| #define PACKAGE_VERSION "1.0.8" -| #define PACKAGE_STRING "libusb 1.0.8" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE_URL "" -| #define PACKAGE "libusb" -| #define VERSION "1.0.8" -| /* end confdefs.h. */ -| #include -configure:6636: checking for ANSI C header files -configure:6656: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:6656: $? = 0 -configure:6740: result: yes -configure:6753: checking for sys/types.h -configure:6753: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:6753: $? = 0 -configure:6753: result: yes -configure:6753: checking for sys/stat.h -configure:6753: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:6753: $? = 0 -configure:6753: result: yes -configure:6753: checking for stdlib.h -configure:6753: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:6753: $? = 0 -configure:6753: result: yes -configure:6753: checking for string.h -configure:6753: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:6753: $? = 0 -configure:6753: result: yes -configure:6753: checking for memory.h -configure:6753: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:6753: $? = 0 -configure:6753: result: yes -configure:6753: checking for strings.h -configure:6753: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:6753: $? = 0 -configure:6753: result: yes -configure:6753: checking for inttypes.h -configure:6753: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:6753: $? = 0 -configure:6753: result: yes -configure:6753: checking for stdint.h -configure:6753: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:6753: $? = 0 -configure:6753: result: yes -configure:6753: checking for unistd.h -configure:6753: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:6753: $? = 0 -configure:6753: result: yes -configure:6768: checking for dlfcn.h -configure:6768: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:6768: $? = 0 -configure:6768: result: yes -configure:6952: checking for objdir -configure:6967: result: .libs -configure:7259: checking if mipsel-uclibc-gcc supports -fno-rtti -fno-exceptions -configure:7277: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fno-rtti -fno-exceptions conftest.c >&5 -cc1: warning: command line option "-fno-rtti" is valid for C++/ObjC++ but not for C -configure:7281: $? = 0 -configure:7294: result: no -configure:7314: checking for mipsel-uclibc-gcc option to produce PIC -configure:7586: result: -fPIC -DPIC -configure:7598: checking if mipsel-uclibc-gcc PIC flag -fPIC -DPIC works -configure:7616: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -DPIC -DPIC conftest.c >&5 -configure:7620: $? = 0 -configure:7633: result: yes -configure:7657: checking if mipsel-uclibc-gcc static flag -static works -configure:7685: result: yes -configure:7700: checking if mipsel-uclibc-gcc supports -c -o file.o -configure:7721: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -o out/conftest2.o conftest.c >&5 -configure:7725: $? = 0 -configure:7747: result: yes -configure:7755: checking if mipsel-uclibc-gcc supports -c -o file.o -configure:7802: result: yes -configure:7835: checking whether the mipsel-uclibc-gcc linker (mipsel-uclibc-ld) supports shared libraries -configure:8821: result: yes -configure:8858: checking whether -lc should be explicitly linked in -configure:8863: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:8866: $? = 0 -configure:8881: mipsel-uclibc-gcc -shared conftest.o -v -Wl,-soname -Wl,conftest -o conftest 2\>\&1 \| /bin/grep -lc \>/dev/null 2\>\&1 -configure:8884: $? = 0 -configure:8896: result: no -configure:9060: checking dynamic linker characteristics -configure:9506: mipsel-uclibc-gcc -o conftest -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -Wl,-rpath -Wl,/foo conftest.c -lpthread >&5 -configure:9506: $? = 0 -configure:9724: result: GNU/Linux ld.so -configure:9826: checking how to hardcode library paths into programs -configure:9851: result: immediate -configure:10371: checking whether stripping libraries is possible -configure:10376: result: yes -configure:10411: checking if libtool supports shared libraries -configure:10413: result: yes -configure:10416: checking whether to build shared libraries -configure:10437: result: yes -configure:10440: checking whether to build static libraries -configure:10444: result: yes -configure:10479: checking for inline -configure:10495: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:10495: $? = 0 -configure:10503: result: inline -configure:10522: checking whether mipsel-uclibc-gcc and cc understand -c and -o together -configure:10553: mipsel-uclibc-gcc -c conftest.c -o conftest2.o >&5 -configure:10557: $? = 0 -configure:10563: mipsel-uclibc-gcc -c conftest.c -o conftest2.o >&5 -configure:10567: $? = 0 -configure:10578: cc -c conftest.c >&5 -configure:10582: $? = 0 -configure:10590: cc -c conftest.c -o conftest2.o >&5 -configure:10594: $? = 0 -configure:10600: cc -c conftest.c -o conftest2.o >&5 -configure:10604: $? = 0 -configure:10622: result: yes -configure:10651: checking operating system -configure:10659: result: Linux -configure:10662: checking for clock_gettime in -lrt -configure:10696: result: no -configure:10752: checking sys/timerfd.h usability -configure:10752: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:10752: $? = 0 -configure:10752: result: yes -configure:10752: checking sys/timerfd.h presence -configure:10752: mipsel-uclibc-gcc -E conftest.c -configure:10752: $? = 0 -configure:10752: result: yes -configure:10752: checking for sys/timerfd.h -configure:10752: result: yes -configure:10772: checking whether TFD_NONBLOCK is declared -configure:10772: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:10772: $? = 0 -configure:10772: result: yes -configure:10784: checking whether to use timerfd for timing -configure:10791: result: yes -configure:10860: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fgnu89-inline conftest.c >&5 -configure:10860: $? = 0 -configure:10882: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fvisibility=hidden conftest.c >&5 -configure:10882: $? = 0 -configure:10910: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -Wno-pointer-sign conftest.c >&5 -configure:10910: $? = 0 -configure:11056: creating ./config.status - -## ---------------------- ## -## Running config.status. ## -## ---------------------- ## - -This file was extended by libusb config.status 1.0.8, which was -generated by GNU Autoconf 2.65. Invocation command line was - - CONFIG_FILES = - CONFIG_HEADERS = - CONFIG_LINKS = - CONFIG_COMMANDS = - $ ./config.status - -on vicente-P5K-E - -config.status:1088: creating libusb-1.0.pc -config.status:1088: creating Makefile -config.status:1088: creating libusb/Makefile -config.status:1088: creating examples/Makefile -config.status:1088: creating doc/Makefile -config.status:1088: creating doc/doxygen.cfg -config.status:1088: creating config.h -config.status:1260: config.h is unchanged -config.status:1308: executing depfiles commands -config.status:1308: executing libtool commands - -## ---------------- ## -## Cache variables. ## -## ---------------- ## - -ac_cv_build=x86_64-pc-linux-gnu -ac_cv_c_compiler_gnu=yes -ac_cv_c_inline=inline -ac_cv_env_CC_set=set -ac_cv_env_CC_value=mipsel-uclibc-gcc -ac_cv_env_CFLAGS_set=set -ac_cv_env_CFLAGS_value='-Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 ' -ac_cv_env_CPPFLAGS_set= -ac_cv_env_CPPFLAGS_value= -ac_cv_env_CPP_set= -ac_cv_env_CPP_value= -ac_cv_env_LDFLAGS_set= -ac_cv_env_LDFLAGS_value= -ac_cv_env_LIBS_set=set -ac_cv_env_LIBS_value=-lpthread -ac_cv_env_build_alias_set=set -ac_cv_env_build_alias_value=x86_64-linux-gnu -ac_cv_env_host_alias_set=set -ac_cv_env_host_alias_value=mipsel-linux -ac_cv_env_target_alias_set= -ac_cv_env_target_alias_value= -ac_cv_func_malloc_0_nonnull=yes -ac_cv_have_decl_TFD_NONBLOCK=yes -ac_cv_header_dlfcn_h=yes -ac_cv_header_inttypes_h=yes -ac_cv_header_memory_h=yes -ac_cv_header_stdc=yes -ac_cv_header_stdint_h=yes -ac_cv_header_stdlib_h=yes -ac_cv_header_string_h=yes -ac_cv_header_strings_h=yes -ac_cv_header_sys_stat_h=yes -ac_cv_header_sys_timerfd_h=yes -ac_cv_header_sys_types_h=yes -ac_cv_header_unistd_h=yes -ac_cv_host=mipsel-unknown-linux-gnu -ac_cv_lib_rt_clock_gettime=no -ac_cv_objext=o -ac_cv_path_EGREP='/bin/grep -E' -ac_cv_path_FGREP='/bin/grep -F' -ac_cv_path_GREP=/bin/grep -ac_cv_path_SED=/bin/sed -ac_cv_path_install='/usr/bin/install -c' -ac_cv_path_mkdir=/bin/mkdir -ac_cv_prog_AR=mipsel-uclibc-ar -ac_cv_prog_AWK=gawk -ac_cv_prog_CC=mipsel-uclibc-gcc -ac_cv_prog_CPP='mipsel-uclibc-gcc -E' -ac_cv_prog_OBJDUMP=mipsel-linux-objdump -ac_cv_prog_RANLIB=mipsel-uclibc-ranlib -ac_cv_prog_STRIP='mipsel-uclibc-strip -R .note -R .comment' -ac_cv_prog_cc_c89= -ac_cv_prog_cc_g=yes -ac_cv_prog_cc_mipsel_uclibc_gcc_c_o=yes -ac_cv_prog_make_make_set=yes -am_cv_CC_dependencies_compiler_type=gcc3 -lt_cv_deplibs_check_method=pass_all -lt_cv_file_magic_cmd='$MAGIC_CMD' -lt_cv_file_magic_test_file= -lt_cv_ld_reload_flag=-r -lt_cv_nm_interface='BSD nm' -lt_cv_objdir=.libs -lt_cv_path_LD=mipsel-uclibc-ld -lt_cv_path_NM=mipsel-uclibc-nm -lt_cv_prog_compiler_c_o=yes -lt_cv_prog_compiler_pic_works=yes -lt_cv_prog_compiler_rtti_exceptions=no -lt_cv_prog_compiler_static_works=yes -lt_cv_prog_gnu_ld=yes -lt_cv_sys_global_symbol_pipe='sed -n -e '\''s/^.*[ ]\([ABCDGIRSTW][ABCDGIRSTW]*\)[ ][ ]*\([_A-Za-z][_A-Za-z0-9]*\)$/\1 \2 \2/p'\''' -lt_cv_sys_global_symbol_to_c_name_address='sed -n -e '\''s/^: \([^ ]*\) $/ {\"\1\", (void *) 0},/p'\'' -e '\''s/^[ABCDGIRSTW]* \([^ ]*\) \([^ ]*\)$/ {"\2", (void *) \&\2},/p'\''' -lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='sed -n -e '\''s/^: \([^ ]*\) $/ {\"\1\", (void *) 0},/p'\'' -e '\''s/^[ABCDGIRSTW]* \([^ ]*\) \(lib[^ ]*\)$/ {"\2", (void *) \&\2},/p'\'' -e '\''s/^[ABCDGIRSTW]* \([^ ]*\) \([^ ]*\)$/ {"lib\2", (void *) \&\2},/p'\''' -lt_cv_sys_global_symbol_to_cdecl='sed -n -e '\''s/^T .* \(.*\)$/extern int \1();/p'\'' -e '\''s/^[ABCDGIRSTW]* .* \(.*\)$/extern char \1;/p'\''' -lt_cv_sys_max_cmd_len=3458764513820540925 - -## ----------------- ## -## Output variables. ## -## ----------------- ## - -ACLOCAL='${SHELL} /home/vicente/tomato/release/src/router/libusb10/missing --run aclocal-1.11' -AMDEPBACKSLASH='\' -AMDEP_FALSE='#' -AMDEP_TRUE='' -AMTAR='${SHELL} /home/vicente/tomato/release/src/router/libusb10/missing --run tar' -AM_BACKSLASH='\' -AM_CFLAGS='-std=gnu99 -fgnu89-inline -Wall -Wundef -Wunused -Wstrict-prototypes -Werror-implicit-function-declaration -Wno-pointer-sign -Wshadow' -AM_DEFAULT_VERBOSITY='0' -AM_LDFLAGS='' -AR='mipsel-uclibc-ar' -AUTOCONF='${SHELL} /home/vicente/tomato/release/src/router/libusb10/missing --run autoconf' -AUTOHEADER='${SHELL} /home/vicente/tomato/release/src/router/libusb10/missing --run autoheader' -AUTOMAKE='${SHELL} /home/vicente/tomato/release/src/router/libusb10/missing --run automake-1.11' -AWK='gawk' -BUILD_EXAMPLES_FALSE='' -BUILD_EXAMPLES_TRUE='#' -CC='mipsel-uclibc-gcc' -CCDEPMODE='depmode=gcc3' -CFLAGS='-Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 ' -CPP='mipsel-uclibc-gcc -E' -CPPFLAGS='' -CYGPATH_W='echo' -DEFS='-DHAVE_CONFIG_H' -DEPDIR='.deps' -DSYMUTIL='' -DUMPBIN='' -ECHO_C='' -ECHO_N='-n' -ECHO_T='' -EGREP='/bin/grep -E' -EXEEXT='' -FGREP='/bin/grep -F' -GREP='/bin/grep' -INSTALL_DATA='${INSTALL} -m 644' -INSTALL_PROGRAM='${INSTALL}' -INSTALL_SCRIPT='${INSTALL}' -INSTALL_STRIP_PROGRAM='$(install_sh) -c -s' -LD='mipsel-uclibc-ld' -LDFLAGS='' -LIBOBJS='' -LIBS='-lpthread' -LIBTOOL='$(SHELL) $(top_builddir)/libtool' -LIPO='' -LN_S='ln -s' -LTLIBOBJS='' -MAKEINFO='${SHELL} /home/vicente/tomato/release/src/router/libusb10/missing --run makeinfo' -MKDIR_P='/bin/mkdir -p' -NM='mipsel-uclibc-nm' -NMEDIT='' -OBJDUMP='mipsel-linux-objdump' -OBJEXT='o' -OS_DARWIN='' -OS_DARWIN_FALSE='' -OS_DARWIN_TRUE='#' -OS_LINUX='' -OS_LINUX_FALSE='#' -OS_LINUX_TRUE='' -OTOOL64='' -OTOOL='' -PACKAGE='libusb' -PACKAGE_BUGREPORT='' -PACKAGE_NAME='libusb' -PACKAGE_STRING='libusb 1.0.8' -PACKAGE_TARNAME='libusb' -PACKAGE_URL='' -PACKAGE_VERSION='1.0.8' -PATH_SEPARATOR=':' -RANLIB='mipsel-uclibc-ranlib' -SED='/bin/sed' -SET_MAKE='' -SHELL='/bin/sh' -STRIP='mipsel-uclibc-strip -R .note -R .comment' -VERSION='1.0.8' -VISIBILITY_CFLAGS='-fvisibility=hidden' -ac_ct_CC='' -ac_ct_DUMPBIN='' -am__EXEEXT_FALSE='' -am__EXEEXT_TRUE='#' -am__fastdepCC_FALSE='#' -am__fastdepCC_TRUE='' -am__include='include' -am__isrc='' -am__leading_dot='.' -am__quote='' -am__tar='${AMTAR} chof - "$$tardir"' -am__untar='${AMTAR} xf -' -bindir='${exec_prefix}/bin' -build='x86_64-pc-linux-gnu' -build_alias='x86_64-linux-gnu' -build_cpu='x86_64' -build_os='linux-gnu' -build_vendor='pc' -datadir='${datarootdir}' -datarootdir='${prefix}/share' -docdir='${datarootdir}/doc/${PACKAGE_TARNAME}' -dvidir='${docdir}' -exec_prefix='${prefix}' -host='mipsel-unknown-linux-gnu' -host_alias='mipsel-linux' -host_cpu='mipsel' -host_os='linux-gnu' -host_vendor='unknown' -htmldir='${docdir}' -includedir='${prefix}/include' -infodir='${datarootdir}/info' -install_sh='${SHELL} /home/vicente/tomato/release/src/router/libusb10/install-sh' -libdir='${exec_prefix}/lib' -libexecdir='${exec_prefix}/libexec' -localedir='${datarootdir}/locale' -localstatedir='${prefix}/var' -lt_ECHO='echo' -lt_age='0' -lt_major='0' -lt_revision='0' -mandir='${datarootdir}/man' -mkdir_p='/bin/mkdir -p' -oldincludedir='/usr/include' -pdfdir='${docdir}' -prefix='/usr' -program_transform_name='s,x,x,' -psdir='${docdir}' -sbindir='${exec_prefix}/sbin' -sharedstatedir='${prefix}/com' -sysconfdir='${prefix}/etc' -target_alias='' - -## ----------- ## -## confdefs.h. ## -## ----------- ## - -/* confdefs.h */ -#define PACKAGE_NAME "libusb" -#define PACKAGE_TARNAME "libusb" -#define PACKAGE_VERSION "1.0.8" -#define PACKAGE_STRING "libusb 1.0.8" -#define PACKAGE_BUGREPORT "" -#define PACKAGE_URL "" -#define PACKAGE "libusb" -#define VERSION "1.0.8" -#define STDC_HEADERS 1 -#define HAVE_SYS_TYPES_H 1 -#define HAVE_SYS_STAT_H 1 -#define HAVE_STDLIB_H 1 -#define HAVE_STRING_H 1 -#define HAVE_MEMORY_H 1 -#define HAVE_STRINGS_H 1 -#define HAVE_INTTYPES_H 1 -#define HAVE_STDINT_H 1 -#define HAVE_UNISTD_H 1 -#define HAVE_DLFCN_H 1 -#define LT_OBJDIR ".libs/" -#define _GNU_SOURCE /**/ -#define OS_LINUX /**/ -#define USBI_TIMERFD_AVAILABLE /**/ -#define ENABLE_LOGGING 1 -#define API_EXPORTED __attribute__((visibility("default"))) - -configure: exit 0 diff --git a/release/src/router/libusb10/config.status b/release/src/router/libusb10/config.status deleted file mode 100755 index 9174695b8b..0000000000 --- a/release/src/router/libusb10/config.status +++ /dev/null @@ -1,2050 +0,0 @@ -#! /bin/sh -# Generated by configure. -# Run this file to recreate the current configuration. -# Compiler output produced by configure, useful for debugging -# configure, is in config.log if it exists. - -debug=false -ac_cs_recheck=false -ac_cs_silent=false - -SHELL=${CONFIG_SHELL-/bin/sh} -export SHELL -## -------------------- ## -## M4sh Initialization. ## -## -------------------- ## - -# Be more Bourne compatible -DUALCASE=1; export DUALCASE # for MKS sh -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then : - emulate sh - NULLCMD=: - # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which - # is contrary to our usage. Disable this feature. - alias -g '${1+"$@"}'='"$@"' - setopt NO_GLOB_SUBST -else - case `(set -o) 2>/dev/null` in #( - *posix*) : - set -o posix ;; #( - *) : - ;; -esac -fi - - -as_nl=' -' -export as_nl -# Printing a long string crashes Solaris 7 /usr/bin/printf. -as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' -as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo -as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo -# Prefer a ksh shell builtin over an external printf program on Solaris, -# but without wasting forks for bash or zsh. -if test -z "$BASH_VERSION$ZSH_VERSION" \ - && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then - as_echo='print -r --' - as_echo_n='print -rn --' -elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then - as_echo='printf %s\n' - as_echo_n='printf %s' -else - if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then - as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"' - as_echo_n='/usr/ucb/echo -n' - else - as_echo_body='eval expr "X$1" : "X\\(.*\\)"' - as_echo_n_body='eval - arg=$1; - case $arg in #( - *"$as_nl"*) - expr "X$arg" : "X\\(.*\\)$as_nl"; - arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;; - esac; - expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl" - ' - export as_echo_n_body - as_echo_n='sh -c $as_echo_n_body as_echo' - fi - export as_echo_body - as_echo='sh -c $as_echo_body as_echo' -fi - -# The user is always right. -if test "${PATH_SEPARATOR+set}" != set; then - PATH_SEPARATOR=: - (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { - (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || - PATH_SEPARATOR=';' - } -fi - - -# IFS -# We need space, tab and new line, in precisely that order. Quoting is -# there to prevent editors from complaining about space-tab. -# (If _AS_PATH_WALK were called with IFS unset, it would disable word -# splitting by setting IFS to empty value.) -IFS=" "" $as_nl" - -# Find who we are. Look in the path if we contain no directory separator. -case $0 in #(( - *[\\/]* ) as_myself=$0 ;; - *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break - done -IFS=$as_save_IFS - - ;; -esac -# We did not find ourselves, most probably we were run as `sh COMMAND' -# in which case we are not to be found in the path. -if test "x$as_myself" = x; then - as_myself=$0 -fi -if test ! -f "$as_myself"; then - $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 - exit 1 -fi - -# Unset variables that we do not need and which cause bugs (e.g. in -# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1" -# suppresses any "Segmentation fault" message there. '((' could -# trigger a bug in pdksh 5.2.14. -for as_var in BASH_ENV ENV MAIL MAILPATH -do eval test x\${$as_var+set} = xset \ - && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : -done -PS1='$ ' -PS2='> ' -PS4='+ ' - -# NLS nuisances. -LC_ALL=C -export LC_ALL -LANGUAGE=C -export LANGUAGE - -# CDPATH. -(unset CDPATH) >/dev/null 2>&1 && unset CDPATH - - -# as_fn_error ERROR [LINENO LOG_FD] -# --------------------------------- -# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are -# provided, also output the error to LOG_FD, referencing LINENO. Then exit the -# script with status $?, using 1 if that was 0. -as_fn_error () -{ - as_status=$?; test $as_status -eq 0 && as_status=1 - if test "$3"; then - as_lineno=${as_lineno-"$2"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - $as_echo "$as_me:${as_lineno-$LINENO}: error: $1" >&$3 - fi - $as_echo "$as_me: error: $1" >&2 - as_fn_exit $as_status -} # as_fn_error - - -# as_fn_set_status STATUS -# ----------------------- -# Set $? to STATUS, without forking. -as_fn_set_status () -{ - return $1 -} # as_fn_set_status - -# as_fn_exit STATUS -# ----------------- -# Exit the shell with STATUS, even in a "trap 0" or "set -e" context. -as_fn_exit () -{ - set +e - as_fn_set_status $1 - exit $1 -} # as_fn_exit - -# as_fn_unset VAR -# --------------- -# Portably unset VAR. -as_fn_unset () -{ - { eval $1=; unset $1;} -} -as_unset=as_fn_unset -# as_fn_append VAR VALUE -# ---------------------- -# Append the text in VALUE to the end of the definition contained in VAR. Take -# advantage of any shell optimizations that allow amortized linear growth over -# repeated appends, instead of the typical quadratic growth present in naive -# implementations. -if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then : - eval 'as_fn_append () - { - eval $1+=\$2 - }' -else - as_fn_append () - { - eval $1=\$$1\$2 - } -fi # as_fn_append - -# as_fn_arith ARG... -# ------------------ -# Perform arithmetic evaluation on the ARGs, and store the result in the -# global $as_val. Take advantage of shells that can avoid forks. The arguments -# must be portable across $(()) and expr. -if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then : - eval 'as_fn_arith () - { - as_val=$(( $* )) - }' -else - as_fn_arith () - { - as_val=`expr "$@" || test $? -eq 1` - } -fi # as_fn_arith - - -if expr a : '\(a\)' >/dev/null 2>&1 && - test "X`expr 00001 : '.*\(...\)'`" = X001; then - as_expr=expr -else - as_expr=false -fi - -if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then - as_basename=basename -else - as_basename=false -fi - -if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then - as_dirname=dirname -else - as_dirname=false -fi - -as_me=`$as_basename -- "$0" || -$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ - X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X/"$0" | - sed '/^.*\/\([^/][^/]*\)\/*$/{ - s//\1/ - q - } - /^X\/\(\/\/\)$/{ - s//\1/ - q - } - /^X\/\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - -# Avoid depending upon Character Ranges. -as_cr_letters='abcdefghijklmnopqrstuvwxyz' -as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' -as_cr_Letters=$as_cr_letters$as_cr_LETTERS -as_cr_digits='0123456789' -as_cr_alnum=$as_cr_Letters$as_cr_digits - -ECHO_C= ECHO_N= ECHO_T= -case `echo -n x` in #((((( --n*) - case `echo 'xy\c'` in - *c*) ECHO_T=' ';; # ECHO_T is single tab character. - xy) ECHO_C='\c';; - *) echo `echo ksh88 bug on AIX 6.1` > /dev/null - ECHO_T=' ';; - esac;; -*) - ECHO_N='-n';; -esac - -rm -f conf$$ conf$$.exe conf$$.file -if test -d conf$$.dir; then - rm -f conf$$.dir/conf$$.file -else - rm -f conf$$.dir - mkdir conf$$.dir 2>/dev/null -fi -if (echo >conf$$.file) 2>/dev/null; then - if ln -s conf$$.file conf$$ 2>/dev/null; then - as_ln_s='ln -s' - # ... but there are two gotchas: - # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. - # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. - # In both cases, we have to default to `cp -p'. - ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || - as_ln_s='cp -p' - elif ln conf$$.file conf$$ 2>/dev/null; then - as_ln_s=ln - else - as_ln_s='cp -p' - fi -else - as_ln_s='cp -p' -fi -rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file -rmdir conf$$.dir 2>/dev/null - - -# as_fn_mkdir_p -# ------------- -# Create "$as_dir" as a directory, including parents if necessary. -as_fn_mkdir_p () -{ - - case $as_dir in #( - -*) as_dir=./$as_dir;; - esac - test -d "$as_dir" || eval $as_mkdir_p || { - as_dirs= - while :; do - case $as_dir in #( - *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( - *) as_qdir=$as_dir;; - esac - as_dirs="'$as_qdir' $as_dirs" - as_dir=`$as_dirname -- "$as_dir" || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - test -d "$as_dir" && break - done - test -z "$as_dirs" || eval "mkdir $as_dirs" - } || test -d "$as_dir" || as_fn_error "cannot create directory $as_dir" - - -} # as_fn_mkdir_p -if mkdir -p . 2>/dev/null; then - as_mkdir_p='mkdir -p "$as_dir"' -else - test -d ./-p && rmdir ./-p - as_mkdir_p=false -fi - -if test -x / >/dev/null 2>&1; then - as_test_x='test -x' -else - if ls -dL / >/dev/null 2>&1; then - as_ls_L_option=L - else - as_ls_L_option= - fi - as_test_x=' - eval sh -c '\'' - if test -d "$1"; then - test -d "$1/."; - else - case $1 in #( - -*)set "./$1";; - esac; - case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #(( - ???[sx]*):;;*)false;;esac;fi - '\'' sh - ' -fi -as_executable_p=$as_test_x - -# Sed expression to map a string onto a valid CPP name. -as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" - -# Sed expression to map a string onto a valid variable name. -as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" - - -exec 6>&1 -## ----------------------------------- ## -## Main body of $CONFIG_STATUS script. ## -## ----------------------------------- ## -# Save the log message, to keep $0 and so on meaningful, and to -# report actual input values of CONFIG_FILES etc. instead of their -# values after options handling. -ac_log=" -This file was extended by libusb $as_me 1.0.8, which was -generated by GNU Autoconf 2.65. Invocation command line was - - CONFIG_FILES = $CONFIG_FILES - CONFIG_HEADERS = $CONFIG_HEADERS - CONFIG_LINKS = $CONFIG_LINKS - CONFIG_COMMANDS = $CONFIG_COMMANDS - $ $0 $@ - -on `(hostname || uname -n) 2>/dev/null | sed 1q` -" - -# Files that config.status was made for. -config_files=" libusb-1.0.pc Makefile libusb/Makefile examples/Makefile doc/Makefile doc/doxygen.cfg" -config_headers=" config.h" -config_commands=" depfiles libtool" - -ac_cs_usage="\ -\`$as_me' instantiates files and other configuration actions -from templates according to the current configuration. Unless the files -and actions are specified as TAGs, all are instantiated by default. - -Usage: $0 [OPTION]... [TAG]... - - -h, --help print this help, then exit - -V, --version print version number and configuration settings, then exit - --config print configuration, then exit - -q, --quiet, --silent - do not print progress messages - -d, --debug don't remove temporary files - --recheck update $as_me by reconfiguring in the same conditions - --file=FILE[:TEMPLATE] - instantiate the configuration file FILE - --header=FILE[:TEMPLATE] - instantiate the configuration header FILE - -Configuration files: -$config_files - -Configuration headers: -$config_headers - -Configuration commands: -$config_commands - -Report bugs to the package provider." - -ac_cs_config="'--host=mipsel-linux' '--build=x86_64-linux-gnu' '--prefix=/usr' 'ac_cv_lib_rt_clock_gettime=no' 'build_alias=x86_64-linux-gnu' 'host_alias=mipsel-linux' 'CC=mipsel-uclibc-gcc' 'CFLAGS=-Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 ' 'LIBS=-lpthread'" -ac_cs_version="\ -libusb config.status 1.0.8 -configured by ./configure, generated by GNU Autoconf 2.65, - with options \"$ac_cs_config\" - -Copyright (C) 2009 Free Software Foundation, Inc. -This config.status script is free software; the Free Software Foundation -gives unlimited permission to copy, distribute and modify it." - -ac_pwd='/home/vicente/tomato/release/src/router/libusb10' -srcdir='.' -INSTALL='/usr/bin/install -c' -MKDIR_P='/bin/mkdir -p' -AWK='gawk' -test -n "$AWK" || AWK=awk -# The default lists apply if the user does not specify any file. -ac_need_defaults=: -while test $# != 0 -do - case $1 in - --*=*) - ac_option=`expr "X$1" : 'X\([^=]*\)='` - ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'` - ac_shift=: - ;; - *) - ac_option=$1 - ac_optarg=$2 - ac_shift=shift - ;; - esac - - case $ac_option in - # Handling of the options. - -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) - ac_cs_recheck=: ;; - --version | --versio | --versi | --vers | --ver | --ve | --v | -V ) - $as_echo "$ac_cs_version"; exit ;; - --config | --confi | --conf | --con | --co | --c ) - $as_echo "$ac_cs_config"; exit ;; - --debug | --debu | --deb | --de | --d | -d ) - debug=: ;; - --file | --fil | --fi | --f ) - $ac_shift - case $ac_optarg in - *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; - esac - as_fn_append CONFIG_FILES " '$ac_optarg'" - ac_need_defaults=false;; - --header | --heade | --head | --hea ) - $ac_shift - case $ac_optarg in - *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; - esac - as_fn_append CONFIG_HEADERS " '$ac_optarg'" - ac_need_defaults=false;; - --he | --h) - # Conflict between --help and --header - as_fn_error "ambiguous option: \`$1' -Try \`$0 --help' for more information.";; - --help | --hel | -h ) - $as_echo "$ac_cs_usage"; exit ;; - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil | --si | --s) - ac_cs_silent=: ;; - - # This is an error. - -*) as_fn_error "unrecognized option: \`$1' -Try \`$0 --help' for more information." ;; - - *) as_fn_append ac_config_targets " $1" - ac_need_defaults=false ;; - - esac - shift -done - -ac_configure_extra_args= - -if $ac_cs_silent; then - exec 6>/dev/null - ac_configure_extra_args="$ac_configure_extra_args --silent" -fi - -if $ac_cs_recheck; then - set X '/bin/sh' './configure' '--host=mipsel-linux' '--build=x86_64-linux-gnu' '--prefix=/usr' 'ac_cv_lib_rt_clock_gettime=no' 'build_alias=x86_64-linux-gnu' 'host_alias=mipsel-linux' 'CC=mipsel-uclibc-gcc' 'CFLAGS=-Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 ' 'LIBS=-lpthread' $ac_configure_extra_args --no-create --no-recursion - shift - $as_echo "running CONFIG_SHELL=/bin/sh $*" >&6 - CONFIG_SHELL='/bin/sh' - export CONFIG_SHELL - exec "$@" -fi - -exec 5>>config.log -{ - echo - sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX -## Running $as_me. ## -_ASBOX - $as_echo "$ac_log" -} >&5 - -# -# INIT-COMMANDS -# -AMDEP_TRUE="" ac_aux_dir="." - - -# The HP-UX ksh and POSIX shell print the target directory to stdout -# if CDPATH is set. -(unset CDPATH) >/dev/null 2>&1 && unset CDPATH - -sed_quote_subst='s/\(["`$\\]\)/\\\1/g' -double_quote_subst='s/\(["`\\]\)/\\\1/g' -delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g' -macro_version='2.2.6b' -macro_revision='1.3017' -enable_shared='yes' -enable_static='yes' -pic_mode='default' -enable_fast_install='yes' -host_alias='mipsel-linux' -host='mipsel-unknown-linux-gnu' -host_os='linux-gnu' -build_alias='x86_64-linux-gnu' -build='x86_64-pc-linux-gnu' -build_os='linux-gnu' -SED='/bin/sed' -Xsed='/bin/sed -e 1s/^X//' -GREP='/bin/grep' -EGREP='/bin/grep -E' -FGREP='/bin/grep -F' -LD='mipsel-uclibc-ld' -NM='mipsel-uclibc-nm' -LN_S='ln -s' -max_cmd_len='3458764513820540925' -ac_objext='o' -exeext='' -lt_unset='unset' -lt_SP2NL='tr \040 \012' -lt_NL2SP='tr \015\012 \040\040' -reload_flag=' -r' -reload_cmds='$LD$reload_flag -o $output$reload_objs' -OBJDUMP='mipsel-linux-objdump' -deplibs_check_method='pass_all' -file_magic_cmd='$MAGIC_CMD' -AR='mipsel-uclibc-ar' -AR_FLAGS='cru' -STRIP='mipsel-uclibc-strip -R .note -R .comment' -RANLIB='mipsel-uclibc-ranlib' -old_postinstall_cmds='chmod 644 $oldlib~$RANLIB $oldlib' -old_postuninstall_cmds='' -old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs~$RANLIB $oldlib' -CC='mipsel-uclibc-gcc' -CFLAGS='-Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 ' -compiler='mipsel-uclibc-gcc' -GCC='yes' -lt_cv_sys_global_symbol_pipe='sed -n -e '\''s/^.*[ ]\([ABCDGIRSTW][ABCDGIRSTW]*\)[ ][ ]*\([_A-Za-z][_A-Za-z0-9]*\)$/\1 \2 \2/p'\''' -lt_cv_sys_global_symbol_to_cdecl='sed -n -e '\''s/^T .* \(.*\)$/extern int \1();/p'\'' -e '\''s/^[ABCDGIRSTW]* .* \(.*\)$/extern char \1;/p'\''' -lt_cv_sys_global_symbol_to_c_name_address='sed -n -e '\''s/^: \([^ ]*\) $/ {\"\1\", (void *) 0},/p'\'' -e '\''s/^[ABCDGIRSTW]* \([^ ]*\) \([^ ]*\)$/ {"\2", (void *) \&\2},/p'\''' -lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='sed -n -e '\''s/^: \([^ ]*\) $/ {\"\1\", (void *) 0},/p'\'' -e '\''s/^[ABCDGIRSTW]* \([^ ]*\) \(lib[^ ]*\)$/ {"\2", (void *) \&\2},/p'\'' -e '\''s/^[ABCDGIRSTW]* \([^ ]*\) \([^ ]*\)$/ {"lib\2", (void *) \&\2},/p'\''' -objdir='.libs' -SHELL='/bin/sh' -ECHO='echo' -MAGIC_CMD='file' -lt_prog_compiler_no_builtin_flag=' -fno-builtin' -lt_prog_compiler_wl='-Wl,' -lt_prog_compiler_pic=' -fPIC -DPIC' -lt_prog_compiler_static='-static' -lt_cv_prog_compiler_c_o='yes' -need_locks='no' -DSYMUTIL='' -NMEDIT='' -LIPO='' -OTOOL='' -OTOOL64='' -libext='a' -shrext_cmds='.so' -extract_expsyms_cmds='' -archive_cmds_need_lc='no' -enable_shared_with_static_runtimes='no' -export_dynamic_flag_spec='${wl}--export-dynamic' -whole_archive_flag_spec='${wl}--whole-archive$convenience ${wl}--no-whole-archive' -compiler_needs_object='no' -old_archive_from_new_cmds='' -old_archive_from_expsyms_cmds='' -archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' -archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~ - cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ - echo "local: *; };" >> $output_objdir/$libname.ver~ - $CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib' -module_cmds='' -module_expsym_cmds='' -with_gnu_ld='yes' -allow_undefined_flag='' -no_undefined_flag='' -hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' -hardcode_libdir_flag_spec_ld='' -hardcode_libdir_separator='' -hardcode_direct='no' -hardcode_direct_absolute='no' -hardcode_minus_L='no' -hardcode_shlibpath_var='unsupported' -hardcode_automatic='no' -inherit_rpath='no' -link_all_deplibs='unknown' -fix_srcfile_path='' -always_export_symbols='no' -export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' -exclude_expsyms='_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*' -include_expsyms='' -prelink_cmds='' -file_list_spec='' -variables_saved_for_relink='PATH LD_LIBRARY_PATH LD_RUN_PATH GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH' -need_lib_prefix='no' -need_version='no' -version_type='linux' -runpath_var='LD_RUN_PATH' -shlibpath_var='LD_LIBRARY_PATH' -shlibpath_overrides_runpath='no' -libname_spec='lib$name' -library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' -soname_spec='${libname}${release}${shared_ext}$major' -postinstall_cmds='' -postuninstall_cmds='' -finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' -finish_eval='' -hardcode_into_libs='yes' -sys_lib_search_path_spec='/home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/lib/gcc/mipsel-linux-uclibc/4.2.4 /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/lib/gcc /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/mipsel-linux-uclibc/lib' -sys_lib_dlsearch_path_spec='/lib /usr/lib /lib/i386-linux-gnu /usr/lib/i386-linux-gnu /lib/i686-linux-gnu /usr/lib/i686-linux-gnu /usr/local/lib /usr/lib/nvidia-settings /lib/x86_64-linux-gnu /usr/lib/x86_64-linux-gnu /usr/lib/nvidia-current /usr/lib32/nvidia-current /lib32 /usr/lib32 ' -hardcode_action='immediate' -enable_dlopen='unknown' -enable_dlopen_self='unknown' -enable_dlopen_self_static='unknown' -old_striplib='mipsel-uclibc-strip -R .note -R .comment --strip-debug' -striplib='mipsel-uclibc-strip -R .note -R .comment --strip-unneeded' - -LTCC='mipsel-uclibc-gcc' -LTCFLAGS='-Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 ' -compiler='mipsel-uclibc-gcc' - -# Quote evaled strings. -for var in SED GREP EGREP FGREP LD NM LN_S lt_SP2NL lt_NL2SP reload_flag OBJDUMP deplibs_check_method file_magic_cmd AR AR_FLAGS STRIP RANLIB CC CFLAGS compiler lt_cv_sys_global_symbol_pipe lt_cv_sys_global_symbol_to_cdecl lt_cv_sys_global_symbol_to_c_name_address lt_cv_sys_global_symbol_to_c_name_address_lib_prefix SHELL ECHO lt_prog_compiler_no_builtin_flag lt_prog_compiler_wl lt_prog_compiler_pic lt_prog_compiler_static lt_cv_prog_compiler_c_o need_locks DSYMUTIL NMEDIT LIPO OTOOL OTOOL64 shrext_cmds export_dynamic_flag_spec whole_archive_flag_spec compiler_needs_object with_gnu_ld allow_undefined_flag no_undefined_flag hardcode_libdir_flag_spec hardcode_libdir_flag_spec_ld hardcode_libdir_separator fix_srcfile_path exclude_expsyms include_expsyms file_list_spec variables_saved_for_relink libname_spec library_names_spec soname_spec finish_eval old_striplib striplib; do - case `eval \\$ECHO "X\\$$var"` in - *[\\\`\"\$]*) - eval "lt_$var=\\\"\`\$ECHO \"X\$$var\" | \$Xsed -e \"\$sed_quote_subst\"\`\\\"" - ;; - *) - eval "lt_$var=\\\"\$$var\\\"" - ;; - esac -done - -# Double-quote double-evaled strings. -for var in reload_cmds old_postinstall_cmds old_postuninstall_cmds old_archive_cmds extract_expsyms_cmds old_archive_from_new_cmds old_archive_from_expsyms_cmds archive_cmds archive_expsym_cmds module_cmds module_expsym_cmds export_symbols_cmds prelink_cmds postinstall_cmds postuninstall_cmds finish_cmds sys_lib_search_path_spec sys_lib_dlsearch_path_spec; do - case `eval \\$ECHO "X\\$$var"` in - *[\\\`\"\$]*) - eval "lt_$var=\\\"\`\$ECHO \"X\$$var\" | \$Xsed -e \"\$double_quote_subst\" -e \"\$sed_quote_subst\" -e \"\$delay_variable_subst\"\`\\\"" - ;; - *) - eval "lt_$var=\\\"\$$var\\\"" - ;; - esac -done - -# Fix-up fallback echo if it was mangled by the above quoting rules. -case $lt_ECHO in -*'\$0 --fallback-echo"') lt_ECHO=`$ECHO "X$lt_ECHO" | $Xsed -e 's/\\\\\\\$0 --fallback-echo"$/$0 --fallback-echo"/'` - ;; -esac - -ac_aux_dir='.' -xsi_shell='yes' -lt_shell_append='yes' - -# See if we are running on zsh, and set the options which allow our -# commands through without removal of \ escapes INIT. -if test -n "${ZSH_VERSION+set}" ; then - setopt NO_GLOB_SUBST -fi - - - PACKAGE='libusb' - VERSION='1.0.8' - TIMESTAMP='' - RM='rm -f' - ofile='libtool' - - - - - -# Handling of arguments. -for ac_config_target in $ac_config_targets -do - case $ac_config_target in - "config.h") CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;; - "depfiles") CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;; - "libtool") CONFIG_COMMANDS="$CONFIG_COMMANDS libtool" ;; - "libusb-1.0.pc") CONFIG_FILES="$CONFIG_FILES libusb-1.0.pc" ;; - "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;; - "libusb/Makefile") CONFIG_FILES="$CONFIG_FILES libusb/Makefile" ;; - "examples/Makefile") CONFIG_FILES="$CONFIG_FILES examples/Makefile" ;; - "doc/Makefile") CONFIG_FILES="$CONFIG_FILES doc/Makefile" ;; - "doc/doxygen.cfg") CONFIG_FILES="$CONFIG_FILES doc/doxygen.cfg" ;; - - *) as_fn_error "invalid argument: \`$ac_config_target'" "$LINENO" 5;; - esac -done - - -# If the user did not use the arguments to specify the items to instantiate, -# then the envvar interface is used. Set only those that are not. -# We use the long form for the default assignment because of an extremely -# bizarre bug on SunOS 4.1.3. -if $ac_need_defaults; then - test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files - test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers - test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands -fi - -# Have a temporary directory for convenience. Make it in the build tree -# simply because there is no reason against having it here, and in addition, -# creating and moving files from /tmp can sometimes cause problems. -# Hook for its removal unless debugging. -# Note that there is a small window in which the directory will not be cleaned: -# after its creation but before its name has been assigned to `$tmp'. -$debug || -{ - tmp= - trap 'exit_status=$? - { test -z "$tmp" || test ! -d "$tmp" || rm -fr "$tmp"; } && exit $exit_status -' 0 - trap 'as_fn_exit 1' 1 2 13 15 -} -# Create a (secure) tmp directory for tmp files. - -{ - tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` && - test -n "$tmp" && test -d "$tmp" -} || -{ - tmp=./conf$$-$RANDOM - (umask 077 && mkdir "$tmp") -} || as_fn_error "cannot create a temporary directory in ." "$LINENO" 5 - -# Set up the scripts for CONFIG_FILES section. -# No need to generate them if there are no CONFIG_FILES. -# This happens for instance with `./config.status config.h'. -if test -n "$CONFIG_FILES"; then - - -ac_cr=`echo X | tr X '\015'` -# On cygwin, bash can eat \r inside `` if the user requested igncr. -# But we know of no other shell where ac_cr would be empty at this -# point, so we can use a bashism as a fallback. -if test "x$ac_cr" = x; then - eval ac_cr=\$\'\\r\' -fi -ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' /dev/null` -if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then - ac_cs_awk_cr='\r' -else - ac_cs_awk_cr=$ac_cr -fi - -echo 'BEGIN {' >"$tmp/subs1.awk" && -cat >>"$tmp/subs1.awk" <<\_ACAWK && -S["am__EXEEXT_FALSE"]="" -S["am__EXEEXT_TRUE"]="#" -S["LTLIBOBJS"]="" -S["LIBOBJS"]="" -S["AM_LDFLAGS"]="" -S["AM_CFLAGS"]="-std=gnu99 -fgnu89-inline -Wall -Wundef -Wunused -Wstrict-prototypes -Werror-implicit-function-declaration -Wno-pointer-sign -Wshadow" -S["VISIBILITY_CFLAGS"]="-fvisibility=hidden" -S["BUILD_EXAMPLES_FALSE"]="" -S["BUILD_EXAMPLES_TRUE"]="#" -S["lt_age"]="0" -S["lt_revision"]="0" -S["lt_major"]="0" -S["OS_DARWIN_FALSE"]="" -S["OS_DARWIN_TRUE"]="#" -S["OS_LINUX_FALSE"]="#" -S["OS_LINUX_TRUE"]="" -S["OS_DARWIN"]="" -S["OS_LINUX"]="" -S["CPP"]="mipsel-uclibc-gcc -E" -S["OTOOL64"]="" -S["OTOOL"]="" -S["LIPO"]="" -S["NMEDIT"]="" -S["DSYMUTIL"]="" -S["lt_ECHO"]="echo" -S["RANLIB"]="mipsel-uclibc-ranlib" -S["AR"]="mipsel-uclibc-ar" -S["OBJDUMP"]="mipsel-linux-objdump" -S["LN_S"]="ln -s" -S["NM"]="mipsel-uclibc-nm" -S["ac_ct_DUMPBIN"]="" -S["DUMPBIN"]="" -S["LD"]="mipsel-uclibc-ld" -S["FGREP"]="/bin/grep -F" -S["EGREP"]="/bin/grep -E" -S["GREP"]="/bin/grep" -S["SED"]="/bin/sed" -S["host_os"]="linux-gnu" -S["host_vendor"]="unknown" -S["host_cpu"]="mipsel" -S["host"]="mipsel-unknown-linux-gnu" -S["build_os"]="linux-gnu" -S["build_vendor"]="pc" -S["build_cpu"]="x86_64" -S["build"]="x86_64-pc-linux-gnu" -S["LIBTOOL"]="$(SHELL) $(top_builddir)/libtool" -S["am__fastdepCC_FALSE"]="#" -S["am__fastdepCC_TRUE"]="" -S["CCDEPMODE"]="depmode=gcc3" -S["AMDEPBACKSLASH"]="\\" -S["AMDEP_FALSE"]="#" -S["AMDEP_TRUE"]="" -S["am__quote"]="" -S["am__include"]="include" -S["DEPDIR"]=".deps" -S["OBJEXT"]="o" -S["EXEEXT"]="" -S["ac_ct_CC"]="" -S["CPPFLAGS"]="" -S["LDFLAGS"]="" -S["CFLAGS"]="-Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 " -S["CC"]="mipsel-uclibc-gcc" -S["AM_BACKSLASH"]="\\" -S["AM_DEFAULT_VERBOSITY"]="0" -S["am__untar"]="${AMTAR} xf -" -S["am__tar"]="${AMTAR} chof - \"$$tardir\"" -S["AMTAR"]="${SHELL} /home/vicente/tomato/release/src/router/libusb10/missing --run tar" -S["am__leading_dot"]="." -S["SET_MAKE"]="" -S["AWK"]="gawk" -S["mkdir_p"]="/bin/mkdir -p" -S["MKDIR_P"]="/bin/mkdir -p" -S["INSTALL_STRIP_PROGRAM"]="$(install_sh) -c -s" -S["STRIP"]="mipsel-uclibc-strip -R .note -R .comment" -S["install_sh"]="${SHELL} /home/vicente/tomato/release/src/router/libusb10/install-sh" -S["MAKEINFO"]="${SHELL} /home/vicente/tomato/release/src/router/libusb10/missing --run makeinfo" -S["AUTOHEADER"]="${SHELL} /home/vicente/tomato/release/src/router/libusb10/missing --run autoheader" -S["AUTOMAKE"]="${SHELL} /home/vicente/tomato/release/src/router/libusb10/missing --run automake-1.11" -S["AUTOCONF"]="${SHELL} /home/vicente/tomato/release/src/router/libusb10/missing --run autoconf" -S["ACLOCAL"]="${SHELL} /home/vicente/tomato/release/src/router/libusb10/missing --run aclocal-1.11" -S["VERSION"]="1.0.8" -S["PACKAGE"]="libusb" -S["CYGPATH_W"]="echo" -S["am__isrc"]="" -S["INSTALL_DATA"]="${INSTALL} -m 644" -S["INSTALL_SCRIPT"]="${INSTALL}" -S["INSTALL_PROGRAM"]="${INSTALL}" -S["target_alias"]="" -S["host_alias"]="mipsel-linux" -S["build_alias"]="x86_64-linux-gnu" -S["LIBS"]="-lpthread" -S["ECHO_T"]="" -S["ECHO_N"]="-n" -S["ECHO_C"]="" -S["DEFS"]="-DHAVE_CONFIG_H" -S["mandir"]="${datarootdir}/man" -S["localedir"]="${datarootdir}/locale" -S["libdir"]="${exec_prefix}/lib" -S["psdir"]="${docdir}" -S["pdfdir"]="${docdir}" -S["dvidir"]="${docdir}" -S["htmldir"]="${docdir}" -S["infodir"]="${datarootdir}/info" -S["docdir"]="${datarootdir}/doc/${PACKAGE_TARNAME}" -S["oldincludedir"]="/usr/include" -S["includedir"]="${prefix}/include" -S["localstatedir"]="${prefix}/var" -S["sharedstatedir"]="${prefix}/com" -S["sysconfdir"]="${prefix}/etc" -S["datadir"]="${datarootdir}" -S["datarootdir"]="${prefix}/share" -S["libexecdir"]="${exec_prefix}/libexec" -S["sbindir"]="${exec_prefix}/sbin" -S["bindir"]="${exec_prefix}/bin" -S["program_transform_name"]="s,x,x," -S["prefix"]="/usr" -S["exec_prefix"]="${prefix}" -S["PACKAGE_URL"]="" -S["PACKAGE_BUGREPORT"]="" -S["PACKAGE_STRING"]="libusb 1.0.8" -S["PACKAGE_VERSION"]="1.0.8" -S["PACKAGE_TARNAME"]="libusb" -S["PACKAGE_NAME"]="libusb" -S["PATH_SEPARATOR"]=":" -S["SHELL"]="/bin/sh" -_ACAWK -cat >>"$tmp/subs1.awk" <<_ACAWK && - for (key in S) S_is_set[key] = 1 - FS = "" - -} -{ - line = $ 0 - nfields = split(line, field, "@") - substed = 0 - len = length(field[1]) - for (i = 2; i < nfields; i++) { - key = field[i] - keylen = length(key) - if (S_is_set[key]) { - value = S[key] - line = substr(line, 1, len) "" value "" substr(line, len + keylen + 3) - len += length(value) + length(field[++i]) - substed = 1 - } else - len += 1 + keylen - } - - print line -} - -_ACAWK -if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then - sed "s/$ac_cr\$//; s/$ac_cr/$ac_cs_awk_cr/g" -else - cat -fi < "$tmp/subs1.awk" > "$tmp/subs.awk" \ - || as_fn_error "could not setup config files machinery" "$LINENO" 5 -fi # test -n "$CONFIG_FILES" - -# Set up the scripts for CONFIG_HEADERS section. -# No need to generate them if there are no CONFIG_HEADERS. -# This happens for instance with `./config.status Makefile'. -if test -n "$CONFIG_HEADERS"; then -cat >"$tmp/defines.awk" <<\_ACAWK || -BEGIN { -D["PACKAGE_NAME"]=" \"libusb\"" -D["PACKAGE_TARNAME"]=" \"libusb\"" -D["PACKAGE_VERSION"]=" \"1.0.8\"" -D["PACKAGE_STRING"]=" \"libusb 1.0.8\"" -D["PACKAGE_BUGREPORT"]=" \"\"" -D["PACKAGE_URL"]=" \"\"" -D["PACKAGE"]=" \"libusb\"" -D["VERSION"]=" \"1.0.8\"" -D["STDC_HEADERS"]=" 1" -D["HAVE_SYS_TYPES_H"]=" 1" -D["HAVE_SYS_STAT_H"]=" 1" -D["HAVE_STDLIB_H"]=" 1" -D["HAVE_STRING_H"]=" 1" -D["HAVE_MEMORY_H"]=" 1" -D["HAVE_STRINGS_H"]=" 1" -D["HAVE_INTTYPES_H"]=" 1" -D["HAVE_STDINT_H"]=" 1" -D["HAVE_UNISTD_H"]=" 1" -D["HAVE_DLFCN_H"]=" 1" -D["LT_OBJDIR"]=" \".libs/\"" -D["_GNU_SOURCE"]=" /**/" -D["OS_LINUX"]=" /**/" -D["USBI_TIMERFD_AVAILABLE"]=" /**/" -D["ENABLE_LOGGING"]=" 1" -D["API_EXPORTED"]=" __attribute__((visibility(\"default\")))" - for (key in D) D_is_set[key] = 1 - FS = "" -} -/^[\t ]*#[\t ]*(define|undef)[\t ]+[_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ][_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789]*([\t (]|$)/ { - line = $ 0 - split(line, arg, " ") - if (arg[1] == "#") { - defundef = arg[2] - mac1 = arg[3] - } else { - defundef = substr(arg[1], 2) - mac1 = arg[2] - } - split(mac1, mac2, "(") #) - macro = mac2[1] - prefix = substr(line, 1, index(line, defundef) - 1) - if (D_is_set[macro]) { - # Preserve the white space surrounding the "#". - print prefix "define", macro P[macro] D[macro] - next - } else { - # Replace #undef with comments. This is necessary, for example, - # in the case of _POSIX_SOURCE, which is predefined and required - # on some systems where configure will not decide to define it. - if (defundef == "undef") { - print "/*", prefix defundef, macro, "*/" - next - } - } -} -{ print } -_ACAWK - as_fn_error "could not setup config headers machinery" "$LINENO" 5 -fi # test -n "$CONFIG_HEADERS" - - -eval set X " :F $CONFIG_FILES :H $CONFIG_HEADERS :C $CONFIG_COMMANDS" -shift -for ac_tag -do - case $ac_tag in - :[FHLC]) ac_mode=$ac_tag; continue;; - esac - case $ac_mode$ac_tag in - :[FHL]*:*);; - :L* | :C*:*) as_fn_error "invalid tag \`$ac_tag'" "$LINENO" 5;; - :[FH]-) ac_tag=-:-;; - :[FH]*) ac_tag=$ac_tag:$ac_tag.in;; - esac - ac_save_IFS=$IFS - IFS=: - set x $ac_tag - IFS=$ac_save_IFS - shift - ac_file=$1 - shift - - case $ac_mode in - :L) ac_source=$1;; - :[FH]) - ac_file_inputs= - for ac_f - do - case $ac_f in - -) ac_f="$tmp/stdin";; - *) # Look for the file first in the build tree, then in the source tree - # (if the path is not absolute). The absolute path cannot be DOS-style, - # because $ac_f cannot contain `:'. - test -f "$ac_f" || - case $ac_f in - [\\/$]*) false;; - *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";; - esac || - as_fn_error "cannot find input file: \`$ac_f'" "$LINENO" 5;; - esac - case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac - as_fn_append ac_file_inputs " '$ac_f'" - done - - # Let's still pretend it is `configure' which instantiates (i.e., don't - # use $as_me), people would be surprised to read: - # /* config.h. Generated by config.status. */ - configure_input='Generated from '` - $as_echo "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g' - `' by configure.' - if test x"$ac_file" != x-; then - configure_input="$ac_file. $configure_input" - { $as_echo "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5 -$as_echo "$as_me: creating $ac_file" >&6;} - fi - # Neutralize special characters interpreted by sed in replacement strings. - case $configure_input in #( - *\&* | *\|* | *\\* ) - ac_sed_conf_input=`$as_echo "$configure_input" | - sed 's/[\\\\&|]/\\\\&/g'`;; #( - *) ac_sed_conf_input=$configure_input;; - esac - - case $ac_tag in - *:-:* | *:-) cat >"$tmp/stdin" \ - || as_fn_error "could not create $ac_file" "$LINENO" 5 ;; - esac - ;; - esac - - ac_dir=`$as_dirname -- "$ac_file" || -$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$ac_file" : 'X\(//\)[^/]' \| \ - X"$ac_file" : 'X\(//\)$' \| \ - X"$ac_file" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$ac_file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - as_dir="$ac_dir"; as_fn_mkdir_p - ac_builddir=. - -case "$ac_dir" in -.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; -*) - ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'` - # A ".." for each directory in $ac_dir_suffix. - ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'` - case $ac_top_builddir_sub in - "") ac_top_builddir_sub=. ac_top_build_prefix= ;; - *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; - esac ;; -esac -ac_abs_top_builddir=$ac_pwd -ac_abs_builddir=$ac_pwd$ac_dir_suffix -# for backward compatibility: -ac_top_builddir=$ac_top_build_prefix - -case $srcdir in - .) # We are building in place. - ac_srcdir=. - ac_top_srcdir=$ac_top_builddir_sub - ac_abs_top_srcdir=$ac_pwd ;; - [\\/]* | ?:[\\/]* ) # Absolute name. - ac_srcdir=$srcdir$ac_dir_suffix; - ac_top_srcdir=$srcdir - ac_abs_top_srcdir=$srcdir ;; - *) # Relative name. - ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix - ac_top_srcdir=$ac_top_build_prefix$srcdir - ac_abs_top_srcdir=$ac_pwd/$srcdir ;; -esac -ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix - - - case $ac_mode in - :F) - # - # CONFIG_FILE - # - - case $INSTALL in - [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;; - *) ac_INSTALL=$ac_top_build_prefix$INSTALL ;; - esac - ac_MKDIR_P=$MKDIR_P - case $MKDIR_P in - [\\/$]* | ?:[\\/]* ) ;; - */*) ac_MKDIR_P=$ac_top_build_prefix$MKDIR_P ;; - esac -# If the template does not know about datarootdir, expand it. -# FIXME: This hack should be removed a few years after 2.60. -ac_datarootdir_hack=; ac_datarootdir_seen= -ac_sed_dataroot=' -/datarootdir/ { - p - q -} -/@datadir@/p -/@docdir@/p -/@infodir@/p -/@localedir@/p -/@mandir@/p' -case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in -*datarootdir*) ac_datarootdir_seen=yes;; -*@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*) - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5 -$as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;} - ac_datarootdir_hack=' - s&@datadir@&${datarootdir}&g - s&@docdir@&${datarootdir}/doc/${PACKAGE_TARNAME}&g - s&@infodir@&${datarootdir}/info&g - s&@localedir@&${datarootdir}/locale&g - s&@mandir@&${datarootdir}/man&g - s&\${datarootdir}&${prefix}/share&g' ;; -esac -ac_sed_extra="/^[ ]*VPATH[ ]*=/{ -s/:*\$(srcdir):*/:/ -s/:*\${srcdir}:*/:/ -s/:*@srcdir@:*/:/ -s/^\([^=]*=[ ]*\):*/\1/ -s/:*$// -s/^[^=]*=[ ]*$// -} - -:t -/@[a-zA-Z_][a-zA-Z_0-9]*@/!b -s|@configure_input@|$ac_sed_conf_input|;t t -s&@top_builddir@&$ac_top_builddir_sub&;t t -s&@top_build_prefix@&$ac_top_build_prefix&;t t -s&@srcdir@&$ac_srcdir&;t t -s&@abs_srcdir@&$ac_abs_srcdir&;t t -s&@top_srcdir@&$ac_top_srcdir&;t t -s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t -s&@builddir@&$ac_builddir&;t t -s&@abs_builddir@&$ac_abs_builddir&;t t -s&@abs_top_builddir@&$ac_abs_top_builddir&;t t -s&@INSTALL@&$ac_INSTALL&;t t -s&@MKDIR_P@&$ac_MKDIR_P&;t t -$ac_datarootdir_hack -" -eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$tmp/subs.awk" >$tmp/out \ - || as_fn_error "could not create $ac_file" "$LINENO" 5 - -test -z "$ac_datarootdir_hack$ac_datarootdir_seen" && - { ac_out=`sed -n '/\${datarootdir}/p' "$tmp/out"`; test -n "$ac_out"; } && - { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' "$tmp/out"`; test -z "$ac_out"; } && - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir' -which seems to be undefined. Please make sure it is defined." >&5 -$as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir' -which seems to be undefined. Please make sure it is defined." >&2;} - - rm -f "$tmp/stdin" - case $ac_file in - -) cat "$tmp/out" && rm -f "$tmp/out";; - *) rm -f "$ac_file" && mv "$tmp/out" "$ac_file";; - esac \ - || as_fn_error "could not create $ac_file" "$LINENO" 5 - ;; - :H) - # - # CONFIG_HEADER - # - if test x"$ac_file" != x-; then - { - $as_echo "/* $configure_input */" \ - && eval '$AWK -f "$tmp/defines.awk"' "$ac_file_inputs" - } >"$tmp/config.h" \ - || as_fn_error "could not create $ac_file" "$LINENO" 5 - if diff "$ac_file" "$tmp/config.h" >/dev/null 2>&1; then - { $as_echo "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5 -$as_echo "$as_me: $ac_file is unchanged" >&6;} - else - rm -f "$ac_file" - mv "$tmp/config.h" "$ac_file" \ - || as_fn_error "could not create $ac_file" "$LINENO" 5 - fi - else - $as_echo "/* $configure_input */" \ - && eval '$AWK -f "$tmp/defines.awk"' "$ac_file_inputs" \ - || as_fn_error "could not create -" "$LINENO" 5 - fi -# Compute "$ac_file"'s index in $config_headers. -_am_arg="$ac_file" -_am_stamp_count=1 -for _am_header in $config_headers :; do - case $_am_header in - $_am_arg | $_am_arg:* ) - break ;; - * ) - _am_stamp_count=`expr $_am_stamp_count + 1` ;; - esac -done -echo "timestamp for $_am_arg" >`$as_dirname -- "$_am_arg" || -$as_expr X"$_am_arg" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$_am_arg" : 'X\(//\)[^/]' \| \ - X"$_am_arg" : 'X\(//\)$' \| \ - X"$_am_arg" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$_am_arg" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'`/stamp-h$_am_stamp_count - ;; - - :C) { $as_echo "$as_me:${as_lineno-$LINENO}: executing $ac_file commands" >&5 -$as_echo "$as_me: executing $ac_file commands" >&6;} - ;; - esac - - - case $ac_file$ac_mode in - "depfiles":C) test x"$AMDEP_TRUE" != x"" || { - # Autoconf 2.62 quotes --file arguments for eval, but not when files - # are listed without --file. Let's play safe and only enable the eval - # if we detect the quoting. - case $CONFIG_FILES in - *\'*) eval set x "$CONFIG_FILES" ;; - *) set x $CONFIG_FILES ;; - esac - shift - for mf - do - # Strip MF so we end up with the name of the file. - mf=`echo "$mf" | sed -e 's/:.*$//'` - # Check whether this is an Automake generated Makefile or not. - # We used to match only the files named `Makefile.in', but - # some people rename them; so instead we look at the file content. - # Grep'ing the first line is not enough: some people post-process - # each Makefile.in and add a new line on top of each file to say so. - # Grep'ing the whole file is not good either: AIX grep has a line - # limit of 2048, but all sed's we know have understand at least 4000. - if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then - dirpart=`$as_dirname -- "$mf" || -$as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$mf" : 'X\(//\)[^/]' \| \ - X"$mf" : 'X\(//\)$' \| \ - X"$mf" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$mf" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - else - continue - fi - # Extract the definition of DEPDIR, am__include, and am__quote - # from the Makefile without running `make'. - DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"` - test -z "$DEPDIR" && continue - am__include=`sed -n 's/^am__include = //p' < "$mf"` - test -z "am__include" && continue - am__quote=`sed -n 's/^am__quote = //p' < "$mf"` - # When using ansi2knr, U may be empty or an underscore; expand it - U=`sed -n 's/^U = //p' < "$mf"` - # Find all dependency output files, they are included files with - # $(DEPDIR) in their names. We invoke sed twice because it is the - # simplest approach to changing $(DEPDIR) to its actual value in the - # expansion. - for file in `sed -n " - s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \ - sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do - # Make sure the directory exists. - test -f "$dirpart/$file" && continue - fdir=`$as_dirname -- "$file" || -$as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$file" : 'X\(//\)[^/]' \| \ - X"$file" : 'X\(//\)$' \| \ - X"$file" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - as_dir=$dirpart/$fdir; as_fn_mkdir_p - # echo "creating $dirpart/$file" - echo '# dummy' > "$dirpart/$file" - done - done -} - ;; - "libtool":C) - - # See if we are running on zsh, and set the options which allow our - # commands through without removal of \ escapes. - if test -n "${ZSH_VERSION+set}" ; then - setopt NO_GLOB_SUBST - fi - - cfgfile="${ofile}T" - trap "$RM \"$cfgfile\"; exit 1" 1 2 15 - $RM "$cfgfile" - - cat <<_LT_EOF >> "$cfgfile" -#! $SHELL - -# `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services. -# Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $VERSION -# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`: -# NOTE: Changes made to this file will be lost: look at ltmain.sh. -# -# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, -# 2006, 2007, 2008 Free Software Foundation, Inc. -# Written by Gordon Matzigkeit, 1996 -# -# This file is part of GNU Libtool. -# -# GNU Libtool is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License as -# published by the Free Software Foundation; either version 2 of -# the License, or (at your option) any later version. -# -# As a special exception to the GNU General Public License, -# if you distribute this file as part of a program or library that -# is built using GNU Libtool, you may include this file under the -# same distribution terms that you use for the rest of that program. -# -# GNU Libtool is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GNU Libtool; see the file COPYING. If not, a copy -# can be downloaded from http://www.gnu.org/licenses/gpl.html, or -# obtained by writing to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - - -# The names of the tagged configurations supported by this script. -available_tags="" - -# ### BEGIN LIBTOOL CONFIG - -# Which release of libtool.m4 was used? -macro_version=$macro_version -macro_revision=$macro_revision - -# Whether or not to build shared libraries. -build_libtool_libs=$enable_shared - -# Whether or not to build static libraries. -build_old_libs=$enable_static - -# What type of objects to build. -pic_mode=$pic_mode - -# Whether or not to optimize for fast installation. -fast_install=$enable_fast_install - -# The host system. -host_alias=$host_alias -host=$host -host_os=$host_os - -# The build system. -build_alias=$build_alias -build=$build -build_os=$build_os - -# A sed program that does not truncate output. -SED=$lt_SED - -# Sed that helps us avoid accidentally triggering echo(1) options like -n. -Xsed="\$SED -e 1s/^X//" - -# A grep program that handles long lines. -GREP=$lt_GREP - -# An ERE matcher. -EGREP=$lt_EGREP - -# A literal string matcher. -FGREP=$lt_FGREP - -# A BSD- or MS-compatible name lister. -NM=$lt_NM - -# Whether we need soft or hard links. -LN_S=$lt_LN_S - -# What is the maximum length of a command? -max_cmd_len=$max_cmd_len - -# Object file suffix (normally "o"). -objext=$ac_objext - -# Executable file suffix (normally ""). -exeext=$exeext - -# whether the shell understands "unset". -lt_unset=$lt_unset - -# turn spaces into newlines. -SP2NL=$lt_lt_SP2NL - -# turn newlines into spaces. -NL2SP=$lt_lt_NL2SP - -# How to create reloadable object files. -reload_flag=$lt_reload_flag -reload_cmds=$lt_reload_cmds - -# An object symbol dumper. -OBJDUMP=$lt_OBJDUMP - -# Method to check whether dependent libraries are shared objects. -deplibs_check_method=$lt_deplibs_check_method - -# Command to use when deplibs_check_method == "file_magic". -file_magic_cmd=$lt_file_magic_cmd - -# The archiver. -AR=$lt_AR -AR_FLAGS=$lt_AR_FLAGS - -# A symbol stripping program. -STRIP=$lt_STRIP - -# Commands used to install an old-style archive. -RANLIB=$lt_RANLIB -old_postinstall_cmds=$lt_old_postinstall_cmds -old_postuninstall_cmds=$lt_old_postuninstall_cmds - -# A C compiler. -LTCC=$lt_CC - -# LTCC compiler flags. -LTCFLAGS=$lt_CFLAGS - -# Take the output of nm and produce a listing of raw symbols and C names. -global_symbol_pipe=$lt_lt_cv_sys_global_symbol_pipe - -# Transform the output of nm in a proper C declaration. -global_symbol_to_cdecl=$lt_lt_cv_sys_global_symbol_to_cdecl - -# Transform the output of nm in a C name address pair. -global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address - -# Transform the output of nm in a C name address pair when lib prefix is needed. -global_symbol_to_c_name_address_lib_prefix=$lt_lt_cv_sys_global_symbol_to_c_name_address_lib_prefix - -# The name of the directory that contains temporary libtool files. -objdir=$objdir - -# Shell to use when invoking shell scripts. -SHELL=$lt_SHELL - -# An echo program that does not interpret backslashes. -ECHO=$lt_ECHO - -# Used to examine libraries when file_magic_cmd begins with "file". -MAGIC_CMD=$MAGIC_CMD - -# Must we lock files when doing compilation? -need_locks=$lt_need_locks - -# Tool to manipulate archived DWARF debug symbol files on Mac OS X. -DSYMUTIL=$lt_DSYMUTIL - -# Tool to change global to local symbols on Mac OS X. -NMEDIT=$lt_NMEDIT - -# Tool to manipulate fat objects and archives on Mac OS X. -LIPO=$lt_LIPO - -# ldd/readelf like tool for Mach-O binaries on Mac OS X. -OTOOL=$lt_OTOOL - -# ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4. -OTOOL64=$lt_OTOOL64 - -# Old archive suffix (normally "a"). -libext=$libext - -# Shared library suffix (normally ".so"). -shrext_cmds=$lt_shrext_cmds - -# The commands to extract the exported symbol list from a shared archive. -extract_expsyms_cmds=$lt_extract_expsyms_cmds - -# Variables whose values should be saved in libtool wrapper scripts and -# restored at link time. -variables_saved_for_relink=$lt_variables_saved_for_relink - -# Do we need the "lib" prefix for modules? -need_lib_prefix=$need_lib_prefix - -# Do we need a version for libraries? -need_version=$need_version - -# Library versioning type. -version_type=$version_type - -# Shared library runtime path variable. -runpath_var=$runpath_var - -# Shared library path variable. -shlibpath_var=$shlibpath_var - -# Is shlibpath searched before the hard-coded library search path? -shlibpath_overrides_runpath=$shlibpath_overrides_runpath - -# Format of library name prefix. -libname_spec=$lt_libname_spec - -# List of archive names. First name is the real one, the rest are links. -# The last name is the one that the linker finds with -lNAME -library_names_spec=$lt_library_names_spec - -# The coded name of the library, if different from the real name. -soname_spec=$lt_soname_spec - -# Command to use after installation of a shared archive. -postinstall_cmds=$lt_postinstall_cmds - -# Command to use after uninstallation of a shared archive. -postuninstall_cmds=$lt_postuninstall_cmds - -# Commands used to finish a libtool library installation in a directory. -finish_cmds=$lt_finish_cmds - -# As "finish_cmds", except a single script fragment to be evaled but -# not shown. -finish_eval=$lt_finish_eval - -# Whether we should hardcode library paths into libraries. -hardcode_into_libs=$hardcode_into_libs - -# Compile-time system search path for libraries. -sys_lib_search_path_spec=$lt_sys_lib_search_path_spec - -# Run-time system search path for libraries. -sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec - -# Whether dlopen is supported. -dlopen_support=$enable_dlopen - -# Whether dlopen of programs is supported. -dlopen_self=$enable_dlopen_self - -# Whether dlopen of statically linked programs is supported. -dlopen_self_static=$enable_dlopen_self_static - -# Commands to strip libraries. -old_striplib=$lt_old_striplib -striplib=$lt_striplib - - -# The linker used to build libraries. -LD=$lt_LD - -# Commands used to build an old-style archive. -old_archive_cmds=$lt_old_archive_cmds - -# A language specific compiler. -CC=$lt_compiler - -# Is the compiler the GNU compiler? -with_gcc=$GCC - -# Compiler flag to turn off builtin functions. -no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag - -# How to pass a linker flag through the compiler. -wl=$lt_lt_prog_compiler_wl - -# Additional compiler flags for building library objects. -pic_flag=$lt_lt_prog_compiler_pic - -# Compiler flag to prevent dynamic linking. -link_static_flag=$lt_lt_prog_compiler_static - -# Does compiler simultaneously support -c and -o options? -compiler_c_o=$lt_lt_cv_prog_compiler_c_o - -# Whether or not to add -lc for building shared libraries. -build_libtool_need_lc=$archive_cmds_need_lc - -# Whether or not to disallow shared libs when runtime libs are static. -allow_libtool_libs_with_static_runtimes=$enable_shared_with_static_runtimes - -# Compiler flag to allow reflexive dlopens. -export_dynamic_flag_spec=$lt_export_dynamic_flag_spec - -# Compiler flag to generate shared objects directly from archives. -whole_archive_flag_spec=$lt_whole_archive_flag_spec - -# Whether the compiler copes with passing no objects directly. -compiler_needs_object=$lt_compiler_needs_object - -# Create an old-style archive from a shared archive. -old_archive_from_new_cmds=$lt_old_archive_from_new_cmds - -# Create a temporary old-style archive to link instead of a shared archive. -old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds - -# Commands used to build a shared archive. -archive_cmds=$lt_archive_cmds -archive_expsym_cmds=$lt_archive_expsym_cmds - -# Commands used to build a loadable module if different from building -# a shared archive. -module_cmds=$lt_module_cmds -module_expsym_cmds=$lt_module_expsym_cmds - -# Whether we are building with GNU ld or not. -with_gnu_ld=$lt_with_gnu_ld - -# Flag that allows shared libraries with undefined symbols to be built. -allow_undefined_flag=$lt_allow_undefined_flag - -# Flag that enforces no undefined symbols. -no_undefined_flag=$lt_no_undefined_flag - -# Flag to hardcode \$libdir into a binary during linking. -# This must work even if \$libdir does not exist -hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec - -# If ld is used when linking, flag to hardcode \$libdir into a binary -# during linking. This must work even if \$libdir does not exist. -hardcode_libdir_flag_spec_ld=$lt_hardcode_libdir_flag_spec_ld - -# Whether we need a single "-rpath" flag with a separated argument. -hardcode_libdir_separator=$lt_hardcode_libdir_separator - -# Set to "yes" if using DIR/libNAME\${shared_ext} during linking hardcodes -# DIR into the resulting binary. -hardcode_direct=$hardcode_direct - -# Set to "yes" if using DIR/libNAME\${shared_ext} during linking hardcodes -# DIR into the resulting binary and the resulting library dependency is -# "absolute",i.e impossible to change by setting \${shlibpath_var} if the -# library is relocated. -hardcode_direct_absolute=$hardcode_direct_absolute - -# Set to "yes" if using the -LDIR flag during linking hardcodes DIR -# into the resulting binary. -hardcode_minus_L=$hardcode_minus_L - -# Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR -# into the resulting binary. -hardcode_shlibpath_var=$hardcode_shlibpath_var - -# Set to "yes" if building a shared library automatically hardcodes DIR -# into the library and all subsequent libraries and executables linked -# against it. -hardcode_automatic=$hardcode_automatic - -# Set to yes if linker adds runtime paths of dependent libraries -# to runtime path list. -inherit_rpath=$inherit_rpath - -# Whether libtool must link a program against all its dependency libraries. -link_all_deplibs=$link_all_deplibs - -# Fix the shell variable \$srcfile for the compiler. -fix_srcfile_path=$lt_fix_srcfile_path - -# Set to "yes" if exported symbols are required. -always_export_symbols=$always_export_symbols - -# The commands to list exported symbols. -export_symbols_cmds=$lt_export_symbols_cmds - -# Symbols that should not be listed in the preloaded symbols. -exclude_expsyms=$lt_exclude_expsyms - -# Symbols that must always be exported. -include_expsyms=$lt_include_expsyms - -# Commands necessary for linking programs (against libraries) with templates. -prelink_cmds=$lt_prelink_cmds - -# Specify filename containing input files. -file_list_spec=$lt_file_list_spec - -# How to hardcode a shared library path into an executable. -hardcode_action=$hardcode_action - -# ### END LIBTOOL CONFIG - -_LT_EOF - - case $host_os in - aix3*) - cat <<\_LT_EOF >> "$cfgfile" -# AIX sometimes has problems with the GCC collect2 program. For some -# reason, if we set the COLLECT_NAMES environment variable, the problems -# vanish in a puff of smoke. -if test "X${COLLECT_NAMES+set}" != Xset; then - COLLECT_NAMES= - export COLLECT_NAMES -fi -_LT_EOF - ;; - esac - - -ltmain="$ac_aux_dir/ltmain.sh" - - - # We use sed instead of cat because bash on DJGPP gets confused if - # if finds mixed CR/LF and LF-only lines. Since sed operates in - # text mode, it properly converts lines to CR/LF. This bash problem - # is reportedly fixed, but why not run on old versions too? - sed '/^# Generated shell functions inserted here/q' "$ltmain" >> "$cfgfile" \ - || (rm -f "$cfgfile"; exit 1) - - case $xsi_shell in - yes) - cat << \_LT_EOF >> "$cfgfile" - -# func_dirname file append nondir_replacement -# Compute the dirname of FILE. If nonempty, add APPEND to the result, -# otherwise set result to NONDIR_REPLACEMENT. -func_dirname () -{ - case ${1} in - */*) func_dirname_result="${1%/*}${2}" ;; - * ) func_dirname_result="${3}" ;; - esac -} - -# func_basename file -func_basename () -{ - func_basename_result="${1##*/}" -} - -# func_dirname_and_basename file append nondir_replacement -# perform func_basename and func_dirname in a single function -# call: -# dirname: Compute the dirname of FILE. If nonempty, -# add APPEND to the result, otherwise set result -# to NONDIR_REPLACEMENT. -# value returned in "$func_dirname_result" -# basename: Compute filename of FILE. -# value retuned in "$func_basename_result" -# Implementation must be kept synchronized with func_dirname -# and func_basename. For efficiency, we do not delegate to -# those functions but instead duplicate the functionality here. -func_dirname_and_basename () -{ - case ${1} in - */*) func_dirname_result="${1%/*}${2}" ;; - * ) func_dirname_result="${3}" ;; - esac - func_basename_result="${1##*/}" -} - -# func_stripname prefix suffix name -# strip PREFIX and SUFFIX off of NAME. -# PREFIX and SUFFIX must not contain globbing or regex special -# characters, hashes, percent signs, but SUFFIX may contain a leading -# dot (in which case that matches only a dot). -func_stripname () -{ - # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are - # positional parameters, so assign one to ordinary parameter first. - func_stripname_result=${3} - func_stripname_result=${func_stripname_result#"${1}"} - func_stripname_result=${func_stripname_result%"${2}"} -} - -# func_opt_split -func_opt_split () -{ - func_opt_split_opt=${1%%=*} - func_opt_split_arg=${1#*=} -} - -# func_lo2o object -func_lo2o () -{ - case ${1} in - *.lo) func_lo2o_result=${1%.lo}.${objext} ;; - *) func_lo2o_result=${1} ;; - esac -} - -# func_xform libobj-or-source -func_xform () -{ - func_xform_result=${1%.*}.lo -} - -# func_arith arithmetic-term... -func_arith () -{ - func_arith_result=$(( $* )) -} - -# func_len string -# STRING may not start with a hyphen. -func_len () -{ - func_len_result=${#1} -} - -_LT_EOF - ;; - *) # Bourne compatible functions. - cat << \_LT_EOF >> "$cfgfile" - -# func_dirname file append nondir_replacement -# Compute the dirname of FILE. If nonempty, add APPEND to the result, -# otherwise set result to NONDIR_REPLACEMENT. -func_dirname () -{ - # Extract subdirectory from the argument. - func_dirname_result=`$ECHO "X${1}" | $Xsed -e "$dirname"` - if test "X$func_dirname_result" = "X${1}"; then - func_dirname_result="${3}" - else - func_dirname_result="$func_dirname_result${2}" - fi -} - -# func_basename file -func_basename () -{ - func_basename_result=`$ECHO "X${1}" | $Xsed -e "$basename"` -} - - -# func_stripname prefix suffix name -# strip PREFIX and SUFFIX off of NAME. -# PREFIX and SUFFIX must not contain globbing or regex special -# characters, hashes, percent signs, but SUFFIX may contain a leading -# dot (in which case that matches only a dot). -# func_strip_suffix prefix name -func_stripname () -{ - case ${2} in - .*) func_stripname_result=`$ECHO "X${3}" \ - | $Xsed -e "s%^${1}%%" -e "s%\\\\${2}\$%%"`;; - *) func_stripname_result=`$ECHO "X${3}" \ - | $Xsed -e "s%^${1}%%" -e "s%${2}\$%%"`;; - esac -} - -# sed scripts: -my_sed_long_opt='1s/^\(-[^=]*\)=.*/\1/;q' -my_sed_long_arg='1s/^-[^=]*=//' - -# func_opt_split -func_opt_split () -{ - func_opt_split_opt=`$ECHO "X${1}" | $Xsed -e "$my_sed_long_opt"` - func_opt_split_arg=`$ECHO "X${1}" | $Xsed -e "$my_sed_long_arg"` -} - -# func_lo2o object -func_lo2o () -{ - func_lo2o_result=`$ECHO "X${1}" | $Xsed -e "$lo2o"` -} - -# func_xform libobj-or-source -func_xform () -{ - func_xform_result=`$ECHO "X${1}" | $Xsed -e 's/\.[^.]*$/.lo/'` -} - -# func_arith arithmetic-term... -func_arith () -{ - func_arith_result=`expr "$@"` -} - -# func_len string -# STRING may not start with a hyphen. -func_len () -{ - func_len_result=`expr "$1" : ".*" 2>/dev/null || echo $max_cmd_len` -} - -_LT_EOF -esac - -case $lt_shell_append in - yes) - cat << \_LT_EOF >> "$cfgfile" - -# func_append var value -# Append VALUE to the end of shell variable VAR. -func_append () -{ - eval "$1+=\$2" -} -_LT_EOF - ;; - *) - cat << \_LT_EOF >> "$cfgfile" - -# func_append var value -# Append VALUE to the end of shell variable VAR. -func_append () -{ - eval "$1=\$$1\$2" -} - -_LT_EOF - ;; - esac - - - sed -n '/^# Generated shell functions inserted here/,$p' "$ltmain" >> "$cfgfile" \ - || (rm -f "$cfgfile"; exit 1) - - mv -f "$cfgfile" "$ofile" || - (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile") - chmod +x "$ofile" - - ;; - - esac -done # for ac_tag - - -as_fn_exit 0 diff --git a/release/src/router/libusb10/doc/Makefile b/release/src/router/libusb10/doc/Makefile index e5685c81b6..28b0bcca69 100644 --- a/release/src/router/libusb10/doc/Makefile +++ b/release/src/router/libusb10/doc/Makefile @@ -53,15 +53,15 @@ am__v_at_0 = @ SOURCES = DIST_SOURCES = DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/libusb10/missing --run aclocal-1.11 -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/libusb10/missing --run tar +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/libusb10/missing --run aclocal-1.11 +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/libusb10/missing --run tar AM_CFLAGS = -std=gnu99 -fgnu89-inline -Wall -Wundef -Wunused -Wstrict-prototypes -Werror-implicit-function-declaration -Wno-pointer-sign -Wshadow AM_DEFAULT_VERBOSITY = 0 AM_LDFLAGS = AR = mipsel-uclibc-ar -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/libusb10/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/libusb10/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/libusb10/missing --run automake-1.11 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/libusb10/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/libusb10/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/libusb10/missing --run automake-1.11 AWK = gawk CC = mipsel-uclibc-gcc CCDEPMODE = depmode=gcc3 @@ -93,7 +93,7 @@ LIBTOOL = $(SHELL) $(top_builddir)/libtool LIPO = LN_S = ln -s LTLIBOBJS = -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/libusb10/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/libusb10/missing --run makeinfo MKDIR_P = /bin/mkdir -p NM = mipsel-uclibc-nm NMEDIT = @@ -118,10 +118,10 @@ SHELL = /bin/sh STRIP = mipsel-uclibc-strip -R .note -R .comment VERSION = 1.0.8 VISIBILITY_CFLAGS = -fvisibility=hidden -abs_builddir = /home/vicente/tomato/release/src/router/libusb10/doc -abs_srcdir = /home/vicente/tomato/release/src/router/libusb10/doc -abs_top_builddir = /home/vicente/tomato/release/src/router/libusb10 -abs_top_srcdir = /home/vicente/tomato/release/src/router/libusb10 +abs_builddir = /home/vicente/repos/tomato/release/src/router/libusb10/doc +abs_srcdir = /home/vicente/repos/tomato/release/src/router/libusb10/doc +abs_top_builddir = /home/vicente/repos/tomato/release/src/router/libusb10 +abs_top_srcdir = /home/vicente/repos/tomato/release/src/router/libusb10 ac_ct_CC = ac_ct_DUMPBIN = am__include = include @@ -149,7 +149,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = ${SHELL} /home/vicente/tomato/release/src/router/libusb10/install-sh +install_sh = ${SHELL} /home/vicente/repos/tomato/release/src/router/libusb10/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = ${datarootdir}/locale diff --git a/release/src/router/libusb10/examples/Makefile b/release/src/router/libusb10/examples/Makefile index 02b9ff5521..8aaf4d731b 100644 --- a/release/src/router/libusb10/examples/Makefile +++ b/release/src/router/libusb10/examples/Makefile @@ -93,15 +93,15 @@ DIST_SOURCES = $(dpfp_SOURCES) $(dpfp_threaded_SOURCES) \ ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/libusb10/missing --run aclocal-1.11 -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/libusb10/missing --run tar +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/libusb10/missing --run aclocal-1.11 +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/libusb10/missing --run tar AM_CFLAGS = -std=gnu99 -fgnu89-inline -Wall -Wundef -Wunused -Wstrict-prototypes -Werror-implicit-function-declaration -Wno-pointer-sign -Wshadow AM_DEFAULT_VERBOSITY = 0 AM_LDFLAGS = AR = mipsel-uclibc-ar -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/libusb10/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/libusb10/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/libusb10/missing --run automake-1.11 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/libusb10/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/libusb10/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/libusb10/missing --run automake-1.11 AWK = gawk CC = mipsel-uclibc-gcc CCDEPMODE = depmode=gcc3 @@ -133,7 +133,7 @@ LIBTOOL = $(SHELL) $(top_builddir)/libtool LIPO = LN_S = ln -s LTLIBOBJS = -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/libusb10/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/libusb10/missing --run makeinfo MKDIR_P = /bin/mkdir -p NM = mipsel-uclibc-nm NMEDIT = @@ -158,10 +158,10 @@ SHELL = /bin/sh STRIP = mipsel-uclibc-strip -R .note -R .comment VERSION = 1.0.8 VISIBILITY_CFLAGS = -fvisibility=hidden -abs_builddir = /home/vicente/tomato/release/src/router/libusb10/examples -abs_srcdir = /home/vicente/tomato/release/src/router/libusb10/examples -abs_top_builddir = /home/vicente/tomato/release/src/router/libusb10 -abs_top_srcdir = /home/vicente/tomato/release/src/router/libusb10 +abs_builddir = /home/vicente/repos/tomato/release/src/router/libusb10/examples +abs_srcdir = /home/vicente/repos/tomato/release/src/router/libusb10/examples +abs_top_builddir = /home/vicente/repos/tomato/release/src/router/libusb10 +abs_top_srcdir = /home/vicente/repos/tomato/release/src/router/libusb10 ac_ct_CC = ac_ct_DUMPBIN = am__include = include @@ -189,7 +189,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = ${SHELL} /home/vicente/tomato/release/src/router/libusb10/install-sh +install_sh = ${SHELL} /home/vicente/repos/tomato/release/src/router/libusb10/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = ${datarootdir}/locale diff --git a/release/src/router/libusb10/libusb/Makefile b/release/src/router/libusb10/libusb/Makefile index c6bdb6bf10..37120565ac 100644 --- a/release/src/router/libusb10/libusb/Makefile +++ b/release/src/router/libusb10/libusb/Makefile @@ -119,15 +119,15 @@ HEADERS = $(hdr_HEADERS) ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/libusb10/missing --run aclocal-1.11 -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/libusb10/missing --run tar +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/libusb10/missing --run aclocal-1.11 +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/libusb10/missing --run tar AM_CFLAGS = -std=gnu99 -fgnu89-inline -Wall -Wundef -Wunused -Wstrict-prototypes -Werror-implicit-function-declaration -Wno-pointer-sign -Wshadow AM_DEFAULT_VERBOSITY = 0 AM_LDFLAGS = AR = mipsel-uclibc-ar -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/libusb10/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/libusb10/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/libusb10/missing --run automake-1.11 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/libusb10/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/libusb10/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/libusb10/missing --run automake-1.11 AWK = gawk CC = mipsel-uclibc-gcc CCDEPMODE = depmode=gcc3 @@ -159,7 +159,7 @@ LIBTOOL = $(SHELL) $(top_builddir)/libtool LIPO = LN_S = ln -s LTLIBOBJS = -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/libusb10/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/libusb10/missing --run makeinfo MKDIR_P = /bin/mkdir -p NM = mipsel-uclibc-nm NMEDIT = @@ -184,10 +184,10 @@ SHELL = /bin/sh STRIP = mipsel-uclibc-strip -R .note -R .comment VERSION = 1.0.8 VISIBILITY_CFLAGS = -fvisibility=hidden -abs_builddir = /home/vicente/tomato/release/src/router/libusb10/libusb -abs_srcdir = /home/vicente/tomato/release/src/router/libusb10/libusb -abs_top_builddir = /home/vicente/tomato/release/src/router/libusb10 -abs_top_srcdir = /home/vicente/tomato/release/src/router/libusb10 +abs_builddir = /home/vicente/repos/tomato/release/src/router/libusb10/libusb +abs_srcdir = /home/vicente/repos/tomato/release/src/router/libusb10/libusb +abs_top_builddir = /home/vicente/repos/tomato/release/src/router/libusb10 +abs_top_srcdir = /home/vicente/repos/tomato/release/src/router/libusb10 ac_ct_CC = ac_ct_DUMPBIN = am__include = include @@ -215,7 +215,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = ${SHELL} /home/vicente/tomato/release/src/router/libusb10/install-sh +install_sh = ${SHELL} /home/vicente/repos/tomato/release/src/router/libusb10/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = ${datarootdir}/locale diff --git a/release/src/router/libvorbis/Makefile b/release/src/router/libvorbis/Makefile index 3e066e3a63..0eeb2ce251 100644 --- a/release/src/router/libvorbis/Makefile +++ b/release/src/router/libvorbis/Makefile @@ -90,21 +90,21 @@ DIST_ARCHIVES = $(distdir).tar.gz $(distdir).tar.bz2 $(distdir).zip GZIP_ENV = --best distuninstallcheck_listfiles = find . -type f -print distcleancheck_listfiles = find . -type f -print -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run aclocal-1.10 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run aclocal-1.10 ACLOCAL_AMFLAGS = -I m4 ALLOCA = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run tar AR = mipsel-uclibc-ar AS = mipsel-uclibc-as -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run automake-1.10 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run automake-1.10 AWK = gawk CC = mipsel-uclibc-gcc CCDEPMODE = depmode=gcc3 CFLAGS = -O20 -Wall -Wextra -ffast-math -D_REENTRANT -fsigned-char -Wdeclaration-after-statement -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DUSE_MEMORY_H CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -I/home/vicente/tomato/release/src-rt/router/libogg/include +CPPFLAGS = -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -130,20 +130,20 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBOBJS = ${LIBOBJDIR}memcmp$U.o LIBS = LIBTOOL = $(SHELL) $(top_builddir)/libtool LIBTOOL_DEPS = ./ltmain.sh LN_S = ln -s LTLIBOBJS = ${LIBOBJDIR}memcmp$U.lo -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run makeinfo MKDIR_P = /bin/mkdir -p NMEDIT = OBJDUMP = objdump OBJEXT = o -OGG_CFLAGS = -I/home/vicente/tomato/release/src-rt/router/libogg/include -OGG_LIBS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -logg +OGG_CFLAGS = -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include +OGG_LIBS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -logg PACKAGE = libvorbis PACKAGE_BUGREPORT = vorbis-dev@xiph.org PACKAGE_NAME = libvorbis @@ -170,10 +170,10 @@ VORBIS_LIBS = -lm V_LIB_AGE = 4 V_LIB_CURRENT = 4 V_LIB_REVISION = 3 -abs_builddir = /home/vicente/tomato/release/src/router/libvorbis -abs_srcdir = /home/vicente/tomato/release/src/router/libvorbis -abs_top_builddir = /home/vicente/tomato/release/src/router/libvorbis -abs_top_srcdir = /home/vicente/tomato/release/src/router/libvorbis +abs_builddir = /home/vicente/repos/tomato/release/src/router/libvorbis +abs_srcdir = /home/vicente/repos/tomato/release/src/router/libvorbis +abs_top_builddir = /home/vicente/repos/tomato/release/src/router/libvorbis +abs_top_srcdir = /home/vicente/repos/tomato/release/src/router/libvorbis ac_ct_CC = ac_ct_CXX = ac_ct_F77 = @@ -202,7 +202,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = $(SHELL) /home/vicente/tomato/release/src/router/libvorbis/install-sh +install_sh = $(SHELL) /home/vicente/repos/tomato/release/src/router/libvorbis/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = ${datarootdir}/locale diff --git a/release/src/router/libvorbis/config.log b/release/src/router/libvorbis/config.log deleted file mode 100644 index db0b45a4ba..0000000000 --- a/release/src/router/libvorbis/config.log +++ /dev/null @@ -1,924 +0,0 @@ -This file contains any messages produced by compilers while -running configure, to aid debugging if configure makes a mistake. - -It was created by libvorbis configure 1.2.3, which was -generated by GNU Autoconf 2.61. Invocation command line was - - $ ./configure --host=mipsel-linux --build=x86_64-linux-gnu --enable-shared --enable-static --prefix= --disable-oggtest --with-ogg-includes=/home/vicente/tomato/release/src-rt/router/libogg/include --with-ogg-libraries=/home/vicente/tomato/release/src-rt/router/libogg/src/.libs - -## --------- ## -## Platform. ## -## --------- ## - -hostname = vicente-P5K-E -uname -m = x86_64 -uname -r = 3.2.0-47-generic -uname -s = Linux -uname -v = #72-Ubuntu SMP Mon Jun 3 17:53:49 UTC 2013 - -/usr/bin/uname -p = unknown -/bin/uname -X = unknown - -/bin/arch = unknown -/usr/bin/arch -k = unknown -/usr/convex/getsysinfo = unknown -/usr/bin/hostinfo = unknown -/bin/machine = unknown -/usr/bin/oslevel = unknown -/bin/universe = unknown - -PATH: /home/vicente/tomato/release/tools -PATH: /home/vicente/tomato/release/tools -PATH: /home/vicente/tomato/release/tools -PATH: /home/vicente/tomato/release/tools -PATH: /opt/brcm/hndtools-mipsel-uclibc/bin -PATH: /opt/brcm/hndtools-mipsel-linux/bin -PATH: /usr/lib/lightdm/lightdm -PATH: /usr/local/sbin -PATH: /usr/local/bin -PATH: /usr/sbin -PATH: /usr/bin -PATH: /sbin -PATH: /bin -PATH: /usr/games - - -## ----------- ## -## Core tests. ## -## ----------- ## - -configure:2020: checking build system type -configure:2038: result: x86_64-pc-linux-gnu -configure:2060: checking host system type -configure:2075: result: mipsel-unknown-linux-gnu -configure:2097: checking target system type -configure:2112: result: mipsel-unknown-linux-gnu -configure:2156: checking for a BSD-compatible install -configure:2212: result: /usr/bin/install -c -configure:2223: checking whether build environment is sane -configure:2266: result: yes -configure:2294: checking for a thread-safe mkdir -p -configure:2333: result: /bin/mkdir -p -configure:2346: checking for gawk -configure:2362: found /usr/bin/gawk -configure:2373: result: gawk -configure:2384: checking whether make sets $(MAKE) -configure:2405: result: yes -configure:2485: checking for mipsel-linux-strip -configure:2512: result: mipsel-uclibc-strip -R .note -R .comment -configure:2632: checking for mipsel-linux-gcc -configure:2659: result: mipsel-uclibc-gcc -configure:2937: checking for C compiler version -configure:2944: mipsel-uclibc-gcc --version >&5 -mipsel-uclibc-gcc (GCC) 4.2.4 -Copyright (C) 2007 Free Software Foundation, Inc. -This is free software; see the source for copying conditions. There is NO -warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - -configure:2947: $? = 0 -configure:2954: mipsel-uclibc-gcc -v >&5 -Using built-in specs. -Target: mipsel-linux-uclibc -Configured with: /home/fedork/tomato/toolchain/build_dir/toolchain-mipsel_gcc4.2.4/gcc-4.2.4/configure --prefix=/opt/brcm/hndtools-mipsel-uclibc-4.2.4 --build=i486-linux-gnu --host=i486-linux-gnu --target=mipsel-linux-uclibc --with-gnu-ld --enable-target-optspace --disable-libgomp --disable-libmudflap --disable-multilib --disable-nls --disable-__cxa_atexit --enable-libssp --enable-languages=c,c++ --enable-shared --enable-threads --enable-tls -Thread model: posix -gcc version 4.2.4 -configure:2957: $? = 0 -configure:2964: mipsel-uclibc-gcc -V >&5 -mipsel-uclibc-gcc: '-V' option must have argument -configure:2967: $? = 1 -configure:2990: checking for C compiler default output file name -configure:3017: mipsel-uclibc-gcc -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -I/home/vicente/tomato/release/src-rt/router/libogg/include -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections conftest.c >&5 -configure:3020: $? = 0 -configure:3058: result: a.out -configure:3075: checking whether the C compiler works -configure:3105: result: yes -configure:3112: checking whether we are cross compiling -configure:3114: result: yes -configure:3117: checking for suffix of executables -configure:3124: mipsel-uclibc-gcc -o conftest -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -I/home/vicente/tomato/release/src-rt/router/libogg/include -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections conftest.c >&5 -configure:3127: $? = 0 -configure:3151: result: -configure:3157: checking for suffix of object files -configure:3183: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -I/home/vicente/tomato/release/src-rt/router/libogg/include conftest.c >&5 -configure:3186: $? = 0 -configure:3209: result: o -configure:3213: checking whether we are using the GNU C compiler -configure:3242: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -I/home/vicente/tomato/release/src-rt/router/libogg/include conftest.c >&5 -configure:3248: $? = 0 -configure:3265: result: yes -configure:3270: checking whether mipsel-uclibc-gcc accepts -g -configure:3300: mipsel-uclibc-gcc -c -g -I/home/vicente/tomato/release/src-rt/router/libogg/include conftest.c >&5 -configure:3306: $? = 0 -configure:3405: result: yes -configure:3422: checking for mipsel-uclibc-gcc option to accept ISO C89 -configure:3496: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -I/home/vicente/tomato/release/src-rt/router/libogg/include conftest.c >&5 -configure:3502: $? = 0 -configure:3525: result: none needed -configure:3554: checking for style of include used by make -configure:3582: result: GNU -configure:3607: checking dependency style of mipsel-uclibc-gcc -configure:3698: result: gcc3 -configure:3718: checking how to run the C preprocessor -configure:3758: mipsel-uclibc-gcc -E -I/home/vicente/tomato/release/src-rt/router/libogg/include conftest.c -configure:3764: $? = 0 -configure:3795: mipsel-uclibc-gcc -E -I/home/vicente/tomato/release/src-rt/router/libogg/include conftest.c -conftest.c:10:28: error: ac_nonexistent.h: No such file or directory -configure:3801: $? = 1 -configure: failed program was: -| /* confdefs.h. */ -| #define PACKAGE_NAME "libvorbis" -| #define PACKAGE_TARNAME "libvorbis" -| #define PACKAGE_VERSION "1.2.3" -| #define PACKAGE_STRING "libvorbis 1.2.3" -| #define PACKAGE_BUGREPORT "vorbis-dev@xiph.org" -| #define PACKAGE "libvorbis" -| #define VERSION "1.2.3" -| /* end confdefs.h. */ -| #include -configure:3834: result: mipsel-uclibc-gcc -E -configure:3863: mipsel-uclibc-gcc -E -I/home/vicente/tomato/release/src-rt/router/libogg/include conftest.c -configure:3869: $? = 0 -configure:3900: mipsel-uclibc-gcc -E -I/home/vicente/tomato/release/src-rt/router/libogg/include conftest.c -conftest.c:10:28: error: ac_nonexistent.h: No such file or directory -configure:3906: $? = 1 -configure: failed program was: -| /* confdefs.h. */ -| #define PACKAGE_NAME "libvorbis" -| #define PACKAGE_TARNAME "libvorbis" -| #define PACKAGE_VERSION "1.2.3" -| #define PACKAGE_STRING "libvorbis 1.2.3" -| #define PACKAGE_BUGREPORT "vorbis-dev@xiph.org" -| #define PACKAGE "libvorbis" -| #define VERSION "1.2.3" -| /* end confdefs.h. */ -| #include -configure:3946: checking for inline -configure:3972: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -I/home/vicente/tomato/release/src-rt/router/libogg/include conftest.c >&5 -configure:3978: $? = 0 -configure:3996: result: inline -configure:4090: checking for a sed that does not truncate output -configure:4146: result: /bin/sed -configure:4149: checking for grep that handles long lines and -e -configure:4223: result: /bin/grep -configure:4228: checking for egrep -configure:4306: result: /bin/grep -E -configure:4322: checking for ld used by mipsel-uclibc-gcc -configure:4389: result: mipsel-uclibc-ld -configure:4398: checking if the linker (mipsel-uclibc-ld) is GNU ld -configure:4413: result: yes -configure:4418: checking for mipsel-uclibc-ld option to reload object files -configure:4425: result: -r -configure:4443: checking for BSD-compatible nm -configure:4492: result: mipsel-uclibc-nm -configure:4496: checking whether ln -s works -configure:4500: result: yes -configure:4507: checking how to recognize dependent libraries -configure:4693: result: pass_all -configure:5223: checking for ANSI C header files -configure:5253: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -I/home/vicente/tomato/release/src-rt/router/libogg/include conftest.c >&5 -configure:5259: $? = 0 -configure:5387: result: yes -configure:5411: checking for sys/types.h -configure:5432: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -I/home/vicente/tomato/release/src-rt/router/libogg/include conftest.c >&5 -configure:5438: $? = 0 -configure:5454: result: yes -configure:5411: checking for sys/stat.h -configure:5432: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -I/home/vicente/tomato/release/src-rt/router/libogg/include conftest.c >&5 -configure:5438: $? = 0 -configure:5454: result: yes -configure:5411: checking for stdlib.h -configure:5432: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -I/home/vicente/tomato/release/src-rt/router/libogg/include conftest.c >&5 -configure:5438: $? = 0 -configure:5454: result: yes -configure:5411: checking for string.h -configure:5432: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -I/home/vicente/tomato/release/src-rt/router/libogg/include conftest.c >&5 -configure:5438: $? = 0 -configure:5454: result: yes -configure:5411: checking for memory.h -configure:5432: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -I/home/vicente/tomato/release/src-rt/router/libogg/include conftest.c >&5 -configure:5438: $? = 0 -configure:5454: result: yes -configure:5411: checking for strings.h -configure:5432: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -I/home/vicente/tomato/release/src-rt/router/libogg/include conftest.c >&5 -configure:5438: $? = 0 -configure:5454: result: yes -configure:5411: checking for inttypes.h -configure:5432: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -I/home/vicente/tomato/release/src-rt/router/libogg/include conftest.c >&5 -configure:5438: $? = 0 -configure:5454: result: yes -configure:5411: checking for stdint.h -configure:5432: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -I/home/vicente/tomato/release/src-rt/router/libogg/include conftest.c >&5 -configure:5438: $? = 0 -configure:5454: result: yes -configure:5411: checking for unistd.h -configure:5432: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -I/home/vicente/tomato/release/src-rt/router/libogg/include conftest.c >&5 -configure:5438: $? = 0 -configure:5454: result: yes -configure:5481: checking dlfcn.h usability -configure:5498: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -I/home/vicente/tomato/release/src-rt/router/libogg/include conftest.c >&5 -configure:5504: $? = 0 -configure:5518: result: yes -configure:5522: checking dlfcn.h presence -configure:5537: mipsel-uclibc-gcc -E -I/home/vicente/tomato/release/src-rt/router/libogg/include conftest.c -configure:5543: $? = 0 -configure:5557: result: yes -configure:5590: checking for dlfcn.h -configure:5598: result: yes -configure:5625: checking for mipsel-linux-g++ -configure:5641: found /opt/brcm/hndtools-mipsel-uclibc/bin/mipsel-linux-g++ -configure:5652: result: mipsel-linux-g++ -configure:5727: checking for C++ compiler version -configure:5734: mipsel-linux-g++ --version >&5 -mipsel-linux-g++ (GCC) 4.2.4 -Copyright (C) 2007 Free Software Foundation, Inc. -This is free software; see the source for copying conditions. There is NO -warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - -configure:5737: $? = 0 -configure:5744: mipsel-linux-g++ -v >&5 -Using built-in specs. -Target: mipsel-linux-uclibc -Configured with: /home/fedork/tomato/toolchain/build_dir/toolchain-mipsel_gcc4.2.4/gcc-4.2.4/configure --prefix=/opt/brcm/hndtools-mipsel-uclibc-4.2.4 --build=i486-linux-gnu --host=i486-linux-gnu --target=mipsel-linux-uclibc --with-gnu-ld --enable-target-optspace --disable-libgomp --disable-libmudflap --disable-multilib --disable-nls --disable-__cxa_atexit --enable-libssp --enable-languages=c,c++ --enable-shared --enable-threads --enable-tls -Thread model: posix -gcc version 4.2.4 -configure:5747: $? = 0 -configure:5754: mipsel-linux-g++ -V >&5 -mipsel-linux-g++: '-V' option must have argument -configure:5757: $? = 1 -configure:5760: checking whether we are using the GNU C++ compiler -configure:5789: mipsel-linux-g++ -c -I/home/vicente/tomato/release/src-rt/router/libogg/include conftest.cpp >&5 -configure:5795: $? = 0 -configure:5812: result: yes -configure:5817: checking whether mipsel-linux-g++ accepts -g -configure:5847: mipsel-linux-g++ -c -g -I/home/vicente/tomato/release/src-rt/router/libogg/include conftest.cpp >&5 -configure:5853: $? = 0 -configure:5952: result: yes -configure:5977: checking dependency style of mipsel-linux-g++ -configure:6068: result: gcc3 -configure:6093: checking how to run the C++ preprocessor -configure:6129: mipsel-linux-g++ -E -I/home/vicente/tomato/release/src-rt/router/libogg/include conftest.cpp -configure:6135: $? = 0 -configure:6166: mipsel-linux-g++ -E -I/home/vicente/tomato/release/src-rt/router/libogg/include conftest.cpp -conftest.cpp:21:28: error: ac_nonexistent.h: No such file or directory -configure:6172: $? = 1 -configure: failed program was: -| /* confdefs.h. */ -| #define PACKAGE_NAME "libvorbis" -| #define PACKAGE_TARNAME "libvorbis" -| #define PACKAGE_VERSION "1.2.3" -| #define PACKAGE_STRING "libvorbis 1.2.3" -| #define PACKAGE_BUGREPORT "vorbis-dev@xiph.org" -| #define PACKAGE "libvorbis" -| #define VERSION "1.2.3" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_DLFCN_H 1 -| /* end confdefs.h. */ -| #include -configure:6205: result: mipsel-linux-g++ -E -configure:6234: mipsel-linux-g++ -E -I/home/vicente/tomato/release/src-rt/router/libogg/include conftest.cpp -configure:6240: $? = 0 -configure:6271: mipsel-linux-g++ -E -I/home/vicente/tomato/release/src-rt/router/libogg/include conftest.cpp -conftest.cpp:21:28: error: ac_nonexistent.h: No such file or directory -configure:6277: $? = 1 -configure: failed program was: -| /* confdefs.h. */ -| #define PACKAGE_NAME "libvorbis" -| #define PACKAGE_TARNAME "libvorbis" -| #define PACKAGE_VERSION "1.2.3" -| #define PACKAGE_STRING "libvorbis 1.2.3" -| #define PACKAGE_BUGREPORT "vorbis-dev@xiph.org" -| #define PACKAGE "libvorbis" -| #define VERSION "1.2.3" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_DLFCN_H 1 -| /* end confdefs.h. */ -| #include -configure:6326: checking for mipsel-linux-g77 -configure:6356: result: no -configure:6326: checking for mipsel-linux-xlf -configure:6356: result: no -configure:6326: checking for mipsel-linux-f77 -configure:6356: result: no -configure:6326: checking for mipsel-linux-frt -configure:6356: result: no -configure:6326: checking for mipsel-linux-pgf77 -configure:6356: result: no -configure:6326: checking for mipsel-linux-cf77 -configure:6356: result: no -configure:6326: checking for mipsel-linux-fort77 -configure:6356: result: no -configure:6326: checking for mipsel-linux-fl32 -configure:6356: result: no -configure:6326: checking for mipsel-linux-af77 -configure:6356: result: no -configure:6326: checking for mipsel-linux-xlf90 -configure:6356: result: no -configure:6326: checking for mipsel-linux-f90 -configure:6356: result: no -configure:6326: checking for mipsel-linux-pgf90 -configure:6356: result: no -configure:6326: checking for mipsel-linux-pghpf -configure:6356: result: no -configure:6326: checking for mipsel-linux-epcf90 -configure:6356: result: no -configure:6326: checking for mipsel-linux-gfortran -configure:6356: result: no -configure:6326: checking for mipsel-linux-g95 -configure:6356: result: no -configure:6326: checking for mipsel-linux-xlf95 -configure:6356: result: no -configure:6326: checking for mipsel-linux-f95 -configure:6356: result: no -configure:6326: checking for mipsel-linux-fort -configure:6356: result: no -configure:6326: checking for mipsel-linux-ifort -configure:6356: result: no -configure:6326: checking for mipsel-linux-ifc -configure:6356: result: no -configure:6326: checking for mipsel-linux-efc -configure:6356: result: no -configure:6326: checking for mipsel-linux-pgf95 -configure:6356: result: no -configure:6326: checking for mipsel-linux-lf95 -configure:6356: result: no -configure:6326: checking for mipsel-linux-ftn -configure:6356: result: no -configure:6370: checking for g77 -configure:6400: result: no -configure:6370: checking for xlf -configure:6400: result: no -configure:6370: checking for f77 -configure:6400: result: no -configure:6370: checking for frt -configure:6400: result: no -configure:6370: checking for pgf77 -configure:6400: result: no -configure:6370: checking for cf77 -configure:6400: result: no -configure:6370: checking for fort77 -configure:6400: result: no -configure:6370: checking for fl32 -configure:6400: result: no -configure:6370: checking for af77 -configure:6400: result: no -configure:6370: checking for xlf90 -configure:6400: result: no -configure:6370: checking for f90 -configure:6400: result: no -configure:6370: checking for pgf90 -configure:6400: result: no -configure:6370: checking for pghpf -configure:6400: result: no -configure:6370: checking for epcf90 -configure:6400: result: no -configure:6370: checking for gfortran -configure:6400: result: no -configure:6370: checking for g95 -configure:6400: result: no -configure:6370: checking for xlf95 -configure:6400: result: no -configure:6370: checking for f95 -configure:6400: result: no -configure:6370: checking for fort -configure:6400: result: no -configure:6370: checking for ifort -configure:6400: result: no -configure:6370: checking for ifc -configure:6400: result: no -configure:6370: checking for efc -configure:6400: result: no -configure:6370: checking for pgf95 -configure:6400: result: no -configure:6370: checking for lf95 -configure:6400: result: no -configure:6370: checking for ftn -configure:6400: result: no -configure:6427: checking for Fortran 77 compiler version -configure:6434: --version >&5 -./configure: line 6435: --version: command not found -configure:6437: $? = 127 -configure:6444: -v >&5 -./configure: line 6445: -v: command not found -configure:6447: $? = 127 -configure:6454: -V >&5 -./configure: line 6455: -V: command not found -configure:6457: $? = 127 -configure:6465: checking whether we are using the GNU Fortran 77 compiler -configure:6484: -c conftest.F >&5 -./configure: line 6485: -c: command not found -configure:6490: $? = 127 -configure: failed program was: -| program main -| #ifndef __GNUC__ -| choke me -| #endif -| -| end -configure:6507: result: no -configure:6513: checking whether accepts -g -configure:6530: -c -g conftest.f >&5 -./configure: line 6531: -c: command not found -configure:6536: $? = 127 -configure: failed program was: -| program main -| -| end -configure:6552: result: no -configure:6581: checking the maximum length of command line arguments -configure:6693: result: 3458764513820540925 -configure:6705: checking command to parse mipsel-uclibc-nm output from mipsel-uclibc-gcc object -configure:6810: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -I/home/vicente/tomato/release/src-rt/router/libogg/include conftest.c >&5 -configure:6813: $? = 0 -configure:6817: mipsel-uclibc-nm conftest.o \| sed -n -e 's/^.*[ ]\([ABCDGIRSTW][ABCDGIRSTW]*\)[ ][ ]*\([_A-Za-z][_A-Za-z0-9]*\)$/\1 \2 \2/p' \> conftest.nm -configure:6820: $? = 0 -configure:6872: mipsel-uclibc-gcc -o conftest -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -I/home/vicente/tomato/release/src-rt/router/libogg/include -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections conftest.c conftstm.o >&5 -configure:6875: $? = 0 -configure:6913: result: ok -configure:6917: checking for objdir -configure:6932: result: .libs -configure:6984: checking for mipsel-linux-ar -configure:7011: result: mipsel-uclibc-ar -configure:7080: checking for mipsel-linux-ranlib -configure:7107: result: mipsel-uclibc-ranlib -configure:7176: checking for mipsel-linux-strip -configure:7203: result: mipsel-uclibc-strip -R .note -R .comment -configure:7841: checking if mipsel-uclibc-gcc supports -fno-rtti -fno-exceptions -configure:7859: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -I/home/vicente/tomato/release/src-rt/router/libogg/include -fno-rtti -fno-exceptions conftest.c >&5 -cc1: warning: command line option "-fno-rtti" is valid for C++/ObjC++ but not for C -configure:7863: $? = 0 -configure:7876: result: no -configure:7891: checking for mipsel-uclibc-gcc option to produce PIC -configure:8123: result: -fPIC -configure:8131: checking if mipsel-uclibc-gcc PIC flag -fPIC works -configure:8149: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -I/home/vicente/tomato/release/src-rt/router/libogg/include -fPIC -DPIC conftest.c >&5 -configure:8153: $? = 0 -configure:8166: result: yes -configure:8194: checking if mipsel-uclibc-gcc static flag -static works -configure:8222: result: yes -configure:8232: checking if mipsel-uclibc-gcc supports -c -o file.o -configure:8253: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -I/home/vicente/tomato/release/src-rt/router/libogg/include -o out/conftest2.o conftest.c >&5 -configure:8257: $? = 0 -configure:8279: result: yes -configure:8305: checking whether the mipsel-uclibc-gcc linker (mipsel-uclibc-ld) supports shared libraries -configure:9286: result: yes -configure:9307: checking whether -lc should be explicitly linked in -configure:9312: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -I/home/vicente/tomato/release/src-rt/router/libogg/include conftest.c >&5 -configure:9315: $? = 0 -configure:9330: mipsel-uclibc-gcc -shared conftest.o -v -Wl,-soname -Wl,conftest -o conftest 2\>\&1 \| grep -lc \>/dev/null 2\>\&1 -configure:9333: $? = 0 -configure:9345: result: no -configure:9353: checking dynamic linker characteristics -configure:9967: result: GNU/Linux ld.so -configure:9991: checking how to hardcode library paths into programs -configure:10016: result: immediate -configure:10030: checking whether stripping libraries is possible -configure:10035: result: yes -configure:10837: checking if libtool supports shared libraries -configure:10839: result: yes -configure:10842: checking whether to build shared libraries -configure:10863: result: yes -configure:10866: checking whether to build static libraries -configure:10870: result: yes -configure:10964: creating libtool -configure:11557: checking for ld used by mipsel-linux-g++ -configure:11624: result: mipsel-uclibc-ld -configure:11633: checking if the linker (mipsel-uclibc-ld) is GNU ld -configure:11648: result: yes -configure:11699: checking whether the mipsel-linux-g++ linker (mipsel-uclibc-ld) supports shared libraries -configure:12645: result: yes -configure:12662: mipsel-linux-g++ -c -g -O2 -I/home/vicente/tomato/release/src-rt/router/libogg/include conftest.cpp >&5 -configure:12665: $? = 0 -configure:12821: checking for mipsel-linux-g++ option to produce PIC -configure:13105: result: -fPIC -configure:13113: checking if mipsel-linux-g++ PIC flag -fPIC works -configure:13131: mipsel-linux-g++ -c -g -O2 -I/home/vicente/tomato/release/src-rt/router/libogg/include -fPIC -DPIC conftest.cpp >&5 -configure:13135: $? = 0 -configure:13148: result: yes -configure:13176: checking if mipsel-linux-g++ static flag -static works -configure:13204: result: yes -configure:13214: checking if mipsel-linux-g++ supports -c -o file.o -configure:13235: mipsel-linux-g++ -c -g -O2 -I/home/vicente/tomato/release/src-rt/router/libogg/include -o out/conftest2.o conftest.cpp >&5 -configure:13239: $? = 0 -configure:13261: result: yes -configure:13287: checking whether the mipsel-linux-g++ linker (mipsel-uclibc-ld) supports shared libraries -configure:13316: result: yes -configure:13383: checking dynamic linker characteristics -configure:13945: result: GNU/Linux ld.so -configure:13969: checking how to hardcode library paths into programs -configure:13994: result: immediate -configure:20242: checking whether mipsel-uclibc-gcc and cc understand -c and -o together -configure:20277: mipsel-uclibc-gcc -c conftest.c -o conftest2.o >&5 -configure:20280: $? = 0 -configure:20286: mipsel-uclibc-gcc -c conftest.c -o conftest2.o >&5 -configure:20289: $? = 0 -configure:20300: cc -c conftest.c >&5 -configure:20303: $? = 0 -configure:20311: cc -c conftest.c -o conftest2.o >&5 -configure:20314: $? = 0 -configure:20320: cc -c conftest.c -o conftest2.o >&5 -configure:20323: $? = 0 -configure:20341: result: yes -configure:20500: checking GCC version -configure:20503: result: 4.2.4 -configure:20674: checking if mipsel-uclibc-gcc accepts -Wdeclaration-after-statement -configure:20699: mipsel-uclibc-gcc -o conftest -O20 -Wall -Wextra -ffast-math -D_REENTRANT -fsigned-char -Wdeclaration-after-statement -I/home/vicente/tomato/release/src-rt/router/libogg/include -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections conftest.c >&5 -configure:20705: $? = 0 -configure:20711: result: yes -configure:20730: checking for memory.h -configure:20735: result: yes -configure:20870: checking for cos in -lm -configure:20905: mipsel-uclibc-gcc -o conftest -O20 -Wall -Wextra -ffast-math -D_REENTRANT -fsigned-char -Wdeclaration-after-statement -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DUSE_MEMORY_H -I/home/vicente/tomato/release/src-rt/router/libogg/include -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections conftest.c -lm >&5 -conftest.c:28: warning: conflicting types for built-in function 'cos' -configure:20911: $? = 0 -configure:20929: result: yes -configure:20937: checking for pthread_create in -lpthread -configure:20972: mipsel-uclibc-gcc -o conftest -O20 -Wall -Wextra -ffast-math -D_REENTRANT -fsigned-char -Wdeclaration-after-statement -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DUSE_MEMORY_H -I/home/vicente/tomato/release/src-rt/router/libogg/include -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections conftest.c -lpthread >&5 -configure:20978: $? = 0 -configure:20996: result: yes -configure:21011: checking for mipsel-linux-pkg-config -configure:21044: result: no -configure:21054: checking for pkg-config -configure:21072: found /usr/bin/pkg-config -configure:21084: result: /usr/bin/pkg-config -configure:21098: WARNING: In the future, Autoconf will not detect cross-tools -whose name does not start with the host triplet. If you think this -configuration is useful to you, please write to autoconf@gnu.org. -configure:21113: checking pkg-config is at least version 0.9.0 -configure:21116: result: yes -configure:21131: checking for OGG -configure:21139: $PKG_CONFIG --exists --print-errors "ogg >= 1.0" -Package ogg was not found in the pkg-config search path. -Perhaps you should add the directory containing `ogg.pc' -to the PKG_CONFIG_PATH environment variable -No package 'ogg' found -configure:21142: $? = 1 -configure:21157: $PKG_CONFIG --exists --print-errors "ogg >= 1.0" -Package ogg was not found in the pkg-config search path. -Perhaps you should add the directory containing `ogg.pc' -to the PKG_CONFIG_PATH environment variable -No package 'ogg' found -configure:21160: $? = 1 -No package 'ogg' found -configure:21188: result: no -configure:21259: checking for Ogg -configure:21342: result: yes -configure:21425: checking for oggpack_writealign -configure:21481: mipsel-uclibc-gcc -o conftest -O20 -Wall -Wextra -ffast-math -D_REENTRANT -fsigned-char -Wdeclaration-after-statement -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DUSE_MEMORY_H -I/home/vicente/tomato/release/src-rt/router/libogg/include -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections conftest.c -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -logg -lm >&5 -configure:21487: $? = 0 -configure:21504: result: yes -configure:21520: checking for working alloca.h -configure:21547: mipsel-uclibc-gcc -o conftest -O20 -Wall -Wextra -ffast-math -D_REENTRANT -fsigned-char -Wdeclaration-after-statement -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DUSE_MEMORY_H -I/home/vicente/tomato/release/src-rt/router/libogg/include -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections conftest.c >&5 -configure:21553: $? = 0 -configure:21570: result: yes -configure:21580: checking for alloca -configure:21627: mipsel-uclibc-gcc -o conftest -O20 -Wall -Wextra -ffast-math -D_REENTRANT -fsigned-char -Wdeclaration-after-statement -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DUSE_MEMORY_H -I/home/vicente/tomato/release/src-rt/router/libogg/include -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections conftest.c >&5 -configure:21633: $? = 0 -configure:21650: result: yes -configure:21877: checking for working memcmp -configure:21958: result: no -configure:22106: creating ./config.status - -## ---------------------- ## -## Running config.status. ## -## ---------------------- ## - -This file was extended by libvorbis config.status 1.2.3, which was -generated by GNU Autoconf 2.61. Invocation command line was - - CONFIG_FILES = - CONFIG_HEADERS = - CONFIG_LINKS = - CONFIG_COMMANDS = - $ ./config.status - -on vicente-P5K-E - -config.status:716: creating Makefile -config.status:716: creating m4/Makefile -config.status:716: creating lib/Makefile -config.status:716: creating lib/modes/Makefile -config.status:716: creating lib/books/Makefile -config.status:716: creating lib/books/coupled/Makefile -config.status:716: creating lib/books/uncoupled/Makefile -config.status:716: creating lib/books/floor/Makefile -config.status:716: creating doc/Makefile -config.status:716: creating doc/vorbisfile/Makefile -config.status:716: creating doc/vorbisenc/Makefile -config.status:716: creating include/Makefile -config.status:716: creating include/vorbis/Makefile -config.status:716: creating examples/Makefile -config.status:716: creating test/Makefile -config.status:716: creating vq/Makefile -config.status:716: creating libvorbis.spec -config.status:716: creating vorbis.pc -config.status:716: creating vorbisenc.pc -config.status:716: creating vorbisfile.pc -config.status:716: creating vorbis-uninstalled.pc -config.status:716: creating vorbisenc-uninstalled.pc -config.status:716: creating vorbisfile-uninstalled.pc -config.status:716: creating config.h -config.status:945: config.h is unchanged -config.status:992: executing depfiles commands - -## ---------------- ## -## Cache variables. ## -## ---------------- ## - -ac_cv_build=x86_64-pc-linux-gnu -ac_cv_c_compiler_gnu=yes -ac_cv_c_inline=inline -ac_cv_cxx_compiler_gnu=yes -ac_cv_env_CCC_set= -ac_cv_env_CCC_value= -ac_cv_env_CC_set=set -ac_cv_env_CC_value=mipsel-uclibc-gcc -ac_cv_env_CFLAGS_set=set -ac_cv_env_CFLAGS_value='-Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections' -ac_cv_env_CPPFLAGS_set=set -ac_cv_env_CPPFLAGS_value=-I/home/vicente/tomato/release/src-rt/router/libogg/include -ac_cv_env_CPP_set= -ac_cv_env_CPP_value= -ac_cv_env_CXXCPP_set= -ac_cv_env_CXXCPP_value= -ac_cv_env_CXXFLAGS_set= -ac_cv_env_CXXFLAGS_value= -ac_cv_env_CXX_set= -ac_cv_env_CXX_value= -ac_cv_env_F77_set= -ac_cv_env_F77_value= -ac_cv_env_FFLAGS_set= -ac_cv_env_FFLAGS_value= -ac_cv_env_LDFLAGS_set=set -ac_cv_env_LDFLAGS_value='-L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections' -ac_cv_env_LIBS_set= -ac_cv_env_LIBS_value= -ac_cv_env_OGG_CFLAGS_set= -ac_cv_env_OGG_CFLAGS_value= -ac_cv_env_OGG_LIBS_set= -ac_cv_env_OGG_LIBS_value= -ac_cv_env_PKG_CONFIG_set= -ac_cv_env_PKG_CONFIG_value= -ac_cv_env_build_alias_set=set -ac_cv_env_build_alias_value=x86_64-linux-gnu -ac_cv_env_host_alias_set=set -ac_cv_env_host_alias_value=mipsel-linux -ac_cv_env_target_alias_set= -ac_cv_env_target_alias_value= -ac_cv_f77_compiler_gnu=no -ac_cv_func_alloca_works=yes -ac_cv_func_malloc_0_nonnull=yes -ac_cv_func_memcmp_working=no -ac_cv_func_oggpack_writealign=yes -ac_cv_header_dlfcn_h=yes -ac_cv_header_inttypes_h=yes -ac_cv_header_memory_h=yes -ac_cv_header_stdc=yes -ac_cv_header_stdint_h=yes -ac_cv_header_stdlib_h=yes -ac_cv_header_string_h=yes -ac_cv_header_strings_h=yes -ac_cv_header_sys_stat_h=yes -ac_cv_header_sys_types_h=yes -ac_cv_header_unistd_h=yes -ac_cv_host=mipsel-unknown-linux-gnu -ac_cv_lib_m_cos=yes -ac_cv_lib_pthread_pthread_create=yes -ac_cv_objext=o -ac_cv_path_EGREP='/bin/grep -E' -ac_cv_path_GREP=/bin/grep -ac_cv_path_ac_pt_PKG_CONFIG=/usr/bin/pkg-config -ac_cv_path_install='/usr/bin/install -c' -ac_cv_path_mkdir=/bin/mkdir -ac_cv_prog_AR=mipsel-uclibc-ar -ac_cv_prog_AWK=gawk -ac_cv_prog_CC=mipsel-uclibc-gcc -ac_cv_prog_CPP='mipsel-uclibc-gcc -E' -ac_cv_prog_CXX=mipsel-linux-g++ -ac_cv_prog_CXXCPP='mipsel-linux-g++ -E' -ac_cv_prog_RANLIB=mipsel-uclibc-ranlib -ac_cv_prog_STRIP='mipsel-uclibc-strip -R .note -R .comment' -ac_cv_prog_cc_c89= -ac_cv_prog_cc_g=yes -ac_cv_prog_cc_mipsel_uclibc_gcc_c_o=yes -ac_cv_prog_cxx_g=yes -ac_cv_prog_f77_g=no -ac_cv_prog_make_make_set=yes -ac_cv_target=mipsel-unknown-linux-gnu -ac_cv_working_alloca_h=yes -am_cv_CC_dependencies_compiler_type=gcc3 -am_cv_CXX_dependencies_compiler_type=gcc3 -lt_cv_deplibs_check_method=pass_all -lt_cv_file_magic_cmd='$MAGIC_CMD' -lt_cv_file_magic_test_file= -lt_cv_ld_reload_flag=-r -lt_cv_objdir=.libs -lt_cv_path_LD=mipsel-uclibc-ld -lt_cv_path_LDCXX=mipsel-uclibc-ld -lt_cv_path_NM=mipsel-uclibc-nm -lt_cv_path_SED=/bin/sed -lt_cv_prog_compiler_c_o=yes -lt_cv_prog_compiler_c_o_CXX=yes -lt_cv_prog_compiler_pic_works=yes -lt_cv_prog_compiler_pic_works_CXX=yes -lt_cv_prog_compiler_rtti_exceptions=no -lt_cv_prog_compiler_static_works=yes -lt_cv_prog_compiler_static_works_CXX=yes -lt_cv_prog_gnu_ld=yes -lt_cv_prog_gnu_ldcxx=yes -lt_cv_sys_global_symbol_pipe='sed -n -e '\''s/^.*[ ]\([ABCDGIRSTW][ABCDGIRSTW]*\)[ ][ ]*\([_A-Za-z][_A-Za-z0-9]*\)$/\1 \2 \2/p'\''' -lt_cv_sys_global_symbol_to_c_name_address='sed -n -e '\''s/^: \([^ ]*\) $/ {\"\1\", (lt_ptr) 0},/p'\'' -e '\''s/^[BCDEGRST] \([^ ]*\) \([^ ]*\)$/ {"\2", (lt_ptr) \&\2},/p'\''' -lt_cv_sys_global_symbol_to_cdecl='sed -n -e '\''s/^. .* \(.*\)$/extern int \1;/p'\''' -lt_cv_sys_lib_dlsearch_path_spec='/lib /usr/lib /lib/i386-linux-gnu /usr/lib/i386-linux-gnu /lib/i686-linux-gnu /usr/lib/i686-linux-gnu /usr/local/lib /usr/lib/nvidia-settings /lib/x86_64-linux-gnu /usr/lib/x86_64-linux-gnu /usr/lib/nvidia-current /usr/lib32/nvidia-current /lib32 /usr/lib32 ' -lt_cv_sys_lib_search_path_spec='/home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/lib/gcc/mipsel-linux-uclibc/4.2.4 /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/lib/gcc /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/mipsel-linux-uclibc/lib' -lt_cv_sys_max_cmd_len=3458764513820540925 -lt_lt_cv_prog_compiler_c_o='"yes"' -lt_lt_cv_prog_compiler_c_o_CXX='"yes"' -lt_lt_cv_sys_global_symbol_pipe='"sed -n -e '\''s/^.*[ ]\\([ABCDGIRSTW][ABCDGIRSTW]*\\)[ ][ ]*\\([_A-Za-z][_A-Za-z0-9]*\\)\$/\\1 \\2 \\2/p'\''"' -lt_lt_cv_sys_global_symbol_to_c_name_address='"sed -n -e '\''s/^: \\([^ ]*\\) \$/ {\\\"\\1\\\", (lt_ptr) 0},/p'\'' -e '\''s/^[BCDEGRST] \\([^ ]*\\) \\([^ ]*\\)\$/ {\"\\2\", (lt_ptr) \\&\\2},/p'\''"' -lt_lt_cv_sys_global_symbol_to_cdecl='"sed -n -e '\''s/^. .* \\(.*\\)\$/extern int \\1;/p'\''"' - -## ----------------- ## -## Output variables. ## -## ----------------- ## - -ACLOCAL='${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run aclocal-1.10' -ACLOCAL_AMFLAGS='-I m4' -ALLOCA='' -AMDEPBACKSLASH='\' -AMDEP_FALSE='#' -AMDEP_TRUE='' -AMTAR='${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run tar' -AR='mipsel-uclibc-ar' -AS='mipsel-uclibc-as' -AUTOCONF='${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run autoconf' -AUTOHEADER='${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run autoheader' -AUTOMAKE='${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run automake-1.10' -AWK='gawk' -BUILD_DOCS_FALSE='' -BUILD_DOCS_TRUE='#' -CC='mipsel-uclibc-gcc' -CCDEPMODE='depmode=gcc3' -CFLAGS='-O20 -Wall -Wextra -ffast-math -D_REENTRANT -fsigned-char -Wdeclaration-after-statement -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DUSE_MEMORY_H' -CPP='mipsel-uclibc-gcc -E' -CPPFLAGS='-I/home/vicente/tomato/release/src-rt/router/libogg/include' -CXX='mipsel-linux-g++' -CXXCPP='mipsel-linux-g++ -E' -CXXDEPMODE='depmode=gcc3' -CXXFLAGS='-g -O2' -CYGPATH_W='echo' -DEBUG='-g -Wall -Wextra -D_REENTRANT -D__NO_MATH_INLINES -fsigned-char' -DEFS='-DHAVE_CONFIG_H' -DEPDIR='.deps' -DLLTOOL='dlltool' -DSYMUTIL='' -ECHO='echo' -ECHO_C='' -ECHO_N='-n' -ECHO_T='' -EGREP='/bin/grep -E' -EXEEXT='' -F77='' -FFLAGS='' -GREP='/bin/grep' -HTLATEX='' -INSTALL_DATA='${INSTALL} -m 644' -INSTALL_PROGRAM='${INSTALL}' -INSTALL_SCRIPT='${INSTALL}' -INSTALL_STRIP_PROGRAM='$(install_sh) -c -s' -LDFLAGS='-L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections' -LIBOBJS=' ${LIBOBJDIR}memcmp$U.o' -LIBS='' -LIBTOOL='$(SHELL) $(top_builddir)/libtool' -LIBTOOL_DEPS='./ltmain.sh' -LN_S='ln -s' -LTLIBOBJS=' ${LIBOBJDIR}memcmp$U.lo' -MAKEINFO='${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run makeinfo' -NMEDIT='' -OBJDUMP='objdump' -OBJEXT='o' -OGG_CFLAGS='-I/home/vicente/tomato/release/src-rt/router/libogg/include' -OGG_LIBS='-L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -logg' -PACKAGE='libvorbis' -PACKAGE_BUGREPORT='vorbis-dev@xiph.org' -PACKAGE_NAME='libvorbis' -PACKAGE_STRING='libvorbis 1.2.3' -PACKAGE_TARNAME='libvorbis' -PACKAGE_VERSION='1.2.3' -PATH_SEPARATOR=':' -PDFLATEX='' -PKG_CONFIG='/usr/bin/pkg-config' -PROFILE='-pg -g -O20 -ffast-math -D_REENTRANT -fsigned-char' -RANLIB='mipsel-uclibc-ranlib' -SED='/bin/sed' -SET_MAKE='' -SHELL='/bin/sh' -STRIP='mipsel-uclibc-strip -R .note -R .comment' -VERSION='1.2.3' -VE_LIB_AGE='0' -VE_LIB_CURRENT='2' -VE_LIB_REVISION='6' -VF_LIB_AGE='3' -VF_LIB_CURRENT='6' -VF_LIB_REVISION='2' -VORBIS_LIBS='-lm' -V_LIB_AGE='4' -V_LIB_CURRENT='4' -V_LIB_REVISION='3' -ac_ct_CC='' -ac_ct_CXX='' -ac_ct_F77='' -am__fastdepCC_FALSE='#' -am__fastdepCC_TRUE='' -am__fastdepCXX_FALSE='#' -am__fastdepCXX_TRUE='' -am__include='include' -am__isrc='' -am__leading_dot='.' -am__quote='' -am__tar='${AMTAR} chof - "$$tardir"' -am__untar='${AMTAR} xf -' -bindir='${exec_prefix}/bin' -build='x86_64-pc-linux-gnu' -build_alias='x86_64-linux-gnu' -build_cpu='x86_64' -build_os='linux-gnu' -build_vendor='pc' -datadir='${datarootdir}' -datarootdir='${prefix}/share' -docdir='${datarootdir}/doc/${PACKAGE_TARNAME}' -dvidir='${docdir}' -exec_prefix='${prefix}' -host='mipsel-unknown-linux-gnu' -host_alias='mipsel-linux' -host_cpu='mipsel' -host_os='linux-gnu' -host_vendor='unknown' -htmldir='${docdir}' -includedir='${prefix}/include' -infodir='${datarootdir}/info' -install_sh='$(SHELL) /home/vicente/tomato/release/src/router/libvorbis/install-sh' -libdir='${exec_prefix}/lib' -libexecdir='${exec_prefix}/libexec' -localedir='${datarootdir}/locale' -localstatedir='${prefix}/var' -mandir='${datarootdir}/man' -mkdir_p='/bin/mkdir -p' -oldincludedir='/usr/include' -pdfdir='${docdir}' -prefix='' -program_transform_name='s,x,x,' -psdir='${docdir}' -pthread_lib='-lpthread' -sbindir='${exec_prefix}/sbin' -sharedstatedir='${prefix}/com' -sysconfdir='${prefix}/etc' -target='mipsel-unknown-linux-gnu' -target_alias='' -target_cpu='mipsel' -target_os='linux-gnu' -target_vendor='unknown' - -## ----------- ## -## confdefs.h. ## -## ----------- ## - -#define PACKAGE_NAME "libvorbis" -#define PACKAGE_TARNAME "libvorbis" -#define PACKAGE_VERSION "1.2.3" -#define PACKAGE_STRING "libvorbis 1.2.3" -#define PACKAGE_BUGREPORT "vorbis-dev@xiph.org" -#define PACKAGE "libvorbis" -#define VERSION "1.2.3" -#define STDC_HEADERS 1 -#define HAVE_SYS_TYPES_H 1 -#define HAVE_SYS_STAT_H 1 -#define HAVE_STDLIB_H 1 -#define HAVE_STRING_H 1 -#define HAVE_MEMORY_H 1 -#define HAVE_STRINGS_H 1 -#define HAVE_INTTYPES_H 1 -#define HAVE_STDINT_H 1 -#define HAVE_UNISTD_H 1 -#define HAVE_DLFCN_H 1 -#define HAVE_ALLOCA_H 1 -#define HAVE_ALLOCA 1 - -configure: exit 0 diff --git a/release/src/router/libvorbis/config.status b/release/src/router/libvorbis/config.status deleted file mode 100755 index 41c9509f59..0000000000 --- a/release/src/router/libvorbis/config.status +++ /dev/null @@ -1,1128 +0,0 @@ -#! /bin/sh -# Generated by configure. -# Run this file to recreate the current configuration. -# Compiler output produced by configure, useful for debugging -# configure, is in config.log if it exists. - -debug=false -ac_cs_recheck=false -ac_cs_silent=false -SHELL=${CONFIG_SHELL-/bin/sh} -## --------------------- ## -## M4sh Initialization. ## -## --------------------- ## - -# Be more Bourne compatible -DUALCASE=1; export DUALCASE # for MKS sh -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then - emulate sh - NULLCMD=: - # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which - # is contrary to our usage. Disable this feature. - alias -g '${1+"$@"}'='"$@"' - setopt NO_GLOB_SUBST -else - case `(set -o) 2>/dev/null` in - *posix*) set -o posix ;; -esac - -fi - - - - -# PATH needs CR -# Avoid depending upon Character Ranges. -as_cr_letters='abcdefghijklmnopqrstuvwxyz' -as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' -as_cr_Letters=$as_cr_letters$as_cr_LETTERS -as_cr_digits='0123456789' -as_cr_alnum=$as_cr_Letters$as_cr_digits - -# The user is always right. -if test "${PATH_SEPARATOR+set}" != set; then - echo "#! /bin/sh" >conf$$.sh - echo "exit 0" >>conf$$.sh - chmod +x conf$$.sh - if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then - PATH_SEPARATOR=';' - else - PATH_SEPARATOR=: - fi - rm -f conf$$.sh -fi - -# Support unset when possible. -if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then - as_unset=unset -else - as_unset=false -fi - - -# IFS -# We need space, tab and new line, in precisely that order. Quoting is -# there to prevent editors from complaining about space-tab. -# (If _AS_PATH_WALK were called with IFS unset, it would disable word -# splitting by setting IFS to empty value.) -as_nl=' -' -IFS=" "" $as_nl" - -# Find who we are. Look in the path if we contain no directory separator. -case $0 in - *[\\/]* ) as_myself=$0 ;; - *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break -done -IFS=$as_save_IFS - - ;; -esac -# We did not find ourselves, most probably we were run as `sh COMMAND' -# in which case we are not to be found in the path. -if test "x$as_myself" = x; then - as_myself=$0 -fi -if test ! -f "$as_myself"; then - echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 - { (exit 1); exit 1; } -fi - -# Work around bugs in pre-3.0 UWIN ksh. -for as_var in ENV MAIL MAILPATH -do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var -done -PS1='$ ' -PS2='> ' -PS4='+ ' - -# NLS nuisances. -for as_var in \ - LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \ - LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \ - LC_TELEPHONE LC_TIME -do - if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then - eval $as_var=C; export $as_var - else - ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var - fi -done - -# Required to use basename. -if expr a : '\(a\)' >/dev/null 2>&1 && - test "X`expr 00001 : '.*\(...\)'`" = X001; then - as_expr=expr -else - as_expr=false -fi - -if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then - as_basename=basename -else - as_basename=false -fi - - -# Name of the executable. -as_me=`$as_basename -- "$0" || -$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ - X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)' \| . 2>/dev/null || -echo X/"$0" | - sed '/^.*\/\([^/][^/]*\)\/*$/{ - s//\1/ - q - } - /^X\/\(\/\/\)$/{ - s//\1/ - q - } - /^X\/\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - -# CDPATH. -$as_unset CDPATH - - - - as_lineno_1=$LINENO - as_lineno_2=$LINENO - test "x$as_lineno_1" != "x$as_lineno_2" && - test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2" || { - - # Create $as_me.lineno as a copy of $as_myself, but with $LINENO - # uniformly replaced by the line number. The first 'sed' inserts a - # line-number line after each line using $LINENO; the second 'sed' - # does the real work. The second script uses 'N' to pair each - # line-number line with the line containing $LINENO, and appends - # trailing '-' during substitution so that $LINENO is not a special - # case at line end. - # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the - # scripts with optimization help from Paolo Bonzini. Blame Lee - # E. McMahon (1931-1989) for sed's syntax. :-) - sed -n ' - p - /[$]LINENO/= - ' <$as_myself | - sed ' - s/[$]LINENO.*/&-/ - t lineno - b - :lineno - N - :loop - s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/ - t loop - s/-\n.*// - ' >$as_me.lineno && - chmod +x "$as_me.lineno" || - { echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2 - { (exit 1); exit 1; }; } - - # Don't try to exec as it changes $[0], causing all sort of problems - # (the dirname of $[0] is not the place where we might find the - # original and so on. Autoconf is especially sensitive to this). - . "./$as_me.lineno" - # Exit status is that of the last command. - exit -} - - -if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then - as_dirname=dirname -else - as_dirname=false -fi - -ECHO_C= ECHO_N= ECHO_T= -case `echo -n x` in --n*) - case `echo 'x\c'` in - *c*) ECHO_T=' ';; # ECHO_T is single tab character. - *) ECHO_C='\c';; - esac;; -*) - ECHO_N='-n';; -esac - -if expr a : '\(a\)' >/dev/null 2>&1 && - test "X`expr 00001 : '.*\(...\)'`" = X001; then - as_expr=expr -else - as_expr=false -fi - -rm -f conf$$ conf$$.exe conf$$.file -if test -d conf$$.dir; then - rm -f conf$$.dir/conf$$.file -else - rm -f conf$$.dir - mkdir conf$$.dir -fi -echo >conf$$.file -if ln -s conf$$.file conf$$ 2>/dev/null; then - as_ln_s='ln -s' - # ... but there are two gotchas: - # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. - # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. - # In both cases, we have to default to `cp -p'. - ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || - as_ln_s='cp -p' -elif ln conf$$.file conf$$ 2>/dev/null; then - as_ln_s=ln -else - as_ln_s='cp -p' -fi -rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file -rmdir conf$$.dir 2>/dev/null - -if mkdir -p . 2>/dev/null; then - as_mkdir_p=: -else - test -d ./-p && rmdir ./-p - as_mkdir_p=false -fi - -if test -x / >/dev/null 2>&1; then - as_test_x='test -x' -else - if ls -dL / >/dev/null 2>&1; then - as_ls_L_option=L - else - as_ls_L_option= - fi - as_test_x=' - eval sh -c '\'' - if test -d "$1"; then - test -d "$1/."; - else - case $1 in - -*)set "./$1";; - esac; - case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in - ???[sx]*):;;*)false;;esac;fi - '\'' sh - ' -fi -as_executable_p=$as_test_x - -# Sed expression to map a string onto a valid CPP name. -as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" - -# Sed expression to map a string onto a valid variable name. -as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" - - -exec 6>&1 - -# Save the log message, to keep $[0] and so on meaningful, and to -# report actual input values of CONFIG_FILES etc. instead of their -# values after options handling. -ac_log=" -This file was extended by libvorbis $as_me 1.2.3, which was -generated by GNU Autoconf 2.61. Invocation command line was - - CONFIG_FILES = $CONFIG_FILES - CONFIG_HEADERS = $CONFIG_HEADERS - CONFIG_LINKS = $CONFIG_LINKS - CONFIG_COMMANDS = $CONFIG_COMMANDS - $ $0 $@ - -on `(hostname || uname -n) 2>/dev/null | sed 1q` -" - -# Files that config.status was made for. -config_files=" Makefile m4/Makefile lib/Makefile lib/modes/Makefile lib/books/Makefile lib/books/coupled/Makefile lib/books/uncoupled/Makefile lib/books/floor/Makefile doc/Makefile doc/vorbisfile/Makefile doc/vorbisenc/Makefile include/Makefile include/vorbis/Makefile examples/Makefile test/Makefile vq/Makefile libvorbis.spec vorbis.pc vorbisenc.pc vorbisfile.pc vorbis-uninstalled.pc vorbisenc-uninstalled.pc vorbisfile-uninstalled.pc" -config_headers=" config.h" -config_commands=" depfiles" - -ac_cs_usage="\ -\`$as_me' instantiates files from templates according to the -current configuration. - -Usage: $0 [OPTIONS] [FILE]... - - -h, --help print this help, then exit - -V, --version print version number and configuration settings, then exit - -q, --quiet do not print progress messages - -d, --debug don't remove temporary files - --recheck update $as_me by reconfiguring in the same conditions - --file=FILE[:TEMPLATE] - instantiate the configuration file FILE - --header=FILE[:TEMPLATE] - instantiate the configuration header FILE - -Configuration files: -$config_files - -Configuration headers: -$config_headers - -Configuration commands: -$config_commands - -Report bugs to ." - -ac_cs_version="\ -libvorbis config.status 1.2.3 -configured by ./configure, generated by GNU Autoconf 2.61, - with options \"'--host=mipsel-linux' '--build=x86_64-linux-gnu' '--enable-shared' '--enable-static' '--prefix=' '--disable-oggtest' '--with-ogg-includes=/home/vicente/tomato/release/src-rt/router/libogg/include' '--with-ogg-libraries=/home/vicente/tomato/release/src-rt/router/libogg/src/.libs' 'build_alias=x86_64-linux-gnu' 'host_alias=mipsel-linux' 'CC=mipsel-uclibc-gcc' 'CFLAGS=-Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections' 'LDFLAGS=-L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections' 'CPPFLAGS=-I/home/vicente/tomato/release/src-rt/router/libogg/include'\" - -Copyright (C) 2006 Free Software Foundation, Inc. -This config.status script is free software; the Free Software Foundation -gives unlimited permission to copy, distribute and modify it." - -ac_pwd='/home/vicente/tomato/release/src/router/libvorbis' -srcdir='.' -INSTALL='/usr/bin/install -c' -MKDIR_P='/bin/mkdir -p' -# If no file are specified by the user, then we need to provide default -# value. By we need to know if files were specified by the user. -ac_need_defaults=: -while test $# != 0 -do - case $1 in - --*=*) - ac_option=`expr "X$1" : 'X\([^=]*\)='` - ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'` - ac_shift=: - ;; - *) - ac_option=$1 - ac_optarg=$2 - ac_shift=shift - ;; - esac - - case $ac_option in - # Handling of the options. - -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) - ac_cs_recheck=: ;; - --version | --versio | --versi | --vers | --ver | --ve | --v | -V ) - echo "$ac_cs_version"; exit ;; - --debug | --debu | --deb | --de | --d | -d ) - debug=: ;; - --file | --fil | --fi | --f ) - $ac_shift - CONFIG_FILES="$CONFIG_FILES $ac_optarg" - ac_need_defaults=false;; - --header | --heade | --head | --hea ) - $ac_shift - CONFIG_HEADERS="$CONFIG_HEADERS $ac_optarg" - ac_need_defaults=false;; - --he | --h) - # Conflict between --help and --header - { echo "$as_me: error: ambiguous option: $1 -Try \`$0 --help' for more information." >&2 - { (exit 1); exit 1; }; };; - --help | --hel | -h ) - echo "$ac_cs_usage"; exit ;; - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil | --si | --s) - ac_cs_silent=: ;; - - # This is an error. - -*) { echo "$as_me: error: unrecognized option: $1 -Try \`$0 --help' for more information." >&2 - { (exit 1); exit 1; }; } ;; - - *) ac_config_targets="$ac_config_targets $1" - ac_need_defaults=false ;; - - esac - shift -done - -ac_configure_extra_args= - -if $ac_cs_silent; then - exec 6>/dev/null - ac_configure_extra_args="$ac_configure_extra_args --silent" -fi - -if $ac_cs_recheck; then - echo "running CONFIG_SHELL=/bin/sh /bin/sh ./configure " '--host=mipsel-linux' '--build=x86_64-linux-gnu' '--enable-shared' '--enable-static' '--prefix=' '--disable-oggtest' '--with-ogg-includes=/home/vicente/tomato/release/src-rt/router/libogg/include' '--with-ogg-libraries=/home/vicente/tomato/release/src-rt/router/libogg/src/.libs' 'build_alias=x86_64-linux-gnu' 'host_alias=mipsel-linux' 'CC=mipsel-uclibc-gcc' 'CFLAGS=-Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections' 'LDFLAGS=-L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections' 'CPPFLAGS=-I/home/vicente/tomato/release/src-rt/router/libogg/include' $ac_configure_extra_args " --no-create --no-recursion" >&6 - CONFIG_SHELL=/bin/sh - export CONFIG_SHELL - exec /bin/sh "./configure" '--host=mipsel-linux' '--build=x86_64-linux-gnu' '--enable-shared' '--enable-static' '--prefix=' '--disable-oggtest' '--with-ogg-includes=/home/vicente/tomato/release/src-rt/router/libogg/include' '--with-ogg-libraries=/home/vicente/tomato/release/src-rt/router/libogg/src/.libs' 'build_alias=x86_64-linux-gnu' 'host_alias=mipsel-linux' 'CC=mipsel-uclibc-gcc' 'CFLAGS=-Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections' 'LDFLAGS=-L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections' 'CPPFLAGS=-I/home/vicente/tomato/release/src-rt/router/libogg/include' $ac_configure_extra_args --no-create --no-recursion -fi - -exec 5>>config.log -{ - echo - sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX -## Running $as_me. ## -_ASBOX - echo "$ac_log" -} >&5 - -# -# INIT-COMMANDS -# -AMDEP_TRUE="" ac_aux_dir="." - - -# Handling of arguments. -for ac_config_target in $ac_config_targets -do - case $ac_config_target in - "config.h") CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;; - "depfiles") CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;; - "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;; - "m4/Makefile") CONFIG_FILES="$CONFIG_FILES m4/Makefile" ;; - "lib/Makefile") CONFIG_FILES="$CONFIG_FILES lib/Makefile" ;; - "lib/modes/Makefile") CONFIG_FILES="$CONFIG_FILES lib/modes/Makefile" ;; - "lib/books/Makefile") CONFIG_FILES="$CONFIG_FILES lib/books/Makefile" ;; - "lib/books/coupled/Makefile") CONFIG_FILES="$CONFIG_FILES lib/books/coupled/Makefile" ;; - "lib/books/uncoupled/Makefile") CONFIG_FILES="$CONFIG_FILES lib/books/uncoupled/Makefile" ;; - "lib/books/floor/Makefile") CONFIG_FILES="$CONFIG_FILES lib/books/floor/Makefile" ;; - "doc/Makefile") CONFIG_FILES="$CONFIG_FILES doc/Makefile" ;; - "doc/vorbisfile/Makefile") CONFIG_FILES="$CONFIG_FILES doc/vorbisfile/Makefile" ;; - "doc/vorbisenc/Makefile") CONFIG_FILES="$CONFIG_FILES doc/vorbisenc/Makefile" ;; - "include/Makefile") CONFIG_FILES="$CONFIG_FILES include/Makefile" ;; - "include/vorbis/Makefile") CONFIG_FILES="$CONFIG_FILES include/vorbis/Makefile" ;; - "examples/Makefile") CONFIG_FILES="$CONFIG_FILES examples/Makefile" ;; - "test/Makefile") CONFIG_FILES="$CONFIG_FILES test/Makefile" ;; - "vq/Makefile") CONFIG_FILES="$CONFIG_FILES vq/Makefile" ;; - "libvorbis.spec") CONFIG_FILES="$CONFIG_FILES libvorbis.spec" ;; - "vorbis.pc") CONFIG_FILES="$CONFIG_FILES vorbis.pc" ;; - "vorbisenc.pc") CONFIG_FILES="$CONFIG_FILES vorbisenc.pc" ;; - "vorbisfile.pc") CONFIG_FILES="$CONFIG_FILES vorbisfile.pc" ;; - "vorbis-uninstalled.pc") CONFIG_FILES="$CONFIG_FILES vorbis-uninstalled.pc" ;; - "vorbisenc-uninstalled.pc") CONFIG_FILES="$CONFIG_FILES vorbisenc-uninstalled.pc" ;; - "vorbisfile-uninstalled.pc") CONFIG_FILES="$CONFIG_FILES vorbisfile-uninstalled.pc" ;; - - *) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5 -echo "$as_me: error: invalid argument: $ac_config_target" >&2;} - { (exit 1); exit 1; }; };; - esac -done - - -# If the user did not use the arguments to specify the items to instantiate, -# then the envvar interface is used. Set only those that are not. -# We use the long form for the default assignment because of an extremely -# bizarre bug on SunOS 4.1.3. -if $ac_need_defaults; then - test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files - test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers - test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands -fi - -# Have a temporary directory for convenience. Make it in the build tree -# simply because there is no reason against having it here, and in addition, -# creating and moving files from /tmp can sometimes cause problems. -# Hook for its removal unless debugging. -# Note that there is a small window in which the directory will not be cleaned: -# after its creation but before its name has been assigned to `$tmp'. -$debug || -{ - tmp= - trap 'exit_status=$? - { test -z "$tmp" || test ! -d "$tmp" || rm -fr "$tmp"; } && exit $exit_status -' 0 - trap '{ (exit 1); exit 1; }' 1 2 13 15 -} -# Create a (secure) tmp directory for tmp files. - -{ - tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` && - test -n "$tmp" && test -d "$tmp" -} || -{ - tmp=./conf$$-$RANDOM - (umask 077 && mkdir "$tmp") -} || -{ - echo "$me: cannot create a temporary directory in ." >&2 - { (exit 1); exit 1; } -} - -# -# Set up the sed scripts for CONFIG_FILES section. -# - -# No need to generate the scripts if there are no CONFIG_FILES. -# This happens for instance when ./config.status config.h -if test -n "$CONFIG_FILES"; then - -cat >"$tmp/subs-1.sed" <<\CEOF -/@[a-zA-Z_][a-zA-Z_0-9]*@/!b -s,@SHELL@,|#_!!_#|/bin/sh,g -s,@PATH_SEPARATOR@,|#_!!_#|:,g -s,@PACKAGE_NAME@,|#_!!_#|libvorbis,g -s,@PACKAGE_TARNAME@,|#_!!_#|libvorbis,g -s,@PACKAGE_VERSION@,|#_!!_#|1.2.3,g -s,@PACKAGE_STRING@,|#_!!_#|libvorbis 1.2.3,g -s,@PACKAGE_BUGREPORT@,|#_!!_#|vorbis-dev@|#_!!_#|xiph.org,g -s,@exec_prefix@,|#_!!_#|${prefix},g -s,@prefix@,|#_!!_#|,g -s,@program_transform_name@,|#_!!_#|s\,x\,x\,,g -s,@bindir@,|#_!!_#|${exec_prefix}/bin,g -s,@sbindir@,|#_!!_#|${exec_prefix}/sbin,g -s,@libexecdir@,|#_!!_#|${exec_prefix}/libexec,g -s,@datarootdir@,|#_!!_#|${prefix}/share,g -s,@datadir@,|#_!!_#|${datarootdir},g -s,@sysconfdir@,|#_!!_#|${prefix}/etc,g -s,@sharedstatedir@,|#_!!_#|${prefix}/com,g -s,@localstatedir@,|#_!!_#|${prefix}/var,g -s,@includedir@,|#_!!_#|${prefix}/include,g -s,@oldincludedir@,|#_!!_#|/usr/include,g -s,@docdir@,|#_!!_#|${datarootdir}/doc/${PACKAGE_TARNAME},g -s,@infodir@,|#_!!_#|${datarootdir}/info,g -s,@htmldir@,|#_!!_#|${docdir},g -s,@dvidir@,|#_!!_#|${docdir},g -s,@pdfdir@,|#_!!_#|${docdir},g -s,@psdir@,|#_!!_#|${docdir},g -s,@libdir@,|#_!!_#|${exec_prefix}/lib,g -s,@localedir@,|#_!!_#|${datarootdir}/locale,g -s,@mandir@,|#_!!_#|${datarootdir}/man,g -s,@DEFS@,|#_!!_#|-DHAVE_CONFIG_H,g -s,@ECHO_C@,|#_!!_#|,g -s,@ECHO_N@,|#_!!_#|-n,g -s,@ECHO_T@,|#_!!_#|,g -s,@LIBS@,|#_!!_#|,g -s,@build_alias@,|#_!!_#|x86_64-linux-gnu,g -s,@host_alias@,|#_!!_#|mipsel-linux,g -s,@target_alias@,|#_!!_#|,g -s,@build@,|#_!!_#|x86_64-pc-linux-gnu,g -s,@build_cpu@,|#_!!_#|x86_64,g -s,@build_vendor@,|#_!!_#|pc,g -s,@build_os@,|#_!!_#|linux-gnu,g -s,@host@,|#_!!_#|mipsel-unknown-linux-gnu,g -s,@host_cpu@,|#_!!_#|mipsel,g -s,@host_vendor@,|#_!!_#|unknown,g -s,@host_os@,|#_!!_#|linux-gnu,g -s,@target@,|#_!!_#|mipsel-unknown-linux-gnu,g -s,@target_cpu@,|#_!!_#|mipsel,g -s,@target_vendor@,|#_!!_#|unknown,g -s,@target_os@,|#_!!_#|linux-gnu,g -s,@INSTALL_PROGRAM@,|#_!!_#|${INSTALL},g -s,@INSTALL_SCRIPT@,|#_!!_#|${INSTALL},g -s,@INSTALL_DATA@,|#_!!_#|${INSTALL} -m 644,g -s,@am__isrc@,|#_!!_#|,g -s,@CYGPATH_W@,|#_!!_#|echo,g -s,@PACKAGE@,|#_!!_#|libvorbis,g -s,@VERSION@,|#_!!_#|1.2.3,g -s,@ACLOCAL@,|#_!!_#|${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run aclocal-1.10,g -s,@AUTOCONF@,|#_!!_#|${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run autoconf,g -s,@AUTOMAKE@,|#_!!_#|${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run automake-1.10,g -s,@AUTOHEADER@,|#_!!_#|${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run autoheader,g -s,@MAKEINFO@,|#_!!_#|${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run makeinfo,g -s,@install_sh@,|#_!!_#|$(SHELL) /home/vicente/tomato/release/src/router/libvorbis/install-sh,g -s,@STRIP@,|#_!!_#|mipsel-uclibc-strip -R .note -R .comment,g -s,@INSTALL_STRIP_PROGRAM@,|#_!!_#|$(install_sh) -c -s,g -s,@mkdir_p@,|#_!!_#|/bin/mkdir -p,g -s,@AWK@,|#_!!_#|gawk,g -s,@SET_MAKE@,|#_!!_#|,g -s,@am__leading_dot@,|#_!!_#|.,g -s,@AMTAR@,|#_!!_#|${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run tar,g -s,@am__tar@,|#_!!_#|${AMTAR} chof - "$$tardir",g -s,@am__untar@,|#_!!_#|${AMTAR} xf -,g -s,@ACLOCAL_AMFLAGS@,|#_!!_#|-I m4,g -s,@V_LIB_CURRENT@,|#_!!_#|4,g -s,@V_LIB_REVISION@,|#_!!_#|3,g -s,@V_LIB_AGE@,|#_!!_#|4,g -s,@VF_LIB_CURRENT@,|#_!!_#|6,g -s,@VF_LIB_REVISION@,|#_!!_#|2,g -s,@VF_LIB_AGE@,|#_!!_#|3,g -s,@VE_LIB_CURRENT@,|#_!!_#|2,g -s,@VE_LIB_REVISION@,|#_!!_#|6,g -s,@VE_LIB_AGE@,|#_!!_#|0,g -s,@CC@,|#_!!_#|mipsel-uclibc-gcc,g -s,@CFLAGS@,|#_!!_#|-O20 -Wall -Wextra -ffast-math -D_REENTRANT -fsigned-char -Wdeclaration-after-statement -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DUSE_MEMORY_H,g -s,@LDFLAGS@,|#_!!_#|-L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl\,--gc-sections,g -s,@CPPFLAGS@,|#_!!_#|-I/home/vicente/tomato/release/src-rt/router/libogg/include,g -s,@ac_ct_CC@,|#_!!_#|,g -s,@EXEEXT@,|#_!!_#|,g -s,@OBJEXT@,|#_!!_#|o,g -s,@DEPDIR@,|#_!!_#|.deps,g -s,@am__include@,|#_!!_#|include,g -s,@am__quote@,|#_!!_#|,g -s,@AMDEP_TRUE@,|#_!!_#|,g -s,@AMDEP_FALSE@,|#_!!_#|#,g -s,@AMDEPBACKSLASH@,|#_!!_#|\\,g -s,@CCDEPMODE@,|#_!!_#|depmode=gcc3,g -s,@am__fastdepCC_TRUE@,|#_!!_#|,g -s,@am__fastdepCC_FALSE@,|#_!!_#|#,g -CEOF -cat >"$tmp/subs-2.sed" <<\CEOF -/@[a-zA-Z_][a-zA-Z_0-9]*@/!b end -s,@CPP@,|#_!!_#|mipsel-uclibc-gcc -E,g -s,@SED@,|#_!!_#|/bin/sed,g -s,@GREP@,|#_!!_#|/bin/grep,g -s,@EGREP@,|#_!!_#|/bin/grep -E,g -s,@LN_S@,|#_!!_#|ln -s,g -s,@ECHO@,|#_!!_#|echo,g -s,@AR@,|#_!!_#|mipsel-uclibc-ar,g -s,@RANLIB@,|#_!!_#|mipsel-uclibc-ranlib,g -s,@DSYMUTIL@,|#_!!_#|,g -s,@NMEDIT@,|#_!!_#|,g -s,@DLLTOOL@,|#_!!_#|dlltool,g -s,@AS@,|#_!!_#|mipsel-uclibc-as,g -s,@OBJDUMP@,|#_!!_#|objdump,g -s,@CXX@,|#_!!_#|mipsel-linux-g++,g -s,@CXXFLAGS@,|#_!!_#|-g -O2,g -s,@ac_ct_CXX@,|#_!!_#|,g -s,@CXXDEPMODE@,|#_!!_#|depmode=gcc3,g -s,@am__fastdepCXX_TRUE@,|#_!!_#|,g -s,@am__fastdepCXX_FALSE@,|#_!!_#|#,g -s,@CXXCPP@,|#_!!_#|mipsel-linux-g++ -E,g -s,@F77@,|#_!!_#|,g -s,@FFLAGS@,|#_!!_#|,g -s,@ac_ct_F77@,|#_!!_#|,g -s,@LIBTOOL@,|#_!!_#|$(SHELL) $(top_builddir)/libtool,g -s,@PDFLATEX@,|#_!!_#|,g -s,@HTLATEX@,|#_!!_#|,g -s,@BUILD_DOCS_TRUE@,|#_!!_#|#,g -s,@BUILD_DOCS_FALSE@,|#_!!_#|,g -s,@PKG_CONFIG@,|#_!!_#|/usr/bin/pkg-config,g -s,@OGG_CFLAGS@,|#_!!_#|-I/home/vicente/tomato/release/src-rt/router/libogg/include,g -s,@OGG_LIBS@,|#_!!_#|-L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -logg,g -s,@ALLOCA@,|#_!!_#|,g -s,@LIBOBJS@,|#_!!_#| ${LIBOBJDIR}memcmp$U.o,g -s,@VORBIS_LIBS@,|#_!!_#|-lm,g -s,@DEBUG@,|#_!!_#|-g -Wall -Wextra -D_REENTRANT -D__NO_MATH_INLINES -fsigned-char,g -s,@PROFILE@,|#_!!_#|-pg -g -O20 -ffast-math -D_REENTRANT -fsigned-char,g -s,@pthread_lib@,|#_!!_#|-lpthread,g -s,@LIBTOOL_DEPS@,|#_!!_#|./ltmain.sh,g -s,@LTLIBOBJS@,|#_!!_#| ${LIBOBJDIR}memcmp$U.lo,g -:end -s/|#_!!_#|//g -CEOF -fi # test -n "$CONFIG_FILES" - - -for ac_tag in :F $CONFIG_FILES :H $CONFIG_HEADERS :C $CONFIG_COMMANDS -do - case $ac_tag in - :[FHLC]) ac_mode=$ac_tag; continue;; - esac - case $ac_mode$ac_tag in - :[FHL]*:*);; - :L* | :C*:*) { { echo "$as_me:$LINENO: error: Invalid tag $ac_tag." >&5 -echo "$as_me: error: Invalid tag $ac_tag." >&2;} - { (exit 1); exit 1; }; };; - :[FH]-) ac_tag=-:-;; - :[FH]*) ac_tag=$ac_tag:$ac_tag.in;; - esac - ac_save_IFS=$IFS - IFS=: - set x $ac_tag - IFS=$ac_save_IFS - shift - ac_file=$1 - shift - - case $ac_mode in - :L) ac_source=$1;; - :[FH]) - ac_file_inputs= - for ac_f - do - case $ac_f in - -) ac_f="$tmp/stdin";; - *) # Look for the file first in the build tree, then in the source tree - # (if the path is not absolute). The absolute path cannot be DOS-style, - # because $ac_f cannot contain `:'. - test -f "$ac_f" || - case $ac_f in - [\\/$]*) false;; - *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";; - esac || - { { echo "$as_me:$LINENO: error: cannot find input file: $ac_f" >&5 -echo "$as_me: error: cannot find input file: $ac_f" >&2;} - { (exit 1); exit 1; }; };; - esac - ac_file_inputs="$ac_file_inputs $ac_f" - done - - # Let's still pretend it is `configure' which instantiates (i.e., don't - # use $as_me), people would be surprised to read: - # /* config.h. Generated by config.status. */ - configure_input="Generated from "`IFS=: - echo $* | sed 's|^[^:]*/||;s|:[^:]*/|, |g'`" by configure." - if test x"$ac_file" != x-; then - configure_input="$ac_file. $configure_input" - { echo "$as_me:$LINENO: creating $ac_file" >&5 -echo "$as_me: creating $ac_file" >&6;} - fi - - case $ac_tag in - *:-:* | *:-) cat >"$tmp/stdin";; - esac - ;; - esac - - ac_dir=`$as_dirname -- "$ac_file" || -$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$ac_file" : 'X\(//\)[^/]' \| \ - X"$ac_file" : 'X\(//\)$' \| \ - X"$ac_file" : 'X\(/\)' \| . 2>/dev/null || -echo X"$ac_file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - { as_dir="$ac_dir" - case $as_dir in #( - -*) as_dir=./$as_dir;; - esac - test -d "$as_dir" || { $as_mkdir_p && mkdir -p "$as_dir"; } || { - as_dirs= - while :; do - case $as_dir in #( - *\'*) as_qdir=`echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #( - *) as_qdir=$as_dir;; - esac - as_dirs="'$as_qdir' $as_dirs" - as_dir=`$as_dirname -- "$as_dir" || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || -echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - test -d "$as_dir" && break - done - test -z "$as_dirs" || eval "mkdir $as_dirs" - } || test -d "$as_dir" || { { echo "$as_me:$LINENO: error: cannot create directory $as_dir" >&5 -echo "$as_me: error: cannot create directory $as_dir" >&2;} - { (exit 1); exit 1; }; }; } - ac_builddir=. - -case "$ac_dir" in -.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; -*) - ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` - # A ".." for each directory in $ac_dir_suffix. - ac_top_builddir_sub=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,/..,g;s,/,,'` - case $ac_top_builddir_sub in - "") ac_top_builddir_sub=. ac_top_build_prefix= ;; - *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; - esac ;; -esac -ac_abs_top_builddir=$ac_pwd -ac_abs_builddir=$ac_pwd$ac_dir_suffix -# for backward compatibility: -ac_top_builddir=$ac_top_build_prefix - -case $srcdir in - .) # We are building in place. - ac_srcdir=. - ac_top_srcdir=$ac_top_builddir_sub - ac_abs_top_srcdir=$ac_pwd ;; - [\\/]* | ?:[\\/]* ) # Absolute name. - ac_srcdir=$srcdir$ac_dir_suffix; - ac_top_srcdir=$srcdir - ac_abs_top_srcdir=$srcdir ;; - *) # Relative name. - ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix - ac_top_srcdir=$ac_top_build_prefix$srcdir - ac_abs_top_srcdir=$ac_pwd/$srcdir ;; -esac -ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix - - - case $ac_mode in - :F) - # - # CONFIG_FILE - # - - case $INSTALL in - [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;; - *) ac_INSTALL=$ac_top_build_prefix$INSTALL ;; - esac - ac_MKDIR_P=$MKDIR_P - case $MKDIR_P in - [\\/$]* | ?:[\\/]* ) ;; - */*) ac_MKDIR_P=$ac_top_build_prefix$MKDIR_P ;; - esac -# If the template does not know about datarootdir, expand it. -# FIXME: This hack should be removed a few years after 2.60. -ac_datarootdir_hack=; ac_datarootdir_seen= - -case `sed -n '/datarootdir/ { - p - q -} -/@datadir@/p -/@docdir@/p -/@infodir@/p -/@localedir@/p -/@mandir@/p -' $ac_file_inputs` in -*datarootdir*) ac_datarootdir_seen=yes;; -*@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*) - { echo "$as_me:$LINENO: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5 -echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;} - ac_datarootdir_hack=' - s&@datadir@&${datarootdir}&g - s&@docdir@&${datarootdir}/doc/${PACKAGE_TARNAME}&g - s&@infodir@&${datarootdir}/info&g - s&@localedir@&${datarootdir}/locale&g - s&@mandir@&${datarootdir}/man&g - s&\${datarootdir}&${prefix}/share&g' ;; -esac - sed "/^[ ]*VPATH[ ]*=/{ -s/:*\$(srcdir):*/:/ -s/:*\${srcdir}:*/:/ -s/:*@srcdir@:*/:/ -s/^\([^=]*=[ ]*\):*/\1/ -s/:*$// -s/^[^=]*=[ ]*$// -} - -:t -/@[a-zA-Z_][a-zA-Z_0-9]*@/!b -s&@configure_input@&$configure_input&;t t -s&@top_builddir@&$ac_top_builddir_sub&;t t -s&@srcdir@&$ac_srcdir&;t t -s&@abs_srcdir@&$ac_abs_srcdir&;t t -s&@top_srcdir@&$ac_top_srcdir&;t t -s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t -s&@builddir@&$ac_builddir&;t t -s&@abs_builddir@&$ac_abs_builddir&;t t -s&@abs_top_builddir@&$ac_abs_top_builddir&;t t -s&@INSTALL@&$ac_INSTALL&;t t -s&@MKDIR_P@&$ac_MKDIR_P&;t t -$ac_datarootdir_hack -" $ac_file_inputs | sed -f "$tmp/subs-1.sed" | sed -f "$tmp/subs-2.sed" >$tmp/out - -test -z "$ac_datarootdir_hack$ac_datarootdir_seen" && - { ac_out=`sed -n '/\${datarootdir}/p' "$tmp/out"`; test -n "$ac_out"; } && - { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' "$tmp/out"`; test -z "$ac_out"; } && - { echo "$as_me:$LINENO: WARNING: $ac_file contains a reference to the variable \`datarootdir' -which seems to be undefined. Please make sure it is defined." >&5 -echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir' -which seems to be undefined. Please make sure it is defined." >&2;} - - rm -f "$tmp/stdin" - case $ac_file in - -) cat "$tmp/out"; rm -f "$tmp/out";; - *) rm -f "$ac_file"; mv "$tmp/out" $ac_file;; - esac - ;; - :H) - # - # CONFIG_HEADER - # - # First, check the format of the line: - cat >"$tmp/defines.sed" <<\CEOF -/^[ ]*#[ ]*undef[ ][ ]*[_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ][_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789]*[ ]*$/b def -/^[ ]*#[ ]*define[ ][ ]*[_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ][_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789]*[( ]/b def -b -:def -s/$/ / -s,^\([ #]*\)[^ ]*\([ ]*PACKAGE_NAME\)[ (].*,\1define\2 "libvorbis" , -s,^\([ #]*\)[^ ]*\([ ]*PACKAGE_TARNAME\)[ (].*,\1define\2 "libvorbis" , -s,^\([ #]*\)[^ ]*\([ ]*PACKAGE_VERSION\)[ (].*,\1define\2 "1.2.3" , -s,^\([ #]*\)[^ ]*\([ ]*PACKAGE_STRING\)[ (].*,\1define\2 "libvorbis 1.2.3" , -s,^\([ #]*\)[^ ]*\([ ]*PACKAGE_BUGREPORT\)[ (].*,\1define\2 "vorbis-dev@xiph.org" , -s,^\([ #]*\)[^ ]*\([ ]*PACKAGE\)[ (].*,\1define\2 "libvorbis" , -s,^\([ #]*\)[^ ]*\([ ]*VERSION\)[ (].*,\1define\2 "1.2.3" , -s,^\([ #]*\)[^ ]*\([ ]*STDC_HEADERS\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_SYS_TYPES_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_SYS_STAT_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_STDLIB_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_STRING_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_MEMORY_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_STRINGS_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_INTTYPES_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_STDINT_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_UNISTD_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_DLFCN_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_ALLOCA_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_ALLOCA\)[ (].*,\1define\2 1 , -s/ $// -s,^[ #]*u.*,/* & */, -CEOF - sed -f "$tmp/defines.sed" $ac_file_inputs >"$tmp/out1" -ac_result="$tmp/out1" - if test x"$ac_file" != x-; then - echo "/* $configure_input */" >"$tmp/config.h" - cat "$ac_result" >>"$tmp/config.h" - if diff $ac_file "$tmp/config.h" >/dev/null 2>&1; then - { echo "$as_me:$LINENO: $ac_file is unchanged" >&5 -echo "$as_me: $ac_file is unchanged" >&6;} - else - rm -f $ac_file - mv "$tmp/config.h" $ac_file - fi - else - echo "/* $configure_input */" - cat "$ac_result" - fi - rm -f "$tmp/out12" -# Compute $ac_file's index in $config_headers. -_am_arg=$ac_file -_am_stamp_count=1 -for _am_header in $config_headers :; do - case $_am_header in - $_am_arg | $_am_arg:* ) - break ;; - * ) - _am_stamp_count=`expr $_am_stamp_count + 1` ;; - esac -done -echo "timestamp for $_am_arg" >`$as_dirname -- "$_am_arg" || -$as_expr X"$_am_arg" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$_am_arg" : 'X\(//\)[^/]' \| \ - X"$_am_arg" : 'X\(//\)$' \| \ - X"$_am_arg" : 'X\(/\)' \| . 2>/dev/null || -echo X"$_am_arg" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'`/stamp-h$_am_stamp_count - ;; - - :C) { echo "$as_me:$LINENO: executing $ac_file commands" >&5 -echo "$as_me: executing $ac_file commands" >&6;} - ;; - esac - - - case $ac_file$ac_mode in - "depfiles":C) test x"$AMDEP_TRUE" != x"" || for mf in $CONFIG_FILES; do - # Strip MF so we end up with the name of the file. - mf=`echo "$mf" | sed -e 's/:.*$//'` - # Check whether this is an Automake generated Makefile or not. - # We used to match only the files named `Makefile.in', but - # some people rename them; so instead we look at the file content. - # Grep'ing the first line is not enough: some people post-process - # each Makefile.in and add a new line on top of each file to say so. - # Grep'ing the whole file is not good either: AIX grep has a line - # limit of 2048, but all sed's we know have understand at least 4000. - if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then - dirpart=`$as_dirname -- "$mf" || -$as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$mf" : 'X\(//\)[^/]' \| \ - X"$mf" : 'X\(//\)$' \| \ - X"$mf" : 'X\(/\)' \| . 2>/dev/null || -echo X"$mf" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - else - continue - fi - # Extract the definition of DEPDIR, am__include, and am__quote - # from the Makefile without running `make'. - DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"` - test -z "$DEPDIR" && continue - am__include=`sed -n 's/^am__include = //p' < "$mf"` - test -z "am__include" && continue - am__quote=`sed -n 's/^am__quote = //p' < "$mf"` - # When using ansi2knr, U may be empty or an underscore; expand it - U=`sed -n 's/^U = //p' < "$mf"` - # Find all dependency output files, they are included files with - # $(DEPDIR) in their names. We invoke sed twice because it is the - # simplest approach to changing $(DEPDIR) to its actual value in the - # expansion. - for file in `sed -n " - s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \ - sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do - # Make sure the directory exists. - test -f "$dirpart/$file" && continue - fdir=`$as_dirname -- "$file" || -$as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$file" : 'X\(//\)[^/]' \| \ - X"$file" : 'X\(//\)$' \| \ - X"$file" : 'X\(/\)' \| . 2>/dev/null || -echo X"$file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - { as_dir=$dirpart/$fdir - case $as_dir in #( - -*) as_dir=./$as_dir;; - esac - test -d "$as_dir" || { $as_mkdir_p && mkdir -p "$as_dir"; } || { - as_dirs= - while :; do - case $as_dir in #( - *\'*) as_qdir=`echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #( - *) as_qdir=$as_dir;; - esac - as_dirs="'$as_qdir' $as_dirs" - as_dir=`$as_dirname -- "$as_dir" || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || -echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - test -d "$as_dir" && break - done - test -z "$as_dirs" || eval "mkdir $as_dirs" - } || test -d "$as_dir" || { { echo "$as_me:$LINENO: error: cannot create directory $as_dir" >&5 -echo "$as_me: error: cannot create directory $as_dir" >&2;} - { (exit 1); exit 1; }; }; } - # echo "creating $dirpart/$file" - echo '# dummy' > "$dirpart/$file" - done -done - ;; - - esac -done # for ac_tag - - -{ (exit 0); exit 0; } diff --git a/release/src/router/libvorbis/doc/Makefile b/release/src/router/libvorbis/doc/Makefile index 1726da0164..7e84844cb5 100644 --- a/release/src/router/libvorbis/doc/Makefile +++ b/release/src/router/libvorbis/doc/Makefile @@ -67,21 +67,21 @@ ETAGS = etags CTAGS = ctags DIST_SUBDIRS = $(SUBDIRS) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run aclocal-1.10 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run aclocal-1.10 ACLOCAL_AMFLAGS = -I m4 ALLOCA = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run tar AR = mipsel-uclibc-ar AS = mipsel-uclibc-as -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run automake-1.10 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run automake-1.10 AWK = gawk CC = mipsel-uclibc-gcc CCDEPMODE = depmode=gcc3 CFLAGS = -O20 -Wall -Wextra -ffast-math -D_REENTRANT -fsigned-char -Wdeclaration-after-statement -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DUSE_MEMORY_H CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -I/home/vicente/tomato/release/src-rt/router/libogg/include +CPPFLAGS = -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -107,20 +107,20 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBOBJS = ${LIBOBJDIR}memcmp$U.o LIBS = LIBTOOL = $(SHELL) $(top_builddir)/libtool LIBTOOL_DEPS = ./ltmain.sh LN_S = ln -s LTLIBOBJS = ${LIBOBJDIR}memcmp$U.lo -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run makeinfo MKDIR_P = /bin/mkdir -p NMEDIT = OBJDUMP = objdump OBJEXT = o -OGG_CFLAGS = -I/home/vicente/tomato/release/src-rt/router/libogg/include -OGG_LIBS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -logg +OGG_CFLAGS = -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include +OGG_LIBS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -logg PACKAGE = libvorbis PACKAGE_BUGREPORT = vorbis-dev@xiph.org PACKAGE_NAME = libvorbis @@ -147,10 +147,10 @@ VORBIS_LIBS = -lm V_LIB_AGE = 4 V_LIB_CURRENT = 4 V_LIB_REVISION = 3 -abs_builddir = /home/vicente/tomato/release/src/router/libvorbis/doc -abs_srcdir = /home/vicente/tomato/release/src/router/libvorbis/doc -abs_top_builddir = /home/vicente/tomato/release/src/router/libvorbis -abs_top_srcdir = /home/vicente/tomato/release/src/router/libvorbis +abs_builddir = /home/vicente/repos/tomato/release/src/router/libvorbis/doc +abs_srcdir = /home/vicente/repos/tomato/release/src/router/libvorbis/doc +abs_top_builddir = /home/vicente/repos/tomato/release/src/router/libvorbis +abs_top_srcdir = /home/vicente/repos/tomato/release/src/router/libvorbis ac_ct_CC = ac_ct_CXX = ac_ct_F77 = @@ -179,7 +179,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = $(SHELL) /home/vicente/tomato/release/src/router/libvorbis/install-sh +install_sh = $(SHELL) /home/vicente/repos/tomato/release/src/router/libvorbis/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = ${datarootdir}/locale diff --git a/release/src/router/libvorbis/doc/vorbisenc/Makefile b/release/src/router/libvorbis/doc/vorbisenc/Makefile index a043a2d474..2ad840fe58 100644 --- a/release/src/router/libvorbis/doc/vorbisenc/Makefile +++ b/release/src/router/libvorbis/doc/vorbisenc/Makefile @@ -55,21 +55,21 @@ am__installdirs = "$(DESTDIR)$(docdir)" docDATA_INSTALL = $(INSTALL_DATA) DATA = $(doc_DATA) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run aclocal-1.10 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run aclocal-1.10 ACLOCAL_AMFLAGS = -I m4 ALLOCA = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run tar AR = mipsel-uclibc-ar AS = mipsel-uclibc-as -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run automake-1.10 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run automake-1.10 AWK = gawk CC = mipsel-uclibc-gcc CCDEPMODE = depmode=gcc3 CFLAGS = -O20 -Wall -Wextra -ffast-math -D_REENTRANT -fsigned-char -Wdeclaration-after-statement -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DUSE_MEMORY_H CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -I/home/vicente/tomato/release/src-rt/router/libogg/include +CPPFLAGS = -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -95,20 +95,20 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBOBJS = ${LIBOBJDIR}memcmp$U.o LIBS = LIBTOOL = $(SHELL) $(top_builddir)/libtool LIBTOOL_DEPS = ./ltmain.sh LN_S = ln -s LTLIBOBJS = ${LIBOBJDIR}memcmp$U.lo -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run makeinfo MKDIR_P = /bin/mkdir -p NMEDIT = OBJDUMP = objdump OBJEXT = o -OGG_CFLAGS = -I/home/vicente/tomato/release/src-rt/router/libogg/include -OGG_LIBS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -logg +OGG_CFLAGS = -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include +OGG_LIBS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -logg PACKAGE = libvorbis PACKAGE_BUGREPORT = vorbis-dev@xiph.org PACKAGE_NAME = libvorbis @@ -135,10 +135,10 @@ VORBIS_LIBS = -lm V_LIB_AGE = 4 V_LIB_CURRENT = 4 V_LIB_REVISION = 3 -abs_builddir = /home/vicente/tomato/release/src/router/libvorbis/doc/vorbisenc -abs_srcdir = /home/vicente/tomato/release/src/router/libvorbis/doc/vorbisenc -abs_top_builddir = /home/vicente/tomato/release/src/router/libvorbis -abs_top_srcdir = /home/vicente/tomato/release/src/router/libvorbis +abs_builddir = /home/vicente/repos/tomato/release/src/router/libvorbis/doc/vorbisenc +abs_srcdir = /home/vicente/repos/tomato/release/src/router/libvorbis/doc/vorbisenc +abs_top_builddir = /home/vicente/repos/tomato/release/src/router/libvorbis +abs_top_srcdir = /home/vicente/repos/tomato/release/src/router/libvorbis ac_ct_CC = ac_ct_CXX = ac_ct_F77 = @@ -167,7 +167,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = $(SHELL) /home/vicente/tomato/release/src/router/libvorbis/install-sh +install_sh = $(SHELL) /home/vicente/repos/tomato/release/src/router/libvorbis/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = ${datarootdir}/locale diff --git a/release/src/router/libvorbis/doc/vorbisfile/Makefile b/release/src/router/libvorbis/doc/vorbisfile/Makefile index 5c5a12bf33..8fb7983e52 100644 --- a/release/src/router/libvorbis/doc/vorbisfile/Makefile +++ b/release/src/router/libvorbis/doc/vorbisfile/Makefile @@ -55,21 +55,21 @@ am__installdirs = "$(DESTDIR)$(docdir)" docDATA_INSTALL = $(INSTALL_DATA) DATA = $(doc_DATA) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run aclocal-1.10 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run aclocal-1.10 ACLOCAL_AMFLAGS = -I m4 ALLOCA = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run tar AR = mipsel-uclibc-ar AS = mipsel-uclibc-as -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run automake-1.10 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run automake-1.10 AWK = gawk CC = mipsel-uclibc-gcc CCDEPMODE = depmode=gcc3 CFLAGS = -O20 -Wall -Wextra -ffast-math -D_REENTRANT -fsigned-char -Wdeclaration-after-statement -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DUSE_MEMORY_H CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -I/home/vicente/tomato/release/src-rt/router/libogg/include +CPPFLAGS = -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -95,20 +95,20 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBOBJS = ${LIBOBJDIR}memcmp$U.o LIBS = LIBTOOL = $(SHELL) $(top_builddir)/libtool LIBTOOL_DEPS = ./ltmain.sh LN_S = ln -s LTLIBOBJS = ${LIBOBJDIR}memcmp$U.lo -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run makeinfo MKDIR_P = /bin/mkdir -p NMEDIT = OBJDUMP = objdump OBJEXT = o -OGG_CFLAGS = -I/home/vicente/tomato/release/src-rt/router/libogg/include -OGG_LIBS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -logg +OGG_CFLAGS = -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include +OGG_LIBS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -logg PACKAGE = libvorbis PACKAGE_BUGREPORT = vorbis-dev@xiph.org PACKAGE_NAME = libvorbis @@ -135,10 +135,10 @@ VORBIS_LIBS = -lm V_LIB_AGE = 4 V_LIB_CURRENT = 4 V_LIB_REVISION = 3 -abs_builddir = /home/vicente/tomato/release/src/router/libvorbis/doc/vorbisfile -abs_srcdir = /home/vicente/tomato/release/src/router/libvorbis/doc/vorbisfile -abs_top_builddir = /home/vicente/tomato/release/src/router/libvorbis -abs_top_srcdir = /home/vicente/tomato/release/src/router/libvorbis +abs_builddir = /home/vicente/repos/tomato/release/src/router/libvorbis/doc/vorbisfile +abs_srcdir = /home/vicente/repos/tomato/release/src/router/libvorbis/doc/vorbisfile +abs_top_builddir = /home/vicente/repos/tomato/release/src/router/libvorbis +abs_top_srcdir = /home/vicente/repos/tomato/release/src/router/libvorbis ac_ct_CC = ac_ct_CXX = ac_ct_F77 = @@ -167,7 +167,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = $(SHELL) /home/vicente/tomato/release/src/router/libvorbis/install-sh +install_sh = $(SHELL) /home/vicente/repos/tomato/release/src/router/libvorbis/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = ${datarootdir}/locale diff --git a/release/src/router/libvorbis/examples/Makefile b/release/src/router/libvorbis/examples/Makefile index aade6bde0b..adf26cb453 100644 --- a/release/src/router/libvorbis/examples/Makefile +++ b/release/src/router/libvorbis/examples/Makefile @@ -88,21 +88,21 @@ DIST_SOURCES = $(chaining_example_SOURCES) $(decoder_example_SOURCES) \ ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run aclocal-1.10 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run aclocal-1.10 ACLOCAL_AMFLAGS = -I m4 ALLOCA = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run tar AR = mipsel-uclibc-ar AS = mipsel-uclibc-as -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run automake-1.10 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run automake-1.10 AWK = gawk CC = mipsel-uclibc-gcc CCDEPMODE = depmode=gcc3 CFLAGS = -O20 -Wall -Wextra -ffast-math -D_REENTRANT -fsigned-char -Wdeclaration-after-statement -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DUSE_MEMORY_H CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -I/home/vicente/tomato/release/src-rt/router/libogg/include +CPPFLAGS = -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -128,20 +128,20 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBOBJS = ${LIBOBJDIR}memcmp$U.o LIBS = LIBTOOL = $(SHELL) $(top_builddir)/libtool LIBTOOL_DEPS = ./ltmain.sh LN_S = ln -s LTLIBOBJS = ${LIBOBJDIR}memcmp$U.lo -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run makeinfo MKDIR_P = /bin/mkdir -p NMEDIT = OBJDUMP = objdump OBJEXT = o -OGG_CFLAGS = -I/home/vicente/tomato/release/src-rt/router/libogg/include -OGG_LIBS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -logg +OGG_CFLAGS = -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include +OGG_LIBS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -logg PACKAGE = libvorbis PACKAGE_BUGREPORT = vorbis-dev@xiph.org PACKAGE_NAME = libvorbis @@ -168,10 +168,10 @@ VORBIS_LIBS = -lm V_LIB_AGE = 4 V_LIB_CURRENT = 4 V_LIB_REVISION = 3 -abs_builddir = /home/vicente/tomato/release/src/router/libvorbis/examples -abs_srcdir = /home/vicente/tomato/release/src/router/libvorbis/examples -abs_top_builddir = /home/vicente/tomato/release/src/router/libvorbis -abs_top_srcdir = /home/vicente/tomato/release/src/router/libvorbis +abs_builddir = /home/vicente/repos/tomato/release/src/router/libvorbis/examples +abs_srcdir = /home/vicente/repos/tomato/release/src/router/libvorbis/examples +abs_top_builddir = /home/vicente/repos/tomato/release/src/router/libvorbis +abs_top_srcdir = /home/vicente/repos/tomato/release/src/router/libvorbis ac_ct_CC = ac_ct_CXX = ac_ct_F77 = @@ -200,7 +200,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = $(SHELL) /home/vicente/tomato/release/src/router/libvorbis/install-sh +install_sh = $(SHELL) /home/vicente/repos/tomato/release/src/router/libvorbis/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = ${datarootdir}/locale @@ -225,7 +225,7 @@ target_vendor = unknown top_builddir = .. top_srcdir = .. AUTOMAKE_OPTIONS = foreign -INCLUDES = -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include +INCLUDES = -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include EXTRA_DIST = frameview.pl # uncomment to build static executables from the example code diff --git a/release/src/router/libvorbis/include/Makefile b/release/src/router/libvorbis/include/Makefile index b6cba5fe52..42f9aaf8c5 100644 --- a/release/src/router/libvorbis/include/Makefile +++ b/release/src/router/libvorbis/include/Makefile @@ -57,21 +57,21 @@ ETAGS = etags CTAGS = ctags DIST_SUBDIRS = $(SUBDIRS) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run aclocal-1.10 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run aclocal-1.10 ACLOCAL_AMFLAGS = -I m4 ALLOCA = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run tar AR = mipsel-uclibc-ar AS = mipsel-uclibc-as -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run automake-1.10 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run automake-1.10 AWK = gawk CC = mipsel-uclibc-gcc CCDEPMODE = depmode=gcc3 CFLAGS = -O20 -Wall -Wextra -ffast-math -D_REENTRANT -fsigned-char -Wdeclaration-after-statement -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DUSE_MEMORY_H CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -I/home/vicente/tomato/release/src-rt/router/libogg/include +CPPFLAGS = -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -97,20 +97,20 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBOBJS = ${LIBOBJDIR}memcmp$U.o LIBS = LIBTOOL = $(SHELL) $(top_builddir)/libtool LIBTOOL_DEPS = ./ltmain.sh LN_S = ln -s LTLIBOBJS = ${LIBOBJDIR}memcmp$U.lo -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run makeinfo MKDIR_P = /bin/mkdir -p NMEDIT = OBJDUMP = objdump OBJEXT = o -OGG_CFLAGS = -I/home/vicente/tomato/release/src-rt/router/libogg/include -OGG_LIBS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -logg +OGG_CFLAGS = -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include +OGG_LIBS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -logg PACKAGE = libvorbis PACKAGE_BUGREPORT = vorbis-dev@xiph.org PACKAGE_NAME = libvorbis @@ -137,10 +137,10 @@ VORBIS_LIBS = -lm V_LIB_AGE = 4 V_LIB_CURRENT = 4 V_LIB_REVISION = 3 -abs_builddir = /home/vicente/tomato/release/src/router/libvorbis/include -abs_srcdir = /home/vicente/tomato/release/src/router/libvorbis/include -abs_top_builddir = /home/vicente/tomato/release/src/router/libvorbis -abs_top_srcdir = /home/vicente/tomato/release/src/router/libvorbis +abs_builddir = /home/vicente/repos/tomato/release/src/router/libvorbis/include +abs_srcdir = /home/vicente/repos/tomato/release/src/router/libvorbis/include +abs_top_builddir = /home/vicente/repos/tomato/release/src/router/libvorbis +abs_top_srcdir = /home/vicente/repos/tomato/release/src/router/libvorbis ac_ct_CC = ac_ct_CXX = ac_ct_F77 = @@ -169,7 +169,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = $(SHELL) /home/vicente/tomato/release/src/router/libvorbis/install-sh +install_sh = $(SHELL) /home/vicente/repos/tomato/release/src/router/libvorbis/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = ${datarootdir}/locale diff --git a/release/src/router/libvorbis/include/vorbis/Makefile b/release/src/router/libvorbis/include/vorbis/Makefile index 580e808d59..7e5733e195 100644 --- a/release/src/router/libvorbis/include/vorbis/Makefile +++ b/release/src/router/libvorbis/include/vorbis/Makefile @@ -58,21 +58,21 @@ HEADERS = $(vorbisinclude_HEADERS) ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run aclocal-1.10 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run aclocal-1.10 ACLOCAL_AMFLAGS = -I m4 ALLOCA = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run tar AR = mipsel-uclibc-ar AS = mipsel-uclibc-as -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run automake-1.10 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run automake-1.10 AWK = gawk CC = mipsel-uclibc-gcc CCDEPMODE = depmode=gcc3 CFLAGS = -O20 -Wall -Wextra -ffast-math -D_REENTRANT -fsigned-char -Wdeclaration-after-statement -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DUSE_MEMORY_H CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -I/home/vicente/tomato/release/src-rt/router/libogg/include +CPPFLAGS = -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -98,20 +98,20 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBOBJS = ${LIBOBJDIR}memcmp$U.o LIBS = LIBTOOL = $(SHELL) $(top_builddir)/libtool LIBTOOL_DEPS = ./ltmain.sh LN_S = ln -s LTLIBOBJS = ${LIBOBJDIR}memcmp$U.lo -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run makeinfo MKDIR_P = /bin/mkdir -p NMEDIT = OBJDUMP = objdump OBJEXT = o -OGG_CFLAGS = -I/home/vicente/tomato/release/src-rt/router/libogg/include -OGG_LIBS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -logg +OGG_CFLAGS = -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include +OGG_LIBS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -logg PACKAGE = libvorbis PACKAGE_BUGREPORT = vorbis-dev@xiph.org PACKAGE_NAME = libvorbis @@ -138,10 +138,10 @@ VORBIS_LIBS = -lm V_LIB_AGE = 4 V_LIB_CURRENT = 4 V_LIB_REVISION = 3 -abs_builddir = /home/vicente/tomato/release/src/router/libvorbis/include/vorbis -abs_srcdir = /home/vicente/tomato/release/src/router/libvorbis/include/vorbis -abs_top_builddir = /home/vicente/tomato/release/src/router/libvorbis -abs_top_srcdir = /home/vicente/tomato/release/src/router/libvorbis +abs_builddir = /home/vicente/repos/tomato/release/src/router/libvorbis/include/vorbis +abs_srcdir = /home/vicente/repos/tomato/release/src/router/libvorbis/include/vorbis +abs_top_builddir = /home/vicente/repos/tomato/release/src/router/libvorbis +abs_top_srcdir = /home/vicente/repos/tomato/release/src/router/libvorbis ac_ct_CC = ac_ct_CXX = ac_ct_F77 = @@ -170,7 +170,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = $(SHELL) /home/vicente/tomato/release/src/router/libvorbis/install-sh +install_sh = $(SHELL) /home/vicente/repos/tomato/release/src/router/libvorbis/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = ${datarootdir}/locale diff --git a/release/src/router/libvorbis/lib/.deps/analysis.Plo b/release/src/router/libvorbis/lib/.deps/analysis.Plo index 4fb4821ef0..f977774f1b 100644 --- a/release/src/router/libvorbis/lib/.deps/analysis.Plo +++ b/release/src/router/libvorbis/lib/.deps/analysis.Plo @@ -33,15 +33,15 @@ analysis.lo analysis.o: analysis.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/mathdef.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sgidefs.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/mathcalls.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/ogg.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/os_types.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/ogg.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/os_types.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/types.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/endian.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/endian.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/select.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/select.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/sysmacros.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/config_types.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/config_types.h \ ../include/vorbis/codec.h codec_internal.h envelope.h mdct.h codebook.h \ psy.h smallft.h backends.h bitrate.h os.h ../config.h misc.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/alloca.h \ @@ -116,9 +116,9 @@ analysis.lo analysis.o: analysis.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/mathcalls.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/ogg.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/ogg.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/os_types.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/os_types.h: /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/types.h: @@ -132,7 +132,7 @@ analysis.lo analysis.o: analysis.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/sysmacros.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/config_types.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/config_types.h: ../include/vorbis/codec.h: diff --git a/release/src/router/libvorbis/lib/.deps/bitrate.Plo b/release/src/router/libvorbis/lib/.deps/bitrate.Plo index 6bfa27074c..90421adca0 100644 --- a/release/src/router/libvorbis/lib/.deps/bitrate.Plo +++ b/release/src/router/libvorbis/lib/.deps/bitrate.Plo @@ -27,9 +27,9 @@ bitrate.lo bitrate.o: bitrate.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/mathdef.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sgidefs.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/mathcalls.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/ogg.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/os_types.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/config_types.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/ogg.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/os_types.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/config_types.h \ ../include/vorbis/codec.h codec_internal.h envelope.h mdct.h codebook.h \ psy.h smallft.h backends.h bitrate.h os.h ../config.h misc.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/memory.h \ @@ -91,11 +91,11 @@ bitrate.lo bitrate.o: bitrate.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/mathcalls.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/ogg.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/ogg.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/os_types.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/os_types.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/config_types.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/config_types.h: ../include/vorbis/codec.h: diff --git a/release/src/router/libvorbis/lib/.deps/block.Plo b/release/src/router/libvorbis/lib/.deps/block.Plo index 5f1c543292..4eb629ef3e 100644 --- a/release/src/router/libvorbis/lib/.deps/block.Plo +++ b/release/src/router/libvorbis/lib/.deps/block.Plo @@ -36,9 +36,9 @@ block.lo block.o: block.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/sysmacros.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/alloca.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/string.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/ogg.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/os_types.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/config_types.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/ogg.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/os_types.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/config_types.h \ ../include/vorbis/codec.h codec_internal.h envelope.h mdct.h codebook.h \ psy.h smallft.h backends.h bitrate.h os.h ../config.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/math.h \ @@ -124,11 +124,11 @@ block.lo block.o: block.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/string.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/ogg.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/ogg.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/os_types.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/os_types.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/config_types.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/config_types.h: ../include/vorbis/codec.h: diff --git a/release/src/router/libvorbis/lib/.deps/codebook.Plo b/release/src/router/libvorbis/lib/.deps/codebook.Plo index 07f757c455..6080595ad3 100644 --- a/release/src/router/libvorbis/lib/.deps/codebook.Plo +++ b/release/src/router/libvorbis/lib/.deps/codebook.Plo @@ -27,9 +27,9 @@ codebook.lo codebook.o: codebook.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/mathdef.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sgidefs.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/mathcalls.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/ogg.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/os_types.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/config_types.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/ogg.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/os_types.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/config_types.h \ ../include/vorbis/codec.h codebook.h scales.h os.h ../config.h misc.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/memory.h @@ -89,11 +89,11 @@ codebook.lo codebook.o: codebook.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/mathcalls.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/ogg.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/ogg.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/os_types.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/os_types.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/config_types.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/config_types.h: ../include/vorbis/codec.h: diff --git a/release/src/router/libvorbis/lib/.deps/envelope.Plo b/release/src/router/libvorbis/lib/.deps/envelope.Plo index e4c1eaa739..85004079f7 100644 --- a/release/src/router/libvorbis/lib/.deps/envelope.Plo +++ b/release/src/router/libvorbis/lib/.deps/envelope.Plo @@ -41,9 +41,9 @@ envelope.lo envelope.o: envelope.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/mathdef.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sgidefs.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/mathcalls.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/ogg.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/os_types.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/config_types.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/ogg.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/os_types.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/config_types.h \ ../include/vorbis/codec.h codec_internal.h envelope.h mdct.h codebook.h \ psy.h smallft.h backends.h bitrate.h os.h ../config.h misc.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/memory.h \ @@ -133,11 +133,11 @@ envelope.lo envelope.o: envelope.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/mathcalls.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/ogg.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/ogg.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/os_types.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/os_types.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/config_types.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/config_types.h: ../include/vorbis/codec.h: diff --git a/release/src/router/libvorbis/lib/.deps/floor0.Plo b/release/src/router/libvorbis/lib/.deps/floor0.Plo index 1e20b495fc..d8734c7125 100644 --- a/release/src/router/libvorbis/lib/.deps/floor0.Plo +++ b/release/src/router/libvorbis/lib/.deps/floor0.Plo @@ -27,9 +27,9 @@ floor0.lo floor0.o: floor0.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/mathdef.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sgidefs.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/mathcalls.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/ogg.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/os_types.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/config_types.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/ogg.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/os_types.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/config_types.h \ ../include/vorbis/codec.h codec_internal.h envelope.h mdct.h codebook.h \ psy.h smallft.h backends.h bitrate.h os.h ../config.h misc.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/memory.h \ @@ -105,11 +105,11 @@ floor0.lo floor0.o: floor0.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/mathcalls.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/ogg.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/ogg.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/os_types.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/os_types.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/config_types.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/config_types.h: ../include/vorbis/codec.h: diff --git a/release/src/router/libvorbis/lib/.deps/floor1.Plo b/release/src/router/libvorbis/lib/.deps/floor1.Plo index cd5de4e672..c05616680a 100644 --- a/release/src/router/libvorbis/lib/.deps/floor1.Plo +++ b/release/src/router/libvorbis/lib/.deps/floor1.Plo @@ -27,9 +27,9 @@ floor1.lo floor1.o: floor1.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/mathdef.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sgidefs.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/mathcalls.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/ogg.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/os_types.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/config_types.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/ogg.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/os_types.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/config_types.h \ ../include/vorbis/codec.h codec_internal.h envelope.h mdct.h codebook.h \ psy.h smallft.h backends.h bitrate.h os.h ../config.h misc.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/memory.h \ @@ -105,11 +105,11 @@ floor1.lo floor1.o: floor1.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/mathcalls.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/ogg.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/ogg.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/os_types.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/os_types.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/config_types.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/config_types.h: ../include/vorbis/codec.h: diff --git a/release/src/router/libvorbis/lib/.deps/info.Plo b/release/src/router/libvorbis/lib/.deps/info.Plo index 7a48e51826..839f67bd15 100644 --- a/release/src/router/libvorbis/lib/.deps/info.Plo +++ b/release/src/router/libvorbis/lib/.deps/info.Plo @@ -24,9 +24,9 @@ info.lo info.o: info.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/string.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/ctype.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_touplow.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/ogg.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/os_types.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/config_types.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/ogg.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/os_types.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/config_types.h \ ../include/vorbis/codec.h codec_internal.h envelope.h mdct.h codebook.h \ psy.h smallft.h backends.h bitrate.h os.h ../config.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/math.h \ @@ -88,11 +88,11 @@ info.lo info.o: info.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_touplow.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/ogg.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/ogg.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/os_types.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/os_types.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/config_types.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/config_types.h: ../include/vorbis/codec.h: diff --git a/release/src/router/libvorbis/lib/.deps/lookup.Plo b/release/src/router/libvorbis/lib/.deps/lookup.Plo index e68a847b74..c6b2a63912 100644 --- a/release/src/router/libvorbis/lib/.deps/lookup.Plo +++ b/release/src/router/libvorbis/lib/.deps/lookup.Plo @@ -9,7 +9,7 @@ lookup.lo lookup.o: lookup.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sgidefs.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/mathcalls.h \ lookup.h lookup_data.h os.h ../config.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/os_types.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/os_types.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/types.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/types.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/wordsize.h \ @@ -26,9 +26,9 @@ lookup.lo lookup.o: lookup.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigset.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/time.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/sysmacros.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/config_types.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/config_types.h \ misc.h ../include/vorbis/codec.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/ogg.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/ogg.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/alloca.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/memory.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/string.h @@ -59,7 +59,7 @@ os.h: ../config.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/os_types.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/os_types.h: /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/types.h: @@ -93,13 +93,13 @@ os.h: /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/sysmacros.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/config_types.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/config_types.h: misc.h: ../include/vorbis/codec.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/ogg.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/ogg.h: /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/alloca.h: diff --git a/release/src/router/libvorbis/lib/.deps/lpc.Plo b/release/src/router/libvorbis/lib/.deps/lpc.Plo index ac84264633..0bd7d47ef8 100644 --- a/release/src/router/libvorbis/lib/.deps/lpc.Plo +++ b/release/src/router/libvorbis/lib/.deps/lpc.Plo @@ -28,10 +28,10 @@ lpc.lo lpc.o: lpc.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sgidefs.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/mathcalls.h \ os.h ../config.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/os_types.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/config_types.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/os_types.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/config_types.h \ misc.h ../include/vorbis/codec.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/ogg.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/ogg.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/memory.h \ smallft.h lpc.h scales.h @@ -95,15 +95,15 @@ os.h: ../config.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/os_types.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/os_types.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/config_types.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/config_types.h: misc.h: ../include/vorbis/codec.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/ogg.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/ogg.h: /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/memory.h: diff --git a/release/src/router/libvorbis/lib/.deps/lsp.Plo b/release/src/router/libvorbis/lib/.deps/lsp.Plo index 1e5d01bd17..95248deb5b 100644 --- a/release/src/router/libvorbis/lib/.deps/lsp.Plo +++ b/release/src/router/libvorbis/lib/.deps/lsp.Plo @@ -28,10 +28,10 @@ lsp.lo lsp.o: lsp.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/sysmacros.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/alloca.h \ lsp.h os.h ../config.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/os_types.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/config_types.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/os_types.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/config_types.h \ misc.h ../include/vorbis/codec.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/ogg.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/ogg.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/memory.h \ lookup.h scales.h @@ -97,15 +97,15 @@ os.h: ../config.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/os_types.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/os_types.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/config_types.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/config_types.h: misc.h: ../include/vorbis/codec.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/ogg.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/ogg.h: /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/memory.h: diff --git a/release/src/router/libvorbis/lib/.deps/mapping0.Plo b/release/src/router/libvorbis/lib/.deps/mapping0.Plo index a6ec62c712..173bc5dd8c 100644 --- a/release/src/router/libvorbis/lib/.deps/mapping0.Plo +++ b/release/src/router/libvorbis/lib/.deps/mapping0.Plo @@ -41,9 +41,9 @@ mapping0.lo mapping0.o: mapping0.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/mathdef.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sgidefs.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/mathcalls.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/ogg.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/os_types.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/config_types.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/ogg.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/os_types.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/config_types.h \ ../include/vorbis/codec.h codec_internal.h envelope.h mdct.h codebook.h \ psy.h smallft.h backends.h bitrate.h os.h ../config.h misc.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/memory.h \ @@ -133,11 +133,11 @@ mapping0.lo mapping0.o: mapping0.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/mathcalls.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/ogg.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/ogg.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/os_types.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/os_types.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/config_types.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/config_types.h: ../include/vorbis/codec.h: diff --git a/release/src/router/libvorbis/lib/.deps/mdct.Plo b/release/src/router/libvorbis/lib/.deps/mdct.Plo index 0825bc074c..16556ed2aa 100644 --- a/release/src/router/libvorbis/lib/.deps/mdct.Plo +++ b/release/src/router/libvorbis/lib/.deps/mdct.Plo @@ -42,9 +42,9 @@ mdct.lo mdct.o: mdct.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sgidefs.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/mathcalls.h \ ../include/vorbis/codec.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/ogg.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/os_types.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/config_types.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/ogg.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/os_types.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/config_types.h \ mdct.h os.h ../config.h misc.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/memory.h @@ -134,11 +134,11 @@ mdct.lo mdct.o: mdct.c \ ../include/vorbis/codec.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/ogg.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/ogg.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/os_types.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/os_types.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/config_types.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/config_types.h: mdct.h: diff --git a/release/src/router/libvorbis/lib/.deps/psy.Plo b/release/src/router/libvorbis/lib/.deps/psy.Plo index 0108ad8c26..80451a4a98 100644 --- a/release/src/router/libvorbis/lib/.deps/psy.Plo +++ b/release/src/router/libvorbis/lib/.deps/psy.Plo @@ -28,9 +28,9 @@ psy.lo psy.o: psy.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/mathcalls.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/string.h \ ../include/vorbis/codec.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/ogg.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/os_types.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/config_types.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/ogg.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/os_types.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/config_types.h \ codec_internal.h envelope.h mdct.h codebook.h psy.h smallft.h \ backends.h bitrate.h os.h ../config.h misc.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/memory.h \ @@ -108,11 +108,11 @@ psy.lo psy.o: psy.c \ ../include/vorbis/codec.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/ogg.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/ogg.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/os_types.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/os_types.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/config_types.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/config_types.h: codec_internal.h: diff --git a/release/src/router/libvorbis/lib/.deps/registry.Plo b/release/src/router/libvorbis/lib/.deps/registry.Plo index c0cc0e8c8e..fe3a43cc09 100644 --- a/release/src/router/libvorbis/lib/.deps/registry.Plo +++ b/release/src/router/libvorbis/lib/.deps/registry.Plo @@ -1,7 +1,7 @@ registry.lo registry.o: registry.c ../include/vorbis/codec.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/ogg.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/ogg.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stddef.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/os_types.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/os_types.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/types.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/features.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_config.h \ @@ -21,7 +21,7 @@ registry.lo registry.o: registry.c ../include/vorbis/codec.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/sigset.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/time.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/sysmacros.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/config_types.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/config_types.h \ codec_internal.h envelope.h mdct.h codebook.h psy.h smallft.h \ backends.h bitrate.h os.h ../config.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/math.h \ @@ -37,11 +37,11 @@ registry.lo registry.o: registry.c ../include/vorbis/codec.h \ ../include/vorbis/codec.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/ogg.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/ogg.h: /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stddef.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/os_types.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/os_types.h: /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/types.h: @@ -81,7 +81,7 @@ registry.lo registry.o: registry.c ../include/vorbis/codec.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/sysmacros.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/config_types.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/config_types.h: codec_internal.h: diff --git a/release/src/router/libvorbis/lib/.deps/res0.Plo b/release/src/router/libvorbis/lib/.deps/res0.Plo index 4735375e31..ae6ccb1f1c 100644 --- a/release/src/router/libvorbis/lib/.deps/res0.Plo +++ b/release/src/router/libvorbis/lib/.deps/res0.Plo @@ -27,9 +27,9 @@ res0.lo res0.o: res0.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/mathdef.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sgidefs.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/mathcalls.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/ogg.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/os_types.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/config_types.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/ogg.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/os_types.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/config_types.h \ ../include/vorbis/codec.h codec_internal.h envelope.h mdct.h codebook.h \ psy.h smallft.h backends.h bitrate.h os.h ../config.h misc.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/memory.h \ @@ -91,11 +91,11 @@ res0.lo res0.o: res0.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/mathcalls.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/ogg.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/ogg.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/os_types.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/os_types.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/config_types.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/config_types.h: ../include/vorbis/codec.h: diff --git a/release/src/router/libvorbis/lib/.deps/sharedbook.Plo b/release/src/router/libvorbis/lib/.deps/sharedbook.Plo index a650071037..175cbdd4f9 100644 --- a/release/src/router/libvorbis/lib/.deps/sharedbook.Plo +++ b/release/src/router/libvorbis/lib/.deps/sharedbook.Plo @@ -27,9 +27,9 @@ sharedbook.lo sharedbook.o: sharedbook.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sgidefs.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/mathcalls.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/string.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/ogg.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/os_types.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/config_types.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/ogg.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/os_types.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/config_types.h \ os.h ../config.h misc.h ../include/vorbis/codec.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/memory.h \ codebook.h scales.h @@ -90,11 +90,11 @@ sharedbook.lo sharedbook.o: sharedbook.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/string.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/ogg.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/ogg.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/os_types.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/os_types.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/config_types.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/config_types.h: os.h: diff --git a/release/src/router/libvorbis/lib/.deps/smallft.Plo b/release/src/router/libvorbis/lib/.deps/smallft.Plo index e4a1d543e6..480409d064 100644 --- a/release/src/router/libvorbis/lib/.deps/smallft.Plo +++ b/release/src/router/libvorbis/lib/.deps/smallft.Plo @@ -28,9 +28,9 @@ smallft.lo smallft.o: smallft.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sgidefs.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/mathcalls.h \ smallft.h ../include/vorbis/codec.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/ogg.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/os_types.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/config_types.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/ogg.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/os_types.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/config_types.h \ os.h ../config.h misc.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/memory.h @@ -94,11 +94,11 @@ smallft.h: ../include/vorbis/codec.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/ogg.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/ogg.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/os_types.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/os_types.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/config_types.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/config_types.h: os.h: diff --git a/release/src/router/libvorbis/lib/.deps/synthesis.Plo b/release/src/router/libvorbis/lib/.deps/synthesis.Plo index 4e4a33b16c..c8818a62fd 100644 --- a/release/src/router/libvorbis/lib/.deps/synthesis.Plo +++ b/release/src/router/libvorbis/lib/.deps/synthesis.Plo @@ -27,15 +27,15 @@ synthesis.lo synthesis.o: synthesis.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/uClibc_pthread.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/stdio_lim.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/ogg.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/os_types.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/ogg.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/os_types.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/types.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/endian.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/endian.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/select.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/select.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/sysmacros.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/config_types.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/config_types.h \ ../include/vorbis/codec.h codec_internal.h envelope.h mdct.h codebook.h \ psy.h smallft.h backends.h bitrate.h os.h ../config.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/math.h \ @@ -105,9 +105,9 @@ synthesis.lo synthesis.o: synthesis.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/stdio_lim.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/ogg.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/ogg.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/os_types.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/os_types.h: /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/types.h: @@ -121,7 +121,7 @@ synthesis.lo synthesis.o: synthesis.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/sysmacros.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/config_types.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/config_types.h: ../include/vorbis/codec.h: diff --git a/release/src/router/libvorbis/lib/.deps/test_sharedbook-sharedbook.Po b/release/src/router/libvorbis/lib/.deps/test_sharedbook-sharedbook.Po index ae1cfa2d0b..523ca25e93 100644 --- a/release/src/router/libvorbis/lib/.deps/test_sharedbook-sharedbook.Po +++ b/release/src/router/libvorbis/lib/.deps/test_sharedbook-sharedbook.Po @@ -27,9 +27,9 @@ test_sharedbook-sharedbook.o test_sharedbook-sharedbook.o: sharedbook.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sgidefs.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/mathcalls.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/string.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/ogg.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/os_types.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/config_types.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/ogg.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/os_types.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/config_types.h \ os.h ../config.h misc.h ../include/vorbis/codec.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/memory.h \ codebook.h scales.h \ @@ -104,11 +104,11 @@ test_sharedbook-sharedbook.o test_sharedbook-sharedbook.o: sharedbook.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/string.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/ogg.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/ogg.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/os_types.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/os_types.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/config_types.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/config_types.h: os.h: diff --git a/release/src/router/libvorbis/lib/.deps/vorbisenc.Plo b/release/src/router/libvorbis/lib/.deps/vorbisenc.Plo index e574f82a39..1ab230bd7d 100644 --- a/release/src/router/libvorbis/lib/.deps/vorbisenc.Plo +++ b/release/src/router/libvorbis/lib/.deps/vorbisenc.Plo @@ -28,9 +28,9 @@ vorbisenc.lo vorbisenc.o: vorbisenc.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sgidefs.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/mathcalls.h \ ../include/vorbis/codec.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/ogg.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/os_types.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/config_types.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/ogg.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/os_types.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/config_types.h \ ../include/vorbis/vorbisenc.h ../include/vorbis/codec.h \ codec_internal.h envelope.h mdct.h codebook.h psy.h smallft.h \ backends.h bitrate.h os.h ../config.h misc.h \ @@ -103,11 +103,11 @@ vorbisenc.lo vorbisenc.o: vorbisenc.c \ ../include/vorbis/codec.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/ogg.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/ogg.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/os_types.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/os_types.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/config_types.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/config_types.h: ../include/vorbis/vorbisenc.h: diff --git a/release/src/router/libvorbis/lib/.deps/vorbisfile.Plo b/release/src/router/libvorbis/lib/.deps/vorbisfile.Plo index 0767777908..7bef07e274 100644 --- a/release/src/router/libvorbis/lib/.deps/vorbisfile.Plo +++ b/release/src/router/libvorbis/lib/.deps/vorbisfile.Plo @@ -47,9 +47,9 @@ vorbisfile.lo vorbisfile.o: vorbisfile.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sgidefs.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/mathcalls.h \ ../include/vorbis/codec.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/ogg.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/os_types.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/config_types.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/ogg.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/os_types.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/config_types.h \ ../include/vorbis/vorbisfile.h ../include/vorbis/codec.h os.h \ ../config.h misc.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/memory.h @@ -150,11 +150,11 @@ vorbisfile.lo vorbisfile.o: vorbisfile.c \ ../include/vorbis/codec.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/ogg.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/ogg.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/os_types.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/os_types.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/config_types.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/config_types.h: ../include/vorbis/vorbisfile.h: diff --git a/release/src/router/libvorbis/lib/.deps/window.Plo b/release/src/router/libvorbis/lib/.deps/window.Plo index dd1007f30d..cd6ceafe09 100644 --- a/release/src/router/libvorbis/lib/.deps/window.Plo +++ b/release/src/router/libvorbis/lib/.deps/window.Plo @@ -27,10 +27,10 @@ window.lo window.o: window.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sgidefs.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/mathcalls.h \ os.h ../config.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/os_types.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/config_types.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/os_types.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/config_types.h \ misc.h ../include/vorbis/codec.h \ - /home/vicente/tomato/release/src-rt/router/libogg/include/ogg/ogg.h \ + /home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/ogg.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/memory.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/string.h @@ -92,15 +92,15 @@ os.h: ../config.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/os_types.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/os_types.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/config_types.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/config_types.h: misc.h: ../include/vorbis/codec.h: -/home/vicente/tomato/release/src-rt/router/libogg/include/ogg/ogg.h: +/home/vicente/repos/tomato/release/src-rt/router/libogg/include/ogg/ogg.h: /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/memory.h: diff --git a/release/src/router/libvorbis/lib/Makefile b/release/src/router/libvorbis/lib/Makefile index 891a467fc9..2cda45dd4d 100644 --- a/release/src/router/libvorbis/lib/Makefile +++ b/release/src/router/libvorbis/lib/Makefile @@ -127,21 +127,21 @@ ETAGS = etags CTAGS = ctags DIST_SUBDIRS = $(SUBDIRS) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run aclocal-1.10 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run aclocal-1.10 ACLOCAL_AMFLAGS = -I m4 ALLOCA = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run tar AR = mipsel-uclibc-ar AS = mipsel-uclibc-as -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run automake-1.10 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run automake-1.10 AWK = gawk CC = mipsel-uclibc-gcc CCDEPMODE = depmode=gcc3 CFLAGS = -O20 -Wall -Wextra -ffast-math -D_REENTRANT -fsigned-char -Wdeclaration-after-statement -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DUSE_MEMORY_H CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -I/home/vicente/tomato/release/src-rt/router/libogg/include +CPPFLAGS = -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -167,20 +167,20 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBOBJS = ${LIBOBJDIR}memcmp$U.o LIBS = LIBTOOL = $(SHELL) $(top_builddir)/libtool LIBTOOL_DEPS = ./ltmain.sh LN_S = ln -s LTLIBOBJS = ${LIBOBJDIR}memcmp$U.lo -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run makeinfo MKDIR_P = /bin/mkdir -p NMEDIT = OBJDUMP = objdump OBJEXT = o -OGG_CFLAGS = -I/home/vicente/tomato/release/src-rt/router/libogg/include -OGG_LIBS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -logg +OGG_CFLAGS = -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include +OGG_LIBS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -logg PACKAGE = libvorbis PACKAGE_BUGREPORT = vorbis-dev@xiph.org PACKAGE_NAME = libvorbis @@ -207,10 +207,10 @@ VORBIS_LIBS = -lm V_LIB_AGE = 4 V_LIB_CURRENT = 4 V_LIB_REVISION = 3 -abs_builddir = /home/vicente/tomato/release/src/router/libvorbis/lib -abs_srcdir = /home/vicente/tomato/release/src/router/libvorbis/lib -abs_top_builddir = /home/vicente/tomato/release/src/router/libvorbis -abs_top_srcdir = /home/vicente/tomato/release/src/router/libvorbis +abs_builddir = /home/vicente/repos/tomato/release/src/router/libvorbis/lib +abs_srcdir = /home/vicente/repos/tomato/release/src/router/libvorbis/lib +abs_top_builddir = /home/vicente/repos/tomato/release/src/router/libvorbis +abs_top_srcdir = /home/vicente/repos/tomato/release/src/router/libvorbis ac_ct_CC = ac_ct_CXX = ac_ct_F77 = @@ -239,7 +239,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = $(SHELL) /home/vicente/tomato/release/src/router/libvorbis/install-sh +install_sh = $(SHELL) /home/vicente/repos/tomato/release/src/router/libvorbis/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = ${datarootdir}/locale @@ -264,7 +264,7 @@ target_vendor = unknown top_builddir = .. top_srcdir = .. SUBDIRS = modes books -INCLUDES = -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include +INCLUDES = -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include lib_LTLIBRARIES = libvorbis.la libvorbisfile.la libvorbisenc.la libvorbis_la_SOURCES = mdct.c smallft.c block.c envelope.c window.c lsp.c \ lpc.c analysis.c synthesis.c psy.c info.c \ @@ -277,13 +277,13 @@ libvorbis_la_SOURCES = mdct.c smallft.c block.c envelope.c window.c lsp.c \ codec_internal.h backends.h bitrate.h libvorbis_la_LDFLAGS = -no-undefined -version-info 4:3:4 -libvorbis_la_LIBADD = -lm -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -logg +libvorbis_la_LIBADD = -lm -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -logg libvorbisfile_la_SOURCES = vorbisfile.c libvorbisfile_la_LDFLAGS = -no-undefined -version-info 6:2:3 -libvorbisfile_la_LIBADD = libvorbis.la -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -logg +libvorbisfile_la_LIBADD = libvorbis.la -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -logg libvorbisenc_la_SOURCES = vorbisenc.c libvorbisenc_la_LDFLAGS = -no-undefined -version-info 2:6:0 -libvorbisenc_la_LIBADD = libvorbis.la -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -logg +libvorbisenc_la_LIBADD = libvorbis.la -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -logg CLEANFILES = $(EXTRA_PROGRAMS) barkmel_SOURCES = barkmel.c tone_SOURCES = tone.c diff --git a/release/src/router/libvorbis/lib/books/Makefile b/release/src/router/libvorbis/lib/books/Makefile index f48ffa94a4..5f65ecb568 100644 --- a/release/src/router/libvorbis/lib/books/Makefile +++ b/release/src/router/libvorbis/lib/books/Makefile @@ -57,21 +57,21 @@ ETAGS = etags CTAGS = ctags DIST_SUBDIRS = $(SUBDIRS) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run aclocal-1.10 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run aclocal-1.10 ACLOCAL_AMFLAGS = -I m4 ALLOCA = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run tar AR = mipsel-uclibc-ar AS = mipsel-uclibc-as -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run automake-1.10 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run automake-1.10 AWK = gawk CC = mipsel-uclibc-gcc CCDEPMODE = depmode=gcc3 CFLAGS = -O20 -Wall -Wextra -ffast-math -D_REENTRANT -fsigned-char -Wdeclaration-after-statement -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DUSE_MEMORY_H CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -I/home/vicente/tomato/release/src-rt/router/libogg/include +CPPFLAGS = -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -97,20 +97,20 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBOBJS = ${LIBOBJDIR}memcmp$U.o LIBS = LIBTOOL = $(SHELL) $(top_builddir)/libtool LIBTOOL_DEPS = ./ltmain.sh LN_S = ln -s LTLIBOBJS = ${LIBOBJDIR}memcmp$U.lo -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run makeinfo MKDIR_P = /bin/mkdir -p NMEDIT = OBJDUMP = objdump OBJEXT = o -OGG_CFLAGS = -I/home/vicente/tomato/release/src-rt/router/libogg/include -OGG_LIBS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -logg +OGG_CFLAGS = -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include +OGG_LIBS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -logg PACKAGE = libvorbis PACKAGE_BUGREPORT = vorbis-dev@xiph.org PACKAGE_NAME = libvorbis @@ -137,10 +137,10 @@ VORBIS_LIBS = -lm V_LIB_AGE = 4 V_LIB_CURRENT = 4 V_LIB_REVISION = 3 -abs_builddir = /home/vicente/tomato/release/src/router/libvorbis/lib/books -abs_srcdir = /home/vicente/tomato/release/src/router/libvorbis/lib/books -abs_top_builddir = /home/vicente/tomato/release/src/router/libvorbis -abs_top_srcdir = /home/vicente/tomato/release/src/router/libvorbis +abs_builddir = /home/vicente/repos/tomato/release/src/router/libvorbis/lib/books +abs_srcdir = /home/vicente/repos/tomato/release/src/router/libvorbis/lib/books +abs_top_builddir = /home/vicente/repos/tomato/release/src/router/libvorbis +abs_top_srcdir = /home/vicente/repos/tomato/release/src/router/libvorbis ac_ct_CC = ac_ct_CXX = ac_ct_F77 = @@ -169,7 +169,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = $(SHELL) /home/vicente/tomato/release/src/router/libvorbis/install-sh +install_sh = $(SHELL) /home/vicente/repos/tomato/release/src/router/libvorbis/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = ${datarootdir}/locale diff --git a/release/src/router/libvorbis/lib/books/coupled/Makefile b/release/src/router/libvorbis/lib/books/coupled/Makefile index 11efd57124..95b1a80524 100644 --- a/release/src/router/libvorbis/lib/books/coupled/Makefile +++ b/release/src/router/libvorbis/lib/books/coupled/Makefile @@ -45,21 +45,21 @@ CONFIG_CLEAN_FILES = SOURCES = DIST_SOURCES = DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run aclocal-1.10 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run aclocal-1.10 ACLOCAL_AMFLAGS = -I m4 ALLOCA = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run tar AR = mipsel-uclibc-ar AS = mipsel-uclibc-as -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run automake-1.10 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run automake-1.10 AWK = gawk CC = mipsel-uclibc-gcc CCDEPMODE = depmode=gcc3 CFLAGS = -O20 -Wall -Wextra -ffast-math -D_REENTRANT -fsigned-char -Wdeclaration-after-statement -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DUSE_MEMORY_H CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -I/home/vicente/tomato/release/src-rt/router/libogg/include +CPPFLAGS = -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -85,20 +85,20 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBOBJS = ${LIBOBJDIR}memcmp$U.o LIBS = LIBTOOL = $(SHELL) $(top_builddir)/libtool LIBTOOL_DEPS = ./ltmain.sh LN_S = ln -s LTLIBOBJS = ${LIBOBJDIR}memcmp$U.lo -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run makeinfo MKDIR_P = /bin/mkdir -p NMEDIT = OBJDUMP = objdump OBJEXT = o -OGG_CFLAGS = -I/home/vicente/tomato/release/src-rt/router/libogg/include -OGG_LIBS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -logg +OGG_CFLAGS = -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include +OGG_LIBS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -logg PACKAGE = libvorbis PACKAGE_BUGREPORT = vorbis-dev@xiph.org PACKAGE_NAME = libvorbis @@ -125,10 +125,10 @@ VORBIS_LIBS = -lm V_LIB_AGE = 4 V_LIB_CURRENT = 4 V_LIB_REVISION = 3 -abs_builddir = /home/vicente/tomato/release/src/router/libvorbis/lib/books/coupled -abs_srcdir = /home/vicente/tomato/release/src/router/libvorbis/lib/books/coupled -abs_top_builddir = /home/vicente/tomato/release/src/router/libvorbis -abs_top_srcdir = /home/vicente/tomato/release/src/router/libvorbis +abs_builddir = /home/vicente/repos/tomato/release/src/router/libvorbis/lib/books/coupled +abs_srcdir = /home/vicente/repos/tomato/release/src/router/libvorbis/lib/books/coupled +abs_top_builddir = /home/vicente/repos/tomato/release/src/router/libvorbis +abs_top_srcdir = /home/vicente/repos/tomato/release/src/router/libvorbis ac_ct_CC = ac_ct_CXX = ac_ct_F77 = @@ -157,7 +157,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = $(SHELL) /home/vicente/tomato/release/src/router/libvorbis/install-sh +install_sh = $(SHELL) /home/vicente/repos/tomato/release/src/router/libvorbis/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = ${datarootdir}/locale diff --git a/release/src/router/libvorbis/lib/books/floor/Makefile b/release/src/router/libvorbis/lib/books/floor/Makefile index c8634ab46f..0d9ce4252d 100644 --- a/release/src/router/libvorbis/lib/books/floor/Makefile +++ b/release/src/router/libvorbis/lib/books/floor/Makefile @@ -45,21 +45,21 @@ CONFIG_CLEAN_FILES = SOURCES = DIST_SOURCES = DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run aclocal-1.10 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run aclocal-1.10 ACLOCAL_AMFLAGS = -I m4 ALLOCA = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run tar AR = mipsel-uclibc-ar AS = mipsel-uclibc-as -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run automake-1.10 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run automake-1.10 AWK = gawk CC = mipsel-uclibc-gcc CCDEPMODE = depmode=gcc3 CFLAGS = -O20 -Wall -Wextra -ffast-math -D_REENTRANT -fsigned-char -Wdeclaration-after-statement -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DUSE_MEMORY_H CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -I/home/vicente/tomato/release/src-rt/router/libogg/include +CPPFLAGS = -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -85,20 +85,20 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBOBJS = ${LIBOBJDIR}memcmp$U.o LIBS = LIBTOOL = $(SHELL) $(top_builddir)/libtool LIBTOOL_DEPS = ./ltmain.sh LN_S = ln -s LTLIBOBJS = ${LIBOBJDIR}memcmp$U.lo -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run makeinfo MKDIR_P = /bin/mkdir -p NMEDIT = OBJDUMP = objdump OBJEXT = o -OGG_CFLAGS = -I/home/vicente/tomato/release/src-rt/router/libogg/include -OGG_LIBS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -logg +OGG_CFLAGS = -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include +OGG_LIBS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -logg PACKAGE = libvorbis PACKAGE_BUGREPORT = vorbis-dev@xiph.org PACKAGE_NAME = libvorbis @@ -125,10 +125,10 @@ VORBIS_LIBS = -lm V_LIB_AGE = 4 V_LIB_CURRENT = 4 V_LIB_REVISION = 3 -abs_builddir = /home/vicente/tomato/release/src/router/libvorbis/lib/books/floor -abs_srcdir = /home/vicente/tomato/release/src/router/libvorbis/lib/books/floor -abs_top_builddir = /home/vicente/tomato/release/src/router/libvorbis -abs_top_srcdir = /home/vicente/tomato/release/src/router/libvorbis +abs_builddir = /home/vicente/repos/tomato/release/src/router/libvorbis/lib/books/floor +abs_srcdir = /home/vicente/repos/tomato/release/src/router/libvorbis/lib/books/floor +abs_top_builddir = /home/vicente/repos/tomato/release/src/router/libvorbis +abs_top_srcdir = /home/vicente/repos/tomato/release/src/router/libvorbis ac_ct_CC = ac_ct_CXX = ac_ct_F77 = @@ -157,7 +157,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = $(SHELL) /home/vicente/tomato/release/src/router/libvorbis/install-sh +install_sh = $(SHELL) /home/vicente/repos/tomato/release/src/router/libvorbis/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = ${datarootdir}/locale diff --git a/release/src/router/libvorbis/lib/books/uncoupled/Makefile b/release/src/router/libvorbis/lib/books/uncoupled/Makefile index f9e0e7548c..03c1d7a830 100644 --- a/release/src/router/libvorbis/lib/books/uncoupled/Makefile +++ b/release/src/router/libvorbis/lib/books/uncoupled/Makefile @@ -45,21 +45,21 @@ CONFIG_CLEAN_FILES = SOURCES = DIST_SOURCES = DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run aclocal-1.10 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run aclocal-1.10 ACLOCAL_AMFLAGS = -I m4 ALLOCA = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run tar AR = mipsel-uclibc-ar AS = mipsel-uclibc-as -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run automake-1.10 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run automake-1.10 AWK = gawk CC = mipsel-uclibc-gcc CCDEPMODE = depmode=gcc3 CFLAGS = -O20 -Wall -Wextra -ffast-math -D_REENTRANT -fsigned-char -Wdeclaration-after-statement -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DUSE_MEMORY_H CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -I/home/vicente/tomato/release/src-rt/router/libogg/include +CPPFLAGS = -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -85,20 +85,20 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBOBJS = ${LIBOBJDIR}memcmp$U.o LIBS = LIBTOOL = $(SHELL) $(top_builddir)/libtool LIBTOOL_DEPS = ./ltmain.sh LN_S = ln -s LTLIBOBJS = ${LIBOBJDIR}memcmp$U.lo -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run makeinfo MKDIR_P = /bin/mkdir -p NMEDIT = OBJDUMP = objdump OBJEXT = o -OGG_CFLAGS = -I/home/vicente/tomato/release/src-rt/router/libogg/include -OGG_LIBS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -logg +OGG_CFLAGS = -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include +OGG_LIBS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -logg PACKAGE = libvorbis PACKAGE_BUGREPORT = vorbis-dev@xiph.org PACKAGE_NAME = libvorbis @@ -125,10 +125,10 @@ VORBIS_LIBS = -lm V_LIB_AGE = 4 V_LIB_CURRENT = 4 V_LIB_REVISION = 3 -abs_builddir = /home/vicente/tomato/release/src/router/libvorbis/lib/books/uncoupled -abs_srcdir = /home/vicente/tomato/release/src/router/libvorbis/lib/books/uncoupled -abs_top_builddir = /home/vicente/tomato/release/src/router/libvorbis -abs_top_srcdir = /home/vicente/tomato/release/src/router/libvorbis +abs_builddir = /home/vicente/repos/tomato/release/src/router/libvorbis/lib/books/uncoupled +abs_srcdir = /home/vicente/repos/tomato/release/src/router/libvorbis/lib/books/uncoupled +abs_top_builddir = /home/vicente/repos/tomato/release/src/router/libvorbis +abs_top_srcdir = /home/vicente/repos/tomato/release/src/router/libvorbis ac_ct_CC = ac_ct_CXX = ac_ct_F77 = @@ -157,7 +157,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = $(SHELL) /home/vicente/tomato/release/src/router/libvorbis/install-sh +install_sh = $(SHELL) /home/vicente/repos/tomato/release/src/router/libvorbis/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = ${datarootdir}/locale diff --git a/release/src/router/libvorbis/lib/modes/Makefile b/release/src/router/libvorbis/lib/modes/Makefile index 6c54ea8d13..b2d52aef36 100644 --- a/release/src/router/libvorbis/lib/modes/Makefile +++ b/release/src/router/libvorbis/lib/modes/Makefile @@ -45,21 +45,21 @@ CONFIG_CLEAN_FILES = SOURCES = DIST_SOURCES = DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run aclocal-1.10 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run aclocal-1.10 ACLOCAL_AMFLAGS = -I m4 ALLOCA = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run tar AR = mipsel-uclibc-ar AS = mipsel-uclibc-as -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run automake-1.10 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run automake-1.10 AWK = gawk CC = mipsel-uclibc-gcc CCDEPMODE = depmode=gcc3 CFLAGS = -O20 -Wall -Wextra -ffast-math -D_REENTRANT -fsigned-char -Wdeclaration-after-statement -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DUSE_MEMORY_H CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -I/home/vicente/tomato/release/src-rt/router/libogg/include +CPPFLAGS = -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -85,20 +85,20 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBOBJS = ${LIBOBJDIR}memcmp$U.o LIBS = LIBTOOL = $(SHELL) $(top_builddir)/libtool LIBTOOL_DEPS = ./ltmain.sh LN_S = ln -s LTLIBOBJS = ${LIBOBJDIR}memcmp$U.lo -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run makeinfo MKDIR_P = /bin/mkdir -p NMEDIT = OBJDUMP = objdump OBJEXT = o -OGG_CFLAGS = -I/home/vicente/tomato/release/src-rt/router/libogg/include -OGG_LIBS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -logg +OGG_CFLAGS = -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include +OGG_LIBS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -logg PACKAGE = libvorbis PACKAGE_BUGREPORT = vorbis-dev@xiph.org PACKAGE_NAME = libvorbis @@ -125,10 +125,10 @@ VORBIS_LIBS = -lm V_LIB_AGE = 4 V_LIB_CURRENT = 4 V_LIB_REVISION = 3 -abs_builddir = /home/vicente/tomato/release/src/router/libvorbis/lib/modes -abs_srcdir = /home/vicente/tomato/release/src/router/libvorbis/lib/modes -abs_top_builddir = /home/vicente/tomato/release/src/router/libvorbis -abs_top_srcdir = /home/vicente/tomato/release/src/router/libvorbis +abs_builddir = /home/vicente/repos/tomato/release/src/router/libvorbis/lib/modes +abs_srcdir = /home/vicente/repos/tomato/release/src/router/libvorbis/lib/modes +abs_top_builddir = /home/vicente/repos/tomato/release/src/router/libvorbis +abs_top_srcdir = /home/vicente/repos/tomato/release/src/router/libvorbis ac_ct_CC = ac_ct_CXX = ac_ct_F77 = @@ -157,7 +157,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = $(SHELL) /home/vicente/tomato/release/src/router/libvorbis/install-sh +install_sh = $(SHELL) /home/vicente/repos/tomato/release/src/router/libvorbis/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = ${datarootdir}/locale diff --git a/release/src/router/libvorbis/m4/Makefile b/release/src/router/libvorbis/m4/Makefile index cb0b074a11..5b765398f4 100644 --- a/release/src/router/libvorbis/m4/Makefile +++ b/release/src/router/libvorbis/m4/Makefile @@ -45,21 +45,21 @@ CONFIG_CLEAN_FILES = SOURCES = DIST_SOURCES = DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run aclocal-1.10 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run aclocal-1.10 ACLOCAL_AMFLAGS = -I m4 ALLOCA = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run tar AR = mipsel-uclibc-ar AS = mipsel-uclibc-as -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run automake-1.10 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run automake-1.10 AWK = gawk CC = mipsel-uclibc-gcc CCDEPMODE = depmode=gcc3 CFLAGS = -O20 -Wall -Wextra -ffast-math -D_REENTRANT -fsigned-char -Wdeclaration-after-statement -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DUSE_MEMORY_H CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -I/home/vicente/tomato/release/src-rt/router/libogg/include +CPPFLAGS = -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -85,20 +85,20 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBOBJS = ${LIBOBJDIR}memcmp$U.o LIBS = LIBTOOL = $(SHELL) $(top_builddir)/libtool LIBTOOL_DEPS = ./ltmain.sh LN_S = ln -s LTLIBOBJS = ${LIBOBJDIR}memcmp$U.lo -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run makeinfo MKDIR_P = /bin/mkdir -p NMEDIT = OBJDUMP = objdump OBJEXT = o -OGG_CFLAGS = -I/home/vicente/tomato/release/src-rt/router/libogg/include -OGG_LIBS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -logg +OGG_CFLAGS = -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include +OGG_LIBS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -logg PACKAGE = libvorbis PACKAGE_BUGREPORT = vorbis-dev@xiph.org PACKAGE_NAME = libvorbis @@ -125,10 +125,10 @@ VORBIS_LIBS = -lm V_LIB_AGE = 4 V_LIB_CURRENT = 4 V_LIB_REVISION = 3 -abs_builddir = /home/vicente/tomato/release/src/router/libvorbis/m4 -abs_srcdir = /home/vicente/tomato/release/src/router/libvorbis/m4 -abs_top_builddir = /home/vicente/tomato/release/src/router/libvorbis -abs_top_srcdir = /home/vicente/tomato/release/src/router/libvorbis +abs_builddir = /home/vicente/repos/tomato/release/src/router/libvorbis/m4 +abs_srcdir = /home/vicente/repos/tomato/release/src/router/libvorbis/m4 +abs_top_builddir = /home/vicente/repos/tomato/release/src/router/libvorbis +abs_top_srcdir = /home/vicente/repos/tomato/release/src/router/libvorbis ac_ct_CC = ac_ct_CXX = ac_ct_F77 = @@ -157,7 +157,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = $(SHELL) /home/vicente/tomato/release/src/router/libvorbis/install-sh +install_sh = $(SHELL) /home/vicente/repos/tomato/release/src/router/libvorbis/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = ${datarootdir}/locale diff --git a/release/src/router/libvorbis/test/Makefile b/release/src/router/libvorbis/test/Makefile index dc93a2cc6b..abab506cef 100644 --- a/release/src/router/libvorbis/test/Makefile +++ b/release/src/router/libvorbis/test/Makefile @@ -65,21 +65,21 @@ DIST_SOURCES = $(test_SOURCES) ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run aclocal-1.10 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run aclocal-1.10 ACLOCAL_AMFLAGS = -I m4 ALLOCA = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run tar AR = mipsel-uclibc-ar AS = mipsel-uclibc-as -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run automake-1.10 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run automake-1.10 AWK = gawk CC = mipsel-uclibc-gcc CCDEPMODE = depmode=gcc3 CFLAGS = -O20 -Wall -Wextra -ffast-math -D_REENTRANT -fsigned-char -Wdeclaration-after-statement -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DUSE_MEMORY_H CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -I/home/vicente/tomato/release/src-rt/router/libogg/include +CPPFLAGS = -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -105,20 +105,20 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBOBJS = ${LIBOBJDIR}memcmp$U.o LIBS = LIBTOOL = $(SHELL) $(top_builddir)/libtool LIBTOOL_DEPS = ./ltmain.sh LN_S = ln -s LTLIBOBJS = ${LIBOBJDIR}memcmp$U.lo -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run makeinfo MKDIR_P = /bin/mkdir -p NMEDIT = OBJDUMP = objdump OBJEXT = o -OGG_CFLAGS = -I/home/vicente/tomato/release/src-rt/router/libogg/include -OGG_LIBS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -logg +OGG_CFLAGS = -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include +OGG_LIBS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -logg PACKAGE = libvorbis PACKAGE_BUGREPORT = vorbis-dev@xiph.org PACKAGE_NAME = libvorbis @@ -145,10 +145,10 @@ VORBIS_LIBS = -lm V_LIB_AGE = 4 V_LIB_CURRENT = 4 V_LIB_REVISION = 3 -abs_builddir = /home/vicente/tomato/release/src/router/libvorbis/test -abs_srcdir = /home/vicente/tomato/release/src/router/libvorbis/test -abs_top_builddir = /home/vicente/tomato/release/src/router/libvorbis -abs_top_srcdir = /home/vicente/tomato/release/src/router/libvorbis +abs_builddir = /home/vicente/repos/tomato/release/src/router/libvorbis/test +abs_srcdir = /home/vicente/repos/tomato/release/src/router/libvorbis/test +abs_top_builddir = /home/vicente/repos/tomato/release/src/router/libvorbis +abs_top_srcdir = /home/vicente/repos/tomato/release/src/router/libvorbis ac_ct_CC = ac_ct_CXX = ac_ct_F77 = @@ -177,7 +177,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = $(SHELL) /home/vicente/tomato/release/src/router/libvorbis/install-sh +install_sh = $(SHELL) /home/vicente/repos/tomato/release/src/router/libvorbis/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = ${datarootdir}/locale @@ -202,9 +202,9 @@ target_vendor = unknown top_builddir = .. top_srcdir = .. AUTOMAKE_OPTIONS = foreign -INCLUDES = -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include +INCLUDES = -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include test_SOURCES = util.c util.h write_read.c write_read.h test.c -test_LDADD = ../lib/libvorbisenc.la ../lib/libvorbis.la -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -logg +test_LDADD = ../lib/libvorbisenc.la ../lib/libvorbis.la -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -logg all: all-am .SUFFIXES: diff --git a/release/src/router/libvorbis/vq/Makefile b/release/src/router/libvorbis/vq/Makefile index 3b21ce1cf7..03ee510d8a 100644 --- a/release/src/router/libvorbis/vq/Makefile +++ b/release/src/router/libvorbis/vq/Makefile @@ -94,21 +94,21 @@ DIST_SOURCES = $(distribution_SOURCES) $(huffbuild_SOURCES) \ ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run aclocal-1.10 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run aclocal-1.10 ACLOCAL_AMFLAGS = -I m4 ALLOCA = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run tar AR = mipsel-uclibc-ar AS = mipsel-uclibc-as -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run automake-1.10 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run automake-1.10 AWK = gawk CC = mipsel-uclibc-gcc CCDEPMODE = depmode=gcc3 CFLAGS = -O20 -Wall -Wextra -ffast-math -D_REENTRANT -fsigned-char -Wdeclaration-after-statement -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -ffunction-sections -fdata-sections -DUSE_MEMORY_H CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -I/home/vicente/tomato/release/src-rt/router/libogg/include +CPPFLAGS = -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include CXX = mipsel-linux-g++ CXXCPP = mipsel-linux-g++ -E CXXDEPMODE = depmode=gcc3 @@ -134,20 +134,20 @@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = $(install_sh) -c -s -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -fPIC -ffunction-sections -fdata-sections -Wl,--gc-sections LIBOBJS = ${LIBOBJDIR}memcmp$U.o LIBS = LIBTOOL = $(SHELL) $(top_builddir)/libtool LIBTOOL_DEPS = ./ltmain.sh LN_S = ln -s LTLIBOBJS = ${LIBOBJDIR}memcmp$U.lo -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/libvorbis/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/libvorbis/missing --run makeinfo MKDIR_P = /bin/mkdir -p NMEDIT = OBJDUMP = objdump OBJEXT = o -OGG_CFLAGS = -I/home/vicente/tomato/release/src-rt/router/libogg/include -OGG_LIBS = -L/home/vicente/tomato/release/src-rt/router/libogg/src/.libs -logg +OGG_CFLAGS = -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include +OGG_LIBS = -L/home/vicente/repos/tomato/release/src-rt/router/libogg/src/.libs -logg PACKAGE = libvorbis PACKAGE_BUGREPORT = vorbis-dev@xiph.org PACKAGE_NAME = libvorbis @@ -174,10 +174,10 @@ VORBIS_LIBS = -lm V_LIB_AGE = 4 V_LIB_CURRENT = 4 V_LIB_REVISION = 3 -abs_builddir = /home/vicente/tomato/release/src/router/libvorbis/vq -abs_srcdir = /home/vicente/tomato/release/src/router/libvorbis/vq -abs_top_builddir = /home/vicente/tomato/release/src/router/libvorbis -abs_top_srcdir = /home/vicente/tomato/release/src/router/libvorbis +abs_builddir = /home/vicente/repos/tomato/release/src/router/libvorbis/vq +abs_srcdir = /home/vicente/repos/tomato/release/src/router/libvorbis/vq +abs_top_builddir = /home/vicente/repos/tomato/release/src/router/libvorbis +abs_top_srcdir = /home/vicente/repos/tomato/release/src/router/libvorbis ac_ct_CC = ac_ct_CXX = ac_ct_F77 = @@ -206,7 +206,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = $(SHELL) /home/vicente/tomato/release/src/router/libvorbis/install-sh +install_sh = $(SHELL) /home/vicente/repos/tomato/release/src/router/libvorbis/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = ${datarootdir}/locale @@ -230,7 +230,7 @@ target_os = linux-gnu target_vendor = unknown top_builddir = .. top_srcdir = .. -INCLUDES = -I../lib -I$(top_srcdir)/include -I/home/vicente/tomato/release/src-rt/router/libogg/include +INCLUDES = -I../lib -I$(top_srcdir)/include -I/home/vicente/repos/tomato/release/src-rt/router/libogg/include CLEANFILES = $(EXTRA_PROGRAMS) AM_LDFLAGS = -static LDADD = ../lib/libvorbis.la diff --git a/release/src/router/lzo/Makefile b/release/src/router/lzo/Makefile index 95e90ec13a..fccefd2d88 100644 --- a/release/src/router/lzo/Makefile +++ b/release/src/router/lzo/Makefile @@ -247,13 +247,13 @@ DIST_ARCHIVES = $(distdir).tar.gz GZIP_ENV = --best distuninstallcheck_listfiles = find . -type f -print distcleancheck_listfiles = find . -type f -print -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/lzo/autoconf/missing --run aclocal-1.11 -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/lzo/autoconf/missing --run tar +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/lzo/autoconf/missing --run aclocal-1.11 +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/lzo/autoconf/missing --run tar AM_DEFAULT_VERBOSITY = 0 AR = mipsel-uclibc-ar -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/lzo/autoconf/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/lzo/autoconf/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/lzo/autoconf/missing --run automake-1.11 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/lzo/autoconf/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/lzo/autoconf/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/lzo/autoconf/missing --run automake-1.11 AWK = gawk CC = mipsel-uclibc-gcc CCAS = mipsel-uclibc-gcc @@ -289,7 +289,7 @@ LIPO = LN_S = ln -s LTLIBOBJS = MAINT = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/lzo/autoconf/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/lzo/autoconf/missing --run makeinfo MKDIR_P = /bin/mkdir -p NM = mipsel-uclibc-nm NMEDIT = @@ -311,10 +311,10 @@ SET_MAKE = SHELL = /bin/sh STRIP = mipsel-uclibc-strip -R .note -R .comment VERSION = 2.06 -abs_builddir = /home/vicente/tomato/release/src/router/lzo -abs_srcdir = /home/vicente/tomato/release/src/router/lzo -abs_top_builddir = /home/vicente/tomato/release/src/router/lzo -abs_top_srcdir = /home/vicente/tomato/release/src/router/lzo +abs_builddir = /home/vicente/repos/tomato/release/src/router/lzo +abs_srcdir = /home/vicente/repos/tomato/release/src/router/lzo +abs_top_builddir = /home/vicente/repos/tomato/release/src/router/lzo +abs_top_srcdir = /home/vicente/repos/tomato/release/src/router/lzo ac_ct_CC = ac_ct_DUMPBIN = am__include = include @@ -342,7 +342,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = ${SHELL} /home/vicente/tomato/release/src/router/lzo/autoconf/install-sh +install_sh = ${SHELL} /home/vicente/repos/tomato/release/src/router/lzo/autoconf/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = ${datarootdir}/locale diff --git a/release/src/router/lzo/config.status b/release/src/router/lzo/config.status deleted file mode 100755 index 79fbd2d2cb..0000000000 --- a/release/src/router/lzo/config.status +++ /dev/null @@ -1,2167 +0,0 @@ -#! /bin/sh -# Generated by configure. -# Run this file to recreate the current configuration. -# Compiler output produced by configure, useful for debugging -# configure, is in config.log if it exists. - -debug=false -ac_cs_recheck=false -ac_cs_silent=false - -SHELL=${CONFIG_SHELL-/bin/sh} -export SHELL -## -------------------- ## -## M4sh Initialization. ## -## -------------------- ## - -# Be more Bourne compatible -DUALCASE=1; export DUALCASE # for MKS sh -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then : - emulate sh - NULLCMD=: - # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which - # is contrary to our usage. Disable this feature. - alias -g '${1+"$@"}'='"$@"' - setopt NO_GLOB_SUBST -else - case `(set -o) 2>/dev/null` in #( - *posix*) : - set -o posix ;; #( - *) : - ;; -esac -fi - - -as_nl=' -' -export as_nl -# Printing a long string crashes Solaris 7 /usr/bin/printf. -as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' -as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo -as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo -# Prefer a ksh shell builtin over an external printf program on Solaris, -# but without wasting forks for bash or zsh. -if test -z "$BASH_VERSION$ZSH_VERSION" \ - && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then - as_echo='print -r --' - as_echo_n='print -rn --' -elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then - as_echo='printf %s\n' - as_echo_n='printf %s' -else - if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then - as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"' - as_echo_n='/usr/ucb/echo -n' - else - as_echo_body='eval expr "X$1" : "X\\(.*\\)"' - as_echo_n_body='eval - arg=$1; - case $arg in #( - *"$as_nl"*) - expr "X$arg" : "X\\(.*\\)$as_nl"; - arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;; - esac; - expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl" - ' - export as_echo_n_body - as_echo_n='sh -c $as_echo_n_body as_echo' - fi - export as_echo_body - as_echo='sh -c $as_echo_body as_echo' -fi - -# The user is always right. -if test "${PATH_SEPARATOR+set}" != set; then - PATH_SEPARATOR=: - (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { - (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || - PATH_SEPARATOR=';' - } -fi - - -# IFS -# We need space, tab and new line, in precisely that order. Quoting is -# there to prevent editors from complaining about space-tab. -# (If _AS_PATH_WALK were called with IFS unset, it would disable word -# splitting by setting IFS to empty value.) -IFS=" "" $as_nl" - -# Find who we are. Look in the path if we contain no directory separator. -case $0 in #(( - *[\\/]* ) as_myself=$0 ;; - *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break - done -IFS=$as_save_IFS - - ;; -esac -# We did not find ourselves, most probably we were run as `sh COMMAND' -# in which case we are not to be found in the path. -if test "x$as_myself" = x; then - as_myself=$0 -fi -if test ! -f "$as_myself"; then - $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 - exit 1 -fi - -# Unset variables that we do not need and which cause bugs (e.g. in -# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1" -# suppresses any "Segmentation fault" message there. '((' could -# trigger a bug in pdksh 5.2.14. -for as_var in BASH_ENV ENV MAIL MAILPATH -do eval test x\${$as_var+set} = xset \ - && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : -done -PS1='$ ' -PS2='> ' -PS4='+ ' - -# NLS nuisances. -LC_ALL=C -export LC_ALL -LANGUAGE=C -export LANGUAGE - -# CDPATH. -(unset CDPATH) >/dev/null 2>&1 && unset CDPATH - - -# as_fn_error STATUS ERROR [LINENO LOG_FD] -# ---------------------------------------- -# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are -# provided, also output the error to LOG_FD, referencing LINENO. Then exit the -# script with STATUS, using 1 if that was 0. -as_fn_error () -{ - as_status=$1; test $as_status -eq 0 && as_status=1 - if test "$4"; then - as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4 - fi - $as_echo "$as_me: error: $2" >&2 - as_fn_exit $as_status -} # as_fn_error - - -# as_fn_set_status STATUS -# ----------------------- -# Set $? to STATUS, without forking. -as_fn_set_status () -{ - return $1 -} # as_fn_set_status - -# as_fn_exit STATUS -# ----------------- -# Exit the shell with STATUS, even in a "trap 0" or "set -e" context. -as_fn_exit () -{ - set +e - as_fn_set_status $1 - exit $1 -} # as_fn_exit - -# as_fn_unset VAR -# --------------- -# Portably unset VAR. -as_fn_unset () -{ - { eval $1=; unset $1;} -} -as_unset=as_fn_unset -# as_fn_append VAR VALUE -# ---------------------- -# Append the text in VALUE to the end of the definition contained in VAR. Take -# advantage of any shell optimizations that allow amortized linear growth over -# repeated appends, instead of the typical quadratic growth present in naive -# implementations. -if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then : - eval 'as_fn_append () - { - eval $1+=\$2 - }' -else - as_fn_append () - { - eval $1=\$$1\$2 - } -fi # as_fn_append - -# as_fn_arith ARG... -# ------------------ -# Perform arithmetic evaluation on the ARGs, and store the result in the -# global $as_val. Take advantage of shells that can avoid forks. The arguments -# must be portable across $(()) and expr. -if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then : - eval 'as_fn_arith () - { - as_val=$(( $* )) - }' -else - as_fn_arith () - { - as_val=`expr "$@" || test $? -eq 1` - } -fi # as_fn_arith - - -if expr a : '\(a\)' >/dev/null 2>&1 && - test "X`expr 00001 : '.*\(...\)'`" = X001; then - as_expr=expr -else - as_expr=false -fi - -if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then - as_basename=basename -else - as_basename=false -fi - -if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then - as_dirname=dirname -else - as_dirname=false -fi - -as_me=`$as_basename -- "$0" || -$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ - X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X/"$0" | - sed '/^.*\/\([^/][^/]*\)\/*$/{ - s//\1/ - q - } - /^X\/\(\/\/\)$/{ - s//\1/ - q - } - /^X\/\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - -# Avoid depending upon Character Ranges. -as_cr_letters='abcdefghijklmnopqrstuvwxyz' -as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' -as_cr_Letters=$as_cr_letters$as_cr_LETTERS -as_cr_digits='0123456789' -as_cr_alnum=$as_cr_Letters$as_cr_digits - -ECHO_C= ECHO_N= ECHO_T= -case `echo -n x` in #((((( --n*) - case `echo 'xy\c'` in - *c*) ECHO_T=' ';; # ECHO_T is single tab character. - xy) ECHO_C='\c';; - *) echo `echo ksh88 bug on AIX 6.1` > /dev/null - ECHO_T=' ';; - esac;; -*) - ECHO_N='-n';; -esac - -rm -f conf$$ conf$$.exe conf$$.file -if test -d conf$$.dir; then - rm -f conf$$.dir/conf$$.file -else - rm -f conf$$.dir - mkdir conf$$.dir 2>/dev/null -fi -if (echo >conf$$.file) 2>/dev/null; then - if ln -s conf$$.file conf$$ 2>/dev/null; then - as_ln_s='ln -s' - # ... but there are two gotchas: - # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. - # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. - # In both cases, we have to default to `cp -p'. - ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || - as_ln_s='cp -p' - elif ln conf$$.file conf$$ 2>/dev/null; then - as_ln_s=ln - else - as_ln_s='cp -p' - fi -else - as_ln_s='cp -p' -fi -rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file -rmdir conf$$.dir 2>/dev/null - - -# as_fn_mkdir_p -# ------------- -# Create "$as_dir" as a directory, including parents if necessary. -as_fn_mkdir_p () -{ - - case $as_dir in #( - -*) as_dir=./$as_dir;; - esac - test -d "$as_dir" || eval $as_mkdir_p || { - as_dirs= - while :; do - case $as_dir in #( - *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( - *) as_qdir=$as_dir;; - esac - as_dirs="'$as_qdir' $as_dirs" - as_dir=`$as_dirname -- "$as_dir" || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - test -d "$as_dir" && break - done - test -z "$as_dirs" || eval "mkdir $as_dirs" - } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir" - - -} # as_fn_mkdir_p -if mkdir -p . 2>/dev/null; then - as_mkdir_p='mkdir -p "$as_dir"' -else - test -d ./-p && rmdir ./-p - as_mkdir_p=false -fi - -if test -x / >/dev/null 2>&1; then - as_test_x='test -x' -else - if ls -dL / >/dev/null 2>&1; then - as_ls_L_option=L - else - as_ls_L_option= - fi - as_test_x=' - eval sh -c '\'' - if test -d "$1"; then - test -d "$1/."; - else - case $1 in #( - -*)set "./$1";; - esac; - case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #(( - ???[sx]*):;;*)false;;esac;fi - '\'' sh - ' -fi -as_executable_p=$as_test_x - -# Sed expression to map a string onto a valid CPP name. -as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" - -# Sed expression to map a string onto a valid variable name. -as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" - - -exec 6>&1 -## ----------------------------------- ## -## Main body of $CONFIG_STATUS script. ## -## ----------------------------------- ## -# Save the log message, to keep $0 and so on meaningful, and to -# report actual input values of CONFIG_FILES etc. instead of their -# values after options handling. -ac_log=" -This file was extended by LZO $as_me 2.06, which was -generated by GNU Autoconf 2.67. Invocation command line was - - CONFIG_FILES = $CONFIG_FILES - CONFIG_HEADERS = $CONFIG_HEADERS - CONFIG_LINKS = $CONFIG_LINKS - CONFIG_COMMANDS = $CONFIG_COMMANDS - $ $0 $@ - -on `(hostname || uname -n) 2>/dev/null | sed 1q` -" - -# Files that config.status was made for. -config_files=" Makefile" -config_headers=" config.h:config.hin" -config_commands=" depfiles libtool" - -ac_cs_usage="\ -\`$as_me' instantiates files and other configuration actions -from templates according to the current configuration. Unless the files -and actions are specified as TAGs, all are instantiated by default. - -Usage: $0 [OPTION]... [TAG]... - - -h, --help print this help, then exit - -V, --version print version number and configuration settings, then exit - --config print configuration, then exit - -q, --quiet, --silent - do not print progress messages - -d, --debug don't remove temporary files - --recheck update $as_me by reconfiguring in the same conditions - --file=FILE[:TEMPLATE] - instantiate the configuration file FILE - --header=FILE[:TEMPLATE] - instantiate the configuration header FILE - -Configuration files: -$config_files - -Configuration headers: -$config_headers - -Configuration commands: -$config_commands - -Report bugs to . -LZO home page: ." - -ac_cs_config="'--host=mipsel-linux' '--build=x86_64-linux-gnu' '--enable-shared' '--enable-static' 'build_alias=x86_64-linux-gnu' 'host_alias=mipsel-linux' 'CC=mipsel-uclibc-gcc' 'CFLAGS=-O3 -Wall -fPIC -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 '" -ac_cs_version="\ -LZO config.status 2.06 -configured by ./configure, generated by GNU Autoconf 2.67, - with options \"$ac_cs_config\" - -Copyright (C) 2010 Free Software Foundation, Inc. -This config.status script is free software; the Free Software Foundation -gives unlimited permission to copy, distribute and modify it." - -ac_pwd='/home/vicente/tomato/release/src/router/lzo' -srcdir='.' -INSTALL='/usr/bin/install -c' -MKDIR_P='/bin/mkdir -p' -AWK='gawk' -test -n "$AWK" || AWK=awk -# The default lists apply if the user does not specify any file. -ac_need_defaults=: -while test $# != 0 -do - case $1 in - --*=?*) - ac_option=`expr "X$1" : 'X\([^=]*\)='` - ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'` - ac_shift=: - ;; - --*=) - ac_option=`expr "X$1" : 'X\([^=]*\)='` - ac_optarg= - ac_shift=: - ;; - *) - ac_option=$1 - ac_optarg=$2 - ac_shift=shift - ;; - esac - - case $ac_option in - # Handling of the options. - -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) - ac_cs_recheck=: ;; - --version | --versio | --versi | --vers | --ver | --ve | --v | -V ) - $as_echo "$ac_cs_version"; exit ;; - --config | --confi | --conf | --con | --co | --c ) - $as_echo "$ac_cs_config"; exit ;; - --debug | --debu | --deb | --de | --d | -d ) - debug=: ;; - --file | --fil | --fi | --f ) - $ac_shift - case $ac_optarg in - *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; - '') as_fn_error $? "missing file argument" ;; - esac - as_fn_append CONFIG_FILES " '$ac_optarg'" - ac_need_defaults=false;; - --header | --heade | --head | --hea ) - $ac_shift - case $ac_optarg in - *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; - esac - as_fn_append CONFIG_HEADERS " '$ac_optarg'" - ac_need_defaults=false;; - --he | --h) - # Conflict between --help and --header - as_fn_error $? "ambiguous option: \`$1' -Try \`$0 --help' for more information.";; - --help | --hel | -h ) - $as_echo "$ac_cs_usage"; exit ;; - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil | --si | --s) - ac_cs_silent=: ;; - - # This is an error. - -*) as_fn_error $? "unrecognized option: \`$1' -Try \`$0 --help' for more information." ;; - - *) as_fn_append ac_config_targets " $1" - ac_need_defaults=false ;; - - esac - shift -done - -ac_configure_extra_args= - -if $ac_cs_silent; then - exec 6>/dev/null - ac_configure_extra_args="$ac_configure_extra_args --silent" -fi - -if $ac_cs_recheck; then - set X '/bin/sh' './configure' '--host=mipsel-linux' '--build=x86_64-linux-gnu' '--enable-shared' '--enable-static' 'build_alias=x86_64-linux-gnu' 'host_alias=mipsel-linux' 'CC=mipsel-uclibc-gcc' 'CFLAGS=-O3 -Wall -fPIC -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 ' $ac_configure_extra_args --no-create --no-recursion - shift - $as_echo "running CONFIG_SHELL=/bin/sh $*" >&6 - CONFIG_SHELL='/bin/sh' - export CONFIG_SHELL - exec "$@" -fi - -exec 5>>config.log -{ - echo - sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX -## Running $as_me. ## -_ASBOX - $as_echo "$ac_log" -} >&5 - -# -# INIT-COMMANDS -# -AMDEP_TRUE="" ac_aux_dir="autoconf" - - -# The HP-UX ksh and POSIX shell print the target directory to stdout -# if CDPATH is set. -(unset CDPATH) >/dev/null 2>&1 && unset CDPATH - -sed_quote_subst='s/\(["`$\\]\)/\\\1/g' -double_quote_subst='s/\(["`\\]\)/\\\1/g' -delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g' -enable_static='yes' -enable_shared='yes' -macro_version='2.2.10' -macro_revision='1.3175' -pic_mode='default' -enable_fast_install='yes' -SHELL='/bin/sh' -ECHO='printf %s\n' -host_alias='mipsel-linux' -host='mipsel-unknown-linux-gnu' -host_os='linux-gnu' -build_alias='x86_64-linux-gnu' -build='x86_64-pc-linux-gnu' -build_os='linux-gnu' -SED='/bin/sed' -Xsed='/bin/sed -e 1s/^X//' -GREP='/bin/grep' -EGREP='/bin/grep -E' -FGREP='/bin/grep -F' -LD='mipsel-uclibc-ld' -NM='mipsel-uclibc-nm' -LN_S='ln -s' -max_cmd_len='3458764513820540925' -ac_objext='o' -exeext='' -lt_unset='unset' -lt_SP2NL='tr \040 \012' -lt_NL2SP='tr \015\012 \040\040' -reload_flag=' -r' -reload_cmds='$LD$reload_flag -o $output$reload_objs' -OBJDUMP='mipsel-linux-objdump' -deplibs_check_method='pass_all' -file_magic_cmd='$MAGIC_CMD' -AR='mipsel-uclibc-ar' -AR_FLAGS='cru' -STRIP='mipsel-uclibc-strip -R .note -R .comment' -RANLIB='mipsel-uclibc-ranlib' -old_postinstall_cmds='chmod 644 $oldlib~$RANLIB $oldlib' -old_postuninstall_cmds='' -old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs~$RANLIB $oldlib' -lock_old_archive_extraction='no' -CC='mipsel-uclibc-gcc' -CFLAGS='-O3 -Wall -fPIC -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 ' -compiler='mipsel-uclibc-gcc' -GCC='yes' -lt_cv_sys_global_symbol_pipe='sed -n -e '\''s/^.*[ ]\([ABCDGIRSTW][ABCDGIRSTW]*\)[ ][ ]*\([_A-Za-z][_A-Za-z0-9]*\)$/\1 \2 \2/p'\''' -lt_cv_sys_global_symbol_to_cdecl='sed -n -e '\''s/^T .* \(.*\)$/extern int \1();/p'\'' -e '\''s/^[ABCDGIRSTW]* .* \(.*\)$/extern char \1;/p'\''' -lt_cv_sys_global_symbol_to_c_name_address='sed -n -e '\''s/^: \([^ ]*\) $/ {\"\1\", (void *) 0},/p'\'' -e '\''s/^[ABCDGIRSTW]* \([^ ]*\) \([^ ]*\)$/ {"\2", (void *) \&\2},/p'\''' -lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='sed -n -e '\''s/^: \([^ ]*\) $/ {\"\1\", (void *) 0},/p'\'' -e '\''s/^[ABCDGIRSTW]* \([^ ]*\) \(lib[^ ]*\)$/ {"\2", (void *) \&\2},/p'\'' -e '\''s/^[ABCDGIRSTW]* \([^ ]*\) \([^ ]*\)$/ {"lib\2", (void *) \&\2},/p'\''' -objdir='.libs' -MAGIC_CMD='file' -lt_prog_compiler_no_builtin_flag=' -fno-builtin' -lt_prog_compiler_wl='-Wl,' -lt_prog_compiler_pic=' -fPIC -DPIC' -lt_prog_compiler_static='-static' -lt_cv_prog_compiler_c_o='yes' -need_locks='no' -DSYMUTIL='' -NMEDIT='' -LIPO='' -OTOOL='' -OTOOL64='' -libext='a' -shrext_cmds='.so' -extract_expsyms_cmds='' -archive_cmds_need_lc='no' -enable_shared_with_static_runtimes='no' -export_dynamic_flag_spec='${wl}--export-dynamic' -whole_archive_flag_spec='${wl}--whole-archive$convenience ${wl}--no-whole-archive' -compiler_needs_object='no' -old_archive_from_new_cmds='' -old_archive_from_expsyms_cmds='' -archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' -archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~ - cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ - echo "local: *; };" >> $output_objdir/$libname.ver~ - $CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib' -module_cmds='' -module_expsym_cmds='' -with_gnu_ld='yes' -allow_undefined_flag='' -no_undefined_flag='' -hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' -hardcode_libdir_flag_spec_ld='' -hardcode_libdir_separator='' -hardcode_direct='no' -hardcode_direct_absolute='no' -hardcode_minus_L='no' -hardcode_shlibpath_var='unsupported' -hardcode_automatic='no' -inherit_rpath='no' -link_all_deplibs='unknown' -fix_srcfile_path='' -always_export_symbols='no' -export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' -exclude_expsyms='_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*' -include_expsyms='' -prelink_cmds='' -file_list_spec='' -variables_saved_for_relink='PATH LD_LIBRARY_PATH LD_RUN_PATH GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH' -need_lib_prefix='no' -need_version='no' -version_type='linux' -runpath_var='LD_RUN_PATH' -shlibpath_var='LD_LIBRARY_PATH' -shlibpath_overrides_runpath='no' -libname_spec='lib$name' -library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' -soname_spec='${libname}${release}${shared_ext}$major' -install_override_mode='' -postinstall_cmds='' -postuninstall_cmds='' -finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' -finish_eval='' -hardcode_into_libs='yes' -sys_lib_search_path_spec='/home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/lib/gcc/mipsel-linux-uclibc/4.2.4 /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/lib/gcc /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/mipsel-linux-uclibc/lib ' -sys_lib_dlsearch_path_spec='/lib64 /usr/lib64 /lib /usr/lib /lib/i386-linux-gnu /usr/lib/i386-linux-gnu /lib/i686-linux-gnu /usr/lib/i686-linux-gnu /usr/local/lib /usr/lib/nvidia-settings /lib/x86_64-linux-gnu /usr/lib/x86_64-linux-gnu /usr/lib/nvidia-current /usr/lib32/nvidia-current /lib32 /usr/lib32 ' -hardcode_action='immediate' -enable_dlopen='unknown' -enable_dlopen_self='unknown' -enable_dlopen_self_static='unknown' -old_striplib='mipsel-uclibc-strip -R .note -R .comment --strip-debug' -striplib='mipsel-uclibc-strip -R .note -R .comment --strip-unneeded' - -LTCC='mipsel-uclibc-gcc' -LTCFLAGS='-O3 -Wall -fPIC -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 ' -compiler='mipsel-uclibc-gcc' - -# A function that is used when there is no print builtin or printf. -func_fallback_echo () -{ - eval 'cat <<_LTECHO_EOF -$1 -_LTECHO_EOF' -} - -# Quote evaled strings. -for var in SHELL ECHO SED GREP EGREP FGREP LD NM LN_S lt_SP2NL lt_NL2SP reload_flag OBJDUMP deplibs_check_method file_magic_cmd AR AR_FLAGS STRIP RANLIB CC CFLAGS compiler lt_cv_sys_global_symbol_pipe lt_cv_sys_global_symbol_to_cdecl lt_cv_sys_global_symbol_to_c_name_address lt_cv_sys_global_symbol_to_c_name_address_lib_prefix lt_prog_compiler_no_builtin_flag lt_prog_compiler_wl lt_prog_compiler_pic lt_prog_compiler_static lt_cv_prog_compiler_c_o need_locks DSYMUTIL NMEDIT LIPO OTOOL OTOOL64 shrext_cmds export_dynamic_flag_spec whole_archive_flag_spec compiler_needs_object with_gnu_ld allow_undefined_flag no_undefined_flag hardcode_libdir_flag_spec hardcode_libdir_flag_spec_ld hardcode_libdir_separator fix_srcfile_path exclude_expsyms include_expsyms file_list_spec variables_saved_for_relink libname_spec library_names_spec soname_spec install_override_mode finish_eval old_striplib striplib; do - case `eval \\$ECHO \\""\\$$var"\\"` in - *[\\\`\"\$]*) - eval "lt_$var=\\\"\`\$ECHO \"\$$var\" | \$SED \"\$sed_quote_subst\"\`\\\"" - ;; - *) - eval "lt_$var=\\\"\$$var\\\"" - ;; - esac -done - -# Double-quote double-evaled strings. -for var in reload_cmds old_postinstall_cmds old_postuninstall_cmds old_archive_cmds extract_expsyms_cmds old_archive_from_new_cmds old_archive_from_expsyms_cmds archive_cmds archive_expsym_cmds module_cmds module_expsym_cmds export_symbols_cmds prelink_cmds postinstall_cmds postuninstall_cmds finish_cmds sys_lib_search_path_spec sys_lib_dlsearch_path_spec; do - case `eval \\$ECHO \\""\\$$var"\\"` in - *[\\\`\"\$]*) - eval "lt_$var=\\\"\`\$ECHO \"\$$var\" | \$SED -e \"\$double_quote_subst\" -e \"\$sed_quote_subst\" -e \"\$delay_variable_subst\"\`\\\"" - ;; - *) - eval "lt_$var=\\\"\$$var\\\"" - ;; - esac -done - -ac_aux_dir='autoconf' -xsi_shell='yes' -lt_shell_append='yes' - -# See if we are running on zsh, and set the options which allow our -# commands through without removal of \ escapes INIT. -if test -n "${ZSH_VERSION+set}" ; then - setopt NO_GLOB_SUBST -fi - - - PACKAGE='lzo' - VERSION='2.06' - TIMESTAMP='' - RM='rm -f' - ofile='libtool' - - - - - -# Handling of arguments. -for ac_config_target in $ac_config_targets -do - case $ac_config_target in - "depfiles") CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;; - "config.h") CONFIG_HEADERS="$CONFIG_HEADERS config.h:config.hin" ;; - "libtool") CONFIG_COMMANDS="$CONFIG_COMMANDS libtool" ;; - "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;; - - *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;; - esac -done - - -# If the user did not use the arguments to specify the items to instantiate, -# then the envvar interface is used. Set only those that are not. -# We use the long form for the default assignment because of an extremely -# bizarre bug on SunOS 4.1.3. -if $ac_need_defaults; then - test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files - test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers - test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands -fi - -# Have a temporary directory for convenience. Make it in the build tree -# simply because there is no reason against having it here, and in addition, -# creating and moving files from /tmp can sometimes cause problems. -# Hook for its removal unless debugging. -# Note that there is a small window in which the directory will not be cleaned: -# after its creation but before its name has been assigned to `$tmp'. -$debug || -{ - tmp= - trap 'exit_status=$? - { test -z "$tmp" || test ! -d "$tmp" || rm -fr "$tmp"; } && exit $exit_status -' 0 - trap 'as_fn_exit 1' 1 2 13 15 -} -# Create a (secure) tmp directory for tmp files. - -{ - tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` && - test -n "$tmp" && test -d "$tmp" -} || -{ - tmp=./conf$$-$RANDOM - (umask 077 && mkdir "$tmp") -} || as_fn_error $? "cannot create a temporary directory in ." "$LINENO" 5 - -# Set up the scripts for CONFIG_FILES section. -# No need to generate them if there are no CONFIG_FILES. -# This happens for instance with `./config.status config.h'. -if test -n "$CONFIG_FILES"; then - - -ac_cr=`echo X | tr X '\015'` -# On cygwin, bash can eat \r inside `` if the user requested igncr. -# But we know of no other shell where ac_cr would be empty at this -# point, so we can use a bashism as a fallback. -if test "x$ac_cr" = x; then - eval ac_cr=\$\'\\r\' -fi -ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' /dev/null` -if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then - ac_cs_awk_cr='\\r' -else - ac_cs_awk_cr=$ac_cr -fi - -echo 'BEGIN {' >"$tmp/subs1.awk" && -cat >>"$tmp/subs1.awk" <<\_ACAWK && -S["am__EXEEXT_FALSE"]="" -S["am__EXEEXT_TRUE"]="#" -S["LTLIBOBJS"]="" -S["LIBOBJS"]="" -S["LZO_USE_ASM_i386_obj_elf32_FALSE"]="" -S["LZO_USE_ASM_i386_obj_elf32_TRUE"]="#" -S["LZO_USE_ASM_i386_src_gas_FALSE"]="" -S["LZO_USE_ASM_i386_src_gas_TRUE"]="#" -S["OTOOL64"]="" -S["OTOOL"]="" -S["LIPO"]="" -S["NMEDIT"]="" -S["DSYMUTIL"]="" -S["RANLIB"]="mipsel-uclibc-ranlib" -S["AR"]="mipsel-uclibc-ar" -S["OBJDUMP"]="mipsel-linux-objdump" -S["LN_S"]="ln -s" -S["NM"]="mipsel-uclibc-nm" -S["ac_ct_DUMPBIN"]="" -S["DUMPBIN"]="" -S["LD"]="mipsel-uclibc-ld" -S["FGREP"]="/bin/grep -F" -S["SED"]="/bin/sed" -S["LIBTOOL"]="$(SHELL) $(top_builddir)/libtool" -S["AM_BACKSLASH"]="\\" -S["AM_DEFAULT_VERBOSITY"]="0" -S["am__fastdepCC_FALSE"]="#" -S["am__fastdepCC_TRUE"]="" -S["CCDEPMODE"]="depmode=gcc3" -S["am__untar"]="${AMTAR} xf -" -S["am__tar"]="${AMTAR} chof - \"$$tardir\"" -S["AMTAR"]="${SHELL} /home/vicente/tomato/release/src/router/lzo/autoconf/missing --run tar" -S["SET_MAKE"]="" -S["AWK"]="gawk" -S["mkdir_p"]="/bin/mkdir -p" -S["MKDIR_P"]="/bin/mkdir -p" -S["INSTALL_STRIP_PROGRAM"]="$(install_sh) -c -s" -S["STRIP"]="mipsel-uclibc-strip -R .note -R .comment" -S["install_sh"]="${SHELL} /home/vicente/tomato/release/src/router/lzo/autoconf/install-sh" -S["MAKEINFO"]="${SHELL} /home/vicente/tomato/release/src/router/lzo/autoconf/missing --run makeinfo" -S["AUTOHEADER"]="${SHELL} /home/vicente/tomato/release/src/router/lzo/autoconf/missing --run autoheader" -S["AUTOMAKE"]="${SHELL} /home/vicente/tomato/release/src/router/lzo/autoconf/missing --run automake-1.11" -S["AUTOCONF"]="${SHELL} /home/vicente/tomato/release/src/router/lzo/autoconf/missing --run autoconf" -S["ACLOCAL"]="${SHELL} /home/vicente/tomato/release/src/router/lzo/autoconf/missing --run aclocal-1.11" -S["VERSION"]="2.06" -S["PACKAGE"]="lzo" -S["CYGPATH_W"]="echo" -S["am__isrc"]="" -S["INSTALL_DATA"]="${INSTALL} -m 644" -S["INSTALL_SCRIPT"]="${INSTALL}" -S["INSTALL_PROGRAM"]="${INSTALL}" -S["EGREP"]="/bin/grep -E" -S["GREP"]="/bin/grep" -S["CPP"]="mipsel-uclibc-gcc -E" -S["am__fastdepCCAS_FALSE"]="#" -S["am__fastdepCCAS_TRUE"]="" -S["CCASDEPMODE"]="depmode=gcc3" -S["AMDEPBACKSLASH"]="\\" -S["AMDEP_FALSE"]="#" -S["AMDEP_TRUE"]="" -S["am__quote"]="" -S["am__include"]="include" -S["DEPDIR"]=".deps" -S["am__leading_dot"]="." -S["CCASFLAGS"]="-O3 -Wall -fPIC -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 " -S["CCAS"]="mipsel-uclibc-gcc" -S["OBJEXT"]="o" -S["EXEEXT"]="" -S["ac_ct_CC"]="" -S["CPPFLAGS"]="" -S["LDFLAGS"]="" -S["CFLAGS"]="-O3 -Wall -fPIC -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 " -S["CC"]="mipsel-uclibc-gcc" -S["MAINT"]="#" -S["MAINTAINER_MODE_FALSE"]="" -S["MAINTAINER_MODE_TRUE"]="#" -S["target_os"]="linux-gnu" -S["target_vendor"]="unknown" -S["target_cpu"]="mipsel" -S["target"]="mipsel-unknown-linux-gnu" -S["host_os"]="linux-gnu" -S["host_vendor"]="unknown" -S["host_cpu"]="mipsel" -S["host"]="mipsel-unknown-linux-gnu" -S["build_os"]="linux-gnu" -S["build_vendor"]="pc" -S["build_cpu"]="x86_64" -S["build"]="x86_64-pc-linux-gnu" -S["target_alias"]="" -S["host_alias"]="mipsel-linux" -S["build_alias"]="x86_64-linux-gnu" -S["LIBS"]="" -S["ECHO_T"]="" -S["ECHO_N"]="-n" -S["ECHO_C"]="" -S["DEFS"]="-DLZO_HAVE_CONFIG_H=1" -S["mandir"]="${datarootdir}/man" -S["localedir"]="${datarootdir}/locale" -S["libdir"]="${exec_prefix}/lib" -S["psdir"]="${docdir}" -S["pdfdir"]="${docdir}" -S["dvidir"]="${docdir}" -S["htmldir"]="${docdir}" -S["infodir"]="${datarootdir}/info" -S["docdir"]="${datarootdir}/doc/${PACKAGE_TARNAME}" -S["oldincludedir"]="/usr/include" -S["includedir"]="${prefix}/include" -S["localstatedir"]="${prefix}/var" -S["sharedstatedir"]="${prefix}/com" -S["sysconfdir"]="${prefix}/etc" -S["datadir"]="${datarootdir}" -S["datarootdir"]="${prefix}/share" -S["libexecdir"]="${exec_prefix}/libexec" -S["sbindir"]="${exec_prefix}/sbin" -S["bindir"]="${exec_prefix}/bin" -S["program_transform_name"]="s,x,x," -S["prefix"]="/usr/local" -S["exec_prefix"]="${prefix}" -S["PACKAGE_URL"]="http://www.oberhumer.com/opensource/lzo/" -S["PACKAGE_BUGREPORT"]="markus@oberhumer.com" -S["PACKAGE_STRING"]="LZO 2.06" -S["PACKAGE_VERSION"]="2.06" -S["PACKAGE_TARNAME"]="lzo" -S["PACKAGE_NAME"]="LZO" -S["PATH_SEPARATOR"]=":" -S["SHELL"]="/bin/sh" -_ACAWK -cat >>"$tmp/subs1.awk" <<_ACAWK && - for (key in S) S_is_set[key] = 1 - FS = "" - -} -{ - line = $ 0 - nfields = split(line, field, "@") - substed = 0 - len = length(field[1]) - for (i = 2; i < nfields; i++) { - key = field[i] - keylen = length(key) - if (S_is_set[key]) { - value = S[key] - line = substr(line, 1, len) "" value "" substr(line, len + keylen + 3) - len += length(value) + length(field[++i]) - substed = 1 - } else - len += 1 + keylen - } - - print line -} - -_ACAWK -if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then - sed "s/$ac_cr\$//; s/$ac_cr/$ac_cs_awk_cr/g" -else - cat -fi < "$tmp/subs1.awk" > "$tmp/subs.awk" \ - || as_fn_error $? "could not setup config files machinery" "$LINENO" 5 -fi # test -n "$CONFIG_FILES" - -# Set up the scripts for CONFIG_HEADERS section. -# No need to generate them if there are no CONFIG_HEADERS. -# This happens for instance with `./config.status Makefile'. -if test -n "$CONFIG_HEADERS"; then -cat >"$tmp/defines.awk" <<\_ACAWK || -BEGIN { -D["PACKAGE_NAME"]=" \"LZO\"" -D["PACKAGE_TARNAME"]=" \"lzo\"" -D["PACKAGE_VERSION"]=" \"2.06\"" -D["PACKAGE_STRING"]=" \"LZO 2.06\"" -D["PACKAGE_BUGREPORT"]=" \"markus@oberhumer.com\"" -D["PACKAGE_URL"]=" \"http://www.oberhumer.com/opensource/lzo/\"" -D["STDC_HEADERS"]=" 1" -D["HAVE_SYS_TYPES_H"]=" 1" -D["HAVE_SYS_STAT_H"]=" 1" -D["HAVE_STDLIB_H"]=" 1" -D["HAVE_STRING_H"]=" 1" -D["HAVE_MEMORY_H"]=" 1" -D["HAVE_STRINGS_H"]=" 1" -D["HAVE_INTTYPES_H"]=" 1" -D["HAVE_STDINT_H"]=" 1" -D["HAVE_UNISTD_H"]=" 1" -D["LZO_ABI_LITTLE_ENDIAN"]=" 1" -D["_FILE_OFFSET_BITS"]=" 64" -D["PACKAGE"]=" \"lzo\"" -D["VERSION"]=" \"2.06\"" -D["HAVE_DLFCN_H"]=" 1" -D["LT_OBJDIR"]=" \".libs/\"" -D["TIME_WITH_SYS_TIME"]=" 1" -D["HAVE_ASSERT_H"]=" 1" -D["HAVE_CTYPE_H"]=" 1" -D["HAVE_DIRENT_H"]=" 1" -D["HAVE_ERRNO_H"]=" 1" -D["HAVE_FCNTL_H"]=" 1" -D["HAVE_FLOAT_H"]=" 1" -D["HAVE_LIMITS_H"]=" 1" -D["HAVE_MALLOC_H"]=" 1" -D["HAVE_MEMORY_H"]=" 1" -D["HAVE_SETJMP_H"]=" 1" -D["HAVE_SIGNAL_H"]=" 1" -D["HAVE_STDARG_H"]=" 1" -D["HAVE_STDDEF_H"]=" 1" -D["HAVE_STDINT_H"]=" 1" -D["HAVE_STDIO_H"]=" 1" -D["HAVE_STDLIB_H"]=" 1" -D["HAVE_STRING_H"]=" 1" -D["HAVE_STRINGS_H"]=" 1" -D["HAVE_TIME_H"]=" 1" -D["HAVE_UNISTD_H"]=" 1" -D["HAVE_UTIME_H"]=" 1" -D["HAVE_SYS_MMAN_H"]=" 1" -D["HAVE_SYS_RESOURCE_H"]=" 1" -D["HAVE_SYS_STAT_H"]=" 1" -D["HAVE_SYS_TIME_H"]=" 1" -D["HAVE_SYS_TYPES_H"]=" 1" -D["HAVE_SYS_WAIT_H"]=" 1" -D["RETSIGTYPE"]=" void" -D["SIZEOF_SHORT"]=" 2" -D["SIZEOF_INT"]=" 4" -D["SIZEOF_LONG"]=" 4" -D["SIZEOF_LONG_LONG"]=" 8" -D["SIZEOF___INT16"]=" 0" -D["SIZEOF___INT32"]=" 0" -D["SIZEOF___INT64"]=" 0" -D["SIZEOF_VOID_P"]=" 4" -D["SIZEOF_SIZE_T"]=" 4" -D["SIZEOF_PTRDIFF_T"]=" 4" -D["SIZEOF___INT32"]=" 0" -D["SIZEOF_INTMAX_T"]=" 8" -D["SIZEOF_UINTMAX_T"]=" 8" -D["SIZEOF_INTPTR_T"]=" 4" -D["SIZEOF_UINTPTR_T"]=" 4" -D["SIZEOF_FLOAT"]=" 4" -D["SIZEOF_DOUBLE"]=" 8" -D["SIZEOF_LONG_DOUBLE"]=" 8" -D["SIZEOF_DEV_T"]=" 8" -D["SIZEOF_FPOS_T"]=" 24" -D["SIZEOF_MODE_T"]=" 4" -D["SIZEOF_OFF_T"]=" 8" -D["SIZEOF_SSIZE_T"]=" 4" -D["SIZEOF_TIME_T"]=" 4" -D["HAVE_ACCESS"]=" 1" -D["HAVE_ATEXIT"]=" 1" -D["HAVE_ATOI"]=" 1" -D["HAVE_ATOL"]=" 1" -D["HAVE_CHMOD"]=" 1" -D["HAVE_CHOWN"]=" 1" -D["HAVE_CLOCK_GETRES"]=" 1" -D["HAVE_CLOCK_GETTIME"]=" 1" -D["HAVE_CTIME"]=" 1" -D["HAVE_DIFFTIME"]=" 1" -D["HAVE_FSTAT"]=" 1" -D["HAVE_GETENV"]=" 1" -D["HAVE_GETPAGESIZE"]=" 1" -D["HAVE_GETRUSAGE"]=" 1" -D["HAVE_GETTIMEOFDAY"]=" 1" -D["HAVE_GMTIME"]=" 1" -D["HAVE_ISATTY"]=" 1" -D["HAVE_LOCALTIME"]=" 1" -D["HAVE_LONGJMP"]=" 1" -D["HAVE_LSTAT"]=" 1" -D["HAVE_MEMCMP"]=" 1" -D["HAVE_MEMCPY"]=" 1" -D["HAVE_MEMMOVE"]=" 1" -D["HAVE_MEMSET"]=" 1" -D["HAVE_MKDIR"]=" 1" -D["HAVE_MKTIME"]=" 1" -D["HAVE_MMAP"]=" 1" -D["HAVE_MPROTECT"]=" 1" -D["HAVE_MUNMAP"]=" 1" -D["HAVE_QSORT"]=" 1" -D["HAVE_RAISE"]=" 1" -D["HAVE_RMDIR"]=" 1" -D["HAVE_SETJMP"]=" 1" -D["HAVE_SIGNAL"]=" 1" -D["HAVE_SNPRINTF"]=" 1" -D["HAVE_STRCASECMP"]=" 1" -D["HAVE_STRCHR"]=" 1" -D["HAVE_STRDUP"]=" 1" -D["HAVE_STRERROR"]=" 1" -D["HAVE_STRFTIME"]=" 1" -D["HAVE_STRNCASECMP"]=" 1" -D["HAVE_STRRCHR"]=" 1" -D["HAVE_STRSTR"]=" 1" -D["HAVE_TIME"]=" 1" -D["HAVE_UMASK"]=" 1" -D["HAVE_UTIME"]=" 1" -D["HAVE_VSNPRINTF"]=" 1" - for (key in D) D_is_set[key] = 1 - FS = "" -} -/^[\t ]*#[\t ]*(define|undef)[\t ]+[_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ][_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789]*([\t (]|$)/ { - line = $ 0 - split(line, arg, " ") - if (arg[1] == "#") { - defundef = arg[2] - mac1 = arg[3] - } else { - defundef = substr(arg[1], 2) - mac1 = arg[2] - } - split(mac1, mac2, "(") #) - macro = mac2[1] - prefix = substr(line, 1, index(line, defundef) - 1) - if (D_is_set[macro]) { - # Preserve the white space surrounding the "#". - print prefix "define", macro P[macro] D[macro] - next - } else { - # Replace #undef with comments. This is necessary, for example, - # in the case of _POSIX_SOURCE, which is predefined and required - # on some systems where configure will not decide to define it. - if (defundef == "undef") { - print "/*", prefix defundef, macro, "*/" - next - } - } -} -{ print } -_ACAWK - as_fn_error $? "could not setup config headers machinery" "$LINENO" 5 -fi # test -n "$CONFIG_HEADERS" - - -eval set X " :F $CONFIG_FILES :H $CONFIG_HEADERS :C $CONFIG_COMMANDS" -shift -for ac_tag -do - case $ac_tag in - :[FHLC]) ac_mode=$ac_tag; continue;; - esac - case $ac_mode$ac_tag in - :[FHL]*:*);; - :L* | :C*:*) as_fn_error $? "invalid tag \`$ac_tag'" "$LINENO" 5;; - :[FH]-) ac_tag=-:-;; - :[FH]*) ac_tag=$ac_tag:$ac_tag.in;; - esac - ac_save_IFS=$IFS - IFS=: - set x $ac_tag - IFS=$ac_save_IFS - shift - ac_file=$1 - shift - - case $ac_mode in - :L) ac_source=$1;; - :[FH]) - ac_file_inputs= - for ac_f - do - case $ac_f in - -) ac_f="$tmp/stdin";; - *) # Look for the file first in the build tree, then in the source tree - # (if the path is not absolute). The absolute path cannot be DOS-style, - # because $ac_f cannot contain `:'. - test -f "$ac_f" || - case $ac_f in - [\\/$]*) false;; - *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";; - esac || - as_fn_error 1 "cannot find input file: \`$ac_f'" "$LINENO" 5;; - esac - case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac - as_fn_append ac_file_inputs " '$ac_f'" - done - - # Let's still pretend it is `configure' which instantiates (i.e., don't - # use $as_me), people would be surprised to read: - # /* config.h. Generated by config.status. */ - configure_input='Generated from '` - $as_echo "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g' - `' by configure.' - if test x"$ac_file" != x-; then - configure_input="$ac_file. $configure_input" - { $as_echo "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5 -$as_echo "$as_me: creating $ac_file" >&6;} - fi - # Neutralize special characters interpreted by sed in replacement strings. - case $configure_input in #( - *\&* | *\|* | *\\* ) - ac_sed_conf_input=`$as_echo "$configure_input" | - sed 's/[\\\\&|]/\\\\&/g'`;; #( - *) ac_sed_conf_input=$configure_input;; - esac - - case $ac_tag in - *:-:* | *:-) cat >"$tmp/stdin" \ - || as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;; - esac - ;; - esac - - ac_dir=`$as_dirname -- "$ac_file" || -$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$ac_file" : 'X\(//\)[^/]' \| \ - X"$ac_file" : 'X\(//\)$' \| \ - X"$ac_file" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$ac_file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - as_dir="$ac_dir"; as_fn_mkdir_p - ac_builddir=. - -case "$ac_dir" in -.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; -*) - ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'` - # A ".." for each directory in $ac_dir_suffix. - ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'` - case $ac_top_builddir_sub in - "") ac_top_builddir_sub=. ac_top_build_prefix= ;; - *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; - esac ;; -esac -ac_abs_top_builddir=$ac_pwd -ac_abs_builddir=$ac_pwd$ac_dir_suffix -# for backward compatibility: -ac_top_builddir=$ac_top_build_prefix - -case $srcdir in - .) # We are building in place. - ac_srcdir=. - ac_top_srcdir=$ac_top_builddir_sub - ac_abs_top_srcdir=$ac_pwd ;; - [\\/]* | ?:[\\/]* ) # Absolute name. - ac_srcdir=$srcdir$ac_dir_suffix; - ac_top_srcdir=$srcdir - ac_abs_top_srcdir=$srcdir ;; - *) # Relative name. - ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix - ac_top_srcdir=$ac_top_build_prefix$srcdir - ac_abs_top_srcdir=$ac_pwd/$srcdir ;; -esac -ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix - - - case $ac_mode in - :F) - # - # CONFIG_FILE - # - - case $INSTALL in - [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;; - *) ac_INSTALL=$ac_top_build_prefix$INSTALL ;; - esac - ac_MKDIR_P=$MKDIR_P - case $MKDIR_P in - [\\/$]* | ?:[\\/]* ) ;; - */*) ac_MKDIR_P=$ac_top_build_prefix$MKDIR_P ;; - esac -# If the template does not know about datarootdir, expand it. -# FIXME: This hack should be removed a few years after 2.60. -ac_datarootdir_hack=; ac_datarootdir_seen= -ac_sed_dataroot=' -/datarootdir/ { - p - q -} -/@datadir@/p -/@docdir@/p -/@infodir@/p -/@localedir@/p -/@mandir@/p' -case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in -*datarootdir*) ac_datarootdir_seen=yes;; -*@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*) - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5 -$as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;} - ac_datarootdir_hack=' - s&@datadir@&${datarootdir}&g - s&@docdir@&${datarootdir}/doc/${PACKAGE_TARNAME}&g - s&@infodir@&${datarootdir}/info&g - s&@localedir@&${datarootdir}/locale&g - s&@mandir@&${datarootdir}/man&g - s&\${datarootdir}&${prefix}/share&g' ;; -esac -ac_sed_extra="/^[ ]*VPATH[ ]*=[ ]*/{ -h -s/// -s/^/:/ -s/[ ]*$/:/ -s/:\$(srcdir):/:/g -s/:\${srcdir}:/:/g -s/:@srcdir@:/:/g -s/^:*// -s/:*$// -x -s/\(=[ ]*\).*/\1/ -G -s/\n// -s/^[^=]*=[ ]*$// -} - -:t -/@[a-zA-Z_][a-zA-Z_0-9]*@/!b -s|@configure_input@|$ac_sed_conf_input|;t t -s&@top_builddir@&$ac_top_builddir_sub&;t t -s&@top_build_prefix@&$ac_top_build_prefix&;t t -s&@srcdir@&$ac_srcdir&;t t -s&@abs_srcdir@&$ac_abs_srcdir&;t t -s&@top_srcdir@&$ac_top_srcdir&;t t -s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t -s&@builddir@&$ac_builddir&;t t -s&@abs_builddir@&$ac_abs_builddir&;t t -s&@abs_top_builddir@&$ac_abs_top_builddir&;t t -s&@INSTALL@&$ac_INSTALL&;t t -s&@MKDIR_P@&$ac_MKDIR_P&;t t -$ac_datarootdir_hack -" -eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$tmp/subs.awk" >$tmp/out \ - || as_fn_error $? "could not create $ac_file" "$LINENO" 5 - -test -z "$ac_datarootdir_hack$ac_datarootdir_seen" && - { ac_out=`sed -n '/\${datarootdir}/p' "$tmp/out"`; test -n "$ac_out"; } && - { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' "$tmp/out"`; test -z "$ac_out"; } && - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir' -which seems to be undefined. Please make sure it is defined" >&5 -$as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir' -which seems to be undefined. Please make sure it is defined" >&2;} - - rm -f "$tmp/stdin" - case $ac_file in - -) cat "$tmp/out" && rm -f "$tmp/out";; - *) rm -f "$ac_file" && mv "$tmp/out" "$ac_file";; - esac \ - || as_fn_error $? "could not create $ac_file" "$LINENO" 5 - ;; - :H) - # - # CONFIG_HEADER - # - if test x"$ac_file" != x-; then - { - $as_echo "/* $configure_input */" \ - && eval '$AWK -f "$tmp/defines.awk"' "$ac_file_inputs" - } >"$tmp/config.h" \ - || as_fn_error $? "could not create $ac_file" "$LINENO" 5 - if diff "$ac_file" "$tmp/config.h" >/dev/null 2>&1; then - { $as_echo "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5 -$as_echo "$as_me: $ac_file is unchanged" >&6;} - else - rm -f "$ac_file" - mv "$tmp/config.h" "$ac_file" \ - || as_fn_error $? "could not create $ac_file" "$LINENO" 5 - fi - else - $as_echo "/* $configure_input */" \ - && eval '$AWK -f "$tmp/defines.awk"' "$ac_file_inputs" \ - || as_fn_error $? "could not create -" "$LINENO" 5 - fi -# Compute "$ac_file"'s index in $config_headers. -_am_arg="$ac_file" -_am_stamp_count=1 -for _am_header in $config_headers :; do - case $_am_header in - $_am_arg | $_am_arg:* ) - break ;; - * ) - _am_stamp_count=`expr $_am_stamp_count + 1` ;; - esac -done -echo "timestamp for $_am_arg" >`$as_dirname -- "$_am_arg" || -$as_expr X"$_am_arg" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$_am_arg" : 'X\(//\)[^/]' \| \ - X"$_am_arg" : 'X\(//\)$' \| \ - X"$_am_arg" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$_am_arg" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'`/stamp-h$_am_stamp_count - ;; - - :C) { $as_echo "$as_me:${as_lineno-$LINENO}: executing $ac_file commands" >&5 -$as_echo "$as_me: executing $ac_file commands" >&6;} - ;; - esac - - - case $ac_file$ac_mode in - "depfiles":C) test x"$AMDEP_TRUE" != x"" || { - # Autoconf 2.62 quotes --file arguments for eval, but not when files - # are listed without --file. Let's play safe and only enable the eval - # if we detect the quoting. - case $CONFIG_FILES in - *\'*) eval set x "$CONFIG_FILES" ;; - *) set x $CONFIG_FILES ;; - esac - shift - for mf - do - # Strip MF so we end up with the name of the file. - mf=`echo "$mf" | sed -e 's/:.*$//'` - # Check whether this is an Automake generated Makefile or not. - # We used to match only the files named `Makefile.in', but - # some people rename them; so instead we look at the file content. - # Grep'ing the first line is not enough: some people post-process - # each Makefile.in and add a new line on top of each file to say so. - # Grep'ing the whole file is not good either: AIX grep has a line - # limit of 2048, but all sed's we know have understand at least 4000. - if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then - dirpart=`$as_dirname -- "$mf" || -$as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$mf" : 'X\(//\)[^/]' \| \ - X"$mf" : 'X\(//\)$' \| \ - X"$mf" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$mf" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - else - continue - fi - # Extract the definition of DEPDIR, am__include, and am__quote - # from the Makefile without running `make'. - DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"` - test -z "$DEPDIR" && continue - am__include=`sed -n 's/^am__include = //p' < "$mf"` - test -z "am__include" && continue - am__quote=`sed -n 's/^am__quote = //p' < "$mf"` - # When using ansi2knr, U may be empty or an underscore; expand it - U=`sed -n 's/^U = //p' < "$mf"` - # Find all dependency output files, they are included files with - # $(DEPDIR) in their names. We invoke sed twice because it is the - # simplest approach to changing $(DEPDIR) to its actual value in the - # expansion. - for file in `sed -n " - s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \ - sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do - # Make sure the directory exists. - test -f "$dirpart/$file" && continue - fdir=`$as_dirname -- "$file" || -$as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$file" : 'X\(//\)[^/]' \| \ - X"$file" : 'X\(//\)$' \| \ - X"$file" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - as_dir=$dirpart/$fdir; as_fn_mkdir_p - # echo "creating $dirpart/$file" - echo '# dummy' > "$dirpart/$file" - done - done -} - ;; - "libtool":C) - - # See if we are running on zsh, and set the options which allow our - # commands through without removal of \ escapes. - if test -n "${ZSH_VERSION+set}" ; then - setopt NO_GLOB_SUBST - fi - - cfgfile="${ofile}T" - trap "$RM \"$cfgfile\"; exit 1" 1 2 15 - $RM "$cfgfile" - - cat <<_LT_EOF >> "$cfgfile" -#! $SHELL - -# `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services. -# Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $VERSION -# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`: -# NOTE: Changes made to this file will be lost: look at ltmain.sh. -# -# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, -# 2006, 2007, 2008, 2009, 2010 Free Software Foundation, -# Inc. -# Written by Gordon Matzigkeit, 1996 -# -# This file is part of GNU Libtool. -# -# GNU Libtool is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License as -# published by the Free Software Foundation; either version 2 of -# the License, or (at your option) any later version. -# -# As a special exception to the GNU General Public License, -# if you distribute this file as part of a program or library that -# is built using GNU Libtool, you may include this file under the -# same distribution terms that you use for the rest of that program. -# -# GNU Libtool is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GNU Libtool; see the file COPYING. If not, a copy -# can be downloaded from http://www.gnu.org/licenses/gpl.html, or -# obtained by writing to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - - -# The names of the tagged configurations supported by this script. -available_tags="" - -# ### BEGIN LIBTOOL CONFIG - -# Whether or not to build static libraries. -build_old_libs=$enable_static - -# Whether or not to build shared libraries. -build_libtool_libs=$enable_shared - -# Which release of libtool.m4 was used? -macro_version=$macro_version -macro_revision=$macro_revision - -# What type of objects to build. -pic_mode=$pic_mode - -# Whether or not to optimize for fast installation. -fast_install=$enable_fast_install - -# Shell to use when invoking shell scripts. -SHELL=$lt_SHELL - -# An echo program that protects backslashes. -ECHO=$lt_ECHO - -# The host system. -host_alias=$host_alias -host=$host -host_os=$host_os - -# The build system. -build_alias=$build_alias -build=$build -build_os=$build_os - -# A sed program that does not truncate output. -SED=$lt_SED - -# Sed that helps us avoid accidentally triggering echo(1) options like -n. -Xsed="\$SED -e 1s/^X//" - -# A grep program that handles long lines. -GREP=$lt_GREP - -# An ERE matcher. -EGREP=$lt_EGREP - -# A literal string matcher. -FGREP=$lt_FGREP - -# A BSD- or MS-compatible name lister. -NM=$lt_NM - -# Whether we need soft or hard links. -LN_S=$lt_LN_S - -# What is the maximum length of a command? -max_cmd_len=$max_cmd_len - -# Object file suffix (normally "o"). -objext=$ac_objext - -# Executable file suffix (normally ""). -exeext=$exeext - -# whether the shell understands "unset". -lt_unset=$lt_unset - -# turn spaces into newlines. -SP2NL=$lt_lt_SP2NL - -# turn newlines into spaces. -NL2SP=$lt_lt_NL2SP - -# An object symbol dumper. -OBJDUMP=$lt_OBJDUMP - -# Method to check whether dependent libraries are shared objects. -deplibs_check_method=$lt_deplibs_check_method - -# Command to use when deplibs_check_method == "file_magic". -file_magic_cmd=$lt_file_magic_cmd - -# The archiver. -AR=$lt_AR -AR_FLAGS=$lt_AR_FLAGS - -# A symbol stripping program. -STRIP=$lt_STRIP - -# Commands used to install an old-style archive. -RANLIB=$lt_RANLIB -old_postinstall_cmds=$lt_old_postinstall_cmds -old_postuninstall_cmds=$lt_old_postuninstall_cmds - -# Whether to use a lock for old archive extraction. -lock_old_archive_extraction=$lock_old_archive_extraction - -# A C compiler. -LTCC=$lt_CC - -# LTCC compiler flags. -LTCFLAGS=$lt_CFLAGS - -# Take the output of nm and produce a listing of raw symbols and C names. -global_symbol_pipe=$lt_lt_cv_sys_global_symbol_pipe - -# Transform the output of nm in a proper C declaration. -global_symbol_to_cdecl=$lt_lt_cv_sys_global_symbol_to_cdecl - -# Transform the output of nm in a C name address pair. -global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address - -# Transform the output of nm in a C name address pair when lib prefix is needed. -global_symbol_to_c_name_address_lib_prefix=$lt_lt_cv_sys_global_symbol_to_c_name_address_lib_prefix - -# The name of the directory that contains temporary libtool files. -objdir=$objdir - -# Used to examine libraries when file_magic_cmd begins with "file". -MAGIC_CMD=$MAGIC_CMD - -# Must we lock files when doing compilation? -need_locks=$lt_need_locks - -# Tool to manipulate archived DWARF debug symbol files on Mac OS X. -DSYMUTIL=$lt_DSYMUTIL - -# Tool to change global to local symbols on Mac OS X. -NMEDIT=$lt_NMEDIT - -# Tool to manipulate fat objects and archives on Mac OS X. -LIPO=$lt_LIPO - -# ldd/readelf like tool for Mach-O binaries on Mac OS X. -OTOOL=$lt_OTOOL - -# ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4. -OTOOL64=$lt_OTOOL64 - -# Old archive suffix (normally "a"). -libext=$libext - -# Shared library suffix (normally ".so"). -shrext_cmds=$lt_shrext_cmds - -# The commands to extract the exported symbol list from a shared archive. -extract_expsyms_cmds=$lt_extract_expsyms_cmds - -# Variables whose values should be saved in libtool wrapper scripts and -# restored at link time. -variables_saved_for_relink=$lt_variables_saved_for_relink - -# Do we need the "lib" prefix for modules? -need_lib_prefix=$need_lib_prefix - -# Do we need a version for libraries? -need_version=$need_version - -# Library versioning type. -version_type=$version_type - -# Shared library runtime path variable. -runpath_var=$runpath_var - -# Shared library path variable. -shlibpath_var=$shlibpath_var - -# Is shlibpath searched before the hard-coded library search path? -shlibpath_overrides_runpath=$shlibpath_overrides_runpath - -# Format of library name prefix. -libname_spec=$lt_libname_spec - -# List of archive names. First name is the real one, the rest are links. -# The last name is the one that the linker finds with -lNAME -library_names_spec=$lt_library_names_spec - -# The coded name of the library, if different from the real name. -soname_spec=$lt_soname_spec - -# Permission mode override for installation of shared libraries. -install_override_mode=$lt_install_override_mode - -# Command to use after installation of a shared archive. -postinstall_cmds=$lt_postinstall_cmds - -# Command to use after uninstallation of a shared archive. -postuninstall_cmds=$lt_postuninstall_cmds - -# Commands used to finish a libtool library installation in a directory. -finish_cmds=$lt_finish_cmds - -# As "finish_cmds", except a single script fragment to be evaled but -# not shown. -finish_eval=$lt_finish_eval - -# Whether we should hardcode library paths into libraries. -hardcode_into_libs=$hardcode_into_libs - -# Compile-time system search path for libraries. -sys_lib_search_path_spec=$lt_sys_lib_search_path_spec - -# Run-time system search path for libraries. -sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec - -# Whether dlopen is supported. -dlopen_support=$enable_dlopen - -# Whether dlopen of programs is supported. -dlopen_self=$enable_dlopen_self - -# Whether dlopen of statically linked programs is supported. -dlopen_self_static=$enable_dlopen_self_static - -# Commands to strip libraries. -old_striplib=$lt_old_striplib -striplib=$lt_striplib - - -# The linker used to build libraries. -LD=$lt_LD - -# How to create reloadable object files. -reload_flag=$lt_reload_flag -reload_cmds=$lt_reload_cmds - -# Commands used to build an old-style archive. -old_archive_cmds=$lt_old_archive_cmds - -# A language specific compiler. -CC=$lt_compiler - -# Is the compiler the GNU compiler? -with_gcc=$GCC - -# Compiler flag to turn off builtin functions. -no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag - -# How to pass a linker flag through the compiler. -wl=$lt_lt_prog_compiler_wl - -# Additional compiler flags for building library objects. -pic_flag=$lt_lt_prog_compiler_pic - -# Compiler flag to prevent dynamic linking. -link_static_flag=$lt_lt_prog_compiler_static - -# Does compiler simultaneously support -c and -o options? -compiler_c_o=$lt_lt_cv_prog_compiler_c_o - -# Whether or not to add -lc for building shared libraries. -build_libtool_need_lc=$archive_cmds_need_lc - -# Whether or not to disallow shared libs when runtime libs are static. -allow_libtool_libs_with_static_runtimes=$enable_shared_with_static_runtimes - -# Compiler flag to allow reflexive dlopens. -export_dynamic_flag_spec=$lt_export_dynamic_flag_spec - -# Compiler flag to generate shared objects directly from archives. -whole_archive_flag_spec=$lt_whole_archive_flag_spec - -# Whether the compiler copes with passing no objects directly. -compiler_needs_object=$lt_compiler_needs_object - -# Create an old-style archive from a shared archive. -old_archive_from_new_cmds=$lt_old_archive_from_new_cmds - -# Create a temporary old-style archive to link instead of a shared archive. -old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds - -# Commands used to build a shared archive. -archive_cmds=$lt_archive_cmds -archive_expsym_cmds=$lt_archive_expsym_cmds - -# Commands used to build a loadable module if different from building -# a shared archive. -module_cmds=$lt_module_cmds -module_expsym_cmds=$lt_module_expsym_cmds - -# Whether we are building with GNU ld or not. -with_gnu_ld=$lt_with_gnu_ld - -# Flag that allows shared libraries with undefined symbols to be built. -allow_undefined_flag=$lt_allow_undefined_flag - -# Flag that enforces no undefined symbols. -no_undefined_flag=$lt_no_undefined_flag - -# Flag to hardcode \$libdir into a binary during linking. -# This must work even if \$libdir does not exist -hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec - -# If ld is used when linking, flag to hardcode \$libdir into a binary -# during linking. This must work even if \$libdir does not exist. -hardcode_libdir_flag_spec_ld=$lt_hardcode_libdir_flag_spec_ld - -# Whether we need a single "-rpath" flag with a separated argument. -hardcode_libdir_separator=$lt_hardcode_libdir_separator - -# Set to "yes" if using DIR/libNAME\${shared_ext} during linking hardcodes -# DIR into the resulting binary. -hardcode_direct=$hardcode_direct - -# Set to "yes" if using DIR/libNAME\${shared_ext} during linking hardcodes -# DIR into the resulting binary and the resulting library dependency is -# "absolute",i.e impossible to change by setting \${shlibpath_var} if the -# library is relocated. -hardcode_direct_absolute=$hardcode_direct_absolute - -# Set to "yes" if using the -LDIR flag during linking hardcodes DIR -# into the resulting binary. -hardcode_minus_L=$hardcode_minus_L - -# Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR -# into the resulting binary. -hardcode_shlibpath_var=$hardcode_shlibpath_var - -# Set to "yes" if building a shared library automatically hardcodes DIR -# into the library and all subsequent libraries and executables linked -# against it. -hardcode_automatic=$hardcode_automatic - -# Set to yes if linker adds runtime paths of dependent libraries -# to runtime path list. -inherit_rpath=$inherit_rpath - -# Whether libtool must link a program against all its dependency libraries. -link_all_deplibs=$link_all_deplibs - -# Fix the shell variable \$srcfile for the compiler. -fix_srcfile_path=$lt_fix_srcfile_path - -# Set to "yes" if exported symbols are required. -always_export_symbols=$always_export_symbols - -# The commands to list exported symbols. -export_symbols_cmds=$lt_export_symbols_cmds - -# Symbols that should not be listed in the preloaded symbols. -exclude_expsyms=$lt_exclude_expsyms - -# Symbols that must always be exported. -include_expsyms=$lt_include_expsyms - -# Commands necessary for linking programs (against libraries) with templates. -prelink_cmds=$lt_prelink_cmds - -# Specify filename containing input files. -file_list_spec=$lt_file_list_spec - -# How to hardcode a shared library path into an executable. -hardcode_action=$hardcode_action - -# ### END LIBTOOL CONFIG - -_LT_EOF - - case $host_os in - aix3*) - cat <<\_LT_EOF >> "$cfgfile" -# AIX sometimes has problems with the GCC collect2 program. For some -# reason, if we set the COLLECT_NAMES environment variable, the problems -# vanish in a puff of smoke. -if test "X${COLLECT_NAMES+set}" != Xset; then - COLLECT_NAMES= - export COLLECT_NAMES -fi -_LT_EOF - ;; - esac - - -ltmain="$ac_aux_dir/ltmain.sh" - - - # We use sed instead of cat because bash on DJGPP gets confused if - # if finds mixed CR/LF and LF-only lines. Since sed operates in - # text mode, it properly converts lines to CR/LF. This bash problem - # is reportedly fixed, but why not run on old versions too? - sed '/^# Generated shell functions inserted here/q' "$ltmain" >> "$cfgfile" \ - || (rm -f "$cfgfile"; exit 1) - - case $xsi_shell in - yes) - cat << \_LT_EOF >> "$cfgfile" - -# func_dirname file append nondir_replacement -# Compute the dirname of FILE. If nonempty, add APPEND to the result, -# otherwise set result to NONDIR_REPLACEMENT. -func_dirname () -{ - case ${1} in - */*) func_dirname_result="${1%/*}${2}" ;; - * ) func_dirname_result="${3}" ;; - esac -} - -# func_basename file -func_basename () -{ - func_basename_result="${1##*/}" -} - -# func_dirname_and_basename file append nondir_replacement -# perform func_basename and func_dirname in a single function -# call: -# dirname: Compute the dirname of FILE. If nonempty, -# add APPEND to the result, otherwise set result -# to NONDIR_REPLACEMENT. -# value returned in "$func_dirname_result" -# basename: Compute filename of FILE. -# value retuned in "$func_basename_result" -# Implementation must be kept synchronized with func_dirname -# and func_basename. For efficiency, we do not delegate to -# those functions but instead duplicate the functionality here. -func_dirname_and_basename () -{ - case ${1} in - */*) func_dirname_result="${1%/*}${2}" ;; - * ) func_dirname_result="${3}" ;; - esac - func_basename_result="${1##*/}" -} - -# func_stripname prefix suffix name -# strip PREFIX and SUFFIX off of NAME. -# PREFIX and SUFFIX must not contain globbing or regex special -# characters, hashes, percent signs, but SUFFIX may contain a leading -# dot (in which case that matches only a dot). -func_stripname () -{ - # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are - # positional parameters, so assign one to ordinary parameter first. - func_stripname_result=${3} - func_stripname_result=${func_stripname_result#"${1}"} - func_stripname_result=${func_stripname_result%"${2}"} -} - -# func_opt_split -func_opt_split () -{ - func_opt_split_opt=${1%%=*} - func_opt_split_arg=${1#*=} -} - -# func_lo2o object -func_lo2o () -{ - case ${1} in - *.lo) func_lo2o_result=${1%.lo}.${objext} ;; - *) func_lo2o_result=${1} ;; - esac -} - -# func_xform libobj-or-source -func_xform () -{ - func_xform_result=${1%.*}.lo -} - -# func_arith arithmetic-term... -func_arith () -{ - func_arith_result=$(( $* )) -} - -# func_len string -# STRING may not start with a hyphen. -func_len () -{ - func_len_result=${#1} -} - -_LT_EOF - ;; - *) # Bourne compatible functions. - cat << \_LT_EOF >> "$cfgfile" - -# func_dirname file append nondir_replacement -# Compute the dirname of FILE. If nonempty, add APPEND to the result, -# otherwise set result to NONDIR_REPLACEMENT. -func_dirname () -{ - # Extract subdirectory from the argument. - func_dirname_result=`$ECHO "${1}" | $SED "$dirname"` - if test "X$func_dirname_result" = "X${1}"; then - func_dirname_result="${3}" - else - func_dirname_result="$func_dirname_result${2}" - fi -} - -# func_basename file -func_basename () -{ - func_basename_result=`$ECHO "${1}" | $SED "$basename"` -} - - -# func_stripname prefix suffix name -# strip PREFIX and SUFFIX off of NAME. -# PREFIX and SUFFIX must not contain globbing or regex special -# characters, hashes, percent signs, but SUFFIX may contain a leading -# dot (in which case that matches only a dot). -# func_strip_suffix prefix name -func_stripname () -{ - case ${2} in - .*) func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%\\\\${2}\$%%"`;; - *) func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%${2}\$%%"`;; - esac -} - -# sed scripts: -my_sed_long_opt='1s/^\(-[^=]*\)=.*/\1/;q' -my_sed_long_arg='1s/^-[^=]*=//' - -# func_opt_split -func_opt_split () -{ - func_opt_split_opt=`$ECHO "${1}" | $SED "$my_sed_long_opt"` - func_opt_split_arg=`$ECHO "${1}" | $SED "$my_sed_long_arg"` -} - -# func_lo2o object -func_lo2o () -{ - func_lo2o_result=`$ECHO "${1}" | $SED "$lo2o"` -} - -# func_xform libobj-or-source -func_xform () -{ - func_xform_result=`$ECHO "${1}" | $SED 's/\.[^.]*$/.lo/'` -} - -# func_arith arithmetic-term... -func_arith () -{ - func_arith_result=`expr "$@"` -} - -# func_len string -# STRING may not start with a hyphen. -func_len () -{ - func_len_result=`expr "$1" : ".*" 2>/dev/null || echo $max_cmd_len` -} - -_LT_EOF -esac - -case $lt_shell_append in - yes) - cat << \_LT_EOF >> "$cfgfile" - -# func_append var value -# Append VALUE to the end of shell variable VAR. -func_append () -{ - eval "$1+=\$2" -} -_LT_EOF - ;; - *) - cat << \_LT_EOF >> "$cfgfile" - -# func_append var value -# Append VALUE to the end of shell variable VAR. -func_append () -{ - eval "$1=\$$1\$2" -} - -_LT_EOF - ;; - esac - - - sed -n '/^# Generated shell functions inserted here/,$p' "$ltmain" >> "$cfgfile" \ - || (rm -f "$cfgfile"; exit 1) - - mv -f "$cfgfile" "$ofile" || - (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile") - chmod +x "$ofile" - - ;; - - esac -done # for ac_tag - - -as_fn_exit 0 diff --git a/release/src/router/nocat/Makefile b/release/src/router/nocat/Makefile index c08f51420d..26e274d38f 100644 --- a/release/src/router/nocat/Makefile +++ b/release/src/router/nocat/Makefile @@ -83,13 +83,13 @@ DIST_ARCHIVES = $(distdir).tar.gz GZIP_ENV = --best distuninstallcheck_listfiles = find . -type f -print distcleancheck_listfiles = find . -type f -print -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/nocat/missing --run aclocal-1.8 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/nocat/missing --run aclocal-1.8 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/nocat/missing --run tar -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/nocat/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/nocat/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/nocat/missing --run automake-1.8 +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/nocat/missing --run tar +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/nocat/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/nocat/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/nocat/missing --run automake-1.8 AWK = gawk CC = mipsel-uclibc-gcc CCDEPMODE = depmode=gcc3 @@ -105,9 +105,9 @@ ECHO_T = EGREP = grep -E EXEEXT = GHTTPD_PROGRAM = -GLIB_CFLAGS = -I/home/vicente/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/include/glib-1.2 -I/home/vicente/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/lib/glib/include -GLIB_CONFIG = /home/vicente/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/bin/glib-config -GLIB_LIBS = -L/home/vicente/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/lib -lglib +GLIB_CFLAGS = -I/home/vicente/repos/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/include/glib-1.2 -I/home/vicente/repos/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/lib/glib/include +GLIB_CONFIG = /home/vicente/repos/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/bin/glib-config +GLIB_LIBS = -L/home/vicente/repos/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/lib -lglib INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} @@ -119,7 +119,7 @@ LTLIBOBJS = strtod$U.lo MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/nocat/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/nocat/missing --run makeinfo OBJEXT = o PACKAGE = NoCatSplash PACKAGE_BUGREPORT = schuyler@nocat.net @@ -153,7 +153,7 @@ htdocsdir = ${prefix}/share/nocat/htdocs imagesdir = ${prefix}/share/nocat/htdocs/images includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/nocat/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/nocat/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec libexecscripts = libexec/iptables/throttle.fw libexec/iptables/check_splashd.sh libexec/iptables/reset.fw libexec/iptables/call_splashd_check.sh libexec/iptables/initialize.fw libexec/iptables/clear.fw libexec/iptables/dump.fw libexec/iptables/access.fw libexec/iptables/uninitialize.fw diff --git a/release/src/router/nocat/config.status b/release/src/router/nocat/config.status deleted file mode 100755 index 124b75f1af..0000000000 --- a/release/src/router/nocat/config.status +++ /dev/null @@ -1,1270 +0,0 @@ -#! /bin/sh -# Generated by configure. -# Run this file to recreate the current configuration. -# Compiler output produced by configure, useful for debugging -# configure, is in config.log if it exists. - -debug=false -ac_cs_recheck=false -ac_cs_silent=false -SHELL=${CONFIG_SHELL-/bin/sh} -## --------------------- ## -## M4sh Initialization. ## -## --------------------- ## - -# Be Bourne compatible -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then - emulate sh - NULLCMD=: - # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which - # is contrary to our usage. Disable this feature. - alias -g '${1+"$@"}'='"$@"' -elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then - set -o posix -fi -DUALCASE=1; export DUALCASE # for MKS sh - -# Support unset when possible. -if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then - as_unset=unset -else - as_unset=false -fi - - -# Work around bugs in pre-3.0 UWIN ksh. -$as_unset ENV MAIL MAILPATH -PS1='$ ' -PS2='> ' -PS4='+ ' - -# NLS nuisances. -for as_var in \ - LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \ - LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \ - LC_TELEPHONE LC_TIME -do - if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then - eval $as_var=C; export $as_var - else - $as_unset $as_var - fi -done - -# Required to use basename. -if expr a : '\(a\)' >/dev/null 2>&1; then - as_expr=expr -else - as_expr=false -fi - -if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then - as_basename=basename -else - as_basename=false -fi - - -# Name of the executable. -as_me=`$as_basename "$0" || -$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ - X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)$' \| \ - . : '\(.\)' 2>/dev/null || -echo X/"$0" | - sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; } - /^X\/\(\/\/\)$/{ s//\1/; q; } - /^X\/\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - - -# PATH needs CR, and LINENO needs CR and PATH. -# Avoid depending upon Character Ranges. -as_cr_letters='abcdefghijklmnopqrstuvwxyz' -as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' -as_cr_Letters=$as_cr_letters$as_cr_LETTERS -as_cr_digits='0123456789' -as_cr_alnum=$as_cr_Letters$as_cr_digits - -# The user is always right. -if test "${PATH_SEPARATOR+set}" != set; then - echo "#! /bin/sh" >conf$$.sh - echo "exit 0" >>conf$$.sh - chmod +x conf$$.sh - if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then - PATH_SEPARATOR=';' - else - PATH_SEPARATOR=: - fi - rm -f conf$$.sh -fi - - - as_lineno_1=$LINENO - as_lineno_2=$LINENO - as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` - test "x$as_lineno_1" != "x$as_lineno_2" && - test "x$as_lineno_3" = "x$as_lineno_2" || { - # Find who we are. Look in the path if we contain no path at all - # relative or not. - case $0 in - *[\\/]* ) as_myself=$0 ;; - *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break -done - - ;; - esac - # We did not find ourselves, most probably we were run as `sh COMMAND' - # in which case we are not to be found in the path. - if test "x$as_myself" = x; then - as_myself=$0 - fi - if test ! -f "$as_myself"; then - { { echo "$as_me:$LINENO: error: cannot find myself; rerun with an absolute path" >&5 -echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2;} - { (exit 1); exit 1; }; } - fi - case $CONFIG_SHELL in - '') - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for as_base in sh bash ksh sh5; do - case $as_dir in - /*) - if ("$as_dir/$as_base" -c ' - as_lineno_1=$LINENO - as_lineno_2=$LINENO - as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` - test "x$as_lineno_1" != "x$as_lineno_2" && - test "x$as_lineno_3" = "x$as_lineno_2" ') 2>/dev/null; then - $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { BASH_ENV=; export BASH_ENV; } - $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; } - CONFIG_SHELL=$as_dir/$as_base - export CONFIG_SHELL - exec "$CONFIG_SHELL" "$0" ${1+"$@"} - fi;; - esac - done -done -;; - esac - - # Create $as_me.lineno as a copy of $as_myself, but with $LINENO - # uniformly replaced by the line number. The first 'sed' inserts a - # line-number line before each line; the second 'sed' does the real - # work. The second script uses 'N' to pair each line-number line - # with the numbered line, and appends trailing '-' during - # substitution so that $LINENO is not a special case at line end. - # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the - # second 'sed' script. Blame Lee E. McMahon for sed's syntax. :-) - sed '=' <$as_myself | - sed ' - N - s,$,-, - : loop - s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3, - t loop - s,-$,, - s,^['$as_cr_digits']*\n,, - ' >$as_me.lineno && - chmod +x $as_me.lineno || - { { echo "$as_me:$LINENO: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&5 -echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2;} - { (exit 1); exit 1; }; } - - # Don't try to exec as it changes $[0], causing all sort of problems - # (the dirname of $[0] is not the place where we might find the - # original and so on. Autoconf is especially sensible to this). - . ./$as_me.lineno - # Exit status is that of the last command. - exit -} - - -case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in - *c*,-n*) ECHO_N= ECHO_C=' -' ECHO_T=' ' ;; - *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;; - *) ECHO_N= ECHO_C='\c' ECHO_T= ;; -esac - -if expr a : '\(a\)' >/dev/null 2>&1; then - as_expr=expr -else - as_expr=false -fi - -rm -f conf$$ conf$$.exe conf$$.file -echo >conf$$.file -if ln -s conf$$.file conf$$ 2>/dev/null; then - # We could just check for DJGPP; but this test a) works b) is more generic - # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04). - if test -f conf$$.exe; then - # Don't use ln at all; we don't have any links - as_ln_s='cp -p' - else - as_ln_s='ln -s' - fi -elif ln conf$$.file conf$$ 2>/dev/null; then - as_ln_s=ln -else - as_ln_s='cp -p' -fi -rm -f conf$$ conf$$.exe conf$$.file - -if mkdir -p . 2>/dev/null; then - as_mkdir_p=: -else - test -d ./-p && rmdir ./-p - as_mkdir_p=false -fi - -as_executable_p="test -f" - -# Sed expression to map a string onto a valid CPP name. -as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" - -# Sed expression to map a string onto a valid variable name. -as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" - - -# IFS -# We need space, tab and new line, in precisely that order. -as_nl=' -' -IFS=" $as_nl" - -# CDPATH. -$as_unset CDPATH - -exec 6>&1 - -# Open the log real soon, to keep \$[0] and so on meaningful, and to -# report actual input values of CONFIG_FILES etc. instead of their -# values after options handling. Logging --version etc. is OK. -exec 5>>config.log -{ - echo - sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX -## Running $as_me. ## -_ASBOX -} >&5 -cat >&5 <<_CSEOF - -This file was extended by nocat $as_me 0.93pre2, which was -generated by GNU Autoconf 2.59. Invocation command line was - - CONFIG_FILES = $CONFIG_FILES - CONFIG_HEADERS = $CONFIG_HEADERS - CONFIG_LINKS = $CONFIG_LINKS - CONFIG_COMMANDS = $CONFIG_COMMANDS - $ $0 $@ - -_CSEOF -echo "on `(hostname || uname -n) 2>/dev/null | sed 1q`" >&5 -echo >&5 -config_files=" Makefile src/Makefile" -config_headers=" src/config.h" -config_commands=" depfiles" - -ac_cs_usage="\ -\`$as_me' instantiates files from templates according to the -current configuration. - -Usage: $0 [OPTIONS] [FILE]... - - -h, --help print this help, then exit - -V, --version print version number, then exit - -q, --quiet do not print progress messages - -d, --debug don't remove temporary files - --recheck update $as_me by reconfiguring in the same conditions - --file=FILE[:TEMPLATE] - instantiate the configuration file FILE - --header=FILE[:TEMPLATE] - instantiate the configuration header FILE - -Configuration files: -$config_files - -Configuration headers: -$config_headers - -Configuration commands: -$config_commands - -Report bugs to ." -ac_cs_version="\ -nocat config.status 0.93pre2 -configured by ./configure, generated by GNU Autoconf 2.59, - with options \"'--host=mipsel-linux' '--build=x86_64-linux-gnu' '--with-firewall=iptables' '--with-glib-prefix=/home/vicente/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr' '--localstatedir=/var' '--sysconfdir=/etc' 'CC=mipsel-uclibc-gcc' 'build_alias=x86_64-linux-gnu' 'host_alias=mipsel-linux'\" - -Copyright (C) 2003 Free Software Foundation, Inc. -This config.status script is free software; the Free Software Foundation -gives unlimited permission to copy, distribute and modify it." -srcdir=. -INSTALL="/usr/bin/install -c" -# If no file are specified by the user, then we need to provide default -# value. By we need to know if files were specified by the user. -ac_need_defaults=: -while test $# != 0 -do - case $1 in - --*=*) - ac_option=`expr "x$1" : 'x\([^=]*\)='` - ac_optarg=`expr "x$1" : 'x[^=]*=\(.*\)'` - ac_shift=: - ;; - -*) - ac_option=$1 - ac_optarg=$2 - ac_shift=shift - ;; - *) # This is not an option, so the user has probably given explicit - # arguments. - ac_option=$1 - ac_need_defaults=false;; - esac - - case $ac_option in - # Handling of the options. - -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) - ac_cs_recheck=: ;; - --version | --vers* | -V ) - echo "$ac_cs_version"; exit 0 ;; - --he | --h) - # Conflict between --help and --header - { { echo "$as_me:$LINENO: error: ambiguous option: $1 -Try \`$0 --help' for more information." >&5 -echo "$as_me: error: ambiguous option: $1 -Try \`$0 --help' for more information." >&2;} - { (exit 1); exit 1; }; };; - --help | --hel | -h ) - echo "$ac_cs_usage"; exit 0 ;; - --debug | --d* | -d ) - debug=: ;; - --file | --fil | --fi | --f ) - $ac_shift - CONFIG_FILES="$CONFIG_FILES $ac_optarg" - ac_need_defaults=false;; - --header | --heade | --head | --hea ) - $ac_shift - CONFIG_HEADERS="$CONFIG_HEADERS $ac_optarg" - ac_need_defaults=false;; - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil | --si | --s) - ac_cs_silent=: ;; - - # This is an error. - -*) { { echo "$as_me:$LINENO: error: unrecognized option: $1 -Try \`$0 --help' for more information." >&5 -echo "$as_me: error: unrecognized option: $1 -Try \`$0 --help' for more information." >&2;} - { (exit 1); exit 1; }; } ;; - - *) ac_config_targets="$ac_config_targets $1" ;; - - esac - shift -done - -ac_configure_extra_args= - -if $ac_cs_silent; then - exec 6>/dev/null - ac_configure_extra_args="$ac_configure_extra_args --silent" -fi - -if $ac_cs_recheck; then - echo "running /bin/sh ./configure " '--host=mipsel-linux' '--build=x86_64-linux-gnu' '--with-firewall=iptables' '--with-glib-prefix=/home/vicente/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr' '--localstatedir=/var' '--sysconfdir=/etc' 'CC=mipsel-uclibc-gcc' 'build_alias=x86_64-linux-gnu' 'host_alias=mipsel-linux' $ac_configure_extra_args " --no-create --no-recursion" >&6 - exec /bin/sh ./configure '--host=mipsel-linux' '--build=x86_64-linux-gnu' '--with-firewall=iptables' '--with-glib-prefix=/home/vicente/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr' '--localstatedir=/var' '--sysconfdir=/etc' 'CC=mipsel-uclibc-gcc' 'build_alias=x86_64-linux-gnu' 'host_alias=mipsel-linux' $ac_configure_extra_args --no-create --no-recursion -fi - -# -# INIT-COMMANDS section. -# - -AMDEP_TRUE="" ac_aux_dir="." - -for ac_config_target in $ac_config_targets -do - case "$ac_config_target" in - # Handling of arguments. - "Makefile" ) CONFIG_FILES="$CONFIG_FILES Makefile" ;; - "src/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/Makefile" ;; - "depfiles" ) CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;; - "src/config.h" ) CONFIG_HEADERS="$CONFIG_HEADERS src/config.h" ;; - *) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5 -echo "$as_me: error: invalid argument: $ac_config_target" >&2;} - { (exit 1); exit 1; }; };; - esac -done - -# If the user did not use the arguments to specify the items to instantiate, -# then the envvar interface is used. Set only those that are not. -# We use the long form for the default assignment because of an extremely -# bizarre bug on SunOS 4.1.3. -if $ac_need_defaults; then - test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files - test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers - test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands -fi - -# Have a temporary directory for convenience. Make it in the build tree -# simply because there is no reason to put it here, and in addition, -# creating and moving files from /tmp can sometimes cause problems. -# Create a temporary directory, and hook for its removal unless debugging. -$debug || -{ - trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' 0 - trap '{ (exit 1); exit 1; }' 1 2 13 15 -} - -# Create a (secure) tmp directory for tmp files. - -{ - tmp=`(umask 077 && mktemp -d -q "./confstatXXXXXX") 2>/dev/null` && - test -n "$tmp" && test -d "$tmp" -} || -{ - tmp=./confstat$$-$RANDOM - (umask 077 && mkdir $tmp) -} || -{ - echo "$me: cannot create a temporary directory in ." >&2 - { (exit 1); exit 1; } -} - - -# -# CONFIG_FILES section. -# - -# No need to generate the scripts if there are no CONFIG_FILES. -# This happens for instance when ./config.status config.h -if test -n "$CONFIG_FILES"; then - # Protect against being on the right side of a sed subst in config.status. - sed 's/,@/@@/; s/@,/@@/; s/,;t t$/@;t t/; /@;t t$/s/[\\&,]/\\&/g; - s/@@/,@/; s/@@/@,/; s/@;t t$/,;t t/' >$tmp/subs.sed <<\CEOF -s,@SHELL@,/bin/sh,;t t -s,@PATH_SEPARATOR@,:,;t t -s,@PACKAGE_NAME@,nocat,;t t -s,@PACKAGE_TARNAME@,NoCatSplash,;t t -s,@PACKAGE_VERSION@,0.93pre2,;t t -s,@PACKAGE_STRING@,nocat 0.93pre2,;t t -s,@PACKAGE_BUGREPORT@,schuyler@nocat.net,;t t -s,@exec_prefix@,/usr/local,;t t -s,@prefix@,/usr/local,;t t -s,@program_transform_name@,s,x,x,,;t t -s,@bindir@,${exec_prefix}/bin,;t t -s,@sbindir@,${exec_prefix}/sbin,;t t -s,@libexecdir@,${exec_prefix}/libexec,;t t -s,@datadir@,${prefix}/share,;t t -s,@sysconfdir@,/etc,;t t -s,@sharedstatedir@,${prefix}/com,;t t -s,@localstatedir@,/var,;t t -s,@libdir@,${exec_prefix}/lib,;t t -s,@includedir@,${prefix}/include,;t t -s,@oldincludedir@,/usr/include,;t t -s,@infodir@,${prefix}/info,;t t -s,@mandir@,${prefix}/man,;t t -s,@build_alias@,x86_64-linux-gnu,;t t -s,@host_alias@,mipsel-linux,;t t -s,@target_alias@,,;t t -s,@DEFS@,-DHAVE_CONFIG_H,;t t -s,@ECHO_C@,,;t t -s,@ECHO_N@,-n,;t t -s,@ECHO_T@,,;t t -s,@LIBS@,,;t t -s,@INSTALL_PROGRAM@,${INSTALL},;t t -s,@INSTALL_SCRIPT@,${INSTALL},;t t -s,@INSTALL_DATA@,${INSTALL} -m 644,;t t -s,@CYGPATH_W@,echo,;t t -s,@PACKAGE@,NoCatSplash,;t t -s,@VERSION@,0.93pre2,;t t -s,@ACLOCAL@,${SHELL} /home/vicente/tomato/release/src/router/nocat/missing --run aclocal-1.8,;t t -s,@AUTOCONF@,${SHELL} /home/vicente/tomato/release/src/router/nocat/missing --run autoconf,;t t -s,@AUTOMAKE@,${SHELL} /home/vicente/tomato/release/src/router/nocat/missing --run automake-1.8,;t t -s,@AUTOHEADER@,${SHELL} /home/vicente/tomato/release/src/router/nocat/missing --run autoheader,;t t -s,@MAKEINFO@,${SHELL} /home/vicente/tomato/release/src/router/nocat/missing --run makeinfo,;t t -s,@AMTAR@,${SHELL} /home/vicente/tomato/release/src/router/nocat/missing --run tar,;t t -s,@install_sh@,/home/vicente/tomato/release/src/router/nocat/install-sh,;t t -s,@STRIP@,mipsel-uclibc-strip -R .note -R .comment,;t t -s,@ac_ct_STRIP@,,;t t -s,@INSTALL_STRIP_PROGRAM@,${SHELL} $(install_sh) -c -s,;t t -s,@mkdir_p@,mkdir -p -- .,;t t -s,@AWK@,gawk,;t t -s,@SET_MAKE@,,;t t -s,@am__leading_dot@,.,;t t -s,@MAINTAINER_MODE_TRUE@,#,;t t -s,@MAINTAINER_MODE_FALSE@,,;t t -s,@MAINT@,#,;t t -s,@CC@,mipsel-uclibc-gcc,;t t -s,@CFLAGS@,-g -O2,;t t -s,@LDFLAGS@,,;t t -s,@CPPFLAGS@,,;t t -s,@ac_ct_CC@,,;t t -s,@EXEEXT@,,;t t -s,@OBJEXT@,o,;t t -s,@DEPDIR@,.deps,;t t -s,@am__include@,include,;t t -s,@am__quote@,,;t t -s,@AMDEP_TRUE@,,;t t -s,@AMDEP_FALSE@,#,;t t -s,@AMDEPBACKSLASH@,\,;t t -s,@CCDEPMODE@,depmode=gcc3,;t t -s,@am__fastdepCC_TRUE@,,;t t -s,@am__fastdepCC_FALSE@,#,;t t -s,@RANLIB@,mipsel-uclibc-ranlib,;t t -s,@ac_ct_RANLIB@,,;t t -s,@GLIB_CONFIG@,/home/vicente/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/bin/glib-config,;t t -s,@GLIB_CFLAGS@,-I/home/vicente/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/include/glib-1.2 -I/home/vicente/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/lib/glib/include,;t t -s,@GLIB_LIBS@,-L/home/vicente/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/lib -lglib,;t t -s,@CPP@,mipsel-uclibc-gcc -E,;t t -s,@EGREP@,grep -E,;t t -s,@POW_LIB@,-lm,;t t -s,@LIBOBJS@, strtod$U.o,;t t -s,@SPLASHD_MODE@,open.c,;t t -s,@GHTTPD_PROGRAM@,,;t t -s,@firewall@,iptables,;t t -s,@libexecscripts@,libexec/iptables/throttle.fw libexec/iptables/check_splashd.sh libexec/iptables/reset.fw libexec/iptables/call_splashd_check.sh libexec/iptables/initialize.fw libexec/iptables/clear.fw libexec/iptables/dump.fw libexec/iptables/access.fw libexec/iptables/uninitialize.fw ,;t t -s,@pkglibexecdir@,${exec_prefix}/libexec/nocat,;t t -s,@htdocsdir@,${prefix}/share/nocat/htdocs,;t t -s,@imagesdir@,${prefix}/share/nocat/htdocs/images,;t t -s,@pgpdir@,${prefix}/share/nocat/pgp,;t t -s,@LTLIBOBJS@, strtod$U.lo,;t t -CEOF - - # Split the substitutions into bite-sized pieces for seds with - # small command number limits, like on Digital OSF/1 and HP-UX. - ac_max_sed_lines=48 - ac_sed_frag=1 # Number of current file. - ac_beg=1 # First line for current file. - ac_end=$ac_max_sed_lines # Line after last line for current file. - ac_more_lines=: - ac_sed_cmds= - while $ac_more_lines; do - if test $ac_beg -gt 1; then - sed "1,${ac_beg}d; ${ac_end}q" $tmp/subs.sed >$tmp/subs.frag - else - sed "${ac_end}q" $tmp/subs.sed >$tmp/subs.frag - fi - if test ! -s $tmp/subs.frag; then - ac_more_lines=false - else - # The purpose of the label and of the branching condition is to - # speed up the sed processing (if there are no `@' at all, there - # is no need to browse any of the substitutions). - # These are the two extra sed commands mentioned above. - (echo ':t - /@[a-zA-Z_][a-zA-Z_0-9]*@/!b' && cat $tmp/subs.frag) >$tmp/subs-$ac_sed_frag.sed - if test -z "$ac_sed_cmds"; then - ac_sed_cmds="sed -f $tmp/subs-$ac_sed_frag.sed" - else - ac_sed_cmds="$ac_sed_cmds | sed -f $tmp/subs-$ac_sed_frag.sed" - fi - ac_sed_frag=`expr $ac_sed_frag + 1` - ac_beg=$ac_end - ac_end=`expr $ac_end + $ac_max_sed_lines` - fi - done - if test -z "$ac_sed_cmds"; then - ac_sed_cmds=cat - fi -fi # test -n "$CONFIG_FILES" - -for ac_file in : $CONFIG_FILES; do test "x$ac_file" = x: && continue - # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in". - case $ac_file in - - | *:- | *:-:* ) # input from stdin - cat >$tmp/stdin - ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; - *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; - * ) ac_file_in=$ac_file.in ;; - esac - - # Compute @srcdir@, @top_srcdir@, and @INSTALL@ for subdirectories. - ac_dir=`(dirname "$ac_file") 2>/dev/null || -$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$ac_file" : 'X\(//\)[^/]' \| \ - X"$ac_file" : 'X\(//\)$' \| \ - X"$ac_file" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$ac_file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - { if $as_mkdir_p; then - mkdir -p "$ac_dir" - else - as_dir="$ac_dir" - as_dirs= - while test ! -d "$as_dir"; do - as_dirs="$as_dir $as_dirs" - as_dir=`(dirname "$as_dir") 2>/dev/null || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - done - test ! -n "$as_dirs" || mkdir $as_dirs - fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5 -echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;} - { (exit 1); exit 1; }; }; } - - ac_builddir=. - -if test "$ac_dir" != .; then - ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` - # A "../" for each directory in $ac_dir_suffix. - ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'` -else - ac_dir_suffix= ac_top_builddir= -fi - -case $srcdir in - .) # No --srcdir option. We are building in place. - ac_srcdir=. - if test -z "$ac_top_builddir"; then - ac_top_srcdir=. - else - ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'` - fi ;; - [\\/]* | ?:[\\/]* ) # Absolute path. - ac_srcdir=$srcdir$ac_dir_suffix; - ac_top_srcdir=$srcdir ;; - *) # Relative path. - ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix - ac_top_srcdir=$ac_top_builddir$srcdir ;; -esac - -# Do not use `cd foo && pwd` to compute absolute paths, because -# the directories may not exist. -case `pwd` in -.) ac_abs_builddir="$ac_dir";; -*) - case "$ac_dir" in - .) ac_abs_builddir=`pwd`;; - [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";; - *) ac_abs_builddir=`pwd`/"$ac_dir";; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_builddir=${ac_top_builddir}.;; -*) - case ${ac_top_builddir}. in - .) ac_abs_top_builddir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;; - *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_srcdir=$ac_srcdir;; -*) - case $ac_srcdir in - .) ac_abs_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;; - *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_srcdir=$ac_top_srcdir;; -*) - case $ac_top_srcdir in - .) ac_abs_top_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;; - *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;; - esac;; -esac - - - case $INSTALL in - [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;; - *) ac_INSTALL=$ac_top_builddir$INSTALL ;; - esac - - if test x"$ac_file" != x-; then - { echo "$as_me:$LINENO: creating $ac_file" >&5 -echo "$as_me: creating $ac_file" >&6;} - rm -f "$ac_file" - fi - # Let's still pretend it is `configure' which instantiates (i.e., don't - # use $as_me), people would be surprised to read: - # /* config.h. Generated by config.status. */ - if test x"$ac_file" = x-; then - configure_input= - else - configure_input="$ac_file. " - fi - configure_input=$configure_input"Generated from `echo $ac_file_in | - sed 's,.*/,,'` by configure." - - # First look for the input files in the build tree, otherwise in the - # src tree. - ac_file_inputs=`IFS=: - for f in $ac_file_in; do - case $f in - -) echo $tmp/stdin ;; - [\\/$]*) - # Absolute (can't be DOS-style, as IFS=:) - test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 -echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - echo "$f";; - *) # Relative - if test -f "$f"; then - # Build tree - echo "$f" - elif test -f "$srcdir/$f"; then - # Source tree - echo "$srcdir/$f" - else - # /dev/null tree - { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 -echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - fi;; - esac - done` || { (exit 1); exit 1; } - sed "/^[ ]*VPATH[ ]*=/{ -s/:*\$(srcdir):*/:/; -s/:*\${srcdir}:*/:/; -s/:*@srcdir@:*/:/; -s/^\([^=]*=[ ]*\):*/\1/; -s/:*$//; -s/^[^=]*=[ ]*$//; -} - -:t -/@[a-zA-Z_][a-zA-Z_0-9]*@/!b -s,@configure_input@,$configure_input,;t t -s,@srcdir@,$ac_srcdir,;t t -s,@abs_srcdir@,$ac_abs_srcdir,;t t -s,@top_srcdir@,$ac_top_srcdir,;t t -s,@abs_top_srcdir@,$ac_abs_top_srcdir,;t t -s,@builddir@,$ac_builddir,;t t -s,@abs_builddir@,$ac_abs_builddir,;t t -s,@top_builddir@,$ac_top_builddir,;t t -s,@abs_top_builddir@,$ac_abs_top_builddir,;t t -s,@INSTALL@,$ac_INSTALL,;t t -" $ac_file_inputs | (eval "$ac_sed_cmds") >$tmp/out - rm -f $tmp/stdin - if test x"$ac_file" != x-; then - mv $tmp/out $ac_file - else - cat $tmp/out - rm -f $tmp/out - fi - -done - -# -# CONFIG_HEADER section. -# - -# These sed commands are passed to sed as "A NAME B NAME C VALUE D", where -# NAME is the cpp macro being defined and VALUE is the value it is being given. -# -# ac_d sets the value in "#define NAME VALUE" lines. -ac_dA='s,^\([ ]*\)#\([ ]*define[ ][ ]*\)' -ac_dB='[ ].*$,\1#\2' -ac_dC=' ' -ac_dD=',;t' -# ac_u turns "#undef NAME" without trailing blanks into "#define NAME VALUE". -ac_uA='s,^\([ ]*\)#\([ ]*\)undef\([ ][ ]*\)' -ac_uB='$,\1#\2define\3' -ac_uC=' ' -ac_uD=',;t' - -for ac_file in : $CONFIG_HEADERS; do test "x$ac_file" = x: && continue - # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in". - case $ac_file in - - | *:- | *:-:* ) # input from stdin - cat >$tmp/stdin - ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; - *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; - * ) ac_file_in=$ac_file.in ;; - esac - - test x"$ac_file" != x- && { echo "$as_me:$LINENO: creating $ac_file" >&5 -echo "$as_me: creating $ac_file" >&6;} - - # First look for the input files in the build tree, otherwise in the - # src tree. - ac_file_inputs=`IFS=: - for f in $ac_file_in; do - case $f in - -) echo $tmp/stdin ;; - [\\/$]*) - # Absolute (can't be DOS-style, as IFS=:) - test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 -echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - # Do quote $f, to prevent DOS paths from being IFS'd. - echo "$f";; - *) # Relative - if test -f "$f"; then - # Build tree - echo "$f" - elif test -f "$srcdir/$f"; then - # Source tree - echo "$srcdir/$f" - else - # /dev/null tree - { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 -echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - fi;; - esac - done` || { (exit 1); exit 1; } - # Remove the trailing spaces. - sed 's/[ ]*$//' $ac_file_inputs >$tmp/in - - # Handle all the #define templates only if necessary. - if grep "^[ ]*#[ ]*define" $tmp/in >/dev/null; then - # If there are no defines, we may have an empty if/fi - : - cat >$tmp/defines.sed <$tmp/out - rm -f $tmp/in - mv $tmp/out $tmp/in - - cat >$tmp/defines.sed <$tmp/out - rm -f $tmp/in - mv $tmp/out $tmp/in - - fi # grep - - # Handle all the #undef templates - cat >$tmp/undefs.sed <$tmp/out - rm -f $tmp/in - mv $tmp/out $tmp/in - - cat >$tmp/undefs.sed <$tmp/out - rm -f $tmp/in - mv $tmp/out $tmp/in - - # Let's still pretend it is `configure' which instantiates (i.e., don't - # use $as_me), people would be surprised to read: - # /* config.h. Generated by config.status. */ - if test x"$ac_file" = x-; then - echo "/* Generated by configure. */" >$tmp/config.h - else - echo "/* $ac_file. Generated by configure. */" >$tmp/config.h - fi - cat $tmp/in >>$tmp/config.h - rm -f $tmp/in - if test x"$ac_file" != x-; then - if diff $ac_file $tmp/config.h >/dev/null 2>&1; then - { echo "$as_me:$LINENO: $ac_file is unchanged" >&5 -echo "$as_me: $ac_file is unchanged" >&6;} - else - ac_dir=`(dirname "$ac_file") 2>/dev/null || -$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$ac_file" : 'X\(//\)[^/]' \| \ - X"$ac_file" : 'X\(//\)$' \| \ - X"$ac_file" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$ac_file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - { if $as_mkdir_p; then - mkdir -p "$ac_dir" - else - as_dir="$ac_dir" - as_dirs= - while test ! -d "$as_dir"; do - as_dirs="$as_dir $as_dirs" - as_dir=`(dirname "$as_dir") 2>/dev/null || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - done - test ! -n "$as_dirs" || mkdir $as_dirs - fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5 -echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;} - { (exit 1); exit 1; }; }; } - - rm -f $ac_file - mv $tmp/config.h $ac_file - fi - else - cat $tmp/config.h - rm -f $tmp/config.h - fi -# Compute $ac_file's index in $config_headers. -_am_stamp_count=1 -for _am_header in $config_headers :; do - case $_am_header in - $ac_file | $ac_file:* ) - break ;; - * ) - _am_stamp_count=`expr $_am_stamp_count + 1` ;; - esac -done -echo "timestamp for $ac_file" >`(dirname $ac_file) 2>/dev/null || -$as_expr X$ac_file : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X$ac_file : 'X\(//\)[^/]' \| \ - X$ac_file : 'X\(//\)$' \| \ - X$ac_file : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X$ac_file | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'`/stamp-h$_am_stamp_count -done - -# -# CONFIG_COMMANDS section. -# -for ac_file in : $CONFIG_COMMANDS; do test "x$ac_file" = x: && continue - ac_dest=`echo "$ac_file" | sed 's,:.*,,'` - ac_source=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_dir=`(dirname "$ac_dest") 2>/dev/null || -$as_expr X"$ac_dest" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$ac_dest" : 'X\(//\)[^/]' \| \ - X"$ac_dest" : 'X\(//\)$' \| \ - X"$ac_dest" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$ac_dest" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - { if $as_mkdir_p; then - mkdir -p "$ac_dir" - else - as_dir="$ac_dir" - as_dirs= - while test ! -d "$as_dir"; do - as_dirs="$as_dir $as_dirs" - as_dir=`(dirname "$as_dir") 2>/dev/null || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - done - test ! -n "$as_dirs" || mkdir $as_dirs - fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5 -echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;} - { (exit 1); exit 1; }; }; } - - ac_builddir=. - -if test "$ac_dir" != .; then - ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` - # A "../" for each directory in $ac_dir_suffix. - ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'` -else - ac_dir_suffix= ac_top_builddir= -fi - -case $srcdir in - .) # No --srcdir option. We are building in place. - ac_srcdir=. - if test -z "$ac_top_builddir"; then - ac_top_srcdir=. - else - ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'` - fi ;; - [\\/]* | ?:[\\/]* ) # Absolute path. - ac_srcdir=$srcdir$ac_dir_suffix; - ac_top_srcdir=$srcdir ;; - *) # Relative path. - ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix - ac_top_srcdir=$ac_top_builddir$srcdir ;; -esac - -# Do not use `cd foo && pwd` to compute absolute paths, because -# the directories may not exist. -case `pwd` in -.) ac_abs_builddir="$ac_dir";; -*) - case "$ac_dir" in - .) ac_abs_builddir=`pwd`;; - [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";; - *) ac_abs_builddir=`pwd`/"$ac_dir";; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_builddir=${ac_top_builddir}.;; -*) - case ${ac_top_builddir}. in - .) ac_abs_top_builddir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;; - *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_srcdir=$ac_srcdir;; -*) - case $ac_srcdir in - .) ac_abs_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;; - *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_srcdir=$ac_top_srcdir;; -*) - case $ac_top_srcdir in - .) ac_abs_top_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;; - *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;; - esac;; -esac - - - { echo "$as_me:$LINENO: executing $ac_dest commands" >&5 -echo "$as_me: executing $ac_dest commands" >&6;} - case $ac_dest in - depfiles ) test x"$AMDEP_TRUE" != x"" || for mf in $CONFIG_FILES; do - # Strip MF so we end up with the name of the file. - mf=`echo "$mf" | sed -e 's/:.*$//'` - # Check whether this is an Automake generated Makefile or not. - # We used to match only the files named `Makefile.in', but - # some people rename them; so instead we look at the file content. - # Grep'ing the first line is not enough: some people post-process - # each Makefile.in and add a new line on top of each file to say so. - # So let's grep whole file. - if grep '^#.*generated by automake' $mf > /dev/null 2>&1; then - dirpart=`(dirname "$mf") 2>/dev/null || -$as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$mf" : 'X\(//\)[^/]' \| \ - X"$mf" : 'X\(//\)$' \| \ - X"$mf" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$mf" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - else - continue - fi - grep '^DEP_FILES *= *[^ #]' < "$mf" > /dev/null || continue - # Extract the definition of DEP_FILES from the Makefile without - # running `make'. - DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"` - test -z "$DEPDIR" && continue - # When using ansi2knr, U may be empty or an underscore; expand it - U=`sed -n 's/^U = //p' < "$mf"` - test -d "$dirpart/$DEPDIR" || mkdir "$dirpart/$DEPDIR" - # We invoke sed twice because it is the simplest approach to - # changing $(DEPDIR) to its actual value in the expansion. - for file in `sed -n ' - /^DEP_FILES = .*\\\\$/ { - s/^DEP_FILES = // - :loop - s/\\\\$// - p - n - /\\\\$/ b loop - p - } - /^DEP_FILES = / s/^DEP_FILES = //p' < "$mf" | \ - sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do - # Make sure the directory exists. - test -f "$dirpart/$file" && continue - fdir=`(dirname "$file") 2>/dev/null || -$as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$file" : 'X\(//\)[^/]' \| \ - X"$file" : 'X\(//\)$' \| \ - X"$file" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - { if $as_mkdir_p; then - mkdir -p $dirpart/$fdir - else - as_dir=$dirpart/$fdir - as_dirs= - while test ! -d "$as_dir"; do - as_dirs="$as_dir $as_dirs" - as_dir=`(dirname "$as_dir") 2>/dev/null || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - done - test ! -n "$as_dirs" || mkdir $as_dirs - fi || { { echo "$as_me:$LINENO: error: cannot create directory $dirpart/$fdir" >&5 -echo "$as_me: error: cannot create directory $dirpart/$fdir" >&2;} - { (exit 1); exit 1; }; }; } - - # echo "creating $dirpart/$file" - echo '# dummy' > "$dirpart/$file" - done -done - ;; - esac -done - -{ (exit 0); exit 0; } diff --git a/release/src/router/nocat/src/.deps/conf.Po b/release/src/router/nocat/src/.deps/conf.Po index 4554fe9a15..a88c2de8f0 100644 --- a/release/src/router/nocat/src/.deps/conf.Po +++ b/release/src/router/nocat/src/.deps/conf.Po @@ -1,6 +1,6 @@ conf.o conf.o: conf.c \ - /home/vicente/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/include/glib-1.2/glib.h \ - /home/vicente/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/lib/glib/include/glibconfig.h \ + /home/vicente/repos/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/include/glib-1.2/glib.h \ + /home/vicente/repos/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/lib/glib/include/glibconfig.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/syslimits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ @@ -39,9 +39,9 @@ conf.o conf.o: conf.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/alloca.h \ config.h util.h -/home/vicente/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/include/glib-1.2/glib.h: +/home/vicente/repos/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/include/glib-1.2/glib.h: -/home/vicente/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/lib/glib/include/glibconfig.h: +/home/vicente/repos/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/lib/glib/include/glibconfig.h: /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h: diff --git a/release/src/router/nocat/src/.deps/defaults.Po b/release/src/router/nocat/src/.deps/defaults.Po index 0ba2f99d14..9e694112eb 100644 --- a/release/src/router/nocat/src/.deps/defaults.Po +++ b/release/src/router/nocat/src/.deps/defaults.Po @@ -28,8 +28,8 @@ defaults.o defaults.o: defaults.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/stdarg.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/stdio_lim.h \ conf.h \ - /home/vicente/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/include/glib-1.2/glib.h \ - /home/vicente/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/lib/glib/include/glibconfig.h \ + /home/vicente/repos/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/include/glib-1.2/glib.h \ + /home/vicente/repos/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/lib/glib/include/glibconfig.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/syslimits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ @@ -107,9 +107,9 @@ defaults.o defaults.o: defaults.c \ conf.h: -/home/vicente/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/include/glib-1.2/glib.h: +/home/vicente/repos/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/include/glib-1.2/glib.h: -/home/vicente/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/lib/glib/include/glibconfig.h: +/home/vicente/repos/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/lib/glib/include/glibconfig.h: /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h: diff --git a/release/src/router/nocat/src/.deps/firewall.Po b/release/src/router/nocat/src/.deps/firewall.Po index d3f6e2ffa3..ee96da7bac 100644 --- a/release/src/router/nocat/src/.deps/firewall.Po +++ b/release/src/router/nocat/src/.deps/firewall.Po @@ -1,6 +1,6 @@ firewall.o firewall.o: firewall.c \ - /home/vicente/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/include/glib-1.2/glib.h \ - /home/vicente/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/lib/glib/include/glibconfig.h \ + /home/vicente/repos/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/include/glib-1.2/glib.h \ + /home/vicente/repos/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/lib/glib/include/glibconfig.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/syslimits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ @@ -72,9 +72,9 @@ firewall.o firewall.o: firewall.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/alloca.h \ config.h util.h -/home/vicente/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/include/glib-1.2/glib.h: +/home/vicente/repos/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/include/glib-1.2/glib.h: -/home/vicente/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/lib/glib/include/glibconfig.h: +/home/vicente/repos/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/lib/glib/include/glibconfig.h: /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h: diff --git a/release/src/router/nocat/src/.deps/gateway.Po b/release/src/router/nocat/src/.deps/gateway.Po index 336d9d4922..713c2be4c1 100644 --- a/release/src/router/nocat/src/.deps/gateway.Po +++ b/release/src/router/nocat/src/.deps/gateway.Po @@ -1,6 +1,6 @@ gateway.o gateway.o: gateway.c \ - /home/vicente/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/include/glib-1.2/glib.h \ - /home/vicente/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/lib/glib/include/glibconfig.h \ + /home/vicente/repos/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/include/glib-1.2/glib.h \ + /home/vicente/repos/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/lib/glib/include/glibconfig.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/syslimits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ @@ -55,9 +55,9 @@ gateway.o gateway.o: gateway.c \ config.h util.h firewall.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/time.h -/home/vicente/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/include/glib-1.2/glib.h: +/home/vicente/repos/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/include/glib-1.2/glib.h: -/home/vicente/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/lib/glib/include/glibconfig.h: +/home/vicente/repos/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/lib/glib/include/glibconfig.h: /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h: diff --git a/release/src/router/nocat/src/.deps/http.Po b/release/src/router/nocat/src/.deps/http.Po index e61d3927de..628f7a64ff 100644 --- a/release/src/router/nocat/src/.deps/http.Po +++ b/release/src/router/nocat/src/.deps/http.Po @@ -1,6 +1,6 @@ http.o http.o: http.c \ - /home/vicente/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/include/glib-1.2/glib.h \ - /home/vicente/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/lib/glib/include/glibconfig.h \ + /home/vicente/repos/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/include/glib-1.2/glib.h \ + /home/vicente/repos/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/lib/glib/include/glibconfig.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/syslimits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ @@ -80,9 +80,9 @@ http.o http.o: http.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/bits/stdio_lim.h \ conf.h config.h -/home/vicente/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/include/glib-1.2/glib.h: +/home/vicente/repos/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/include/glib-1.2/glib.h: -/home/vicente/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/lib/glib/include/glibconfig.h: +/home/vicente/repos/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/lib/glib/include/glibconfig.h: /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h: diff --git a/release/src/router/nocat/src/.deps/linux.Po b/release/src/router/nocat/src/.deps/linux.Po index ac34822558..e485ce891f 100644 --- a/release/src/router/nocat/src/.deps/linux.Po +++ b/release/src/router/nocat/src/.deps/linux.Po @@ -1,6 +1,6 @@ linux.o linux.o: linux.c \ - /home/vicente/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/include/glib-1.2/glib.h \ - /home/vicente/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/lib/glib/include/glibconfig.h \ + /home/vicente/repos/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/include/glib-1.2/glib.h \ + /home/vicente/repos/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/lib/glib/include/glibconfig.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/syslimits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ @@ -84,9 +84,9 @@ linux.o linux.o: linux.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/alloca.h \ config.h -/home/vicente/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/include/glib-1.2/glib.h: +/home/vicente/repos/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/include/glib-1.2/glib.h: -/home/vicente/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/lib/glib/include/glibconfig.h: +/home/vicente/repos/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/lib/glib/include/glibconfig.h: /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h: diff --git a/release/src/router/nocat/src/.deps/splashd.Po b/release/src/router/nocat/src/.deps/splashd.Po index 01252e4df1..d10cb118d4 100644 --- a/release/src/router/nocat/src/.deps/splashd.Po +++ b/release/src/router/nocat/src/.deps/splashd.Po @@ -1,6 +1,6 @@ splashd.o splashd.o: splashd.c \ - /home/vicente/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/include/glib-1.2/glib.h \ - /home/vicente/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/lib/glib/include/glibconfig.h \ + /home/vicente/repos/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/include/glib-1.2/glib.h \ + /home/vicente/repos/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/lib/glib/include/glibconfig.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/syslimits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ @@ -80,9 +80,9 @@ splashd.o splashd.o: splashd.c \ config.h util.h firewall.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/time.h -/home/vicente/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/include/glib-1.2/glib.h: +/home/vicente/repos/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/include/glib-1.2/glib.h: -/home/vicente/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/lib/glib/include/glibconfig.h: +/home/vicente/repos/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/lib/glib/include/glibconfig.h: /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h: diff --git a/release/src/router/nocat/src/.deps/splashtest.Po b/release/src/router/nocat/src/.deps/splashtest.Po index 8f62576ad3..7f65242ffc 100644 --- a/release/src/router/nocat/src/.deps/splashtest.Po +++ b/release/src/router/nocat/src/.deps/splashtest.Po @@ -1,6 +1,6 @@ splashtest.o splashtest.o: splashtest.c \ - /home/vicente/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/include/glib-1.2/glib.h \ - /home/vicente/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/lib/glib/include/glibconfig.h \ + /home/vicente/repos/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/include/glib-1.2/glib.h \ + /home/vicente/repos/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/lib/glib/include/glibconfig.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/syslimits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ @@ -84,9 +84,9 @@ splashtest.o splashtest.o: splashtest.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/alloca.h \ config.h http.h -/home/vicente/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/include/glib-1.2/glib.h: +/home/vicente/repos/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/include/glib-1.2/glib.h: -/home/vicente/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/lib/glib/include/glibconfig.h: +/home/vicente/repos/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/lib/glib/include/glibconfig.h: /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h: diff --git a/release/src/router/nocat/src/.deps/util.Po b/release/src/router/nocat/src/.deps/util.Po index 426bcc68c4..8d4e126398 100644 --- a/release/src/router/nocat/src/.deps/util.Po +++ b/release/src/router/nocat/src/.deps/util.Po @@ -1,6 +1,6 @@ util.o util.o: util.c \ - /home/vicente/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/include/glib-1.2/glib.h \ - /home/vicente/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/lib/glib/include/glibconfig.h \ + /home/vicente/repos/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/include/glib-1.2/glib.h \ + /home/vicente/repos/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/lib/glib/include/glibconfig.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/syslimits.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/limits.h \ @@ -79,9 +79,9 @@ util.o util.o: util.c \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/syslog.h \ /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/sys-include/sys/syslog.h -/home/vicente/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/include/glib-1.2/glib.h: +/home/vicente/repos/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/include/glib-1.2/glib.h: -/home/vicente/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/lib/glib/include/glibconfig.h: +/home/vicente/repos/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/lib/glib/include/glibconfig.h: /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/include/limits.h: diff --git a/release/src/router/nocat/src/Makefile b/release/src/router/nocat/src/Makefile index c1f74bdcb3..9a67d11bfd 100644 --- a/release/src/router/nocat/src/Makefile +++ b/release/src/router/nocat/src/Makefile @@ -93,13 +93,13 @@ HEADERS = $(noinst_HEADERS) ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/nocat/missing --run aclocal-1.8 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/nocat/missing --run aclocal-1.8 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/nocat/missing --run tar -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/nocat/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/nocat/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/nocat/missing --run automake-1.8 +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/nocat/missing --run tar +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/nocat/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/nocat/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/nocat/missing --run automake-1.8 AWK = gawk CC = mipsel-uclibc-gcc CCDEPMODE = depmode=gcc3 @@ -122,9 +122,9 @@ GHTTP_MAJOR_VERSION = @GHTTP_MAJOR_VERSION@ GHTTP_MICRO_VERSION = @GHTTP_MICRO_VERSION@ GHTTP_MINOR_VERSION = @GHTTP_MINOR_VERSION@ GHTTP_VERSION = @GHTTP_VERSION@ -GLIB_CFLAGS = -I/home/vicente/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/include/glib-1.2 -I/home/vicente/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/lib/glib/include -GLIB_CONFIG = /home/vicente/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/bin/glib-config -GLIB_LIBS = -L/home/vicente/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/lib -lglib +GLIB_CFLAGS = -I/home/vicente/repos/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/include/glib-1.2 -I/home/vicente/repos/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/lib/glib/include +GLIB_CONFIG = /home/vicente/repos/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/bin/glib-config +GLIB_LIBS = -L/home/vicente/repos/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/lib -lglib HAVE_LIBGHTTP = @HAVE_LIBGHTTP@ INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} @@ -132,12 +132,12 @@ INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s LDFLAGS = LIBOBJS = strtod$U.o -LIBS = -L/home/vicente/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/lib -lglib +LIBS = -L/home/vicente/repos/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/lib -lglib LTLIBOBJS = strtod$U.lo MAINT = # MAINTAINER_MODE_FALSE = MAINTAINER_MODE_TRUE = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/nocat/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/nocat/missing --run makeinfo OBJEXT = o PACKAGE = NoCatSplash PACKAGE_BUGREPORT = schuyler@nocat.net @@ -174,7 +174,7 @@ htdocsdir = ${prefix}/share/nocat/htdocs imagesdir = ${prefix}/share/nocat/htdocs/images includedir = ${prefix}/include infodir = ${prefix}/info -install_sh = /home/vicente/tomato/release/src/router/nocat/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/nocat/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec libexecscripts = libexec/iptables/throttle.fw libexec/iptables/check_splashd.sh libexec/iptables/reset.fw libexec/iptables/call_splashd_check.sh libexec/iptables/initialize.fw libexec/iptables/clear.fw libexec/iptables/dump.fw libexec/iptables/access.fw libexec/iptables/uninitialize.fw @@ -190,7 +190,7 @@ sbindir = ${exec_prefix}/sbin sharedstatedir = ${prefix}/com sysconfdir = /etc target_alias = -AM_CFLAGS = -g -O2 -I/home/vicente/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/include/glib-1.2 -I/home/vicente/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/lib/glib/include -Wall +AM_CFLAGS = -g -O2 -I/home/vicente/repos/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/include/glib-1.2 -I/home/vicente/repos/tomato/release/src-rt/router/mipsel-uclibc/install/glib/usr/lib/glib/include -Wall splashd_SOURCES = splashd.c EXTRA_splashd_SOURCES = open.c passive.c base64.c passive_radius.c radius.c md5.c splashd_LDADD = open.c libsplash.a diff --git a/release/src/router/ntfs-3g/config.status b/release/src/router/ntfs-3g/config.status deleted file mode 100755 index 566114179d..0000000000 --- a/release/src/router/ntfs-3g/config.status +++ /dev/null @@ -1,1257 +0,0 @@ -#! /bin/sh -# Generated by configure. -# Run this file to recreate the current configuration. -# Compiler output produced by configure, useful for debugging -# configure, is in config.log if it exists. - -debug=false -ac_cs_recheck=false -ac_cs_silent=false -SHELL=${CONFIG_SHELL-/bin/sh} -## --------------------- ## -## M4sh Initialization. ## -## --------------------- ## - -# Be more Bourne compatible -DUALCASE=1; export DUALCASE # for MKS sh -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then - emulate sh - NULLCMD=: - # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which - # is contrary to our usage. Disable this feature. - alias -g '${1+"$@"}'='"$@"' - setopt NO_GLOB_SUBST -else - case `(set -o) 2>/dev/null` in - *posix*) set -o posix ;; -esac - -fi - - - - -# PATH needs CR -# Avoid depending upon Character Ranges. -as_cr_letters='abcdefghijklmnopqrstuvwxyz' -as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' -as_cr_Letters=$as_cr_letters$as_cr_LETTERS -as_cr_digits='0123456789' -as_cr_alnum=$as_cr_Letters$as_cr_digits - -# The user is always right. -if test "${PATH_SEPARATOR+set}" != set; then - echo "#! /bin/sh" >conf$$.sh - echo "exit 0" >>conf$$.sh - chmod +x conf$$.sh - if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then - PATH_SEPARATOR=';' - else - PATH_SEPARATOR=: - fi - rm -f conf$$.sh -fi - -# Support unset when possible. -if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then - as_unset=unset -else - as_unset=false -fi - - -# IFS -# We need space, tab and new line, in precisely that order. Quoting is -# there to prevent editors from complaining about space-tab. -# (If _AS_PATH_WALK were called with IFS unset, it would disable word -# splitting by setting IFS to empty value.) -as_nl=' -' -IFS=" "" $as_nl" - -# Find who we are. Look in the path if we contain no directory separator. -case $0 in - *[\\/]* ) as_myself=$0 ;; - *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break -done -IFS=$as_save_IFS - - ;; -esac -# We did not find ourselves, most probably we were run as `sh COMMAND' -# in which case we are not to be found in the path. -if test "x$as_myself" = x; then - as_myself=$0 -fi -if test ! -f "$as_myself"; then - echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 - { (exit 1); exit 1; } -fi - -# Work around bugs in pre-3.0 UWIN ksh. -for as_var in ENV MAIL MAILPATH -do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var -done -PS1='$ ' -PS2='> ' -PS4='+ ' - -# NLS nuisances. -for as_var in \ - LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \ - LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \ - LC_TELEPHONE LC_TIME -do - if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then - eval $as_var=C; export $as_var - else - ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var - fi -done - -# Required to use basename. -if expr a : '\(a\)' >/dev/null 2>&1 && - test "X`expr 00001 : '.*\(...\)'`" = X001; then - as_expr=expr -else - as_expr=false -fi - -if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then - as_basename=basename -else - as_basename=false -fi - - -# Name of the executable. -as_me=`$as_basename -- "$0" || -$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ - X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)' \| . 2>/dev/null || -echo X/"$0" | - sed '/^.*\/\([^/][^/]*\)\/*$/{ - s//\1/ - q - } - /^X\/\(\/\/\)$/{ - s//\1/ - q - } - /^X\/\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - -# CDPATH. -$as_unset CDPATH - - - - as_lineno_1=$LINENO - as_lineno_2=$LINENO - test "x$as_lineno_1" != "x$as_lineno_2" && - test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2" || { - - # Create $as_me.lineno as a copy of $as_myself, but with $LINENO - # uniformly replaced by the line number. The first 'sed' inserts a - # line-number line after each line using $LINENO; the second 'sed' - # does the real work. The second script uses 'N' to pair each - # line-number line with the line containing $LINENO, and appends - # trailing '-' during substitution so that $LINENO is not a special - # case at line end. - # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the - # scripts with optimization help from Paolo Bonzini. Blame Lee - # E. McMahon (1931-1989) for sed's syntax. :-) - sed -n ' - p - /[$]LINENO/= - ' <$as_myself | - sed ' - s/[$]LINENO.*/&-/ - t lineno - b - :lineno - N - :loop - s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/ - t loop - s/-\n.*// - ' >$as_me.lineno && - chmod +x "$as_me.lineno" || - { echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2 - { (exit 1); exit 1; }; } - - # Don't try to exec as it changes $[0], causing all sort of problems - # (the dirname of $[0] is not the place where we might find the - # original and so on. Autoconf is especially sensitive to this). - . "./$as_me.lineno" - # Exit status is that of the last command. - exit -} - - -if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then - as_dirname=dirname -else - as_dirname=false -fi - -ECHO_C= ECHO_N= ECHO_T= -case `echo -n x` in --n*) - case `echo 'x\c'` in - *c*) ECHO_T=' ';; # ECHO_T is single tab character. - *) ECHO_C='\c';; - esac;; -*) - ECHO_N='-n';; -esac - -if expr a : '\(a\)' >/dev/null 2>&1 && - test "X`expr 00001 : '.*\(...\)'`" = X001; then - as_expr=expr -else - as_expr=false -fi - -rm -f conf$$ conf$$.exe conf$$.file -if test -d conf$$.dir; then - rm -f conf$$.dir/conf$$.file -else - rm -f conf$$.dir - mkdir conf$$.dir -fi -echo >conf$$.file -if ln -s conf$$.file conf$$ 2>/dev/null; then - as_ln_s='ln -s' - # ... but there are two gotchas: - # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. - # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. - # In both cases, we have to default to `cp -p'. - ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || - as_ln_s='cp -p' -elif ln conf$$.file conf$$ 2>/dev/null; then - as_ln_s=ln -else - as_ln_s='cp -p' -fi -rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file -rmdir conf$$.dir 2>/dev/null - -if mkdir -p . 2>/dev/null; then - as_mkdir_p=: -else - test -d ./-p && rmdir ./-p - as_mkdir_p=false -fi - -if test -x / >/dev/null 2>&1; then - as_test_x='test -x' -else - if ls -dL / >/dev/null 2>&1; then - as_ls_L_option=L - else - as_ls_L_option= - fi - as_test_x=' - eval sh -c '\'' - if test -d "$1"; then - test -d "$1/."; - else - case $1 in - -*)set "./$1";; - esac; - case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in - ???[sx]*):;;*)false;;esac;fi - '\'' sh - ' -fi -as_executable_p=$as_test_x - -# Sed expression to map a string onto a valid CPP name. -as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" - -# Sed expression to map a string onto a valid variable name. -as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" - - -exec 6>&1 - -# Save the log message, to keep $[0] and so on meaningful, and to -# report actual input values of CONFIG_FILES etc. instead of their -# values after options handling. -ac_log=" -This file was extended by ntfs-3g $as_me 2013.1.13, which was -generated by GNU Autoconf 2.61. Invocation command line was - - CONFIG_FILES = $CONFIG_FILES - CONFIG_HEADERS = $CONFIG_HEADERS - CONFIG_LINKS = $CONFIG_LINKS - CONFIG_COMMANDS = $CONFIG_COMMANDS - $ $0 $@ - -on `(hostname || uname -n) 2>/dev/null | sed 1q` -" - -# Files that config.status was made for. -config_files=" Makefile include/Makefile include/fuse-lite/Makefile include/ntfs-3g/Makefile libfuse-lite/Makefile libntfs-3g/Makefile libntfs-3g/libntfs-3g.pc libntfs-3g/libntfs-3g.script.so ntfsprogs/Makefile ntfsprogs/mkntfs.8 ntfsprogs/ntfscat.8 ntfsprogs/ntfsclone.8 ntfsprogs/ntfscluster.8 ntfsprogs/ntfscmp.8 ntfsprogs/ntfscp.8 ntfsprogs/ntfsfix.8 ntfsprogs/ntfsinfo.8 ntfsprogs/ntfslabel.8 ntfsprogs/ntfsls.8 ntfsprogs/ntfsprogs.8 ntfsprogs/ntfsresize.8 ntfsprogs/ntfsundelete.8 src/Makefile src/ntfs-3g.8 src/ntfs-3g.probe.8 src/ntfs-3g.usermap.8 src/ntfs-3g.secaudit.8" -config_headers=" config.h" -config_commands=" depfiles" - -ac_cs_usage="\ -\`$as_me' instantiates files from templates according to the -current configuration. - -Usage: $0 [OPTIONS] [FILE]... - - -h, --help print this help, then exit - -V, --version print version number and configuration settings, then exit - -q, --quiet do not print progress messages - -d, --debug don't remove temporary files - --recheck update $as_me by reconfiguring in the same conditions - --file=FILE[:TEMPLATE] - instantiate the configuration file FILE - --header=FILE[:TEMPLATE] - instantiate the configuration header FILE - -Configuration files: -$config_files - -Configuration headers: -$config_headers - -Configuration commands: -$config_commands - -Report bugs to ." - -ac_cs_version="\ -ntfs-3g config.status 2013.1.13 -configured by ./configure, generated by GNU Autoconf 2.61, - with options \"'--host=mipsel-linux' '--build=x86_64-linux-gnu' '--enable-shared=no' '--enable-static=no' '--disable-library' '--disable-ldconfig' '--disable-mount-helper' '--with-fuse=internal' '--disable-posix-acls' '--disable-nfconv' '--disable-dependency-tracking' 'build_alias=x86_64-linux-gnu' 'host_alias=mipsel-linux' 'CC=mipsel-uclibc-gcc' 'CFLAGS=-Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections' 'LDFLAGS=-ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC'\" - -Copyright (C) 2006 Free Software Foundation, Inc. -This config.status script is free software; the Free Software Foundation -gives unlimited permission to copy, distribute and modify it." - -ac_pwd='/home/vicente/tomato/release/src/router/ntfs-3g' -srcdir='.' -INSTALL='/usr/bin/install -c' -MKDIR_P='/bin/mkdir -p' -# If no file are specified by the user, then we need to provide default -# value. By we need to know if files were specified by the user. -ac_need_defaults=: -while test $# != 0 -do - case $1 in - --*=*) - ac_option=`expr "X$1" : 'X\([^=]*\)='` - ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'` - ac_shift=: - ;; - *) - ac_option=$1 - ac_optarg=$2 - ac_shift=shift - ;; - esac - - case $ac_option in - # Handling of the options. - -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) - ac_cs_recheck=: ;; - --version | --versio | --versi | --vers | --ver | --ve | --v | -V ) - echo "$ac_cs_version"; exit ;; - --debug | --debu | --deb | --de | --d | -d ) - debug=: ;; - --file | --fil | --fi | --f ) - $ac_shift - CONFIG_FILES="$CONFIG_FILES $ac_optarg" - ac_need_defaults=false;; - --header | --heade | --head | --hea ) - $ac_shift - CONFIG_HEADERS="$CONFIG_HEADERS $ac_optarg" - ac_need_defaults=false;; - --he | --h) - # Conflict between --help and --header - { echo "$as_me: error: ambiguous option: $1 -Try \`$0 --help' for more information." >&2 - { (exit 1); exit 1; }; };; - --help | --hel | -h ) - echo "$ac_cs_usage"; exit ;; - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil | --si | --s) - ac_cs_silent=: ;; - - # This is an error. - -*) { echo "$as_me: error: unrecognized option: $1 -Try \`$0 --help' for more information." >&2 - { (exit 1); exit 1; }; } ;; - - *) ac_config_targets="$ac_config_targets $1" - ac_need_defaults=false ;; - - esac - shift -done - -ac_configure_extra_args= - -if $ac_cs_silent; then - exec 6>/dev/null - ac_configure_extra_args="$ac_configure_extra_args --silent" -fi - -if $ac_cs_recheck; then - echo "running CONFIG_SHELL=/bin/sh /bin/sh ./configure " '--host=mipsel-linux' '--build=x86_64-linux-gnu' '--enable-shared=no' '--enable-static=no' '--disable-library' '--disable-ldconfig' '--disable-mount-helper' '--with-fuse=internal' '--disable-posix-acls' '--disable-nfconv' '--disable-dependency-tracking' 'build_alias=x86_64-linux-gnu' 'host_alias=mipsel-linux' 'CC=mipsel-uclibc-gcc' 'CFLAGS=-Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections' 'LDFLAGS=-ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC' $ac_configure_extra_args " --no-create --no-recursion" >&6 - CONFIG_SHELL=/bin/sh - export CONFIG_SHELL - exec /bin/sh "./configure" '--host=mipsel-linux' '--build=x86_64-linux-gnu' '--enable-shared=no' '--enable-static=no' '--disable-library' '--disable-ldconfig' '--disable-mount-helper' '--with-fuse=internal' '--disable-posix-acls' '--disable-nfconv' '--disable-dependency-tracking' 'build_alias=x86_64-linux-gnu' 'host_alias=mipsel-linux' 'CC=mipsel-uclibc-gcc' 'CFLAGS=-Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections' 'LDFLAGS=-ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC' $ac_configure_extra_args --no-create --no-recursion -fi - -exec 5>>config.log -{ - echo - sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX -## Running $as_me. ## -_ASBOX - echo "$ac_log" -} >&5 - -# -# INIT-COMMANDS -# -AMDEP_TRUE="#" ac_aux_dir="." - - -# Handling of arguments. -for ac_config_target in $ac_config_targets -do - case $ac_config_target in - "config.h") CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;; - "depfiles") CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;; - "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;; - "include/Makefile") CONFIG_FILES="$CONFIG_FILES include/Makefile" ;; - "include/fuse-lite/Makefile") CONFIG_FILES="$CONFIG_FILES include/fuse-lite/Makefile" ;; - "include/ntfs-3g/Makefile") CONFIG_FILES="$CONFIG_FILES include/ntfs-3g/Makefile" ;; - "libfuse-lite/Makefile") CONFIG_FILES="$CONFIG_FILES libfuse-lite/Makefile" ;; - "libntfs-3g/Makefile") CONFIG_FILES="$CONFIG_FILES libntfs-3g/Makefile" ;; - "libntfs-3g/libntfs-3g.pc") CONFIG_FILES="$CONFIG_FILES libntfs-3g/libntfs-3g.pc" ;; - "libntfs-3g/libntfs-3g.script.so") CONFIG_FILES="$CONFIG_FILES libntfs-3g/libntfs-3g.script.so" ;; - "ntfsprogs/Makefile") CONFIG_FILES="$CONFIG_FILES ntfsprogs/Makefile" ;; - "ntfsprogs/mkntfs.8") CONFIG_FILES="$CONFIG_FILES ntfsprogs/mkntfs.8" ;; - "ntfsprogs/ntfscat.8") CONFIG_FILES="$CONFIG_FILES ntfsprogs/ntfscat.8" ;; - "ntfsprogs/ntfsclone.8") CONFIG_FILES="$CONFIG_FILES ntfsprogs/ntfsclone.8" ;; - "ntfsprogs/ntfscluster.8") CONFIG_FILES="$CONFIG_FILES ntfsprogs/ntfscluster.8" ;; - "ntfsprogs/ntfscmp.8") CONFIG_FILES="$CONFIG_FILES ntfsprogs/ntfscmp.8" ;; - "ntfsprogs/ntfscp.8") CONFIG_FILES="$CONFIG_FILES ntfsprogs/ntfscp.8" ;; - "ntfsprogs/ntfsfix.8") CONFIG_FILES="$CONFIG_FILES ntfsprogs/ntfsfix.8" ;; - "ntfsprogs/ntfsinfo.8") CONFIG_FILES="$CONFIG_FILES ntfsprogs/ntfsinfo.8" ;; - "ntfsprogs/ntfslabel.8") CONFIG_FILES="$CONFIG_FILES ntfsprogs/ntfslabel.8" ;; - "ntfsprogs/ntfsls.8") CONFIG_FILES="$CONFIG_FILES ntfsprogs/ntfsls.8" ;; - "ntfsprogs/ntfsprogs.8") CONFIG_FILES="$CONFIG_FILES ntfsprogs/ntfsprogs.8" ;; - "ntfsprogs/ntfsresize.8") CONFIG_FILES="$CONFIG_FILES ntfsprogs/ntfsresize.8" ;; - "ntfsprogs/ntfsundelete.8") CONFIG_FILES="$CONFIG_FILES ntfsprogs/ntfsundelete.8" ;; - "src/Makefile") CONFIG_FILES="$CONFIG_FILES src/Makefile" ;; - "src/ntfs-3g.8") CONFIG_FILES="$CONFIG_FILES src/ntfs-3g.8" ;; - "src/ntfs-3g.probe.8") CONFIG_FILES="$CONFIG_FILES src/ntfs-3g.probe.8" ;; - "src/ntfs-3g.usermap.8") CONFIG_FILES="$CONFIG_FILES src/ntfs-3g.usermap.8" ;; - "src/ntfs-3g.secaudit.8") CONFIG_FILES="$CONFIG_FILES src/ntfs-3g.secaudit.8" ;; - - *) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5 -echo "$as_me: error: invalid argument: $ac_config_target" >&2;} - { (exit 1); exit 1; }; };; - esac -done - - -# If the user did not use the arguments to specify the items to instantiate, -# then the envvar interface is used. Set only those that are not. -# We use the long form for the default assignment because of an extremely -# bizarre bug on SunOS 4.1.3. -if $ac_need_defaults; then - test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files - test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers - test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands -fi - -# Have a temporary directory for convenience. Make it in the build tree -# simply because there is no reason against having it here, and in addition, -# creating and moving files from /tmp can sometimes cause problems. -# Hook for its removal unless debugging. -# Note that there is a small window in which the directory will not be cleaned: -# after its creation but before its name has been assigned to `$tmp'. -$debug || -{ - tmp= - trap 'exit_status=$? - { test -z "$tmp" || test ! -d "$tmp" || rm -fr "$tmp"; } && exit $exit_status -' 0 - trap '{ (exit 1); exit 1; }' 1 2 13 15 -} -# Create a (secure) tmp directory for tmp files. - -{ - tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` && - test -n "$tmp" && test -d "$tmp" -} || -{ - tmp=./conf$$-$RANDOM - (umask 077 && mkdir "$tmp") -} || -{ - echo "$me: cannot create a temporary directory in ." >&2 - { (exit 1); exit 1; } -} - -# -# Set up the sed scripts for CONFIG_FILES section. -# - -# No need to generate the scripts if there are no CONFIG_FILES. -# This happens for instance when ./config.status config.h -if test -n "$CONFIG_FILES"; then - -cat >"$tmp/subs-1.sed" <<\CEOF -/@[a-zA-Z_][a-zA-Z_0-9]*@/!b -s,@SHELL@,|#_!!_#|/bin/sh,g -s,@PATH_SEPARATOR@,|#_!!_#|:,g -s,@PACKAGE_NAME@,|#_!!_#|ntfs-3g,g -s,@PACKAGE_TARNAME@,|#_!!_#|ntfs-3g,g -s,@PACKAGE_VERSION@,|#_!!_#|2013.1.13,g -s,@PACKAGE_STRING@,|#_!!_#|ntfs-3g 2013.1.13,g -s,@PACKAGE_BUGREPORT@,|#_!!_#|ntfs-3g-devel@|#_!!_#|lists.sf.net,g -s,@exec_prefix@,|#_!!_#|${prefix},g -s,@prefix@,|#_!!_#|/usr/local,g -s,@program_transform_name@,|#_!!_#|s\,x\,x\,,g -s,@bindir@,|#_!!_#|${exec_prefix}/bin,g -s,@sbindir@,|#_!!_#|${exec_prefix}/sbin,g -s,@libexecdir@,|#_!!_#|${exec_prefix}/libexec,g -s,@datarootdir@,|#_!!_#|${prefix}/share,g -s,@datadir@,|#_!!_#|${datarootdir},g -s,@sysconfdir@,|#_!!_#|${prefix}/etc,g -s,@sharedstatedir@,|#_!!_#|${prefix}/com,g -s,@localstatedir@,|#_!!_#|${prefix}/var,g -s,@includedir@,|#_!!_#|${prefix}/include,g -s,@oldincludedir@,|#_!!_#|/usr/include,g -s,@docdir@,|#_!!_#|${datarootdir}/doc/${PACKAGE_TARNAME},g -s,@infodir@,|#_!!_#|${datarootdir}/info,g -s,@htmldir@,|#_!!_#|${docdir},g -s,@dvidir@,|#_!!_#|${docdir},g -s,@pdfdir@,|#_!!_#|${docdir},g -s,@psdir@,|#_!!_#|${docdir},g -s,@libdir@,|#_!!_#|${exec_prefix}/lib,g -s,@localedir@,|#_!!_#|${datarootdir}/locale,g -s,@mandir@,|#_!!_#|${datarootdir}/man,g -s,@DEFS@,|#_!!_#|-DHAVE_CONFIG_H,g -s,@ECHO_C@,|#_!!_#|,g -s,@ECHO_N@,|#_!!_#|-n,g -s,@ECHO_T@,|#_!!_#|,g -s,@LIBS@,|#_!!_#|,g -s,@build_alias@,|#_!!_#|x86_64-linux-gnu,g -s,@host_alias@,|#_!!_#|mipsel-linux,g -s,@target_alias@,|#_!!_#|,g -s,@build@,|#_!!_#|x86_64-pc-linux-gnu,g -s,@build_cpu@,|#_!!_#|x86_64,g -s,@build_vendor@,|#_!!_#|pc,g -s,@build_os@,|#_!!_#|linux-gnu,g -s,@host@,|#_!!_#|mipsel-unknown-linux-gnu,g -s,@host_cpu@,|#_!!_#|mipsel,g -s,@host_vendor@,|#_!!_#|unknown,g -s,@host_os@,|#_!!_#|linux-gnu,g -s,@target@,|#_!!_#|mipsel-unknown-linux-gnu,g -s,@target_cpu@,|#_!!_#|mipsel,g -s,@target_vendor@,|#_!!_#|unknown,g -s,@target_os@,|#_!!_#|linux-gnu,g -s,@INSTALL_PROGRAM@,|#_!!_#|${INSTALL},g -s,@INSTALL_SCRIPT@,|#_!!_#|${INSTALL},g -s,@INSTALL_DATA@,|#_!!_#|${INSTALL} -m 644,g -s,@am__isrc@,|#_!!_#|,g -s,@CYGPATH_W@,|#_!!_#|echo,g -s,@PACKAGE@,|#_!!_#|ntfs-3g,g -s,@VERSION@,|#_!!_#|2013.1.13,g -s,@ACLOCAL@,|#_!!_#|${SHELL} /home/vicente/tomato/release/src/router/ntfs-3g/missing --run aclocal-1.10,g -s,@AUTOCONF@,|#_!!_#|${SHELL} /home/vicente/tomato/release/src/router/ntfs-3g/missing --run autoconf,g -s,@AUTOMAKE@,|#_!!_#|${SHELL} /home/vicente/tomato/release/src/router/ntfs-3g/missing --run automake-1.10,g -s,@AUTOHEADER@,|#_!!_#|${SHELL} /home/vicente/tomato/release/src/router/ntfs-3g/missing --run autoheader,g -s,@MAKEINFO@,|#_!!_#|${SHELL} /home/vicente/tomato/release/src/router/ntfs-3g/missing --run makeinfo,g -s,@install_sh@,|#_!!_#|$(SHELL) /home/vicente/tomato/release/src/router/ntfs-3g/install-sh,g -s,@STRIP@,|#_!!_#|mipsel-uclibc-strip -R .note -R .comment,g -s,@INSTALL_STRIP_PROGRAM@,|#_!!_#|$(install_sh) -c -s,g -s,@mkdir_p@,|#_!!_#|/bin/mkdir -p,g -s,@AWK@,|#_!!_#|gawk,g -s,@SET_MAKE@,|#_!!_#|,g -s,@am__leading_dot@,|#_!!_#|.,g -s,@AMTAR@,|#_!!_#|${SHELL} /home/vicente/tomato/release/src/router/ntfs-3g/missing --run tar,g -s,@am__tar@,|#_!!_#|${AMTAR} chof - "$$tardir",g -s,@am__untar@,|#_!!_#|${AMTAR} xf -,g -s,@MAINTAINER_MODE_TRUE@,|#_!!_#|#,g -s,@MAINTAINER_MODE_FALSE@,|#_!!_#|,g -s,@MAINT@,|#_!!_#|#,g -s,@CC@,|#_!!_#|mipsel-uclibc-gcc,g -s,@CFLAGS@,|#_!!_#|-Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections -Wall,g -s,@LDFLAGS@,|#_!!_#|-ffunction-sections -fdata-sections -Wl\,--gc-sections -fPIC,g -s,@CPPFLAGS@,|#_!!_#|,g -s,@ac_ct_CC@,|#_!!_#|,g -s,@EXEEXT@,|#_!!_#|,g -s,@OBJEXT@,|#_!!_#|o,g -s,@DEPDIR@,|#_!!_#|.deps,g -s,@am__include@,|#_!!_#|include,g -s,@am__quote@,|#_!!_#|,g -s,@AMDEP_TRUE@,|#_!!_#|#,g -s,@AMDEP_FALSE@,|#_!!_#|,g -s,@AMDEPBACKSLASH@,|#_!!_#|,g -s,@CCDEPMODE@,|#_!!_#|depmode=none,g -s,@am__fastdepCC_TRUE@,|#_!!_#|#,g -s,@am__fastdepCC_FALSE@,|#_!!_#|,g -s,@LN_S@,|#_!!_#|ln -s,g -s,@SED@,|#_!!_#|/bin/sed,g -s,@GREP@,|#_!!_#|/bin/grep,g -s,@EGREP@,|#_!!_#|/bin/grep -E,g -s,@ECHO@,|#_!!_#|echo,g -s,@AR@,|#_!!_#|mipsel-uclibc-ar,g -s,@RANLIB@,|#_!!_#|mipsel-uclibc-ranlib,g -CEOF -cat >"$tmp/subs-2.sed" <<\CEOF -/@[a-zA-Z_][a-zA-Z_0-9]*@/!b end -s,@DSYMUTIL@,|#_!!_#|,g -s,@NMEDIT@,|#_!!_#|,g -s,@CPP@,|#_!!_#|mipsel-uclibc-gcc -E,g -s,@CXX@,|#_!!_#|mipsel-linux-g++,g -s,@CXXFLAGS@,|#_!!_#|-g -O2,g -s,@ac_ct_CXX@,|#_!!_#|,g -s,@CXXDEPMODE@,|#_!!_#|depmode=none,g -s,@am__fastdepCXX_TRUE@,|#_!!_#|#,g -s,@am__fastdepCXX_FALSE@,|#_!!_#|,g -s,@CXXCPP@,|#_!!_#|mipsel-linux-g++ -E,g -s,@F77@,|#_!!_#|,g -s,@FFLAGS@,|#_!!_#|,g -s,@ac_ct_F77@,|#_!!_#|,g -s,@LIBTOOL@,|#_!!_#|$(SHELL) $(top_builddir)/libtool,g -s,@PKG_CONFIG@,|#_!!_#|/usr/bin/pkg-config,g -s,@MV@,|#_!!_#|/bin/mv,g -s,@RM@,|#_!!_#|/bin/rm,g -s,@LDCONFIG@,|#_!!_#|/sbin/ldconfig,g -s,@FUSE_MODULE_CFLAGS@,|#_!!_#|,g -s,@FUSE_MODULE_LIBS@,|#_!!_#|,g -s,@LIBGCRYPT_CONFIG@,|#_!!_#|,g -s,@LIBGCRYPT_CFLAGS@,|#_!!_#|,g -s,@LIBGCRYPT_LIBS@,|#_!!_#|,g -s,@GNUTLS_CFLAGS@,|#_!!_#|,g -s,@GNUTLS_LIBS@,|#_!!_#|,g -s,@ENABLE_CRYPTO_TRUE@,|#_!!_#|#,g -s,@ENABLE_CRYPTO_FALSE@,|#_!!_#|,g -s,@all_includes@,|#_!!_#| ,g -s,@all_libraries@,|#_!!_#| ,g -s,@LIBOBJS@,|#_!!_#| ${LIBOBJDIR}memcmp$U.o ${LIBOBJDIR}lstat$U.o ${LIBOBJDIR}stat$U.o,g -s,@pkgconfigdir@,|#_!!_#|$(libdir)/pkgconfig,g -s,@ntfs3gincludedir@,|#_!!_#|$(includedir)/ntfs-3g,g -s,@rootbindir@,|#_!!_#|/bin,g -s,@rootsbindir@,|#_!!_#|/sbin,g -s,@rootlibdir@,|#_!!_#|/lib,g -s,@LIBNTFS_3G_VERSION@,|#_!!_#|84,g -s,@LIBFUSE_LITE_CFLAGS@,|#_!!_#|,g -s,@LIBFUSE_LITE_LIBS@,|#_!!_#| -lpthread,g -s,@MKNTFS_CPPFLAGS@,|#_!!_#|,g -s,@MKNTFS_LIBS@,|#_!!_#|,g -s,@OUTPUT_FORMAT@,|#_!!_#|,g -s,@FUSE_INTERNAL_TRUE@,|#_!!_#|,g -s,@FUSE_INTERNAL_FALSE@,|#_!!_#|#,g -s,@GENERATE_LDSCRIPT_TRUE@,|#_!!_#|#,g -s,@GENERATE_LDSCRIPT_FALSE@,|#_!!_#|,g -s,@WINDOWS_TRUE@,|#_!!_#|#,g -s,@WINDOWS_FALSE@,|#_!!_#|,g -s,@NTFS_DEVICE_DEFAULT_IO_OPS_TRUE@,|#_!!_#|,g -s,@NTFS_DEVICE_DEFAULT_IO_OPS_FALSE@,|#_!!_#|#,g -s,@RUN_LDCONFIG_TRUE@,|#_!!_#|#,g -s,@RUN_LDCONFIG_FALSE@,|#_!!_#|,g -s,@REALLYSTATIC_TRUE@,|#_!!_#|#,g -s,@REALLYSTATIC_FALSE@,|#_!!_#|,g -s,@INSTALL_LIBRARY_TRUE@,|#_!!_#|#,g -s,@INSTALL_LIBRARY_FALSE@,|#_!!_#|,g -s,@ENABLE_MOUNT_HELPER_TRUE@,|#_!!_#|#,g -s,@ENABLE_MOUNT_HELPER_FALSE@,|#_!!_#|,g -s,@ENABLE_NTFS_3G_TRUE@,|#_!!_#|,g -s,@ENABLE_NTFS_3G_FALSE@,|#_!!_#|#,g -s,@ENABLE_NTFSPROGS_TRUE@,|#_!!_#|,g -s,@ENABLE_NTFSPROGS_FALSE@,|#_!!_#|#,g -s,@ENABLE_EXTRAS_TRUE@,|#_!!_#|#,g -s,@ENABLE_EXTRAS_FALSE@,|#_!!_#|,g -s,@MKDIR_P@,|#_!!_#|/bin/mkdir -p,g -s,@LTLIBOBJS@,|#_!!_#| ${LIBOBJDIR}memcmp$U.lo ${LIBOBJDIR}lstat$U.lo ${LIBOBJDIR}stat$U.lo,g -:end -s/|#_!!_#|//g -CEOF -fi # test -n "$CONFIG_FILES" - - -for ac_tag in :F $CONFIG_FILES :H $CONFIG_HEADERS :C $CONFIG_COMMANDS -do - case $ac_tag in - :[FHLC]) ac_mode=$ac_tag; continue;; - esac - case $ac_mode$ac_tag in - :[FHL]*:*);; - :L* | :C*:*) { { echo "$as_me:$LINENO: error: Invalid tag $ac_tag." >&5 -echo "$as_me: error: Invalid tag $ac_tag." >&2;} - { (exit 1); exit 1; }; };; - :[FH]-) ac_tag=-:-;; - :[FH]*) ac_tag=$ac_tag:$ac_tag.in;; - esac - ac_save_IFS=$IFS - IFS=: - set x $ac_tag - IFS=$ac_save_IFS - shift - ac_file=$1 - shift - - case $ac_mode in - :L) ac_source=$1;; - :[FH]) - ac_file_inputs= - for ac_f - do - case $ac_f in - -) ac_f="$tmp/stdin";; - *) # Look for the file first in the build tree, then in the source tree - # (if the path is not absolute). The absolute path cannot be DOS-style, - # because $ac_f cannot contain `:'. - test -f "$ac_f" || - case $ac_f in - [\\/$]*) false;; - *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";; - esac || - { { echo "$as_me:$LINENO: error: cannot find input file: $ac_f" >&5 -echo "$as_me: error: cannot find input file: $ac_f" >&2;} - { (exit 1); exit 1; }; };; - esac - ac_file_inputs="$ac_file_inputs $ac_f" - done - - # Let's still pretend it is `configure' which instantiates (i.e., don't - # use $as_me), people would be surprised to read: - # /* config.h. Generated by config.status. */ - configure_input="Generated from "`IFS=: - echo $* | sed 's|^[^:]*/||;s|:[^:]*/|, |g'`" by configure." - if test x"$ac_file" != x-; then - configure_input="$ac_file. $configure_input" - { echo "$as_me:$LINENO: creating $ac_file" >&5 -echo "$as_me: creating $ac_file" >&6;} - fi - - case $ac_tag in - *:-:* | *:-) cat >"$tmp/stdin";; - esac - ;; - esac - - ac_dir=`$as_dirname -- "$ac_file" || -$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$ac_file" : 'X\(//\)[^/]' \| \ - X"$ac_file" : 'X\(//\)$' \| \ - X"$ac_file" : 'X\(/\)' \| . 2>/dev/null || -echo X"$ac_file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - { as_dir="$ac_dir" - case $as_dir in #( - -*) as_dir=./$as_dir;; - esac - test -d "$as_dir" || { $as_mkdir_p && mkdir -p "$as_dir"; } || { - as_dirs= - while :; do - case $as_dir in #( - *\'*) as_qdir=`echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #( - *) as_qdir=$as_dir;; - esac - as_dirs="'$as_qdir' $as_dirs" - as_dir=`$as_dirname -- "$as_dir" || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || -echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - test -d "$as_dir" && break - done - test -z "$as_dirs" || eval "mkdir $as_dirs" - } || test -d "$as_dir" || { { echo "$as_me:$LINENO: error: cannot create directory $as_dir" >&5 -echo "$as_me: error: cannot create directory $as_dir" >&2;} - { (exit 1); exit 1; }; }; } - ac_builddir=. - -case "$ac_dir" in -.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; -*) - ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` - # A ".." for each directory in $ac_dir_suffix. - ac_top_builddir_sub=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,/..,g;s,/,,'` - case $ac_top_builddir_sub in - "") ac_top_builddir_sub=. ac_top_build_prefix= ;; - *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; - esac ;; -esac -ac_abs_top_builddir=$ac_pwd -ac_abs_builddir=$ac_pwd$ac_dir_suffix -# for backward compatibility: -ac_top_builddir=$ac_top_build_prefix - -case $srcdir in - .) # We are building in place. - ac_srcdir=. - ac_top_srcdir=$ac_top_builddir_sub - ac_abs_top_srcdir=$ac_pwd ;; - [\\/]* | ?:[\\/]* ) # Absolute name. - ac_srcdir=$srcdir$ac_dir_suffix; - ac_top_srcdir=$srcdir - ac_abs_top_srcdir=$srcdir ;; - *) # Relative name. - ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix - ac_top_srcdir=$ac_top_build_prefix$srcdir - ac_abs_top_srcdir=$ac_pwd/$srcdir ;; -esac -ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix - - - case $ac_mode in - :F) - # - # CONFIG_FILE - # - - case $INSTALL in - [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;; - *) ac_INSTALL=$ac_top_build_prefix$INSTALL ;; - esac - ac_MKDIR_P=$MKDIR_P - case $MKDIR_P in - [\\/$]* | ?:[\\/]* ) ;; - */*) ac_MKDIR_P=$ac_top_build_prefix$MKDIR_P ;; - esac -# If the template does not know about datarootdir, expand it. -# FIXME: This hack should be removed a few years after 2.60. -ac_datarootdir_hack=; ac_datarootdir_seen= - -case `sed -n '/datarootdir/ { - p - q -} -/@datadir@/p -/@docdir@/p -/@infodir@/p -/@localedir@/p -/@mandir@/p -' $ac_file_inputs` in -*datarootdir*) ac_datarootdir_seen=yes;; -*@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*) - { echo "$as_me:$LINENO: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5 -echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;} - ac_datarootdir_hack=' - s&@datadir@&${datarootdir}&g - s&@docdir@&${datarootdir}/doc/${PACKAGE_TARNAME}&g - s&@infodir@&${datarootdir}/info&g - s&@localedir@&${datarootdir}/locale&g - s&@mandir@&${datarootdir}/man&g - s&\${datarootdir}&${prefix}/share&g' ;; -esac - sed "/^[ ]*VPATH[ ]*=/{ -s/:*\$(srcdir):*/:/ -s/:*\${srcdir}:*/:/ -s/:*@srcdir@:*/:/ -s/^\([^=]*=[ ]*\):*/\1/ -s/:*$// -s/^[^=]*=[ ]*$// -} - -:t -/@[a-zA-Z_][a-zA-Z_0-9]*@/!b -s&@configure_input@&$configure_input&;t t -s&@top_builddir@&$ac_top_builddir_sub&;t t -s&@srcdir@&$ac_srcdir&;t t -s&@abs_srcdir@&$ac_abs_srcdir&;t t -s&@top_srcdir@&$ac_top_srcdir&;t t -s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t -s&@builddir@&$ac_builddir&;t t -s&@abs_builddir@&$ac_abs_builddir&;t t -s&@abs_top_builddir@&$ac_abs_top_builddir&;t t -s&@INSTALL@&$ac_INSTALL&;t t -s&@MKDIR_P@&$ac_MKDIR_P&;t t -$ac_datarootdir_hack -" $ac_file_inputs | sed -f "$tmp/subs-1.sed" | sed -f "$tmp/subs-2.sed" >$tmp/out - -test -z "$ac_datarootdir_hack$ac_datarootdir_seen" && - { ac_out=`sed -n '/\${datarootdir}/p' "$tmp/out"`; test -n "$ac_out"; } && - { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' "$tmp/out"`; test -z "$ac_out"; } && - { echo "$as_me:$LINENO: WARNING: $ac_file contains a reference to the variable \`datarootdir' -which seems to be undefined. Please make sure it is defined." >&5 -echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir' -which seems to be undefined. Please make sure it is defined." >&2;} - - rm -f "$tmp/stdin" - case $ac_file in - -) cat "$tmp/out"; rm -f "$tmp/out";; - *) rm -f "$ac_file"; mv "$tmp/out" $ac_file;; - esac - ;; - :H) - # - # CONFIG_HEADER - # - # First, check the format of the line: - cat >"$tmp/defines.sed" <<\CEOF -/^[ ]*#[ ]*undef[ ][ ]*[_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ][_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789]*[ ]*$/b def -/^[ ]*#[ ]*define[ ][ ]*[_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ][_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789]*[( ]/b def -b -:def -s/$/ / -s,^\([ #]*\)[^ ]*\([ ]*PACKAGE_NAME\)[ (].*,\1define\2 "ntfs-3g" , -s,^\([ #]*\)[^ ]*\([ ]*PACKAGE_TARNAME\)[ (].*,\1define\2 "ntfs-3g" , -s,^\([ #]*\)[^ ]*\([ ]*PACKAGE_VERSION\)[ (].*,\1define\2 "2013.1.13" , -s,^\([ #]*\)[^ ]*\([ ]*PACKAGE_STRING\)[ (].*,\1define\2 "ntfs-3g 2013.1.13" , -s,^\([ #]*\)[^ ]*\([ ]*PACKAGE_BUGREPORT\)[ (].*,\1define\2 "ntfs-3g-devel@lists.sf.net" , -s,^\([ #]*\)[^ ]*\([ ]*PACKAGE\)[ (].*,\1define\2 "ntfs-3g" , -s,^\([ #]*\)[^ ]*\([ ]*VERSION\)[ (].*,\1define\2 "2013.1.13" , -s,^\([ #]*\)[^ ]*\([ ]*_GNU_SOURCE\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*STDC_HEADERS\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_SYS_TYPES_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_SYS_STAT_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_STDLIB_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_STRING_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_MEMORY_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_STRINGS_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_INTTYPES_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_STDINT_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_UNISTD_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_DLFCN_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*_REENTRANT\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*FUSE_INTERNAL\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*STDC_HEADERS\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_CTYPE_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_FCNTL_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_LIBGEN_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_LIMITS_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_LOCALE_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_MNTENT_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_STDDEF_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_STDINT_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_STDLIB_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_STDIO_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_STDARG_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_STRING_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_STRINGS_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_ERRNO_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_TIME_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_UNISTD_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_UTIME_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_WCHAR_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_GETOPT_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_FEATURES_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_ENDIAN_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_BYTESWAP_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_SYS_PARAM_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_SYS_IOCTL_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_SYS_MOUNT_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_SYS_STAT_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_SYS_TYPES_H\)[ (].*,\1define\2 1 , -CEOF - sed -f "$tmp/defines.sed" $ac_file_inputs >"$tmp/out1" - # First, check the format of the line: - cat >"$tmp/defines.sed" <<\CEOF -/^[ ]*#[ ]*undef[ ][ ]*[_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ][_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789]*[ ]*$/b def -/^[ ]*#[ ]*define[ ][ ]*[_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ][_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789]*[( ]/b def -b -:def -s,^\([ #]*\)[^ ]*\([ ]*HAVE_SYS_VFS_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_SYS_STATVFS_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_SYS_SYSMACROS_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_LINUX_MAJOR_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_LINUX_FD_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_LINUX_HDREG_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_SYSLOG_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_PWD_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_MALLOC_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE__BOOL\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_STDBOOL_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*WORDS_LITTLEENDIAN\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_STRUCT_STAT_ST_BLOCKS\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_ST_BLOCKS\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_STRUCT_STAT_ST_RDEV\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_STRUCT_STAT_ST_ATIMENSEC\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_GETMNTENT\)[ (].*,\1define\2 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_MBRTOWC\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_STAT_EMPTY_STRING_BUG\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_STRFTIME\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_UTIME_H\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_VPRINTF\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_ATEXIT\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_BASENAME\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_DAEMON\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_DUP2\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_FDATASYNC\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_FFS\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_GETOPT_LONG\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_HASMNTOPT\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_MBSINIT\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_MEMMOVE\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_MEMSET\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_REALPATH\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_REGCOMP\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_SETLOCALE\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_SETXATTR\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_STRCASECMP\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_STRCHR\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_STRDUP\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_STRERROR\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_STRNLEN\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_STRSEP\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_STRTOL\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_STRTOUL\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_SYSCONF\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_UTIME\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_GETTIMEOFDAY\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_CLOCK_GETTIME\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_FORK\)[ (].*,\1define\2 1 , -CEOF - sed -f "$tmp/defines.sed" "$tmp/out1" >"$tmp/out2" - # First, check the format of the line: - cat >"$tmp/defines.sed" <<\CEOF -/^[ ]*#[ ]*undef[ ][ ]*[_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ][_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789]*[ ]*$/b def -/^[ ]*#[ ]*define[ ][ ]*[_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ][_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789]*[( ]/b def -b -:def -s,^\([ #]*\)[^ ]*\([ ]*HAVE_MEMCPY\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_RANDOM\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*HAVE_SNPRINTF\)[ (].*,\1define\2 1 , -s,^\([ #]*\)[^ ]*\([ ]*_FILE_OFFSET_BITS\)[ (].*,\1define\2 64 , -s/ $// -s,^[ #]*u.*,/* & */, -CEOF - sed -f "$tmp/defines.sed" "$tmp/out2" >"$tmp/out1" -ac_result="$tmp/out1" - if test x"$ac_file" != x-; then - echo "/* $configure_input */" >"$tmp/config.h" - cat "$ac_result" >>"$tmp/config.h" - if diff $ac_file "$tmp/config.h" >/dev/null 2>&1; then - { echo "$as_me:$LINENO: $ac_file is unchanged" >&5 -echo "$as_me: $ac_file is unchanged" >&6;} - else - rm -f $ac_file - mv "$tmp/config.h" $ac_file - fi - else - echo "/* $configure_input */" - cat "$ac_result" - fi - rm -f "$tmp/out12" -# Compute $ac_file's index in $config_headers. -_am_arg=$ac_file -_am_stamp_count=1 -for _am_header in $config_headers :; do - case $_am_header in - $_am_arg | $_am_arg:* ) - break ;; - * ) - _am_stamp_count=`expr $_am_stamp_count + 1` ;; - esac -done -echo "timestamp for $_am_arg" >`$as_dirname -- "$_am_arg" || -$as_expr X"$_am_arg" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$_am_arg" : 'X\(//\)[^/]' \| \ - X"$_am_arg" : 'X\(//\)$' \| \ - X"$_am_arg" : 'X\(/\)' \| . 2>/dev/null || -echo X"$_am_arg" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'`/stamp-h$_am_stamp_count - ;; - - :C) { echo "$as_me:$LINENO: executing $ac_file commands" >&5 -echo "$as_me: executing $ac_file commands" >&6;} - ;; - esac - - - case $ac_file$ac_mode in - "depfiles":C) test x"$AMDEP_TRUE" != x"" || for mf in $CONFIG_FILES; do - # Strip MF so we end up with the name of the file. - mf=`echo "$mf" | sed -e 's/:.*$//'` - # Check whether this is an Automake generated Makefile or not. - # We used to match only the files named `Makefile.in', but - # some people rename them; so instead we look at the file content. - # Grep'ing the first line is not enough: some people post-process - # each Makefile.in and add a new line on top of each file to say so. - # Grep'ing the whole file is not good either: AIX grep has a line - # limit of 2048, but all sed's we know have understand at least 4000. - if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then - dirpart=`$as_dirname -- "$mf" || -$as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$mf" : 'X\(//\)[^/]' \| \ - X"$mf" : 'X\(//\)$' \| \ - X"$mf" : 'X\(/\)' \| . 2>/dev/null || -echo X"$mf" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - else - continue - fi - # Extract the definition of DEPDIR, am__include, and am__quote - # from the Makefile without running `make'. - DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"` - test -z "$DEPDIR" && continue - am__include=`sed -n 's/^am__include = //p' < "$mf"` - test -z "am__include" && continue - am__quote=`sed -n 's/^am__quote = //p' < "$mf"` - # When using ansi2knr, U may be empty or an underscore; expand it - U=`sed -n 's/^U = //p' < "$mf"` - # Find all dependency output files, they are included files with - # $(DEPDIR) in their names. We invoke sed twice because it is the - # simplest approach to changing $(DEPDIR) to its actual value in the - # expansion. - for file in `sed -n " - s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \ - sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do - # Make sure the directory exists. - test -f "$dirpart/$file" && continue - fdir=`$as_dirname -- "$file" || -$as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$file" : 'X\(//\)[^/]' \| \ - X"$file" : 'X\(//\)$' \| \ - X"$file" : 'X\(/\)' \| . 2>/dev/null || -echo X"$file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - { as_dir=$dirpart/$fdir - case $as_dir in #( - -*) as_dir=./$as_dir;; - esac - test -d "$as_dir" || { $as_mkdir_p && mkdir -p "$as_dir"; } || { - as_dirs= - while :; do - case $as_dir in #( - *\'*) as_qdir=`echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #( - *) as_qdir=$as_dir;; - esac - as_dirs="'$as_qdir' $as_dirs" - as_dir=`$as_dirname -- "$as_dir" || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || -echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - test -d "$as_dir" && break - done - test -z "$as_dirs" || eval "mkdir $as_dirs" - } || test -d "$as_dir" || { { echo "$as_me:$LINENO: error: cannot create directory $as_dir" >&5 -echo "$as_me: error: cannot create directory $as_dir" >&2;} - { (exit 1); exit 1; }; }; } - # echo "creating $dirpart/$file" - echo '# dummy' > "$dirpart/$file" - done -done - ;; - - esac -done # for ac_tag - - -{ (exit 0); exit 0; } diff --git a/release/src/router/ntfs-3g/include/Makefile b/release/src/router/ntfs-3g/include/Makefile index 89558c7f36..a69e687919 100644 --- a/release/src/router/ntfs-3g/include/Makefile +++ b/release/src/router/ntfs-3g/include/Makefile @@ -56,12 +56,12 @@ ETAGS = etags CTAGS = ctags DIST_SUBDIRS = $(SUBDIRS) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/ntfs-3g/missing --run aclocal-1.10 -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/ntfs-3g/missing --run tar +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/ntfs-3g/missing --run aclocal-1.10 +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/ntfs-3g/missing --run tar AR = mipsel-uclibc-ar -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/ntfs-3g/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/ntfs-3g/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/ntfs-3g/missing --run automake-1.10 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/ntfs-3g/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/ntfs-3g/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/ntfs-3g/missing --run automake-1.10 AWK = gawk CC = mipsel-uclibc-gcc CCDEPMODE = depmode=none @@ -108,7 +108,7 @@ LIBTOOL = $(SHELL) $(top_builddir)/libtool LN_S = ln -s LTLIBOBJS = ${LIBOBJDIR}memcmp$U.lo ${LIBOBJDIR}lstat$U.lo ${LIBOBJDIR}stat$U.lo MAINT = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/ntfs-3g/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/ntfs-3g/missing --run makeinfo MKDIR_P = /bin/mkdir -p MKNTFS_CPPFLAGS = MKNTFS_LIBS = @@ -131,10 +131,10 @@ SET_MAKE = SHELL = /bin/sh STRIP = mipsel-uclibc-strip -R .note -R .comment VERSION = 2013.1.13 -abs_builddir = /home/vicente/tomato/release/src/router/ntfs-3g/include -abs_srcdir = /home/vicente/tomato/release/src/router/ntfs-3g/include -abs_top_builddir = /home/vicente/tomato/release/src/router/ntfs-3g -abs_top_srcdir = /home/vicente/tomato/release/src/router/ntfs-3g +abs_builddir = /home/vicente/repos/tomato/release/src/router/ntfs-3g/include +abs_srcdir = /home/vicente/repos/tomato/release/src/router/ntfs-3g/include +abs_top_builddir = /home/vicente/repos/tomato/release/src/router/ntfs-3g +abs_top_srcdir = /home/vicente/repos/tomato/release/src/router/ntfs-3g ac_ct_CC = ac_ct_CXX = ac_ct_F77 = @@ -165,7 +165,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = $(SHELL) /home/vicente/tomato/release/src/router/ntfs-3g/install-sh +install_sh = $(SHELL) /home/vicente/repos/tomato/release/src/router/ntfs-3g/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = ${datarootdir}/locale diff --git a/release/src/router/ntfs-3g/include/fuse-lite/Makefile b/release/src/router/ntfs-3g/include/fuse-lite/Makefile index aea48be992..e0f6a5ee48 100644 --- a/release/src/router/ntfs-3g/include/fuse-lite/Makefile +++ b/release/src/router/ntfs-3g/include/fuse-lite/Makefile @@ -49,12 +49,12 @@ HEADERS = $(noinst_HEADERS) ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/ntfs-3g/missing --run aclocal-1.10 -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/ntfs-3g/missing --run tar +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/ntfs-3g/missing --run aclocal-1.10 +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/ntfs-3g/missing --run tar AR = mipsel-uclibc-ar -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/ntfs-3g/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/ntfs-3g/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/ntfs-3g/missing --run automake-1.10 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/ntfs-3g/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/ntfs-3g/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/ntfs-3g/missing --run automake-1.10 AWK = gawk CC = mipsel-uclibc-gcc CCDEPMODE = depmode=none @@ -101,7 +101,7 @@ LIBTOOL = $(SHELL) $(top_builddir)/libtool LN_S = ln -s LTLIBOBJS = ${LIBOBJDIR}memcmp$U.lo ${LIBOBJDIR}lstat$U.lo ${LIBOBJDIR}stat$U.lo MAINT = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/ntfs-3g/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/ntfs-3g/missing --run makeinfo MKDIR_P = /bin/mkdir -p MKNTFS_CPPFLAGS = MKNTFS_LIBS = @@ -124,10 +124,10 @@ SET_MAKE = SHELL = /bin/sh STRIP = mipsel-uclibc-strip -R .note -R .comment VERSION = 2013.1.13 -abs_builddir = /home/vicente/tomato/release/src/router/ntfs-3g/include/fuse-lite -abs_srcdir = /home/vicente/tomato/release/src/router/ntfs-3g/include/fuse-lite -abs_top_builddir = /home/vicente/tomato/release/src/router/ntfs-3g -abs_top_srcdir = /home/vicente/tomato/release/src/router/ntfs-3g +abs_builddir = /home/vicente/repos/tomato/release/src/router/ntfs-3g/include/fuse-lite +abs_srcdir = /home/vicente/repos/tomato/release/src/router/ntfs-3g/include/fuse-lite +abs_top_builddir = /home/vicente/repos/tomato/release/src/router/ntfs-3g +abs_top_srcdir = /home/vicente/repos/tomato/release/src/router/ntfs-3g ac_ct_CC = ac_ct_CXX = ac_ct_F77 = @@ -158,7 +158,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = $(SHELL) /home/vicente/tomato/release/src/router/ntfs-3g/install-sh +install_sh = $(SHELL) /home/vicente/repos/tomato/release/src/router/ntfs-3g/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = ${datarootdir}/locale diff --git a/release/src/router/ntfs-3g/include/ntfs-3g/Makefile b/release/src/router/ntfs-3g/include/ntfs-3g/Makefile index 93b694e90d..0d0b31a352 100644 --- a/release/src/router/ntfs-3g/include/ntfs-3g/Makefile +++ b/release/src/router/ntfs-3g/include/ntfs-3g/Makefile @@ -70,12 +70,12 @@ HEADERS = $(noinst_HEADERS) $(ntfs3ginclude_HEADERS) ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/ntfs-3g/missing --run aclocal-1.10 -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/ntfs-3g/missing --run tar +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/ntfs-3g/missing --run aclocal-1.10 +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/ntfs-3g/missing --run tar AR = mipsel-uclibc-ar -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/ntfs-3g/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/ntfs-3g/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/ntfs-3g/missing --run automake-1.10 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/ntfs-3g/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/ntfs-3g/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/ntfs-3g/missing --run automake-1.10 AWK = gawk CC = mipsel-uclibc-gcc CCDEPMODE = depmode=none @@ -122,7 +122,7 @@ LIBTOOL = $(SHELL) $(top_builddir)/libtool LN_S = ln -s LTLIBOBJS = ${LIBOBJDIR}memcmp$U.lo ${LIBOBJDIR}lstat$U.lo ${LIBOBJDIR}stat$U.lo MAINT = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/ntfs-3g/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/ntfs-3g/missing --run makeinfo MKDIR_P = /bin/mkdir -p MKNTFS_CPPFLAGS = MKNTFS_LIBS = @@ -145,10 +145,10 @@ SET_MAKE = SHELL = /bin/sh STRIP = mipsel-uclibc-strip -R .note -R .comment VERSION = 2013.1.13 -abs_builddir = /home/vicente/tomato/release/src/router/ntfs-3g/include/ntfs-3g -abs_srcdir = /home/vicente/tomato/release/src/router/ntfs-3g/include/ntfs-3g -abs_top_builddir = /home/vicente/tomato/release/src/router/ntfs-3g -abs_top_srcdir = /home/vicente/tomato/release/src/router/ntfs-3g +abs_builddir = /home/vicente/repos/tomato/release/src/router/ntfs-3g/include/ntfs-3g +abs_srcdir = /home/vicente/repos/tomato/release/src/router/ntfs-3g/include/ntfs-3g +abs_top_builddir = /home/vicente/repos/tomato/release/src/router/ntfs-3g +abs_top_srcdir = /home/vicente/repos/tomato/release/src/router/ntfs-3g ac_ct_CC = ac_ct_CXX = ac_ct_F77 = @@ -179,7 +179,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = $(SHELL) /home/vicente/tomato/release/src/router/ntfs-3g/install-sh +install_sh = $(SHELL) /home/vicente/repos/tomato/release/src/router/ntfs-3g/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = ${datarootdir}/locale diff --git a/release/src/router/ntfs-3g/libfuse-lite/Makefile b/release/src/router/ntfs-3g/libfuse-lite/Makefile index 7a7fca350d..454f8cdf56 100644 --- a/release/src/router/ntfs-3g/libfuse-lite/Makefile +++ b/release/src/router/ntfs-3g/libfuse-lite/Makefile @@ -74,12 +74,12 @@ DIST_SOURCES = $(libfuse_lite_la_SOURCES) ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/ntfs-3g/missing --run aclocal-1.10 -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/ntfs-3g/missing --run tar +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/ntfs-3g/missing --run aclocal-1.10 +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/ntfs-3g/missing --run tar AR = mipsel-uclibc-ar -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/ntfs-3g/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/ntfs-3g/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/ntfs-3g/missing --run automake-1.10 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/ntfs-3g/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/ntfs-3g/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/ntfs-3g/missing --run automake-1.10 AWK = gawk CC = mipsel-uclibc-gcc CCDEPMODE = depmode=none @@ -126,7 +126,7 @@ LIBTOOL = $(SHELL) $(top_builddir)/libtool LN_S = ln -s LTLIBOBJS = ${LIBOBJDIR}memcmp$U.lo ${LIBOBJDIR}lstat$U.lo ${LIBOBJDIR}stat$U.lo MAINT = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/ntfs-3g/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/ntfs-3g/missing --run makeinfo MKDIR_P = /bin/mkdir -p MKNTFS_CPPFLAGS = MKNTFS_LIBS = @@ -149,10 +149,10 @@ SET_MAKE = SHELL = /bin/sh STRIP = mipsel-uclibc-strip -R .note -R .comment VERSION = 2013.1.13 -abs_builddir = /home/vicente/tomato/release/src/router/ntfs-3g/libfuse-lite -abs_srcdir = /home/vicente/tomato/release/src/router/ntfs-3g/libfuse-lite -abs_top_builddir = /home/vicente/tomato/release/src/router/ntfs-3g -abs_top_srcdir = /home/vicente/tomato/release/src/router/ntfs-3g +abs_builddir = /home/vicente/repos/tomato/release/src/router/ntfs-3g/libfuse-lite +abs_srcdir = /home/vicente/repos/tomato/release/src/router/ntfs-3g/libfuse-lite +abs_top_builddir = /home/vicente/repos/tomato/release/src/router/ntfs-3g +abs_top_srcdir = /home/vicente/repos/tomato/release/src/router/ntfs-3g ac_ct_CC = ac_ct_CXX = ac_ct_F77 = @@ -183,7 +183,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = $(SHELL) /home/vicente/tomato/release/src/router/ntfs-3g/install-sh +install_sh = $(SHELL) /home/vicente/repos/tomato/release/src/router/ntfs-3g/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = ${datarootdir}/locale diff --git a/release/src/router/ntfs-3g/libntfs-3g/Makefile b/release/src/router/ntfs-3g/libntfs-3g/Makefile index 177702df22..0ce9f5747b 100644 --- a/release/src/router/ntfs-3g/libntfs-3g/Makefile +++ b/release/src/router/ntfs-3g/libntfs-3g/Makefile @@ -108,12 +108,12 @@ DATA = $(pkgconfig_DATA) ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/ntfs-3g/missing --run aclocal-1.10 -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/ntfs-3g/missing --run tar +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/ntfs-3g/missing --run aclocal-1.10 +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/ntfs-3g/missing --run tar AR = mipsel-uclibc-ar -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/ntfs-3g/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/ntfs-3g/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/ntfs-3g/missing --run automake-1.10 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/ntfs-3g/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/ntfs-3g/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/ntfs-3g/missing --run automake-1.10 AWK = gawk CC = mipsel-uclibc-gcc CCDEPMODE = depmode=none @@ -160,7 +160,7 @@ LIBTOOL = $(SHELL) $(top_builddir)/libtool LN_S = ln -s LTLIBOBJS = ${LIBOBJDIR}memcmp$U.lo ${LIBOBJDIR}lstat$U.lo ${LIBOBJDIR}stat$U.lo MAINT = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/ntfs-3g/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/ntfs-3g/missing --run makeinfo MKDIR_P = /bin/mkdir -p MKNTFS_CPPFLAGS = MKNTFS_LIBS = @@ -183,10 +183,10 @@ SET_MAKE = SHELL = /bin/sh STRIP = mipsel-uclibc-strip -R .note -R .comment VERSION = 2013.1.13 -abs_builddir = /home/vicente/tomato/release/src/router/ntfs-3g/libntfs-3g -abs_srcdir = /home/vicente/tomato/release/src/router/ntfs-3g/libntfs-3g -abs_top_builddir = /home/vicente/tomato/release/src/router/ntfs-3g -abs_top_srcdir = /home/vicente/tomato/release/src/router/ntfs-3g +abs_builddir = /home/vicente/repos/tomato/release/src/router/ntfs-3g/libntfs-3g +abs_srcdir = /home/vicente/repos/tomato/release/src/router/ntfs-3g/libntfs-3g +abs_top_builddir = /home/vicente/repos/tomato/release/src/router/ntfs-3g +abs_top_srcdir = /home/vicente/repos/tomato/release/src/router/ntfs-3g ac_ct_CC = ac_ct_CXX = ac_ct_F77 = @@ -217,7 +217,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = $(SHELL) /home/vicente/tomato/release/src/router/ntfs-3g/install-sh +install_sh = $(SHELL) /home/vicente/repos/tomato/release/src/router/ntfs-3g/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = ${datarootdir}/locale diff --git a/release/src/router/ntfs-3g/ntfsprogs/Makefile b/release/src/router/ntfs-3g/ntfsprogs/Makefile index b8288074af..5fb2cef4f8 100644 --- a/release/src/router/ntfs-3g/ntfsprogs/Makefile +++ b/release/src/router/ntfs-3g/ntfsprogs/Makefile @@ -274,12 +274,12 @@ MANS = $(man_MANS) ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/ntfs-3g/missing --run aclocal-1.10 -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/ntfs-3g/missing --run tar +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/ntfs-3g/missing --run aclocal-1.10 +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/ntfs-3g/missing --run tar AR = mipsel-uclibc-ar -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/ntfs-3g/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/ntfs-3g/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/ntfs-3g/missing --run automake-1.10 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/ntfs-3g/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/ntfs-3g/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/ntfs-3g/missing --run automake-1.10 AWK = gawk CC = mipsel-uclibc-gcc CCDEPMODE = depmode=none @@ -326,7 +326,7 @@ LIBTOOL = $(SHELL) $(top_builddir)/libtool LN_S = ln -s LTLIBOBJS = ${LIBOBJDIR}memcmp$U.lo ${LIBOBJDIR}lstat$U.lo ${LIBOBJDIR}stat$U.lo MAINT = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/ntfs-3g/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/ntfs-3g/missing --run makeinfo MKDIR_P = /bin/mkdir -p MKNTFS_CPPFLAGS = MKNTFS_LIBS = @@ -349,10 +349,10 @@ SET_MAKE = SHELL = /bin/sh STRIP = mipsel-uclibc-strip -R .note -R .comment VERSION = 2013.1.13 -abs_builddir = /home/vicente/tomato/release/src/router/ntfs-3g/ntfsprogs -abs_srcdir = /home/vicente/tomato/release/src/router/ntfs-3g/ntfsprogs -abs_top_builddir = /home/vicente/tomato/release/src/router/ntfs-3g -abs_top_srcdir = /home/vicente/tomato/release/src/router/ntfs-3g +abs_builddir = /home/vicente/repos/tomato/release/src/router/ntfs-3g/ntfsprogs +abs_srcdir = /home/vicente/repos/tomato/release/src/router/ntfs-3g/ntfsprogs +abs_top_builddir = /home/vicente/repos/tomato/release/src/router/ntfs-3g +abs_top_srcdir = /home/vicente/repos/tomato/release/src/router/ntfs-3g ac_ct_CC = ac_ct_CXX = ac_ct_F77 = @@ -383,7 +383,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = $(SHELL) /home/vicente/tomato/release/src/router/ntfs-3g/install-sh +install_sh = $(SHELL) /home/vicente/repos/tomato/release/src/router/ntfs-3g/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = ${datarootdir}/locale diff --git a/release/src/router/ntfs-3g/src/Makefile b/release/src/router/ntfs-3g/src/Makefile index 291b890bbe..21cfaada08 100644 --- a/release/src/router/ntfs-3g/src/Makefile +++ b/release/src/router/ntfs-3g/src/Makefile @@ -138,12 +138,12 @@ DATA = $(rootsbin_DATA) ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/ntfs-3g/missing --run aclocal-1.10 -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/ntfs-3g/missing --run tar +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/ntfs-3g/missing --run aclocal-1.10 +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/ntfs-3g/missing --run tar AR = mipsel-uclibc-ar -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/ntfs-3g/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/ntfs-3g/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/ntfs-3g/missing --run automake-1.10 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/ntfs-3g/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/ntfs-3g/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/ntfs-3g/missing --run automake-1.10 AWK = gawk CC = mipsel-uclibc-gcc CCDEPMODE = depmode=none @@ -190,7 +190,7 @@ LIBTOOL = $(SHELL) $(top_builddir)/libtool LN_S = ln -s LTLIBOBJS = ${LIBOBJDIR}memcmp$U.lo ${LIBOBJDIR}lstat$U.lo ${LIBOBJDIR}stat$U.lo MAINT = # -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/ntfs-3g/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/ntfs-3g/missing --run makeinfo MKDIR_P = /bin/mkdir -p MKNTFS_CPPFLAGS = MKNTFS_LIBS = @@ -213,10 +213,10 @@ SET_MAKE = SHELL = /bin/sh STRIP = mipsel-uclibc-strip -R .note -R .comment VERSION = 2013.1.13 -abs_builddir = /home/vicente/tomato/release/src/router/ntfs-3g/src -abs_srcdir = /home/vicente/tomato/release/src/router/ntfs-3g/src -abs_top_builddir = /home/vicente/tomato/release/src/router/ntfs-3g -abs_top_srcdir = /home/vicente/tomato/release/src/router/ntfs-3g +abs_builddir = /home/vicente/repos/tomato/release/src/router/ntfs-3g/src +abs_srcdir = /home/vicente/repos/tomato/release/src/router/ntfs-3g/src +abs_top_builddir = /home/vicente/repos/tomato/release/src/router/ntfs-3g +abs_top_srcdir = /home/vicente/repos/tomato/release/src/router/ntfs-3g ac_ct_CC = ac_ct_CXX = ac_ct_F77 = @@ -247,7 +247,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = $(SHELL) /home/vicente/tomato/release/src/router/ntfs-3g/install-sh +install_sh = $(SHELL) /home/vicente/repos/tomato/release/src/router/ntfs-3g/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = ${datarootdir}/locale diff --git a/release/src/router/openssl/apps/app_rand.o b/release/src/router/openssl/apps/app_rand.o deleted file mode 100644 index 1077ab82bdb7cd67e93d54b515df98c5c4f1b5e4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 3692 zcwUuPPiz!b82@IryKT3WF54AXEb>M--D1pSTZ&OMW^EB9X^%q*L;Td`w<{jI$YG}eWJ`If9lL4T9y?*QtpI1sv5v|8a7G=CQ5$_b@Ex>nc3@)!tz_)98fnDo#Ks$>zP6L{IVKo6qb9>Nd z()T@H_`6rlDKI_R>rGE;=LjA95JEo2*h;b3G8o%^jO`xAbr<6b)&;)(GEBr)h9I_`!j^2KAb3+y-impE zU=3;Qf}HU=8|UYMZQaP6c%Arb;$sNoQG_EFL#8qD7}k=L~GTJqzI99VtPVWAcpXHKCVyf*uwNVZSUdJiRn?>4Rn5m?baqd0kD4xpQO+uTyH?s-ff7sKz0bCc_FSh}ye=Ms5PPHwK}-+YqgnTr#u) z5RUI|Q14IR_)3yqR?<_%vjsw1)Fx5yQA{uBgBqoF1%oOfV=M6bB)?SC6sv6SJ}$!V z5-r!9++_X${LurcC1SG@5hO&*9*G`|(L=CFjCp-+iOJJ3dIZKJ`f}z-J{qIPVszYo z*8jE(TN<7RzCQw*&Wo}{)4A}mL{H=Uf<)u}=6`brwA>PriXb`}qsQSjF{Zto#rzzR zN1!dqX`NSN^rta8z)E{8i}{lGF3Eq4(bvV8_D~k{`AbX=bOX>gp}q*> z&=1f1!oqxsUeolNq1P^Y&C+W({QFf^S!z{kmfM2$uBLTq8dYqgX~NurcPgzme!3om z^{y_TMuZT%wbr@Fe3CxUmt7vOn&-8lZsRqfKF7~ARpavHGrTTS*i&5(kMcd38ts?U z`VMdA_EMYqeM9;sp-=Wl@bcSB{RH`h36M ztguh_$p{wzVKJ{R@SPO+0z2n~-VXxD_oRn~aE0_T{0t@j4dP?L-Xi`Mz9)!J=j3pf pzLk)V{eZ&xbd(I^<{rX6h5dx!=ZT-=cTo!aR}`M7w-uhJe*j@tB-H=_ diff --git a/release/src/router/openssl/apps/apps.o b/release/src/router/openssl/apps/apps.o deleted file mode 100644 index bfd26904fbf73226f29a81c706257f88a08e3b76..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 54060 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�l&B!{NgI`i%sAc6W|w@f*v-=dDkxSi*wO0?qR=(XY1<3H}-&UEC=71 z20aOZZ^T}p53Dx)V?^_hXNi9-BmY>q-bSqZm6CIi6kB*caW2>wo|C)_#?sNohV>xl z`I)GP@7sCsJYm9nKVzOtyhCt9M2w5j`O7+`l*m=tl%-RP5@&j4;T7?aTLaBetb53xK?OHX>YqxdynGS?zvOEs}rFzcbsqc`Z`xV zP=j^wTv08x8}x@Up@DH)C5&?|#dn&%0AFrhQ^u1F{lPX7#`n5N2mio!@?bl8upNj? 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

    bznRvH9VJImqD-dMV{A? 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 diff --git a/release/src/router/openssl/apps/enc.o b/release/src/router/openssl/apps/enc.o deleted file mode 100644 index 2f10ebed1b13cb894fa5fbbd1ff9c069ee955846..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 17148 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 aCw&g>lb%E#H1^)4Xx&XpZ^KQh-~SDH&}^yz diff --git a/release/src/router/openssl/apps/openssl.o b/release/src/router/openssl/apps/openssl.o deleted file mode 100644 index 82d6079cf83c8fd77e45cf25e04397d538c478e5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 14648 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 diff --git a/release/src/router/openssl/apps/req.o b/release/src/router/openssl/apps/req.o deleted file mode 100644 index d7c8cc32cf85e8507815c403d647e4ce555a0638..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 40796 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 diff --git a/release/src/router/openssl/apps/rsa.o b/release/src/router/openssl/apps/rsa.o deleted file mode 100644 index 3f66f1bb595b337f7011af4009f5fc0ea7e9158a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 10284 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 z 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 aVoj`z4Y4UkB0upxjdx$;t!camvDhE6M|^t# diff --git a/release/src/router/openssl/apps/version.o b/release/src/router/openssl/apps/version.o deleted file mode 100644 index 8ed3c2c6d39ccacae6c8320d96807f3e817749b8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 3564 zcwW6$O^j1j6#n`%LrX!*Fvut)ylR;#WO!*ykzpLQnern^1q3xFXzFYGW~OGQZQgqz z6Bi%HHLAck-_(kB))45;oC+6R~vDB(@=1w(T~fGK3r-knJTqo9&qAXO?kH$%2Ks5VBG7`5HKByK(oPevjg?T@>AMw#njx z?ZcY555-|0UK@)23dH6~E|Gi*?5FUtAAleZp5YiV1%7wk-SHg7ch~;d?wr%(0g>km z(y& z6YG8=_Hox~*Y^u&4^KKae&K5l1aWA9_jOCOjmfxd1JaZ^KF~p5;i-q&?D9mxzD!k_?&vr zU@Vb^%LNCPI;a1q4bM5xlgM`L>vHkDAuOzEasDOtU^(vg#G)M4<-3-!V;j2bHr;ib z?z&BP-KM*4(_OdeuG9IvV$)r>>8{hdcLP~mAH?2VZbV7!-T%gBC8MTQs)4FGGi_-_ z(w5=s$=1lyk6Td7nx#Q4nkH03pQu#FYdn}z>tzG#bXhMRolv!6Wm}r)8XI$@6oq!I zIEE?;UtwCSRH2q?)6;s@!hdM%0jGv{3!L@LM}>|FyTCu#4U&ZZh20RGHS2!Ku1~TH z3cM5O_{O|NqIm4MZ6^s!{I!Ui$4ZheVaNC-bjCZ5&eodCi*Z`AlWl`yzJSjCqq2*k zR#I5Z?+7~c`lDialY3{ahm*H+Zch7UTgS%nwb~?tcO9~y8 zwlGmIlq+T(W@VzPO`%w+6?DVE*uDb=voKzn(w$*de;=k*Zq1Y|V~Vg*nyx#zZd9t) zIOum&*Jgw&h;>juYMBrgWBUu@-xP;(nf7?s?!)bIrL1dhFt(>Xq%fsP&2aX^zs}v4 zu0Hq9bocRh4v0ME*55E)mNMh@?wO6y!JlKEe#AdxyaBk)nl4e4u5y@;^F5A3`VYZ# z{R@ZP_s~tc&*$>Jq{CEG;>?pC75p&sbg5rqp7gtdf17!_xKqrNo)!EF=Ba4TF;9A4 z@aLJQqIQva(zkr>^W5Qih4N;+ip~$ulkTJZBQYSu`dRuDWc?hi$C`>lnV&D}exSNZ zPco(pXE7#yO8A`>eisG4Ch$!W=N9`>0l&k3r0+4m33wppgH!^$>Ca^a>Bs=pnt;nE z1fOI~AJwej^MZe!af0#`d|mLz8B-BECHVWiKJll;{CVcL&^I99=DQGZ^Sv$beS!Z1 D29f0i diff --git a/release/src/router/openssl/apps/x509.o b/release/src/router/openssl/apps/x509.o deleted file mode 100644 index fe808ee97b0546bb70da80079b16fa26a711f2a3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 33988 zcwW_g0eDo`b>^KJF=!+V0})uZW%~&aLMD zJ@?Jrc^Yix`}W)YcE0b;ng85#?mhS1bI-l^z0v3+Et@v@d_LvAe5z1oky6o(O3e+c z)_RR9)e`kCWxuZZrhlZa`v*aEi(g4D5*Y^~N2Ion+UOiSD!m)^NgE1~atmP=eg7tl*i#Yy$$ZlxZ)Ojt!+# ziEfR%6GLfsnx6+^{R#JTVqkmkKmxY%bAPNC##Sf0Q-dADL%mXu*gSyFcVxPws{51i z;lAON{yaF`#ST~RToqlDPHN9rryo>;0!*E6im?Z}5al6`SKrm56$V#pQA!A2yb zXO*k!ZM_5A6GMYTy#vCJ$I^+EwrglGnUb;7&R~J=b6h^rFFlFwr@+vDN$L@;)`KB~ zTix9^_x_h_na$=4S zI;VG=Gn}Gmx+eja)1B<^j}1TpuY|6vFByxw0^P}hZN1wa2Dr0)S!#Kak%0w$hze&} zpSE_Un2IO1#fJOR%9;|!)=j4VOo@XK%yjCBgriN5IT)@T@S8)c*%8bk=jq;bPmyY) zWeC^aZN1%;KtK&AFgs#{gNfKsiqhT5p`qcybV7IRfwU7(CQ{BoGEGy{vEBjJKit*V z+s*2WGJPK&7>sp4r9EktK8mJe>EWS-vjc;u8>P8gg}T}DIA$MP>5rwmd&Gk??bN=` z>Li~c!-Vah6gRIqmK39d43g!h8R+_^;gi zYm|@fTo$csuTmfSrJ_7KVnYXPa5ZMiSfie;Rv|LhC9uRK?$w{yZcAfyz(*$GEb346 zCx>?FdF^b-W~_S^tyu>9?>Am(&CU#6uZ8uz?-+{ddc2$^1;Iojb)C&fHoWZPb(YEnZw_hU)wU>0(=VYG*}80)pC0t{r+_8gBVvs0%i zW1l;>bBxr!%oI^sryj|5y?WAHg{W&FF%;9)<(-aptUuk`*N0g&*ehnwETfH9xmBUw zC%_+ra0xdOv2@lVGFV1CwI1dIrU6sc(+K#SJYnTx=DQr5A>Wk|Mzz&WswX*&EDUZc z(YMW!NG!UZezjyRXBjdqvSMNo<;&tldO5*b6x*J-N2d}eHnd&y9J7%k!{MtM!C>{U z+A*2lX>EDPsZ3%~KsYqFY^icKBQ2pR@R0-@cO&LjRPAxqY%9_>nXOv3E<2F&RcQ2N zvuE`MF_>T6$!-WmT+3d+dip6-Z;qcBnOWgf8jBzEDE(n8Wc@Ki0R_f>*>qa=+x>PI ze2 z=E&yRnIR)=y^Bw!DibL^S2CMXS2nYBAUqO%ab2HmQnU5BONuMPc#)Oc+a^QL&I;}V zuXXh1*tWAPi6miKXWo`Zv>5F$8+~sZ-27~LRHlp(5ueIoz^dQGJr#1-cgNnid+WCC zx5PwGZ@%q5m^N~jAj+8W(;ItR9?Od@E9z3WY{)HHvFYLUkG5LTmeL_bL)~EE9z**t zr;|?RFqN;qEs4}%av%RHMR@XK2mDt&vc4~QAOC_tEC_i9&OP}RtLU!%TtozcQUh`4N zamgIG-9BexCEGV17Tn#E+%gbAS$)}g!r~SQLJhxXlz0wOL=YBaPL)nZD_XAjev$orZ zcaE`!o&{8|*chQ+>zs)JOv!k;H+ifW)ljyAj&u9PE=$Q4UPZr-NZwl`;*n_$^_wj(ywo5VtAds-)TxhLbUC33^eNn~u`EgqLyx2ByIrNq8kKr}dHMP00+ZKXU)~n@@>FZ!OH-QyU!2+) z_`+0k;PX>WfumE6fzM4f1YVn}54<`R4IG)ORL7^3dS*+#Z`hUjB6gQLR74yf=(wxy!`>4$Ph`Na<{ks{;Y>FF&M3j$4xSYDuNE2KQKpJic;8SPW**|A*x zM5Nf#pZ4e1XTScL-1SZDbsqWv+V_OfWR4e#Y2! z$NpXL_a?-8KE1h?-VRHzPmfXk{(Swg+v?3}Yw7+EK(F;3;(>baxAY#-ZLQk>PWElK zbegr!eR=J(W4{SHK9#C)?PL61fPEAG&rPlLbN=P`i(SWEId$BzpYdD|y>ZmBRM+v& z{k`3?eX+KEb>9BkzFp)Q$GOluKMQ*UR%|gQC4MB2|2AT%Fp%Hg3agGE`RqC(nKh<- zq)E-oS(_NA&7(?H?6>2UbA&Sg+VM-?2t>a1a}_>t zojxzM?0w^H>@9p7d(TYMzLz4`{4c`3&b;YJU%*yc0Zzg>s()nUidhkdy*F&}ZzpeB~*(_3Ka4SMwI zp=0}|+t*Y=IiK26vCSRpcd%uvFE?jA0=-7ZKL6x-yVeAzFEjML2l113EhqGS@xJ&DoEB zDc!$l_RPrkr7f3NpxfHye+lQ8@hQr(JgQz<9?bZ4Z$|DWC4F>#!?R*`J%3L7**yc( z)aKU3fpbC<3bzhOX_>i&fb2}~wes9ud5jE^o3(p-hd17%e@t4Ifj&N!+5%5#B$+HXkM%T+;=i(gQiTM%l9=Yx6cby zc`#p0dE?2AX&KWOroK7to~aKYj+`a==ARocjD^3LmO19ixb@TLQcu^Yom;|c!)U#F z#S_=rI4pw=j|L^z<6MS(HS>(b^V)+!cU{$Spj=-xTl_NPqr$*TWA|Bn;Z11!f{N!q z=C!QsN+ZiYNZVbbZh2U>jK2FF%I`4cWmdV|k6dTg#OBd5%Rl5(E{&W~fU-$HU({x=J8+T1*8S~kkOg=jiD4vneP6YJcN9TYS_1yPk&bad*=U((%@(jn-9n+h2|DAuvjloK2DXZGIJ z`OLkmeC@9YFGY+v{&KwssIB%@^A7g_t2YASH|**i)Oqpr86rLF+#>Oo!KH~1lx59;yG)}_>E z#_ZT=q~8v()=d7&j87&etej8(Xx^mo%Ew{bKGD}XCF;h6ySMs{F}XkI+RzOfz8hit z(zg+RQNssw+L1E)vPJJ{3Y32da-m=P$i97b`5dK|xHfaV=7R6n`^;ypu}(x-M*g>^ zmo8!5yjSMx(drf9b^a66lB>TL;9m8c6?O1qU!HkF`+_s}W(E6KX7);Zt+t5+`-5nE zj_T6&mzc92&y`%e)4Fe6x;~aMCQ8A-{#>_W!iop)*pT87xrWRjB~)u z^O%&o`!+0F1@8V!V*DQwXUsKUM;m8N8}8hw@*P=j$B}ymQNCbgMqi>Prc6I`a{4~I zf7h=^;v?5zxod-4&$Fi8L?jt7YpK(evz9cvdzA5}oVLkpR4*;hHx@GgKLh+pY43pO z&c~QGs-sh=bF4i42xK-KaAS4>#vk#qB-=(Nb}A$%)%jgMWBvz-(*-J8H%D&^_}V+> z#+uhA*AMpIuhcr5{i6NgIQ+lvi+4=_f9Zpr6WqENbM81J{t)KQDU<)})yrcI*bfw# zIaG%8!B_nsV;Klh$fd1il*-Cxfbb3NXl z$XVA4a`uYBkCUgzyeaBm5%v4I53Inxun2kW9yK>o)X=5evHH>U3FPFKitT<`5B>(e z=e>@d@Z)Kn|MQ=7!|>-qbM}ua`utg49yaG6k?)RNz**%o&MZ8ylv?MNFwO;E^vix? zBifpmS!;M6ao17zJo4R$e$EBmHv_?l?IU-+3L}1`PczqXpL@ob;on^B*5%!2|7PZ1 z^T)^d9BB=3nRPZ$DpCk)q~IQMi%crN?iBXb+)fp`1f@79;9S5ygjg}`B+)$n=! znz`!FZ=a)hF1@4SpT*Xj=Bkl~xvCtvOifHF$n#t_5+?84CdQ5|zoX$5_ShGewL|VxzT7kLTY3-NJi5-eqhzPfNgp4}o{uAD9<@ZG zem#%Ex$`J8V;)6e=fynpXddR#zxaOfd34S*k4lY?=e^B5vV9acexsi!%(GhBlf4(P zSN9`3rm`OV26NRueXnV(8?roqorez^F&;s4f0gp}<~+-|2&zZ4&F2lz2b?{BIDYz( z<=q9r2<l}x{*a-QRTtnyMmM|q}%b9;KaJ0jisgIIRlmpxO;SUUbj_3GHO%30*R9dPj2$&ulw`Jq)qm ze<4@7d5UwX6n^?Yk*nrs{FC)HzhlO+oriYX{UXae<30n#M8X~*9I^e+xs5rn#IDQr zBYB1JVSzPo-TNSqLWlc_>FICkXXQNGZoppZXeJlBG3@5T1ivpe7R-}B_M0>3+vUgW z?K7AUK0U)1+5BtAR=asFWZ$>x^k<)Ubn54Nvgg^UZHnxl6rS!M?+s7tXQy%gA|n*6f< zmxtFY#x~D(x%*v-YxgWsq}CRQKlU2?yw4&0k!B_LkzE-nmmGSpE*qcP2%lU*+mtWV z&pe;g&p(TB-Y<}6#)z$^OzyGw{I{CCwNT$1*lUf^y2wV@U#y=CzA%Mr`Gn%L9*+4Q z)bY~Tq&d4zsF#-)XY$`OWA6TXW`6?Mo5{KUmbcm4NGLb${hPzW3P^ z^Fyb9e2Th$<3H^u=oFe9knN{?2FcAM-n`Q0&)&ZzE(qje`wT-I_sBaQ`7#eK_294v z&jV)um}BK#X*YL&(CKNnFjLRoY~S+mc)vQTCdO`5BRTcc4~sHmE92DYH|rB}^+pr( z$OThB`$?yM2LI!qc-J}QU-xsV17k7P7Wnd5Yv4;`n*v`P+Zg!5Saaa>V@-jhV~v5& zjWq;b8>jDI)a?T@84sc z92r6G9+y4Dp>f6Y_#(tXK&@K>nX$V}E)3~zecXz_NGAR$w~XsxIGcydolbwLa@S&a zFA?3J;YIcRBE8Rb`<#{UG-vYK{Z<{a??8SmwZ?*ZRrXZ+tm!^W*LBfu^nDC{htFRd zL*K{HckQPJ_4@L9bZR561GvuNDk(xv!ZnC%9M>6K1(>MyxZ=1bah<_cG7mErS0Ane zxQ^pGkE`GYr5bSc;5vlsB(7_?sxSfDaZTbni)-Ejtkbyqa82U6fGf-$8m_~*&f+S- zp{5DfK3u03N>DZ9+J|cr*BM;%-i7vXb>f=Dbp;o*#7TBw1>XoWV?dng*xIREw&$6zizTnvmsn$NKuZbiLqxQ2&sP206bDqs4Wd z{Lq(#l2oSuU_8@cM@Q?HmbSL{c5HZT^ZK?29^Ty1QBzxAzXm4pS4I-@<14d#-Jt^0DhHYr#5W8SK`VRG#{tLF_B3uUKX4`-sXNkLC^8I+V(O9-XD!3o17b zD0d-`+-Fp-eFe`db;2k1El^qeURP3|8wZv5W1ic3hW?|GiyB;if96J~e)-JB)ZyC3 z*9OR4^vJo?ZIiF@_n>a%6AYhvUP-%*ANIkn@ALY$N%IZa-+M*;jT>J#y9Sd(&+;3$u&Y_uDAl{~U7R+K!uVxDmDw)$R z9>#m8g?|{fLG6 z`M8C@fcH}tX4ypxe+BPXEKJ!FUlxBI?~aAf;5};LzsGx{h0o)CqlLeN_f`vE!h4&A ze}wm~7QTx29t-~*?}HXDz~>PQ7vb}$g|P`!2Q7@lsv5U&89q;1cqu*~u`uKQgoSJH z`HY3@@%e&<@4@G*7H-1l0)G~70G?;zO~7Rq-U1x4a653+!XE%`v~b+Vy>S*l3EXC3 z`f96%cL4WTcsFp`!q3p37TyQE&%*nG4_TPL9k=lB(w`QluTNR{W#H2mK1}~v_%+~* z7CuH_2D11|!1WeB>670Xbn#!%UJIXQe=Ph>;DZ)E2Yk%J-v&Ns;foxvf-L?4$HT%` zfHztA-+}uq%#=KC;UMr43o{muTX+%hDGQeZpSAF9z!xmcSh-~36~F~^vY4?Gw(x4; zG7B@7A{Jf;Txns(R+WV}12>xoVM_X zfk!R82YAB5ze)dE_yGNB;ZMM>*{#)R23!ei%Y~g;BgCoi1t``58DrAvHc3<>|}}ODEk$_PV!?WcX02%2o-(O+JbR6 z^cf3tZ}pM~|B(kD_24gi@LziHH$3>CJow)|*k^S~?^8W^u?OGk!Am{3+Jo=&;0HbU zVGn-42XFV_-5z|4}Qag|H^~E>A^qn;DB|+BEHFk@ABX#4}R2xJ3M&EgMZb7pY`BRc<>7z z{F(=U#e@IOgRgjSk(DBeBObikgCF$ZmudGKQ%+~>g`_TVuO{yh(#^58%9;IDb`w> zLmu4k!J{7R{#dYkH(YLzTX(y2?u=jmmUm>+`Y7LO`KIAYzSZ+>72j6#?QXs`@NJD2 z78R{itCecCR;^a6)q1sBu~uu=YSmh;Tc>sFq&=-$r*-SJZk^Vx)4Fw9w@&NUY2B4t zccs={DaLBum0EYD)?KM}S8CmrT6d+^t=GEsTDM;7)=N*dZoSs6*Shsuw_fYkYu!~^ zca_#%rFBOTI;SBA8W1Ex`x$SceU2N zTkGDfb??@?cWd3dweHyV3-_)Pm5}7Yq`H=i+Xt7gB|Ie>AGaslN9b_ zw$MKY-jUd;KlAtE__^ir){gDK@~e7XyU159Tefsa2ZnYHrjs2orFUR^O2q~TJM@qH z#=X{?9|=Zjx+kUewPhXpN1jt^^ZJK3Z_vG#Ppn+Y59n$2?(|MmLR+LcU5oy?PpQS0 zAE0MlMoW8J2Y=~XnDk1jL#IqL9GZ5ghx(NM&0{qv)seexD3MUDEe~}JCD2=rrta64 zmPeHPL0e@0Z$ySCgQcC<`kt2eNaAzMnI*`X0_L(`{ogCbS z{51sMq!Y+lnSxYoN5U@9-#g%(QmFxxf3-=EwXN4yrLrk3XZmIR$p27dxmJD~l-%s} zM26wdgc=4`8~G#|cYRxX2mccS*NDEvfLiz12DaGOJ-93TIhK~*nzW*OVLp4Ra@U4@ z{B3=)?Wvqtkso^R$mBzJ;bH}GlR)zs%seqLY^G5({onh)l1^j;04(2Dhx;+-$1SYmKa4nf$>I z$OSpB&W18On??E)GNh*36g1YdzAaNQm>e{p6Y1f>4)c$YGFIqO)<$?du0t)ebb1Q9 zhlhp|1NjF&qu8PUF~f{;Hiah0<>h}~o=5x5qwhJNmS^X|Ps{gFia#UIn?t`Z&!I!} zm443+ z`AxLYVx^x61VNhv(x29V^rzj(wUNIB_K^>|)6{dwl=FFA=ti97S$?BDuVeXHQ+|f! zrLc?TpapPf@g&+O{R5ma3q+33?Ls#x{;jbJg0_+WS*6mXf2heEC)Sc^hU|Q z1^yua7I{8L{z>x7&_4N~*9`wE`M2UMJO_Nx`Z=b3(9mu2yexQ|Jm(@mPX6ukoGS?W zyx|`rAHgz7KInPF=RMd^ImVlO&`8ku8#J^O?SKYB+YP^s{5#MN`Je|3pZ7*X5wu4> z=n?V{%kw0bpJw?ow99hPE9CzX&h&F7J|lC*Z>7W)N>zdeE97|*{l00gj6CBFvqjQkq;-lXj|uPw9^_K*+SZuo8F*UP=MAn1tU?6F$En7W!qmXB7mE8h#b| zO>%E42-HZ^53KM9~uWiOSo=eo|b{?`A@tF^PlCQP4h*sk^F~{_sIv1 zlm9C0GWrLM{vP7Z$aj zp>MK1(DTNQlWgZ?i%A(%)ZZ{XJn*FYy+%0~!R~NBk)KMGShBa>w8w(m#QJ zSl)*CVmat((#Oy*mj5aI$#UQehJVHAM;3zq7xa(xIQ+Fx?AW?c>}V%`9QJ?)L3b~d ze(fQDzI?};>-aeNuOr@#{t=@;N&E!bryS@>BX@@MONf6Xf7#R<#vY{j%ZMk?&f#-1wlD~MmvAZR^k@z;=_$o~N1oqW(u%v_#y_~N!*RRPYimH`iwJD z#Lscl-ial~pQMPN3*=)z>|n3R_-Q3QgZfGT7UM+vO~fPVw-Aq{XAvi)e+ND6A&dVW z`L;Mgdo+AGo>@ekLS)PDBEC(&bo|EHT02 zmXZJ8F|MTl1LJDsS`ELG^dI3r((~{G=|3U9NWYDK7`-#39ADCZM!ReW2ahXk2Xr3x zw8a+?SET=fJbkmY(+C>sK^%bwLECPYe($_l`aMGW9gG9%chPU7H)-^a8NCxXOS{L( z?}b0e2R%zZ4k;H%|0n!x^si9vNz6yefkv>mF8)`>)+`9w)s5zZktU)Z2l4Nj=aj<)SD(u18DF|A6yU01W zi(J+1B3DWNuVG%354wr`tMH2{-^y|vuH!5RJ!1H2Q{Qn@-zmc%yj|KoZQ8wHI@0c>kvn4KjvKjS zj^e_8f^nog=oRvRj`72pwRjriw^ZaxKtsQdxB?A= z_85MI{Ab`N@<9(QHS^1qA0&PjcCZ}u6#2@hj*-6y^Nf7ZYvf~|%)^ zF!=>Ob=2T8oWYCd@Gr9=_ffBigU>G$f1e}% z4a7ZY5HwsN{#Kx&eefS>5VW~M{MA+={@z$2{%)@je{ZS~e{Zc2f45eMzdI|$--AYf zPlfpVP=)yUFzGy>I$a_5oTA=;f}PX@SncME*jb z>LkT{jFVy=-%Yv*<4gK3pPHl|_Sc802YQtJ60}dc*r(n!_=0KgqG|6k@oypjP!F{5 zPNn0pj1+MgCB=Sl6Di_lkQDpANm9heF+fdZSN0Z}{WHh?`@i*q>Z5{7Wmu-iyThVJ~P9H2iMi7lMYyFyBCfpi%M>R}T3H z&_4N~oko5u`5(u+LO$qD@=JYcloWAtlJq8@I!Ai5PhBIu#iycGpk+SQPI{|P4OU5g zY0%IoFfO1$&_l$(jd?)~dXjRtp+3^v;U`kZrwXb;%Mt&ep@ZlLXb?0)yws9z*vTI%?*T3JH!7zidk0l1vP-KZLr5ZvAQ7PK&*|LO+QcY3~hEY^RqEePADM}03 zvuo9k_FalfCG)>uqhHhVzJB#S&-*^_eV*gYna@4ve(pK<-1&YVo2=}u5d;C>1_JQl zy9Gci82}*?a55aRGyxF^gC9pL3kTX*c+k!wf(}+6=wgvTErmuWA~c&x2+he6p}B@4 zTyB?otgtYMl@I~3)dUdRga<=dRlOms1r)Nu5Z2Uyg4X~P(riGf62ej%HLw_<&BOo) zC}N2ipqq#V+UZ!}07Wbl3v@GM2{4uvj8%&Vu`R-5#zTM}69LXpBoh%}0AuQ>sz!{1p8vp|+{xH`8FxP=F*Fh|rM;e@82IqIe z`5%#={n4D0fcG!8$mUkb{Y5QOU@f4CrNUaI{%P)EuA#3p6iMiBkou>&!2m<(>jFg< z`WvT?RV&~{1RzipfN(JY)`TkdTIIPX@M%TcK_SE)<)9%3?!sx>ygKD%J*N#hReBmFuZT$2sgWWzPta7{K`lMUBoqrB;$ zLjCXiAJ$9))~p)VtZD52`rq$=$V&#stcNk%#_oy#-~CSj0N2N&;NG(6xOXfMTtAC} z8(`(&-m|K3A6PxOk1UJ`0bnHY08=9jFwG)>3sm*Ezyb={fD3+;51e)iz&St>O9eRH zR18rBV5DJ;IvAr>_+R+zL0@MmlF;8El?xDkE>MHw3ME?q*ZGEUt_u`dINvxGBL;cO z!ZjPq@v{a*u5IG2l|R)H!K5O_%WnGXXX zRDMnwQS_zKobWKnmI(!!r}Ew z0|kh{k~F}Fo>qB4qoWT-o-7(218YZyB9EZo(QGtf4Q*jB1tQ(BmvFGh_~W5_Lt{dA zR435IiH3YVxG?qzUs1?cl#g#Y=H@LUl4hYTO{^WCt-V9_C~YF$;w1>Wb8OLd-P?V%j{+ z)f3jlAJzh%S^s!gmjnb@iUC^Ga|C0L>SqYBAo6TSBG0xK<=J+kBQ_55M(vR^2G3gO z$eBmaGln`=4Tibge((ol92Av*EN;~hm&^TT(fM&4`0e=D{&?`)@uNTZ!JqQy_?V-? z+dFSCCMK?T?b?hF>(?i7-@Oy<3<|2~3JopUQD48nLr>2MgCN*;Kfi*7T3Q>P4iC$h z-MHc9P*n8f)tWVX+0D&XDzUNq;+vZ2pEqpS{^s*%nGL^kE9=7iLx(;-3J>3%Syi=U_36_!_rHEsnx2|^%$`OITxn#qc;n2O z=I=j##B6D8o$GICxYRi>Z{YId$A+KYzQsRSwJNpf=FJE%ef{|pWn^aJaX8|xix=lv ztE>C&tF2wGM<#0;@7|p&A|N2HyLWGyn2?Y#RZ`MOk-^C9e(+#=+sl_UM-7dDO(#yY zy;!|^zof9R;cBMlW4bc_@gC*2JRIZ?WJaqp6xoG*vw&HJ!s+BApLot>T= zPM&O^H(|p1dk-JZSgxzPN-8dH&*Ay=-=DdB*&oei_3PK#bPC1e;n0vubV*6$sU=HZ zUkePZOloPd_N%PC6>e%eC(X{TE8X7y+HqIcXIncu?9N@f6jcA_&BVEdg^yo<`69b* z)~x!y4h}a~7#O%nY~7lcU}e?u{L?2A4ucUK-n40Rj+0Ygl$n|3`2G9O&dJYzc);1Y zf7!u&WD+p*t~uJ9_M}jeD~T@r>cu@-(GE@s_IQ4k@OyO zxe8zV`^7F?xe~m&t<9cHBudkyq^8uqdZk){}^cT~!_)Ir5t~r)STdd->qqyPGW4)K)B*IC0~& zl$0U@levXuZQXpaw|7ENdHGdMX=$?~U0u=VmoI-HOCXFpdgsoXJ3T$qd?rs`7&&#S zqqK;K@=jaZJ48W25gRIXW%<&jkM`HpEUUPBHDnft^QO+r>#*sL9r^mZb{)F<=#lZe z=;*}jPoGXsY;2qrVr=YoJ2?0>l9a?MxqjUz%hBUi;D ze6z1_@xZ!u$+M3gdrrdR$)RV@Uhj*FV%m)#AG%aWC)`9yiMr_U;kOZ`r5E=!G&r|B zd#0Xy?_SKa$jGc2Dk`eG=ghh1Sy6FUG%<0TctXO~p0Kc#m>DxHR+W|2wXRrEm||md zQxJ<4`1s)iq9i6JS>x$>FmTEg_hX9|eF`{p=91jDZ96imt6is#8>gX>oqguk{re^_ z2M49J($i0>Nk|x62?#h>aO+l>P;zp-L0a08Ntv0a%#@YYWVUbL+4TH5WqW(OZJ~<` z*GW?|DzCeH9hSvnyXEE%3dhGY6huYkd@o$MedEa!{WuGYhD-kb<+0}GwG%QjjxU}x zX|1xjxWxM7$6N9jEEoztcdk=gR(7g)%-Z$ufq ztV7{dr@yAsjAnjpHOzbbcGXRN8QewnTJmmzy+V?V2QM{FtQOv)t)LjPIA`9p&XW@! z>c-8#3|>=)N|pq+RGQk^yLMc9Q}|_;gTYp-PnbiQ9jr zjVSfXeUGJF-I0yceU`~bcx;|~S8ZYn)4I1@x@$S%PS512BDR9mr8QSMUORR@ihkN? z9GrCBv0&xGffv5(j^WQnjn`2+T-xyLUZl#Lio}Gl8D%SMuph)crz|?Nt$JMc{lRpJ zfLqCFnabOrx4UR|vvT7_FFdjEH_wS@b0yK1GaN=jfFT-v~zTQ92X`6h$aT zzq>d`hx5P@r;X;m^A+R{)lSt|zI$3xP>aewtGArbu0?YmVpA!4pIwfw3I4!rU9;mo z#(wV;VPvf--xwYsY@o9+7~ldSg~47&QM z0n2uODzh_d*M;D9FL%vzyM3*4%OuxG)vLBW0TYs&8ZB4X#0L%}M@MD2&Ir;tv+7>u z{kf<5m`CNBD4Z1=+NYL!ciWL4E9l4WaW?Sqn!m}a#Aj{Kxu9cl!<%!IKH;^}!fgCq z*;ZfW)4En}pSOPSbWy}r_3$~E2M<-)i&nT4O+4{ZQ%JY02D`0({obp__&hz$?eEkt z*rx^!p1(7QgzfCst0w+Gq;1uCy!HuO@dJ3O3Vs55`xfqs`9 zfrR^$4}EyKny}@SDc$2u;qq1c1uH^G&NEaKKJC6IIQ`xXfnyF&Dy(-bNGe-Zw@d&h zcrDb!Nro$*{)O6E@qAA_eO9aAt?aeOpIKB0#V0bK$}cgAZtT628zVA1#zOr0V4QLj zS`T5ywk?yjUfU>3gmG3b4tM-2#{D9`)nwuHW7n09CYfr8h~M(@UwT+IbIF3sR3n|K zL=nG|)J0FlOM7=;QOw+t&8VuM>v@-QVDZ{H0ZNhzvJX<)4vOE@)izR(@;oY9agHjC$a>cazC0{lgCeE6$ zrbWHs?y1*9{^gI}df(8$+ic;zl_a%CjULw^LD_0Y-EigH^uc4FCQDqLkQ+QMTX)Xg z6MFrk+vdGmTmA5o)=Alw1z~40B+_g?&wlQsmOsR*%juh`uyBL+O*Mm*H`{F;FWxe_ zT+M1eFr0pkV08HX=8n8|U7EK~C(~vgy>Li->b^%#Q9DHg-CHvkY_#_JkR(-;a;Z~l{AA-;v&CmU7Ici`X1JbQBXY341vP^0!2`-QJfI3Clff9OQ<#F^^)4S8vL zQx2@CigY}0JQUk}xF_Y(af2f_W!~b_?aW`@{Y~=Qb#v{8Gv+zP&)B_q1ozl>17LU$2{8VwQEK+s)-weudvwG_;|udY zw!LuwTDYWpdZ=`i<(+NK#r>Pl_}9%ap&Dw}9HhI;j;jqn|6n{()66!JE4s_vG#^=o zC!XxOS^6l;XJK{9`j$A)>yuA~*{oa|d8vGn#XRA_>v~3cCKu=jvp4tO_!9HbG&WP0 zyWKE(mStVn^Ognc(yxzl&h;xz-V{le!hEjZ-4}b_b+q@DK8e`PiBx-fbjsETpNyX=t?mw){Z?VsxC!;~p{KpX z3dxmL8>FEV^WH?XzfBO{f zyHY38H!2e7_;^No0v)f22=q(8fRGiTJT%NF9DWELf&cwLpKsB7TX58-L+K%Y$0?&4 zy}SAU+u@_cyVFGg&;Q$FW4_z0vrvvcA z|7uL&yq=%tp~DpXxQ|D0A0~je4?*yK9~OWY@7ua`F(@M6{ph1w0({>CIv9|Q9iNTx z>2I;n!BK#FgkKWiXEfdDy6B!!Zv64i!^9uvv-$VuzL~YzZGt96kF9b;a zFar-1Pz6cRM{#Xv(gnWb20R6%M{)jv{pp1a3j_fFz`{&B0AB1;s3oDl8y}A5)CGwS*T#a#gqYUBJ)1F z?SgG!86G4SffoJ)H_2`l(T#_|$Mv-z=k_&xI&-k=`}lkYoKp-R_)x^`Y5c-PlXVw3 z=yZ0P8wXEb-f6Z~OVPemb~?<1kbFMT{dA`g$j*qsnzr z?+fd;g|4c5htb5>2ztG(Qul>yMa;8GyNYS=7+=Z8hOY8e?-;SI2bah- zpzCt4d2e#Pm=ec=%U(#xaR)zt$((J>vTHkGE-NyhH@ItX2NHI1W0E&6Uo_vr3e8^? zdG6V5!TH=f2H!XM8-pWAGJZ@dg88g^{j?VkvJ{wjQADcH{Q)`>Hq)$ diff --git a/release/src/router/openssl/crypto/aes/aes_cfb.o b/release/src/router/openssl/crypto/aes/aes_cfb.o deleted file mode 100644 index 630f59a2da3a4d80a95d69448f61f0ed4bfd2a15..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 1928 zcwWs^&1+LZ5dXcrwE1Xk)99gK#q=PFAWIq}sHj9@ZH1!252#*ZK3>zHNkj4kdr}H| z&ABKDJ@ppwRK()H;GfWc!CP-}HgA`=yD^Oi4-PCdznz)i?Aw{Q?^f3DTb2bW7Q*lm zPzwN|IEuL;N+W?es1gLeV!XUR84LyzWN2NWb@8A07jFTdQ%lEt_RqmlDvclgB)<3a z*zW;*y*T#!_sBj+dX4k~X<)Y(IZ4`!WK(R9a(ZDL+Zi0C{(HXFLg8jIz54Lks638dtO4 zHcw)ASDuuro0aP&r&aCjwB1qH@+q#Yl2_esHl3D>znAmCaQ3DJ&Kv%?&`ToDo)AY( zplO~QcLl?m?SK-upu`0Qz5!_e#s;mIMjV%Gv?9uWJmlr`dQ&2fpX&~EzC-9DeMRW^ zawzts$hzy$>!zu05?HG zml1IX1QJS~CDuIr-g5ayn+Ham)Uvl+a@2&p<>kw|{0#hTDxXUq^hv>LuT)X@gZMRo zBDRrbYbW7Yt;li6z+nSN4IDFY5USY2iBs_`W`xaqlpy{^#n12Ll7jiY+&1t7VSD*e zyfFM7%^$-D!;iAl<^Jyjhth&F^exmS%}`WNwUqeuDq3@Ba;=rtBvG diff --git a/release/src/router/openssl/crypto/aes/aes_ctr.o b/release/src/router/openssl/crypto/aes/aes_ctr.o deleted file mode 100644 index c249640cff343aefb4d5ea5992a04eb45c619f62..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 1232 zcwUWE&ubGw6#llmZ8wQZT09htx;9V^*3WDN4 zu;+rOp1egoTfBPo>?!|(x8AmIc4y4&YS9lK-}`3XoA>f&C+{|!4>V1Kga#8c1vE)4 zmeE>IR2An?f(irpg46N-IF4f}YGfD5E+?vT8~A9iP7m}S@sVA{w~2+XlMNh3z(G{T z;p9H~=ZPN@uMh(tqQbGISIDQ>h;kwmQ@w^G8(WRWEvvfq==l|Eoz)rj%Yyx3=yZrf zKjmHNh3+^6>p7tV)(HYI-|Y`ZJA2%D&AgruHte~bH+|-G25a?nnJ2M(n@`)_(7#r{ z(RN2&f8V2Xx_iT+I|@%3!JoJQBr{$RdLy@A7Q8Cr^nb+JWafXwT}4vUn^WRelsH4^ zn?U9pctK|6;yA986_oW)M%u?2vUw55^<8Ao8zT$3*FttKW3eV7>o$?C``JkQ<8@8U z>JE^eR}*pH$(EHoP1q70-%08c&t!Vzc@8mQbH{g$j vb@7*H)9!oi-XQSMc=EFK>~VgZXGmXQu9)(CDV_BKafP@<7tjBn3Um=CEzWhq diff --git a/release/src/router/openssl/crypto/aes/aes_ecb.o b/release/src/router/openssl/crypto/aes/aes_ecb.o deleted file mode 100644 index d5297fe242c3e5134ff514c85693ec0fd74fb0df..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 1172 zcwUuLO-sW-5PfN4jjc)*4}yvj1Qlc{ejF4LMYNY91rfZJq)BU`AEAlRp1gSXEchGz zP2xZB7wAkjv6~2fJQ!x)&fA^c+1>l|>V>9hNT9*Qm;n}%$r5UN5!=Kpics+Y%;O(e zAzO{2)}GiAvEm-D~za=m_5(Ky+QtxoZjAY47gHVV)#T&#&rU!>N0{#$e>r zB8`5x>-EAPj`0mkK-9N<%uh1;Qta1ao&Jk%gUtMcZW~ceKd0yx6`c|D10Z#;H)K{u z$Ji&EQpP)m+{ZN8M66?ejP!a#q>xwR^TSdBVXvqC>T@&NFP001ivF;h^ z2dKq1hjH&1FJ%3UF7Zk47&V&oN`8i{09luN&3jYVD^ub~;c72bsN)9SKh&I_nWd+8 z!d$J$d@{q$3^$-ck8Vumg|FYscQ8-$mz4Y*(s#q>E@O=7&DmbSpG7o~{WkTMUw7Mq gFB9<~$F3)1My?>&nkdTN=E*ORFHXyMTBOE*0`4DGs{jB1 diff --git a/release/src/router/openssl/crypto/aes/aes_ige.o b/release/src/router/openssl/crypto/aes/aes_ige.o deleted file mode 100644 index c69aa65c2b9fae281eac5e3f834a0d588498ef9c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 5068 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 YXM;}v{}yk%8}B_g-Uc_$dlgRqAHd!Qi~s-t diff --git a/release/src/router/openssl/crypto/aes/aes_misc.o b/release/src/router/openssl/crypto/aes/aes_misc.o deleted file mode 100644 index efe1ae06431057ddfe98306ba412c101c99b73d9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 1936 zcwVhk&ubGw6#h1wHVH8#X>$-%+(NM_$dJScT12X$79{?Fpa>o|n`9eTn`GVHmgXdQ z@LEtW1^)%_UcHHbMg9eE-gI7O*UW5JRPcjg=DqLDH*e?7zE?Z#JDR2;f`%*>7Enn6 znGzm0=T;RJlp!Mxyv0A@0v{Lu18>=W)wR69vGz9wbN&YKVPkD}q64pwvzYPu_PXjn z;eJCu9l!A3+UXdiYfScx2d+KtblOIp)mXi6)N95)YicxV^#%{zZMC+H>hAqVn?{p0 z7{4FpPe*~(<8$DN`B}6I?4tl|UHb*EFFO zK??_UqUfyCd?MMIn4OK;@=cSSkJ*KoUBns16W2>ahCYAsvR(Ss@kLE@^Bx?5xJwG3$Ckv? zy*^g>0-neCH{qK8|1wpCH+OU7_53 rnUhfgc5Ph!Q)=3HqRS%VD!96)hXcf{Tm8zhk^aG>{A}A7^B0F)@NF=drBekbi z`~jaUaX>wBi_|j}`~<`=$Y1EKH#6(C$=XoClSVUd_s!0D)_c6QyR9e+QYg?dX22$q z=`tECF{|JvN|2!e=eQmxS5XwDq)N6(b~k1V>%b>-X>_Xoh%U?uz6}k09d6((1Wv;; z&W4*5&yfc{hJ`Cbou`;IA!$P$BejYP6Fc?#no-$#@#dbf!fK5AWd2bvux#>yC;UMg z1$M&GLx)**cey5(c@lfN^}0FOw;$A2n@+#w z9l3N)YtZXC{otBU{}Z=?c(zjs-^lHk6Tg(`)PLwqGW|bv_Yv20CnVjxq|*}q2*}+1 zTQVc3<9J9`kk&tIqK_G}$wbHb6J*ajL>B2@1KGK7-7`s-*4;(6?iWq;$Ls1C*X=@_ zS50)^$!4WIC9zu=&yM3KnU~Y0KAjy$KuII=H^_<*b@{A$Z}NG2wDDZx@+@S?>l!X2 zNKkWGYNiv;<%*n7=eVBZ8f2*PjmfQBM*dxmmE diff --git a/release/src/router/openssl/crypto/aes/aes_wrap.o b/release/src/router/openssl/crypto/aes/aes_wrap.o deleted file mode 100644 index ad2339778e8b77ed0caebe22c2513d8f98bbb60d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 2536 zcwVJd-A^1<6#vafnO$n@ED|J<>W*xN)i&dbXwWpxx`@jwV=`()w+q5nWNK43yJo;x#J?u<2U^dvXuo^#Ll z?_}nq!R+gTAfQPCA~=wMeHl9cGL(baxyvAz^n(!JQ>wcSXjX72u+^-QR{ztl3(; zfrhG}3w1l)uaMtY2`!ZtqkD0wdua%o`in^UtUc#ULc0R;xz(dB?ugnd>tSsfLbsu- zPm5wE1~E(L-54mQ#BylKhLpo)D}v8;$9Z0F#b`VE)StxH%g0b(?jnD^UlH`qZb4Tw z0_p3duamwmLA;3&nq}%r# zRTpqgZ-JP&?W}dMX-gRGV08f>(-}#yI<@4e+iL_Zi3rjvi|f`NZ@79bnRff96;U;n zGPyi0vbhpo7U5+PUKZhH5ndMIWf5K$;bjqC7U4zx@6a4>_WVD*uUp#UDimz@YIhf* zecHhAJ*>BltdBLTJ%ZcRo7b0?YKR0zhu0VDJC_L0mSL$aj*0?eKE^kC*ly_5E8C0v zVZm^q+##Dm80{C56KiGx%I`qz;p{u(fJ+})H z!Z<=0M>k|dw<1vWxb&My4?N9kZ*>32R3LS%Kz}A1k z@3K!A8W?ybo*Wu}=b3n)(QD9m!>BHlYK1Z4wTj2jHE%U@z6PUMs1;z0RjV*6=H%4O z#4Ni^8|7jJMyY6y%}pAGv8fk&JvDPOUL73C&&_;TDU|c?n+u@_PCd(l8%1-XFgIPx zPkjJme700FXKHwOdIE62i7mdI4!x^B*L*wa0d})_GIXl^xUj_o- z?Dr6iDf|3II#Eu4F6!lal+GdFj@5Mv!FVeOQu8f`;9Qv9UCyzYH;Z82`KVVP%NxN# z-YEp*Em7l*`@}O5jQ0ZxDR}W(aS-o3ym-y|ot8a)lbZ1?-!A3LIeKX0>;(VBaDW-3 zF*!IJf#c1bjMf#3DR{F!0xvJSvmW?(e^PN3PUbP-iPy{c-2q2Z$V&=T!el-pla-Jh z!6W{i%}Tf@HQ!r9a`;^aPm;S?ynFaX>_35L|2DIyKf&K6Q=LHo diff --git a/release/src/router/openssl/crypto/asn1/a_bitstr.o b/release/src/router/openssl/crypto/asn1/a_bitstr.o deleted file mode 100644 index 77acfb50f0a48224df689462115fbf4391e539d7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 4048 zcwUuPU2GIp6#iyrcRO{doh=m>1lfV1t%YosiU|@TOBVzp!CElt)3&=^pxQsSON1vj zRFK4GcSTJ~;=@`r>4WKFK`~KcBPPE1V2mc3_`rikAAG==C`Oa>f|Rq^7{St!;wFPqNXQ`knwInk5bVP;3p)oRRmDKV5jd(4lM0*Ly}-o4~ax znRr@P0@jyqn6e=u-)2NJ=+x#AApS@;t72_wgU#hu%xlb>3ZtZwZQ!*saGrj@7WVI73s2E!*mV!)nK`vNXje=lTE!y#0q(})`Wm@1wms6?H77m0M=W5 zEB3Xeb%|~{i1{e*(POgkr*~L-DiX6mmx#AL+DhDJWX`n_9l-kN1=->}RRs*vTUQF9 zFKU_t2J7ooFQ(aDxoIYaCq5%_UM9}V#Ce%GFB9iw;=D|pmpNxiTy1yf=^M(^M#@tM z<;b8M#VALsC`VDskw!V^I)1;!!&!_{xy@!th(7Hn`VmYEt6QyJdzEWo)xOI0L?@YVuP7>z)1#Mg;93UJbEQ|Oe2K#G4u|>jxHlR|nY9KPraZAwJ^cZ9( z*Ltx<4$(P@gR*HV=SF|`S?U9sxFe1)6UUc`swH%T~5c?=OvO zT-5MX5_$)56idS5D@M;pDYp|9i>Fh9C*G%5o~89uRTY6!P@E$&%Qko)du1I(^ybo8 z8P%2m#Ry!ST_)=O+gZH`Oxb>&e!EKj=JXoXKnvRl(OxV5>5_sT(f2_rFQ z_wL`FKAbD?+x9ln?2%mdWimL*Za9Wb6qK;PsQS2L?3Tu0S2pd_a!IpYgLjZFVjc19 z==^31mO9Od4YcO zK0O|f)34FB{=;wH7WEst|#HO7j*-dY#+S5uwI`_&++?`PwzMZH~Ws>8C$Q* z#=lFVk34!TKM$|Hn*?TDF*^3%hWET`Gq4BNdBa#Z@2BwEt5RZy7O{5)UVA;w7XNIo z2@CdqgxB5@B6offd*8!r?+DrJfn~253-hcv=tMVODmdiP2hNj< zM{QgXxDnfJ%stRT@jdU_AAz?gIS(T~JmJG{`0$kdJS6Nl;RB!ilKng{}Rgk7K*sZl~VC8bbZVl`%($q?gCo;>bczwlRi9_9vB=SL#p@1o`cV%hx>cy6)o33;iNcbPtoWEvF%}alK&`9_@d;ND_Urv4~KjCP-9hKKt*01wBH@s@Wk7L*I_YJIlt-PQ9 UpzM(>KU{C&N9yfyKZRq!|CP>D8~^|S diff --git a/release/src/router/openssl/crypto/asn1/a_bool.o b/release/src/router/openssl/crypto/asn1/a_bool.o deleted file mode 100644 index bc793c273db9e67e7fb17538c23e2b8b98129da4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 1812 zcwUuNOG_J36#nusQR8C_E(BXTBLhi6hBQsVmQtdrbt5WDp}Qe5F^x4QBqOxlG;}4j zI4&!=2x{%lSl5+y(M5lNKfu3G=)y%IJts3UcSb~d;BxPG&v)K)nRnB(&paLv+TuYs zItV!S0znB2i57}NLO(?Li{J^a6<_V5*=)8^lGbfncP{n8+FwCG;n3fD4D3df^Bv!h z=4oUC-x~>hZNzZg7{Rv&u=f$zF(n)}l+8M1>@}2H4JtlIWE@1IIE?gM$i8uWiPSI^ z8$xoJ?93?kO%J^405ZcH2&gLd%n(w;t8^wGq)Vy5(`_m{EMuSI_>cI$7gRdNj#h}r zar@y{CDa>R=u$b3LdmoLX49`yt|sMbQm&>V)u^NAz9dc~VokrOrUca#!%1VD>WW_0 zwPPyVH7K<@6q)B?`S(ycw=Y@}u51$}a9?w&q1KR-J?IVY$J z@vKX=Tq+iG>jwTqMuFCM9I$cHrI+kov3b55cr-kkET2m(An6p1|qv6P(i4Ex_3q=A8+=cHCJw2Hm|fneA6mxt5eAHiQQI{x0n@)xst5xlj(Ah z&LLQFxu2Yy=x>4Y6F)eyx1xyme*A7i5TDD+=g5Sy7?E+%g}Yt2*MkU<2Ep#T&A|C-0z@OIM#Y+d!XHV~BoR QySxuvqnE6=5u&F210(_5_W%F@ diff --git a/release/src/router/openssl/crypto/asn1/a_bytes.o b/release/src/router/openssl/crypto/asn1/a_bytes.o deleted file mode 100644 index 45ab1fdebce58fbb8d4b5090d3ae3da3d5b7e937..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 4264 zcwUWHU1%KF75;X1C9Nu}S}U&OBx*WiZM)kbmWiSkwU~BoS+WAMt0+owX<()OvAnG% zZKVydOTmkqfS_BAQYb_aiclmcrJ%KCC-@I>b{gd=)us3wva*}@(@tJbMK7y z?${>1aJh5locrDHoO{lh-K(P$W06P%!H6J^rUX2Q104xW4k;;(Cy;SuHLE7j6+rl2%^CxCZS&fa>ovVS*K$L|{} z_^|N?K4{c%yYVyJYFx%{ql%l23T`xx;iHE0b`8$P2AtYG#868(YkS0btKI?os6K7o z>-^M?%9FE_#XpcuaGwWUTNRy+t(1+;MuK=rY^Tz=o)Y^3yq9w9ENVFA{u$XLvL}sA zFN&#zjce}5K;nHQl0PS267Ldc+uNXi0$Yvqc(*Z0p3}rFk~a@On#Fd*;vUB(5BCOM z#r1}Zjm8k?3C>|orv_xPn{x4CY6u^sCWsf|`Gudm*pKD_Wg?^x!T5i2HYL#Q`rm1H#`1ii< zjWZtIh$Rz@c^Pd<#dDa5+$Y$9T`TsM_k9CX-<8G`KfcLl$)hx8{K7iE`W$`JaRRH+ zT|J^`tScX4A%6PIH@&2a-#TOUMiSUo-2RI8WYo{Wex7rZdFRx!(D}Q~J=ZlSo0s9o z+DS&Nq#!y(&=-Q^P{M#`-@3V(wD#|*_%{xl=vRsiD7UjikV(p<-kvNWId{K z?Ap!+@`zC<_gbAX*8Zho$-5^}>oxnyC;MOhn#9<`_JH{8 z4BM9U7}=8`H?g(-J7$fn>T|}pcVyK*xVsTZd_e zXZ`#!W0p)zs=QaePf)f6)8?e#6GZov^!^pmy!lZ5Tr}#(QT5ZFG;2rtyyC#`L$iL4KU6=uc4CjLU0pMW zSu@s-d?zgOkMWuOjhe~ts2q27yreFqCVp+y#34ZCQ~QDcr&z0#s)w|hwaQu#;_D>f z=g2MQ$S!l_CUeBdjWZ)7-?r0d&b{(=dnhxQ;ctM<@|F4OY@Ta%Nv{`!r)ueP6`A5} zbrzZY@-i|@rMdFLg++O|l&KV#keM%*@~_QhX7lA22KjnXj0Nd=LMto5$P@?5xsxxS zdtQIx4Mlmd_-Mt!j_Q?4DbN-c=jTfcRs8?s89@E^Y4_!9NFV(2aeTYz=h(5h*uOvD zZUE}cie=axGwfo%{4Jp6x7m5lnUI}~Z*X=R@7*4~|1eZ8C_CZx9kk-zLF))~6aMp{ zVRy)|i~0H-TI2U8PB$QhCcht|mESn|-Gk=Wi6+0xXvO<46^9JM0bUiYcyam4L*sR! ziT4&-@#LW|2s)a0zeFqEF!3tTc-?5?{SF$>_3irjve(!b@u%zyazI9gcDF-z!D`UK z-$_1UY0NJ|pDQ^d+)TWGk<@7;F6Nz@!+amZfA(RFXlPfog^9@Ki6VD|$$?E((D4}OY?=w6^u;%U~>968#pu*juJT$n zS6W(HTnbF*XD?k^EFknLP>-5jZn^x^Qd58G#c3Z@8wsHA#-qL(TArO7%$E%V14M?! zVzgy_TK8(}SsmlH9$lmDT&KBq`F*2{$(ZI{bg_`fWqpEuTUO%KW#w1;hOA%G^)7l> zR(|{^WqlGT%E~5Q_vI~L|G?7wKJn!^%e3n$s0Pvb1>$jS=jukaT_vjR?nE`t{iw!$ zB>!jhH>Rsk|99`=pYM;Lal-ZkzMnN&S%^1eWsvUsad_ablIy}R9?|@cM0|d}|CNa5 Nr{Y0g_amC;{{W16(MtdT diff --git a/release/src/router/openssl/crypto/asn1/a_d2i_fp.o b/release/src/router/openssl/crypto/asn1/a_d2i_fp.o deleted file mode 100644 index e81ce8cc66c35bb39248ba3acfd3a4b69c658bb8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 4180 zcwVhnU1$_n6#jO0v-#DGX=>BD)tzSRt{9dzrVvXhn+<9UYNJIeZRzeNJBiW!Y&R=f zn$i*SkOy({;De&Hi$5SVuv$~4#h=i=gi=ah`dG+=6dwxx!3Q4#+jC~_WbaIjTIhx4 z-gD16-}#@J{e0)1T|S==&hnuSRSM{;18P+u}qwS>w)SantAmnxNtLmBjY znSPs=`F`V(#80f?H@o=V|5<;Nv9zjw=nddPR9igfH!63clekwtfxG1*Zk6-6SsuYR z<-?dO=WwH(!Pn&valL#9*UD|UT?WpXQ@B#De-!p>R}E-qlW0J)m3SueRFukV5QrQ_ zO{53Gh$TnHzW`K6#=0v3On2jARGR^`X^!D;vmk1QeTJQfkl>V16As*E9b;@`-&7 zke=4IA6wOrp%bn)ok0NoHinT>`f$Z;S34Dzd$Mw$*a8Hd zoNg95b@JIN)m5&kCVb#LTe6hrc0*BWkqmj|Pm}!fLSCDGMX_>9HTkQ8^;{G7Lu*Ts z{Q`oPec&YfJ(B_Z-hiIq6vgT7t@BcE`9*I9tvDxUUJ#JEuo7Ceb^*H5k(Qn{RRGyJvXhvc*BN3VduD>egK$|wGh7?zrni)HyZMYJ( z>>BgX5=ru_CqS}hBl)EnTJ_a!Z1rb|bXit2k|cMTWDHgA6^o}r zAwNv=gZjqyHR17ffqYGnuN^eIF`8Y+XJ>Y`voy0t36`HT^Ki{%I7xGuMB`)T`De;` zt(0@-w{l!oXAy2U6xKgNa+XX2%h+58%7;CNv9MCTw_~?sw&Nq;X&!Evb2S3+xvPrwtL^fE#a?3{}Fi6Y{;Y%z;?|HK611$}6EY;c?pBk_E$fcR)m?>{ya z&-M>*@3gO3DW07e+m_CC4yOxxHka-n9+!AM@9x`{9xm#mmcWyEgLyA&6%9vtV0?5` zA1mUS*9O4)mIw+u>EWwl*Myw^DRR_Q^mX!dxei!1^NJ+bCdmZ^y#sK4>l~tA$s@<> zHTu;{_qW&bmyp$Gs1b7P*PC$TJ%W2Vygs<|!g3KOC{*q4f!pqVvU?V`-8xk5j=+r< zBF3zw=inWN8*j4N{$^sl22}CrGsK0rK#T{Ho`W|9H{NWsoomKxLKW{4+<4b0X;&pZ z2k%R`@&0J8=6Nluc;CT|cZd!TB|Qi4Cfs?-G?xFt_XP%K3%IA`x zA6hg?WW_T%K7f_)g7i>6og1FWBXw|BdhgD?=`sB{b{;s8&L1nL^+I91U{M1jdbS{F zM{=kze%xY=A@%k<79^}!z>r={kM|$Z2Z}b5t{?TN4irh2?0Sawi3eA3)_cnXBm6w1F@0;xZn@ZTuT}`t+cR||e!vu}0{k(6a z2Akxa27W=%{5)u+zq$8$r-wzrXWz$ory`VzeCEh9Dw}qX50h>jk$p8QV diff --git a/release/src/router/openssl/crypto/asn1/a_digest.o b/release/src/router/openssl/crypto/asn1/a_digest.o deleted file mode 100644 index e2a0fcec025140a1a58fcbf3e13d791baec33261..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 2036 zcwUWEL2DaF6#ld;OLAq$vSUi1DcLOoDby^A>wsNMv&M1kgGq(!1P20&Y^_xlD-zNs zxFt|s3Oxk2mx2R5h?3CU)^T0Pp`kwJXZX-R5Xd1n<-MKRcy>*x9}I84dEdgDeHiHbX2~Z1tT6n}(9NHZ zY5vs9p_e1R$J`bCL3rPvWNy($z$+PA8ukYcukk*{8jwps%bPiX^gYt|NZ-rgSf9nK zLbXzB)Sa$tZAJ5aN%`88?>zqUXL0Dy;7`AVgJ}MHJ(#cWX+i$|KFlIu{&FO8dVUO% z&rd;4z_Yw**jPgcm$SJe4C z=i+TpU&I-QvNwiimiht5G@zwo{oysn+#9OXqdGmR)1x{)sx#8373vd~7Z<-Yipw`| zT{dQ{X^ZZX)&0KdRyWDJ9pS$XXRfpB!m3r>Dy+?J7gooqH|}q@c(P-)YaLk4nzQ+! zZdErMUrdW--efI&bMs22;W|zET`1Jzb6DgGsm7QgX{*(2I`>_i***b+eY4fLiD^n zL@kV!5$y}}o+`XhcNJ0H$7z09gl+~Wx^;;2rX_Elz=*OhDdRsNs=GqqqLOf^`w&sx z!?frN>t=DH`xxT9lH}E>;Sat&v0Zv36UM3{<8%yXV)&yN&PKioPQ{Z@O%HCCibsP!vhiJ+ zAid9&ILAI$F!yOLhOftPS(sav*&?z^22nAxZV``N4!1>9LfFv%Kh&F?s^51 diff --git a/release/src/router/openssl/crypto/asn1/a_dup.o b/release/src/router/openssl/crypto/asn1/a_dup.o deleted file mode 100644 index ad2b75ae5c4205ba90589333ab67859ee77ebc90..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 2028 zcwUuN&rcIk5dOMbXiGyW&;yAWcaxgdNH(Qlg2tGViX0@+ASN0Q{lOM<S@3iYI$e z<83`c!l4m47to`G9zF6W@Gp4dKvL)JkM`}NQ73tMJ2T(RH#2YF?%TPAM;?y{ws_!2 zPXqiS;0q%&ZD?@}BLrS9F?5VSil=ee>2z!@LF+oL8(sfUOKhy^YrQBFXRu&)P^i%^WtFk$i! z!W%tBUvw7zQ3E#vFn@^8H3K1v{g#|aL6!i9i&9>OlkmmJWyCg8Mywo$K=tWVpYF%G zn7~OapH;W2%BrJ}HuW(>eN5wPD}m$I1dh5r$&EJTPYsA@N93I*ZnJvAAbzs{NC^gC z+^iLNZ`3e=hf(0b=;JZDy(`dz?r zf1kmb(`)T_XazXC<}@bQjLv?K5L?NW;x|%vle@3h+h0J%MKV;tZ;E;Kzf>h)-+i4hkY#+IbXLmdp0aj=a Q(1GNbJz&LA{FxQ^3)qhIdjJ3c diff --git a/release/src/router/openssl/crypto/asn1/a_enum.o b/release/src/router/openssl/crypto/asn1/a_enum.o deleted file mode 100644 index 5e16acf9b13d60f8532b916f815e2949b879a60e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 3236 zcwUuOU1%It6#jO0_AeXLXVv+ur7)f|ccz({EUg|G?wotR zbIy0qJ@?MMlN&n_3WeZG2yv`wz@-QfQ*d~Xt?5W%BfN4i9J_-5Ay3k??Y}iR2L*o29yvI+Gf%%E261~*mM3u1k#RP z3@bbr$GHnV?B7Qj2+whVKNhy@-(jb60_xBlFc`sIYd96c6va&2MUe>GuSdZ6IBtbi zrA@P2p9ek~P;V`Uf3~g;==gR;!*e6iAp)fIKVL72ssnr(ygCT^!G<@To97)BR{ zQ-o=;T|s;05y;w`h-hU*HO8s5;4aF^7#aOdUT2Kfr7BE?Vx}Q6E<`?z;d#p6qWmq& z-(rqgTpcLnjq2%2W=d4i&vzH`)p5nod7%yBlXAIpjxOTHoRb|me?a;7dN>a`oYh7f z-FUhwkq>j{{b4^D(q$W)PD^1YUewu#7)A**q9>I(e6L8 z+Z^JMo4_?Y_s58739@s%IOP!bNYl;5^R$uVFKk}^`#k)^=-qUm6PLhKYu4RbQ|($* zyLI*U*7!QrI7>C&MfKI4`ht6wY7xPdt~MIf!|z?%gky?2FM33#-gN8E*+sqIZ;5p; zlb>vJeT6u)Eku{rX1m zSxIAQAc{6&=zJj87H31!?pnoEcxMEbRnpSc(`rdVGdoPGxGPIx>}#Q9M1JDHO}k3<`(Lz9Zwi z^SSY(FXbloP3A`P(}pP=I$F({{QhyW&u|*%u$xG&!S|0dBH;9ZaI>6jYNk>#swV!s zYys>$JnHDf0lVUis)GwZ1V;@^`}AXHS zmnVq-)hFJ08UI-DNI2jX_Az1Io00WcK#vD>Zv|OT26XR^v);qsZjS`Lv4H-1KtJica}V|s|3<)mF`$1E&_568-vsm@ zo%cg_{2u%su>Tp*?*w$*|8ddAMzZL1Rd>Fi^V79_sXSW)UC709b+A}PZek)|J8kBT zdVQwO^K|#-tHyM}EWc%-^TloJMeS4X&+~ZQFxK(po8R%V?aq5exL1q{16ZUD;!czlab~5*#9bh55p{}e6z3>P zBYjMfqysz3BOS6cJf_y;_el-5&*yADL hw};0k*2lN=Zx#1`l784Hoj7keaco}nv+<#m|6f$ox%~hD diff --git a/release/src/router/openssl/crypto/asn1/a_gentm.o b/release/src/router/openssl/crypto/asn1/a_gentm.o deleted file mode 100644 index 2f944cd51b94ef28868a08ebf43caa0c82a4d74e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 3892 zcwUuPO>9(E6#m|up`9}Qd5l9DrOLeeN`I)6p;jzv%+ONHPc2Pbjk0i<=?taPX~%Ym zB_VMFNV))qg$s!+8vfJ`gSgN|i4Dev7#AciWZ|NL1q)eVbismTJm=o`I&WT!)swtA z_uTW{bIv{I{>>-dy>BUs0*e%QP?Ui7a-dv8f4h*HumOJ9>B**=8~7jeJbjy%q?+vG zLZM(u)64YBsZ?K{ePSEmQKGMV1GvzrFP?X~apH6Us&NW&Gx(X)RZyFcBjWeqocd&BXPNQ-r^my;JBi3W$f- zqOAWWI^fr**dT!;i*&;xOjI?w2V`)JYP zc-Pbe@iQ%27Y0aH(A-c>akz1~!Hqo)zZP!!Ra`M-O!u=P(ygO;EBJ|gtWmmYj2>8o z9-gIG;^$gA%9J~WPKu{f#N(!T6bu`W3yZ`Tj6z|-=)hGm7d^-}Ph>e4E;E-QK;X8> zK9Q4FQ@6&Pdy|NB!6@drSGKuelylCBzUv`4j`^TUb5~)-qxb(oc}T#G2S%-#D^=vM z)6fH5OSl@LyJFO#{tV~JYv!ts^2fOgzS zL)Nc-caeI~+n)Cim7{$se@$ht7DH0s$1_Lw?a5w)x@#{r+HMN>r8 z!v|Ex>OrUx6X$_(mi*96J|%ngXZ^CKejfWA)k;5?75+iF@{@la{};*({ai%k%!)(9 zY`%*0cd^FUL3-h*gHM3D+>2~yhI470bqil|J{*^fq3xOmm3)_`CNe7ZqZ(#x?RkJ+GFJp3_Tc8{p6Qz2C3hQNzOH*O1b`8K&<=vYc7sQ3#uFw zbE-v-YLTN_lT;7HsP2d#5?r9%>8G zSs$7@n##oD#50qUAF^7RePC`@44z?S8vEI(#TOe3(EJY?0kn6^% z3XT>pt<}|Wtq?xbstp&g;oPRY9i?mHJ^Hc^9MdcGRoMC~tAQZ#_24sJ;yA81QEKll zO3Bjoqcks!>#%}F(QhwG{kB%ivFz7_qTi1o?X{UWx<2U~Dw5mOpG2wO4#ItJ3)u3T zMXBFo)$(n^e!VFA{Su}29=Z9xDUxOH5=!m;T`lv^_Nq{{_cKcERZ?=V+s0Y;7T~By zjhrvrt3lD;BS?EzYUjwFVH;=JYzhXyfWD@uW6pE-QGhw+=46EbCSK^jXw*pk;^g4RT2ryc8@HVJ7kYo z3rw6Vg=Xz9k?omb{91?Xg`HetCD`Q}hrG@q`@~zfNNZ6KdG1?sDc%h`xx~)3%g>1O zg^Bl~kLK5D)3f)zW}EknkK#|*^jxQ-4td5Qf8mh7cF5m3>;sEoY%;TE%a$lCM zm-kFX6~9kNu9E-1DyrqUGUA^pQof)_c~+75uM~-Q+M~x8y!40}VonDnN9280*3(Om z*Ey5VvLD(W^E{6D@7zz9Z6(?D(qf1(r_IsM{;2T1?2mYw`(Ie@m-mdfc6mSVW5(}f MPI=+=?$v>R0Mc_3DgXcg diff --git a/release/src/router/openssl/crypto/asn1/a_i2d_fp.o b/release/src/router/openssl/crypto/asn1/a_i2d_fp.o deleted file mode 100644 index fb9ba7d85f47e315b2378734124ad47308f85aee..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 3184 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 diff --git a/release/src/router/openssl/crypto/asn1/a_mbstr.o b/release/src/router/openssl/crypto/asn1/a_mbstr.o deleted file mode 100644 index 905edc0407590c82269cf6c8321d067a42508b00..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 5928 zcwW6&U2GKB6+Sz&UaxI1V|%d|W0Dy&;3b%4aa_qD(rhq4iG+ydfJ&=K>s@;RtNvN7 z7XlGdw+2#IvKWLS1*E815h_I$@&Y9-m54x573Bd{e&_>I^WdrvO{+$wPelsp_B(g( z?9Pmh(!6w}^||MM=kK0-?wLFO$-aa81AzcJPk_Qy~p4QGyMtYnYf*tL13Gl;$03v96D$SQuB=Ypj4S#~9y;9|JrLtplBjy97ZB{hJYycM2cx}q%0I8R$RiRDVASuBA z1KCbt<65~{*tlvD1%;dfdDve8J~~Xvaym9q-2z3|4`A}0~+s(Vj>q7 za$zAC7II-B7Z!41Ar}_sFG-*DY?>IO$?>U~@wc-t@yaLDr>o<1YBDoZ$j3)9?ul*L z+Pf{jeb-AblRM{g$axMqpP=8CPtb45W61poa{nfBe-ybtjNA_)_fh0ttYHp0zlr>R zR1&$@sZ^dvTp{{2atU#A?!=n(5<$l@=8`l=*DS0rLReQQrkLQ%Jno`QE3b7MDDP1n zDDTl$%7{JS{ZpyCFM!_~N@{~z3-SDF3Yu?Io%vG=nSX(dh8XIBpY!1tfd5J2>p^4e zmwqN<#JGp(uO{LYdq!Hw)C9h>hvSbyry2XlYjE3q2R1*GHbcVZt+IoafZdl^l#-qB zVZERY(^|ylws8e=#sCrfv1QrEJHk&d-R#jJL-ZMBl6HNdu56hLLS`L&5d9MQD@q@; z$~vEq_x@)e#T9+9eIr2vQ($vmoDatB{LT6DXCy`xCwH93`W13_7BRgg^D{>uS_)+n zD&p2aal*7V>OgNuYC-Vr7;AifwN{g5D4a=rjdK=}G8D)pp2N5vG74mZ_@P>mlMb`- zQifKMYBt`@&tFRMebWMbRv9tYJ_CT?!O2bS&6;SyGH* zlJ>%(Ey?9)}NgZ79z4}%iTT8bQVt*-** zJ?w(4afwguFwTLfRjyI^J7*;|gim?14fDFF(Q{T2bDR&JclJbIVNcvOtyk+{)?z=r z*E;$T>jvn&$$QRnf5$$V&})(F2vM=st_kOCJGFAv;=OeC_Z8>~91CZ>P4vAEQy1%C zePsc5EsifN$2#gj#EO23H)siSJsdaJzPp}8FTp;dS6S#)7J8M1US*+IS?E<3dX^_2B9d^6WN8GlFZqAE$9DGzNb*9Wa z8QKtOBKO@3&_mta^4O29VBZw$zU}h?`n=<^>`X3b98 z(~I5}(I9hQ@-32I1m6gLwd7F}c*oA79?#3YK5xg2y;X(GJ&Wy{cn7k4y*TGeUy-`w z{BGd!KP4WNIE9ry3fMT0zm_wsg;ySHlHm`Fw{|F$t4=2m`B5e+SHPOx^=*zIbb zsyR9^IJirX9XNDki{2mai{t(opE)yGNM}F`d7GYaMuqI@0>#JDg*3%8Gcy#=XOE9h z9h>ICL_9Z^r}*SpHgocLJe?VTvCmeBk58pe7LE-_ZZvl$m7W=Oahb`Si#s_re#*8d zrV9D=sce2Gn?elZQ^$c!vwse52coSBzVgPQ9rlYJVyUUo>D-xTqCQZ#6%kgarcW09 zQ-w1*5e3CZrza<~Qw91C58k`tz8{i&(uZr38d6UE7C96*_vdew>m}hcr?}*zF1euO zcM^HNM~y@%wrcelN^juxuf`-;5w z?uG4|aURFs-^gok(PgiVYWCQe+g=1pBQ8D1-c$10`_g4^E!FI``Ro;-WUjDpYXV+- z)M0-guD6F(d)?ArLW*5!6qlOcd7k#i>b`4!~0y8H%Q)H##1(DS(GgY>ToxgOQ0rFtS^-tCe3dLJLACOPJ_s@OZ|!W+ci^3x@7Plkav ziv03p3cS&WH_=8p?iaY@&B0fRzQzydLJ=p-jW_%FHMCofO(EYw`y@X?%&(cwLZRse&CsDrZ=fpbIhly)}xs}M(%#rOg|>O4jtb8s4h!3U+3f3QO?D4 z^k-Z=`#mSe+*4YSpZ9$DFMRwBAOAZa|Io+(*~fq7gB?JrKrBxt1tcPg}^*GnBYG<_)j1Id6ED0Q|fpwH8wtzqa%m+ z52TJ~3!}8s1q94Qc8c~552tc4p3Uc{^R(x+*Hbf7IfxaG2`D`_W-`GL^R3~j-JSiJSu3G zI#c;>P#Wd=!0{?FMH!Zu;&47-x{YXwDgU>L&lMV`&QxA7>I}Q)L!j@1Hgzwb=X247 zCUBkUCcH-^{X$aF?-5rRc0(cCPeZd^A0g00z?LgW%J+w+&G5%^>tL7VK=1K9E=_lN zzLV(pJP-Ov>OGZuPo!R0vGw?U&w5>;4QN^>&x7t}9_xISc~JgJYoXbAKM^T_)h=0P7YkNiJm9(0j;*xL5fUhK;2mLR|#&(zh diff --git a/release/src/router/openssl/crypto/asn1/a_object.o b/release/src/router/openssl/crypto/asn1/a_object.o deleted file mode 100644 index e330900f6385e533abae5e315e0b68a42c6593a1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 6820 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 diff --git a/release/src/router/openssl/crypto/asn1/a_print.o b/release/src/router/openssl/crypto/asn1/a_print.o deleted file mode 100644 index 5221b5cbe069b76de35cf6fcc4be1630b1d89940..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 1756 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 JlYB<<{{tK(Ndo`? diff --git a/release/src/router/openssl/crypto/asn1/a_strex.o b/release/src/router/openssl/crypto/asn1/a_strex.o deleted file mode 100644 index 3ae514371d4bf7a3c15c12792bac65bb7f977573..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 10428 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 E1(A5>KL7v# diff --git a/release/src/router/openssl/crypto/asn1/a_strnid.o b/release/src/router/openssl/crypto/asn1/a_strnid.o deleted file mode 100644 index 39809ef676e392a712564d5d1b61969f94300a28..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 6032 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 diff --git a/release/src/router/openssl/crypto/asn1/a_time.o b/release/src/router/openssl/crypto/asn1/a_time.o deleted file mode 100644 index 7d2ffd89c50e1236754654d6ce2cae01e04572ee..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 4812 zcwWs|OH5Q(82;wY00X0CW<(eS?H!#KtT+XV2{uhLB8VoG62Qc?CgZ?dV03t77~^Bp zNvhRF!*$Unnz$gXEZb4LtX3CI%oI!C+-$IaHrUg+r=R66?t6rS^-gg8MV)JZ?v!s>Ng|!q*&sQ z;7*%P`mNL#!*bEm({;^{L<8%x9{a?239CaQ$e0(2M#gDr1U;k^)e{=)M6lAv_`aY9 z^2;Q@O!CVlzfAVO7x&w`4g%dYk%z{HyOQI_-WpJH@g2p~PBF#sMNy}?S}CrG9M@Gl zrt1Y9wEgix4>Lw9WT_TtWJcEEI$B83x)FMsrN?FW=RQm>aeTnklE0j5V@bpcZI7LY zD8(2p02;oDaleJP13PR^8oLDI0{X6bk&7KbUxy!|r79XPe7bCM?tH`pti(z(w=J&D zgeG{5B`ZF{O8ul{*1igI|8a(IGrI8Hen zp&Ul+9A>dnF0i(Y*wa(Zpm%2$AVkJxJst(Vpg$i8DG3Gn@>$pozIDSrqs$C=ktiCQ~4C)6N`(8=Zxvh+|)cb zvhjs<4)NKvF>!V}o|?$K)-AeuP`tc{l9MyWq;oDf{ps$E+HVEIjof@Z zJ3pDqN~9TbVsd_V)|kuVUzZlZy7#JWIicV|yN=p=-c9sqaawC(GrbO2HWxHWFCyvr zY?+Qt*S&m#K3(eY+4TYXY9&2i2sjFH=TzBx?AM!c^PQIk2^)bsFRa%q>6Ppb!EJYl z?CKD9{c!A_hMVuU$Gwe8d{c1qWkcfrXTCZ(e3v2kx@|p9WP>!$XXDr5wtI>6`YYt` zBe?C}42fK`-K}u!K7gC=5l!?{X(>>R-{I!#4?FX=4Gy2*rwb_Nqo(4_(nYLecoGDc|L{|zOTb#JoB}{;ajlzI&Hmi;tNaT zJod+PShC4wiu5i>>(nFFr89$ze+#UeNr!jV? zMtNPHuq<0-xki!wid?72TNHV#BG)T&NRhWG@^(dTQsibuZc#kiQr@d2*{$y&LatKe zo#iu$_kNh-k4ZRtzh9Dh-i|8ryLS5_czhie6#SebU$xtO#)T<=D+>OVB0pB-pA`95 zyUk}@n6e?Cb&PwZCBbq?kzxxT%J3dzQ zKXu_vxTD|?TzE6SRdA$|{2Yo;A~tlmlmB!%zhUh6S8{qGna(UO2w-qvcwqF<(6M(0 z`XwC;IzE0_?NT3WRAr4hfsKui9vdD^PR=h}kd!OD)hgQMHtyN7ztyk{HYF zR9<4|C*Ip51H)ruL&@n`i+x~pG`Vm#pEPp0`J4h;`mWf@9jZTNp!{T19*UNj$s4nh zSbEsGpN@_uOYY~RgHb=+Pe=!&elf>dqc}UY9pVk9(GT@gT<-=7T+?s9Wv=&%J*d&c zZI$adtiw{X5B91iaZXe>iM14ZRUaLs!+(7Il~-NyU5-bHsI z*L2Z5;aUfNp}Lk1liygM>OWWxi#=N%7I%0cx&iMVx|6t$iFgAq(Hn&8mqomRw)Nxq g6b$U%p#K%|4y)a_0lt3|{MAkHE(hm4Yjmaj1C(oC@Bjb+ diff --git a/release/src/router/openssl/crypto/asn1/a_type.o b/release/src/router/openssl/crypto/asn1/a_type.o deleted file mode 100644 index a7930e48519379b11c3f513b36000d3799f34d07..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 2320 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 VJIcRr`@9aRf0QZpEz7hU_%Bw5pl$#F diff --git a/release/src/router/openssl/crypto/asn1/a_utf8.o b/release/src/router/openssl/crypto/asn1/a_utf8.o deleted file mode 100644 index beacb4ed13606d80c48008522bbfbbb33490d700..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 2500 zcwUuO|4&<06#u+0Ev1|Cz=~y?(2jN%2hZ1mh6xd*Fmzd##W;hBX7bv?Fk@p-5|^0l zrLd^Km4rkS{bB8*CdOpH>gTr4ips;dvZ^I`%u@;eU*mY4$yX-@x4y@kx)=>=<#2 zJztg3-43H$C*P!b8~y3~fTclC?9g+S)=s#QU3%udpHT5nY1k}zWLL4_{7C)@TKjM^ z?RDx%Ml&Sd9lVFh2*-X)c)E|LCweG$kFX3>QeR8IhC34Lp0iDU!cI{9RuxlD37JTT z&%If~aRU?BbS6-7e4f|_aTS4(JNTu<@`%eItX-OM!rG^^CUJd!2-hw0^PY|`N>%*f ztYgEs4at2I(~&kLNUO2MoD;}8c!78=$}eG(mPby~nugb7_&HO3#!p)=@{;Rg(qaVfmJO*T=X`*o)Dj@>it`?E3oUJ1tnH%on^N0(@*AX$HL*6FGU1&t z$RF79HAZtZUDEhH`F|Jnist>jnAABYbqtfv0O{DLX~4A}*YpJU2m6AgcjyVddFNGB zq~1-cUC}v(8L2l+`exE6rQgI6vKQ06_|vxoQvWf`Mp(PXJ@b+d^on=O`b2G~s8)yN z;-=MHV2WHqQezNx?GJzEwI*}k>g(R<;0aZ|z5`vo5Nba5aIuNF+~5Kf1G54awgG-D>C3rMDZ;NGRXlPyEy zYsi;twW$&2I7YZNLm%h+FsEuB6dc^E`fwP^8c8RCW=lGT8Uk>MxOjX3aa~>i& z`iT3HdL~DF`Lc$EvdDe$fU}o)xQDp!$JD%R!O4AB90@}oBi^?K?_P~DRo+ngFz)1} zq49ZB;b(49udC%gHOJQkANPm;262rOXNJ~y1t<4~_5|m^fAS{Z>DL%5(8A5UqLxeL zdjDZIlX)|in!R{=AU0y3vFSJ8Uc0qin0IL{tcvw&{i%@utN=SVUzmsOuC2jd%`Yxp zU%0^!*X)(tD(vN4-d$g`=iQ~@Gva`K`TcXFR~GYytZJ{Uvz@)Myqv#Yz%!5Ifd8!u zN_(=!Z^<<-03I7W=vDAuhVQ-_8+thuA|`J zArZ&A-a<3pH)tMp-vu<+h2zY6QfTmg)Dridp(LfmU6XN+w2#t(u11*eR1_`9b1jFwYIlM=R7M*q9k zVuxC6_06$uLLG+x230#ue`4@E=_0&{w7K?Oj5mK}y|6H9XVJJVje8=7PKAo`N=@=F DxpPqm diff --git a/release/src/router/openssl/crypto/asn1/a_verify.o b/release/src/router/openssl/crypto/asn1/a_verify.o deleted file mode 100644 index 64ae1ae1e886d4386448930310306a02c8c53127..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 3484 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 QMI(xuOz)8X8Fv!>2S|0+H~;_u diff --git a/release/src/router/openssl/crypto/asn1/asn1_err.o b/release/src/router/openssl/crypto/asn1/asn1_err.o deleted file mode 100644 index 3a8958a82f46df4f0a46f8c679b3c679419b0dbf..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 1000 zcwU85%}&BV5S~&L@Fzh|CdPVE!frsPx1^ti4Wkz z_zFIO&XjGK-5B_iuhVb$o1NX+_PyD@GYkV#7?6jB0?4As72&>~s0wVu256Y+1Iw_F zJV55*+e`*pjmA~E(&{{(li1S0hM!{B*L zFC#H=LlC~}Ij?wTd(Vw#_kL-`Nj=a6I;UygA<|jkFq50$x{#cUK$#_a+EGxoyf73! M`2QQ9BZJNO1HW!X5&!@I diff --git a/release/src/router/openssl/crypto/asn1/asn1_gen.o b/release/src/router/openssl/crypto/asn1/asn1_gen.o deleted file mode 100644 index 80fff58f84d2e76fa09259af9c7559d24cd46369..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 11264 zcwUWKeQaCTbw7NhD9NKV-+->_$z4%>`1x8~jK92r!|`HfQqyx62>K z;D!60d(RUepXIF2c>3LQ@44rmd+xdCp8M$6V%@tu9uL`%hpMPV5hd%0DoskXC@M@r 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 diff --git a/release/src/router/openssl/crypto/asn1/asn_mime.o b/release/src/router/openssl/crypto/asn1/asn_mime.o deleted file mode 100644 index d699eaf9203a21ced8e1ee8307c88e0261be2315..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 19152 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 diff --git a/release/src/router/openssl/crypto/asn1/asn_moid.o b/release/src/router/openssl/crypto/asn1/asn_moid.o deleted file mode 100644 index fe9244e91bf8f8181ff9cf730a2541ac504d5549..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 2832 zcwUuOU1%It6#jO0v)N=5yGf%)t#%fN%_?Eoq!FT&GR@jHNJ!#pQBj!g&oo)xKleu( zP+TNR9*P?z{zMc)Q7BkkTdh{GC|GZgy0!Nft-N#`lQxpja1wiTaK zc)k1AGE{2{?eRu}*WRE!@R{~GYg=bdY7(6Z*52rh)>&gil6{}rmSvaQmi-P|KZL~# z?BiUz`Tc}=t+;7e_hRMAD&u#EDhD&u1W{X2 z%%L8AVtzu;779AQBjswLRWbzcj!{2dtP~r|xAu{Xc9XA`%SNS%y~{m-)jz@x)_i`q zd&Hf%;D5x8(TMCJZXDK{HA#pY72-k;ei-odx2I{G^2M<{M59lzkM`U1hiLRTalEf1 z@bX=OS6ttm^E@fU`S-_u9p3!?2>Wbe9Luxt?l0AE_s1c}?(Xjuc=>K(_qr@A@baAz z&Kt!J-zL0#^fF`CO*(e?-iDWNo%q_Y`3AAWM-9*7OF41R1^;b0mIR!^^V}L>sRX^b z4hUM<4&+|jz?{s%>vGNT-b6l`41Wq(yi-v`dkDXq5G3fE74+j9zOsb)#Od z*3o#u38cS+dVaZXbJmS)(?B}&%;J*^dO2GvRr4qt<$P_$@>hz5$!hL-=z6}nQZw`% z(^Ohz=ll{~sLZoB_CuBkry;ra{@IPX~0o*yPX!nmKmAPM*H z=HdC#k==H#x9IJ5Z;R3&e1Y|yz{{*@@eS5@0e`T*oBZ?&M(I!JSJHjdXlkUxq}SL^ YoBN10eMEj2uz7yrxcg{6WBRcC2iQV-DgXcg diff --git a/release/src/router/openssl/crypto/asn1/asn_pack.o b/release/src/router/openssl/crypto/asn1/asn_pack.o deleted file mode 100644 index 8227599cb0967cab84495dbdede60ee1876f6e33..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 3984 zcwU`X|7%-S6#wK)*RE0W`W>`X2D`YZUMxC8dYUwJd2(M|AbzyB9(+oEl zTaZl(j=h2Y;6NeBhW;>;tt$A#hW$ZYL4^GSV!_}1P4I^agL=-p_ciz3W?S*Xcd-3-k2EH6H*RKa2Y}^|d#81s6Za4dJw;966 zSAb9Gxo(@8It+Z>G!3BZp%E}}bHJ=+(S>Xu+1hLqL%q2R!Nh%ZBudzkU^|n7vEGcq zPuMnL+aat6(zrLUo!I7D9UPP6iMW)*W8yCVkGN|TH%)N|@g2opX(n)|X~-PRo?QWe%6K1@e=F86a(-#)S5X?S*tlh@yr@1C;!!*JEtRZtZuWF)*4sO)#AAkd93~#q#N#0Gn0x|{y~HEesPov} z=DVJk`MNb8p!(Q``4kxY8|Iqe%1nwnIu)*54CW~+zXfpFmONABn-2D;r04z$ZzBg0 zW0U8G^Sxva+^a5^#EDIu*u)8OdS|l_vsxeiNc?4qzr*;UnZfsMd35q6{>*QQ&-ywz zw?2BfX6}_3Iz@iOHFMdi_2dP~K}6$#>t`O=*CKtp`Y*JpzlZBz7JGqt+ssGyF7vRN z({h%Yuof4%*BSxT<7UjDZ+EA`Gu3WW?KaikmapS&_U$n7l_qWs?y>$=hk5}pGQr0sOakoE9PlvSQyk3VFuU{1u-2}Y6u-$pZ&W$?;Z`@N6?o$yrgjU?s z@Zx<=!db=7#hZf{Z#g1(V7zX$@OZ1Mcsq&6!%8hK-X(bP>Jh;;2K z_*WD^7w->v@ygNGck4w9?_UVKw6vQb;JD)FlMm|f0c^+e7vB2Nh zt%LUn=ceL~?E?N%WUX!6t_Sh=29y!dyaJv~SXLvl+^NYSP43oYwPRS0XmV7Odo;OM zL(u($P)ESo*{ZyI6Os37obuhT=vnu&A~Vm2Gkj^2MdHqR9^x zacpwZDxaxZg-T_yf;RV;c56A}iK)rA#z(DE;UkPpzBe)Twso>nC@7}Ip**%+W72dX zH$T5P3-47%4wisEHq}ze)G5!FQVf5O*r)#8;vDnSKY(eTp95+<@1--2=NE;2M_lZw z9W*Cs4)=<4Biy%D|HhNn>0tOk>iJuQ`$e4a9&sP>`aj$BzaeMGk1pW5G`aW@&vfY0iLsE7C diff --git a/release/src/router/openssl/crypto/asn1/bio_asn1.o b/release/src/router/openssl/crypto/asn1/bio_asn1.o deleted file mode 100644 index 06764a687c3d0ae626968811c9803292e917be49..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 8332 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 WtluW<^~-u=5n*>C!av8D_W3U}D28?b diff --git a/release/src/router/openssl/crypto/asn1/d2i_pu.o b/release/src/router/openssl/crypto/asn1/d2i_pu.o deleted file mode 100644 index 415a967878e1469d42ce0c937b320c15e7ba6f03..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 1812 zcwUWD&ubG=5dN}BwrSJUH3TiFG%LYGDNAT8R1t}`u|i7;6-B+oq}kSB(}rY=EePgV zM2ts^Jp}aJt<^&h7CriB18g^W_5X?cIjY*oU;vpI z`B`=aEi-~Z;yr>18FGSoDityfC@x1$WhBcUhtwzdihfs!&#~NG%vFaokRj1|(TZiz z{w#_y_Uk9UTbr7CBB|+yn*+?1={yE$S3HX$aEZ^tRD+m5Liq=T{A~L`wxDB+A|6#0 zNQ#v+z3bjlCcAx?i*EwRSur`U+Tc!6U33SF+pufm7&M0_&7nziXwn>-G>0b5p&3Hk zKZ(O6W~QdD$5S)&_bUWZdV$ArB5f z6u&hw5f4~*V&NG?$zOac+%r|ceD84&&Uo;=2S4`UXCC~*gTWuKx~?sv_Xp;etNBv7 zUPbmnE}xstKFZg1BX4Y0^{!=Ae~#?J0=XM`y;fVRb&tv=E8g_ITiuXsSP%`z?4_En zJ2gp8gMwju_A=?aq{D;u8x2S7Hy9oQwj6uQ!3V5Q0Y6#O<$kfIrpA5t`J|%_*7Rr_ Gj{Xb9B-gnB diff --git a/release/src/router/openssl/crypto/asn1/evp_asn1.o b/release/src/router/openssl/crypto/asn1/evp_asn1.o deleted file mode 100644 index 3cfef814828bf5bd3750e212d04b734099df40fd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 3856 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 diff --git a/release/src/router/openssl/crypto/asn1/f_int.o b/release/src/router/openssl/crypto/asn1/f_int.o deleted file mode 100644 index d04ce0be8fe4c0b638471ee3b8cdc4640f0f3617..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 3376 zcwUWH+ix7z8UM|!yo;EO3R*jVlSyXT02f^st8SXF*e8wR&Y>JBdyo=CRnv& zYrV8-AKH}z5)W?1sVF1@iIoE_AWIt{0Y7lD+6c8052$}YWku>mEf16@9uULtn@e_f zp`u4R`p-uNU*u2nWGgei+voiX0V08Uscf)+i zy==P3WnIi>cOf^h3wAP&*?|wJ6L}odwUvZC|*@f*r>eV#Q>iun&zIBLipUVCAt+pedJc%14X0Wlw3(;SZeBp#{3*{jP^&8=k9<{!T2JZ+jL-D%(_W2K^iE9gwbN2h z=NvEY>1VkvnG*Ncxxb71CGMN_$zYs;Ro^cAEL3JkSLtb8Y=JRT?0R^2m9jlQ02vy;fUOP#32mek!}BE3sz*GcTHwLdA9FWtDk3 zXR3@1$w~LkoUEFX3*ImJn)@{4X(#_e8ja6y=u>YHAK=EihI{v;N5_6+gV;A}Qk(y9 z_uVeJ)9~VY<&us9gTPi ztZcH4ca>Q z_ITiFFZaMJo}U{1)etksS)at<{dySR-1!9U{W^J`b879@f9ps7Q+sS!RRPP(@3sCA zOL89K>BQ5CHyq#{q^*v@KGxuFKi09mjXi(wi|*+U_K1A~`SYG#YMHxc*2P|DUX`)R zeYtg&sWCqrmqjQ0Z)5LCD)%6ZfWvts#r=0BhwJiwbhZL(u2?C;nps(aRW6;L zKXYnH77Nz$Tp8BlTxsUX(^he2{@@VBOJXcYgM{|11j8y0%@>Y7dTg-p(6On}vC-oZ z)%;NL8&n>QEXqsP!qRMU!Fs|voIQL9*6h;aV(Cl;|Nr<7;JyFi0dKeH!?&Lb>|)(5soBQJ-r}Ft!`U9#iC_1l8Sf&R zN2r?!)Id7?W0|RKRFQ6GO)9vpUylyn``0)1dvVq;*@!)|G3@wG6{MSWf#9DU6nmiFcdZO?h zEqtPdk48}VuA36SUb9f<{e%em8X?p^Y2N<0?GoXAP# q)1i|eJ?p}gZU%O*ik#(lRpg{QfqYHmxAK3F$Vn5LFZb@vp8X1K0RIU9 diff --git a/release/src/router/openssl/crypto/asn1/f_string.o b/release/src/router/openssl/crypto/asn1/f_string.o deleted file mode 100644 index 1fdedccf319874271e2f1f6a85243685cd223487..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 3224 zcwUWGZ)j6j6#u=KrcIl6zIIU~bC|2IZImvgwRUxr5gV&@6fIT9#tLcE#J13XOCwV@ zSm@>uroK$kRS*{Hgbf_&Hg$f`SvCqRlQNc!irUR*5p;IpEL zE+xI- z$y6d4FzF9ep`_%q$dOE}V9V4k%cNvm=ESlL@Ac$FXAA+t*7XlnUB8#t^#|%5eO~=k zzo6>qis~4S)}X7UhWx0+aLY~N@qQ%+iSBCg(!Q?WRwdk4D+ot~7Qysi`eK0nXFF_< z&oqfyWdQP42?ts>1kcbplhG=~lG=n0fb`L?~y({UWMV=GAjtgE2#& z?bx=rlfIFkPQXJpSavs`%P7lpn!zKixMd?oUW$c&h{7P)FA*D*1)Av;oj)CJ@w;az|mE%}V@%%zRs!}`xKho@s#|iRDwc-KX%}dzWhw>J5#0L!;i%d|2}I z;6}5%w_?;=PwFd$`zl|c+!O+$kmH_K#4$eM{PAk44PaK|eggI#f94N)+nGU+s1 zIxed@dz z1+yz2e<>8+wdcUbPMI<$p9YQ2IGlNJbJu)_V zaEce>k?B+hk%?3~d1xdulpNdKM%z;?%t);SZAdXjWT4n&5hCMMF8Sv>7{4lv%ON{f!U`1Y$LEIH2;o$j6*dbS8@e?SI-y(ej_Tf?T?@g5Zw@CgShUs55O8y-|Io?`g%sCvk@eZLJud~*S z4deMy!aI%fyj}K|Fo4pUE`>6@e66X^cy%b@eF+mUYRO&mT9<`2BpeF%!A|m zvV&$jJ6v?Xiym~*Q!e@)YdvS=(2tK?eCHof>&{Yp<5B);<)1dVufoL0bRso2GmWm@ zdlMt+>*O{hQGevUMMBlRZmn`{O zDlz|Rs&m<-f0j*LpU0%#cK0(5{TUfxn&x-e{u=Y{sHQ^6@jlI$tbM)%s;SH_^FGbL LS^LKM=u-I)c(Uqr diff --git a/release/src/router/openssl/crypto/asn1/i2d_pr.o b/release/src/router/openssl/crypto/asn1/i2d_pr.o deleted file mode 100644 index 6ef1b56c35876c61dd7a689ef5fabbfc2c5c6dfa..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 1436 zcwUWDO=}ZT6g|l#Y1%Y(teg6UGZIJy8DgwZMI;#05>o0AG1%2KX{IsIB*SDX?aJcH zMIdeqE($JOMqMjzT)OZl^e+fmbT_^`ALPvt(F2$J&VA>;`{uqougjb3kw^qSB1mG& zfFF#^iBMM^mctTK;4y*l1%HKbd~Vye&+^Q!GrQriYY&0 zl-t;PeoIH3%c%F+)lD6NLofYKZcpqP5Q)7$IQVqY;@CX{YV zZyvOjMzeFb;D#wl=@eR;YIa^VEWN59LD}thyL!)>)%cmX3OH|@@OUw_FM3|~bizM$ zS!T)q(A|bp(};4q6;2oP_<3yqlu{ diff --git a/release/src/router/openssl/crypto/asn1/i2d_pu.o b/release/src/router/openssl/crypto/asn1/i2d_pu.o deleted file mode 100644 index 682665fd8ff3412ca18c9cd578e865a4347bae8d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 1308 zcwUWD&ubGw6#n){(rvaatMpJ%aRUp9Afv#7tH8;z3K*++b3`WdF~!Ju-mwN#spGU};Qe$Ns`UXS>m$n6;>=X4cL2U_ ztcxPq(r^}Qv9q~(&#dn}d4A1YXAQ>B$A*V~*s-|}gT%kgMxi?n!JJOm0kelgu)ytk z2YY=Q?6ZLrfccJVk9w?Qd$$@%n39;+aN5n0z3+7&yN6)izVEvS;W^#<3oZfieUwwa zQJ6PUUrlw&KXf&2+JES-Bd$4+1>KsUQ&WBy$i0^r+{}WGaGTqr5dW?w`&i;uN_E5^ zAiv%id1P}<WaU#1)+b*b01H*vkUeB!CV#a@UI<0^he5TF#Yl-y2;ixr746u4I4Dnuyp zjfuPxpNTL5^-asY73x`4;B@XA1-?<>ppP>cu`cpIsNEa19d9_mcB{qb!?qg){U8># jo;{rFD6l04Qpo8>OL}q#Wj%T8`ckq7onO!v`4!*~id23i diff --git a/release/src/router/openssl/crypto/asn1/n_pkey.o b/release/src/router/openssl/crypto/asn1/n_pkey.o deleted file mode 100644 index 57650edf68dff20b5e1894bfd8d6f8038a2380f6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 9376 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 diff --git a/release/src/router/openssl/crypto/asn1/nsseq.o b/release/src/router/openssl/crypto/asn1/nsseq.o deleted file mode 100644 index 7031345c1783bc3b11a5f13794565b6352c2b7dc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 3264 zcwW6$&ubJ(6#lwq6yVl)xFwezEmBbgu0w5T8$ zWLvdJ9t18noHyAnLyi%aqNODA7K22STR;UwOXxEv)MDwo;|VnFXw-qmG4#z z-ycxAY4G}nk`Vr0L+#TyOc~Q~B$lDZ zT}efC+lDCaQH}3?o46!18sD!{9>a+EmNdRmv;DplHNL-7d_M7wAmV!{_@)JJn(+-u z^9=C}B8o|Jis7CZDlQzuGf8rp1+h)OhhZL67h0Rl_Y-T*BW?I}k?jfm*McOLHp^00 zLb@E0^j=L*ZtNMIRa3kDtl$L6dP>s=G(8PjEM;d&-?m|)o-o)Bg>@JW^brj|tm(Qx z0a>iz%O&eO@x7!|P33PAt@fgLr}#rG-&>mhzIdm44zl(CuHaL6q2XUD{sFwx{QoQd zG=`)SlHb1fcd71{%FQ~?ochkKmP?sh;Yu7n_<1cBt>nVt>0>koV)pQFj5)&ZPjeTq zzsZWbLgQB)w`G{0+n!9(E6#nMT^oO>8D}0* zA_=qb2VF2ML5%5wD2a=aABhWyByP~egpG0Iq6-)9{9Ujhspq`=Uf;d9ZKyYyocEn` z?sx9F=l;!wfuUDIp%DBQLOlWm{96OmMKRLtq8N5y8|3x`hi>72v>o(oTebaA`SHTS zf{%_YvA30%T-cH=dO+jcuL}+gZo&m7UXDm=>yK=HR&k1mLdnjGk%T@44F(04KPo}4Xapjz) zE{n#J{dUSBhspfRj6LgM_3asm`qg?ksoDLyTAp9{DSouD+}c0QuM=*}g1=tauT}Dk zcz8dc+*RZBd!YGo+eg1OlK%H~KmsDa8qbf%br33Fs|+OD2-JCDKYe`MhM>l6rOj(X z#H~jV_Y73N#0q>_sC+#VUjqWZ3sCuv5O^Zx;`6-+m2aH*E<*4%A>jKQDqlYp@R8Kd z=lc{Y-~9Sup4TDZy9<@CC9-_J{IHPu_=++vN#zv~f^r{6-}kM7FFnB4A?-vMd8ge2+jNp9z9(LFLm&Kn`(a$Y<(nQv$<-4@I6 z=}p#0@Ye#Q7S?)&m60%(BQmbjuzKr+-5n!i^#%&ND^|u)$SthQB;yvyElid5BXA8v zZe?V|ME?ey()_2qZ$2xU zX+F+t_D?i?O~YSl_@0Kp*YM98{!PPwYFJ(Zj5m0g&!T3kSDR*!YxtmtMgCD7)9j}d zdoxaJc1Ob>YZwLhzK>5rzkJn~MQW;$%H~Q1^qv^rLzlNbBlPlpuDm${KSs;GI|fEa zQ-!lm$}ScOxgCxUj|~hCjJnScS8-x&^yu*566`*eX6%{C!a0og4)>=DCHrhPpURwb z?2;6_ke+-C#}B`nn$2aq@|ia=zAv#q)jKqJ+>Mb?NJT=*6G(FBG$iOcEAOHpDygBo zjRF&?1v=h0HZbN#&N*uOxy2`su~D3p#ul+RjIDHbvTO&+Ea`zV$8wkOuW1oyT5XHC z4;wd$H|d(qE7)6Cw(}X>NO9j_xlP=&jdWn&U`ZSFAxrx6^DE0|fyXS{+&?jBG>JDP zcsoO){|HOUXM&|A)@I{#G=7#l=^fOgqs_}X8hG8C_oJN|5D=c4FA+Oj|^4=ZT b`II%*i#=pC2|G*PAI6K`{1a|xNrU+hB7_nv diff --git a/release/src/router/openssl/crypto/asn1/p5_pbev2.o b/release/src/router/openssl/crypto/asn1/p5_pbev2.o deleted file mode 100644 index 09f9202e8b49819fca6b90e74a28591b26e48d71..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 7596 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 diff --git a/release/src/router/openssl/crypto/asn1/p8_pkey.o b/release/src/router/openssl/crypto/asn1/p8_pkey.o deleted file mode 100644 index 7ac4f4a63479d4e10d7da9a6fb387da2fce9d697..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 4296 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 diff --git a/release/src/router/openssl/crypto/asn1/t_crl.o b/release/src/router/openssl/crypto/asn1/t_crl.o deleted file mode 100644 index b194fe9d8db9966c56ee004367b0e20a10b0f719..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 3940 zcwUWHUu;uV82@_Pb^SA>;53U2xz%p#U}^RbEORl1t&C~u<`@K{$)(-yW}$1Fdv9?h zBrZnOhlS373W+g`!Gs5s`UjO5Q6Gf(h>0;g_^=lf9*9vR2@fXq`|de+Jv~D3B=>yx z_x(HHIp;gyx%bs%YM;yH0;jpa2XzE+)C1Y-LeYJb6fTkZRQYPFh! z_T#e^pKa^%<|R?yE67K5!^+L&W-^wpPU$C#_>wCY)Kt#2)ab}ms(UB^9dYxpZkWXH z$d}bPSH zMyA$24Dfzec|Y7{=JM&Q$`3ZGQl z;G1fAbrtPTR{$>H^HIcqS9OP1mH=glUpvG2Z&!#9FuKh6Oy31#5wZd3>*vj zA^EL%xUFdCfzvk6(GBCKI^+0I$CgC_8f9#(a6AF>SmC7v*J0y?RZv75(p{eu+Bjpi zKytZmlaOrK7>$> zukRbcZ=Gx{9;A28*7Jea)}wjT9C_?)jpHEgA)D*=P*w>?k1B*+V0QjgOSH1Nlb<)v zP%eq%V$N4E=PQ`=70mex=6nTnzJfVl!JMyP&Q~z!F=v&C57ylK;cAz7Zf@YY>A`a& zpAUOJZ!NK$Tv?T3O#rP~01~YZKLo4QAb28Yp()Y~-iR~D&A1=o5GX8{RfY1K>`8tM zb?a*fEVrZLdcu0XlMmu!tPS&`IrY+<#zsbl)aY3HP`5f5>yKe=j+rMHtV|ZEWia}( z^JZZoffyFJ48*dg2{A*T&lTp1^pcO2W(|lf%<9?ld@PgA4fG?sNXq1?4_(_@yuV8as}(Y0&T7Yv61w`(Wi&go%r|#e$NIr)<%4qxE{sz3^e*X4~@-{rTBZlpcfJh zJzTCqLd#h*=3-!p30QSXAJ=TK+QsQEC68wy+N$AFDX?-ZNp?{! z&b`>o^qvDrtys|Wxq^;gz%NWrPiS+7t}}nr<0!3bA0E)^pT?YT9@h%x1<3VhG%*C? zpUC9PI{f#FqNq)6E|=Hs*Mj~EB&VjdQrXgU!zdaycg8aE_KO`2H3f@{O0$B6v>euCI4tQ z$?Z#Af0653q>qLD6v>gUaQ-s!G3m|`AL(V{KgsSOKOW92#7BCQ_*lelbGtuCj+ek) zk|S-$GU~^|7Dehs8dsQ}kNEgyNMDp*q|?OjzO?Ss6}RELB34-+Ta&FXA$JKx_O?5+!9o?Ik~ Gh4o(u)>2pi diff --git a/release/src/router/openssl/crypto/asn1/t_pkey.o b/release/src/router/openssl/crypto/asn1/t_pkey.o deleted file mode 100644 index 07601e03227c6ae478e2e8a33791929d422609e9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 2488 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 YVjU!@&!0*D&&mDk?~?o0j}L_Z0U(yd0ssI2 diff --git a/release/src/router/openssl/crypto/asn1/t_spki.o b/release/src/router/openssl/crypto/asn1/t_spki.o deleted file mode 100644 index b6c169bcb0498ab4cc8eb42872848fcb85c1fee2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 2708 zcwVJe|7%-S6#u-Jv`yNovCP_PbuTPyqs)+HsY^?dENQpSmNwWgR{S9*&1;%1O+xaj zEeO^*VLy~+!axUO44JqegjDTR#JPd!Py4|i_6H0_@JAJY@P|P>C-=SO=AlgR!ae7H z&N=s-bMHO(zW3I|^l?Q|U^N9UG!Zc71UfuOgd50@N6-zq-9!Bk{A;Vv8)Efl5x z6!rboXLO^ooGR(sTw?0vXeSnCreL%l(AmcTV2wePOZ@} zYUX$_7}{V(!yyL7fJ;N(yB8g|>NkeQaI+S{x3w_7tOfB!?GUcl{Mf7c@Oe$cXSD%* zTI<7Z&4X`h-t$*z{<~G+BK41a?!PpL_uLlAVmqWKS!`SMi&fSEC+pGLg+Nr^tmJZ^KM1yG%cUDTxd?Wh|!qC*z1qNiFTonz>H_bhsw52 z#3|?WHu?3)eqC7EmVL9%Y0KyTtj}fcn+tOk=cVnRBkI`5&SIE-0hg&S_{8{q>hr$G z$iJ7i+XY9j*HcohH3HucvCj@#C;Jn+<68T}_)BZ?bCI1!JJYW@>53(sibKqx>94^%eSj8vMqQ5JmF z8X5YAfj}l@q!36~DhQPIY_70UNPsk?>&}_d>+wGvOR$e`hI~n-Z4yOm4E=iQnsxn!`5B(UJ*cIU?f@8+O^S+kE@2 z=Av(2v!)o+<(BHmg?^%82|rDAUcv{6<|XVWdO^a^5j`(qu7`6HK1%ch3DZXjS0pSq z$Ng%saGMQxA!d%bhI(kdi;|wtJSkyb_bD5G-G<+`;rDF#V;jD1!!VMS(&=1a8NTUw zkjY^tAtpzdgqaL8i7+|J6uDqOUX>GQbO$HtPrhWHuhq&m_8LMhC!S$>zqs#ix)fV1Cw`XYPl&VTd0ZoID#lB!C%(sWdQ5*b^|x8y z1>9jh@n2a!K=J8HbkUENUlDdb;%@rb2Z^^6A6G>DB}K%4O%d@kiip2q&NEm~kH?#= zCw`SNUFuI56W?V_m*XqO#BcLFD*kIMr-Qx2a^ioQ{`Oc-1=dY<*G@dD3i~nQZhC+w HSx)?Kl=*6$ diff --git a/release/src/router/openssl/crypto/asn1/t_x509.o b/release/src/router/openssl/crypto/asn1/t_x509.o deleted file mode 100644 index d4d0b4c1fe85f682894e50a74529284357efd59b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 12632 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 diff --git a/release/src/router/openssl/crypto/asn1/t_x509a.o b/release/src/router/openssl/crypto/asn1/t_x509a.o deleted file mode 100644 index 3e7e9657f8b50afb8313f945b3f1dd4417719bb3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 2952 zcwVhmO>7%g5T0E-&N?yFM4{|0ASCV_df*sNz4TBJhaM`KnSF2L=LOUX@uWBN zzL|ORX5O0}d;RqI+ma-KHzZJ?jsWfl0h*&Q(eI)d9D)dl;|Z+q!M~36(vw=P=AjDC z*Kod$v+JliRa`c$TvnYnbLLPB3Ou`B6`+OLoLf>wGlRq=pUhp(&H6Vp`v#T4{hXZ7 zr_CX?%jEdo+^TvuJEX!8VY4fqm?6)d!vH%y+WvN+P`lSth98_w_}2LZ?m8v7cDfsXsoVpW-)7wy*QF;K^RXSa?_#(T+x5GKUWDt?t5b0+gSHD*1e5&Z)4rtSob#8 zy^VE`cPQ%$><21vuLsVIjt;4@Gv}s{sQpI5z&>G^s|!{-gWM`Ie#u)|xfKhHY}!hL zkugm$in+P`;>9Ie%o~Ml5sZawF0(vmq%--x1d5l)m^>Xr*RB=$FlGkggQ?NelT)da z(=(|;F~5j@XO|Wha=3Wbfi>s$x)8@npFYaD#_a-6vFibPkEh%9f_r8`7VJ6%yCBDd z01dsET9oRuqcMOpEXZ$#Ssc&dY~pr=--1SeE6_MR-8f$-1iQ}!yCB!6pz;192>QL` zp&sA+&=}us1iwlwzA)6|TLtDX&h3(@XcP8He7*qnJEk#-b{jrBk9&7aqZdD#eH1>A zYiu&^x%4I!gXk}Uf-eOu-kCT=c@TcDfiMETU4e#32#Y5YZuVithr`ecVx1@l_2l6f zk#-9B6%gx1aesGp0n>U|z(?>(w7WDDaV?^Ra5=8ol^b;8% z@&=LPL{1PHba%wzpZZd2u8_*+%>s;^JCf9#Q92??&Zuf|IC;O%eE6BrGfKlWjk&qxh}DIs$73ZV)6XK?H)=j9z|w2D6@DXGK*)7@}hWTb}s$X2;+wy zBaD1PW^tV&`60Y7k|Q6M*uD#VUy0j|$xOb<S(SO5S3 diff --git a/release/src/router/openssl/crypto/asn1/tasn_dec.o b/release/src/router/openssl/crypto/asn1/tasn_dec.o deleted file mode 100644 index 7ad9a5c3f7d3675b371ca6520fca7ed4619554d4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 13256 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 diff --git a/release/src/router/openssl/crypto/asn1/tasn_fre.o b/release/src/router/openssl/crypto/asn1/tasn_fre.o deleted file mode 100644 index 7cd33d751efa179894e3e87cc50ae8a57a896871..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 4180 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 HQJwq`PGH|w diff --git a/release/src/router/openssl/crypto/asn1/tasn_prn.o b/release/src/router/openssl/crypto/asn1/tasn_prn.o deleted file mode 100644 index 5549b0c926e42b97a02bce8e0f00271526b556d0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 10544 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 ImM;_SR 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 bHZk&dKbptEi8Sc1TAdd}^Q=CxGF$&2(qB%L diff --git a/release/src/router/openssl/crypto/asn1/tasn_utl.o b/release/src/router/openssl/crypto/asn1/tasn_utl.o deleted file mode 100644 index d910c4023c8b7a38fad1f3f834051f2d7d1f1070..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 4344 zcwVhnU1(fI6h8MSn@u-qZ^Ne9*i`SW*Cv*_Y-5F1Mb^Z$RZ1ITg%*U({xw~jWS8BI zSSY%*6@x5UpQHsJ)@Y~?AzO<+2rY(Ev@b&OK?GkyU)l#B^g+l&A)Yfcw|DN{O>4n{ zW#-KJ&d)bM#Wdd*`WYtpw@9!UDZCcWa(n@?=-&EKm(U)ABOs%4Dej;v|`!zkaZ z0$iwCkre7vRX(3x+6)zgd$?E)iLn8TsIRlJ4hvNkhGRO!nH)x$Y%SwF@SbM-Uj_JL zz*@bmt*+k~h`^5x1Fkm!F4q7K40NoS8lkL69NN$i>S_w8b`Vla0250({?MjI{!F+r z02l*w7BkFqyMQqls+O4&F)N;!cQEE4#j9&)1B9!HQx#r}J{%W0wF+iWUVsXH-HmnF~7SP|pa0C|Z z`|FE#H_q!g-fd)HZ9N`VAZ>@yt_$j6%&!&#v)iJLLfm^0yZ2;g|7Y02dbBT%J zS5ur_me-+?k(bTELr33v-rN@*isIcLEuEb%CsWv$i@ZPWjLO*$$`H*Y%Sni)N+pOE zvy-`*Q+XOpMGKiCM5i;^)a+z5naaI5#0{djoqH3L*>WO%I-g5t6Q%4_HeJpaWp(M% zYO>DGq!Wd5k;igXG@YBtmHqHjx$IP?l|d$-NM=&4+!V7VjGJwxI#tZle4e<|!tBMB zY5^-H-)}O+g~*NV+57T^GWIC7cuY zj1RY@H1nYLsSkGxg*RH@7Jay&%6a&4UxJtKUt9Qlf%t~N<@*D8{hd(h9(J4K?>8Ur z9OBkm;C=;fT)c$YJA>kG1~=}X;PqF=g19BwIsWd0*WZ50p8>AFcE#&&KPn26o#Rha zy#6L6f8F5v+b;YK3EVfR=#=aTNBXEQ?surT?ZZ*q?Tb5yaSsEJ+XHUggFb)fusAPC zc8D#~7c$R~IC zM)NX(t}KLs{?BY2+xiOE7DlPeWmNA4>?{`Mam zek+kry*D(I%fRbzAKjaH^XT!>L!;wl0;A*OiNY*qRxHW^oX5d*b~;@+>&~;6!N~Z@ zvE#@1*!vg|n(5>eJ^~&l!5#!cmCR(gOikU!zZGgP|L&@IY$mA3qNz}if643A<7Kl# zJ^q1QrQQN|fYoRDSy!Lq>)zJK?}b1gue**Qzb^v8X8pU^hx&QE5ElP+>Yr}L*}~60 y;fL9o&A5JnGX*YAxSbpO+aqu%1a69YRGub%H?PY8_SFsIkv_DG+Y$bv!2b(&w^Ty_ diff --git a/release/src/router/openssl/crypto/asn1/x_algor.o b/release/src/router/openssl/crypto/asn1/x_algor.o deleted file mode 100644 index ecd10ea1c1edb50919a1ba6dfee3eb07bfc68326..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 5076 zcwXICUu;uV9R7OS0kbUYI>rX8<6bPRDAuk(6hq9$m>4o)$~0hNO1G9#v#zx*5fY*e zLEQtPJQxEBiHq)mM8X6y@c|+sB%1IbkH*AgF+7mSiw`Cw66^V$bMNjsr!AFNe@l1H zcfRj@=TFZ)_t%d`Mql-KJaEE;6>t%7cNwrefU&I{McCg4$ngm6SMdb#H2bVuLha>; z)oRs2u^Qg1@R1t6HvTWX7v+Fx`TaC-@=_b-IQB8@!{92aSF1*N1s1))mzRK@to>$y z>O!-V^}BUR@D!mPz=eKm@x1qL^+taLKP-gt?ShG`3n5%t=)pG&0bF0O%4Jw*=U~m= z#3nWe>)awA$B$d~_$N=d@bS-AS|6I+oAs;sU|eROGwU!Iu!QoAkFP=1t%ex{f|tp& z73){~n69Ia&I2R7oK=0mW#X)eX%KJ44jB&L!g#ihior@6liCQgbye89Dr{X9wyp~8 zK@2zgP(8jrI3Dq1|AEhQ&dSt^L~h*K-2kChNjB}+*}CyGTx z3+buM%;6kWrla{(0nuzKJ#lm@nw-dNiHi#CIPdOuNmtb{DmSuUE)WwYs-68>}aLY%E-HXhV?=loi>&f7%C9&Ucdo9Q-#kC}I# z3(`4fox*41?SS$gK0sQj!FdL@u}`a{d(;7pv2r8(wAebD*DFx{&dEUHMxpKt>Bc0T zGwxwccb@@Yo%u~bo!@9sJhL0^c4vNNsD2L&(dLBXcLJ*4iJ-^}$j=Yg?*df6Y4*j0 zq<)UyIjDZ~%+G}IYlG|e9aO(rZ|(O+aRsX1ZON}4uHVm4{pK3@-GSvtcj z-}ept?m_kQb-I3?aQzIA>UXz+-#<|O!jfMXT)$q;?|uWnZjb7>OY-Z6>$gqwBch() zfaaHy{MNwr+hhC1ZCwu|c1Zn5NBp}U^*$K))jwAUwQ)~%iaUVD4Z$7vq~@1z;P;{C z_nG9^2iNbS=Eo92{(Ly$_|0p6^U}VUaQ*IRe%BbWO6uqM{iylfmgct}uHOUO&v|eE z#E78O&tre+Y&&C8{K|BHc~qTKI(I2WfIYN>UU46@+kN;` z$y>ZyFRwBa!t#iOmupzgiU`X)NZ7C8HVwCHxI@F88t&3?w}#hfxL3oWr5Vwg^6--) z^L_mH3&kqVuh)28uk$|0;pJ~I8HX`o*Xf-UWcxQ{V|w=l+5WvD>1j9KkuaTuBN{%g z;aLrTZr95oe?Km2{51{VwCf?RZ{zp8%>O3w9qj)fHtym2cKogBTRpPA4?P}P-+_Jw zcj86qNK*e1h3~?+g1eE@^hJeV!|x}VKda#{G>l^j{!<`2iP~JQUh1YN)p{zOn93(o znPMJ8`}Ync#t)8-@SK#ReLMGz43CTK)ulDaTr^Y4!bjd7OT4}-Q97PagV`izGO2iO z;yqbOIXSoCQzfLPxO$fEY8j)gRTD!`*QIgd8I6^Pb=Stl9BSFR%j)~YrorLR-h))< zVXPJRz0oUjQNscbQ5hCz-e4E$9F@PA_~mFsS$`_+3%w;I?%ZV|@r?S} zg>a0@KH=kE2VAGptks99om~m9QTdF>dHub$Iyz_m4dRTpZmi|$x1>KJ?x5C9P54Ir tH#h0Oxk>*Qn(zZI&-1M=u^uB}oJ$(QG diff --git a/release/src/router/openssl/crypto/asn1/x_attrib.o b/release/src/router/openssl/crypto/asn1/x_attrib.o deleted file mode 100644 index ab095fef6e7550bd9bec45abb970612c0f491030..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 4132 zcwVhnOKclO82-FYQYUs|C(5hDp>_!*g=$GndT0qKX%q@53K303D#w~R2CW6TiwvfC&gX5TqF}^{(ho~yTf=I~nM!pX@~>DlGw=bt%qet90ak}0km zdd)DgUoVtbiU#$jl6~38F+yYYHhWz)yNuW+?eUlo=irbK;~4qkXtm=`#YrgI*}1vX ziHWm|=Z__(^pwudl3shQWM;CgG^@N^b!w)uVM5Pm%nbBwtp>entQ5+ZD^w}!Yxyel zQr^g}ujrX<;jt8VQzKoTqjY|K&7ZtnH4J~YY+Usxb5$c_ij51Yd|Fu_m&~UMtz?CU zM`J(1Cc}!g98{@R^kOBKDXLk|%`c}5<~;^`1$yY^R@3Ieku~F0D=b$jm5j3KvA#Yw z0=~~WY&@gz&fZGealr%P*rBoZ-$8M-7g^3VXCG7Cun^Z~<5Pfi*I!`2EhUcZB>Qy= z{!e=NT}$_5yB$aUdJ?kUum}Wh3G%#9oOq_3ybF-?ZnL}z@Vp_oc}tM>rUI?wB`ZMI z`%BR4f~)s7WW5C+y=##5;!#&G0$1-gWW78C{leThdLKj9n~w6iBE25Cdf!3T+t9rG z_bp_-cZB}M;OhMXS?`9A-p^3>fuPq1SMP6dy_6kyo9Rsn?b>XDenM;{io>d`skfj^tJ`PA-H-gie7(^UO=undO1b!H(_25!_|9V(VO)=?x{`JDmNp^*SO=159gwnY)$X;ZJVoT#=83fNu^F)0U z_2S(?!$VIs(cgyO_aInMX%&=uLRid5_>h7_3hq*H1fm746D4B#OCOYGl5oF*2lf?d z4FlFni~JBCl=u;aSL0P)en>>HXgRx zcUkwI82_QfNARh_e`VL{F6(3S`J=-Bq~Ko_{HKD&4MDhD*b;=}Hs<|_;ZcQuLgM?d zr0_4TIo`dh}!TYh`@f1t1tfljX+8SohEuLU66r*IhTVF0- zFEzJ~1wEc?ZUiCkC);ypo=ukv`4oE~qxK2~rpxQaB5%8VafvH2W^KK;DtPIc?INoO z9&bLk2aJTryH6N+s^B%F1v|~`;>G+}4aMOmf|^7}};kH2d)wwRZwWPeNRRI)>N zi^_2x-#*0et&SnSrr}|}KROS$@^qfV>=^d{8$asL(>V{b{ya_P5&oVECjjbtILW@h zR37Eu`S1h$`y6KD*r9UFC*MN{^k>55=?2t#`S`Smjr&|2u}hi7gMlrS}|jG^Ef=56LZug8JUht~9fyUv58qC-140K>*2iqF? zsE>RSwmEv?3w~fdAKy9zf8;ya5$E;MdCtQ@7*7ZzLl|lNbU=Q;-exTO?k?<|UlArh za}=-e_2PnSD>Kd;5WZtuDE&gE$G3sw#l{ixKBPzQ)y{rPwXP zDRnw<+SQF(W4+0XO{Z09!>L!QrJEa0u~fT|72ABsDK+x7Y+2n{Z&$18PNVvTx>3&7 zXrsv%*_}7ZKUeN<@S@#xHk;+*rXv!SuXU#>tWDDp;!-B1*dsya1 zME{?g@36ZjCUI<-V$BRo^;N~>p{iaA-rV>yadL0 z_aN}Hp5C9j*!L;q$-jqMSAUaUDxk--3)SwExTqzzdmLlCe?Y~H7zgA11{H5#!aIR6 z-d|Ah(uTMXpM1P$Q1PBi_jVFvJbv;SZ_(4s5#FqHPV)xGVN8B1@;(tq5Dum@R z_b!+Ut~?fyA9ec|Q_hw9XudpwbKZK-l_vsn6EYc;_4D4^0>^$bAU^?_j0t%NG8t~? zk@-`&An|<1mn5FOc|X8k5AcNme7erCNhm<;`lbEkKC#X9i=n8tIYR=tYwrH$i$> z1ykq7`Ve4Q62C6Min+=|oq)zG&E@HG9nhn7aY#o*l8)~54AFKh|0$q_6 z!L)Pky^rs{^T;R$`k^280O7vhIp_ZFx#ymH-@Wfq=VOD1TrL-wmka8^LIA1F0Bd|O z(jia;#$W{W>tk4X1McJ6f`1SH?&u32t*oq=AmY%k*!0I8`tya4HGR~fxAO;`ddGEt z`bHan>wW9ptLUBA|LcD@^nGxl=z|kQHv}Ibc^w4Zvb^UG`J}#q=|f$X9-!#}z_p#B zdsp2xQ1AnMr37#R|9Zk?1CYES%akY&!zEQ-DC%`TSoz-0AiTXCfIG_`q5E2~4!(-z zRph!@^1&<1^&er|ktm=|32jTn6M^sToR3drCtD`qcxUVW_-O3u;Ulp=@=V~~(ZTq@ z(4k=slP;IeW)hP_b5qH5mT)%x?94G^zmI)^X^@N7CucaY1Ri6jW>O4v_h1@oS`&ZSd;UQwOtM1C%t279bt#r}?9e+S{a%ZK5uGPcD$2WW*z76yw?*Yte@4k?wD?o^DUJBoDwV zJ41_6I0W4u(qmkGAzJX59gdSB>-UK<3`Oo4LSBf%lgifyFc!RcPqlZ!(nje=a-j}l zk|VfebSm2rwnKJqVMislyR>9T`|;v>!k0nBqX9hVOK&k0jDiP@@ES<^&3<~|lHx8H z4G{I2a;4rrM1ZKg3%oY+}$W=(EB%i=)ZySs)L>`7r4U> zXyc6}fyej}Uyt$K71EL33H%?IZ(nJC}9qiFb7JQ10~FX66QcD`Gfr`)<85MW*2P5IukS=qMjdhwWu>788LM}r6ZX~wlKFQ;eb3Q=!2HI?Zq_2p%*odXs zCKx>(Uc8mj^f{YvkpcV z{30ex%W54jne{w4x7VsMk$t&Xbi3W*8tC-XG2#tmZs^m5UhmvT>+E^-?j!&bLg(@Yz=uLE&ew(p~_5%e{T&z2xQTbl6M z5>U^U&>~JY0YX>q0{Q62y~HnEwPCp?+{5R!9Pc_6J6a<=@D%O^M{hL1*bO`y z-k|=_ei7Tk_y{L`(#c)96 zxq;6#&q9rs)3i^aJyf7P|Cg56VeJ1B*OhKi@yB(A^y1m+qr5f3VdRoN%RH^*XDCtt zD>uj=J%3F3rQedg8vp&uzxrE}f9<~IF0sDIOHCpOh&ctI>(;0;qV$#O4J!SoxjGp3 z0G-?9RijGsVO-to?`2Mb{i3>OnT+brG8yi5VP4&veAI`F>fUUZHWG{K{u`>KKAXPK zWq|!^V)zQf)qK3BVe*N5tksSBdwV|{jPws3+ZF6+X>Y-}wd9_k$|sUo=CiUqYu@GY zLN+;*ev?P+5J?*kWOZm)+hsMn5=ehJu zI^P;kJ|CCIPf2CB$ffh~RQhycZZaRAO6Skcq&NpzkR~pDb2OkU%lt@5r{uC**%>mR zZnt3^oOY8lGw0@JH3bPLl1zZ{unYAgczj}Nwo(s|#>Nj1_r*_V)9Fu8Pp6-&q%{LL zkCD*9B-8G3V2QEB$ETE!~v3%&|Elg_Tnw5Q_bmll=9^4&%S zo%tR_8`}0vB{p5m*~&T_o5&ox$WudCTLgJ^TsT+hiapxJp8-VgR?5WNpSSX zdUa|?k z2Q>HyhHBEh;I{Ed`B2x0r|pOJ(I7W@x9m~=L7L=28-`B{jPcKdQp_8=ij} z-#)PTe$Q>^`>+b%XWT6RG`{^{@pURbb6eoqP0wtfhv3j#`i0Y?;u!w-)4NrH&`41*8R(juVJ68Pkh~A@%=sHJGnug z>&?sL`#Z+x-)F_I7c9P?Grn2mJD}Aw`F_Uu!u#ZJ3y3cU7N6f^=evP?MXjF6=ku`V z`9AqxgZTQv;`=P)>)Kd3|MoJzceMBofW+ax?6^(PBqZ2}8C3_n!&L7;V|4*uDO>*41LHw(NLyxJ6|?Di`x z_Rct;cH8he=+W%SyD^2EMExfq#q`fG{3V7jG5mFg|BT^pGyEpQcNqQ~hX0A-|6*8Q z!U#7oyq)1k8Q#zEQHGNYKgV#1;Xh~i7Q=TLexKoc3d`|+5dNF#U22KGCiD-%CT+&-B9#rxbow*gp&}F#VSqE-Bn3>_c#k>HkX8Z@~HbmcjvHzYX4D_Wx+p zZ-;-k;ho~Wk;V5o)OmFMF4&|^G0}gUem8X5@S||Zh9845RzG3Ww?WQ^_lW(4g*)Mo zS^aO?^!wm-8{QA!XZHWV@Q)e(CBrKWH)uRi|1yt`E&|;M^B854`bXW&XIzoRG!XEr>J~3F*%o(oC8DS zvHsYo6}+MDqcMTdZhCGCVo#66b7vE6R*R|3nRG61_cT3^J#EiG-@w>-d}J6|W#?z7 z6H{pz?)hANCi%to=}gK#LV8tfZ+0$sR zBp4eXCGv9M_?I#@2I8I@&{rd+pGr*PFgbHcd@mDH3X<*DuVtzHU29y#*h*LZgPIH` z#70LkxESkfb|$NhBu*+Tvk2)Qa?1Bs(1e}6N7e^7+sHa4IwSdH5fZZVl_mOTHrvNF zt2T)~9j?>r?p*)~7Oy^{LFs z{em$k_XWnYK$}J|o&)i#3gdaKPvr};Uo{8ixvTb|Ja5&v%jZt5`esqvCZ7@YZSvi9 zZJV4bVa5?_+yZVkgH{nZmLj52I%Zf8H4nIuCjOK)&;@ z-zruXX&r1L5Gfq9dLGYea`M#RILO$E{(^d4dtMJdR!autTe|{DI{3`tU zRru#u;h$fHf8OG!bEUCIj)&2xaEBZxqm#+iJ7Qy>C8x`1m%OyD3jI2T8x{T|wLUkh z_bxBW{2@%KXMAZD`Ey$7Is}q537t?NQ>j?#kfIb-h&CFMR?$q=nV{^3`M9a8`7z@_ zkdVkCP!Nl-LzTLyL?tTL-6EkbDi+%u0U!M0(N6T8wM;K5x2}DjVG{AFl>yuD$KTs#n|!tZJ_Zt7~sMtt)Lh zX;__l7gn=wSGP8;O4WHM%cm*GQu9=!JkuFHx99G6RKXx*nhob4phCX zlHLe}-gi*-8WDQeq3V4j>5W0?-GQpN8=-d_s@@$*F9D%ctNWy>SS=qrP6&=l#jRsuV{&^1p4U&(TRU zysl0d>bjZ3JRh{~1jM=@X?m*>dY3i5B}s1zLT^XYtDDld148c$O>dRyEr9DyL+Jga z>D@AU-U18se$@1~rTxu9=socD7JS}aQ*ELQ|2P7%CfR+)duXVoY$|1BR+dhsLpR^$Jm@Tc&z!XLvg3Qpj6E&h?>PvWV9Qy7v;fcUQ%vVR;I z&Ht{3a~fXPFt*D!wV_rG;k`vvD-qJbl{Y)(y3_06Trq!&6KQ&X0~FTZi5TV$Sv4dG zVa=YjcGd}D=-ctyJQ3u!xKN{uNQ)TS5)@iQw@H)MYSV;tixmWO z@Yg}iMZtoHB6^WRiYE_BFa7}@d+g1#w;l@dz1>YSyBO+&;m!BnH{ZN@Gub>%Bqux` z59;PYD;fy+<^@{9m>D)v6kX_qXov88MN{*X4{Nnr9YtxJrP0?Qln zEjVwI&EvYR!>RWkPOImV_Iya-wF^AS&g*dY?-PwZ z7mw`@ob?%0-wdq!f@svY0jJ&*0&j(Nbv*-4y`Q8v2um-7hTdyfdV@AEObzcA)_LsF zg~pw+ohRNq7q9N?cg8kP%`JMYUU$ISm*-rYsP`-2JcoD(qKR<{e`*lS=UU}+RKi%? zk#UO)x4N*{LB=7pIU;Vp1krrv%Mx*i*?%^E1Kp&5PRMhQ`vuH>y5hp)EEIhP$CdHh^Q%M2M z+)T__&|cO^9etVXOg_CrdPt;FdU4&*bEQ(DWY*@T$0M`vv1;{qT5l=PY5nhosIe;f wAYB>%*9L;tw;)7^Dzc~MzG6?0dyD-^V8`}uy$&)$R@=6Y7MqYNK-cV z;6kS`G!Vh3fe$6?iVuZM!3V*yvH1u1&<7uj6n#|~*azWy&i&DR?@fynJSBY3`JVIr zoO8bC-0$hl^K)-Yk_49|gwT_K+W}xu#icWrl)^aT5b1A8`40bqPSWrB|4pwn_e|4t zrF5Sjhw5Xv+maybA?zr?t*sb3Et_B4I<-^`v;Ew~`B`4CxC~BA0$(Q+J9o%#vju$C z2JW;&&`7?gi~66<2gwv3c6EH))o{P7;>RxVX)BJ6ZVbP+6s*M(&2_v0sHQ3FGMa%T zU3TJj6O1{urzr_dlLs-Q4`Mn^=i3ryCq{r{Ptpp4*iqx?v`r}FcRCf0%XCiZNKju& zq=ItD!hNEf=EgePDR?trngu&Q#HpSbfc-wpz zX*@_ClvA8?8NlPzi7eM82|$IFdep4LX)UO#lXM(KJ3MlsjO!N{+yz^IoN%aw&HGfPITSckD( zEag`hjaymKnlz*|~ z;)kBWZUUCin%fI(C%%LMM}8gfyr1vUZ{26d^cww!g#F0~zplV2tnb6Jd?-V57_J?i?s>az=xaO42Hj~u& z$;L}NcJCA3G2xu#{5U7qCsT!lQK4}qVHMxgN95!W+8l%JoBeWL9Gi%DpCU^-Xs%>b0P3Lz9YhCK86dUB_2{J;eAP=-A7`DW!4*_Zizv+~ppIsOe9 z@;3(`Ew|5KbA~+g`TxmF*8rR-GwvRD-c5Z_=7ryk>2Pf<1SgXK$MJV2k^jKwbiw*W zxmN>}B{k6esF$3qJ8>1 z^^YfsZ}`F*(dD{^x}Xv50DZw1sc;GD7`jhG+mdKo5^YPOZAr8(iMA!lm$2ds_3;4N zbugKoZ;#;}^xcQPm!iL3^p|2e69#qT2s#VH2{fYEwABNyAzj!`_}qWjP$B;Eu#YbJ zMWg68KSATPZxqK%;&@4~@F9Rc?1}7b?~MjKso#q$LRFEb>J9ag`li;FEeic?{YIP4 zvrVn_Elt&p5)b9Ej#s0dae&v`dv-;UZmDacZqS6Is4=*WF$iD`{1^kDm~$RKj6aLR z8Gi}5{N%@BaQltHFqA-8_bUDpU4(o9ZB*rZkncgh19Q;i&1m{cRWp_A2fF@Nf9eo%bf7%zK1`97l=2859sa(De_XO zseZmTyM|Z}1a4>^XiexWFW)JqxXPHnl46W=g7qg1tl!lzTo5u3lniCAX;+$O42K!d z1v>I-MqQH31uqP3URV>#7k2Y;d>Xe6w08u5AIpDWwiV*~aKYSBlJlD5Utom7V%)i- zR9jz%n@ryW0UYZONy-J(ccfCk_fLTvUPC{N(v!nstp6}W11J74pInA_JMue@`k*Fs zAM2|F*L5m&#!vdGRGoh{_T_f$8&0JT_$TU5<2itSuKBb^0Zt9W3@6jigKC!%9t0Z0 z0sr(HY<~8S0NhN5y-v*ATGX#$SkqX|ID+d_Lwok2&L5LzU-E6kz{y z{U2~Y1v(#(`e|>oarrn02#>Hy?-S=(L7yqRIvEZ#oF}g0$ih-oR{VLP3_f` zIe+_Dp5TeVZ+r;mJc_yD^-_n9QQX6TY9`5h9d6uvPmVn)@`?HtGMy3D-wS8Th(8I) zb{*?%IKAJ{UZ}IRVBwqn2)`gLBmP}sPgwg%*n2O<^Xfk-zFx3aXt;ipxPFtkesNE| zf_v&^+*2>%o_Z1Y)C=i4Np++_sUz04R zMnJ4J-=MbC9P=DV^IJE>&mJAP_S^8>F|gn-;@rW1hmurN=&ZxfGI+AYa}4#>SzV{G z>cm*0c3_Q}k+!3T$uJfP!XgYm&NpHBF%B}0IlttGIlsi81`apY#?kq-#&xniyB^Oy zzIXmf**i&I!eXq8`dC$F<`>yJMV!gVm&tIWn9e=i?t|F=j@QxRl$F;FGc9tDa&>6A|-*>>N{U!L` zlRo1fPSSbQ3#V{@J<0YN%Du&Kx@^|2Ur47o+l&|IYB5THGj z$1sE#GJgZ=lZ?*Sh{tp=PV9_5FEEbZjk5eK&AEtOUBay4^Fp^7KGi^D7}D#3)+*!U z9I$f@o~_M1_p$kCIUj;kw4WuUKIkhS)2b7|aLV<$8s$9E4p_S2o|Ma^=YW<4azBh0 z_NifgKSN!j<+Wz&n(@HcBq^RA$!E;X^8vJxe}8n)c@F>WA0=J&d}iWNj#93^i+Q?A z%2O5#9{}b?5_2Poxq-QL0dwnp%q=>*4YIRabI$V(eS>@*{^6W_x+@TyG9^BHh%OZG zDe3#rd`cf73#km{ae+0S{M0FQvqDq97sb12Cp~SF+H=J;2V-y`%{6N&DL^!0b|j7!4qWnEm>*}gNjQxf#VI@^091FuDt&!9+O ztS_>yKN@`;T}97kiIBy}CGvME1|Wy(&ggDQWDU}_t1l~`51vb^7-b0tqVY$-77g0&p4EDH?UW24(j@tE`S}+<;sqSAL%x{6OzA0 zVBviRcDzy)9F_W+c%OnD?-JtCrzPR(VByi_JmD=9dgCbQllr-YJkO!T87JQ*O}IHO z{i#46_g*=la~gLVSmXK>Jipu8_W>-tQU!0#A}h|*!NOaq;DvMGRVsK}CA^tn;cZs% zwz{*=TZ@9XSHgP&EWDV47sr=`)X&6wO~E@M;mraI@34Xgld{{lU%|U3;mrmM@2rC7 z&4G7P!TVgon*$c!bpK+x3b4Cpx`wI zt@tej3$ISWdyoS!tl;%Xc#FWo>rn7?Jv-hj3SL6OTLKo|4;8#X4!qYDyz>%X1z32; zG-Y4av)6;83f`?CuaAVc6fC@(3f|Tnc-IxY&n3L&VB!5+!P}Dq?_UbuJqd3GSa`FX zcD$oG@Mb!d^%mrRS0ucrz`|Rr;Em_NTdm;vD=hn}z`}c3!MmmNam~lX+oIrAR#@}9 z8Z5kn3f_IhE0Ow{cyB3qt&)9DgM~M);CZHI$2+g!bxC+@!NR*E@XYVk(y8nZVClyp ze#lObNly?Nf0Y;xsg;jZcd*#%ZvI_s<`vmNw#j&3V3B$+3!eJOd>8!J_TBANdO2;D z5G{{L^dyD$urn4t4M2W)6!~Pf7twQz$xUrjUdYb1^mv)vyge}GMbKoE7b$Wbdc^xt zCb!=ZIBhdS^fdUfc&9Ut#!fD>e7Zu+hdbiEgvp;) z|5?!d!vjxrVUkHm7d6iAR2sYU0CGe7>-))muz>fsY?RyG- zqUax2Xh{FZi7dB`${pjxH;a$HPt3eU%(yI6uh}v#*D|iua$E@IzW;f|b&tQXHUyFF zeUYy2fj&u*MFR)SiVD>mo0f72VI%s#b5}1l{C|(&OFBYX1A_{zt=Y6LvY~zhCu&=^ zG`Bu)d+%-U!3Z<_=x!XNrzhQof>+3^6E70!jK9$rjdZYB?Hbqt&(}O>*&T1+zO2KH^hOMP)A~qf ztnUpQBOZ%vYF)Q7jTMje#CAvJILKF%X56;-$96++w71hlGbfUA%YI2~iD{CvUDVpI zXQhxMR<W59d364ZuO_BU74v*r@n$J zen!Y&l|#NdlOH1f8XhO=Unlx+B^r+kJ)%|n`HBAwk8^&7xLd8@XV`+ZJl+Liex@v_ z2KZ2neQ9}p^MGha zguPcq`?2uzzVPb-wV1~b$zPlVKiR#BuP@>^I5?mAgLdp78iTqATQ{~x1%FuZM+E;I z@iD({6Cc;($Hd3>0r5BIn1}C)JM>n5rphnkdFn3W>nk7Y!g->nio8WT?*YdvbZ~!| z-A(-LN`CGU{Jqp-o+kwVoS?4?`>x6MVIF!kZog_L%cm_98n#) zEWQzSK`&A0phXi7)lbGR;_H*@AK_6wWO{DFf5qxoC|bskh&rwFdZM){@^uQ0_3(cg CW(QFK diff --git a/release/src/router/openssl/crypto/asn1/x_nx509.o b/release/src/router/openssl/crypto/asn1/x_nx509.o deleted file mode 100644 index 28a99aaa64b86bfa2c24d8bba27317b78e403583..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 2616 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 oxQ6^LO}4~1AZ|Ofl$C)9k4ZusXBt+St(^ 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 E0&7*I`v3p{ diff --git a/release/src/router/openssl/crypto/asn1/x_val.o b/release/src/router/openssl/crypto/asn1/x_val.o deleted file mode 100644 index 39e477cebcebd4c88025205e8f6ded5844af56fa..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 2524 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 P9v0sj7T<`n!+H5{=%A$` diff --git a/release/src/router/openssl/crypto/asn1/x_x509a.o b/release/src/router/openssl/crypto/asn1/x_x509a.o deleted file mode 100644 index 9f1c1f638550d5a90473215fbdcbbd4de7968177..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 7924 zcwW_5Z)jWB6+e1XY$*~!-Aoawqdujs|J11(xyc&0StrMJ+>YRe)EOy^$+Gp5sF5R2 zk{5@KO_Xdi!>wB=gN%O2Mxld+Iqg2Qg_h+*_hF1eVfoOH8T7*#Wo#@T@}bN-=id8# z?>%}iiXj{9f;jJY&pE$)&b{~DcaMHFb?j&)5&^$OAPyP<45R>h({TKNK*Mkl#=vY} zLhrk6^sOKnLNlWV^YXHBxN_M1=!_BBKb7|W@)x|#*;1AG$7~svJ+|A2TfXnM~a8dqv zeS7_v?yCRh=0`*Q@cWGnT-!*)hZ{*~r*rML$e{;{edL$8O@08VUyoug6>xs*AVm2p z#f$#y=)X?!yYSIa@VGw-i6^Z8r+3xQS^;}BQQy#l$_B4lvhB_EA5J|uPE+wH?G~^jS~g^FwNF&G=|-$@T$+_?}-ib0ize@vADwR7j3V z)Tc1Vl#yd@f6<|FG1iV;a~b^JForiGt~V}}8x^$s zp4Vu4;*OyXYS^J=Y+$uwU zzS)F)!#h(wf4WW&wfs`00r|y>H@|!)U!Jc%J|-RVV!p+smd<#s{bsM2V%19&TC=r2 zrPB@13)JFjhAV~ZdGA7~r>!e5uTU69Pj#$PVml>FN!v>6Dr41fM_Xw-ihj8XOA9rx z+~7K~QG-?GN~PfY*5}1O4ziF8!3J_InqI5W;VRZnY3j86v^NU4S%jhJpod01U#l;a zYiy>gt?qVWxq=LBs;2kdQtOUZg2*>ps4p&h=UZ_14bLs{j`S#8WP1Od&MCWS7dt#~ z#rxaMZXbv-m;AGW>@tR3OyP0RX8<)i&s=8<3Oi~C@s}{{-onIIQ9cgx{2@Dv>uIq0 zRtzpMbjQG+7qTlFcK*2Y%{$Nny?#O1o0cGMna<5sfr z{ibn8K#%((<9j27?gMzPknvs0$~z0_Yz{-pT)`|ja{Jg58?QNQ~@k4bF??QR&~u81McPg)HRsWuKq{{{N{ zkLHPDGx@&2!{EIDKHkj!82ob+j22~HQ7aO{=7@xQ8ICh-&LH8P45t|0#c&$T7R8xO zs^>YNc`|33^nGBqs5p^LY@V2ecQb76RKi(?U558EJizcE!{$ySJc6~QY_z8%VyBw= z(JhZ*p?{3&xjom%z-&>gk|SIY_bF;cpnV&M84D-iI|^q6-U$uEpZ4_k4NR-`Gxgjr z^rP^m<)4BLOFshFE&VR|Gw4Qqf3fsw_?LzIpvTyh06+G6WE1!nEeL~|AFC8EdRamxx%*u9)MfSK54w7gmVlR9MgXg zCYb(P48O$iMTXZH{w2d348uxk1#6vhegXWFHLyYoE{J#~&TH_X%DZ%CsZ^;pmtf+B znF5w*-lFX9tla`C^NvC=pg`BWggT4#fI?impb|QZ@qiLsyPy&}%ka+PyLqm(R9}*L z2=C{Qd~<4Y)=12($HS^{bShPrmxv9MDV<-g)dcf$^Q_@x)#bbzmxE8vPR*8Hm_6~_ z%(NMk*}XNJ3O7A#$u-%@*`tR#sEp1nB9$^O95?a1tN{E4o;WuByxtO3Re(EtVcaJ92*4GRSPWk$iJ!BZBXVgCa@1jLnh6OGKOG*U+Ej z6X;L!DfB0K7{n#ODatr@JS@NaJrB#8FF7b{m&8yP{YZ#@w2S{}xIfkX$$cSy`7XTq zE^!sQ_!q+c>3)!9eIg~-yC)^rJ2@`v|KyYR&X4Y<$**I5rTkjT z?+xmITAu&OZ-n?wg!moNexgR+Bfo1-M&Yc+DJAKQb|%$6&&ZmD@BxKszMN;|f3k$> Ve-&p6;M)q%kvz)yrWqgN{{Y*T0vG@Q diff --git a/release/src/router/openssl/crypto/bf/bf_cfb64.o b/release/src/router/openssl/crypto/bf/bf_cfb64.o deleted file mode 100644 index c0da6a4c91b7919c0a19580cb6727d7c93f04d9f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 1756 zcwXI9OKTHR6#nLsN!n^jrIdgbGtf*T)FH+wT52hMBSnfJbRopNEtobW5!#hOyLL)& zVZlY1?wz!@)*uCvx@>{u8p(Bw4UYpKqVnms@WniiPU5REjzi-f zJ{w6K7;)?yqxfXRuxE^5*9fC!1aV|M#i8~Lx+XX4kl!~Uw@$H)mL_6y5IB1)Z=GNR z2!?PFW$XLS`X<6da(I9Td<_mlLxkAyfp74T8WQ{ss6IduDJ?2^klYdyFy==jlt&~u z13#S;=u9M3AU;p_9O+rAV_OSh#~6lg$l)g6a~>At*a;t^9EY)^@d^)qlq5kiA%LGD zc_@Ht(Ew5B;L|AwovgYDzwSdom(Zj8A?S9#ZyLbsEe;Vy2~NYrR2<0AxpxZLn;fc& zAG>kWe5{xzKl06-8e-jjKy_0;KK?It6K~ozXLMFCtJ|&lyHhi(m*z;LInrp3G@2ug z=18MC(rAt}nj?+oNDJUpSio@<^V8E~;n@76CpW@LHKEdstJRHCEuA4FMR&FP3GdrYC&84!1%-v)vznZOV zlNEs6|ml=(%g@!GbkL$Af0DjT(hEB->ov>GdtaUMyXE2DUU=cP zi#RjkfzWkI=*Wa|Z$!rZT|CgmMR*}tU(CyUt$s3WT73&x|9cm#XNregGnOgXk3-Gk kw|9~%mQ%TvYMJf0HV1sKt$lrV4<*t+NcT|!C!DQ+0dvRW(*OVf diff --git a/release/src/router/openssl/crypto/bf/bf_ecb.o b/release/src/router/openssl/crypto/bf/bf_ecb.o deleted file mode 100644 index 92bcc60f17e230d0039713f94785ca0b46987ac8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 1860 zcwUuNOKTHR6#nLsSEFrOx(Hfvf~`rR3`wjDMWwXb7Ohn*g6JaVF>NDlG9=@pD@9$j zDkMt_U6fJ5g%EMwVt+=LT}wBD3l~B>cOJ=|aiJbKoco>g-E;3b_s*TCSLUV#L4Yd) z!ssHPDFUGwZjM_hg#q+|mtTFt7yO5uAU)YZ!n0rPcH2cME?!uvK3*)>ms7e?8?~ZC z7l5r~;$Tw(o;SicAUiqC`}fnh2;&`8= z7R7+g2Ght-MPj=pUW0fI@w5bSj5JGnNrZTr^r}b`b{ZjwCLo&v0;Y(dDM2!2gv7UqLSOBb3EC>=K#-lbO+v?vSZJZ zMmYbEpuHB;fWu?^x&&{&xA2M^n{&olj_2;3iR{F4@b>Q`{;Y$^J$UyghX4h3&Ir2u zV@Jp5+ao>X=Q&n~H{URqFN$uy4cPhIK7SJI-n-)F+j4km2k#RY;COJ#z+wKZc;WprzPG`NG2H(+;XfYv+4#aYizIpaes9_`#qCajMaeR$Rxv$O7} z{h_eP9uKvM;kl_axc4Quq~}WIx(?s-!eDn;(mF%;v9Uz#weOwid>ny3`)q?`kC2T} UV+I-S`7^#wHcG|4VU{l2Z}UpSrT_o{ diff --git a/release/src/router/openssl/crypto/bf/bf_enc.o b/release/src/router/openssl/crypto/bf/bf_enc.o deleted file mode 100644 index 38327ea40eed6ad83dbaa82b4d0ca20b4f8a9719..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 6028 zcwV(wU5p!775?VV*q+_E&17*G1EzR3_SmhAu@+a_M61f$_5J`6+9Flz11QPb-t88W zYfubPgVI}ij z&vo7vgRg~v!5Bn*#{^`2C<_~6n50t3#Kum zm<3B&i_2@*3&86QXcG-{ETinGl>+qZ4KsdNF^y?xSZ^S@(9m$9VHq=!*Q}DNSS7*O zI%89g=(mWi-!`_4tNY{5O)CEn%rb5?AiPFEcw+(KjR%A`5fI*FKzLID;mrnwHy04z zLO^(n0pT4B2=DlQ@iL~2y@&U&otQGV8~0knoIR`{n)!K&F-_weDC0TCcJZ3bAu(H} zkfPz~OFFhyVEs}#pgCRIZ(Voz9L58B4r2k~Ee3?Q5D?y6KzOqO;Y|gEHyIG#L_m1s z0pX1Wgx3fNZ!{ph`hM}=!JO8-IgNeHX&^BUJex7MpHa8kuVs$m53O1JzE#G{trA{p zjpKK%G5oew#BW*!yx7X&ax06imVsAWC-Aaeg=3rN)?of}1LnWBne+YT&Gs891@AQl zK5DA?q^aR*GlUPCVSL!Uh>{V(wI=c*z|xqWFk(8=@fy-b8MuD{7#XBpr9Fl8Bab6J zHw|-b8!Xz0<8lU=Y$}*x+zG~=W{$5h*HkltS>`A=F&+VmVc=fI9u|zX$XL_VOVqQ> z!Q3O-ZcZy+Q7mIZVXwCma9U+QBeV9(e$+amQa#E@ysi3mcx zcOf@`6NZj*3V6z1Gl&tDlxa*-vww_l^A}pF^9#r{fG?8^GtNCp$#nNwAnDtG&fDMP z>4Tmg@U-gbcKb&%=Q&rOJ%=I5*(7%DSf4%Yw}0GwE<4qGt{`pijO<1Br4@e+l7l$8 z=GNBD9@=~y z#GNs>wlT`{N!9>7#D1J&KhCiq%k0M)_Tn^qa+3Wx(L|2%Q;h$ML%>fAq}S6Ty{3uu zdWJeI@OkEy+^rv`EkqI*ZMXL>w{;Rq}Kln|DH$WcZq52_Gl%GXt2 zKUP_1jdd=NlX>#ANS+=gPfO&f!hU?W(~sr`gt?g%Z?*rp+m~hhX-EvSYgm)Q8Z_1v zVjY4tg;`rKUji8A(W8-F-Xc7w@=Q9uKzj!1HF9@u3T{pE8E<)Yz1XQMf;TK{-4O{n zOX5EeI7CE-N$_U;k`X@+4DW* z^L6)P_z>ec8|Egt*(eFgg-B3FDES!siE=c?I&bv!lZyY4=l99;HS&Dj;ViW|OKr|l zo3qsBEVVgHZO&4gv()A+wK+>|Ig97;TIPxZyh-^RMHUpwZ)~=3uol!d->(+3i79_wfXNa=1M>eA|R=e)S9 z^W6sGZntNI_jh#2aGy(7u8{JU#B|{{k~FV&(t< diff --git a/release/src/router/openssl/crypto/bf/bf_ofb64.o b/release/src/router/openssl/crypto/bf/bf_ofb64.o deleted file mode 100644 index 9b1cf8bebaa99802f4fa7e5066014c8e39d7036c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 1792 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≀jFLg9lH0D2$(E$QoMyxp*r|Me z+CXNz9GS_TbttP5QFwQbU?QTltbfDLpQR&j$yBsADch$*f!9IqT-qV5GW7dk{%7&! z2kKOk+q>_Wb?KZ`g{`x>UMEa1cY_E6;T}RE>Y!Rb!K*qn`}TwBX5YKRY~`q|tXrO=lo#>2$%#(oMQ6|Lj59h~ur`)Zk)@#~A>A6*80hWp_Y?8#4wDaM&YF{Q zNU~MdEt6%v4ox~;H5+lteGIXkC7|d-)phWwJl>orz;bo7{i{p%rE9w?0e86%o;0yU z%6yl%P$uy_LMG)qyGV#0>};S%sB(5j7cpM6Wanimz*8q!Bpfy(}?*2D7I>P!Mni#=633I~SWZ|^Aw zYB{CfHBC+#&?;OEqoyKpUOF|%yO7_fZiBHj%?TR{pRcbwY?`su3#xe%*08<0bJGWX z1&xbV3O?vAVinuMd#UK%zJLDnSqFt+w|th>yYfLrrY1nDPA|iotJ+UY{he9eZI_q8~m4o|AW?YMYA>+&se97!Xrs7RwqYRvt zT=hy|u{wPbYGaUhlLe%eUHEsZRm^iJ({eq%%II&E6OZIhWD*NlpH)INLs$*xBI;I& zIWv+jQye-oGfP)8j6Z!wO1>VJX}4yJ2p%dQIV2F*OX--(yn5@S2961(=58>-i{?^D z26xx&Y3_)fWce^zZvr)RQz=1?8N%<(>O|OPL!Lewmhe>B>tEkfJa zsJr~3daSG_CNp4v@dmR&2k{KPOE`|dsx*naIEVj3e^dAAu*xS_+)Iq!Fzi>P_4?>s z`&RmFpQzVgdZ3xS@QTTbCdj57`qM+|_!1Dl{ewog0gg}6QCucfqO2vAi zdr7~c+Ge<+TLI6+>@)g_gMuREl-;;*kMdqcdeW{7USsrbeCcYTz7=_z%u|or=&Kv8`_A@6|-PLE5%N_2z{m`o8s4#X)X{AzNo;#tdf(YM*>9kp3!lr0gM4h)HNU-DP`c=4m~fufx!t2D{Gs{d zv93#%w;5wJ)o65E+-h4}W=UxLPy}6*ipe+En+~+|-U0F)^Qn5y>aCvIbNF^tZfp>| z*Z!R!%J@=md~A@R)b5>@qea)|i>($abEd+?s%~^BZNJULc%#u?F!jR^p#za~_lthy z`32_vP%~~+p^vz~2br;N!uc_|*l)MS75_Kx*p~r+^Z9_k<Q`uF;{msD7OmJ{d4HRV3x z|7;KTXL(?M8qxy%`C})(pQ(+jsimEV>+znIvxU2_>z|(o`8`s`KmDu51gDQD&Dc5< W{pu|N*21uNAjLKU{o5w~w*L>u4c^%R diff --git a/release/src/router/openssl/crypto/bio/b_dump.o b/release/src/router/openssl/crypto/bio/b_dump.o deleted file mode 100644 index aa9ef92ef0861cc6b70819aeea3e811c99ed5cc2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 4616 zcwW6&U1%It6#nLJve{%)I!QNnwP~HPo9-Iwn#5SzT4e2NRVW&%6%iquO*S=P(j~iU z1kvpeMMN1XKD1CUq^;&bnD|q*&}u-?Hw6(1(uYNg_|S(a1^ZAL&zYajo!Rt91TV~- zIe*_dbM8HN?(Q3p?B1m)3cR5p2A=~iwE!(Dh6ZgegY~!r^0=y4f8t+^^>p2N%X(|^ zs%2Ror-}yu+7(HkY4HEg`i61q`tBXTiL_on9?{hr^yDnbjvKnR2tAXdDr*tFuMn`a z^;;Khoq}kpr*CjZyGMhjY3S)2nCTe>Jp)YJ$g`*7TI|>}^ickhJ@-DbclVwL+X9%& zf1gjci?7X?_{wY&UziY|n^%=H<`v~L^Rn`(xvYF*UQ#|be^(aFB+i+dSTIy^%G8fh zo^RHnYu_OuPMghC{v~DBTvFx?%j(~xU}uV+%_y`xG>DXC9imzmRm(b@`pYV)Y!`tN zbN$uIC7gWyxEwQ_V~3mLIuumLRvhJ6bt|8;Fxoea z(ar1=-m7}4iH5f{j&SA7|8Q9Q<5BKx(_)&WNhUG1m2T}V6ezoq!i zsX=_0)~T@0T+ErlJRmp+&c)9Ib{=*OlX-CbI<0x?HG_K1pk6bm*9_`4gL=)NUNflI z4C*z5dd-NT9#O^lwA`yp)_LlKukAkMJp(vw@V=qv7VW)5#fK)zQk(2fHGI7D2<3Mjyt4@6%}971@bP{@5HCXygOZ7;s1hV=56i1`B{{+$s2UWlJ{pLtK{r1~!e_zryI@`E42@a;an4f5@NzHPzqzVh(cM5PS=>e`MN zcgPB7fXUKirBt;wm8tUd#8h=0JNNDyrt`y#qa#%?Elv5N@~dH#2GsE~=gOB||4Xc=*1F7kq6y*X z`9FeIO0Jt|lxV?~&#;_Y?=_ZpIr|sm%)9zitiKJ|;nI)Tj_4xmsUcNb%kho0heRB| zZlbNUbT$)>5`8S<*oEJlOBdhZ^kb{LuScUdv5UEOu|~V3Yqz3&le-VQ^Sn}=fL+YB GBl-_$fQKLe diff --git a/release/src/router/openssl/crypto/bio/b_print.o b/release/src/router/openssl/crypto/bio/b_print.o deleted file mode 100644 index a61016755ca64b5f1352781c3d8573b3ad519266..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 9352 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 diff --git a/release/src/router/openssl/crypto/bio/b_sock.o b/release/src/router/openssl/crypto/bio/b_sock.o deleted file mode 100644 index 0e61634cb68a4518eabf3cc129ee3d630a541850..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 10032 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 Cm}FG| diff --git a/release/src/router/openssl/crypto/bio/bf_buff.o b/release/src/router/openssl/crypto/bio/bf_buff.o deleted file mode 100644 index 910195acdd91f3a70129e9177fd28b454dd517e5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 6848 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 LPcwgMg9_1quHBZ| diff --git a/release/src/router/openssl/crypto/bio/bio_err.o b/release/src/router/openssl/crypto/bio/bio_err.o deleted file mode 100644 index c09dc7bb1564317e89831916a1563440f2324adb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 996 zcwU85%}T>S5T10aP5pt|lOSR|SwR-5^`Hk4OD#fCDG1&|(!>~Onvz7QC;JROi4WkT zc<>c`0-Z@Wba#>VgURIE{bpzL?dGl1yEY613K(F*oB@=PRBCYF%2@+8VGT4)^?^m$ z#n{6z;hW_H-FExjYIJWO4y_h%a_qy?*C=yb%vmza&&6BjPcq=1lR3cMGzFgcK{$Gf z>1D{rUIIMweD@{bjvJmdX9c{|@7u%J@$9RcI~$h@M*)@&;wbV**}~nb*a67BSrzxtdyY$zZd=lo1wR8&&h8Pz(sYDVjH)#L#b*0h$5;_M;uoN< zHvtvJTn|)VNM}mAqHiE{$AV8W>XOb7u?2Ha2=5qUO;_Z?6T$`-eNe`rTS|S&L;6;E zy-%k4B7dU{ KUU5PRjrarpl0;qr diff --git a/release/src/router/openssl/crypto/bio/bio_lib.o b/release/src/router/openssl/crypto/bio/bio_lib.o deleted file mode 100644 index 77adfe3ef0f645e2b51764dcbf6a3ac28854e107..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 12852 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 diff --git a/release/src/router/openssl/crypto/bio/bss_acpt.o b/release/src/router/openssl/crypto/bio/bss_acpt.o deleted file mode 100644 index 9d9c7c2751cb64e20f2fd0f81b53b1088aa05ec6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 6964 zcwXIDUu=`t6+ixL94AhS2?3nMh|l0b+JTosx`nn{T@vWV(3UconAFWUu}LzV*s`4h z6Vfckv^+#fw(&qEq-E8n@enzz&}q}CK;5MAP)*g;hd%5fqLudNtxr@Mn)f^R-p}9t zu9E`V+de6rd;Z+tIrrRi?>*)RhmRfc`F!MjJ_?b`5k)(QS|T(uAhvf0gYtpw=AAY9(f1SU>qaS?Y`7e3=H_v~R{+kHb>CQ@wezOv#8!HjIy+ZWHLhGltKR#O}@CyyzPEov?qNgYo zapdtq+hY0av>_pE`iX*+>hjJbi}`q!C>|jT{ubbG0scfxee}*AGo}P$vgs{PTsAGv z#TTonuE2b~zA4d0KZ!U#Ecn-bvJLYg+Ek0tt2N*)0Pm50&0P4Y+QoT5(jtf*`M5M^ zWBnWp`yx8Hhy8K3w-I%+&j5S}sM?5)bu5ppBaf{kH}ls{cFo3L7yf)?CDzL0Xt|uu zj1?=%F`{x|>};-LXU4{I#fni6>*bi}N5XHt-kE5p>T-;Jy4(fIIUxEKd*m10KFFI>cBCMgmMr73@wDYm{ z@%26U5_%kF)}MvndVO<(F)hR!qLEq}vKTGaI9}vftmDshlm#8CNxxO$cO&o^BTCg; z20%~>vHH&(a zH9q*5cOKr-1fRY5;wr`Hy0~{ji0>@D8EI8COmFsWMl2nm1<)Mi-H@LF9Ri&I9R{5Q z{Tk@&pgo`$K}SG;2>Kf6Wzg?{avs0SYqaHgcJH`QP2A&<_d?J2klb5LG|n;436U+% z@=;oi$UE(B7oX2|nq6M+j&$>#5_g^t`yaqv@q#$JcW}49+r?*u<_^S)rMGb>-ol-DbB+5P`*VGXHi~mxm1kk;uE>i``{%hYXb~}fGZDWh&!KaUa7LqS zm!O^VT>lU1sR+)o<=*j2^8EBytwuipJ0TPEQ7d@w5hKpP+c*QafOWI!zBkXp|LeNe z>$T!loNs$cu3>hG)ESfU;BM02`FMYd^t08mfvBAx<9lUj=y|*Em9L+C+8#*mPofu3 zmM=_IGNYiClB5&PsFFKhp=35w$xsp<1tm+l@yY2k1s>#+#cYX^Q`y|;%y=?0I(cBf z6!WCyp|5@;%^iqnIlSWO+_`22_bTbJe4(66%XY=oohjvVkQF!>j`UfCZkPbr6qPHP zO0LOGrIa^irCcU!%FdN0nHJ$H(2H9GPES4tf1v_shAu9e;lyV}HBdylf)Z?_bG_cLIu!ogyO_ z?=R%Vs{rphNxaSE;{Bbxc!Rju2iCy*h`e|)G>Ts#iMNGZynmAyFONwdYV#bt2js=e z_Q>DgjJJ(kyp2Ai4%*hn3;Voy*EGCta`6%dUMx&>TASzK*#_PRJ@WTIpkZ6_@P>@Ftm zB>Dds?3eE>j!nlKL6i2$8hGZX%LDXDowUzy%<_98VP5yhe2c+{8t*UX)F(2f>)Q;z zy>SNluCR>P+m92RRO9!B{wYHrA^r0s%Y$mXEbKQK`pxvR8uJ;n#L3e2Tg3gz-+<6> zG4$K$TWZWTZHda)_1%ryl=^N%-%DrJ__WaX8v5-t{|JLvmr%x^;{ z_T$Hzp0ly2##e;Cjef4_+1sxT{)WN--r(Og_QKEPE{rSK$&<6v8AjsNgTTz)1Q zZ!gp5WbYgPBKAwsS!?aQaa^1i?(;Y=e_|f{`8Vc413sCLE~a0Sy~bKNVxRWO-v~Va zl$w8;<%24(2cK}>^Xt#ES^k3BSJc@FmT#4Mt3&ohTz_0=T#tN@aUF6ga-H&<&-KeV HT+janMBzK+ diff --git a/release/src/router/openssl/crypto/bio/bss_bio.o b/release/src/router/openssl/crypto/bio/bss_bio.o deleted file mode 100644 index 38d3143387e52e5e81fba518dfeae90a17ddde75..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 9388 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 b=MnEC&L6I)oKL(DIe&QFIPZAgoQMAd2NIo0 diff --git a/release/src/router/openssl/crypto/bio/bss_conn.o b/release/src/router/openssl/crypto/bio/bss_conn.o deleted file mode 100644 index 50d87d7e30b9576eb9045cecf3a30e25c1bf52ee..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 9880 zcwW6(eQZa=m z*qG`8YuV(*G(#<{OpDSM`UkS<2kri#UBud{)20b+)6_pEE$b$gKc5xT-^4t~;aZVU9{%)p$GtP1EmfvWy z=%=N6dZ`qlv!xK7FA<$6R9&&m=#d5@!b=mq1 z*y7Y*Pu>aU>#3%AJ>9d=T@T&1-a5*KShp9tz4*2&Frf@jQm;VBSQ0EqW@y6fDoH^!@H8UB8UIC1THV)kN^0ieW+L$6+u% zp1lX-H{%^mXRV>pq3lra@X$9>Noq{C*#GcN)Hgn!=ueN1w)7K?r~CJ%vKF(c{;WGM z&%&pj@TrU5EN!LNOL2Oww1v)<+UeEOMtY^xN-vkz!QW>18-c&g^lCnuo1*CP9F@zp zu?U@uS@dR8m|n-6z6M{7iE_CUx!kvIz!MMULhSM(_}d?ghC1=xk&lMHh8-|2R>(sh zj!|vQi+KtnmK+z0ys>fQ$Qb!!e?quIG*wzeeWCR-mqMG-=b^*Ubtw1ma!+_O+PTe3 zDdgRAC6>EY(;t}rmq2E-tE%j7vi#E?1iy2Q zcwI}zB&{&1F@n5_q=;$_&^`*2|7oKEnp)s?xv!PVhg%uD(fW>%Dbw4njn+Xj+7L~Q z7k;nxQDgHdYP1f)PveyI!H6v<-zlu|B66e1ei~{o^246!(KzzRh^?TGTb!}2#Cm(4 z+jyK8<2Z)Wm#LD9{RGF8=t);h5j*%gU6NSu$82nSULJ<-FRI)EMhu&3sGc&#YTzx$ z{^?WktEZ%x0}sa3VO{GugY1K5le9zHB<+(nu^nvJ9YXJPN$N0)y!Kg-#GNj2%(%Z? z_H7IRU*^t?$$d}Iz1~kEPCU-`am3*x>-$ofLbhDg>M^)|8RQ~j50`#Ko2Lvr=Xj2} z??GXEPqDIo;uJ)zb*yTIwMfN>bL(!Qv#ziprQ!tM)YnIE=J_KoLY)dDu# z{#$gaaI^NX9d>@OtXJ&?`aF!z<%0D6!;i3!9p!p1<23bAt~S~lH;8-_(RXr&jB$^_ z@jvmA%-zMJPQ{Hyw6HA8usqA4E)-A~3aASO)P(}-LIHK5fVxmXT_~U~6q;3i>PCG! zhB_7T(77v9fj(jsGIKD;H9j7ezRD)&Lidqt<(=;1m+fAAgb!Lg&gC}@x zn{+|61<=Ox&-v`53&<^Fwdv>&lkqfB1NNYfiAn4=d}d_K?~B^h0Xi#c!!qcorbB1E z3)Cmeu{UsiVxBQzOYw2#^HTbms8b8ow`+~RTo$$?J{Q8$=Gdf%8YT@|HA(aY#=L)& z$2HT-O%Zys-iZG=&eiGCiFYrrS!ybn5^dgkkm3%zW!Ne$m){fNsCcZq$|DDH#} zvh9h2trPn5JkHj&1iAt@p^JTkjtRy+SLV4lPPIW_HTf|g2lMN(=F4TCUpWW$Xd`;> z%oKfZf+F`~q(t#cmaIXHf% zo?@zI#N|HJ+GEU}(J|ikllRylP8<5&#qYfDDA_7?$Kd-6{3*a6?9DH`&eW~{qwhH5 zhS>Loe7;Tj{7Lz{_`mS?T6asn&*0oB>Q?l~l(3uiN}Da${SY;T*mu4^UGJ_Y>z=H? z>rm4ef1Af2Gu3^xPUR5CfaN@@uAz+Jd`(3hV~c!8LQ+rH;6*Y`W6U%*%2N^Yu6Cbu zWh_4KJ~!XK69qntVr`$Prren@UJ(PtgYgi8qK$WZ$RHcD8uhK6Zs6I`*}2(j-m&Y! zHP*(KwieWwmhs0%vb}wv*^H!v_E$FbXqH-%z1d!B!EKIOGO4{oqXTLF7;YI$W~gN( znd;lWx23ml=*~9T%!67w?z=xBZ-0EXFKjxgI%e zI6a<9$Xlc~s`LI`yS8=iP7GvHDSen~OS22?-v&6WiHv7^vud1@)0-VuxNR0~nN)95 zZ+j#&G=K2e{_OZQOo!vT^jwoLi9d$Zh+WG_Dm$1?&V_c2AU-mZ8qHpB;w#UsMB=wU zzvAOszqg(q12-VIj)cxJ!yy-O$axiiH<9bN$vt?d91UJYH{q>v$hE`Z zL6X0p`IH>n^?7pRU2!swzHV~Ih2?bn_}NKry;D*7n;Yv5P(^Q&+;~{7Le73{yl-oA zt&lsmfZVspt#>9We@kS&L8|C|mfU!60q=lgoQ?Mkx$!PXB^JL+sDk%8Y58IZyYFbqz1izkWH!*?3>o@Gdo0@?Zs3@G=_SUx7E}7-!>+YIvd5m33rM1uw7Lhosx> z7-!=h(eUD{~Zg>vo%u2er&vF_4!y`$(I;a@MaWVtC9=gFjDIn=TR@O z6-OG;atQsx`6hO07h|8nY8-@L{Rv2vaL^|ViYUl#rKTK@`q zSbg`1{uNrkrST1vQ{TIVe1p~>qwl&}>IfGOk+(Mg1N^Oa@W+W9R@Kpu$hki1Xqx01 z!seZiIk$Rj-ly@a>9qRh$koDP{b7x7(D*wvKCbcI8vl^SCpCVb#vjo5yv9GH@uxMur15WS{BJe>J&pgn z#(NxF0P}v0uh#fF#ZM8(*P>NgzwC2gIBo%zv;W+= zKDM*7mH%wuKW+TyPX4oz|7;@n)hV%eERh@ve5HH0lHK;e18iI(mC2+t)bZeUIF(869}^wD$)xN^h$|oi?M-D9{C|Lnp|LrB zES;s+ID*>0dd&pX~{*k+na#PM)uVcgXusuw}k{oZHtEZDraj_iW~MIo@A` zZAz|9$+gXwj(5B-71AXAOz-2SegqG$hWfA#r}kd=xd1 zdC)6Lz8N(&_&IsEVSdb%JUMbIamf$^z15;dBb47$i2mUjm(oO94)qR9)Rvqc{8Z;=D6ZtRQxPc9K_z`ajWDV-oHxT zy;;sOq}*;p%5`%-;Ha47d;mS5}E diff --git a/release/src/router/openssl/crypto/bio/bss_dgram.o b/release/src/router/openssl/crypto/bio/bss_dgram.o deleted file mode 100644 index 6a7bfb596e5f463b4811325fc0130270969ba61c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 8040 zcwU`ZeQaCR6+eFdh!eNXYjKI8rhQIc>$Di-hQI>qkZH@>Nql68O`TRLabmX#IC12- z&`#4Zp-frH?6P&NjX=xNQkWFQX<;9l#uiQcqnemhO=uvEKcd34Nt5;=?GOF{dB1b- zeerwGp@lukIrrRi?(dv??m73~_wvkx4}Hnw@sRa+C`b*C=p&t|MW_B=!F7{KF|t1& zd!D&WpX0d=zippc-ctU!UawnRcaz-XkQ<*{?k#_GUHo>3e56TE4!O}Jf5u_|c$0ja zL*CaUzn*{5Jwz|ZV=L#pL{rrut$^+|eWaNon$lS#gmzH151{Q=?I-I~rbc@cUP=p| z$9jbBiZ`Y^vEQq|6*uX(HG?kKqI9Vip{1HmzpfFTtHw^3sr4hn8=IaZ^i{b}@J5`8Ct9_t+9-CM#yin4E8kOSAkyzeiis)F5UE2-0sH;{D{I2%f6S&;aIs$ zn}~GwS*NL)cG%;2tV6q1%L35xx zL6?;MU1-x&f}(L zIy_9jzpz>KpBJ^9q9x=v@)1GewT>dz>_Y8*uf^H-06pN7 zu{gO}!)Tk_$2M5!|DDI5NX~=zPM%9QbT#7ra!BWS`~maeF&jlp<#?vhi|f#3I~!d7 zzNIitny>x}?GNjF%~ueAlR6izaXin6Yh2AXZUOD97*|!}h`L^4zh0;h>87Tc?AvsG zD9r63bynJt^FcCq_^`%P^>p~EkNcmSL45Xj#T~nVj5$D!0^(w=@$B68nt-VM<1N+hR(f^C7@^J z5a)Wm?(bcX{(vrPfcp`PIQMg3Sk$`AZI*LCkMrw|Sa-Q%5)@ZV9*(^z&MtepVZy zH)~m(KZD4h!#IBqsq=^Pu$OBX=V9#iIf^YUBai072A!EX$7f)ftvCFLs5=BvdZCXl z#O-+>JDWz{rYb%a6KpYPr=vUuXF}xwr6WWVFG^;`Q2T(j){K#&mL1pI>*W4d(wON_Qv!ns@I22mZe}D`(o7# zdmgd(F+YcXZ^ci8;RIc%_QLOwx=S&?OMi}V=7|09ChP^+FNMx7eIK=xJS%x_K~dk% zxh1g2U2kqYj{C44@jkj74`aNJ^@?@Rq5hY}ejV#${O2mH-wGf3&H{gYVy_VQOG8Uw zUlqEk#(Hr-_hDZ!H;^aLSV!xuC5`W^Zv9s16VB0yxYJD`zvI~Vug&nf%9vc6(Xp<4 zkG0P`MSnAS?u^0nzuvrgEONDqT&*HktH{+Vauqdn88vhXH6&~2xGTr6Ajf-=<0<5J z0=eCdSeeLeL*=%Z2kz*x@|?V<&n+WAzfzHYq!&0}quBf9Jsn4o$jki|>uijr%Gw68 z2eSV5m!e|tezlKv+Vq^rW4T6`_zcuo-&&*9IAVQpf3(G(w%$1QQoqd+`_4s<6XuIE z{!PUFjVk7gTDSz6j8C5{K5O5D*(b!rm~*_lun$6pv&Md(#koW5C+|0Wuifk?yaRuR z=fJ*w_Zi&>9{K7{qc_=;#QSq{^2AsvGXz>HN;+b-O1a}DO7fkalDPd-vY0zMI)0?U zjeK$lFg|bu!u&w4SS%D> z1IKeuOFdh^95zyG%>LNe6Kl#-=M9-r|8|p?@W#7 z-&>?^Cw_jV$9~;UPP|{*8Jn!1oN-}2w}1RRL{7U0qw+fm+YM5~F7GCGysKdL+s0XV z-*xGQ5uoWc^qwcD-I1vLe!_M`)Uf*#a^k%Vys~Yah4%_M@lM<3v7Q=uzaS@G)GNRH zSdWGG208JTZ2q-V1Mdn+ydI@@26(-;aXuyg3pwpxf!=AC9zXAr)9!n)i(^vQ-9!z$ z{~{;eAqb)tLk+xtkP|O>8!$=Yg{gsu3x)%))F$)KdMrFvvg57X)`;`X)WF;B!h0Kd zA6msi4ZN5OkG2vmlf;Wq1MfZ;-VzqoSfh^aap5fk?;uIMTd9H9@4~x^gKy9_ZnZvK zc)@LrJcyF5K0MC-CDktVtjEI3xbRZjAW#TwkXqLQvb*+vIdAm!#(Zz3~yHxwM(6_G) z%fs|V)#jSiM5Wo~H;bI)higm|m1CDjXh5~OW;Dmn&GK963DxEr&_rh2Ei$E;_WHO{00}l*~Q0Pe8R=w<>K#m@ejKAuetbP7oT_W z$6WmLF8&8D{+x@SbMa*VXzjXn*{_tgi)7=zXuBnT%H7a*BedTGZMQ%3p?xX-vz!0) zkn3JNaCBlIJ32W*pMEuVUWgSZ=;(M!IyX6TtduQ0Jx;^}cGwJ&sFJkwhwuD?s}^MNi|>#bYl9U!o!Sq{?_>Xc_w zXotK{hT_e7Y3|47`8d;^YvZ)G$$dM}ChI-4>r?FAF6Z4Em3OE>RPK+V#2We@iMz)m zaTh#N?;WOhAm_1fhLYHS6g|xJPT+yI;?9x<4S<$3Igam@Jnkw}9J=o-y6lzm{V*Kb z4gdTSug@>#{fa;Cm-r>W#4r0L{Mt@ONBLvsr#f$wyRN zcpqi_cSz#%zRCFSlf?g!`*Bzu_DDbTiY|GSKOX5XzaOx_zvup5{=YHk-70?f;2y$p zLw@yg+&~X<{}<#75aYeB;(I~GcS*(9?SDe~f0!wfYlbOak`_qX;rle(d7Gr26_R$` uI0pCMC*#!GA@eWLA?5s0gzr$C|D5Ms54;C*9q@U?^};72*AL@xJ^c^7&-75;XYqDWDeHxiSuGGpz=8;ed0px7)T-FfN~lbv~l)Cz!h)=4%G1@CO*SH z#uN0L`2Xp<_j4`sm ziDj%y!J*i0Pcoi}^Y)~QdzWxM!gcW3Rvv%a%Hh+%2d{Upbiugp+J?jxeq5&vw_7H> zvK`9Zl4H8lWs`MmvxotYb>!D1{B^=#Cwz+O(;%0HSRA~+JjD_Ex6sYH-7XH$mN<4B ztCxnzALnP7=7}I@BAz@hUSeNaU~`y$Y(rSPzT$hnL%s^+%fsh=`!+Da z=H>{AZH#Vm?lP3SUeEF@?1(BO8SwWT>^l$ZvK83=j&hpZWQ@IhyY@^_Po;;fC%3yn zIqlN@+ORpl{WV*@k%t%V*$nEeR5o|(i|WmFoIrk%YAXXA)@u@GQmsd6o8D&~a&1ge z`~`fmXMONn;Ff+5z7y_8UG#e2dcf-*@9!CV)a2M*XU5C~wVL$YuexTqPl_)m;tI;XQxYa|!P`$1m>swsIb)W9Q+- z&ZE4K^ANT}`#cYh+o8DoVy1iPIvd*i#6Cs5j!A2xoRrGo`@wl*{P}vrcWQonu2o;@ zG+Rgv;NixZmtK0oDV%xj*TR*=7K%$XfA;)Bu{v9S_P7x9qT;Dv{;JZh%+~})alTer_AemPv7otJ znJ4H*#c#D}3;JR*XfHO;H)@rZ-)X%S(-K$!zAGg2`IhhNlDST+p-WnRHMVNO@3eKv zg;u>216nyB7&SQ)oTi^q-U5R_z>`LEuG%Or`JKgPjrYBR;#_lS$zSd~=s==z2nhPB zq~yyny)CIL?W_mbQ4!KTda&IT0-r0UVwY3w5|V!&(E7e}^qWxx2}z%$Us|#2jtX0j zdqCQ8TtA17cT;5)-C5{)VY_&IJYI$F_wK0Z*Vu0gk>3h*ygLSeKcW%hHDY%EGDIwK zyANY_Crz>6xZV5E~(DCw?*jqS4 zyj#%m%3~tWjAtXl`xZLh8sYtRk2?4UI^MZ4(cd!OC?dS?q2qm@5HW`%#M^<6w?=r= z5O`Tcc>jft_X!oQLLJSQ8)H;xGJn8Z6S?XC_+cN@}<^(PJe-S}is;Hh>zrel78kri(O`+WkD z-*XbLB<;Q)6z3WaL;fB?qkeGV_m`OQGDzR0W} z$18F^6X?fddiBL+KAx`x)L}tya4h-@_cb|Z&!d$8-za*nxfwY>8|X8*Ao+6vKa39) zd(Pg+a=sSmM}qfN)o;c4TQUC282?p_|4WSjYmEPAjQ=6VgIX|ZEsAqc`wZDyg$+>H z_Jqw&*y8LqHeoxn+o4q!Rw}i6djR=Dly)SJstnld>JXnnaO!kKF{ z+ddj?-+u!^T&$gI_|;ZrzENF};rJcNQIFN|mmwnNVICIWN;4(iB5ICBUD2b|WqJhI zV0u8-^Fi^wFu4%8{^>1tm_ADDnLaM^Ixr#LmE?r@2B*ixwS0= zvHY-j^D~~PyUbJlc4d|y?U!$`oSL>TB>j$P`heI+@<6{m|G$mn;l3wR5c$X)qwf<_ z%F7j|Pxr6melPuqh$Bh#D%(BNZ|6z;(@dwtynwj%=*^#q fZwH?P=bO)mYn#u5^KQzXgU>H`CsXp=Y5)HNv9Zx& diff --git a/release/src/router/openssl/crypto/bio/bss_file.o b/release/src/router/openssl/crypto/bio/bss_file.o deleted file mode 100644 index 5d6af4c6f31d92c517b1bb4fe7de86a8f2262e42..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 6396 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
      }#nXvJmrwi?oQxh!NFFZ>5r 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 nEaMX!mU8Ve+3Pv(9AC}{*DlAOaV> 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 diff --git a/release/src/router/openssl/crypto/bn/bn_add.o b/release/src/router/openssl/crypto/bn/bn_add.o deleted file mode 100644 index 13908bc723b5a34761fefeabe7a51300c321c2d2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 3312 zcwUuOU2GIp6#jN*y8TUnxI*#PmrIb}ELC*{H z?0$-VaFc#(oxbn6^t%oNU+xu;uIOv>?%qLsUm3uiN*``ldU2}~!)nFG&5DH^l_E=p*J1!mT|MSe))RN9i$RsoO1xTcj@fkU-Ou$_jG9#In?<$( zjunMvX(9&V<#yTWrKFaRZlk*Cnz-1Zv40Esc0@ndLJX(I3e|7ICS2lbPnql2pkg@C zwJwtp<|(Xf_mta^R2(;=bB7ZTOzMX+RGwE|{{vl8ajn^Z$<$-68(dpMLM z!nGdbwmrtxY{rf%?4h!Mf5Wr?R%MeYZ{agc4%|oLBKJ%~(SS{TGgRz}E}WD)YTo<1MMRdiZEoHp#O8Oo(U#n$l&;%+oXTK0ZABvK2di@||vL zAl@IR?@)a1`T%UJGh?Tx2ia z2q{LNfR{l%-ldT9f5Uho)bN&2k9UnoTle@?@jgL4-h&XI9S5%sHN4N@;Ptt7%R%?x zyCdK}{1;d46&|Z(_l3`{`u5O|43Uwf#cedFyH4%Py~VM4@gBAUV;S(WQ)(|!3xv7q8=6I(^W}doz@_;+% zo(vP(VW0jDcRs50A$2~y`cZezJrm~mQ!{)g#V1g`(Z1)_hSu)f9~w17lHc1MeM6hm z7r{2?oVL=(agpEVW_`|G=TCfV_$mJFPM-W$cJ!xmgWnX#K;X%^Bd*<)Yxk|||35(r B`~Ls{ diff --git a/release/src/router/openssl/crypto/bn/bn_blind.o b/release/src/router/openssl/crypto/bn/bn_blind.o deleted file mode 100644 index 44c5789c6a04308e581871e967609038acdc5be1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 6216 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 diff --git a/release/src/router/openssl/crypto/bn/bn_const.o b/release/src/router/openssl/crypto/bn/bn_const.o deleted file mode 100644 index 85e438ac1ac24c74bcc81bb4e786077c56abb8b8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 7536 zcwX(8c~lcw7RGNDLKFl=iF74hp0`7tgD$1ZBiinB}whMUF#%8LLVp3H@8T*epedg#pr_Ot~zF)q#)O*FH zGAB;)q0wm2S7^Wnbp*gR1kg5s0Fg3s0z0qFcApTiBfzc zcwN_NlmAh`d?`<6*O*#o2=eCn@Wgea?{8oDm8srJ#umrrMbEU0a*v)5dyzUNsQQlc z?aH6gt2u0e0Y<7R`I>|i)G#W*ESCjHV#|6p>?u-E`7NI|cH8uw@&{!u-p!#stse|> z{Fhzh?zLvq%+tIK_pEx@xO%~6gHz?94uxkOP3L#Dd6{oW5FHz;(`3K=am|PuQ#zVY zo@r*@$$7`i=`pgZs3~^JnCm+&sVc1S(8lRI^UfC8j^4F0F!WKURpfAKU0dUU6BaG$ z)>1#tRn}h}8xDr-U4P_B!4J7Dr&snKznxcHl{>Y|wOT}9u}*yU{gL_%sl(|Tw+}@) z_}r=fZdm%5a<@}&dpEH5ZJ(j{pxJ%Y*L>RkgY#!}<~iPUG1=sJaAnB%rcGm;pI+Hw z)cH+aa(Ug2lNQaHM!pYg?fr$^z(D850~1nDbkW?_)>qD5UPHU!zwX%!!IPoa(kvNW z%Npxa=4 z58B-qW*plqxV!dd#ks4ppIypFUlJVqVcT_(TkWaL?(yxkPk*yM=|{Ub&$8&PA?@7> zBHJT!=aQLCEL~ZSiC|dvzZ!T2w3!Q~xFPkr(xT&LX zr+wJznAe>1Y@aO4cV&KNVVz5N{nTJ^YU!h?viGl(&JMd$l;E1@)Ae-Kj&Nff#UVN-PJS{F-=qeD0OVbi1 zvElA69v=t9E+WxK0TJIr{82#2cl&r30=~%oqkxO6u%9jjNY8x$U(nAWae$i`?I9Ii zGhUF7x6(TxXwuY)$_3yFJ@|YI9i2Z<=WD5DQRv9b5!n?PUUaHN5}P82-%%_8l;4L~SUjGj8(_6H#xXQ-j>yIS z1nw(P_9>;~I8z+Q#9|Ks!uP9SAl_hNwJUNBz;Q1uRGv1-rG;_mxW)p>4$wmksKE7XZ;OgThY&M89C1-#}3NtplRpP71#qAo?kAe!8Ic zI}Aj>a}<6Dfaq6(^V0*h-wh!8bx`;lpw3 z$=m>3fa4C6IUQur^mE>>leo9&X6lD~P38sxRH?E5a6{-s?gX-#6#Z~Q66dZD5YZ18 zgmHWwqk9CQXfXrjo}E^j!^2vFZzuC znlE{NnG_~W3y(@n5k#f*Ln?D+iVT?|FQ&+bDRN+n%(wr17b|q+1;j;b zJ5|m@w^yA5x`XPx(2=BUCt5qH&KG?+Kr330Q2k!ZM)m$;*{J@e>DXfLGGkQ^#xmBx pnP8lW2F?`YOf_(37-yz|Gsie{4V(qWS!m!m7{}4TSz;Vg{~KrUMLz%l diff --git a/release/src/router/openssl/crypto/bn/bn_ctx.o b/release/src/router/openssl/crypto/bn/bn_ctx.o deleted file mode 100644 index 049f5d77e176489a7945e026dbd5aa46f190aefc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 3960 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 diff --git a/release/src/router/openssl/crypto/bn/bn_exp2.o b/release/src/router/openssl/crypto/bn/bn_exp2.o deleted file mode 100644 index d3a85a9c7d1dd6ec6b7ffd43a84f9b4eff078f05..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 3856 zcwUWHZ)_7~7=PZowu}|wHegIaypwaQgVYMspdos)0sAmvAv0MFNxRZAmaJRTb})7WQKhcI~80@#1SBbQxWux;B#r_k`T zNS|}ix@`bw+qL;=IeY&``xN`yI>ByQ$Jv)wkzKRiXIHHWcEu{NFRU!PY>lwbt%Iy$ zwZd1{IW}V&?3~rdW-Ng1QzbTQ61~XInGCkav=b%hX6LOQcERdpvsRg1Hp5`7>PH=b zX;XocB||_z1VQ}(g!HBNR9V{!fVRz>3>2+M@lBh=??#)%??vkJw6XzO$$(}kwa{4; z+NLu@$Y3re=3-(lCgx&dE+*z;VlF1;Vqz{P=7O;X^#)MoQ|v~2&9-VtWb~bMJ;^b#~q)UAhyQ@%R?(;7I`K63LN|04Qw>z-@1J=49IJP&SZ`bjLPUF?hMH z2YoKX9G80PM*37cZ_Ro{fA^r@THR_jt4hCsTeGTDvj&ennhjA~C-&QD4@XVkMmb{3B=BZy*)NfIKPRQH#Tsze-P)Wi$texWcY0@86x2y2zx?K`B zJCs)?cdq^rHS^91$xt5r*@AIJaPHLkT5M-)c0QFF%aaoI#fG~#r46mK(ms6V+4hyT z`}WN?hO?l;OuJUW*((DK;Cytlk`=>W1ZP7<`X1(!pgzEPt@%S=S_FTwMW09AyMSs7 zfBH_F-L*R?N^8aW0P<9PK45~%h7*(E=C&xSO8?rzR9#%oAnc|J% zuL+K~(4N~{U1zWO2zzT>du48q^lkez_P}u+_t+CZwSQ=T5Q>PIHJrYuJ5C52h7=Mu zf?}5Fy+!rY&S3xGz8~{kB4#iEiDtKFH8t_jcZ{Zh^rY{u2AFr=Tff`leYvZv>vc7< zYxg@Zs-4lzQT$$r=8t3wgGr=?9H$4}T_HVDfM{y4FbL6PJ`d4cdT4m`z!+^tqS;gq zqM1}WIX)B}Ob&0^%-N(A-M%}X8B4{}6WPtU8AU7m$1<5TZk~Lt1#rG`LINAUb45^1 z$jOh9!*i;BTpiUwVqif$vQS3OT}W zK)t;Qs9)|`AJo@{hv)QA^#IFe!Ye(x{ zl*{_$TapxYvgVe0aYP=Y9B?4}a{# zpZIXuhp+nZoDcut!$12lBuAaWkM4&D9s}{AY&_m0)c$G5I;PYOSuO_X@~vxp56Tp9!(#v!+Cz58a_m1e19hEhLIT` zaiSO+%cOHhh~9xVsNlZ6pI)Wv|G>tLC+9v;`0>7Ax&U=hgSlmh~gXM zxWHE=ZudIT)c}7B+AniDAq#slmp?0W{p$k%CgkqO+)ihJ<0(Na0j^&qieC)h3x0Qy t(=5?7Xjjl51-&Pz9^y15=;;vG`&H0QI7?xC$c_+w8vh3oeFpOr_&-2-(LewI diff --git a/release/src/router/openssl/crypto/bn/bn_gcd.o b/release/src/router/openssl/crypto/bn/bn_gcd.o deleted file mode 100644 index 3c893bf553bdca722c5086e289a1c5333698b3b3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 6244 zcwUuPUu;|D6+iy&jqUttF`3Iu32>dbtv3}nuuKZ58zyPjJ_Hn1Md||($F!yYQMhX~L#X`R&VVe2F`?{~iM zyVv*Lx|CV6j?ekdch33Ff4_2Y;(L)ugxpVr;?%~7wzd<+5;Qp?u`DHM8~Hz9#9IHP zyM9{DFIugZi`n=-jPIk~`P24o-}z|Zd|*G(8++1QuN!vj!#!u|56)@&y;Gy#I7{?v zXO4d5%+UKziGJx6=oiil^mFGJU3OCRf%7W8=_KguC^2rst2>M5> zO#77b38L2<{O!JN8EI=v;BH5pe@mL3r#omX9cUXJXtz4hE_a}<<>_76#&ny`H)60m zy`Cr6F7^!LZ)+ZP*Oqr9)Rk$|@=9Koqz?GR_clws=DWXwGesxS(DXi{_xfnC9)*4- z&vNC72PtndPlAT(|80p(CRL;Zu+^kYJp$jxX;;0EcGq_$#$oMHo$p6!Y-AL1*pJxc z5r+}lba2OExg+%Ep7by&`J-E6LEB)_=AKq-N9Hl2#3c9=WO(|9rM|e<*A0C=TAxv8 zUAXIH=#rDAx17E7wgY~LCdq0U#g7Y&$8;(I{=7-3$If`Z!FD%ot((7E~=NpE+M}!9^nAXm_f^hkmc2&#O z_2$*WUF)w?t*w2<`n&WM>kqXxfn51f#I3vuX4JH*=(MwV-)DPh|=MvYBsbw=g zg?Jp+b+SSi8j<)|_CGBpV;-?Y->jQ-uD%U&z`C38+m+Mp>!&iGv_H~WTRh#tPfUN( zPtWT5$2>cIJa`Gv6WcfO|H9TybM_)o0s; zFQduC=KMLJ`y#ji7xIIhL z4A5Q+*}{F>mEY~_mpnuGp6u&hz2$|f@qB{&wn-Q2kI^|@x95?Qe6#lfecr3*0iSpCZeS^2xw$0Jmv{JVZTrF&FM97|d)Tgn ztL{1HP0aHN=hTLrk8Uqv`m?&8+?;cB_mGx*7`2#A6vR-Z>LUT!++4W5NO8|94T zeXRacOT7!drV*F1Q8lJ!VZoF8xR=L6p;@iv|0U&$0J5 zu=h5w_cpNiHn8_Lu=h5w_cpNiHn8_Lu=m1`TZT;^?(y%<*RVGaV{hJzT{(+gIfGr< z!md1kT{(qaIe}eS>b_(X&)@V0zH1vK?OSi+0sdZK3m5l#IC=rkpn#{}d&aHJ5vEuV|g7b%Wsyuc~_)z*ouSH((>PO#a`gWF^ z;Cberkr)izY0r@XO=tcH9oen+O8DI86RwTlwF)x#(GU9Fyyu?f*U=r&vEk7TP3IjB z^D`67QOqdl=5ypx19{Xy9yO3h4dhV+dDKYh+#BWGJ2XE2l$Aa7-1FbCMsiQ&@SibP zJu_dME&|pn3eLE{YUR^4%9W;T)08V#tCXvhPtGo!SmYmbxusHta`UBfartC!x;Xo- zClr}4<;I?ynqMqU%`TiOSE}XU!O7z#${k;vpD!=e=>PaUL?r+BMm3%fohLL*Yd+&1 zd?-ZxlfE|}`abJi5!cPS`u zoq`|tY?6Y0VZPDcHlM3^f`WQKhu*&mr8iD(y|WaQ_c3IhbstY{d1VU9yZ&{ho8|RT zTiz*B@`g3v1Q_~#_agdxKec1QpO?V*N{G*eK69vmiv__wg@~WcdfA_Bn_ph@YtZ3y zsNc8#kDqSRKU(Db7@=E6z!Jv&8X1p;@OTLC3E?LBKZeW*Ki=ov;28Hq-h;k#_Tiup zXFu!<;ZKF|XF~Y1A^iCe{$dC}5yIy~xWC95|3L^p7sA&<_)kLkW(ape_-{k_MhpDmh}SiSJm)ljyj#g1UG zmE07XFULL45dJ*Sqx8Sfqwd!<{VGGm`36J8{ieplc|NT3ds63XK|`CAymbv_p6`PF moS*Q&6;bx&HGWjXISp4LivI(R^O#~ercm#-G=4xRyZ#4@c|0`$ diff --git a/release/src/router/openssl/crypto/bn/bn_gf2m.o b/release/src/router/openssl/crypto/bn/bn_gf2m.o deleted file mode 100644 index 7efaf1053c6ba7fe2dd4b0f198e34d22c88d11ea..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 15524 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 diff --git a/release/src/router/openssl/crypto/bn/bn_mod.o b/release/src/router/openssl/crypto/bn/bn_mod.o deleted file mode 100644 index 73223087f8b487e0ce1da245ae6f8c787f4f9ae1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 5824 zcwWs|Uu=_A6hHl1_OBB@W>*I*@O`YZ0<)Hhu`0ppL^KjY5F?4k?oZ2@uHEQbg@nXv zFqw(cCB6(}%%Ua`LsA$c;Xwj#;Dd=zhR5oI@xd1p6ETv^bMC!gzk6@LG7>TICSUG7 z_nh-Pf9|=bcYANoz88ExA2`DYZQxP>OC12MCLGwws2FU9O(2gu@XR7K9c#+BmzS3v zDv93){9FXT!jCoZTg!JOeqsgvM*f-=_$vNN_8a-n+}HRT`FGQg>;m|_->#kU-(0@h zpMY!C0k~9+!D2NE7poRrsP@3OReP=s_Uv`o4Ii5Jd=2%^RN8M_enNNxz(g5F+t#o_ zYvS8h%3yot6!eu1BM810hiAe<)enK_yRa&nhn6Ul!@!BZ4e@LfV4ImR{E#wP1hiMS z3@oEA(s%Ifn6QxmqZegKzZGTsW)nu;KFWjyZ+Usg7R9&Nu+a{wfb6r2$zy3jUGnF~ zvbB+948-?=5v4uMR|WG`!F*LPUlq((r44HSBwX#6b9)POYhi99nA0B2sfjsd_AsYB zM`a8wWtw$AK=@~24xSCreuuE@@a=?!zJh_c6~wLdFx!?t2F#YUS7Up!KR=*91L%)_ z&J26*I@pOCo_DS8Tf4{~hC50t#1jk+HlH-~_7L%zuSclYlS`nTA4X5|{B z;B3X7r#uP&@P71)^OOB+qq?0HIU?U?Q?Rx!mpV^(gJC9t)hpGUQ?tZt1*^-c365bI zRDZN*moY!46Xzw2XHhwGJua%jD8}U(6XxBXbI-d|t3{SmI`0@2;5E$_uerwk#=5(! z4``p&8v2k#j7A^Oe$x8aKDd4EGS>f+=Q+QK7|iZDtVueT`30!o)rA_UXTs0QIsY~| z7OwXwyuZj7cO+%BI%kJ{hvn4aVQ%>yr+!EAF0eT5MA>loeu2;Xj~S)&S9~ymVep=G z8SmkeXIiKQcv&$@p}p0P$QVJ6al#kBm+{HpsV0 zDgNC4bZ#n>o}4*4aio|&R+<=lyBT*!Gxp4}g1VW{<90KcrtluXrP0RCTxrr%vYB@y z84p)*(~%#W%H^{8BHa7v1z>O47D1;pzA0u~$oW^0!{Wo=qLt+afZ3cjB)J|*E+FV9 z0hG7)Vf==rjewXR$FE(In+tJS3%^xDj{MpUD&7^Dka!0`%?ruB;bC_lsCIu1aa{|z zJ;!byRJ;%-Xim~|@ZJIyFWJrCv=)9H;NpD(D&E(KcT&=G@IC?+Z@8Od(bows-j|@_ zS;$zB^c=h|K*cLd{;dWV?=q-(*O75c(sS@Gf{J&poBs`B0k0JY?|V@3=J8NZNqP?6 zcc9|klH%fs6MysCWx4tZCMVgZC$>cs*fW`xbs-aPdf2 z#=Fq!eZHMO74LA^^{)q9yzLs^K$~~G{TkkJ32!~Pcq!e#Ht%}grQywo-Fk_Di}#wq zO9;7CJ3lXH_{6ss+}=XtV7uB6eA4Xn78(Kid&bZEm~(DaU*wyNxAQ@O*FEs`A@2v^ z_hpcVU(@m{o)9ftB)V0j+cdgEqdPTvwMLsD55JO0qC*-T)@ZpC6TM!eBN`n5dH7k! zmFbQ32&jj4VSF1UKAma5M3eWAYV^|@{gOr>(&#reI;+u>Vof#Mh2Fg{=#z}@gpW1( zPc`~8v0h;EtKln+|BYDRVtf;>X#8s$eM78IG5Id|QK3WdlOxOW7lz+7{l7FiAeA7| zL5&Uzn#bG2?mZ1|Z#@hOn&&41Lz@1}8vTk!!)Tr!C-E`xdX=Ter_-5!hws``?t<(M`-t2|$J(tD1?_>`G=2kLJ+T+n+; zebA9mi6I{;WV0G{9n>{SFF0Hd9XgzzDUKA14l$l(ONpJ$XC!^qOUV!SHHRA|!6=Dn zOJtc1BgA{Cv4Q`777kFP@e02n{9|E9vWe{7#63y#?)pQVB!yh#F^53E$wuXd{%jfcZmEB0{jDTS%gFY diff --git a/release/src/router/openssl/crypto/bn/bn_mont.o b/release/src/router/openssl/crypto/bn/bn_mont.o deleted file mode 100644 index 365293c154525833edccf777a4c233bc72bba9b9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 6720 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 NTW`Tz-(`Ok_y^T;^PT_z diff --git a/release/src/router/openssl/crypto/bn/bn_mul.o b/release/src/router/openssl/crypto/bn/bn_mul.o deleted file mode 100644 index a0c955ab9880fbf1018ce60782a9cf85fc7c7e73..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 4412 zcwVhnU1%It6#jN*n%yK@dz+?pYpb0}w%e_SWsOx@DY_(8Ba~8Yl|Bf`rn@GE{F&XN z1)*atn1^Mzf`W<wiOp@F`Tand{#5eI_-PAV$3bk{B_B)HYSWTl$%y};%{q1!Z>5XIA2Bk4P9Nf zM1uBI7_VVp!bmPDI;wXW>8he(N7=?)mY9gMZlp()J2BG5dm;@?L1LnW5qR3cnaWz2 z5*KaY-jFzf`xAzqQEVI(6_B`JEC>*m@~lvv70RtnMN{(!@s}@sT7x;>3qee8h+k4VOyB2UPPa)%+8x z`FRuMze~flQW%*{9FLo;kpyT@Wspi3f{06RCtqhsyZsy!2=4p>|LF zZ7t%zZs{A@HgVdzM+t=Z9Hjr}bMS2N91IO84?E|;Jp&=M#d~84dSm1C?$(H-FmcpD zdG{_bKab%Rtuyll)%IMeSE%R}T<4yJM=8(F%$HQ(rk;A+!X9MSvp!0C&fi_5zP7-6 zo6DWse{FDiPIB2R#_10AEbN3yc2&pUxb($bvM%E2*v~fUU-kGImp+(F*0T@G(pKRz zOnQyDY;(BeT$#%{+QHqSXTj!jNwBXbmpu#Dt$H`x{#RT+F*x|Jo_ylKGduNNss0pw z2c-%pCX3lonv1jcJnsG~=3gozmCF{hNR1W>NX_QQj!iv3%|9kmGr3u$CUg1G<727p z=&=X-Z8dL7jZO_u9-kPVn0|41YI=4uJF#+Yg?``w>;1rNE;l@roh=T(I6a#y_}2=@ zM}2EYrza=#Q$_sSu?3LdhHZ|V39JieHXNLK8ysB}ItRDM^+EcaQ9QVq2d6pm9>DkQ zdW4>80LSA&dfGkuKEYqM0KYWWI5>{$5%}%hfPc7a2jQ;^<8;qP*YAG#{T>$fH!u5* zpy_u4etUGaG1tN#-!`wklE+>Ln)Xh^Z?8%PpKoE$gx}s*!v5xFdr>s)y$Qd){ZzDw zOAea$UWeaabiK_J+q(lzdl%rhcbGmHuC|D80e*XNk3E5=y>DULOFKBdU48^NM#y<+ zd*kf!=qKE@0M4B~>7lq5sFQLdnt8B)j?HWD@H*gUkL*25-r@Vdg+DELh8ozV`XXW3 z>yhPfK#m0Dj({8u$ae%}0q;;7Y`F58fZWyaz;~dF{BQNFbIrGVWVYTPkO!ULb8>$N zo^s@QDM#hK_Tuva`GtV|azK79AXftNJI-%D(_K`L`M~<8&hM)-9)a%y>#!Sk>L^xr z_2IFZ;oPypjJssFVn^WS?Nd0LoJLR6;Nc^~g(CHE77BU0mAeaL`66%3zciDb%JsAM z==979cQrqi!^#(gqiG0%cZ8#{1s)0=51r>OyALZHfDxYWvipbPkiBM|eJ|S9**&RK z*!`-L4#2z4{FO8R;mpB(IcJ}XyW!0AaVqD7q1OBOd~{M%c#dbfq$Qr|U%*wK?*xA5 and0Ba`>BCU@Vt4Y9e(e0ZdpZtH}DT1T_4r} diff --git a/release/src/router/openssl/crypto/bn/bn_nist.o b/release/src/router/openssl/crypto/bn/bn_nist.o deleted file mode 100644 index 58bc1a9188d341cc958dc3bf748cbe04a81c5d6f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 15368 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 Z&&P{m*~RrKfJ;7qRr0zACH<6a{{xlwKgj?9 diff --git a/release/src/router/openssl/crypto/bn/bn_rand.o b/release/src/router/openssl/crypto/bn/bn_rand.o deleted file mode 100644 index e62a352695f77d1080ea1c241b29c3564088cb7b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 4740 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 diff --git a/release/src/router/openssl/crypto/bn/bn_shift.o b/release/src/router/openssl/crypto/bn/bn_shift.o deleted file mode 100644 index c4eca45b13eb033fda96d1662a1b98c650612d50..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 3396 zcwUuOU1$_n6#nKXn>AVEB&K$0EtxU1I;LUSYD&`*+OTW1f=Z+aeJCW^>}mogrpZe6 z$stj(W!V+#gF-25RNBIlRclKhDwPz)$3FPrLmz@Z*oVFpS_yUO?K!iv*_k!L_QG)I z+}Aiq_1ydh-@HG5b06@0Ma$nru)`Oo)F??U@#&;zPw@N0y zE$O&f+Kd~eFs_$0{8$1Otq%NbHiZ`fTkh*XyvMW`VO+cei2!fMv$9KSXkYD;`7Q$^yr5U%99w1ZI4-yT9@q0zyJM;Y7D`{fG0E^{1> zcQ>G4Gc=%^{Alm_?HF$3HC0^Afv{|?9i8uAfQo|)hLu1F*aYm#1<2nB>m-5stPrD= z&uo$QMscUjzr}DnW4!EQk~*>~u9!xz4bF%62aM6!sHtlA<%mW+;t|C^F(txS7T>f7 zVnNx~8fe`+nxW5v@nniEi?c<3XI!dNp6ZmRI_0TOd8$*M>XfHC<%3vKdU1Q3x4yqn zeY>f?Yt>c7^{jEez&UO*3O4HNvD2*wa3gDL8VusOEaF+>v6s1Q!BwsEqAUk7o9&`n z1&CV-v)whE;T7I>st@xXa%wiaAVgrRZ3PH3LfedIVK?^0b(!`Zk2UqmR8O0{=W>RY zro46)o%O9Gnwd|1i@Yr6s1EncxTYYYJ)*eL7-KAp`C?PALV2Dx%i@~(m$JD3i`8-Wkhs%{J1<|xxdIH^#zvgcf;da{oX?W}h>roYOS|i8aIP3|c&qWi)vxlf zop}g@>bxblo`zM(3o7wf#i-}d8~chI3q(k(YR;gGBglO40jE4zkNqwmtk1>w6tF&d ztuE5sQ_)X4y=N*|a`alsQ*pH{=lGr0F*zsN`wBmXHVo#-T18(LakQGYjEe<2yNiT< z*CO5LnrLr)W~ojl>&37>CM}FoUIWA_-6M2&{1^WAyEZ);uKV zTqcR5y`-NlbgpF5*Gg7@L>-88I[M%Vqk&p!yMlihL#|$ zCrr*$C2lxJ&i9$%JC=1eu)wvZI<2kyJ&D9Sy0z!Pq3wE4bVroFY0;UJ6Pb}D^_l5P zKURIqq)%iJO^swm5KYd^AUd5sGCq0u7{45iPNk+1ok*pV$B#rulH)sfRE9Yy8b2^J zJu^0bIJ4T=8~(wgYY!qidTe4MJ(Tl=tm;v zHK$~cU)bZPy7t?E@BiXMdh9wsZg0}F&NF_2K2SRKZS*v_ew^34@Z&v%zg6c3;pc_@ zmOO#gb@#!)?yXSezk}BeqPA`de!L%O<9(~(4a1N3t7jigsNtQ2AMZ~h+*}3kIQ)2J z4_*j0Jh}jUcwr*#!76y4!H>6jeQm!jsNsEy3SP|h`#n(csW!=d`0uc)6>k5K-&b{h z)xN3~Zug0dVH(^>@05bGE^CW(^Ws^w$#IYEt-ZH-$5s3x;Au)-l;X>TZSRU~H`dv~ zI=iXP4%OK$b+!s`QyfKmZEXdCHQGk&ZSu@B$F+ap3Qw=s*>Ba^areE?!E3^P*EStH z;;8hA zsgcRl4tQ=r&%IZ>?IzL_6johRUSH9*+*Y|u@#Pp>gQ=#FRCm_O={hlrzQ`Y?Xv_WuG^03uER diff --git a/release/src/router/openssl/crypto/bn/bn_sqr.o b/release/src/router/openssl/crypto/bn/bn_sqr.o deleted file mode 100644 index 261d380962d18b9867cc760439f4b4ec560eec10..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 2460 zcwUWG+iM(E82|0ebhEjr(_Cc18fRqLtWt(GMu`%1NYuWBQc8pr3VX?{Ng%t~>~1gx zu?tlwSauXtTJRwcf_(^?*w)KKtNSIp}x{^67*9j{iKY+h>f0$foCMdY(D9UvA6x zy@>tP0`SF**}I{3*}a(s{OHZ&2X7AFd3k*6oyIp_4tKl^ZhHo9d8hETm&TE&b#LGW^g`&AhF&)8jDHJ9PiM?ihBmK>47pPvIe3$qZBcU+h+v$8mqg&S%Z^oWgxm zc)|DWvrn@c^eoTs=cb&0FngNU@OAS&#WadkvnXm7{dnJ&>yrO|pf|eev7YldU zzD?GrNcRNU()em7g=hU5Ny-(@C(J)B@&hv+IiAml`vjYNrPJ0YXy=y1e&DdrmaZ{Y z&Z{U-GPami{63UJ4daI@ru<$~q~qKj@0qdh^P+_MHt-M5bSN|@m*(WsoLridOLKB* zPA<*KUG?YNQ}_6M&nzvyYUIwGefv3M&YHF8H*7U8Ra>Pp$yOtf8{u24ve$y;lv*WN zay_iI z?P|4BYvKQ%rvU#OloZ&G*>xdJ;io>rj~1Qw=h1$r;n%Dyl3!Z#(*%A6h7yZRZf>h5I>DU|4q<(YhLec?5M+7}VWBG+&=U z?_csch~`@$P(+Y#1cQ9L2=e8H-!DY?xD=NV&q)ks!OyP*-jDf(GMoiJ_xW&0Nxxf+ zBB;yxbg}OIYSsKC)iJZw%5=V^M0P6OQGI91q2CDuzd5Sc802e-B=O z*{pMQb$6@q?smgzhM?p)14RVz3;_@y77|MK+IIa? zXsy&7(Vs#KWN>*hz$eCneM*i6_Z+2v3V!C2mi#`Kv~(%rX_PKzBmx|dTj74R@O3UH hfDeSc!{wyNM|B?vIhhFb`9y%<<8li4l1usv@i%Fncys^& diff --git a/release/src/router/openssl/crypto/bn/bn_sqrt.o b/release/src/router/openssl/crypto/bn/bn_sqrt.o deleted file mode 100644 index 9f9f2125672c98acab1356ba0508f6d491248f19..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 4724 zcwUuPU2IfU5T1MYr(3qxwbWV_;oh>+Rhv!GYS2`@wjew-xFALzOt#(b0uAl%vb$9< zCN{_eiP$B^L`Zm8!QaGq!5=`ax}q^YVB!<vj*+yUmLYw7GK@V0e!Pnf?~AVjAf2IGpGtZ#}T7Q%4*G zh!O5${QXtpErbjkr{G`}=XIL9Eg;-_#R!lt;h1j4(07&iW&(g@rcu{j-d$+dOz?Rz zsM!Gs#&8=3iLmko&!dJ6V7>$uXiZLPl1DwG4hxWu_n8n;5r{GZaM{Q|`EF=C88m?=%x88ue zUKP`rcyTyrt330#1@m|_*Wm5F2JdYP%zYMoEY|r?xp+%!?ok|G$9<~nX8(-N^Is3V zBjg$cSREK}$Trv>48@V!G|zxH#M)-`D-PF3J+@EXm|LnB9v|ptg4@<{k6)I2w*kCI za*}CS126jGdIRg@bKC64`IuuK+l(I4cx|loYJuyThQ)Po9XljDvi|`3FRA{~KJ#NV zP|x!GZ1LF`MOnj_qftrD<3t^dLALRv&xYl#bKN!9iS~_}H+RiE`xcX%iKfoOLT8Sh zRlZgx!}YEZGFqb!U2#0echVVgbLQ?{^Q>b1&^r4?4dXfNRdV3kj)E0*`2a7VkDaq5 zU+`@P%*3d-4>x&dE;AdEd^c^?_4avr7HjCQ2h45@9A_vI5@)XudjZu~824U-Q_I$~ z@re#v+qVwySB|5{TOh;6WYg_0+i>sCV4kSw@cMmI$`|MtK*=|Yh2_J`_gQe)GtPQQ zyH|r5)xzA^dA0S4kavih z@al_dr@vX7hdnz7XT!p$ch0ac9uPg4^Bb)0Sv7EM3PB8~2p?!a>HD=>+v4&^Gy~WR>|IC&}Jguz1cg1EMc_VoWj#Mu=Mi=S*F3vv5@qJXq_YvL?$Ex@~s^a^oitnQ;zK^Q-KEfVyq>AsO zY6KdA6nxeTtA~dlFcPcRK5>UJki0vI@3&-m$5dr3gS1lObc;Kx*r!S^W` zGI`ddlH(w^tn}t$Iy+G=!m9P_)5YmZI#((cN~Ds{Jws%ooX$*C(&b!*5R&vWg;JKr z!y7iH%aySb6KpEwaxQZ-*UjhA3k^!;EfbpHo6Z)}rLjB{O^;6%g<~;`$ktLJpBvwrD>b8A z&f?(8Qb8X72BM4b z%o4o~^FwqozCDq)Ej-iAFGb diff --git a/release/src/router/openssl/crypto/bn/bn_word.o b/release/src/router/openssl/crypto/bn/bn_word.o deleted file mode 100644 index 44dcbde0b950fa4ad2cff81b11404b4d677e2a36..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 3564 zcwVhnU2GIp6#iyryZzav45h%L80XTFuBBNQiUy65wJqR7gOxyHjIr&o+pn7+e;w*%100ggsmq8Q>XX2_ikN3NqY&-_S(T zPzbXkj0_w{-vwN%+;f!Z182`Jq1)vD^$Ph=As;H_Lxp^(wBfdv#47MYqvpfQAxee;Ff}Gi> zA4HV+3e;2$hvHUQPr+cnMl!~Y5hmv&Li_0NvYk*N5?QLFLDRE!YDFa-lCLsNzSra9 zxH-n;Bg81uRUAN77fUwTI$MroyjzY>*cm!wFAnAl!%$hKpvCMU`^=Bi*|ocVd;8+B zS9l-AXnOLUt4WSWhswMTSlxVnoG;+R@^1Yrw9x(@{TA)fDYnwelcXO<&nmEU*-o}X z7@w1Vsk}RJ2tE2Cw3D9-qOLCM2+AwfOWDhs@7i)|GSk$oX5UVwm%1bN?%&#d(U8f3_ZloGY#m&eH(Kb*|&MTPuV8 z&$&5JDFAvx~WsYu&u#=!LYVgR|%v^Tt-MNKqh`Tu5gj-m&ns6tw%@DHr(?0ja+{{dF zwur|V)Cb(RGwRcskX-j?;p=G+(WBy{I()buT_(0UuS$9eNiX8lF9LzL{Z0C+Aw3?? z)7LKX;~TuUm5Zar*JHn4K@jggf}jt1Vx2;%)t2Y9Rr9zB);yiX;( zPBic?BZz0vA@n!F`vO6{UnD#o4ZI)W;iY}O5d!X#_9_0i360w0@eb+T4C&S8TJ7=p zgpzxMm|M_@gYC0#GTt#t+7A*f*OEMBegyX%NJ9(l(gL0^En8%|HAJ_C=#CH_57C_= zT8BKe`f1eYmJr>=znAKRbG*f0^PT7-e?&;$=dbU$@(#Qp$=Ui)h<-gpzvZvFrn@Mf z$&mcCzdq*5J5loKewWtWI+gW53(;SPXjrpu6HT4K*w`Yq>TG@ha?>80nx{@%n1|f6 zX;W=oU_l{QtP65y<|k&edm(poUu8BoHBro;&Oz?!awn(t?BdLrl`j_RjOoJ3{A7`l zYib4Ge|00>FP=AfeN?5x8RwaP{M$VHjkQJh>N-mEIhtdg|K;=lOtCKS|Bl#ZZ-19(E6h8A_=?|@Tz!68N@?M?5h-4g~nqnH9wEQgyVp5Zukjzi#Q6|!MoS9-V zCQQJ@CXzlDEFfVq!6=w$ra)B|f)m`Z(8NSyT)1cq3rKLGalwLQ{La1ib>4e3fH#?( zcg}b2x#xcOocrD!-?eXdAP^vD1gMi58d125s3S-R280%+5UnEjcu4hs=#k@i`C+|Y zceFwLUchhtGTvK$@L0TFbI;$~gum&Tf53zH4H2E+XfB=8Z`H4F9H1Ynar(BpnZBt; zX|Woit5t)pRQu?1HB1ZDAbnq@wwqD&QiaU3OY}M=Lgqr5>U1+cz|TRBdCndwx04wq zEkNy&t_Oy0BI#Es5yX6(abYu3S}WZ=ogi}#S=B=u7&DEE=8q-(j0Eg8&5T#H5Mn!V zI0J9ogtjSoLR*3S*dCxQ8}8~_EF%BL#gS#lWi-0==+=ZDt-p|<@nWvXXtT|VvEyx|1-A4WM9h3;m zocia9hED}(INr&;mL;#IVQ4%rKr13Isd)|-px_3Ml(|}>^kekD975`qHf(}pa_&g`9_zI8~VZN|$aCH@2T>)2@!BuOHu7RVS;3z>i zszdZ$br3Z-fSQY==34QVqR+rvnc66G%A7;(m1{Ig7pqyU^CLJrOgE5U=9I(P4OcyI z&h2EZaky}7V()VaYA0ILWG^SkZ*%r9Y?TBx*%qX2j6R3`q~MikCSu0H*r_Kg_tXjL$aVDbM`88;9LA%3=)% zKkUH`g_oD{REzimiGm0{X}f(sZk%g$hYRQX z0bJ?LwZEkLAtlciI`_}3zB@x=yw4@<4{Kqc8+<OF8I@4Rdb#J0xpT@WiCn=GX>kfnl@hn=UAHCv)sHeE_nEK@8} ztYA&#rVdT>!;x4%TcFrv*2>IG#L}7Ewyo04lVZdBlVjVrZAng8Q&u5evXW!@_g!#i zDmlw=)+*$VTFHE_#Z(6?lUOsax%|Q|zc!_BC-QvHjp0}J`SExSzb=>kqh2C|xbBEnC_m0?2YKWD zPTt{Q2gu6{`|Wj2bk^NR-gVFS%DKF5CpFfcCT~1`14UZIdyl;F?z`fxq(;0?$s2Dc z2(LJ#QzPCdz22Baw4D1=8Abn3+bsW%aPHsWU-VklpJNk5|72142!9m z$zDmthoXN^zikFiW=v&j#p3&OT%*Zz^=|;S7fU6pSmMk7Q7;bI zCuhX8$?0q|H+9r16fH+pnP4fE*Yb)JP8WM%o3MEMcMg`yV1~pu*BCJpAp;JSU%evFUo#v%5W+O4gLTt>k^kt`1pS?T`bUCtj$dEc>uerJqsyqS9{% z<{9 diff --git a/release/src/router/openssl/crypto/buffer/buf_err.o b/release/src/router/openssl/crypto/buffer/buf_err.o deleted file mode 100644 index 8d101704bfaa504224b631227131ecc4a3bc7f74..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 996 zcwU85%}&BV5T3Fq;7@{_OpFmvVq!K1@t_A|B*29jLqg)MX=$k>6i6uvp5z&P5+A@v z@!%`?1Ugf;VRmESOQzFr_nV#Vx7)WyyJ=Y#q_7|lD+Z87k}JYfEnyYdhaE7mFbCG* z7~=#Z58omgXw~btD8W`WnWLi#d*#`6Yde{do-1b7BXiJDq}z{9rKZ zkLhJ7Ctd_H^n7;~NXH#qRhI>_(dpR3vE$hf-KLF84MqW$_Qql8kK(nv)o}!nc(bke zy)j=@`Bdq|2HhEu51Vxtko25nnC_72vWnjTXlM6~Q8sjhYm5RL{}Ri6>|$&w9q~KR z*PDZmbgm7$FQm&eUD`KLx=Y0u7$v5&R2;y{6T&;j#L%TV^@Om8MIV$g=$2An@{qoj zulFf*U-&n2X#WBH{PHJIfHYDh-ZOABqzanAvqrcRhH=K&ib|=MY0F~ KUU5POjraoyNknG= diff --git a/release/src/router/openssl/crypto/buffer/buf_str.o b/release/src/router/openssl/crypto/buffer/buf_str.o deleted file mode 100644 index 03cad454b11883ecbf938f3000dc8b72f2802b6b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 2892 zcwUuO-)kdP6#g=kCTWt=NjKfCY{eNEw-L$^YXy}>qTL@47A<8L6dz*Jq(87}LXyfZ ztT-$y7JP`W3oArn!H0#c`yhSTMe#vlpZ38&pb!253JVqy#&ho6Y3@v0yB@gQIp?19 zednGz_s)EFaq&_t7DFI0q%hQgJ8>XsU};`x1)M=1sys#V0gjcJ`;X^&fo9Tpp2iE$ zyq*lL7yoy>?(QEOKYgBdH)HMH*7v+eGt>BSFopXA0}lryfML1pbF&}AT|0(bG>mf^ zex6OBBn$AZ`I3{4~49&z-DqnE;-ZsO6* zf90Ud92lSZ69?Eg-M@*K^YJ|6T)@K_9miAMUM+XJZD%F2?G$B6wFt%?1=2Jm`H zVzHl9C}~y^nq`(Ce0EC0$1+Tf^661NJ<6wN$~_cMs8tp&)yjoh3q$6_xd!zhUg~aB z)a1ZMRXyr`aBT|2q1J^t&N9~yz1~ngOi_;yY0v2+>aiB7N1Dw%uf4W__8` zIOMcd+io4U9yT`W4PjhqHX8M;ka{VyZphh^e)LQ+rT#h)x>Mh$(U17Cyh>wKv0q8^jSEcD7?FOQ*P96A?ISF~+7iNbVZU37U%(k7g$r`0=%yg#(S#lV;n=g9}vdNQsdlH;sQMWP^x(O z%rL(khIqfi$16&|UBa7C;$m`eOwgk&k4bqF@eAglM_J~Hgg$II4ZoM;a^~Dryx++1 zsiLbrr;2Ki<4+HY=#eNrlnLu9BkReCo{H${h^}@F>thjpJfi2230b1?aj2q;lc(yZ z4$eQHr3uP!T3P3J@}i=%@2q@Y7yfDS&RKSaK86bs|K*7Ok$kQR|8aaQ^?O3k;gg6z zh97);aiIwH4ll2@%C(J73v8%wLA}Y<3wvStgQY9)l^d1K&E^U&E-#l`+ud@#-EOv_ zT;a;aO%oGHp&t=(R6#nMTFvHJCUn#9rFun;dG6pgk5fe3}K?u|ssz_|2iE(6@2PI)(90p6% zg_E|>E(p_wi8gUDfzm}afZe#zMq}*G7#AkGaKS>Y3m2NWAQAIC=iU35`(B423r})$ z@44rk@BH0+-+Om(cqkAEz@-3cQQ?3$!azjFNRPwCaRSGn(k>!*a0q&o#$y$>xMSP4 z%fug$M~b_OJb7q&z#}&lc@$+mrZ2&^2h18kkFgNx>%eN+w#Ur?*3G}|rRD&xn6=mr zvedQ*&HiK<5!Qc(ch*S%l4Ap0CcAZ$^*i-nv19j8Tfl}#IYIK zsMLRz?f}<+%~W&FRLPlZpOF2l-h;&|Jy_rC!3DyL$Q}sUE%PEG!bg1n`d5qP|ET{q z)xXWTgIk+A)x8Nt@=A5*1^48?k%)~4& zrW3hL9*JzmO3zOw#?n(ybqj+;|Jk8b-g?K%&sn56%jS&zBsp{J_LR;Ho=MGE=d0{a z=4a2R#;2{ZnSF#+wkPry`5T|jX04e54neJe^UVoMzRxGulCRq)F2;{6pBJz=~?RPa87uYRHG`F;v7-ta?}zUipoeG7q? zlzKU8YLj9YkmD#SXOHO;>HXl-b7%MLF?~Zpd`X+fQSr+&$EM;fHvn4-ubw59)cp|t zw4qSYXBG5B!o2E{`G}9N_3>&2nXmWp>WO5&(Z}mP3qM{6Dg~VzrSeTUBG-IJnkc?j z$uBs3z4I=(#63!)LR{xlK7LrP`Aj!a{3)M&!pC2f>!PFIh-*Ii`*JPf(Vg?I$}2yK z=I}rg>NBps)~U%{Dl;{g!@%h4Bd@-k%8pG>&yHhobTpNlFQlw|em0LP4|&$g&RGT5 zDsMSvQs#Nuy&CYm?^5QhnKWJeS8GSb`>7olcbh)yDDwP>$gieJoaZpjZ8SF=6K`u> zRM>}U=3nZD<_GnAdH;mC<2-*L^?sH(ze)QL)xF_i;CqQ14TyasAneRQb^H;DyDV{k jlDOLvm*3rnlXO2N?ylT#mbfkZ;C4yeKAu~pADaIK0S@V= diff --git a/release/src/router/openssl/crypto/cast/c_cfb64.o b/release/src/router/openssl/crypto/cast/c_cfb64.o deleted file mode 100644 index 91decf91594c6775bcc9120c30c9e93453b7b067..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 1756 zcwXIAOHUI~6#nMXX#pk05Yj}{PC_3hIB9A%N{}E0A%+;@BVl1u`vRL-Xxf^<%0^i` zq;VmMi)Pq61wmXuWTSEEPv9@GV?i>W+nL(iMk8xaa&qo>?s?C-?W?KTdx9XKNdi1* zA)q1wZZGCy4HQN%dcf1EWNqWGWK~Wq%W9$-;!DI=8fb77_z+T$Hl#1sL1-Lb%~9-` zxA57FVb_dc#~j8dGmLF>2wSEfb<>M|^C|Z9XE1cNR)PAy2DN^KdDL|oq ztAN*s-4Hw9cFxz}A5i^$BH*eDkg77|staOOgi=-Du0nGGL7B>;hWp7ZssJNy1bkTp zypwQ~pF}E5BfX&xW{m%a(t?4DBw>zDQ2?D@OXGwYZ3NT)s0X^(W; zBc1k0r#;eXk9682o%Trg;7FRmK?u|F_=rC|{ou(}e@u&NwBuT7HD6AqNS2GXeBL~j zvnyq2nPfQ$EmbN(D`ppSOAE{F@IotOiqP_zZ0hBrmQ3ZYM{PB8(&Bd?Jx-(-Qa59X z>{7b8TA(=T<$ON7RK{89BG7o3ii5{H?!Asw9XshCb|GTV8SIA9$XO6MJ0E8!JDA>C z+waCavA@HP(GB7*PQRnrb(|x1Id%+>p*`LT+NpUrhxWNJyR~MqXyu(nd)|G;u8-yQ zpp`cVJ6^=GJEd3`I6uMRKD1`XsFy&o!>%d0a!{uxf08^;+zmS~n>DMAk5{4kVjSjY z!4t2SacqGjsl!WZtAt@bBg5_v?CHQVc#;}ljK|%-{~gvEbMxRbch6=P;&5Zf()P>H n()hzONh}r;nOv!0-!-+2#BMu=tH++9Lh=X69{Qk%f-Qdmzvbm$ diff --git a/release/src/router/openssl/crypto/cast/c_ecb.o b/release/src/router/openssl/crypto/cast/c_ecb.o deleted file mode 100644 index 3748a05eb1c27e260e73efe6959d0245d6074773..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 1520 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 NTJ~z$r)9sE{{yR912F&q diff --git a/release/src/router/openssl/crypto/cast/c_ofb64.o b/release/src/router/openssl/crypto/cast/c_ofb64.o deleted file mode 100644 index 27bd6016b83b679aacac353b446a1769f858ca32..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 1792 zcwUWFUuaup6#w0O)8r=cPb?C*wM~=R-b5{zQlrdLMqT0>Mvyuy6dBZ}$-2VYW=Vt& z1c!fMf^cWp!v=jwayQqN!mWR%FHQ%(_$c`5Lm%}~pL`fxe_w85zXZh{IQ+hIzVn^) z`_4UI^8Rc2(~6>?D++WRTELzL1R|JEx2+VOKp3(-eA4|B|0(W+hpy{(t*g`#>S)^< zo&mO#iG!QkmU}<>5q@y4;CtsieCurC8>fbQP8nZ27x9&I0be>reBr!prOU0qAuVp}HU8I$|UpRe^jE$m$r+J*$k*s!D+I8e?%b1iT%l|9Seu z%6RTLQB#hfmE4AHEuiHn2pPboPv^1gFt0I5)QA&AA2CHdirr+Mc#N1M4iU4&Vd5-t zgg8Tt5l;|DiD_b-xJX>Uu5}%EoWzX=64xF;jRv6(Q;$ z2RO&GAZsf%Nlvtl`W`+MG`-=}6v%;Sh>$&C( z^QdRUI@dVC7~qoz?@G)xMQsIRMj~>F`=_n}AJzl-Y|@BiXct-vt{V!fhU=cCs$;*n zr=ns)ocwsC$_EH0YmVg=@Uu~c|>)m$#Dy*TB$#UV5E>YEEo zo97EJrOM>?43#A*K%m!#^C5I2E#&9W-R z9g*UE9s3oa=Qn1N8t;n}@)9*D`49XakH@G3oj75iL~p(=^h$Sc9=&}Lar<4eIINpT zZ{6Sg9&b@s$6?(yc=;wfaVa)vP&%h{^eG(nPRKNkN?%+TB|7+(m;9OdIF-Lx?Yg4Z zf}5OgkNnb-E%!ne+3&+2E+o~+3guy@m_|xf`54?ORMFj;##%r?RC9E)R32BAnf(fPpt8}VSdoR0T2BVLjV8( diff --git a/release/src/router/openssl/crypto/cast/c_skey.o b/release/src/router/openssl/crypto/cast/c_skey.o deleted file mode 100644 index ebb5e46d97f020cc19f2343f646e4970d148c5ce..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 13828 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 VMYnBH`(IRmVT&67qL+Tr{{wf;Y9ast diff --git a/release/src/router/openssl/crypto/cmac/cm_ameth.o b/release/src/router/openssl/crypto/cmac/cm_ameth.o deleted file mode 100644 index 2d615888efe91fcd73d38696841aad67c62fb7cc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 1688 zcwVhlUu)Dr5dS5)yPmdqu^b{;F@-`;s7rg+2mc_-p#?ehpcVQcq`6#rJ-l2(5~1~> z3JSgmf=?EF@YPp8g&(62{Q`ah-N|m6O^Q^(fo1kL^P8Q?%--JX2i=F7rXdpzb>s+W z>cEtV-fD_km_-AsG=Wd}2f57GmA~-UacEf37l64tz?a4O!vmv+Pp18UvexO`vRZ3To?W$8S)1{`v3So< zoIck{B=k$(i=z3cOFxPinJ089A z1TD9{@b>KO$Rm3|hf>BBUP4Ms4YY{@HV#~8EMlB^vSL%Cz}&$1y-9M~7aq$cAiXO! ziSL#CrquJ2myO_0yhVuFoW@&1nlscD-bIC1k@zN1xXYU;o>`Il2480sd#@&P(W*)w z)pZxe^FE^}nXijtUx=sPxh(HiiT4%s3p>esj$(aVHSv9>v}g6vUlVH+t!{F?iJ% zf3F(AE$nPzU$i#Jps%`{699{>OV diff --git a/release/src/router/openssl/crypto/cmac/cm_pmeth.o b/release/src/router/openssl/crypto/cmac/cm_pmeth.o deleted file mode 100644 index 006d7586dd543621bb973692b894981ed111e41f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 5028 zcwW6%UuauZ82@t9q-nF!+a{y!*6F?TZq4irU9GU`(75i8Vyi_u*&ZZI)4Md7q_N3n z3o^slpburKpx|K0m`r>a>sEXabl8VIDEP1k!3hc#eDGlpQ-%}~FSdQ zZqE7s{l4#f=R5a)dGGM>5ueWo&hSA9TngZ~W`JfLMh6)c0}~ztc|3&XC0KX(Du35% zHHV7fvmKwu*W}F}d4HX}et6|xe4|bdmDNYeH?sG8?CayNACKCf*S_Zfz~x?Z<&yti z?RKvPUoRSPbFmA)TJ(WtZH23P6c*-#xDMcY6V73r0WMW70R5kuX6=9#-P9@WhwXP%b04nJ663F8{M8Vw_+xOp_bq!C(%IsqJq<8v&k*U^^IhEY9^7*b zmKH6z#rCe_-p#pXFc&It6qa?fas_QJRC!$2EGMQ`NJMoJ6XzKk(Wa5m%>D$J`wXoe z_ZEbJ)yTf1fqftDa}8r(0yd#-troPn?fzaTZ%n6xK5&Wq)*O7o;T%2(tteSI8^%>M%BdM@GYEgFTu#R#t}aBDL` zF*dCCkfh6NpV!z~KR-9h5x#4pJ!`~{zItr8F&H0+0(0}E;4q3i`e#PF+CN}O{G&g9wt-H+vQ1!r>F9HyHMWffZVYS zfPMdif=(!MUCgG?^KYPsmj&X|e4XIp^(lD6 z0e(i#aPWE+yuk?XzX`7!T)ZPb?>%2dyqsj`;2l)(CL;U}6W%s(@g@aczoUnNc1U(U z@z5DMK53jmy|<;h_erz!&Y+=VaX!#^FHaBorFRU)CgTw^*8oo)GQSCauYolDik06J z3DF*pNHr^T2>VPvR)F>qQsk`)9cHX3O%;5EpBz4UOGYS>6WEiS-zhx50>@ z4=}o2(O2mRd*9L+X8I9Dz6CO3J;~%-6nQ6{5o;b_ry}o$IkCRZ8WpZ>KYtt zc&ML#_R`M)Bs0b2M7C6fp^+Ddk}ne`TMdmJ=a3j)I$xwIht`MR7)@sEa+3cA9iJ_v z@;1q`g-o(MmBfFfF!cI~(XrQ(r>1S2LmkN$QaNTha){xU5a3iUl__!gF}|}kw*~th zmtZhtJNnAu6UkJG@&ZaXMg#xkvG1&+mg50bOq0!!sx zlHGvHwdqtf1iWxJP(vNRgcBBr=D*K++ksNQs}Y#J;lF!be?2S c=Sd;cd6Hi`PxkKJ?AF5s@H%1dP^^=G0kDCo_5c6? diff --git a/release/src/router/openssl/crypto/cmac/cmac.o b/release/src/router/openssl/crypto/cmac/cmac.o deleted file mode 100644 index 3e09a6d8b72ec03afcda0d3a8cfe80790660e13b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 5844 zcwVhoTWlOx8UAK=?f9}v24}JC+JTvP;%pPM+NQ2BP{=m6lT?`2*%4^;zJL`#Jtgm}sek`*C9V5EY0h(x62|L2_9 zJ#%)O6vRlYGym=TFXum(+3$^x?Kcbq!DFBWH42Eg1Dh<25BgLBHnu^19&Fir6aU4- z)}Q|P^1}T}r4kT{I{B86JXI&(8;Z%4I) z`+mLNce_cKvHMb^aI70J@vFop6yh5gE;Ik{7;!6=_gz1~1bn|$A4LBwlm2{c;79$AeU0+6MeM1x88gmb>ML}Zj&;bd6*XiB@mBmCQ)Sb!3+5fX)Gum~ zHG7b@SkLdPwMfHr1Eci&LOA zU7{Xdrgd$tqZ{S;I9@GwW8Ggrr;v@a?{8r(PFTfYK92KT_utNr_F$-dSjgOxr34ZcC7n-Y@tkRGEF_01?vXua!lfUndT!j*Q7J5_^8e$@%L8w z=Y1J)l-B&)tK7RR=l+*<#^6W9c?XC4MSrJd|5FbPrG?#c8vTloix?-}BeaGgbU!G_ zzM{G2AFYjmcb#&s##~)HcC|KsoH9mre`-^6wX;5Mu(rEoub6(Xq*r)8c#deki!|TV zD{oS-+@xN)LA@e+B(3!b@0~97Nd3BdRqk(P?BuyF6+(O3cG>H-`q^ecU!+_wVn;vE zw=a|XAIrE7*GZ=KJM+0G?lj=@`v%FFzd>^5$BgZl3_2e~-uqUZE`V|ftp~@-qS2nd zPWkrwXNAbK8h@dHS}alDpN%HBmQy|NdIR2u!sGghc+C~^SzV|0{}2=RSPjGWF>ZkMCJGt{aO{h%XAXaxq(m7uSx20Twg*M?}|z&vN43~ z!g|Y!Uf}lyP0u!kA6@UenqI;bx#)Ul5zga}aZv}(qYbq@UPc&?F3!j{s0%IP5Z;5h z_=aG-7;1R0BaFv4=SFzf5XKw)WDRdKYIwhZ)>kwMZZO%X;k|<}-VEWDA@D5J@P3al z-qa@GL&Yw@`z^wFu};xjjMsr0-d_>MJ3`FMid}&BCxr3FI&1mHQNwF8!gzln=7?e! z;PGdwig%$?d^0g#Cu(@z5^s;x8)&WXE0zyveg{cUUHyUIgy#2Jr})-nzul<$-D`x` z@9V81zTgS)zAF8u6uk~b&yYX*u&ZM6^A72~p!AiYj7oce4jO!DitkA7fA-7$z&WUR z(XGIx26+0T@}u}i1qntJ5r2nO>0Y|)iH9rELHU0{(#L$d4F?o` z?vZhY=3H~~o%f&)s?VGzSNCG3U)Ja!YxGa$yTIFwpKJ14@}2jn4&wY;lm9`Z|1IBn z59;6yl@?<8Hc4Oh<#8l6`KY8ve0e7hYx0bw^S-9X>oJt~^T~)LRs(*GhBm+$JeOA2NuW+-nRYnsy#kJ&8ND}Au}XOKzDEX!jr zo!2}%;;b|KfHfZJ%W$1X{*#X8*W5++JPruFrpLrS*!&oOy8!Jy_56d(-zLuKcG}$E z<&iegs3B;VN4wr`Oxm5{al5z=u>QZ~7&8RFp&iAsKx6Ax(XY*0#rkBtE7JdUsdtx0 z3Vwsf9kf3fg3s}>J^Nw%lp*X#WZWlN&KE|O(^!^yyd~}L8p4krAD`9jJ8SuUL*^Ic zSyJxUd|@%pAmYkaWS9Gaj_q?CxQO}?3j>? diff --git a/release/src/router/openssl/crypto/comp/c_rle.o b/release/src/router/openssl/crypto/comp/c_rle.o deleted file mode 100644 index 35ace0cf8626cf0cbe79c4090cc81ccff0e898ff..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 2076 zcwUuMOKTHR6#izCHc3s}Xy2yUede?So2xlvrW5XN)nk=&UULl0c;J+JS(=RVHk%L`W|NrEd9 z!suwgwhV+6q^2!x0tXR;D8C`S#XjUPjU#PMdh*vaO;=O*k?ij7~A5QXn{G1 zSdkzf;~YO%eW{|B^h&{4RCCpGt*$p3#cBn3h%PceH+N2*n7?uRxH_#(X>^ZTW2J0l zvNRiYdtP)`hQ4e-%V&%Xv}~gRt*#e}m3viQl(bsD4y~Nmvr7dnlP#W_vdx^N&E347 zO4m!eU?MH8FV`}ad^%gI=I;AkZW(Q7m3etnCux^ftYzQ@MPy1=R#`U|t9fXYUDhi` zx9Zz+2(aFDucOcU{E9Qjowz`kIJ$iLDc$2vz~ZdQLfohj7j*Qqfal-cp>fw2$8wrR zM6j=g?EGOGJx(0&>pZ-8@8K2KmxA|PIL^O6mIZiu--Yb|$h={6cysXL?a(L*c`jZW zUc9eD9ewEFJ%Sf+M%o+i0lauW1iUCZc+X+uO*wI|rQP+i{|&tFU|X{572{Z5!OI&A zcX$WU;r$F7FX_a!ND(`!T!ef~bH4i>&^*?JM8KZ>Isf7It6 z@aca1AVdjRKS$JuaK>5lUB+m?7X&|_?=?ZU{(6qPpO%Brq;@sHJ=$KoZ>9^ibiUZA zp{$p4wG|gz9I zqs4^zqv^H2T&7KI@bLc7dlpSqlG69aQRpX&jB`^;OsZFT8Dgtgph=XD{fG&E9OegU z;3cWdHcsO>O!DK7spA|VdbpzeJC%4_jT?$*AH(Z$b5Fp#4569TG~QW_=P3UMVBE3C zFmpO;yv}V+TmMm)T4Z&_qq=Ux%=aE9ir5h5cOhQ2KEfVM-6a?6Lh8CGb)Ue@_eHH2 zDDoXDUSIj&j^I)JHOzi|ht$=1gjX=@qXH-&)whnazR!^Pt|;1)TSwbwDLai)lkkh% z*9xx~i{28RbD_2+_ctMRsRpV|&-aFZza7ojd!<8PckuJK9y>x|I&7S(_*K3G9k#fUy5AIU8G-IthwJyWIDNCCFRqAl{jqp4*ceAV1my$c oO)@W-&NKY|#z@qf@{Be0W7b=;H!Cf9Ki0U^8S)!)y~Z2%2f=%MGynhq diff --git a/release/src/router/openssl/crypto/comp/comp_err.o b/release/src/router/openssl/crypto/comp/comp_err.o deleted file mode 100644 index eaa0709368ad712e4a8fed8276fe30667a4228c4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 1000 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 Gj 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 C#fN(U diff --git a/release/src/router/openssl/crypto/conf/conf_mall.o b/release/src/router/openssl/crypto/conf/conf_mall.o deleted file mode 100644 index eeefaca8564ce6b9f2201ce5d6c0ff06e1186070..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 1240 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 diff --git a/release/src/router/openssl/crypto/conf/conf_sap.o b/release/src/router/openssl/crypto/conf/conf_sap.o deleted file mode 100644 index 7108979e362d59fafee897de2886dfc2559b93fa..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 2284 zcwUuN--{bn6#gdJAIZkrbgf!7>I4G2g)(f{RZxn?rrV{kWS17f2VtCKCh1@@Gt5lr z76q4r=)*$#rUhRGABtPWM~goBq|is7WTAh7;DZk<@tnCc&7HeN*8`Vxzx$nYzB_a8 zocVZt^RlLC$V@{CQv}>D0P|IBuO(<1i#Q3{K7#fg{)fFt6NP7$~@)=+Gea6t3c-M2@vuXlZ~=k`aT6}!Ht_bhkd*bDi*gUS7+8h+eAgM0f` z{IJh;fQx(Q(L7z>-KE$&-Bt|42-}IVGM1jGwK^w$9-j0EOU~v zwY}cHc5T!2d{dkPaXuGfmGdNfG&GANA;S+GFNy|cc7l!#qw5ccju+$D_5zUH)43Ek z6~3DKdKy>!kGLforDMdML!ucJq_{Iu+)RpJ2Xf!hyU5p^N&Txd%F_B;NoetyP2+f9 zZz5ms3*;^1wvm4?99NU#GTlw&buX2~_s6;=Om(kA)LTvCzQ@se%zucy?gJW!N*vn_ z<5ZCV4E&cBAxU6JAzr8q4er!cL>_B$+)Xt8RU8^^OPqYkbG9M$?G%tV*<&FN>(wq6UMS4<9P*_@I*Qn=W;^f7ZhAk z@Cm6mv#Ig&2{4{j@RMkybG{>sw4c``p5NhH>HIL^D`-nRzt;~G{HcOJSMWCq{#n7l zD)=`AKUDCa3jSNc;I3sxR$z4Tm`2vvY^~sEe>D4nX}eJXr5|Q+;9IuY8M%Yl^~|Af zj|NVJ_4dY<_IjRkJnGTRUA<~{2aXk*P8j+jT3hYQS)$13(GM{ROHenw8N|Lx{n_>U z5u(_pJY2l8WqQsHvlk@OfXKL)BqdW(J4(1-=s0k8+^j_xPKtg}I3@6GRouBb@_Yx& z3!)FsEga=*DX*tI_tXk~v=`VvC3;ikH1Hn#r-2>z&xk%zeiqncOvUfAe@^s(GF|0+ VT#x)uy#BoCK^6K@9Iz+Re*nfe8@T`g diff --git a/release/src/router/openssl/crypto/cpt_err.o b/release/src/router/openssl/crypto/cpt_err.o deleted file mode 100644 index cd0d210b6e2b5f868161fe492a3a214b04e8d50c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 1004 zcwU84%}T>S5S}#Erv5d8KXPvRr^ zC?0$PpFn4}8#-CA{ou>&xBJb`W_I5itt-PYAb|lE%oTuzB3FQRO{y|%!Ww9p>Jy8w zi`+w6@MX%0X1#u1DmSn1j!HFA5m-k=uR-j%7~^mjpOR7RPht?B6FVT>C;}1sz5eiV zM1z4Cdm)Ix^WB%8aNK^iGD{GRPRAaM9M7(I9@@7zHtyCR_At9U3Icx^FFde@9RS&% zRi!Vr^@57~%4aU|9Rl@Yx$hWc&2fhLwwW)h^cg_v{_c?_%||#z=GpwWIXlNXaz*(_ zUqE`l38ay%wIJOW@>$H6)O}XI6Q!rfBJ&xFTQKhl;T;)iz9c3+Arvs_1LFpgUMkh4 z9@4+^{XS6~FwOswgU@H-=a;XUT9%nQ329!DbWYQ}L!`67Val7}Ixp{sK$%7QcE_>p PhoR`gf6rVZgU$E@{uf4; diff --git a/release/src/router/openssl/crypto/cryptlib.o b/release/src/router/openssl/crypto/cryptlib.o deleted file mode 100644 index 220dc2d3a8f4c314da66c5fc67dc59c20b619f3b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 15388 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 diff --git a/release/src/router/openssl/crypto/des/cbc_cksm.o b/release/src/router/openssl/crypto/des/cbc_cksm.o deleted file mode 100644 index b5e90b788280d837069dab3e3e75adddd715b580..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 2020 zcwUuNOK%%h6#nL6&-g)^TA^4bgc)i(riw;s35ZA3Shmx&#UM)rsX`S={Ae1e6U%m` zR*Jx40}G@Xc||1_(ZB*Bq$zFLQMErM3;qBSi!6|ab7!vQ8H)-y)~D}&_nv#seVjY~ zV!eJz5Clw2fQqRCewP46Lu18PC1`jKVf$-s?E#)?Yoim-^CqfHc$x5uujW^Q?-q^Y zd(uu?ltKm1d0mm{%BU)S42Hv+tT(xD??HDfG zaa^$#yk{dPK|;mGW)g*Lm+&cYMg%G<3gxtbdIE**CguLpDwGofK1rd_NC}301mnkJ z7+*i7vCaH8pk?uJ@kNy9*h&S6;~1ndkQj?l#xm4#9P(H~Y^)$YMuu`w?t*rOa^3`1 z6(BE@-XPru%oy-yob)>B8+e!EtI&#`cebdaxul@18KcwUNRwb_o0PHgjiFtqn<)Dy zWoQ(F<``LO>+BY$Z6nmq@%9UxHO@)SGH1`zil9AVL7cYdL|R*Qsxwg?87t1r(`(Ur zAzjdFC~9>S*_vvnYs zga>&wPj^z#s-T*)u#g1RokewLQQcWocNW#1MRjK}9~H+^8C0M2C~AZT;X0vBxJ4Ke z4%vg*s8-+6OB)}2^qRh6UNGssn1j3B;ZBoy*bn&Tq&4i^8NzJu40m8Q2LqV>&hFm+ zjRV%WW%k;AnB8`#d3)E~Y3{v#A?Rk4%-Z^gTdihmtM%F7b~otnAFx2PBdvpOx3fRQ z|FD+;|Lw=QF3*f>oDJ?L{fplsLH!SYOYn2{#E@S$VSe`~i^Vi=9nrjpivL#qyeg)7=?meoolWV|SdP zc)8FxJHxXf?bk4Wc3rcD=qudX?QOO920g#Kv)}69?G4ZS^TbpzKb8*8GfsR+oS^M| f%QW$ybQCH6cbkp}evDPlY0etwInG(m^PK+%OB3YL diff --git a/release/src/router/openssl/crypto/des/cbc_enc.o b/release/src/router/openssl/crypto/des/cbc_enc.o deleted file mode 100644 index 77f970367561686f0aadd44870c2f8cdb8ebe78d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 2796 zcwUuOUuauZ9RBXP`PZ!KU6>=xxaDe^RH-4`qRdf7S<`mYF{&c$VNjbiO*_}Ev=KHC zj8mlO;D)dVhkGcu6NU=u{JV#3jN(Ly^MuJNKR}H__od@Z@Ewf&O`TjD@D{Ba0q`vNan*t8jHH_8;3UwXN)dM(C4`D17#Blv6zxe<|24XB| zo6Z`4ts@mcpK%a<@flzsNWVb845XvLGa>XHVLUz!vsTk~0!AE{Ga7~)0%MIJ_BTQp zZE($oj*$k}YJ^c}U@#2iy)_UM%vWLFQQ|C-3}l1MA8^-^>!sr*Ep6=A;#g@WU^mTV zQkeZ~qGvs+YY3&{_}EI|BTK|KK_qBt+LKX;JZ)c;=W*4F;Kj6tqAgIebxheolKtPJ$v6(fQId3?*N8QdpI zDbpAx?muf9N2!b<_vB0ic#3?Oar!x_3gy!=ef~D(KdjJD7*!Zh=s0h4%`<W;PARyw{S(#B08Mp>V%`7z=EZ5RDP;nUd^Yc8|q8P+__nk&@V zEbA^&XGQAloU1c)6~erf6yG^--qqVM&ct}nEsguh*2i?3?TJV=e#kvgCp9oyGUg;(KTDy|eh66kq zo}HgsKz44bTzsvPoh;7o-sN@6kFtf4mnKTZ(nR@0Y2oyI)f-tjDO3G(taNg2u6&}3 z|Ir=++~22=iif(!4TYwfr~k*i3@vgW^9JCqIWK(k;=XwS6+a7f{C*yxCA;Ry_B5@> z*Pn=b`*@HRRP$uK51si=p|iEd#?i@(oR=e5>7gwAzSQSWzIt{XvnUHL-Fe64yf z1v|NE<(o!lzT?bSgO@LgcD^(4^5xXL+sqg9eWxjtH>7nIvi-$*?{&>&hcbgqMeX*ZgfAjYT@Vf(F)4RUXJ9Z*t|B5mWcg2yeINB8l;BPv7 z2kFMWZjG|#TplCty=XPbVagY~8deuCTSE6WoT$uCOwBINy9288E=58u6zugl4G~{w z`J4DR@B*=irClV3h&AE$-_boh8}P=@1-x6!t3| PP?%GgSGY&vpu)camhheg diff --git a/release/src/router/openssl/crypto/des/cfb64ede.o b/release/src/router/openssl/crypto/des/cfb64ede.o deleted file mode 100644 index 62f484dd82f5295db5c0bc2444825fa6d74ad1ca..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 4832 zcwXIDO>9)x75?6xUxR`1V60KDn{Nh}}@mAXKxBX!Y*g({Ur7qp8ii%75EeeVwQ z#x)|U)J>ms^qq5m&OP_s@1D8#ulM!$YMO@fry+=n1q3$$fe;4TZ7Yc|Ho^UUWm*5k zOFwIg{Z`rPqkNO{?U(dFsp@a+1m0=USFU*OSs%Cb;L}nXpOiZBQK~Wcyd_kvjynSS8xO$8Aox~@FHD5h#Q8UU&60| zPy}~cr2ajn??ALckJbqdV#){46i_qeMQ}rle7MC_r})gW{BeeRz*yZ-;Sf7%6S??XkoZ@K^S-XE#G z%YBn$203PsV+J{9kYffpW{_hBIcAV!203N~vEu2&$1QG-wvnTMBu5{UqmRhZC35sW zIeL#Ay-kkZAV;s0ql=28Kfr^ees2l-#5k5QU(yFwxP^4+?_5{I1IGUc=KC||{~>ez zdpp-&JZAnMO`+9i=RAPVr{bY~c8=|H;2Fecd+jrzkA!^&djq_8#gb3j`BU)VvxLCI zLyoTaK}fGPc8v?I?W=GPb+CR~I>c1@o*wbH-n> zU_8TB-i2Ew$^AxhgX0XzZ$AnlePXxBu%COG)I&#Ek<)fX)Cnp2(g&zVWHqknx=Vje z>01&EAoP^E9YkYu-dJ zR&(n|Hjkph<`%i6&qhVB;+y1^*jeXr>xbmhVam@aC&{I=;TN0|oplhsbtv;{D>>HB z9Os$qN#?ngd@10AQki4T7D489=@z9D$0?ihSS7<@w* zd_x#~Ll}$d4f2F97QT~eDpX{Ll-U}bv}FQ^x2c=q;e*e%bZ7QB$FNb#i`Wsq0_r|I?ZxY zs%PI%j%731UB^zG9NN=z?HV~QMp^|)5pYvzP&T*NibtL!&`s=wckpxUQb;ciNet36%ktR=;# z#>u$$qT1gqs=spI0IKsM$IX?4MP=Q7RIfY0b)#_B4WhE{&r$7<&wpGFR_2xcjiB0J zj{f*lVEbE#ioZM@f8~&t)&t|Nd1Zf-sP?x~=S-CTYEkj`zSE30H7?E0uxp;CL{2ZC zt^5vg+}%~<%IHcL{>-OMNOR_w*Of8I*xde}vGJ!a+kIB<&)x3DKPz;Sq&L6%H!QC>&OJ PMqy6jsKSd1#}xh>q{EQ< diff --git a/release/src/router/openssl/crypto/des/cfb64enc.o b/release/src/router/openssl/crypto/des/cfb64enc.o deleted file mode 100644 index b8738449cf2ff8e7622d5b5cfbd1f6799a71f57d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 1764 zcwXI9OKTHR6#nLsnWR-oiMGtwpz$`ETTT7s0;K7>+45xNj!UVVURV-lgog+(`A zh*N?K3ogRAciL)g7cF*C!KFW;f1$fBgz?;&3Au@gU3=hg?sx9F_dMpi^Kx`@Ob`Ur zMSvd-1guJc8pQpCgJL*`cJT5`vbXS8u~$xP+pePt(o3XQ9MqizK18*nb!pe$j}GCR zmBfy93tz1Swyik6Sbg|x#js`dVABd?!wO>0dW;?82~0z)tw4KUgSK&mX>1rWhRy@W zZ?&}pya0kBY)9F8&|B*WcWL1cQGi(WL8=0QstkWsgj!V~S0(tWDwHZZMc{&j-rzm- zhUS2z3iQZ?#|h^E-3JUPghvU_P#^0?2&UDIkCqm$iCXMH44i}|0ZI?~4e}e}mk|E zOabpAGx_vC^-j3v_MI_V&#d=)-`~BySt=`ayQ2?N z*_q5hB9&jrmX?cjO?I(R$S+iIYPkqF?^E&cP|JSMvziwt{Ua_)>OVzXADo;;k&6p) zak7VR15N*rY0_{@9Fv=*0nWdtxOJQ%^?7j&6Nj7bTSBwc_wJ*4E-da%y;wBzPNF&Q zq2kuZ^7_%pOYC>HKAGpUo`F wVTWVR!=QJeXYuDdNzE2hx%qO@+47v%owH(_dxx*xouNYZ2ibNi;81YwZzj*=-2eap diff --git a/release/src/router/openssl/crypto/des/cfb_enc.o b/release/src/router/openssl/crypto/des/cfb_enc.o deleted file mode 100644 index 192868114597d0e9db36977d43f9e73203c59625..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 3528 zcwU`XU1$_n6#jN*vx%D8>2@0yP3?~EZniWm(QaieK^7CMEukzlg;0e2|0s!B;h71ZNqv>rdjfq}$E{2bp9o(2j^ zdp-7~qD%Lc)odN=a5k`7Qejz_;twq)8e1wWK3t0XaD5K=c22=Jb9GpqQ*m<+K?Q!? zo(tf{Tugf%V5WN9qP`DE)&ZMT#KL2Uo!SdT{fMC45(^IjI|JxK*{s9$cx-lr`@6~f ztMN2__fR(WW8UoK8C2YgGk-k5Iqp54!8x-XOJ<7mv&e+n7_-aA7GT=QV!`+hi-r$@ zXqYux_b{S1vrgSOXRt;_04thaOesBBG63ZxT|2!VJ$i;cCgxxMLM4BJL+N9tea<#hX>G1Jsz1R2g*h> zN}68i#sSsihUn%7%*Ww+m z>X%-W98G&Tn)Yxs?cr!zay0!<92NaiB-f<=m}}AwR@_9Cqw%HtrC>35r zlr6Sz&BKce=6ahKA3x^Ban^5^w#yAsH^C43?74!6A2Z~=!;e+C{3wz$4nK-j{1A62 z&-i#`t76}w@O^oQ_`8wl#)-f9-LS01sBSUa-ccVJrQB)6iE{p2Ah`7f3N}RiH7pm9o;kr3E>o%aW z?jbn&-1E*bSHbh0n{Ncw`EEBlABueIQOP&$xY6c*PiN5colnX$sPsaNCdPeO6X&A4 zH!-3cfCt2{eJvv!86pFuhgoY2-~}&usw~i?S>kA zeU0shcc?Zaymq5~MlnQ>gUq+tGcRfw_1K~gtu;2}MNAH&_FDFi=6Z(?9?4;1cw%Dm zy7-?U{fRFGgd)Sx;bt#72pl#E`_W#Ab;RiBX9OiLDabB&H;$CALeu?_`7k diff --git a/release/src/router/openssl/crypto/des/des_enc.o b/release/src/router/openssl/crypto/des/des_enc.o deleted file mode 100644 index 7daac7ef38eb2c418e2d3a713dc7405fe70ab035..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 11216 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 diff --git a/release/src/router/openssl/crypto/des/ecb_enc.o b/release/src/router/openssl/crypto/des/ecb_enc.o deleted file mode 100644 index dc32ec255d4f7d07f7f4f3b818cbc26b6dc200e4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 2592 zcwUuOO>7%Q6#l$xJ6=Z#P6#x#fv$y9yH!}(ZYtWULRFIzRWePa0OEpN|0P*SY|HCZ zj)X*2A}DRe`p^Rv9FVC5rv@R8RP@9Vap1rS`PMTx4wcM%JG=4hrWNJMvv0n6-^_dS zX7;T=zF2rO6biwU5Mmf2;I;~kB(O5?pbTEXBxHGfH1s2$DxqtS2ZMo!GSptCcJwLs ztj|7k4){8q?B7-Y96U&;@XMZ#ANCUXc`tYyLR&0H<(6mZwBA)B{L7He=n{5 zqpQhmpT}()x0TBZlw&HC6Qt*j6qH47Eq` z+Z4YYLto9{LAqMAGPBm4_dCuzHme;}Osm5EJhjb6eI0>Z{7$);qg-St7dqtv=-TAt zix+V|0bI95+og6Pm7x6y{HcSd_VH&n@0rJ@ow3~%@GG@PDc-Y=NQ%}bJMJ@|{MqEs z;dA_1iht8A(-!n*snymSYx;7tR$pB$=s6>6N63Yd$+W( za8}POU4G}dK5yg=x_5@Pv(+w@Nw-@L)guZL?9g_DRdMgQCbl z@oKGQkVV^hJJ5BtmozVv~tid%Xa}@RS`8d$a@I?`Q9d;{si7{@ZT5ac{Z8%m&?n#n2NCP zs}OSA1cqy|P;tbg0MFCj9$5aMMD}TLiu#8j{PMlv+{x?xM4S3b!tx!FMII01?*SxH z1G7|LB#dQ`j7I`E7QpcU9(B%^MckJJeM5!l4t_4c9}D2|01omKcm?u%7{{xS&o}Pe ziIjw2gDi39eoskQ7S(qH7)Jtl0GbX>ge8XYzN?~0N> z$C#3{$e8royv`A~mQ9En8=VmEq&6n%0P8C}J|^m~MlWfV@uWBtjS9~OW6~Yh??>*u I8}7V+0R~1fSO5S3 diff --git a/release/src/router/openssl/crypto/des/ede_cbcm_enc.o b/release/src/router/openssl/crypto/des/ede_cbcm_enc.o deleted file mode 100644 index 8fbdc2793f7fea4dccf2751ae3b8e17c257c2c68..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 3472 zcwVJeU2IfE6#n+^KUBGHOS8dMckAxmLYk#OZK`Roky5Iuq)JJ6Xe@1aX`9fpY1af2 z5*zV>2f}T3A1nzEx3?O>7#9KM1yCDI6p1D%J~xu+gJ>f50TYt-n|o)wcUSQzPI7Y2 znfd0Nxo5taxv%Z)>v6eUC^r`ZsCdBr0N_{A-)4EuQ1K9)?S83r7Y}TuPdHvGdvlb> zC{I{kq!T!uj4hvXXG>R-C-8CcIIb4oz@_3WJ}Mr?hsDFVSj^!eI?x|97bEG50T&9NWze*BgPZWOvXrm(-)%CVH}v*Ir$6?|TB<7Odt ze3mu4R_JHHm;D}GFAUK3(cWjpUrG*ApM$B#W)1l8MZt^D3b)Xu`tfxEp|!vUH_+q( zHhF@|bAQI|sB*K$OL{A{m{4VV=_Vv&|PX8>hy&h<90D3~e?sZ6<;keO* zFcy=EIb!C|f*+#p=lAW$Tl!mgTMx6g5!N_(FY0!|7iV2XpZ+X9^|4>~2@qra2>0oG=Vrl~JO3(v4Zr*u*O z(^maW)_<|4{)>8q9MQr#3#+MnA@GKUUnJhN@Ud1=vueD+R>!a4Mf@<%6MI2dLLn#- zibmN~52cMl{)l)yADRn_slaWz;W54Nnm+hUKl~;TGCim_15mZ!OG}$3OI@nS2dtRQ zc%N~}KP)Y@a6L*y*gK3?u21O^_PEg|FiqTX+*;@mm=Yja5>x560+Zi-x@=Jx*D`x)gL;@s!I=f||<(;h2EEua3xKjJJr=cOf|A~Hug zKKZMQIa=52ikOq&y`lA*ihXZ1TKC3g>)z;Jy*Hu{xHn2ARZ|*+v=q~_8yt41Vgo_D zuQA}jI_yxzRxK_BOr%hdlR6o(IVDpvChz@4+bVL~(}2 z*$})xw#xgvlJ_A8??VpWha9{YT>VD!zTUz6dI#?tB=5hKyl-&uzQMu!^$y;zC+~&7 z*BBrUm@xJc16*I=dqe%A!FN^XyQ=eD)%mXKd{=e8t2*CRo$sp7cU9-R%5PkD&*4gP znUDV+$~}sQS6v;2S0^GAKAspPW&0`JlnzQOB~A%b>L}Q?W5+Ym=3Tq@Zj832wx;;s zkeWF%nHwIV&Q05Tylmw%hjU1!hjYV7jm*p-HJurom^yGs7zb0?^fXeF>CDKhW2xbh ziEUf$ZZRprh{CY{+fG&(XmIh2_ioj#Jy+2hlPM8F3jMh{I+W~OrZ5A9LF`X};9 zzpG|kl{zMI?tj1~DS>~1Yk`$Bt2l6B2hJn?r-7<}wtbXn4NkPDC_zX6e4V|Hhbdl( z6aIEo$2*MbRvzm|bzKB*-e19$^Y)=Sufe=o*m(n}fJc7zzh&Dppn>DzyF0W0rqkLwTsn=0xT6x9ZiM2W7 z4f1)|ysqc90I4fQ|&Sjt7FPgZ=JW>awu9I4oxOTM-gj6m7 diff --git a/release/src/router/openssl/crypto/des/enc_read.o b/release/src/router/openssl/crypto/des/enc_read.o deleted file mode 100644 index c18fd333107f1ea0d07de2ea2a3c14ff5aeddd62..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 3668 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 NExp7NuN|O}{{T&o6$k(T diff --git a/release/src/router/openssl/crypto/des/ofb64enc.o b/release/src/router/openssl/crypto/des/ofb64enc.o deleted file mode 100644 index 758a609b223607e08e8a53176337e31e17e68e5d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 1700 zcwUWEO=uHQ5dL;IP12;5Sfr-bwuz*h3T3G^N|m6+{wdZHw2B9zHck2?{Yje$Eff^= zs5}iGEOt*u2^|Ed?OJqdyb&mP2^XFYi+tn)SreTfu1FueE8%$xb%?7Y3z)!Qve z5(*;0iERW#6u{v@BxIo`?13AiY@IfLV@EMJw@lM4pi$B~(gq7139nQ1^ zt~3r1*-j@Kz2kHTIo;@`idS5i$0`FV(=yy-yFoses-Qd#?7fdF86m70GT9nE7l3PS zv=CMZqpuu|p7UrXY_t65r~_+;4{JfWTZY`H!2dXd6jluXgH6bX$kt5Ssz44aXrtIN z)T>^Kw`0HRK(*>$1;S*n!IFLe%X%$V^*TJ&>#?FY;F<12)(Aj1yvXVSz;h6~UISls z7&_fyfwf_YrLfG(|M(OM_5j5*if08rr5vbVOv1XlQ$1dX*Wmdj1XRCgn!e4M2f!Wb z>BAP)(?K|zmGDTFkW@|cBB>nsW}d0$UvVEYRRs=!oTXke&VfF}qQ!~0w2+^31G+NJ z+~3OgXBV5eJE|>PjAnw-OfZ@WMl-=^CK$~GqnThd6O3kp zIq^do#YPZ49UUiqO+9^=5Bow|t41@cCFdqmgHc*jGr4uNuuH{fQ_y0AsX=JbWD?p; zd}M5Lc#3bvwM1+N+C(fKy*Z){M#qk}=FI$%*4cGwU}`veJTwrW9GaO+P@18siHZ1R z3cHqCz-Xd-AJ4AE*2$E=cO!MO-tinh9Bm^9pgcJU#&w{Rgg+`by%s93w3k z?04-s9u=fz`8bYGp*Y_xilyL-ptvtQuD?JQ+jV7oPIZ-e8dC!6Zwr0$F81yc*A^iJJ21XJC ev9V;ra^;Ojth2H!m!r&`>!F?25M9?z1pWe4rtU-l diff --git a/release/src/router/openssl/crypto/des/ofb_enc.o b/release/src/router/openssl/crypto/des/ofb_enc.o deleted file mode 100644 index 9fd6d91c4dcb310c19963e4c41eea6d33b4c238c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 2548 zcwUuO&u<$=6#l%sb~bTn7t4fIYszlBcHGKXp_nS5C^CujqiTeV8bl9BA Ns7Xv> zL@HInih8g_&#cY+P~o+#jYRPw%ueE(&tE@ zcUWWyxY@5aZipN9qyB67#wz1$>ngsmHt@Ms!b7Ww&#cRMU@hXlmB&5n9qd~QzOuUT z*wC-nDMv1T1W$~h`Ym2V?u@=)#ujc{dbWYbH4(oct=z97XDNRvv)_4x>G zJ81L*ifun@NJ>ty?Y9is;Xy;>F(T)#|AL`^$!auG1oC_dY83&G0CTyBfbrGN)*mflrRrAm=Vw5!*y0VEbOjIYaW3f04cTxO^ zp=+CMZkt26W%?-J zC4B1my8qBb=1XJGqm^($3B63Xr6{x=Oaj zURBH1J@zqfKf_Vs*uzocXxpcwz{yW=LTK4x0a10d#Y649%@^yKr)Apbd3aRGAf}AN z&@Ozkr|=#@H-I%73@UyX2<#-?e{Qv5qHpk)zI$LZ}t zk(4LI-xC7yq9Cb1LsAat-DVIi??O+9efoaNw?%Kmwjai>+O-qF4Lai+JA-t;Lg;B{ zPbtbPM3_BV8^Eq9oMZNUEkSQWI7zpM?`v@upJ2AMZLs)ZW{=f0iU$^I)CWxJ119wW zllp*3eZZtXU{W72sSlXc2TbY%ri_MI!J~dz0J}11qzTd#=@4m#bc!@hrA?8>Nh74J z>@w*g`3^`iF*^FH7N2WXLnm$CZ6a&AVU{qPUMb;+ojp8x#6z zL4%Nb0D^GWWp~H+=FP_jUi46JZN1_hm+-3%kBA+!#I~I<-nJsKt`07D@SYCtxj2XW zJ9w{iMkefzLzM5h$IohLc)0V1`G=RBL+58WvrwGLFRd3H2Os>aL;_#P-|N;iK=?ah zHyuf)G6V=CK9?Ju*Xj5{{`aXj;Lc+xbL{1)a13))IYu~Y91V_fjtPzf98(+zISz6B E6RMVXhyVZp diff --git a/release/src/router/openssl/crypto/des/pcbc_enc.o b/release/src/router/openssl/crypto/des/pcbc_enc.o deleted file mode 100644 index 9e392524061546caec87106962552bd5deccc3f2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 2584 zcwU`W&2Jk;6#wn4Kh|l0t>qT0xW(Jr>okh2G!0d$q7pTqMWu>FsdA{A#If@sn#M|u z)Sj?fgmM6_WpPL)4v`T8aoGa>I<(LOM-Kb}J>-Nq0;e7-ncwV=@!ADZG11fSy_q-j zX5Rblb3U9nH>qhFT0?_@wgo&415pz*!=BX#6E7h+p1sxl6aPAzkDoQ0&6YJyIY@ck zvr;3#=Q(Tlmj0mmC^wED-BJADj^Ms~68GF;+;s`52=n;t?PdLe@M> z83zvNfZfA4|60o?SAc;qvMZd&4JVr{0Vg8J&Md*I&TH0om8rRyDFbE_cXO{|G|_C{ zv^9u&795NKtG`LeF{y9obOQ> zQrK*oHuxSK5^X&pc+au69q+WWTVwxkUu_Jw`HrxY{Y=m;*7Qp!iH4iP7p|4w5wWLf zT|*?pIfrwOm=qA_b%?{n0m=~d5uI;&=-4Y~goa{6pw!T@(g@Mow&z6VT`worARu#M;AX!)S`aDfG6#DxpRlLT2oX0RQWP>s^v58EDW_w6lVE;y<|oAb zgqfcR^Alx$4CW`+uoUkkrzQ6ec5v_VbKH}46#HY;M8ne)0X^Q<`Ca&P`;CBaK#v;% zU!!4f@6+ts3C+MUuU6l%R+1mGPV5m5dxXOt;jl+I>=6!ogu@=;utzxT5zNc3K8;7Y z3;bH=DOV`hDDvywqOeI|o01^u4azf?;&;k#lqZy5C_hm!H8yrC-8Xgqy`$;j{7{}f zFu!?yt+G%cRyKTGX=#gZg~|f*h0RUmH%iN^SC`hMawT6bZXmx_EEPUj&My>J zj}Q6Na#MbM;@!FOVqtNvbaip#db#2+ZLG_){$X)(eQm9DwSpHOuK`|9k0^VzYu!|6 zDL?%`{BjiI1^fo!#Vm_}UozkqQudob$8XLoCEevG#~YMbV16d%-{WOUSoul&G&;|_ zhR)Gin?Yw@q+hWW4DGn*&>43&=D$V8HPDXBUgDkCdhe4^XKq^OEu-_iZ5mbh=k=g{ z-be7y8&rNNJ~AHIrzzQsb}i(PE#%WKzZSOcCdUYa>=Iw0?13Lw)=u6ncwUMV#{+gS zx4{vd58;m{0z>cGrFYy!+QEp@j&|8bm)+B42MXue;V!$EfBuj)j`O^OfpwWfJ79Yp zZhd$8MLhQz&MlYcimRJtZ$(WW^Y@B9K8Ab!oJNQ{#2BCSK-xr;&)>s;rS1rS{%7IO r4~G1CIeH`heu;*{UWKN@gumqA<1 diff --git a/release/src/router/openssl/crypto/des/qud_cksm.o b/release/src/router/openssl/crypto/des/qud_cksm.o deleted file mode 100644 index 86acbe63b6d6ab00254e5fdd640db0d20b9ce926..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 1324 zcwUuL&ubGw6#n){noVnQTLe?3bcb{`7F|NE5Q|7i8k^Q&1ETa$Y?CH7wWdv*1nSAs zlY-#(KPWBYsoA1^@GQoZ{PRk&3iNZJe|EGNfJCr z&~VCtoD2kY$sS z3#{1$TiC_5+RWG`D$T0Y6AFDmdPhQXr`1|9(J#Z)(@-cbW7=f;F6~V|It4kbt;_nG zDvO_$64Y3=iN4JXena12l$+aSS~SBn=f2eIH5MiP1S(>;txE6l_m+p?N-p z=8#75DMYBBNM_He8A%+0%|c;0L;2cT803Aa*y?Lf?d5@r7Y7<%nG!ymsuO$f#76W_ z(yvzH9M9Eos4(52QKnMkMs)JtgDb|EHEPk_S+!@CdcHuuzR~t&Z&fdC)?pR%^*pRX ztp;nOw6whXc#SWfTGiqPtV*#|Xe?Rz!t(Xec7ipLzCXX-$QS1qS89z4ti`oTrLXg6eE|Y2hpt}mEW>pq+VL_+5{3g)xAIy>&J{`vmvXJn7 zIM6;v4_Uy~aef<}`)#5VUM!2wxp3W_km%LTySkXmzYys^l{qnP{E>Jw;W(y`PkcJh zdo$sfr9$t>pCRLaJg>`V$a@v{(*o_g^dR;qLj11cXG@GJzAUBVB%F&CIS=}{=Hn_v fD9%lYJmmDnG3U&U^4A;ATdr7(@V#vZG7aH3_VI=@ diff --git a/release/src/router/openssl/crypto/des/rand_key.o b/release/src/router/openssl/crypto/des/rand_key.o deleted file mode 100644 index c437d8da3b2ce1778a8efd557087c836ae70f3ca..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 1308 zcwUWDL2J}N6#lZww&|vpRXh}|n83nTkWp$qC`BvV+Dj>=B6tu&wn^7ecQ+&vcTeUY z?A3xlz}t#vi+^Q*fCm*1JqU4LCSfN5u^&9%d~d$@Uh-z<{qFuVMNv>dfsQ!?Mw~1* zak!bWb*#XEj4dc%@J}eopEOMiW^%j9?N-Ltwt$aqYj&p2()0EjzD-y0dD_I+sg)#r z|7>EJs4ZQXs*ZY#$0rKZ7R6L_nzY{lnigM?hARF_x380q_9#YLkymT+`V(G%qGP6- zIB#RG(|KgB?;X6jZEms+#{Z8+<9_UPxsOBPUl*&`8^vI*6FXqtC;|(;o&R8b8qE3 z^*_2cH~kX2JIHzlHA%NB>9m|b1WNbiCB!+)I>G~POH%y1Cca~tTRqnie~fay5y~j` z4pE*9=@Lm-^xa3f?{AH6vFNK~-q(YucQ4mnaJweuDY;$6e0GEe4-P82!WXk6eBwzz zxW7U<5PfOZ^lfsz4}9ZD;_@tH$Z-unQ%F!NS!(G^h|3*`FIKo-;TmM9*@?-#k!@4FTLq{2auhMo*NM&%9Jy})+;D8SLvgB`m&j=d<8_>uk2b51i2 o@yLtqq3ha#6Z-KuuU%^hUpK@VEEwXx8q4C28~lJ?kzWD+0wKD7#sB~S diff --git a/release/src/router/openssl/crypto/des/read2pwd.o b/release/src/router/openssl/crypto/des/read2pwd.o deleted file mode 100644 index 3012f2e6be0d05fd5b40741844d69360bef28391..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 1872 zcwUuN&1(};5dY<)N&2CU#X~`*Z=sMVWeKrDDn$admO`wBTJTWWB;7Sen-8*)S`dsN z;%$3u!Gk9~Zf$$;(4xow7xqt3@X&)$=VjkEZ?_HA3Cp~h`OVDlz1g>UJ)OH32n66t z05NndU@r(n%m0kZtY$TqslNbAq>@v&=V7;ueyPvV2EqptC*lfZ|Ba<~~f z__3cDXW#4;+qK8oj-6!N_9**eGqz<9W6uUQEf(KRFl;5__-rfdEhw4qP&Ph7VF)V8 zR_mRv8J6s(85g-45_+mw^>kX(C z-6*~&sfA+sX4-M{B=zp}g4Qq!x|XgNOmnr?(9N@=ZV>8ntx_?nP5g&k0ow0$MA%th zJT9~%aG`T>G*r4J=i|oE?pY5?xM2ww7WM?-xpR-;tr-^j7CpU^|1je8x=2rtz;Rx8 z;H|d-ueh;!c+Z974kVo0HwSOupOlb-(>I1r-zvQI@??CK^4xmQ;H}4^oqB!f)O!b~ zUP|DG=^%%synuKvp)(6EHwb6>aISV|!DW&TjgfPZ*8On$^7G`}^`3zhAg4>8zI{R^mByIc!=sTDbCOEx@7ZnnDE*6 zefDFq<})55J~dw){OYFbtGc?3v+lW8s%v`LtYdLjTYNa16IXq;4W>^^xmwbiH7)(z zSTpfpetK?UA*U^`7=@~7;Pj`#n?*@3mmm$7aV;)p&ww-Q$bfT4`{^%D=bB!?S6tHz Uu`aY9pA`5duIbR~0{2$vzjpcbNdN!< diff --git a/release/src/router/openssl/crypto/des/rpc_enc.o b/release/src/router/openssl/crypto/des/rpc_enc.o deleted file mode 100644 index e0671cc0f1d4cd54e4d69910fd6fa59e87b071d1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 1356 zcwUWE-)qxQ6#kO5Yu46L$B==QB`|D-5z5>^hsa>oz6>dd;#+K!*wxuCG#RW<_Ah9C z9r!S0pbtX2Jv;QlKfym>e}caGFsSF|$9fYP`oZDkJNG;HoSb`;x7F>(f*>G*02xyT z923bDP+#*|8FR>i#|1K{xDuJc#bh#x*qH1V*^VftZmt~wwW1N*x+uGVt%C#rY z?kH>8sz&qBoPNh`G|9WY!0$v)u65u-GaGILTGMf$^{iIA`)ZFpywPm42d!gT&Ha|v zXtwXJ24R+@>89oAMz3#EzOmQoSY7vu+5U~2fPZ!~A>T}_7ecRwI_V#}5}EuTx)t~} zZIRP0a=KK=?*p;B^@2=E=or??X1RDV9rTeWONTnfA0ocr0pf_(>WI&U>BgKcs=JMN z-Q_g9@j+b~)4B}=`&B|+naDhsCxmt#)7dd>Q1Ep^7x`#*3_mF8C;4k+bbtN2Y}Twd ze!uUu@SNlPEO_wo6n;&>K}uvvu}&E0D>9x*a5=$K;34@Z#`EmuAB3I3Jmufu*4fOK zIL_XCJ;AF9j-GAkR@cxBaG#IfvURiV*mzWZsymje?^=C*ziaGR#;#@hQOjtuJYUXu h*Jv7-fdFDQ@abG|4m0GJ$>;LH{ms!KF>P)R_yg-tlHdRU diff --git a/release/src/router/openssl/crypto/des/set_key.o b/release/src/router/openssl/crypto/des/set_key.o deleted file mode 100644 index d2ff34c107ff769c4116176313a8e1eb4aab5903..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 6820 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 S_=;EW{Amr7?bLjx5%m9LOh+vM diff --git a/release/src/router/openssl/crypto/des/str2key.o b/release/src/router/openssl/crypto/des/str2key.o deleted file mode 100644 index 5808e9958690cc3c50b2a3e3248c5f05b2b4e5ff..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 2808 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 Cr5G0g diff --git a/release/src/router/openssl/crypto/dh/dh_ameth.o b/release/src/router/openssl/crypto/dh/dh_ameth.o deleted file mode 100644 index b1129e7c47d975f4c29a4eb0981124366cdeec07..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 10900 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 WlyQsth`2!A#BZXgqgVp!@c#kB?WObp diff --git a/release/src/router/openssl/crypto/dh/dh_asn1.o b/release/src/router/openssl/crypto/dh/dh_asn1.o deleted file mode 100644 index cb6a0c7ea81c796aae516ed564650c3eb1c1b18f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 2876 zcwVhm&x;&I6#lw(2tiHEMp)NC5P}3IJv*J*f%)Z3 zFNt0pL{wyPF7XiXpqQg(gNS%A_z&c!pvV0KyaaN{AuztzRc*iO&6tZ1it6vZufA7Z zT~)6?dUNf(Wm!nf!W2>jTycO&4;NQrw1jySAnh@%A2HUf!Q;_rl%OKDW7Lk1<^P}Y zh10;-i>2LL&hF^m;sSo#Dd6sohhKN5F_oZ8#_L1sg6y*mrE$ zCmek2F>iu=7R43+_IARjp?64oNZP}aca>Ie*D2!OqRd}f8pOG#z+*od%2?|Ebd3MA z;kgSymlW#Mnqj*hZ6f|go_=RX_iHe1idrt?o6&x@%ni;!s=Gt52}q9 z%gW7z{Mu$^qbl&Z3*Dd>wEC6WR#&(i__a(t`OYQHOTPCw9&Nt( z8$XTr0^*!qTkz!R&T0HAVB86psSPqbwwI_)3;$YPo%tiw_Guo^>kLf2zhGJty9je# zm^To-BrorKnYStOCTD>At1$I06Ic-A61^)h^|pmx9;x1Sn0k@5cm3Gfn0ohx-hQNd-$Ln?HSacoSurlB<3GXNSHFx|m%A|Y{+(Cz^uCue@j%4+ZCV-^V*U(1%ILnrBqf zltykC)l?{y8+hX_`V)AY$G^As&iX1pD6=QjU1T3t^~64^?p<47DEnsBd6=M{f1cbq zb$`3h?v3+WxCOP2(?|Bkc_+H_>WqzzA4}uBv+ZY;uI(vZ+f_W<)&A%7{9QFa#w!}X L!u@g0qxbv=$4w2{ diff --git a/release/src/router/openssl/crypto/dh/dh_check.o b/release/src/router/openssl/crypto/dh/dh_check.o deleted file mode 100644 index 6162a2e9a0b6d55e194cec7620a006b5b5d4dae9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 2436 zcwUuO&ube;6#n*yY*|w5jq9X>I#lb5ScP_R(-fK#$`ZGY4X$RUS<^4`vDG&{|Y=85Ia_uiZD z&Ac}==+>tfJ~Iphu^32Wgn+yaj5}C99ib8&9DyqTV(K2AD^uOa!{IPS3-q0!@6G?^ zpFInFH}5{&xBeR5pD*F}K@qo zaJxR2A(L9(h;u?o< z$6O|HS)j5J-xz7v;l1tmRZatDk@nZ8{q<>oecE52_D8uNS_`;8|7x{3pjsS=I&`~K z6CW1*8P0Q+^LI!2dF1Z;SeA9l!S3-|Y~0?NLwQDY<;xvlamOTkmTW1~IkM3nXGDGM zs6KgFiz&*Hg;nIZqmqN;C$;zt#k+Z4n_0}D9OWOUahk?rA9FpfTUzv@XD51M_o&Wr z7gj{gKLk>8kD`B0ahm3eK5~3Y_Ru$vCC`MZ^JFz1?%#y$->7fYYqD{i8Rc<`YF*vJ ziuq{hA7?-H+k9bf&o3^1R4ARlc=_$ZY44Or3-;RE_0DRUbf+csMm*|-H#+dDtDRMN z<#rohD_pN_tu=V?x!0_=;MJ>P`P#a-TCTl+N|5R#O0MZTjDc7;yt^9B&RL) z2lP!S_CM1i*ChCCi8x-@$4K(+At|wM8OgeETuzx7=e>Yr-a|^V1d%t5QQl1?`FvB>9R2Rv`E?81a1p!M7mex>WFKWu76wqZsvqk83!s;f#iDsA5GYLd7}y3E>`3 z6WP=nh*!d^;6HCk zu-*)+wRRKdE(TlSbyn@L6I^e!sywdLBTuE#+>Tr{D|W55!tf~{8x}8Ji7D!h>eIMd zJ7~6Q^)Lu;Fl@CqYHOYM;t3Ip5R(pDf%R(wr*h)#jpg{?3!TLy;?89!#l6VV0sV@# zBkpLHnsry&4_Qw?hi69IapsHW9RvQ5`ft|9#aUo|mi6n@Gl}mQg7-((^hiAc>8&^a diff --git a/release/src/router/openssl/crypto/dh/dh_depr.o b/release/src/router/openssl/crypto/dh/dh_depr.o deleted file mode 100644 index d30df901c52c455d2571b19d56100cbf8379edb6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 1372 zcwUWE&ui0Q7=DtpUDwW0i-&@fH6pZP38hw084{d24@GuR@D|hMTUW4MNTb%1J$j2r z2OfqOkJ0I22Z#GJJoe~O!Gi~(zF&UWuVF3CzYzC}~W#l2^Csq$I7ptS+lgT7zI@vjX8nBf$;7vsx?LXdLk7TtBndg-7u9AU%Ce{aaD8{)u0@MOzn!}?xJetF!IXs%fqdB}R#)^)k3O3f) zua~PE_a0m3g?>eF1iJx3HbfHGrpG`NLz)wj5|Z zi?yG0G_&2k+z5|(l6LE^(P4e&m@YGH(=mI@WeyeC+U@mN-#ua1C*v#-+-D}@dLmwk zyc+40f9NV?+5gbh5cITVL01xVsfb?#X5P1lWaWg8;|kfLa9&G?b1adiBOT{AFk5ek zS;VnT%0*d?Bm^W ze50iAgHmvTz=J7szHb-W#A&+c3 fj0LsjT-YO>5APt858w6tQut2g>4HYwF9Ux7-Lsmg diff --git a/release/src/router/openssl/crypto/dh/dh_err.o b/release/src/router/openssl/crypto/dh/dh_err.o deleted file mode 100644 index 7aed452b44c53c6d3524a501270d0c8e20549d5e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 996 zcwU85%}T>S5S}#Aw*ElvNf5Q3tRRcD^`Hk4YORMNQV_g_q)F34)08wqJ=tgQNqhhw z#e=Wl6X;B`v6DsG55CNPyWi|=CfV0k=T_4+NTERi77D;XkuSkRBUV+|h7C|KS0|QX zA9;u@z?U9Rw42S#O0|9ecv5MIn!q|@`r=2HjWG(7I7mm4JBvU#R%C&&r&AE2>kY^K zfCeKmaY7KjJbs*ap@)ejbt=pHrGpXmuGV^JYJFw^p;SCumzBHyiA#7pNJ4Gb@rBs)CNbkz` z`#^EPG=E2q%sqhbAHJq5S$gIqq|(^tHB*i>VR6(FvM}4LNLa(kkZic*t(J3TCzHt z5C;ktUX(6ECW|Z@C{)WpA>+Df$)chD30Zd0g_qqHvgpE~oHGw}bwh9uT+aQ@`Of3M zW_ISUe5`32GSN`L00EB;V6=>-*%(!E0wu`u3_JUHsqA!*`u%=}92#%acqc}0od+X+1au#fKChQhZ49A;pIjA5wfs@nHd`;o!*>a6cUT&osCL>w5=Z!zoklFtb~x zgJEpy8RmIx`@w;A*TFTcOt9|@%EA5u^gAPPPRTXczf6AeJsc;0f&4ml�VFh(rE| z>?_h-hhAY$8NDcvT;(g|D*_{xxPA@z2#EVGVfS=CCv zW`HrtH%@tCd$miP#QqBPq@n!6o*2@e7%)#Ww@6&8OXu6=?p{1c8CzxO$KRd9M6YMFKx_xF>t5i&UhQ;X`=YVYy1vDeO}kz9 zVK?hy^+v1o0vJszI54bh?elZK)7ws_nIOQe#aHtu-CSlP0k!9TRf6*AI00NwAnF7Gw>Cg;0M{rxOqc`syHj$s_&)xajO4fO^@S<^-1~;=!w0iCwbOc L(+_K#_3OZMnZ7ZC diff --git a/release/src/router/openssl/crypto/dh/dh_key.o b/release/src/router/openssl/crypto/dh/dh_key.o deleted file mode 100644 index 9e4b21f445901ad7ccce5a09ed53c40f95cbc1a9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 4932 zcwW6&Uu>IK75{yoo!E&}>NHN}7H{*{x{U|L3L!{gs+h^2ErP5KYtV{7@}KyNleMue z+f`eEz#2U4A<9=F9yWxKRmzl!sqRK6?V%GDARZ9ni5Dau@-QJDkYM6vNE7Cqd+%4@ z@1|AZg)6!D``vTyIp?19yMLPRF0DLgSr+_eA&LP4?nQw}9ILYeWs$-$=e>O0G^)d3ICSSxWJ7Ii%CyI0k0{@D>2N+151%5o` z?7vR<6)%c?>gO{ld~e5sow2Y!%VUJ!(slRy?@uN1%U&G!dTD&0e01W#>)yym(k_jA zB=^_`&rjq1DSdtzzZUkL)h_A&+)H53i=muI;!Q6_G257*jvy~=f?@`icARwHies-g zOy(1Kv&S;V{LL~admqm9K6q`;T+!0~-Jy7wDc(iA+sor_?<{`No5MT3S-jnw#vNM2 zJz>w;>(Kn)>^PnK;I%m2F2<+kvoYioq~l4S-QEzwnGFnOsu<1)y*aMyJ+Df!_51OR zo(t#IJYJ%;`16H+I*%Yu+ew6Wc`Slr!g(zZmic}v?e*g)ogy2`nP6~KO*x?>rcaWvK^b}XYs~V zSjC;iO;6SXfw(p(t_c-al;T5l-mU5Hi^jY7_RRKyVKIHlP%hh%4f*PXGF`V zlP;?HU7KZ2Cyy{wjdQ5<_~+--%&(XehfO^2hzB0=z#|@b!~>6b;1Lf5|5pvJc8NO| zi92h=omJw_3UOzd*0)IO%WK>ber|N&bn|Gbye09~-BF~EIvtreof9FIgO|B}uko1| z&m?eRcNoQ^0bSxkN!d$bUetb+u(Ky^M)4fgcu}i+$9DGeSW|OoF-KT4Lvtt9p2}cp z*U!tBm0lPpcmLHd3OVo1W3(S-y-)1YnXog71%by1|Gh7{z}(}Q;$$y^Zo=mg+m2#U zaIfEAQuRv{2LQjmXS6l(em_e2V9sW7XKGM4*l~*M-+eoiNtQ83JPacva&RiXK%75C zv7IE2ou<6a&t~z{-WlAYJ^eG<+i%bwzu6;Sc9eW9VnK29UE=25-WcUgax?#cmk||{ zs>SUwS|8Q$HrK~_Rp#60YxN;~;75Pq(&#>B~axF!{!4agzeoK;kSjY$5ILKS7 zC2^L=h=U$+&?63d#6gcZNIZU^h=@;DgX1#*{vOT}B@Ju@U z{JF0^ou19j4g=h`z7$^x`^OFSoNQ$ z--xEy9+x(c({D)Waa>=7VNVB|Yz4u*u$~_~H{WmB(A#{3-nR_BYu3T_a=VJ)I_{3k zw;8Wv6oYlp<0D}2hQ)h((0qG8G4yU(!J7DbKSI#&AID{U?Dr4`e)&PG+xvh(L!0N@ zyN#f|ziI0@jDfx1A!u)n2yxaY1qSwhi=e$RI;}d8_Qo-=w+|yPBzW&3_Wq2Zy&ba0 zM=9Hzz`))=A??j5z2(TkJPUtTaDRL=!gpIxkDF};{U*p6T|dI_Q4IV(sq9TFy-q}3 zn5tRo$7}a}a{B@4O=+CAv|dXCQdHD`*mD2#|615D^Oj@N?Tyi3^&$4mrjLj5VINux z8M8uxNEquL8Al8pHL#vR#-n0yaO0d?B9pp&>_P6hb~fRl{E)~$x4e)aGUSIJ)UqMu zhYk7o1AZ`fZBZ3nJ|WH>Ztn^Cgdv|auo-_CdJBmYO~*-mMSXJ(k5In85x^sOS>dF> zqqw5Y=V-s9VV>g|_?Ch18u-3}|6t%h8Tc;-{?NctjWUcU44g4=&cM$Y_)7*pZ{U{< zTre=`lBMf7w+{cd^>6;ceILB#^}9WAqnl3-`D1|jo4EM<$Ny3X!08O4)AU6PXIsU{-oS5v5bt5VMCD7Wk{u3)6WKd-@UnPbmMNl6m2NPx;~dE%s^PW7W^GJ$iJVwPf6@ v3U|2w44n(M^uNM=j`FSiHWcn?ao7nN2j`nlX3jt7nd`xOh3h2FSsMHg!?&{& diff --git a/release/src/router/openssl/crypto/dh/dh_lib.o b/release/src/router/openssl/crypto/dh/dh_lib.o deleted file mode 100644 index 1609c16d4cd139021b611d5d5a17ac2079f49ae5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 5904 zcwUuQO>7&-75=!SB+7IhN}^=ilIvx%v6 z=sD_>tM_+yc09stm$!{Q$`$Rge zC#O98PMBkOhj4E>Im_bmT4Hq-F}%1If;p79x&_8$Z#Zu`gw}ho8ufDP^U=y;pcTc_ zBsYiHF3S@pjHvK~>}-%7^2e~c`D2kkCi%i~K2LVo7cbrqMZ6p<$Go%S$NOVs#yH+A zjCId<_RaGlE_@GZzBAw5(~y-&!eIV1dXI%goSt0P-`@qt>cUTU;h*TjpX|bqb>YXq zA})@da!UEX<S*T<{8$G@{?X%86tSG1pr)eQELO)ripwzhjnUZNWRA<3P6o#Hs5 z>``Jf`pCitdlJR;#S7GpBrF$GV;5_NNdY$P^;UYc`M<9eQRWQS{Oq{AKz zkWJ4I&lcP15wWrlUTyj@_SJRq?1>RhTb5HQ};(Q7W6u zH|%DJr*hc5hGuZVoft~W}{RVSY*50CiX(uL(p#jZB7hcOB` z{aUY}Gnzaq=7i7-K17cSj(UKH>(QBFn>9nyi%WVTK|c*B{p3&SnUfeHF@Kw$eo1dL z=ITBMz8_pY_Urpl@!pjQNp==$URY1}kH;)jyI;iIK8@{$;oGf2#rueeoV3ovD?`N# z54(05Zy$WT%TV#+MrZ$i4HeIn@b<&U`z=(wbQiqWq2f(Rcn9F){Shi&j_@u>>pZ+$ zQ1Q-6cv1Lxe}#)TA@pt-uK(T$3Hd*u+I_2w-A|#~T^e@#Z?-!G-|oMl;yoa|O=+En z_a(IYlj0bLkN35Jinm4waXe7OT@1hrK`#S^Awi%j=vblACLc(~`u)a3ghkDzh_nLeP=QOF~x zWR~e6jULwMgBpEEqenIRh(@cwgo6~%n8MNhkt>Ah9*s^o-$5Q+n}d|E??`g4k&JlH zIr4qV9nabD&ZfJ5KNd9kON#seUe)B+#QOzD9>v?5{LhMf$hkLV`QOF+rXwH5Jx%^^ z@y>VBAm!hXN{Zzp8f|HGTF|cjLwH7$KPPCuQwC}O@|wJ&(ZAH_*EISKjsAm1e;{Z# zpGWW)LGyQHfa_!Tp9Jmwlr=k(M(1WUf3cP?mKrs9z39m^`RYm~KVND#pmn1&=UzN} z;aP>HwWUI%p=z}Crz()o_uEsUQ79Jk<>iH+dv=7=r_P-I(V0{E#ZtA@Sc2E6iZ%Sc zYn`H5DBFd4n}+9?mJZ^IUk*^aS+TTID3d=pb?#igwnE<5>&tb|9rC8>z01(qoXjOk zU@^LsC2o0Ix_fO)n-Vl7pfAZrKp2w-b m;FHIj|DORjA7P_&JkI`6z5EYjlRSX{ diff --git a/release/src/router/openssl/crypto/dh/dh_pmeth.o b/release/src/router/openssl/crypto/dh/dh_pmeth.o deleted file mode 100644 index 04734d5a01cbb7e01b10cf114d0c0e29bc9ba668..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 4848 zcwW6&-)~b@9RKvT>$;U6Wn4(bIq${73X-NECTNIh9225M7eoVzvFo%q zMlqSmq-cDQ=)*EmUkF9?#Ry?B#`wU44~7_{$^HOLF!6y0;{1Nkxp(*6(+1*;C+W`p zp6~bj`TjWHbME)8#iI9+43iFK6_vt8dg6FLR$1d_5ap!-Qjnvffe6>(3l&76azFI4moqWlu zkdC@eKc`k`%+%cVveP)8nPlX_y}+l#_R{(A&&$__ci?(EjVtXGzG_>z+)m_6Ca6 z#C&@N)5T)kFmegjT}v_?TQ^L`V0{(aAZ&>NupGtFqBvR*t_{^i_P$0n>KEGRXfH`QIY{siwZ7T*!UP zX|bAAD`7MfjKMi#Z{&Fmp0Op$$spw<>E^*Z1L90In|RUPOUix9PWv&&-TGREeN^w^ z6e4^!7A{8c8QlZ(7iC?AFIk9OGSPF1Y)}rRuU413x5$S<+7I6k%F8U*))T`b2Tf6L zA}=O3pEVIa8^gXiP+dpx^jr*6WP9Qw;0W7<*CMRHtgll&74D zlhc{PMDej*QXx}4;hfIXdJ*cHtB&#YQ)Und)h|ECS$%+DxW2Gg+V&GR0#2dO&7!rd)O^jr*lu9oz|U zuMl|359nM!Mw2C5k=0kn|I}Qx%6cs_G)s>uOWzci-_Br91rdT)Huc| zj&aC1`r*g%K7x3^QzAc7^gO)x5X4(tCwm~qTLmBQ3k311w1GDiJr8dILA)ixqt}?g zTLT~OI)Zq6iE&HO^YFey5HC64<0atZ{e~c3x<~eE-th2lB8WFOAnSkS3*&JFncu@OGr=1}mw9U$P6qUYfa zX?T|h{JKxV$9vkv%er#kL}fm_5psXDohvqZ{77=oDQ6_4%<8-12P&o|L-x)?kal_h z*f$mL0yT=KyWr_VU60_eWhf)8X@#}7Rybgh>0XVFiQ4DEXW9@MQu%5|neOL4O^n+@ zzF*_7!glxhBfC7Ecqg#Z2X4=j3eERTR-x4qUa3Zp?$PK?_)wv_#y(MKj&?z#ztre& zHToxwzNyiFX!M^N9aTz*>5Uql)#zt6`jAGys?jBv<}omak}EuY*)JKG@M$U<=qckiRPTD%KoM9 zH1d-Z`9`f!sh5Zwkn{oa&Kt}*R&yMT96CC7_=Ui8xlp3E2!W=^9Y$2%vqqo1AC0(t zuNtd?CeL&)&GSsfxybW+y3cstAoY8OO8OPw=K4eWS9#vvsmHfT{L#*Ji`RF^cTL|WAjRvOy36&gm-&jWm+vFaFW-`! cUp_CKcfN0UA6TCEWgK#!rXcr^_ zO}7OXUAT{SZSgO3;ScCv5L~zr;<A=q1R^Am!Gr!^s+Q68U1 z8a|B{@nr-Y`}*M!Ge0$1KRN-~d}iZZt3V%CkVWN2WY6Jbq#&8Mq2$v@<+)!OSO9W* z4ie8-)+C)8VexGLHTg#Ix(12I6f4pt8`WYtn4Nm{saKzR^{H1sgA2KYvjR5P)*fob z%@;54YOBVIK{GQ3@4B8bSi#h+d`196vZX@d;Eh$DAzHW9m5_O-^BbP9nFq|3Tb4V zqh&UreAcWtF`q{LH3crtLWF2f;`W<8^Z%fHTSI%d5+aPZ{$wmC2x?T*ct zJ^L-zcXv%^-!pC3?YrDs^W07>3AZ;~+YahU;b9duxW^RfJZW_{IEOkHyiau=U|(Im OM(>VkYV;%1G?3qm`kur9 diff --git a/release/src/router/openssl/crypto/dsa/dsa_ameth.o b/release/src/router/openssl/crypto/dsa/dsa_ameth.o deleted file mode 100644 index 98ebc0b12cdaa8f741fbafff3acc264c67c9297c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 14600 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 KSDcVTBmMyRWJFj1 diff --git a/release/src/router/openssl/crypto/dsa/dsa_gen.o b/release/src/router/openssl/crypto/dsa/dsa_gen.o deleted file mode 100644 index dae1c49f3f43b74414f0a5b3f8710cdc7e07d163..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 5316 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 diff --git a/release/src/router/openssl/crypto/dsa/dsa_lib.o b/release/src/router/openssl/crypto/dsa/dsa_lib.o deleted file mode 100644 index 47eda73f6419be9d5e440a4758f7bcace450b83b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 6664 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 diff --git a/release/src/router/openssl/crypto/dsa/dsa_prn.o b/release/src/router/openssl/crypto/dsa/dsa_prn.o deleted file mode 100644 index b7d92628c9922063c49fc008b14a1ceba2c184c2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 2940 zcwUuO&2Jk;6#sec#HpP+#tp5ZMXV)DS)^#?mLdfdAwviSQ9)D$qNj}$uY;>NG3zZ~ zLf`|3+?*S!=phHh3Dx~Lz@ZhnRN{aThaM_%$$@_WsfQjanfGRAyR&15k|(WZ-q-K_ z-t6qNzgay0W+IV5C<#m;(ty1bkj`W2tk5h><0+`}08=+{prpHx27^JUS@b+d&-0J{ zQ{9J(zcS>H=MVei`ExP(si?MQAIo|^DVm<Bd*lj4eD)lPrp%573yi0-o-(EaZdt!XYYUa*3^1C zruRm<+>`KApK2f6S72ZM&;E!v^>}Nj$2sot+`_^urgiS!4_+|O+GlL~w(ZUrEx)!x ztM3Kt$KlR*KlfqRYkm#(N~Z(cbJv<1jZNOH+wHmsyH$5rF0a|OmFA0Q0y8JsZ@m9n zyXMte9jEOzH~hF~lueCx8tqXD!o0fKYPpnr2ssIexi&8Ks^-tjwIt(`Pl%(7LX+~z zakCIL+lCTXRN_)ne;J6)-H+($YH=(t(Q`zxf0Y4Di0=bqGLCt@ia6eV#3l4CA$~3# z_mdJA);*7S-K&{k9&_CZM0GDAj`uAozbJVjUITHw-xa(JBD}8=$D5~vyr<-acwZup z_b3ybHRDYp!uuX^yga?Yzm>cY?>oft=CcuA4iVlp1b7u0_aGU>gp!aC|7wPJg=L%o ze%9i`HM}b<`)T?OPKX(SqX_Eq-C}Mk-YyybQgrp*tD@Rd_-6n`l3G?W#)NgXBI{{Q zpV0J-rcY{mPSaCRB`I#Ss^^iFd%mLus&`WH^BI>FozLmCrY~svMNMCmd%m*;;{S=} z-;(=#!aphQlj{Fb)30gzZB4(c>3_&Q-^l`>PrXy4$+uyzLLaBjTHC2NJ8dj}xa2Io zvv|?ja6gNbj_aRxC?~Q612n*htPRg~5e;NL+G~DV^Ig3-kKxzfe$VMRjpn*5wxalj z3r_p8@3@|~=?Uwq@2!hXybR|HF^&fF%QzN%U&hnGGOzN*j^%XcCB8rK`s@Mqj!S+g RB)_7pNBKLvQlHml{=fB&qRRjP diff --git a/release/src/router/openssl/crypto/dsa/dsa_sign.o b/release/src/router/openssl/crypto/dsa/dsa_sign.o deleted file mode 100644 index cb0965c27c9c559d278084f51e8b9a139382e7a4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 2016 zcwUuMOKTHR6#gce=FwUjQpZ(Lds9&q_@W?z zHUi#6fOrb?<1QLOKT?pzhVlvjAwx9I9ow!re_E}Uk1`#0IQvJ~C-7}k#nNU1nJ8TR zoYrj&3{C)VhqHUz(Y@A};X!=e8NkP#6h80t!%1Zwhd3`NhC>_PZYKAIAK9BK)YpgU z8D}$yP^>1!YI3d&+}Ix8b8*Qk=vJj%)0R8y7@#`12H>R|4|tzTK+SO;9kE;#lPQsF z@`Fl)_y=(@lh0qxjLgj4JD(ZX#x%M!&3an33q_jkhL|7wE8BQtLn{^R0<@xKL2DT0 zN^Paii&f1mHK0{XMscmI6^fNhW5Pk3UbwE8>TdaxhM{g5_L?cY4-5;pX7rVYVUW7c zskn}dR9GjgW~@V7u2-u@&BpQNEa1M^n1?4rcK@|zJzn%5ykQ!NWAHA(&1ps?-hjkY zJ$wZS{HF&roDh%YGL599H{;?xpQO>{@wl#Q2*&$?p!l{~1kZ(e^3V12J`C}G9l=`< z@%CwK9Ky2@+{ad&yN1|DH`@Dn1rcw|L23UTQayP{DXa5bbY|&+zUd%p-ynLQqn;Z{RpD984PGynx zDt@;hNi^gY4OGH7kdaV4gcBhwpCIGz5SDLb_(d_qpfH!e^AGdWHfx z>Hag84HtL2|H&8josuy7+z#RU-kRS`n(8fv?2wvqZZ8pj+)w`UQT4 zAK-_$_7D65otsYROcp*49PXUVxw$iUW*$!)XPTxVfd&Ip1!TF%6>(9GRT&GIgN!F2 zgMVO^bB*%=AL9aU#s*A1o~YMq`)0X*ezj>EFAffW%C#XlX#bmB6k>pIaXwW z*9BcU=3S!z|m|sZ0{s$>nj==`{y#;I&6!t)B0@-RQ^VDp&#H z-pmSpl$tM!xGsG9FTM><;}5zL=9 z5kAs~Q2#fCie#<8WR+D-}uSQrbxAEM(~MNys`MpAUidRHA$* Rw3>sU&00{ewm^nA;Tx|TK`{UT diff --git a/release/src/router/openssl/crypto/dso/dso_beos.o b/release/src/router/openssl/crypto/dso/dso_beos.o deleted file mode 100644 index ea51aeab4b55cefc56299a724b3cd4fe63da67e4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 988 zcwUuK%SyvQ6g_F8O?^P^N>H&~SwRM=b)gFp+FBRY3M#lONfT?)G^L49SN0qH5|@66 zAK)+e1$u8fp_70V51iaNGw05o+?m%#>rB%$#L!@3rlJXC^SG);qKs86sjD!63I2gC z;x^I5mtM-#pjoRO7t77d+udSSR0P!#!HXAKHpOr>jSulCbjKltV}%xk9Rv^~x7Q!s z`#g9OLuUlxIj;TO6PDdSs7wmA$mDXZ&yo;wKV95sOrM6JN0)TgQS zyo@F3)93hhz&)7n+e1`ym{EM|iqDYx2uR%99kH15F%F42W&Ts2o@1G~AbqS)klb&K zB;vIel6_&Hsrcf$w)E{wJs}nppC-A6Sx*>m#K)8`j&V;ICMCU7Tp{uc<+|KM{#SLs z4-%V-PQ3L$<_&!RsB3yEOHZ7HwOWyNHl@`Lu{NMWk8VQMx#+(boLS(n6Zp|<7G0#@ JHzPw$_yu`ZKjr`c diff --git a/release/src/router/openssl/crypto/dso/dso_dl.o b/release/src/router/openssl/crypto/dso/dso_dl.o deleted file mode 100644 index cc622024341094a2c8dc21a39a5a61c3bbc893e1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 980 zcwUuL%TB^T6g{<7z(<0tOpFm$Vqzu+aiI%i0*DI~6E$&%Ev-mGfzX=ZO1{A_ap7n9 z5&nXE6TP>za@!5@B&T=I%$d0}ccw43#+jyRh@c^jnF79vsVuI_fhuAR%aAaD3I2gC z;x;jjPrZ<(M!ixw&KK*Kx4ZeWDk;jNyl2-pEsFkV8Xu#U?~HvY+w@H+%k!W{PN&;{ z7;vMfhV}@`wH@oJqfD!NP?}Cq)$3;KqIPrMthVePRD0mMPT!xiQGrb$sL4{OPZQ(W zFcw0eKF7BMKL32*9)g_11>xHeJ|omeKpH;5+ zuE*;q&nO}L4SfB`F+DL$kL`rD%*Z;G(6U0T4M^z0O-P;j`{Q_Kj=#1ypqH%Lh`(&c H0-1jS)g?YW diff --git a/release/src/router/openssl/crypto/dso/dso_dlfcn.o b/release/src/router/openssl/crypto/dso/dso_dlfcn.o deleted file mode 100644 index 29433273ad61d6daf6eea8ef8d3a68e061d9fdc2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 7096 zcwVhpZ-`Ub6+iDKW@Zw_sH2lHqrQ~qOtjM&bzI#=mURBCeweLOwR8)mF@N4 zMwBiz6_*ZF%s>lOSe9Tb^h-Ndh4zEX&W9E(v}HdPzZ8TD6t{*uK@ZnhO z*&QFi^;SPT!*SA9=bv^y9<$(+)e-plY6R}DhT-ulz@1iXxruwU#U5CTaQKWGH6ZK&rfrIm;)}q& zu_1v)1Y?u)G0QS3b|0kn6K^j-*noHJPG@TLaQHj~n^|BuCBby@yJT{#s-^*fQ7nZp zW?@_EB#$}1A8?G5DV({-_Qel=n|Pg0z{WUQ7)J}^Xki>Jj01J90b!m(%+Z5qm$h2V=`?5QVitvU?D1UB`Twf`C1VE`_1J>W8)P5g0^V z?lwOM7nz)k#U(SM_-!!!xZfv@fIW`*MP%NrP`*Go7QbY=>(}5_>nCyjh_;^a948%C z%Ji;BKJJP1DHhpbb~?Ex@qEx2jD_c*(+Q7uI#d_jmZ{kKI@-d#AC$T%Zi&Sg5eudl zi=Oz~$^Hs}tPiRU#z+5%AG796j?oX=6srL@Y`MpbA5NLLFSv(~a1S5i9zJN{zO*b+ zJEwZ=V-okV*B&w-ZZ{!jwS^CD7Z1efh^%eI#(*!66K?>lod)Nf%8 zZNwE%ZSw&coQ44ud3n5VpG7dl7xY-Y> z5giMXUj)i~j32S^L->{(JDBd?@E+Rf%-DSjrc%cO>iAp7wYiaFm~X>9ps#Sdr`o?r}axwMhBl?gy_!vVneY#1-$6FXI?j&mI;B z(Z8DP3=-_Im-FajMe*;1hCnzVwwt)RUmgsjQRw3gFe(AK~9`q%R1rz8k>x z9TRe41oC}lonP>O2wuB4QEpw6qwD+NwVRA^tjX>+aP87ZwW{w1ZuFBL`+<$fqi-4Y z{RFta?cnPB4S4m<;%3eE(D!T5{2S)@k-i<^>U#lReYXR>^*sl#zWa*4UEu1&1Gh)t z^FG9-hra)S=HFgd-)?aAMKyh=anVy{ozypEX#VZxHA4D^z}0t5(>ECO=Cst8(DeOX z@oyMheP;}Bo!<=c-v{I+^-XE|s!_MzqTuSA7y6`*$Ea_ovd$2Hw1?6rUB5@UiV}yR zjIw9YwSdanK3;S9LS=TT$B=KTzWzN}3qADdmpbo>tx9q_Jro@M+U8h;mL zJ^Wo7e>c>`^LvcHTjLMGcf>R0xXChC3r`A3cZ zlScnVqyMSV|JGK{kBHWX!JRa{;EcQL!%2CUDoI;8vQ+u_WZ!7 zop*X1^19A)o)cWpbDMrz)6Qs~lbLcJvuCH0bURA7V{|)Cw+XtPpxYbJbv{iOs_Fb< zo!qQc9SQ)C#dyyZD|H7)<}sd6i^wZErCjwIPCB((r3N$S&!>@{W>lJ;mT9WG)ZkMv zb^dE}7tf_j1VxUN&}teMYRr-OVx~}sdbPG#Zp=gda=N@!qTx!Wxa817wNhonQhk9f z5D2B^FQ(GMe9dwA{?J#TMPomIH<{S8FVVP7^e=2TZ5pu<)@a1`@r*`l6IAb_9c($s z`*z?UufPFp1N5;U81Ckiz0fGP7sA6PeVc^h-E#DQfq@XO{Q!=qN$!x4Kg|6LeV(65 zLU!bX97Qpc~%_oJO!@|xH zVJ9l=M0tNCxpg5IH@KW_aJi(x<)#g8zi4pzWijf0#)X~~jYoyQcvxH(_HPLLH--JS zi0e}!N9U-}ae%*)+z9t8Fhc)VL3$tBA%Ad;yu$v3&`0Ov&;-v5qML$Vq49*kCBgH9 z_VcNr84ly@#|E}9)Yk^~b9(_Cw-SATe+vW-e0KZq3;L$8|6?)#TVel&pvfNDw}kzO zupbxpM}+<4E9~1s&skxQ;r|BD51Rjw#*+Y#XzY={Z2c**e+iLiqXIXi?*sSm32^_` za2&9B907~x75PW|N&Y<-_FjthlviZ;ERAn+`(}{ar@CZk-`%_(scxwkQytTLj_R7u QDOBg=I@LXW&ru)vFIlla8~^|S diff --git a/release/src/router/openssl/crypto/dso/dso_err.o b/release/src/router/openssl/crypto/dso/dso_err.o deleted file mode 100644 index 9bfe4768a28b5ef8a2ebc169a04062a8ada945f6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 996 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 H%Fn+6P1Jl` diff --git a/release/src/router/openssl/crypto/dso/dso_null.o b/release/src/router/openssl/crypto/dso/dso_null.o deleted file mode 100644 index 3f6687669bd4ee612dc59df66905accb503783e7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 1420 zcwUuL-D=c86#lZwwyCGPK(YDk5TA>&4m@wBSV{B%5@1A-h?UEOf5~ z@!sN%2wwOAK9U!G0?{YXb21Zl62$5UhjYF;e=}!h-t4rW8HRxZ25d|ja7tu$0SB8o zYhn@e&|v`|@E^EAax=G<9|50NSI$0}z}xpW&PYGKwRhNVJ892L!oZ38e&Qt)XAow+ zIQV!H)!-8;PPY>JkkGl+CD$UL8PmPp+ztSmgqAObJ*ApA6iNWyM^cpS44 ziBXV141&-fcZKKoH(GL;lf?GRefP!AtLOXM?r-l-|*6 z5~mW!xJNRltsm9pJ}#5gRUGrjDAzkd8HMiv<+*TNb$^UD%6)^n+#mO~G3|Q{S+Awy zPDz%vJWKf}D9`yT$yz0jF-E!XJMFv|G41;ivR+Z+8_ANEXDC_3v?t>`$(Kr8p^H0X z+^0rAAn&yS*_UnJn_jO;``ggCeg``Abqha#={~cPWtMirT<^$yw!&>(QZ~=S$S0-y zFI0HdZ$XEdzbu_Ma823#R+gyW9nH@(2LD+8tfGVR=dJ#Jw>xr!emau5wT9I7c{$@5 S(tMUV8uS(B>M_*l(tiU5*>H;h diff --git a/release/src/router/openssl/crypto/dso/dso_openssl.o b/release/src/router/openssl/crypto/dso/dso_openssl.o deleted file mode 100644 index adc3f8f93c30bdf897344f86170c7bf1aeb7776d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 1136 zcwUWD-AV#M6#lkdb<=)Kya+1NZZwJ^%q|LvK+P^Jg$leAbypMoS=p{t&# zN9YxLf|}Xc#n~aO56+(X=6rL`;mquFxq7K63VbNgF=s%Ml1Lo&yvwp!LktoU^2Q?U zP}_A^+Xdh)lm48k!0bgwN_Dp@#o}2iTe-R4PvuFD(7MEa8ak~u_0EL*2Y=<5QwPLo zIW3U3ZG%kAUVqdbv&Dc|#sp+&nC-_NX|?;uIlj#fk z4$YCXp!*=U0C!elk6%dfxaZTJPW?ldp{D;scL=wpwIt{^1)b*cQy_4c4QeS#$8bVz zS=g^@ypI)XAy3EnIfD772*Qum5u6Lt$^9`@5v<$LxQ^A;F|XSP&v)eMUJ-nBif0>` z&yL}p+CrKp;q=ACK#aW0D_ceTdi!oI?r3N}-T&&1= zMB=){HHc8%8xwgH>)x8pHbKwt32`>F1A)75%&^D)UqL$fXph-p;*7T*(sD&Nl_g&dT~9|qUa5Scpr^CXY4`Qre{J~qY>25>2!N{ zeI7ijfjxwBZO3}*DAVfhmx2UUy=u13Yu9JZYU|mhq;}tRot`&ir&Fv0eoy8@eUg~Z zg>ftN=`(!W;PcP+?ZU4)ND1Gn@EM^#1Y&n~ODrUOj00j;{QuO0eJm2^LLcj6#Mc`m zj%codcwg9;5x%Id8T$4@Jt5|WPYbz%X-^n$#D|10icwD(1|_{yTq5%8^V%ZjYi2`xLs+JJ=a--Ogz|9%*pndh%P>hnuhZ6uy{ IfD|?14{aJh*8l(j diff --git a/release/src/router/openssl/crypto/dso/dso_win32.o b/release/src/router/openssl/crypto/dso/dso_win32.o deleted file mode 100644 index 7a571331e2d7ef709dcd7c37bec1569919793087..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 992 zcwUuL%TB^T6g{O?z(<0tOpFREF)b4p)^xl(32=H46in;vd)~ zZWA;3)QdS9G^*9(LaA|iyIZJ;vY@c)BxmU1#9W*{g~T1g*fL)TfDj zPR642>2rKL;2zBP?IEZ+N-4f|#b-!;1jNqmj#xC5HGXJ56`&cF}NFVDH#NRhT z98s=`cwg9;QG8L|j`ZzIJtgK9pC-A6Sx*?R#D2mT#i%EY3@v)2xI*L`%5}Mi{H^Ny z-brjJI(FCpm^bkCt>*N^Dm}In)@nu8>4a80#M*!gJva$fXX(ES!7KCpw7p??n?(n| KE_jF(HR1=Gn?MZ! diff --git a/release/src/router/openssl/crypto/ebcdic.o b/release/src/router/openssl/crypto/ebcdic.o deleted file mode 100644 index c7bfafad7c701b90b415b9b73791b5f149a8a098..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 782 zcwUWAu};G<6ugj-7FYrk5=)sV5_&?VES-=lXa|H~Kw^y(Q-YMXN{j>(zrY9aQ+xr~ ziA@|Y=}D)1mv@fe^XK*LjpunV@X$x&fN#k#!u_~%L+r`^Mwm^flfiIy_jo!O(}?7G zDnD`&GpVAe^~F?zzY9)U-wtQZJ)@cFCQ_kKN6tnDN1WHzU&X=NVfCfiE zwNt45mD7*39_yUnkvoy>Z;(4fb?17^${kv{K>JIe_2y4#BhWhO$eG?;*XLI5z{x4@ zquD{>Rr0~f88tg72x-2g?n>^Uo-fk1{lCDkGY0nTHtg>Ketzwq@0{{mlPGWBsC)<; T{{QP4zwP)Qz*&-J2_^UgzyK_K diff --git a/release/src/router/openssl/crypto/engine/eng_all.o b/release/src/router/openssl/crypto/engine/eng_all.o deleted file mode 100644 index 60df5da510621adc4bd613776ff757b776f99441..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 1420 zcwU`U-)qxQ6#lZbTi0x}?rET6_S6Y-8FPY)h%jpvN-fNRZy{-77f8~Oq|l+D|3RM% zKKLI@e0KP+^k2}Yz14GjllA64`0Inix!<|px##BG-20)`d9G<13TUWd$$*&1S_8eq z1>3_G3@G@j1|)pEoX_V4G0AR`-CnSpkAY9k-Pu&1%`cie_tLDwX!{e|u>7B%A)Nw*{EDmi}$l>U=95a%oFIPR0JOYu%s z>|=whn(H`!g7SJ}lu^v}Q0@!Yol3f*ZU^PMuc_Drh`Kc_>n0HE?dQ4~*|wCY<#rv* z-f{dSd#C6MU-XXSGbJ@BxJlzWL|xu%zBhTjFElZgxZDdFa=d~cb4bvYEWNZ7&gF`n zuPMBy@Csz;ixZQ1{pvN~XRuBAO=+I@Y#&ST?|!E66NSrX$@zPQgD#b22LbEjcUR6D z#Fp!)F<$jr-Q(kq)sIKMYo%T`ic5(}YLCkSH?bqP6mriZJM^y#@;4#Pyo7JVqN^PT nUgi~hT&W9RHN;u38sfef8~pVozbXDhV+(k}{WWoS4EnfVqZyfK diff --git a/release/src/router/openssl/crypto/engine/eng_cnf.o b/release/src/router/openssl/crypto/engine/eng_cnf.o deleted file mode 100644 index 4f4a43985f1768a48f7a4ce674b3eee27a7ea350..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 5580 zcwUuQO>7&-75=!SDAH7FT9RF-RT?tbSc02Lg&>7fXn)K1)1X?!Yr2+$mI2v8q{A_rgMroF@{T(IxW z%yMVfKY<6>dHeppc{B6&&5*B7PVM*ke6X7jAvhehFwhyr%&1@nupL``b|wgaGSn$Rrg=g^x5KKu9&SVYUMH{tCkjOR=$+t_sp?k zs*p=tmnM&(B)>CMH-nLeJEped2xcM>Df863rEJHQ|?CNG<1U zRw}<(s^n@*g({7cP1kaz;$GGd#t1jNm*`8W{Bm}$jI?hL@MeE}r%R7YEAiPEh8~zwR?7!D|?4Lk~$r$l^o$_ehjMV25kHTQQdtrS>STVxt!@Dj# zfwfYnyh}!9Osn)5r#itg2TnOL+w(KtVRJ(8c04klWDM~$N#Vn}7GFt{&(F17n>1NR`_mgj`P2!<{SpT7 z3t_|iBki(gfNa>-hX>79M4W$Y+E|X=q#0LsHindE%=l^&uiEpCIdQ~?c)ZE>{9aNv z(%;5U8XN<#zipRy**P}TJcl99$K*DBuC!l%jv=h#qxc&~5bM#uJs-Z>@l$e@xc1mE z^tIC0hR0*wrn*6O&7QaP<2~p79>d#e4fdNqZ0Fls4gL;-nD2G%70n^8#(xBJ^sQXp z(P~}Z;mwCPw0zikTfEL*bhcySJb_`45o-IeJZA77uw2ivtrRQkIR&DLLIV07Q zxMN6m^ISORO`3}jQPVr0$5jmRGcsTGc`Ru2@MCTp+jaB))v1bLp6bg2)xvWs&v@OR zF?)#*3Ef$$6;c-@JbN#I17e>fMzY(9J!!~X$2Q*Qi1rQH-}BDsKaHT8n_tzc8!e_$ zlWI?cY7gbi2Mww{4XQm2syz*=Jq@Zo4XQnjq^ey@T)Pg8k3St7I57RfW3kc1NP^Dr zMDFcHDjpcYLQQzJrkQh2g|kha2xIF=frq#ybu- z-Zc#`0tfFcxbcPzIXAo6c)x)g&+L)w&v*~O!FwNWyyJv-Uh}i@-h&%&PmkO?#@h@B z?-RK3xXP^CAaL+LhG+cvS*x=RN3?;|^(d-I|?GJ&bK*al1iw zo3#Y;Y1GbTZdbd2i{$uCdZz*^#^v1SIp}z068`rNc;2SV1Ne6fTJw9n{H{ot*GFW& z)5C{6d|2cVH{J__R^buFb1oWft!*E{_tm@nE_yur2XIKebM6@;qjdddksI933;kw~ zev60i5x;qy7D55gW)VV#`d*EH84$m-Y@WZLA&vhT^rBr z%h@mTU0_uC+v6k^onZZ-GtOZ}=UDzdS=TroFYX?eCuALsJPsUXIwb32WEi3*hG}uQ zmIb@y9f0j_D!Z6Z+Ku_7-5#H`JIr#rxXrShj-ol16FsivM_Epby25gz=aqbo43k^a-so4%5SlpHn)rTAa63!@Po9k%o80@ zb|%ZeCGTWGq7#N3FJs90Eit8wZQYRZ@m(uS7xtv0C)tna8KpnXa@xc-mJ_|g@+W~y zO8&8uf6hGR<#pzXhWv88A-}{KBpQB*){|(E=s}i0MeFF7ao3go3R6mkOMZ!W#V_$b uQTh;Vboe_oZ=yk>eMBR4q3>e(!!!=diJHt)l8rJ?bb{@krgaEN{QmVrC1gNCwT^+#0T(U zJoo}Wf$q26hV90{B-5|6JKJwN-M%$ica~)#frUJl3djnPE8?LhRRz1)f`NrOunLEQ zM}m2L*>a#+uV0rd&GzGIxyGtY^kI{Ez#Ugq9>ukv+;M-#!90gMVD4lB7Wuuw=sBdD zAsc%USm62Yw8tEGa8ZpHutvLi-)?kx!n@#$;Y(_g31LSp`k*RErPY^@K=gp~IG6Le~YE3xQUa=<1Jp%LC22 L`2V0wWJDl;p?62% diff --git a/release/src/router/openssl/crypto/engine/eng_ctrl.o b/release/src/router/openssl/crypto/engine/eng_ctrl.o deleted file mode 100644 index 5299351b6b34502ff13ec87ec53959b95ec427ab..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 5124 zcwUuQZ)jWB760i;mMlw&pJml^GAGkxs-rAMC~3;P5yGqgG%J|IF&U&RAX|Upc(Y~C zRv?2yguAuws#zZUlE6NwPRm9YQ0jK2uypnQ5XKlIA2!H74Dw-Y8OtDp4e}wNo%7y# zepk;ibuT=hckVg&cg{V3?tSvr(XkhOJ|CRnLpxlKMg$1y7(Z??DeOa!D#a6A-N26H zYUN3@*>pIQo&)rJVM`urk!QBaQF*M$Q`_X7Epk(l7faLGe0gy;od=#>ay0r*06#ut z+`sPMY<_&`1U_jD;={&q{JfFD2aN%|-$-Gjk;HqA1a38Yal2uxRbX7J!>Dh<`00Iw zP>GM@!y0hC){j7P6>Z631e3jhuA|-n)+||=WCuwG1pC8}6aHT!L^`)?=W%wGOg3207z9{vitHH`paWX6iCpYRWgq_6%=NcpXyDH8hC zff%nphoMysLz%z8j7La6iky|iag3}!LdC)XUakHclh(QbmaBgyT|vduUx7 z+36(eC)!2ykl+MS?{VUBQ{wTw#Dmuz*s^zaRYxLbR1%t>{a@pHo9Ne}_XFB$hvoP6 zS^$C7PbkjzyS5sT`4CrT-e0N$jqPPv@DAnV zMm4at*Y)bVwAUkgncmBm%_x2q_;0h=ujYVleczLVW>ZhT#kdrw5Y`9g#7~N4t)jOP zdOm6B!$gOwhJJxM%e1`r;nzuYY2@oNaU<25uoj)ohJw zwnjBuqnfQz&DN-9YgDr}s@YmQ5`GgOA9B}?Tk9;p6VTXi;5Dm8jYM7ZVKjNzvUMlv ztZ64(5%TFX*~7A>%lp}t{+2DcRnTlo%)_3i9 z)avU=SeU80_T{D-XUvm?&Ao7jcpv5J9P!QOoupBr^GV-LT<%-=E7S<_0Pq3Phx8<< z5v%kB0$gnF`FNMk#{oJYx1EPzP(veM#3qd)pSDj8!*o4DL}35)=d8x8;Av_CMzMKgieP3jwEA9pB!4%30wT-$HZ_ zA0hjMYuQYBZ1TM{NH&ktU6i5N4^Zq=PV84G_G=RRYujW0Gl~5-cN_bPiM@R#k8+nre!_V2V;Cu^mspB+k8gE z6x$udbFcG05_pH|5|sSzhewoibX53XIR59;&x zsn0j4&)=gucKh23+Nt5;uO?EbPJjJy;&}R4n!erAOW&C*PvwY~7j1gUc`FyMl#wn> zm8X!-EiECvSe%|IU7Y8a+4MqT5$U-?F?V@7J(Zhz?ifwavoa$cC1^{FG18-_PrY<{ z)cWeOXGL+_yjMG$pDR2?GFQmXEM<#Viuudr=xlN4#aZ%YrZjCUST=3*>Dl@G)NFdD zRL+*>vxVYPesN}@JTqTHIzK-*S1gsW+wpn8`Yx6a5V^_Sp$j!c&;KcU)bw=seY)NN zESn3OqSveF1%&?!(DL1Wo}P+Fj|Y91A*{^5-9>i*(a+J-CVK4GNwnhKL+fy4WAc7X z(Tgj30g-3X8o!4uYirfx@eQ>4_gnVQXZsh1>)&PAcurg%5mukF&cXXOTJioy%}Xt1 z;YHx${Q#~0Md>A=1i-<21Fd*{-7el9xOhK7E1n(#)M|6^ZlD$KT(_H#PPll#M=RcU z32)5VJY2jxXvHfN-U@8IF1UFALTjDg4Z9eC`~DBK;yvlM*E3!>T)Zxyjh7Ld~%JlIP)_Sv=W*ySE!-&DMNx*aQLs5Pt(bv}UqG@%T? zXO+Lj6XsQm%!fRDyN6dJ$b1A*dAIwc+aurO;X6Himxu3Ge=~zKLU-Mk4Q%sA%{22$ zBU=13I4tknqcQUTc}33FPbxg;Va&sy_wZQ{f6>D`Khe48VzmEPJ@OyPJNHnG;&D@W z?tvJ2^c#=9`VWAood3zO;SB#d3iWo%PA_B&GfN8?otVfjTrOvei;MG%7@l}}{M?x= zT_)cG-8A{R1tzn_5{6znlU*t;(B)IU2=9%?Ao1+W zRpvR45&A&*gUox^^~(GpTz^!#Df5#%;C{rE@_kq4ABbL3@^Qjv^XG+sMfke#A2B^h Pcc08Z@VS0ybfNqozLN|l diff --git a/release/src/router/openssl/crypto/engine/eng_dyn.o b/release/src/router/openssl/crypto/engine/eng_dyn.o deleted file mode 100644 index 054bc900a9f8ef49c5dbc632fc7bc918911165ae..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 8828 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 diff --git a/release/src/router/openssl/crypto/engine/eng_err.o b/release/src/router/openssl/crypto/engine/eng_err.o deleted file mode 100644 index 220afc6d571d88a151b8f1723d8ac6c1fb470b26..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 1004 zcwU84%}T>S5S}#Erv5v@UVFMJ*)QM%- zM;;&z_|nsfPP=_st9N?$C$*Mn2&^OG*C4SSj7c<)PuVE(rU?kwPHYfP9D|5Fe;7WF zX)qEKHv$p3p7Y`h+Zi?+^8{h``_^b|yO!DO-1bZhcN>O2W)H?e;DyQ311s1ANc*!c z^|i8Ik?~Oa^cB8ipkA!@okCi3QeeJa<||5l0g$`D2V_n05zdiiHvg^9&#{SIlRnZ{ zkl$|#d1Px{$oGYO2J>ZgpQZ0i>KU@ie46AAEP6tCN5+aTi&;+y6-@fTxP_#bN_DA+ z^sjusPZUQ?^MB;v^F{diKIn OBnI%`Gfz>#X8ZwoHAXW4 diff --git a/release/src/router/openssl/crypto/engine/eng_fat.o b/release/src/router/openssl/crypto/engine/eng_fat.o deleted file mode 100644 index facb38a325c66cb4bb79d7f3f1a847a1d71948bf..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 5164 zcwV(vO>7fK6n?vQ92+N%328}7fZbw?|0cd4gy^5)R(V#mMcr09dKu%9d0g!U~vK9%3R=) z=F!V#Ks>jCHBkQ#jIrl1_M8GLF88uWgQd>(jE`o~3=kq8m66a5w5pR`Csx*8W$VTNvl2!R>_(xV17z{ro)gKDEcKm+#{9^{^h( zRC^AW%FuxGWb;xlD&Pr!hU-wN9O`xY*nBO)_}EY8e~5eq*3Zu)U#){bVZWF4^WQJn% z{lH6o)Ne7z<}k-_uidiqT@RfE%J+!0*C-z~%ttX76L2l2m*)ZZR!Bcz266wr&f}Ir zjW^;m?xT2huW4!zw=3MPO7=b6u5!CqvhUz_FSq+8`xb8Zb33SR`zCHDy>0ip?Lo(m zdJnH1jrQJ9!w!dy4?=rz^m>Tu^qrM;Tx|`1!ZnQH8g}6tMsN+=?V9zu{oXXV)=7Ii z1lJa*zG^VPplh_(ABMZ2!H%hbFWib_Y3Fro7kI-|DnYbpW^?(eS$dd`7BWSM&ScDq)7fZxBG(gVYU&hC4G$a{P8q~6 zS!U6goSi95o0jH?p(Evv@Ud9*qlYs>|Oaa5u*`0`7Go-n_tb;tqj3?gNZVA76^=hicps zxcz;F;GEFU@iz-@e_gErF<|~SK-J%6VE*Eq*Mg92bgs>QqaHE9%65b%;CJ8q~kUvw7sP>x|?JW}CXs<)H zHQDvVD_{*k7)2B8wC`2?65iVc{0iPX1Wf-hnt-VuL`2OU)u0cGDf#-tyI4c2z0-#uAb_`p1C%$U}x+EA{u z3O8o)fH9RTmMl?`rxO$&H}aD+D-#rtDXSb#q-l#LY38Cyn7pX&Uqd~(st;imM1Ac- z)L7G{eD~TEe%?wR9X@On(#4W#Oy_8wMn{dpY0EH+#o3~b(wPiHhJEN{P2I|Bn!1bC zCN;pm-6|HtGRYpsYuLtWsc##riNWpc+!Vyl2TAIzmIYtL?={IC0MjJHZ2t#$uHmPX z_m8mn!L96D8jRHP?RdLc%?;q^faJxc;dDG!esAd`4R}Q_vH()Z&q+Gf6w~>&XE0i NmOnm}S4ofg^dE*J2YUbj diff --git a/release/src/router/openssl/crypto/engine/eng_init.o b/release/src/router/openssl/crypto/engine/eng_init.o deleted file mode 100644 index 85faf133ec5a0d76174f7334f5e973666aeb6a09..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 2808 zcwUWGO=ufO6#iC{ElW1>T2YOmYPt);Rv|2|n?ll>BBHuZz_`LV;DSMsEm=`*OG1+S zM@zSDD25uZOD{F_;6o2Rv{4g!$RQ!8_7qBvJ^I)~F1_Uts=l{7W6iE@+<|5Gz4yIu zzIpR@q|ayO-qAD-a%dPp&jKDtfT)iACD+Ozi4mydIimM)>d@@x-ELP}20bs)^YT$V zY(G=tlgHvwU;gp<>G_AWtynj*bVNWqi3ah-}idZCu9w&H#+_oD+Lygn2fN zEFu&qtP=xt%5^kE(n|>ME+e$7VKuGcYMS2fknax1iQ6%Cn<{n~Ht=wwT&onSwQAd1 zWyaJr@WX_8xF3E(S~8?1jk_I#^o)_7LD)%i+a}z;qvN16PHTOLzH|=#Y1U+31_p6*^wOvx!x4#)d|QI03LF0=<;i*4p{`7%J9^vD{>+CCzl_XD-%x-tjt z(V;z_S&QHqMwK(U_kH{Tcy?rZ&| zed)%@XFHqAyAq@iggQt#59YYi<1B@gm^fas9&12I9JyO@RxafulyDJK${G zMYwA=LJDq7!9|391@PU$OZ30ANp5*%le!icGFAtCJ9D01e!{eJ2xTj$cBZnp){soo2!sA~u z{tV#cEPI8=(g4lGm}g;KTEz|6uzp|RC2l$*_Z6S;-= z@{8{lIO`aPxCDiJty!j6ySf4Y9qEqHuy;R%bnos7C4rkfk9zUG5wEBENBEx}Fi6e2 z$n$yc`{^H~{$qRCyN}q<-$9K0w?#b2lNY!-fm;-~+rn=P|F-b|$bS0M^P89-3mvEF adt2~a6ZtpUPI_m~{;c5tRK&j*dH(^q(Rv~P diff --git a/release/src/router/openssl/crypto/engine/eng_lib.o b/release/src/router/openssl/crypto/engine/eng_lib.o deleted file mode 100644 index 78168803069032f3fe9af530c95edcd56aaecb85..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 9436 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 diff --git a/release/src/router/openssl/crypto/engine/eng_list.o b/release/src/router/openssl/crypto/engine/eng_list.o deleted file mode 100644 index 29596c46ad9c4157d062d020bcfa20fd41c4eb96..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 7208 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 Ai2wiq diff --git a/release/src/router/openssl/crypto/engine/eng_rdrand.o b/release/src/router/openssl/crypto/engine/eng_rdrand.o deleted file mode 100644 index d689c1ad64632f426b62ec564aea7a6ce4457e45..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 996 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 diff --git a/release/src/router/openssl/crypto/engine/tb_asnmth.o b/release/src/router/openssl/crypto/engine/tb_asnmth.o deleted file mode 100644 index 733411c4397c67768b97d3c3b295d8d19ce522c8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 6440 zcwVJgZ)jWB760kUefk!|p|Ti-vt@<8n~#XkMea{t)MKH-!5ha>O8 zdN7Sk%K;ck`~8)-s#DoqrC6w*Pfe3X{0Q))A#;5-c)$6A{eK4vLXFT^t>YMfajNiYeF8w z8$&VtwBClvFzcPh6#4bFB+<8GxGMGcU1$7Vgvo2M-M?wAILXew zAvK2gDTWNia0Kr)M)7XrFy3jTahqbgMKRr^7~XCqWNc|%UN+ZiFyCL}J?S-X)=ju(IAa_LFBr90AI#yqhDlDd zPaicikpL=#W*DH@>lAyPVy{!|0@BNEkhsUI}4rBOhI`R(Rgd zM+R*&A8jaK4{_>Ix~}Y#!LkG4OO!*}E8+uqb?`5gAJ+N2xpB`$s~TFReNFW7S>W1; zQ*C(a;xg4m4d@ZMxiu6Qb@801F4~a^JMr4*3h;km2{)Op`57ODZM`zPQ zN79Lv<%XzHzMrmcdroP8s6rOy9&;WRldAmpU{4-=-tM*?;(oGFvNb`5pr5*!_TzlXDdJYHt}P33qRNg_9a4j`@BAE zm8W&`FHZi&HtuV?h9K^Kh`MrkwZ?d#MSap)hZ$H&>jU=a+n{G*d>Z zFk?+EoJ-}V=AJoZ8>Gfh9DU)$c=nuC&6X}$FZ0LiV76dY&sV$(l~xMnd0vivIY`cl zbyOQye|D}olO;93j(=fIFF!wjfv2+5Q_8GWq}VLoqwH+ivUak@PIR*N8h%wy#f&wZ zTgbOciKfh(P^ntwEi`2;3&joHTt5F0$UD+j(0#g8Eh#N_s;E4LK0RM3Sj8%KJ{|)^ z@7p2yj3y6DYD&G}HhOeO_^fTKHv+L{$x!rSie8)Kp94I-`DuFAl!-P;pQWc;(YyOa z;5<>fAkZ%L*srg^i}yff6xnfj^TK*vik`D>LDPdFzHdIg6{&Yf@;xo|SpFKkcrnuZ zP}Ae_V|e2ore>Rw;G`x!n-d?zPztiw;baEf(4hQcy8r}^h-pAnLH8s575?)@hbMXGF;r&^` z>xYZ?l;Oo2?P|Rr`wcH12kGDqz{PvX@ZMLayIc&weV>=>rWL(jMK2&9u0;on$9GBZ zqT%uZg(}ndBVCM>WcVcPeDk_|S8@z0-eKzAf7k*~AL@J?{?&vsf|^y(;|cTXip+Ov zym}Kd@5waryEHx|?hqavSAf1I`y|hIhaqkRRev|s5%kF))%ZS*-=pzSq~ts2)({n{ z%J*u#F7MZP?|&PD6wiyE89jcrqL^>j_QHL7eD|x=Fd&z^8CjYABuLyY`zN5+KB%cuS zJ@|np|B2+6gglCSn*2|aUlj7a_>U&FF S(`SGQrce9zM4Zq19*XNGnWPJw&9Xa@ z_M&S^F^9sUr$$6Vp?VRb;zcl2Z#@Wl^cV!a3nDov>-WujlX)|bM@6kA_2c7(2KwVKJ5lh7?{7{SrZt;Q&7ua(7(ZBlrj39JGNi1A2gdy-mKDM(AU{J5uNUT@zn4cwExd7W@ygGAE6-at!;a zpF^Ef5uL4coNA-vWD6avfwiP*-2ShIPUEys`bJ4#hV&V7ZkZq6+JHgd4sAouq1Qjn zGuu`@2mbbVGncl^9Ehutkvh!d%-QUvOD~xdvvY4gXI`+++qA#!+O0LWut>FA74;3j zCw8J0lYK2N7}iF-;lK>arzNBT0Fc4kHk&F>$9RM zxQv49lJ<*0=uWvtKU4Y8CF>XH*QekPP6AgT^6Qp3*7Y*Nd^c4?@m)oDTo~7@;QW4_ z2(C`XKnvXM2#yYK+-re*58*s=DRDP&9{mXN_zYpbtR`@N@%cVMnD3nw-^7A%00G~R z2=iSgzAYur=i5V=Z!0D4R_03~;QIq%zMqJ1Q;GBWenXh=2Zhf-z}K4y^Uc!&8&%?b zzOF=M9Vqz@A>f;e@Rf+Kq{R7rlMz1iiGVMSfbXpc->-V>`B;eXT~YW(5b(X52=Ai< zJ>UR>_Ll5-O2G{&xP<%-BH-fEPXr$+Yd@jX{+{HLrA0TdiLoAr=$Ge(b5QwQT1+3b z;ENXZdl&v}LMeJAN)IVvTkVnU6A@e8p=_%o&31pp9-#YM6wWIVI)T`qI()Hm{#s~c z*>6BCdd#1W*dq};+MhbZYUuQ}^dA#ag(r!qOU{yu z4$q1Z+!u~^PmBRi)?+2Q&uo#|ZDIlRv`2hp5r&j_CGjM#fU8Nrtv7I%E|bllIoDS1YoKZ9aV z_6){xeD5d6gf7Nim$=Jpr-aU))X{O*B5~K-#Ic^_Ik5*hF4IOA>rGm~MXsNwbCv6} Lah#WDHlF8yCVCh6 diff --git a/release/src/router/openssl/crypto/engine/tb_dh.o b/release/src/router/openssl/crypto/engine/tb_dh.o deleted file mode 100644 index 99bba3aaa7b5e753bfce68eb19901c87bf5b0e75..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 3528 zcwVhn&ub%99RJKr+D+QDq$TdAHLDY?G@=a4T0v!%V6CmNloeL+pk$L~ngk|kNG6ay z8KjFBAr}u@@lY1L30=g4hh28TzrcggV-JEy5sLI6#P^*ylX>rDVyWzd>6_2{e!idY z_x+gnO~2T<`Jtw12%3gCLIm_;z@-#!t$8SqES4a)Q)oZp0_`e$UVL`;{@HLi3_$+k z_OT}0wf;YXzd2?fZ-G6I6C;H$zt*6y@b`N^0NESBcdNOR0|VF}00->ZXLi%jFtsAu zkB5&}O*}cu;L#E37$~H3*ZP+hKP&FxQKHP@``7CY}&=WfF- zm09n$d0z|OT)XGOs+8Okta7IVt8G{7&D}kEajaIQ4XaVH%iXF~D%an*&K<0c?ahz2 zH;Pr;Eq<^ik9GVpa#y((d$-heqV1h??37o>wcE1MZnA9cVz)UmmmKH6{U;Fw4KlOE zuqw48TO`M3B zovCwqufvPk(gj{d;Kh9WHXz-XpF$pp`Td*hNr=28*IZ`Ll+UBQ-h-ki0>O3@^12W& zF7Sf5cNE?o29goHp2Bl9e&4A)+B$I__mliyrFqOCoX360dh8-ZP4El!zJaXwl<94O z>m?ED{R~;}bb{VbkoDqoq24?~z26|~ea1FAEBFO^ze3i#H5bk|g;4JdvR;qrIf7rH zcM4grC+ICA)LYVIz2Eid{di83^$rESG(x>KO+NQABh&!G_xJs{!MUHryY2I?`8aOy z{DY?X&jP}j)Rr0eTsYI3&<8Q89kXN$I{*GJgU6-yrn!oGnOWf72tBol<1zd-gwPDd z%aAf5EJh@JNx|ZmM_Aku!ZV{0nuq4iNVF$MYe#2LXES|G;$Knt^9oKuY=*QGgwqOE zPiLYfV9I{qf3JD`B)(Pb4<-9N zeo^el{=4JZ7xAZJ7q^&j%EzY1PvaHE4!2ya)T|whs@cS%8J0J>z{{mQx}X=UtzxC# zX$9(DDCXkWJ1(MYyu=K0K}5Zmh&zs5YIa*=Jbw;CcDwa<#}x;f^kXNo+)EKcQ?QQu zWxl@p6<+J~46jEz`>6ZWvmeWc)U)IKlzR5V`GoqHxc}4=KmXH9d{1VV`T0sL@Vjk# zVVrk^cv)V*iMQqR=$=Z<^SU|BdisAR!9J7Qgcrwk-g-tlUfwT+d1of%P2c^j>F1wg Vb%y$@<2;)8?92XLxWN5L?_UWvp&kGL diff --git a/release/src/router/openssl/crypto/engine/tb_digest.o b/release/src/router/openssl/crypto/engine/tb_digest.o deleted file mode 100644 index ef2bc9578ad888cabe6bc7f30ae30a7d3e0ac1ea..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 3952 zcwU`WU1%It6#ix=Nt0~4PSQ=>+N7P)#jFs9P%A_!y3oc{EHwm_J`~qYGKqoBX4#!c z`=V<}F%N}Bd}%}^6sj-6s`w-Z^{o$rKKd90eHTRXpseT2+{xVe*-h$&-FwfR?|k<= z_y4`wt1l~x0>3EeM_>V;^a3Yz%wKS=JSOl2+DeQOF| zwet9~mBn{0V5ezr?_%J<(9A{y=EDN<6m;@6O#`YqW2gomOuBwbCWS(VeH^D_xAio7 za^Ipi_YwMXE`|n_{VJfFI_tmRq&}O}XOsGDvaT8IP0G5=e1p_)xt#qlG-~H$|1YF_ zigf#$^VqqYfpN;!o98}0oAmomqmcFVG2b1b^M1>~=S?1$47EM}2RV_G%33*w{nXE) z&gqEGBps(Z=s206gEg?042|3W)zEF6_DSD3>C2KnUCb@>!(AKD>D!^Li#c@rr+H@E zY!txX{%#jCrcnTKHM2s8ahy4uyL9OVBR_ZT^=FI=)_IHew^hHj?vxg(c4}Vzw%>B> zn+~kyl2d}USg*sX*{f@nl?`r`t?F_O*7~x&xVdVT7T2CV?*&-1*XCZiHd|b^o#OJ^ zs$F;LVMkqdFi~<;H($}NkPtf#ak=f4(q_3!ADl(qv1rZ5b^7xHU&;Q0!NF7*Wi)3DY$)BRSB1s za6Q6)9thnj*Xd_SA9_Un9Q_6)+`&oU3cUP!1&(#Sh%nzx*^qo!5gr%D^-DOvUps

      Qpx_TB-;TwW~o@~jr zZ;(!{-h*(WL~$&lS? z5%ptjSH`iu2kymh9Q4~L?OFIU^4F-l7Pq&U$2DV7%`8yO3{hUWjuc%n_o}GT;FfCB z?3S|2Bn!K;CaTv2wrR~fw8s3VY1D#dG7~h@2+DfA6FjS&8(}2Y4g6U8N+Q_PI5#MN zE9>JYmeuN+9gS+y^(D#*ho!| z+v7;(%VnfW)>L8c?mQ1>QpL#&lfKCNj6VP-5R_-nj0J*%ib8uO;(B| znP)TXqnDg&ipB9#*~(Q)GrFKKnJbjb6|0n+m@OV5Jc2u6m24KxS>HNRWY3cnsfqd7 zS!>S5b388t;(pWY;*2Jbxzu#^LeJ2n0;9YD|@z z__;)HtHM7Ym-m;Kz~3LK$8o(5zrAi1D6&!b_l5ONDteyZoACSnI{7sq{YKF6dl%AP zpR3n@gguro!tZyKzyoiS(C}M<-|rIn-GlTSMZ@p+;J5crO3Vk!JkK5-bpCa8$onJP zdjSo5bTIquEst`VM8n=5 z{Py-}@MmS7XYcRO>ZMcGAlvIe!`^=(?WJA4k6Of`ckl$N%pv7l!(T#L1xI<2d7vxi{nF`H~{% zSYB5!$8l4`UvtOYvvJywdz!qW;Ux`!Tf>fqf8dU}hvT%r+nW4i4gb*{&j|f?{7sYp z%N=vi#c734HF=v-GK^1Y_?(6>X?Re>Sqn&BZ;$lm3br*X z*s5B=hIUK1_RbqQx=FAik%{S&AaoZP9D8pxdnVLAVgDf)R} zk|`Z@D@;#HyRCGzuCX4`O_%?O`JaP06Pk(s!<`onNIMatt#ky_k9sr{y%Lb}8RkksF6Q+| wzbw}uO}Xp7AkQAQ_pyuhI0o2mue>`(`(zzNFUm7M+Aq)SD1A^KGNrosAG$R!!~g&Q diff --git a/release/src/router/openssl/crypto/ocsp/ocsp_prn.o b/release/src/router/openssl/crypto/ocsp/ocsp_prn.o deleted file mode 100644 index 443cf9dd0685cdc35ee9166904304d30e8cc60d7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 9188 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 O7qnB*rTo7w?*9N`SIq4I diff --git a/release/src/router/openssl/crypto/ocsp/ocsp_srv.o b/release/src/router/openssl/crypto/ocsp/ocsp_srv.o deleted file mode 100644 index fd5b1c80849c38672a8b292d47e8bdf7229d01ce..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 5816 zcwWs|Uu;`f8UK9kBu?$nyUYzK&6scIC0@6APMYpdsV1k1*M?ca(IXdr;MIsrO#m>FRx41KT{Vxl^mv>L}Wzf30#?(l0dWYYzWoP5KUpe^}CcVcQL`wywj^?LDxd zlimYcI=4)%102E6+n3x>5jvV%Lwti_FT*zxZwI&@bQicoew-%>aQhPFF!Tk~t*z7d z$8`-Y`wj#AbkNwo!14oJu)Pp;dtrS2^K|)isbH3hXCi5E#Q3=O{$LnBsD|K|)gWA{ z_QG$ge)Kge73hFiz&O7J6sPk}&`qAGw;zOV2=TZnAk&>kW?jn%A$44u~Y0~(xoPRy_t+tK-N$hTMb5o$?x+TVR~8fDyg{Mlhxs7g1i>h5}q;b(G<{?ZeuF zjOztkhpp-$ctT6aZw0xrdY%O!{kM@L@pHl2@ILfm@q@}hxN)A&z_)1MH^Fg6jLjGv-#H5x>=W<~(|I8tniliz5bTzF z$q(^?W0DV#HNGKZBe{0rS``yrX z3%?G=?e>Q1$8+&{|4tvpw02x?=UT+rTF}}XdQ8K;wsEg*+-n>6+Qz-Maj$LMYsYit zn9?V=uunqRCqe9qKJ1BJ>J4gyjq_A*P(#jG(^VTe+r6T;Fx7T+Z0t}l ze01vgW5JQga0K7`k4mvn)_!9?e&+QrXOw%u;r7 z#mew3%?48F`eM4BV;*v_1vS~A!$qbokt5|NWCPJU%SSlyWtEFZ# zr9ytCWSQxrl`LBjN#}Dp3kiLJu@8XV*V+Y+DSC0Cz~19_?)%tbbK~9O{&r6Q%URGQ zyI#r8Bk*$oj{D?1euC13N63Tt>6GlQ1o(aGEBI*>cEsy>aK<|;14%at&UGO>uVh!x zds4BhAjq_^`@UlLHw69`c0W_>{)M2gh22lUS?`?yUoWcH2aS4ff-|09YaQ=*;Ebp5 zX~gS-M!eg=;|&YDu-04$>HiJRyd!9LQL&@(894KXF)zLjSY90(c>^wIyiYJ*wB9_> zh=&(CN4y1$hmR~4uNxZiB1$}e8?U84>hbm~@%}Ew3qT{@v=VOwUof9Ye)V`SD)9F2D_944xE(7^IH2Gj zN6$l3JP*jj&7MFq?q&N%gDUIB{~r}N!*C}&Be0+0T`(nZAHzOaY=mR63KFJj&N=M6 z;7vvUWAXhW)9X-G^zSM7_X_^A_)cfA8~^=P(f>!mUa18LKcL`{f)6QpM!_c)TvqVw z3Vu_;?+6@b`~&cwqW_bE|DoXjD!5B(X~O#y998hRg69>S6PTVM-PmtyivC9m{)K|C zDfkZx{)>V^`hgyr9E(D$OIGvs>K+%XdtRr^#e$j1mI_chZJtRkuUail`Lzm7R#tP+ z@)AWl>$|95UZ(Gb)zT7-&Au{|m?k50IiEf)JF@H5{K4pRW_rm=qkS=Z25(H}Y3m%s zXJ^sBY+A))z6kM`XUx)4a)?_OR#Rw#j2Dp|jLuCBnbTv5c*2}Z%uY-lB@QiSOIDe? zW65S|HFe5Lm(7)A&f>FEqc6oJn_M}Yvyk;E9w}S4a-1*YKO3K$86QoI;(XIeh+83> zp2NhGak6fZN=#s)avo{mvL=_a-?K85i#v?PXA=|S=EK|w@Bi{ z^9D&Y-X=+xRy_CG(>zXFFMn^g_wqC3+k21sea-VxntzDD`+Z;K&wby+oJS`*(IviJ zZ}y|VqxuYC-;d7$l7c76TO!|G!H4cczDM|-*%tyhOcGx<36cWqGZt-@#@cA&UPD-$(Leyzl~fmL&do*hJZRNbvg_z$KFS>-&Fs<(4`C diff --git a/release/src/router/openssl/crypto/ocsp/ocsp_vfy.o b/release/src/router/openssl/crypto/ocsp/ocsp_vfy.o deleted file mode 100644 index e643e2334daaddeb1ea842715d74e69ad0bdb10e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 6424 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 J6({7-h(8!fM0NlG diff --git a/release/src/router/openssl/crypto/pem/pem_info.o b/release/src/router/openssl/crypto/pem/pem_info.o deleted file mode 100644 index 1814176c81e413bdbb79914b67bc0758294fa1bc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 5844 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 AY5)KL diff --git a/release/src/router/openssl/crypto/pem/pem_lib.o b/release/src/router/openssl/crypto/pem/pem_lib.o deleted file mode 100644 index caf24c68ce5218d893ef5bd99795765107abaf88..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 17188 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 K3wp=w9PkU&f1N!5 diff --git a/release/src/router/openssl/crypto/pem/pem_pk8.o b/release/src/router/openssl/crypto/pem/pem_pk8.o deleted file mode 100644 index b223d843ed261f20d8a1837aead766ea94a9565c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 9692 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 EKZp-*Q~&?~ diff --git a/release/src/router/openssl/crypto/pem/pem_pkey.o b/release/src/router/openssl/crypto/pem/pem_pkey.o deleted file mode 100644 index b40d231a7abd9a55b34f1d98f21a3a7d8be7721e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 5852 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 X|2J9w(0q!s|6447{20WCz~c2kyZQbi diff --git a/release/src/router/openssl/crypto/pem/pem_seal.o b/release/src/router/openssl/crypto/pem/pem_seal.o deleted file mode 100644 index 68dfcbc48ef107e3860cbd5f0996688004da0a7a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 3896 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 O)#ILtZ*Sw@0sIE-3H$s2 diff --git a/release/src/router/openssl/crypto/pem/pem_x509.o b/release/src/router/openssl/crypto/pem/pem_x509.o deleted file mode 100644 index 07aafdff6190c85bcf589bad302769d7039efc1e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 2452 zcwW6$O=uHA6#nwlpAbvZKaCi11BIj@OBz#1rASLmOQDvc5egpCq#NUcX+pBada|J2 zgdpglAkvG92Z@MBizmU8Cl5XL;K8f69)$R2cjC^hiLHV@c+7n7ee>;O^5&5{nZ-Gm z%Z0YN&<`5{VGqz3#B$O^F^pmeqJ0P6pu24yv|6n;NRgi=Kl7LQ*dOH6nakOQxrOv> zHbW>p4LpfP_P0GBTf5OX-Zx`-*NmigD0jaBY&RnDE!y8}1hLZ`ArFy<$rWdt{=xn1O`<@hbqyIy9k8~B%4Kdx2r5gz{&FzMz`9ZE9K810?kQ#(6}m&g5!l~lJ;-Vk^}JNf zYXOTrBAOWY;#&)Xc^s!aQY8$FUu3w?f%_d;yg`Qj4m{w%0jWpvi=G#vdCZp~;z9GC znX#T5qVFq0p5?{`%C39fxDW=1SF^rq`=xeD=!Hgq4Jz;M26j;FYN?4tWCqB(M;)gl>oBaV!x{A!hD? zHJjYS*4%TC0;_E01F$D(^=WU=;`s-y{|7#L7-6HD_bjb7-1ljnTj z=X*Zyd4HU9-h7x}xNH~(dd0v1Tm^jB4;+tTF=MMFPT?8I^9{-=>S`uL~4`TA9teI-WjDDr#ea1q#Al;27oW8s85Ibb_TE;$m0I=|J?oD z2gEgr8)t6Z;U=QY-0C>ouZa8g4s#Nzi(qCVdjsU}n1Y%7uQLm|+)HM%aAo;VQapP^PS#7~;RBM&nt5&&E ze=$vm*VxRY8A97GW>|~)*GliS>g`%-Wj1xb#51U5Pb*)`-13TNvQl3=3S-Z+2Uj9@opzc(Rak3!W@?O<=zxnVA8t;9HHwKrtDtIa3OHty4)Xxx=?@@0~a(RV(P3he?q}ZF2 zTrNBXEYg8VYLCJ>FVA5fo6NgA2weBz=|w&s#GhSAC7|^RC?jDlpON)(O%G^VzJsj8 znjX@0MAO5X9?^76(_R`H{^T_vs%8O^7&8|=AQ9Qb*l;@RQl z?_s>Y4)zF~L^WOaGN>O7dnSc@(CB&w4>vPJ>7y6c0-GG^56m`4 zGX22uIa;?lPC5PiW6nBpEaq^+C!M`BH0G=$A)02FI3GF0KQ8=H;g9V!Z diff --git a/release/src/router/openssl/crypto/pem/pvkfmt.o b/release/src/router/openssl/crypto/pem/pvkfmt.o deleted file mode 100644 index 7c7f292599a6855e4440a0586e1cc6b9f58706db..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 15500 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 diff --git a/release/src/router/openssl/crypto/pkcs12/p12_asn.o b/release/src/router/openssl/crypto/pkcs12/p12_asn.o deleted file mode 100644 index 4264388f05d637d109febb1472438ac176c317e4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 9924 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 diff --git a/release/src/router/openssl/crypto/pkcs12/p12_crpt.o b/release/src/router/openssl/crypto/pkcs12/p12_crpt.o deleted file mode 100644 index 6031e0e37eef6007b8459f838835dbead0b75566..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 2308 zcwUuN&u<%55dOStCr;fE69OtUh+SdHL8=xv1Sud?IV5g~2*HXe^tSPjjboZPmc6Y~ zF7<&!4~ETwLo4-Qg%)u@+7$XDhZZ8lp=Ztz!p$UxOC}eqr-tYJy@;t2<4p49ZQLonv(5~c< z$vN7amT%e+wK+IazDd2?l!)5JGkjy#;!Yo zd+si-yZWzP?BNS{A9oyznfw8F9pL9q5=ttD(im{ni4s1774Ml>5?%L2L{nRcr7R4j zhW^x4eH!=xNK#yiQ|e@};{vN4T?5#k!Hu-u&f*BNW6b%tI4dGf6muOFZ7*+(Y!Qrl z9RAnr*SE9qYf?VdwS5IR(_w!cg%0~8P*d!m!>#llZcx6@-D6bO81-SCdZJN}XrHQQ zRun&XR~eM*3u-$@wLMGuxn8z=T*}8hMdX;m&4U~qpYw41aq4$C$H+hQ;6tegf#1&s zFV}NagWd+h_6OK;=qx?HKC!Rp89<+ID`Qjx^O96U5Kq_IN|thY`{_Im?V93qV=1q< zGypV94$YE7v*ge$IW$WS&5}d2mgi~DKJ&(6NCP0TNyc}bfxCJnk1 zM(g5+T`ZBdo4#HPo@{H&hEXZnMHr=43r5qb*6OR9{IG5`Doq$06{~c>^Ns#tX-&Dbr|K%jSZ`AOyWfaehuh*|C~jC%&5?>(i)QNmAId4m{v^ixUN&^k9P(A68IL; z-xub^C0>x%3h}zMI>Dckct!NrXH&3k`1K9pu)a(1<7EWz1T}J0+7}V)NgVc=ZkuMyE2=9jQ z_aTf1UGj3XVH;(H-UWa61~97)vr=m{kXv3h8|Q7)YBo2Us7%(Fm!Dalc?UCvrIY5u z(tEl2+_G7`M{XE}^r+|-z{hqM@#G1aYe+Ye)W+3r2-7(hB0CPhB1yXHUIsgCw diff --git a/release/src/router/openssl/crypto/pkcs12/p12_crt.o b/release/src/router/openssl/crypto/pkcs12/p12_crt.o deleted file mode 100644 index 93aa724f3ba76adc556298c1e5a19918b84d77be..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 6172 zcwUuQZ){W76+eD<96OHat8v`G!gvonVj#FCP1~@c%0L4}uq*|}*eCPiIEj^imhG^l zLz-7HDVh*3ny3U5n!KuI-!P*oR9d_FLnrmaCUw$2^uwh21C_d|s=9qyJ}`Ob+Bq&WU|;BV)KzO(%3iTa%`ed?+8Zv146ezW)*HQB%7()S$(xYcjgZ+bs# zeAI8iAF6%u+iEY|t?KY$bzg4>^nexvxM_FAkAb;ThTyv4HH`|G;TlgarmfTjU|S$7;w)Ok6A9mHYn@nDrNEJ z)c~$zu23F)9eSg6!Wb8TcE-XaNI#jB}eWT%zG5cYT z9i+8!|2S66;fBRT`e#J$9Z;4yid{3~TSG*5gHSM)<3Y~;a49&F^nMjq_A z;4SskykTuskT&RA8S`Q|WvXY+v6?gKo)KJ_Mj0tM)X%vDR%c}6W%YE^?jU}!{@wn(AD)Jn`*&{v!{(u zpW@S}_yk-&DHkuBoeh{9=6=t{+_2|32gx?)gL+o6waOKCMwxM}6S04^$6h$%qcyrk zUAy)d<96Z+Kx~gZw_n#_v$N_V#&Qc|xdFegUWW(ORk&Zh3h!4}u%54AU6pa4E@PZa zqMkp%+}^?%)^M*sMBJ{`Gw=(PYq%h*QyEW*loWnEwovQhD1<&>h z_C^JJ1pB&N$Md%qxeM>xJD?t+`1eC4x*L2fKdR*%bg;gk27l~#qK0=tT{n&T#(6_r z-4}hLoNtl3@J>I~R{&~ToBflbeegPaa8<04#9HxT+=NMc z{w&5d01x_|wTG~_ekyF&8_k|kW8$?_*DfisW6iVP+NWz8#YeIS^gUlSQjDVk?EfHC z^a{LfbDpqIk|`~YIq);m&@2fP;AghT(Wbcs)WWm}j{nD)kB<8sAsqA_aB$)^jW`(< zSi}c@18kZHcs*u*!h7l09)E1au^}JgMd&Vg{jpbst`oWCx!1gMZNDV(iu~)8pIqO> z=K*0ux&Y?x)Cc7(e;al`A#b#`Ie(R^=w)`MMBDg~EuBSs;LWh3tFZ6VT9s;;*6wZd zZQ3r*%!oKM2?xJHx{U4A0mZe2?gC|icKQJS9%<^i`_BgN1JYsN+Ss=?_N|S5Yh&Nq z*ta(Jt&M$aW8d0KqVFrz_a}}W`?e83G5Y+bc5JLP^qO7V^u4pSDV+LaRrnkhMy z|M&R@0K1p_g`86Kx)@Di=iS5(4-L9MZE80FY|XqT+4V|xJ|Q0haQ)qI0e^MHj-D6s z7nJ5N_W)q|GK>ykM{&IZZoFYxkaT0<=7sF8N_Nh=r@_7MS`WYP)4Bm@t~ypK^> zll&aKDRATcO~UJfCf*fr<1K0KTpYYIxbb{=TYU{UUN@2{*EHQs>oxC`~yY4 zsK~R540-lZ#_u*L_XGEbyyaezp30{ua>cx($<60V&U@a<%%rWw(lj>}vy+8v7K$_J z`RtF<^NX{y^qyZVPSePA>ODk8%fFnR&#()Tdv;^$Rqs zqg*UnQyUK7J#uO!efBjpJ$mGXup2vb@_ZU+(kDlcf6oQatR-8VI(y{!2#PIHuHT| zza#y#szzgi`*m#P-xmK?{@n~k_xX9ygV=M&lm@Bxjx`I#8R{68Z<9KWXdSSub) zh4%1!M+h&l(=^8U86DaS>?{uL_g~zyc5!x zb8ehQpXv9B&KA{o!`wJTJV*DkJ!5BXyL%9FL zI0kXw>Ayh!Zhm(p+=|9=>91k(uWQ`@p~n5!NyfU0c=>!UjzQd?B*`z~H;~3Czo(GC NB=oC7zV78X{{w7%g5dOS&^XG=TX@F2tx(g9DqOx2Qq<|uDanq*4N==eN5tTN7+tiRB%h}K$ zRl*lg4^g)V4vo}<6&m2w?LQG}MI?IYp%Ojx&;y6u0Et79dg!5&nc02YJijzlJZUvM zZ)UzX@0;28?5}!qdqSZQf)PRkRy8132h_)q@AR|;wjc(1JPuVaW8G0LKdM%%fp(vs zZS-t^V&7hVEZKY4*h4k;jASqFOq*lYXel|$miBJoT-;ch4=1WO<9G3kdj~(cw{hLQ zg=_9IuDUmH#a+T>_bM*A7je;T!wnahcRFw-Zj{R~^dZeSRe^D48OG8I{=`-1Z(Mg8 zAL-!-xaN?*^AHP81ofwZ$Z3vk#ey3nTqB`t>}RAhS`?X9_GNnv756nnI*wvP#|-K^ zJfALr?KvQ3lsWf#Zw+4GkNet-HS|HUEqXDZP^?kTplKcKT{YN<1wJ}1$78g2qiaR; z_Ls;Y$TKEk`RhY_8g`wMH|M+++ysn&N#sh{gz5PuHrH^VVh6Z3;r>-cjMoaI(xMZ$ zM(iWn^TGuU%Ps5++`Yi@9XKEN){a4=+B#HQhidCkZ5^tuL$!6Nwhqo~1i+Z7xdLc!`y0~Lq;4igsp#6^EJKzlvtwGgz9cCY6yQU6|a z4ZX}Y6}>m4HB0$1CSx=1xRf8;6Oe_#d^#z?f3L#-GV$L{{C5ey^Ry=8HlTM7$j&9O5a&InNXGCT?Qg*~$`!QJ z9*hKilc^PmJ%pl9sl(^A&sk-ky4YVrtd+v|4%xIFj7>)N-9dHX+76OW9dV%UH-$w} zGrSP+Bd=*GYX&{f@c~b?Z{o-2CBwYz&1T=#6MOp(yrFj{(@8p8lQYLB?couUcFC7V zf;ZbbW+OQ^Y!4$jGBbl@$r>+A9iHZwiDYrCgyiIyH8MM%93CmWm8R)wc4nlV1nqe- zMl%0lc7RUJ;)rFAmW~(gwWfk?O`3)Dm}yP@mj|D_WHraq1tdqOCnv2b8~VZ10-@y?+Z?+_WoQ zzM}Ul`jDcZQ1nxZKCkGDihe`Ue-rOzuclG_q1YcQdXrQV*0&11&5LhFTCvMNK09*R z6xN)q=6KN@E6fzp^KstH?#uV~^qbkigJxl>V0&}<4|>dOp?Jh9?enJk`_1C4ZCa($ zbV&^wnV25^!kj6bu#oNlG(WiCoE)B@Ip5C%IZ&h{|B3l<$+A?C(FtpKYPKlF>?uqQ zPngy*tateD8tB_;4h;71>)UJE$BULZWgYb=16SZ_W;Lv`=z*h!v0X`{{qXvMpgg- diff --git a/release/src/router/openssl/crypto/pkcs12/p12_init.o b/release/src/router/openssl/crypto/pkcs12/p12_init.o deleted file mode 100644 index da4837dfc6722d2febb3df48392c161e83aaa3af..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 1584 zcwUWD&ubG=5dN~8ZPG;Rs#O9i?qVPn%96$kT8gBtG1Qh=l8WB8NwcldCRsLH+MevO z2QfW(u;4-b1B@1r7XJm09((jEc<>;^dHaLBT`W2<%zoed=FPl$Z=V+y??oaJ_!dDN z0|dwd5R7X%;APL@nB6f%qEw=l+-|zb^DfrM!;d2i-=nnrRuiRKI&YWG+okhT&0{f(qYR33b5qJ#vGnk|GO6V>n!DE7Y1-8qMcZ=Y z6aULLwryzjs$GRv>vW)5#(JZ*)@C0YnpwA?HS0!gb6u;}8aHw-&62dGg}KT^PH(gt zw83h-*)&@A377a+y97AzWXQw$(7NnJ)zgXp&}GQu|DhX)Q_~bUU5e91J$xGoyyM5@ zN=V1-CiyVOf0NukPLWHVj^R59?zfGg`D;rE&V}hxT%uoh5y860lAFuw#xbZ{gS%hW z)9n*D$K^#lKa0Wan7t$NSxDzce|F6BR7fH6G<_%F)@8G1z4804NWnAnv*3;AqxjJW zXJRNz40OUUUy3f@HL#(11?=E*GO%q<>xD{N*ehuOKuLwG8L7ee?^2ycWi zOz$t#R>A*s`nsvt8y(XpTgDa&<+5&W+PYy`Z3{D%(u6)=S}qg|WxZqAcrbfkZ#C+< zcI~OVSXnO5mx{W*V;WArx7C_u7*2g5;r1aV-FqFPn5LMdp-i(#m%hT{2*7^+Kg4)Dpt-&v%A{Q*r2t$zRj diff --git a/release/src/router/openssl/crypto/pkcs12/p12_key.o b/release/src/router/openssl/crypto/pkcs12/p12_key.o deleted file mode 100644 index 1b6190bbff76321f1bfbcfc65b60ec656f9bdf65..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 4168 zcwUWHU1%KF75;W+WlP;y9jj`pI%+!;Ez(wmWuvN~1`)=V9IHfC);}p~Ygqm4L|P)P z*4h=3i%XXfgW3jGDGn%9ghf$Y2LdA}&R=O;anuCbs*mYjw2UF?H+1 zJ~)C! z@7V2-ibu)I-%vGV{#Q(Sx{ghTR#%Y;u(G z+oT2)%>8BNzN^RZT+(1f%h+PH6YIcCU3~kEpW@$Kx5jt}YhL7)x6w*RZ}? z&+SeKPchu;HF2|V9PhbV)^!fAcz2>sKg-WG8Edkc+G`=(C~Y>b`n=I+ zD`XRFrS`NS=FgPv^Q?ha$2$w*%{yP^Yh|k13-k-l;*)mZM-lsF7554`6@9;Mr*i&&fX6Bo6XRWS-SF=-+Q#)^ymN5^q)Ixxw=rCx>#j*6jy%wg7`V z_ZTWXgQ_Nc`)BYc%|C-@>vG=z;l7r6OOri^$q{q%xk#DXWQeC><{|nRT9Rj!K8v?% zr?}4$>aLvMkgCmEAK^W+HHqQ#I^{hde*7uwr?lgD<1e+ViT#ng*!J%|?T0av1oEkN zoJc0RMscgEquGFmI2 zD^GvhMl=_0VDzMRSc{6qy(ErT2k$WFu66CYCY;#huHVSxZF0RS=bgHN#~Uy>_wKbp z{(2BkE|J^gL5~?yoOrz}sC`ds=3=)AkEwom&@-B`r`l<) z?IFW@kCMMZO4&Put9`QnAb#GL;Jr?%oC02o5njY@s@^)O&dwm;=Q+=?rcTbMI3Fa} zU7Y9TxyV54=6qh}L;k%q<&3KGuCTi$WQC-3!j-hH2o zG2!CW$jBpR>eR%OUo{8Q18Kg8)8&hcmFXGE%Cax#gIUE{tstGBu1q66Q!XRD?93I4 zPc6x0AzjKZBfXe+W>)6X(=&yy4N$!#&JyWihW5N9MmqcW$XWjloSSosxs_t!-p1+j zEYh<}i;GUNg8z3s0C?XShZMFWc0)-^`RSkH$4kR6mrwV52;QD0E#%h~@{23{4WQ{e zXcEma<4S&=zqXKmqut-@v;4IvKgsJ+G{@UO^9XF?YCaJ1yD#JySN0s5`P=62!Meq+IxE8_n2!1nye-XjIj^N)$@b4q|j}iPq1b-C4;Ug8?8o>`JEYCm( zPbVF*KN`WIKP<`dkqqwAKy!1YT)t2);pDfoxo?f;M$S#<3dKStz%vU=vrp&Bh3`9o z#+#3v`A+uS6S>9d1=?|9B3E>t!O1gca;23@&RJewTK3#W3v*7n@=eCeIjbSflO=X| zC!~0+P@G;6pG9YJwscV<&J>CRGewzA=kvK|mX`Bs?ipz-c*f$&B3&zGSy^@}L1s@a zJC2w=8LDk|!I>_ul%iC~>*9&*$%(UP$7Mbs)CAaDQg#%t8lPQLl7s&%CiR4AUB9e_}Q~daty{_;Lg>NgoPT5BM8>LUhe0?(J>oYN5KPGy9*i9Jqdo;FNnM!SW|La*v}MBvcLpij<(2d z?jw?aimM85#MOF{UuHc@{|6;gEq;FEBKb%9ypjt_UQ+UTktBCh$=5|%pX6D3dxFg* V3qP*BClWlD--%4he?ULp{{XQ6+13C6 diff --git a/release/src/router/openssl/crypto/pkcs12/p12_kiss.o b/release/src/router/openssl/crypto/pkcs12/p12_kiss.o deleted file mode 100644 index 84d7c6abbeab192747a7b32643e30498b9f54101..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 4464 zcwUWHO>7(25&pQOBuexTEi0|+IxV+mEyf54T2*Sfbqm`1v7HDCAu)y$Bwdl>N@A@a zhFrNeV4$i2qekJ9IvA;gx&dJ%fDeYKCU%?viAxwgV7{}^y%z}$Y*f2;BFKpKCjrEtGCfqS)6c)vD^yR{_l z)Q;i3+A!X&4dM5-1h#7Z_^1}a%>nb_I?NBMFt_S3uW!S=1^gNa$8fU-yjd|Lb$|Dl z5x*I$8Z@U8#OPJF-#|xH*w>TrBiYAe2F)|8Kmcih2_jHt%hS^}ul)&&fX=SrN zi8o+Gdyow??l*M5m+r5VJVf%hBTzfWQsU3S5YC zWE|JB<)iLD6uxP!Hd=e`qy1wX@v}nwtPnpd#Lo)xvqJo=5I-x#&kFIgLi{A|Z2M>M z@c=ZAZxP2Qh~uY-iagB7 zOR+iE0|-RV5jXSbj2@vJ!>HB_)Wb4n{WjezzSK7Z%{@ACsh4WTRx<`!^91+|h`rjU z_zi4SB(Ea0{EmYz&aHQ+;ESwRqtO}N;n@ey!_Dn=%1zcAf_r(I7ol<5&St$uF4vRj zd4iAQ9v`=9zP{hgMYcUpYlu({flC!W$45ktKZ&|A7!y|K-{lpb+ox!6JLzod9Pd`K z_R;tO8fTm2QqpkO&Evuk@ty5#qgwZw!&QOZC33i2F+Y)gC`|duIG4ql?Gby?s)IY` zU0UZl+UJ*ZypyEWY zs3Z4X>BrlpU_EtL>2+6(!W`BlDIiWhQ4#Fuk+ zc5NY^$>zT|D9t=6UdR+nww28+@T67t!0r!IycQ<)!pQXDK}$dppIcpCwpSc{_3N8} zc-QDudQux#4GX5i`Tq}&n`-bY;GTtuSui}feh)67^rJxAyU+~UeFl_#j(*)9`{HgH ziv&6pj`R94+WlQe`{j8bWasHMMC>)PF zXpei5a6=xTds{$z+z2f;<&$wkXvO^{q`!p1ZFPwQ(!6}?w+F2~+)b!Uh{dG6@DV zK-2%C>7Qx(KQ#TJrvFFX4~a$`Lcp_SJl?D6QB6;1`YBC+P1Dyj{TG^kRnx1Qeoxcy zYdQ+lUC-uArT82?{Wv-?l7O{PuyXlQ0j0Cnxy;g<4b_boY{$wtPLXa_@ZyQ*t<~&L z2UqerjGakYj2RwGy)gE&3(whe#R~<;DxI}22-~ognmT>PB8YW*a{NVWzGydn&)G$X zQW!k{T;eEZ=+B~A`J7dRbk?d9v#ZHn}*}ngO z^GtI-^ulz7C4H!Wpk$rLsYQLN#=lVV4$1BwnLm&Bb3PGy)_6S4(xkXP8ULbB#^3O+ z=R2~0hYkQ=vW&|0bW=m?V@Yqk{58V%gt8AQeMYV0ydmp*QQ6lO?wTR<;GP_!7ljXQqnho7b0WUsRR4Anv5{-)#?3inXq{tLbO*;@br diff --git a/release/src/router/openssl/crypto/pkcs12/p12_mutl.o b/release/src/router/openssl/crypto/pkcs12/p12_mutl.o deleted file mode 100644 index c96f9930d799a4fc9c108d8baccfe4167cf4711c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 4448 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 diff --git a/release/src/router/openssl/crypto/pkcs12/p12_p8d.o b/release/src/router/openssl/crypto/pkcs12/p12_p8d.o deleted file mode 100644 index 7db4330a19c22dd069d6303a064fd51719c7e08d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 1240 zcwUWDU2D@&7=F@ZTiQ;k!;6ZFi40mn4zo_ELqsUs7%Q`W;y{RP6KlY1p^dPCporcL zdOh$$`~wxQym06b@CSG${R`ghLWu84a_mW%=mRfrp7TEMN8XdXSZ=N;iUI)zIwlNg z5}7HXwHUD~j-v<}zkrYUJ6;}!VJJwI>@3;2h@H6xysenyef4{IP%-djRL19#hF5!L z`5nby?*aS665fx1H$w%vd9(f%CyD0|4b@zD1kw*FZ>VFeR&h|lYNN4aR983dT`(3| zjnT|(uy0~g%XYf`U7t#Hw>{6<3XXjLBXJstc08T%8<}`1@n)h^|Dmgp>Hnd-h^VKZ zlXPWCrzQLRH%K0$a|~emc7#w z#}}&ypRF!@vO4h5iel4h!w0Js@2v>lSrRs^W^7x)swqEThWvUB^2RRYtv!t6gLwy= zX7#=#PGG~7SK_Ebypi}Ok~UQ|Y+Ksbyw%eIAxh^tL(U!<5UtqD$TDK5yZ z5aj5D!0O3e%YwZ8_j+|y?^LlKi!(kDdB%7_@}*exEsJHaPWexq8eyzk0SJ*s^0LJG z?H2p(35;7${en3A*5$5QUe6io>GA+?9tTU3lP9kLa##{bPm}aCNl%mXG)YgB^fXCN zlk_x6Pcwu)aS%H#Nc8nxl3EiZH_l5PN=%`%RtifwV=_(N$h&^ldor{|14?Gnn1qrp z6rkj_ne5#3JbSpO=$Sl}Tt-VT%qWxT?8TTHW=Tr&THjcgs?AO1mvkyIHJ{6AbH<;y z<}f=6ICrzMh~vKfaM8;}p7;-53$4(9@Y>+?)CG>$%<+On+zpg{JL9w@ACFllt!gg5 zUFptogjPk7$M6-D*IPund3#Be>%w?XxkRt;Fv|OWrG#0yeM2bq&A_b}_44V(8@Rkc zaUDZRJ7!J9%lUYo_q1cSNsW>etfS`|xP6({Y&O1LkmlRsFs}t~d_0IBHaHV~Sz_5F z4D%fsuJYlK4+p`U=$sgjYYu)P*%>rY{t0fMX?B*w?7c7e@MRw!_Tk$;eAkB``0xuK ze&fT?+heNUr72S=|3uXpUCm?*I>tMr-Rjs-LY>p@qd%2W^#w!K^7;9^lhLW_X)UG} zG@}F^|f-lIzL^wWsiBktXj^4|ae diff --git a/release/src/router/openssl/crypto/pkcs12/p12_utl.o b/release/src/router/openssl/crypto/pkcs12/p12_utl.o deleted file mode 100644 index 8de0b700620a535aa71fc687e3f029efe4dd27c0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 4592 zcwW_4O=whC6#nMTC5Y^C6t3peIo0cw$OP9e#aj82?#n*G*Pu{&ZGsZ$G^ulo8Ip24` zd(XM|-FN1T<6|cRfdIS~Kr4I;SZfAabR-Yi)-X)$hS;8A`&~3_f$B5MvOLS6-!A&? zd1-ue`+wmrQhdXk@a@&70v?s{!K1)8L+1KQaNYW8Xb?ZI_Tl!bjvrTnl|{2!McY#& z2wYxRK`^W%(L>l`2-;VSJJ{$#jj%QeyF&fw0&_@nku(=uVFV4>bJ(`2gHFM^?fWO| zSbo7euKkPa;ITZehUPGjSwTy<9)8WmmlfR9t6-egyl6&iV2(K)$A8HwkHk`Qm8nQp z+3N?C<1ppez}?kB+}X(Wy`4=k_2V$F)?hAG(S(|wsA}Z90?RtK6hvI-xC7AldGP}` z!lnU@_uym7h1nO!E5zeHpd{&p(YtizR-Tij;FRh!k`A%-m!o zohiH(bKE>AlKdz!PRAshpQ&Whld<{3(IeTJsTUJAqwcVn%c@VPgXUs|l*_nSuJ6wj zN&--bvh1_yA4_I*9LmuLDqXL=yk%^`yI00Bhm{C<2=3J zAnWN}zMc+W?+?g&9l`o~48^>zkiy@>{TuLhL! zBIxzP*E{Iy#a!Ne(Ah7qF^}>0lzA@`Z%yHGdq77;d z)&#u)_wSfDh;Tv}bw-dyh56C>P_wEdCkJ@Q&_pI)KGcTVTUYn?Q zv$MXQ+C+Z{Pb>&6sEi6qD`8ulk?j`6ZdL4UiY@Li+ntK7Lu^4QlWg}WcCTWKH!R!z ziamgK$)oZ^5L?i`Sw(x-#tQjv>!x^z1f2Ic3coS;sA7Mh*yr76M{k>bKZ^LA`)t^F z2No3khJ<(G2iFeUwvJyE{sYB+DDk`TM8Sgr5${2la6}m2E8)EuQSgLoui1D%#uYs6 z+K+8~0GAY8D44@zi6|P>MybhiDp!~-DzOvFSn%=Lk$C&WxoB6}&%wYJ~cH zk;;s6I{R5YA!h)Q8&puP+g4$X)NJ}DfGE2QfS}lydT_i-P6|R=(qR3B!8eWzr)qz zGt|DT0Y1S5T2N7Q-7fLB#2n?U^oe=c zLGB_g_%h{0y;?mlmg+ZmhsBDp1=bPKYY;mw#yFhD$7B@y;~0eJ#105Iia>;Zw>Nkg z(x5L!UI-%aeD|d*9JhC3PZLC~)oS;Lj@NEpS8vO98+Ypsx|rP=27y0_=N?$YHh}EU ziqeG*mnf7=4grewwN!Y^cg_v{_c@Q%||#z=GgqVIX%Z3a#{IE zUqE`lF{F{KH6Yy=@>$H6)O}LEW2Gm^0`nP)n=tDM;T;)iz9c3+A>=XX1LHc9UMkh4 z9@4+^{XS9bGtK{zgU@H+=a;XUT9%nQ329!DbXL>6L!>jnVal7}Iw$XkK$!*lj-Jc5 PABLg>|2=bwC2YnY0#rqm diff --git a/release/src/router/openssl/crypto/pkcs7/bio_pk7.o b/release/src/router/openssl/crypto/pkcs7/bio_pk7.o deleted file mode 100644 index cfc8d219e8c63515a7b4701b3b5f2bbb4f3be0dd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 1152 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 U=etjwXAS?qh;M`(e*)nD0AUD2#sB~S diff --git a/release/src/router/openssl/crypto/pkcs7/pk7_attr.o b/release/src/router/openssl/crypto/pkcs7/pk7_attr.o deleted file mode 100644 index b7bce854e479ee9611a4dd83925d9f6c1ca0ec23..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 4148 zcwUWGO>7fK6#o2^#NZS!CKQ+QV}skcRce_4B2)+&f=Owk5GAferB;g_FUAl%mc2lc zD%C<2q*8=AR4PauqDr)v2m@869*T(69(w43Lk~Sv6_tAIrBV+ZQl;H%|+1ZaX<0m~H5A5ba0FDJL^#XkgCJz`^0ugM5*j5mFgf&~J@qBf4)wWXf z?4)OR+wWwKe-{+d&>38#wbojB({61HFx4s=mfV+dSXLo#0S04{1@T3*T*R3cX zwRYfPD}o0t1>d!RJI&bb24eGz*zi2+i``mAtdWKf=>hULw*g8_VLrkoqTX04?KN=G zG=fMgj4^!Cv)=vaiTlwTH~b^;`Yb<{K=HsEXPh|~ULI#&($yqgP14mQT}{%}4B(kB zg~x;98h)WQ#Ayvt(j6h)F=Y|GSR9Bo8W4D~kzz*LnmFha;(pMKjihma^lc-30YrTX zga1xb!D1^0fBXjdjyc-F9PPQJlQku}Xo`}ij(j#2F-&|0*L(wEE0=x1i|n`cZl$ztMY@Kl-U+IAob=gwYuCFW)O$Wn`^L!|j{_$b zM4NNT_8z3S1AFc}I5Sr-(0so%&g<$E>ydEnodJ8?uECWqHR!kYA93IGV{*xly*Ita zUdk`o`_91A-ef%QGg^C-*50JGQw<*)HRL>vtWiI^Zp`x)X<&UydvA{}D8$*1`~YM8 zxV8|$@de-p)!>U3+Y#I&-jfUV9`urCdw+Aiy48r!@lIfq+>90J#k zeZu|#GI4XsmXnNwM}&O4|3AyX0J+Z|^f>?%3$)o6*GB#JjIW4@tFSE&Np@w9+pye+Wlev6p z|FAjClaiC~j7}d?bA`e_HK*&fQeG{TidtRo21(hFdZ}0`Rf?)!Dr?<ITmVphEZE+XLkmVFp--LYrrS(b3z4$`wh82@RLc}LMl5Iq)-bsdG9FCrR( zZxZgjFzyEdXU83fJMM}QHvlJY9d5o~$@ol|XY?_%cL2#4=3+Sjjk4yFkl3kJP%a+Y&Doi7vO8(C! z`%B9<^BcypFm_0i7~aJT`@;3 zyRPXDk8ycw_U&~^*SZj#t7#h6xpvPSOdVE>Wqv2n1!ShC)aoT&)oQi58vgq#7A{y> z%<1EAtCdn=crJed-S255@Uii+(^JkuX;x-5Yw9)zvhPi19QUb-Y-TJo)j7bKsb3`B z_4DX*>l@gTu9eloa7hR}O@p0FbWf9OVbGL@3s#-IA^vBieye%^(oZeUa!)@64es{< zi`-j>u}3k#W4(&`jSg-$zx_cv?z7x)G0#_UU=2KdgpXJ_juYJ0iHq|1OQs&i@i`A} zH}8G6yYlV;-r|0zg(G~G`(401_q)w?1d04xEAHRi$2$2UR(wO}UXyo2yc5Sm!B;Jv PgQiZ#y$@68ycOqP$i0TI diff --git a/release/src/router/openssl/crypto/pkcs7/pk7_doit.o b/release/src/router/openssl/crypto/pkcs7/pk7_doit.o deleted file mode 100644 index ce3cf4c373b1f22d73b7ec84f0ce97af5059cd8b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 21588 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 diff --git a/release/src/router/openssl/crypto/pkcs7/pk7_lib.o b/release/src/router/openssl/crypto/pkcs7/pk7_lib.o deleted file mode 100644 index 4bce8666a98a63e8d050766fb9a2af4f778ecd2d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 12936 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 b8{z#A#lKJXiTpi%!hff@8M*KKeFVG(jzKF> diff --git a/release/src/router/openssl/crypto/pkcs7/pk7_smime.o b/release/src/router/openssl/crypto/pkcs7/pk7_smime.o deleted file mode 100644 index b18ceb6d9bd8fa9485170d531a7f4a381ffdfa65..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 10912 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 z zdKrm{6N2y^*M1!e%l2y3d4g#5di~MZa{Ard=6$1&i+RBilLuqpcY}E8emV94WN+4$ zzSic8Djq7Ixx#l0)Q8o+Q;;<$8Rpw%zO2$00I9osM3yxl;T&0D<8%|Wk4@y7@{zuR z^mHCOsi+VbUi>Bz>h+mwHHN z#ZU5i+gN=Kw zR?9(opFh&LFZnY*f7~-Z=kxp96Z$>+hR^TKU(T-`YeC@59B_6nh@(3DW0)X(W{G{K zev~W&uK-sE&9%$Kz1(bv5oBH%4c$!g-NVMtk`KD6vu}1TfY;Oiwi*en#|Db^LMgf< zH+1S@R|ilzak6l-ke#%vaC5rVx-qy1H&=%7<4O)ctYomd0?f~KQC#3+GYD+~Xj=#% zyr3bnpyTV65ZMycw^5&@K1}@p^%3f$_l%%H_oUN|LBGH?|J_0_klsmgniQu=ahjZe z9ybQ%T<%aVY0AaG^_2n2CrSC}A|EQD*PLHO56{Orfa6$C2l)hXNYAosX2Z~8=(6IP z2H{LzyW28)+YwG%Ho|P@@oeL<9p^O7)D4YdHz{_LVmFf_$BdHWuaskka!li=4f8a= zXkZht#XPqNjdPj@%tjt=KE`_N2=YmePc`($kXw#fbADo(YSm+SXPIlG@mg5a9D{b@ z&sIKRuN8y%UCW#|<6H{+s{h96`8F|Ub?0@Ufv&L|CC`<3&Z0+MxeSCuYde!bf zaPI1bQ*~sg#_QwAPSk41Rtv|AGsnt&Go7tWRgo=C6(&v|&yG(NpC7UZWbHjSRw)!d zR4nC+JyJH(POgsE%T+IR#)>RkYQ;|qG`h^$aH_j0cb{0LTAZo-&Bux}QyWB{sTHal zv8#oGY~^>2&*-H2k&kKFCd;K#fl_(gmIADAV_4w4;@3rQ3SRILJX&n@%pc9$1uJGn zlXyvq7ZUhI!1L{XkFJJf2#Nj$x}p;AQXDu6`@7L5c%0X(@ao->f#e&7cV3v+F7ceW zM-<)~fq@NpHHCLS;IEfk8QwbX#%&(g(E+!P&*9Ze&_t%CagN@X3UAK?c;5@&kidtD zH>~j3e+yo{dE(6}JZ`J-))CX~Z#mZyhg-+*@ahfF!nr1mbM$_LS8rIi&kn5D1y}Dc zc=c`t?OdGZ==}k&-a*}+=We)qZ2_;|>CndW$Hz@sZ(7ppfvcBN^cEkW*Qe;sN_u^8 z^>T{d?U228o#yE6QuMA$&!Zo%-abW7r_D1fjdS!~Q}k|2dMUVihlE~E@GgK23cLuj_iFZWWn*phJ-Wl9>#q2d`z@8tD%kLP@P1al8Y_Bz^Nz$Gs+e7%L1*rv< zQ9(~8jOB=oBMO$^AdKZ1WZa?Pn1VMcc(a1z3hq*Hw}N{V+^67v1*en@H(L=i687># zkXz7t6U%rj65^g`W()lq0uNX?isuAQTDSu*OXIn^z2ZJ?`C~ZX!JBYc;5iG&QIy8> zI;n{JYnHzYrxpKMaldN$yKzxqTfYZiDg5s|{yzLH@Ti6RaZ};{BJO7`e@gn}kRBb$ z@y~9^=Njomqn=~Nj#tK}inVozb(E10F`l!E^?S^*SqGI;p)^@?b?sA%d^Q<*_x%G0 z-?s0i(}{E@5scFK^mKU=?zzNjTGHO9TEG3h*PgP!(HcGM2KV$wZ;|_L_IE}j@*4L~ z!`hhIGc=z29Wjjr_Wlp2VC|gFq~AWx_U-nXjna1DlTx_b&*O7Orz!ZR l-@o?(c7CRv>BqP8I`15`*LO5w&rdkv=Vb&hEqFP>`wvB(6d(Wq diff --git a/release/src/router/openssl/crypto/rand/md_rand.o b/release/src/router/openssl/crypto/rand/md_rand.o deleted file mode 100644 index 23c7dcffea377a6e0c13a3f33fa39b3bd017aee2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 10004 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 diff --git a/release/src/router/openssl/crypto/rand/rand_egd.o b/release/src/router/openssl/crypto/rand/rand_egd.o deleted file mode 100644 index 6f2fce71150867789a472242a81c54b155b0c02c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 2876 zcwU`W-D@0G6#vbg&F7|dU1QwTs5@j~V+q6BM*KizZPNC^P#2}(gRt3;F~;ndyAy0c z=t33pP@I5*iRNKR0_H*3Hr3V#L-Pmt(8oUJ*@`H>^g$fYnLCr6ozzx5Fr524-}l@z zcjofh*>j4bz#|3y=pZ1{1N23ZnR3tsqIe8``ULha{*~Qae~zGk@&LL2^yHqshZTep0zC;W1t*6RnIpAnx&KBBDx_w42{`!3QkGPg+=j$9E6)Ig-B zCcm+p&qBF!QuWTqjwU+uGsg{gYGAn*Neh~Bi)P%S8MkQ0Et+wQX569~w`j&KnsKWi z2kJFtFX?|j4(z?;7;d*?=)413ss*=3Xw5VRs2{;u<2g|=J+KBb@1=?>8w%Vjf{CvMgy|G-^ zbz^>^@_v;UCB0UxLoXMN{L;Lh%P*WhCB^Kdzx~FAne0bPMtwPJ%onryWz%Q`)eloZ zFI3BAqhjK})6;-+PxiVv9neQyuDN#VBkZV&G)IrNn}n0ICVX}=pIyksuK->5_`CGX z1?-q!q-VebCu z?=HnE`TV?ibjNkY3x(zPgyRjO6K@6G@n%9t`^WSty5l9noxTjA6Ynd?cq!NJJyJw{ zev11%j?URKRmiRtu=BWgwoC_o^1I3YUS6(&YxBojCBc>t`_IZxet8Ig*zl1W@KU=f zVeHSyxG#YF19&iihXObRKdH{d`SI~X51yeY#n*g#?#W3X=DxfTz%K{zOaQ+b!0!Zb zF@Qe|;93AL1@L8e%`+RNetaI#f9UNI!!FAkT@abJ;&sX_8ybH4S5S}#Ew*ElvNf0r5v4Sj8>p>5q)Y?la5)izFq={{zNoyLRp6oODBtC!- z<16?CI+Jeb>>}+4Unbw~H#@tt$$PVXZx{w-FrWwv1&~KkD8oZNRaMxA4bU*t2bN(U zd4Md!x0w#K8jUNf+Uh)>SaneoSVv6W!o>A3Chv$rIeCLnw_aY1;K35Yo84Wj1} zy$r?Jk3ocf;Jx;Q>kZCp^90efZD%-geaF7-+&Q?`AnIXmcNB&}lq}t@f<1t=H|tX0 zX!B(m52eps;X4NE!)o6tq&3Gm=G$eyywsNf%H2I7EzL)`K$h4z-30Ap6S*dRq_06; zZwe~1xi+YMAzzXCvbufgJCk~btT3M;xdV%y5I&GEnlFo4PY7F>^hps(Un$k49@1I) zdS57xnC55XQ2qn>`Q>w_mSrkCAE~V!pP-camu^ahL5XYhm L|9|6iO z&_cmQs|E?(`e($Cd{&5!mVUNYQ2g-A4?)3#`SYhA6$FbE)_Z5><;|Pjnl5_bF>~kM zd+wP#Gw;oN=h(^Pkw^r-M9_mk1IFS&Jc+5pLd(L&KIrlQ)^*t%N2^%%`^{$4*Ru3* z^b_0mNd19kw_EHx#Uo_zJbq{UJz*aQ`;B)T|8M-#F94q%%xtY$zcg28P)`DDjo$mV#gSxhP;(7g0j`CKLB<}W6q#Xc+cGwyJ<6t!vEHkEGfCZlLU4@0B5v}kqmQ^c@x6_z%`SrSwo8(;U_tA z%XI`^Ufrpd!^Bl`3^2PDpFzB_YQf$^J``_@xpJRt^yqV6Yw-FA{wwR~Q`kwujuSS| zDU-FM;dQqKSADG6jE=RNLnk?7|5MH%jhtEB_{-0W^$&8KoAZi#Ui~oln9AQz`THn8 z*1L1K8qc-kL0CUCmvPF;ee*nw|A+ab!})izXW}YH59NsQ97)3Ge61n&j?H^V?j@W! zdh~fadt&nSr|iSdA&1`0PW8f~SD2yJTbAuPzvsEurx9s7OWfTzK&Tgeo81|%UGs@4}!H+f&t@+M=PebIaL^Z!*%`c|(=YY_+{R};} zHV{+ov-I?8eiwHGuTZ<6o-XCbyk0~Y@4T*Pwkd?`!hS`~&(C`j;k@7NmUH2}JqYqH zA&hs2lyxo6$9oH5yjU{8>qCHd8DYGORLBiIPPHE)jF%(4^N@J`2=Kl@7%ywd8u;Sl zeU32R&7@o>#@mGe?^_u4BRqXu`gpey#`{UbOCrGg4Pm^y55fBtVZ6H_kHp4_8NGH2jrcN z@rDuLIg#+WywMe4073uABl?|I{QMg<`=vC$htB&XGlC}56IL>XyWB8*9O)MkI3Nc|_&&Yb*(0jyLVqu;Uj0nzwK5F>) z8G1i-vBXKz^(1t$LX~EH(9nmVixqmavOZ$yCO>_}S?@CRwD@me;df$+=6^)9^O_&m zbY_2A_1A@eA4-P3X6Wy${)X`H$ESwC-fxlg!B}CSNf{Z2gNyO zsR(@te=Gfr(5ZgnMzBztab^*GhFibDZSNoX`AWW6s#b7p^2Do?$MSQfa;a+is>_IS zArH^*^M!?+}c4R*g^VxclWjhT|?N j`-;l5s`6Y>_D>$dn@?sU-JVY;<6|BA`+2#pT%Ugc2Wxex diff --git a/release/src/router/openssl/crypto/rand/rand_nw.o b/release/src/router/openssl/crypto/rand/rand_nw.o deleted file mode 100644 index 288e45d333b9785a6a51bbe928dc7bd8a857595e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 783 zcwUWA!AiqG6r7kCtGz@|1uykv1$juVm!5>8^&p}L!JBNFSSutg$%^*mFZeHCrO;jrU6PE z0>w_g@t3uJVD!l3+=kq-VrzrkDT+H6TP)XMInVeDpz`KVsKPTkY{=Q(jj7LA?x2>_ z+()^C#+%|pEoas4pdpp{R=TISi}iegsrmmrW!lX1**W-k5366^b8DyE$|TzJ8@2br V;r_p#_1iVS17sqNp3@JS;1BOYEerqv diff --git a/release/src/router/openssl/crypto/rand/rand_os2.o b/release/src/router/openssl/crypto/rand/rand_os2.o deleted file mode 100644 index d363b92e9af37f84dae9e64ddc677cdeebb148af..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 784 zcwUWAO-sW-6r7kC>&GE_61>!t733kYUV0LW)`N&11aFcwu~tY@k`?siU+@R{r~C!F zo9>#Iy`%%fyvdu*zPF#3H&>41z`#KdjRU?V{Q!5v+6}NR`zv8G9*_Ei$?d~&e@G$8 z^HhCgB8sJoa;Yz-66w1DC6S0gaaDoJbT-eQ3(z7dL0OW7Fm|&qHBN# z2SB}(ul7ip7=C8xcL)o~yv+hg@ zjR%Qv;6PZ6CbWqMLoncJD!+*ea^S$h3yB909(wTLQ3(eQHS7D%H`ARNAo?Yf_j|tY zd4In5d*_|`Z1?^>k|ePYQar8pA0Uit#a>*wwCS@wA(lU@Xl;%;^b zx3d}C%CatS<~-}1O2jhhQ+aGdKH9aLhhuLvFOMTX=-5>6MP2|D_6M9kr(oy#UX%tU ze4F{JbNU;DN1f|~JeMG6R9w0;gk^ge-&{$nE3$-`6MrA# znSM8pVO+W>Vdum;=WV&JN37o;VKgJPwz17)vlm zA{4`Vlm=7`k45p-NFVuF#G#QNI#B%jV<}nWQyG@2B$VXYUEsWCaE)>}lL6%O924s} zagDxDJY|IQ7o)tX*fJJ_x*7OldVus(ba#JtW(OHNdB&+d8CnD4(@6A8d*@OqAO1TQ zXH}i}Qx0FOr*PAb5;r{oabLOMnf*CP;nEtHdH$UEaune6{0(K(CQVvG(V>mOVzh0#WE{t zhjtv8E;Nl=jn)h{z}DX)cMio_;7QFW7i$`w-89M{>z1kICUdzEr)9V_amr)Wn(pw( zR@tc6DN*?U<5j@vd2tu#L;GIGOS?R;*FBF%MM+)szj<5X_-x8PUdqRdx_BE9=*dUv zQA0c)@6glhTd(zrI5yA|b9s#4L(twy1c$dbgJ52mx9SCpuHXF#`nAaK0|>tfbp6gk z*qiitl%S?hFY4}_2wf7^0y$MgBHU@lplKZfp|GT(}c=tm*Px{h|UweQRN!aX%@XIyBvH9)YpoN=0 z?7vh0@UKVlcL%-^328+FkuVN^*(2x);e?YL9-LE&&}J78Iyf2P_l0nHe?9yovUWQj zj)ibPGt6CwO*2ww={r4arugqK4Y z-1G|bjp|9QjHeo4xN&y7Zegxjs8r1+=5(uBt)Q;gP2Gag)EhWvT15-xnqle?~ryPmP6F{T)fDV XeqgV<*f~$HI0wswE7!U5dHeqY(#VmU diff --git a/release/src/router/openssl/crypto/rand/rand_win.o b/release/src/router/openssl/crypto/rand/rand_win.o deleted file mode 100644 index da4da8906f2e51d518ded46d7081c7804df8c071..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 784 zcwUWAyH3ME5FBG;!lN)$NHn1$NN9yZXi_0X5DJ8#K%zr-Y=V*OMD`&<#V_zd{1jgR zcg`JNU*n84njP<)Z}&bgZ>}82fq{b#Y6pBv`T_0+mFr2f*Pu*Y?BaLDLh(0LZXsm$D0r-aiZ9~ zdg%&LDe9pcRjLFkhX{$5Lo1s{B@Q5R;Lt-4NWJvHfdf)ePwfqpwcUU-a)%%`B9PJU(3j779G-9Rx0= z%!e1Fzt``iEZnUcxL)nWwQ3J))g*3Lfs3BGJy6{cE$J z$E?6^F4}0=1CEwdT{BJ;#%9*XX#RSgaSm-uENRdL9*(V9#DhmXc*KK8JP5v4^j5yI z#Mdvx*FF8`>WY4|dRxEo40oKb`{5=zUnP$<$s_IaKG?d7?*gsKq(l?;0XkJM)~S0O ztV`@Qt?fNOZ^Ryq4`n<2{7Ut_48%2&D>M(Si+CE4aXS`=1t-jbc@?0enuOkMagFF( zwk4LgXdI)48!6Km7d)F;SMo``b55^?-6L_G8xgqRjsmd}#Mg}QGje^dW?rpnf7FeQ z?7MZbpU0cUT#YkeYt8kKH})sUUB+i7mo?(pBaS`d*dvag*_ZpgFZ+gv-#60x4jg^k z=+E?J=pM|J&(2oz1?npcvOf`wD$bb-GR1r)k4&LlrrXGwnl4Sw@n9x1UtB79L~o?~Z@w1YwmFOHGn>n%4qJ>%p``B^7yIK41kafCT+nVHKMeZ$1u?5tC& z;QyCRfVlf(zHEo=!Od^_e!-o;nja-Ky-ohxZ#%@C^P1wHU+T1#LX^T&OPUt00geR~eA{5_<4MwuYMcO0$wY{Ew= zDe$$UiSGtEIq|+m2w#`vnd5b#8Se+k zcv;`iXluNbM2Yy7pHsgN`pB;q@(cPP2e>?-Nyar9b3Np|oHL9~jWYhR_u&zNRfFTj)dgnA-NEeOCkAlf1DNbCGb_q z?uF!UL-Kba`TLOkQ%JrUlJEKB3u68*{1&o52+5B^G8XcsB44(d30PzFtwPNXZu+>{ z$xS~uyAZn0b5rxV;&gc)2M_H%aQN_8Zn|7{DkrC=i;uCD^3}c!Vi-ZGjnC9G2_IHlP{4RdTR(VUo3*~ zoGP50#N>jLFZyfN*2{d;Hp)9%+amRC-STY4x@G<)UXk_$B`|%|puK~>(b?W1?-90h z%*3mJ%RMFakG}q%|J({cM@QyYevbObzP}!k{s#B2(N`1o?R01?>SNRo`uYLZ(`99| zzH1enn|wUIz-K()OA=R%`tz)(pN&i0Zn%SH9o%F@`j13p{38(=|6hIA>*fFe diff --git a/release/src/router/openssl/crypto/rc2/rc2_cbc.o b/release/src/router/openssl/crypto/rc2/rc2_cbc.o deleted file mode 100644 index 4f179d09cd73ca7754320cdcddf1b7ebb4e22e75..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 3952 zcwUuPU2Ggz75?VV{`rS=ys^zFHDM+@`_tmC2G>X~vK-5QNoZu5ib{Dv#PND#yO6}P z4QeGMRyGn=6?dZ*60Ot+Yhse9sBF>}!b1ULQ4}NuJRsCZD@oJRRw9TX`N7ig-I-Z? zb_0}N>FC^Z?>Xn*^PO|g?0#?b`TB>GZ5D>(d$V$B=HEsW7l>6iBB;; zNBaDpq+rK&-I|nmXy4u34ed|V?Jr-9VCABDY8~cm31UP*^s8{)Q9FW{EZ042o5v@W zD4H!5trl=(%`)!6)Es2>I4pgZ^AXZ8ZHDYYLm-0G+SWmVbZ!KeaTTVnDp@TGOB>^S znlwe-f?YCH-u1}Z@}nx!gIw3Ps2^3bdV+pu>illfZ!7%{NxwGN^*hwPg{&6yd|KM* zp5MVX6@DhT)#=@Ip_zTRfvyD4{IQMpIQehwv|dD-@c@@! zPheXGwqDL%hiT$PY>BhPY1gGbF|)KLMe-E)k7CM;XW2-= zyfu!}K^e!4oi>(f+eF>ll)rE9xWj8Hu36geA$iJJq3yC~yZMDC4CzhOTeZ#Eamd(Z zo-9o$@?3e=1D8cid8k>(1G(`*-H5mASg(<*E(aZ7q{BSLrga zv6jlc6Ux^(*9&Vh7b)W|eXB}JJHm5+KtHp##I(vBx$YI_hA*W{;&_60oS~gyF4Uhg zCuNzV1Y~}?`hi!o=JqS{0NeqB9|UsXqNvpR^MSNrj^Y9HRJ_TtT|jW?>@xKYh9 zryAa_PU2>H8cx}~#Js-D_jP}p@AP+kLw~C%c)ucWx1!>sN(3KNqPSCu;l0XL3~F(F zSV1xlu!dnpfbM8;$62q2B%a8$0QqL5Pf?yI!Yplq1)%A;kyS8E-^b{4h(5qne|H=Xa;d0md|7qOgRDtN5!-gMbU}jtP{tK1ANno z;5lc<)iMbzX8!Cdyx1${9amV-LJ);$#?&T60++j+Fv;p2A$}|668j1BY{~xMy+!To z>?MOBQc31VSt{yZn=wm&!JJm=331@jKcDQf|54tONstaqNdd*cz=e1lzXwBF8^GHsZH4Esn%e-07@omh7fbBVLWTgOIr5AQ?7*&^jhJ;b`7)am0L zC)NtF7Q|X5)=^>|3t=q=T0Gr7A3?t2xJ|n|w7W~Y_i6VY?e5X;Bj-oNB7zT{|GO^N zDPJpsF=Wl_o9Lmv!FUvWm9;s_+MHl*vKCpV5!R^6nvJtwrBBcIi*1BQLwYqW(xr$< zuV%?(0*85aCox-1Q5M3$M%k~!8&!!>7vCQ1lo&bXjJ_f=nj^%R3Ng-}dW5{2)FZ!f zB2=5xjJe2|XZNs*V~%kbh}RTr^RHfQn%5xAbwm8o{movDvco3DKs&#{LyT$Idt>sw z3C0v-oN>md$~c*4iJQbqzCDSXkKdS&+d$lZb0y-o%5R?+lg#(^Ag&vX%VBPBWioxs zLdIw6-{HH6JR#%A*p4`i65mHLcpnKE|K)w~yJU$@h5%>Xo41GN$^AKS#b4`;hjc^p zWNm(R-Q;J>yk-cAh3M>HZIN4~$2srq_#d_PfEfSFVP7q?ua?EnJMz61)tB>W=qBAmyn-6vvdaesl`R)7m71;=g(e{ zlW*ncrx%bvH(i|i_DufF)ZCLjzCr$(;hxjQ^M!>M=9fY%)5Ty#n(nO@rV9JIa%bU! zJnrGW!i96^iszT`DaNCK_ggd;$b$|0TENXfPyGZveiXgmn4hHA4e!i(5z^B`dXYeW z3aI<7e2O&LpeM(dNKK*jO9y;=d0sTollK}xy}w_ee$@6(q8=Bi_uY_T?c8rP==Cz7 zjsKvx)S&k+0eU(5u--iCk<6JMQErER%+c%q#Qm`%JBv{(IAHrlyY-}+}a>V5FRQ*iT30JXbI-Brjk7G zvw^(f$xTQFvaFFL&wDatFEPYI!F&Aq0>Z5%+(a7N!|9p%)6;W{^PUgEBp8w(@askd ze>tO?pPLx@67SMNy&sY{5rS9AW8}{Ze_f|y3+>;E`1@~1{CzoE6TTnG69I1xxEApC dfa?M83b+w)E8w|+cL&@KcyGY_0^T3+e*-Vyp$Py0 diff --git a/release/src/router/openssl/crypto/rc2/rc2_ecb.o b/release/src/router/openssl/crypto/rc2/rc2_ecb.o deleted file mode 100644 index a93be866a2c1a84b9bad11c19c5f45b96d43cabc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 1516 zcwUWDOKTHR6#nLwOxmikt6(dgK-)x-A>iDI&C5g;lR(O^ar@?4{+noMIoL$4{|do`oZCx@7(X6bDz(y6|W0|fDi&y^cgTI z0`Vl4XFQh0DU5)}@r3XRe}%Ap-0Ss1mL)q&HsP`HIp9queY7uq?;U0)@wuzvV>gL| zu7Kx`f*l9gb40v!WW07_*mdG~yWM^E{PDQC5Y$A&ydYh zydcqpgH9Z>D?o8Y#9RppS3%s3L3IJql_9ybmk#ZvqvA-);xKb(zMz?9%hp<}+HKQl zuB;Tbyq?qZRV|;>Zk0E+LM~sR=8N<5vs!j>>FzmgMla}e=6ZXxVV5i9ZOixTVPqQ{ zHuPHAE<>-h+t4jzt=?R1vEY$z)-33ano)VYrk5-Aiv>T;Ch4@El2NUcjAqr^G^vQy zVr9Ji6T@oPTTSTIR-<7w?LXb>-!KMvZzmS;tC8_!;M0Ll`iCwEI? zAM2~4-***$y>P!Z!T(z!!g@~wT`u5zL`FHC5ZGz-&zRvYC3hma(1$%4wq!qflH4%- zzU)re9{74&w2vDc=g*7>pO^8o2M$tXmNc*u#`%tn$0J;g@SzBo!9((Hn&-pb9vRr( zjZ(caZk(OrB*)n~b3vT(^wi&~dLL1*BKjpuYi6ldZ=3!=kYsVq=*Qt-We|hK UDI@+p#K`ZGAEw8%$2?uqZ)NzPN&o-= diff --git a/release/src/router/openssl/crypto/rc2/rc2_skey.o b/release/src/router/openssl/crypto/rc2/rc2_skey.o deleted file mode 100644 index 4150dd96e1799ebee58968a2f1896361af887a88..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 1788 zcwUuMcYIS-6#ib4CTUCIQ7c9%l1E?K$M6|T(SnGvu|up_QMAsGq@gV|ZA^l;Dm278 za1n8VqQ)R~;a<3vA}&Hw83Vc4ND76v6 zY9n5FgLB1kqU%Eo92VTtA7&_}vi9HN|p&Bht9 zT^z9L5kj6=CiSDtY=BU0q5VE9Fc?vw5eRo*VgbUAy6wir>cF^z^lM?at9J{TcaX);Icr_YQt}!GRwb zzy1F6(A=N@>bu*&e%f&hCtZKQ+h?D)?=it+Z{2#9&UE{a8{HF(*|`|`e+$hUSp`N})k{^pmr+&RTPhC8x( z+w!}Ls;kD{GgW!usfH1bCmwuVe)0ED>c3vM=G=mQbK9QY7w$#9-9E!C)z6tX(Oe~0 z%JjdL13liL(?vGuPujNhD(LABLT+&eoseCD0A#-BU7vDY#dNW43J3fpr0e98(b zp7uX@6{N4(A$u;2*Q^Rm*KI_0-7OSA4>M8Mh)i7MGtwp%>JZXcRHBrYK7>+ALFht=&7%)6ZA>DxD}#3J zl;FaGi!kn;w6@koi`^(L{R#aG-E~nI&z%RoiHKc$;Bd}&?wNZY`EFi~O^pkJ08a!2 zaE^eg1o%UkN!q9%9cTwHXOgvpzlv2owJgg+lcd*4Z`!CQ1$>C9$6L}@>o7KqZ)OVn z<~@8dlh`xk*fj_6+3d%T*^6y6f`%Ewf%z2s`ZE~1TCYNVUx(T_#vB^DjNvQ5$y;^v z2FF6P^Hu6pG~l%}02Q`~{k0OAo^^d+^azBXu!&8j;lgBavb{#dL98gg7lhyhV0^ zG(mn!0?ncekPQ(&LqfptK`|8g4L^bgAR00xgY^r%pK`AB3QiNhEsMn@k+`X{EJ+>Ru*ghm|K%Ik&7e1>eL7swlcU9%{1d0{S3b}_xP zrvHsO(nw1lle?rrF21WceOw~-xp@pfLi2rVXcq5m2F-h6c^h7{IIlZ}=DG)p(;urF zzatz4-uU~f)ZZY7 z`CahB$7P&Y;6!TqN^0taVZI{6{uUf)!7_M}>|cz>ZT3EyY}k7X;0AZjb{6BX&9PE8 pVZRM6i$C8~BVZfT8#5=)TFM6l9dgaC7_6=s8T7zyPhPYB#DALg@QGzvEq0wgL?5=< z;25wKj~v`mHmnEnkMM(e72lih;ahV9-cY#fOX3p9g8pa72#sKabL%3~(aK{+N=SCR!%n|IG{kUhG0)m6s)YBs8f{5SPo@Ng4fzDnKAL&l*59^WOTO6(N8xlrhv0#R|g@%O9n1m|d z@6%Dsnu=MLJo1Y*-X|vHIP_kjPv`>VhR`T<2wi!uJM|{?(SI~u)00Anttq>mU=EPc zfyV~$TLbv1v1OmNzQ=jfIBy!~P2;?2oHvd0rg7dh&YQ-0(>QOM4+qM1Jc#3bCUZ8N zIDg^d3*oeyQh6WL>Xnt+e1TZ2IJne`YNd@D)Z%4DgTofr~95FFA2M5S$5_1yYf6u{tD3ckC~x|JMx6RMEASa54?_!BlNCjp5U*d z{k#pdTWc?m_P&U`{gzl9*3F^4?(belx2WsGVcjJ-=Z!Y=5^PYf>p7|E$8gv?VP{F! zJMvoSl7nCQl0OrV(gSenie3wC?(_Dj@3f1%d*L?sx(9z)aGBEal+va|aCb$)yF0kA zgL~jM#r|S$9H_|KPv#cObH(Lq+1_d`+9n4a Q?CNoP=q1+px;+%|H)ISFJOBUy diff --git a/release/src/router/openssl/crypto/rc4/rc4_enc.o b/release/src/router/openssl/crypto/rc4/rc4_enc.o deleted file mode 100644 index 023586fc0f81ec38c420eadb3e7dd32dc2fc4e07..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 3452 zcwWVpU2GIp6vzMbvAa`fWvGN~BF4S2vs)9gS)nF{7_w=Bg3{8Mn1C@tyIc9tmZn{j z`eZ}-@PpFn8yX)9t%)zD`0->y(m;zm7~`XlO`)O^Bfgnf9shUcE}dN#?LK*vlXK6V zdw%E4xgRs{>^ZPk(=?Qt1`8_|@KqfUv(eS;TTQUhfN)#(VqfC1Ervfl&nsCrBq<_m9j@@xR+{yy?$3*r#?InUnDc`sv-V0&3 z2Xk|Bt~p^~-tmyniukDJ;S>6ubVbuSK8sxe=IHmSD-svzx34UQ$+$8P58tU=&bngX zCF-B(GevPGMEp4Y_Ry~*E3#vn%)yUkFCmE6%6NHK*pfLCAa zJR=#y^wwyujf|hi>M+9PSv$_!jE~q6j^&fWmd{!*3i~y#P0nAn3#_@|Owj@qWuF;~ zF5sx_53^4>Ap5t2@s?7bCF8l$}i2J^@se1x%j|3x_V zUZmptk+v-)?U#_`es|(M*rLhhHfC;&MDP*N7(>%`afoNTi)VY^tR~)tt|94^pW`%h zm*<%0BR9&i=!A!RJS+1m_IVXM!ZT8skU5B!3tGzFE%z+P?z#q2WE4V-$b`HLggvbo zONwD$(Mk;75t5<#j5(g`bQQ+E5M%x!L$Am~S9wHg$it|}!%%rdYskZ_$iq~5#A?VR zQjteQ>AIdp;wo7@qfBDqwJ5HOYN7#XGN{{BJ7%>B$)K zzQ2VxofPk)82wLsiH#OsbUaT_S-9!QyG(G8&Du7<6}lmY7kQ8NXXPF{2dsa%pR;m5 z%h)k~AI5?^_+MiC_b%>C$hbpT;QrO8Dp`Nmz|s`!C|Oz+)?YQSbj9i*ORvIOu7PDJ z)=sjFDy%zrz2hp-d6oYg6?%J4AIo(2oY=lC7?w_%m)n{HYw(nG5A6J@zP{f6B5G()0sg;SRN1+T=eE*9 z%`^UEUYcU9V%}ExF$eU}ym)Aysq7s<*}vu?N}^((Y|m5bLgSknf;^s}MASTK??O3m z80D?>tPACJk@GHFEAvWm`5#jjH`x&6C*xXJiTgSNUg>>pI&BL1m3XhBoVUBd|3C71 zYp}vQiGY_?^S08dG32KyS&x;qkZl*|4OPr5=~8a8HP-{*Q?H|}MG#l6oy;xFGaJg+ zEnM4h3y+)l-9xAu6<$VJCejW^ly37%CJ%YkjvN~}QaCX*;6K-ubEH0~QmGX}7PS@5gcPj8)x(R%k)DGV(!1LEB z9Fm^PO4#mbD;;P{`-Iu<$atC6GJux8LT!{g5^7mUa`vcO9b;?StSV_L`3-_g(^sjx zH(L5O!|rP71LBp@#hjrTmuc#k&ut)RJD*>AZDstLa-+(!Lw&^=RhXPkrch z%eSCcJrBBTuQgh$Z8q7^ow^IXS+}cC)^w}dxK^a)HUqOr1qvOYSPY%YGuw{eXt%sD zs_wXrP0P1U=J9Obd}MF^qO-M4+w}+zz1D6v?Uvtrf&L;Ff#7cUaeKDMpXOTQIOQL> zNgAnB;HDAebYuaS5pW4^-vDC&-U{L|6I@@XF(9me>kD%Y(@1h0tLqlx@!laWk*~t% zMFAJp&LqM8CgS_|2`Bqt@(}U*z7s)3SlwAoNynPy~P;eA)hvTCCJCxWCL77HKDIaP6=ZqYob@EedqoW`2)1|zqKNAW z{OF24rH7@&Dq*&mk=gw{cB;n~PlVZLdh8+kMCs)xAc_*)G|@gA>?;#?Cq^mXxZr2L z9G|m29Hsm-+@1{lL&2kOdi2BVHDoJg1LEsot~qAC;W_x-10g;Pp~&aLJ16stoE#3% PtB*A6b6^k{V>aoZ-dVRA diff --git a/release/src/router/openssl/crypto/rc4/rc4_utl.o b/release/src/router/openssl/crypto/rc4/rc4_utl.o deleted file mode 100644 index b6dd111959fe798cb1c80a1aa093465dd034bd4b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 1124 zcwUWD!AiqG5PdPJjjc-cqM%}WQb87}@t}wls`gT(2!gkew6T`98j`Kllb@j1f+xSo zPw*G~0^Q9fcC$kD!DRN$yxkdQH&17cb4}BbLW7A314@kKOK93L+r}b_P_V29reTBG zX1rQI241(yA7dRDKbx@hI9#vQj;!ta#np~wlL}#VN%T0NuE#tLg}+T#)E`lhwo6?Q zFN#1yztg?Dx#x>M3ECmZpzV9Z4spHieno`&CURM`oyez7&wm7I-46!-9i7tlFRTIa zoMsbVRr008mlK`-hi;3R`48PL;+nyXq+6AAM#2w)%spN+vlJc20kb(Nerkw5=9%RZ z9p@*=o;N}kX|9RvT)0l{kE4NX-G(7_ysn8!T@T{Cy+rqd?1R%1Tf$^^9B<5eiZ1o( z>^Q1y(>wDE%nA^7`K)4bB+BIkL9n+i7|LyvDv z=7pcXmCtsW?O&1dd}fx!<2M$zY-dROqy_mGaXNw1?nVKEu>0Ur-;t9XGX-%*t|(?W KTNHO$WS?*K;Y}$3 diff --git a/release/src/router/openssl/crypto/rc5/rc5_ecb.o b/release/src/router/openssl/crypto/rc5/rc5_ecb.o deleted file mode 100644 index e8f49ebcb58c1291fb4bf20b6c5614a334f87c59..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 1528 zcwUWDOKTHR6#nLwM_V;^6|~w3w4Eq2Bxx&HM1-~$A=auW?m`~ZHfkPBMrom9QIV>J z%(fsRqx*>K7X1k>yX+5er zh$gT!<+3zRUF%Znqn-G}#%lQJ0Ne2Ht6@gB@wVyQhueYe&WBP6E3f z0ncp(FKl4j7V+Aa@z#!D%Z}oWjbRZIUfMV%VLXw?c=92Tj{|ctU_z$Yb&9P5_XcP@ zN8<-bZGJ!!PGifo3) za}q7sZAT$H0u)C?#E}qp6hxf}Vh$iWG9-t3X;Uxl7!IT~_O#ox(`vJ5T54liz1cMC zckblXte(-cWi^{oZxq+nTqc{N;tR90GirKa@$NZwO3&$Z=6Y+rW)(~1Ez|R>!N@Y! zEa;V@RfJw@wV<2EO0~Y+V1q|`vtmN8RgBW(6}?!hPUgHYTcp!|3X{2lQ7#pXdf8lW zQXaFxGPzSv46{{j)S;IfwVF}4j=I<*aT;*nPQ>R|L-PsWr+l6C51mF9`w!g(xHX$1 zr%Q4=+2@ylzPEj!ObzK6rpe-5{JY}q;~1IZ>lnX+{(NibM=-a9{&QivADk|zn@4}$ zeZ|`!s~bbFZWUg>px=t%{jC5&zNfw}`qt@e7+6p;}*yHGvmR>W&G@dgA`gN_3ealz9Qq%5RZlUK#0rWA-Olr^Fg;q z26lJDl#>u>b%7 diff --git a/release/src/router/openssl/crypto/rc5/rc5_enc.o b/release/src/router/openssl/crypto/rc5/rc5_enc.o deleted file mode 100644 index 889e7d14043495e31b417376dc6462a960d6a13a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 5676 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 diff --git a/release/src/router/openssl/crypto/rc5/rc5_skey.o b/release/src/router/openssl/crypto/rc5/rc5_skey.o deleted file mode 100644 index 725c7b5592aa0fb67284920472ceaf04c0ed7333..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 2056 zcwUuM-)mb{9RHkqZ<5<2y0cO-xVq)cToOaP#4g1uMM7?yW;#X`gggjo^J86cT|*L~ z1;MaRWKh`hD2NPE5R6vvLG~~xMPv`k{1a;HgFZRmDh#jRlY2vMqT>99FQ4z{p6~ho zI_Kow#S3}H7zV#ZQBFJDe%*TXZmb<9{4aW z4n9yH{CPLdp~iIf)vhQVKfN8hBhR17Z^t{|7_I zo%ksV4}^9Z7P<{6W zb^$PbgckAlAR;MML!}4QdOBV)6#Pc{c8nzNv7hZMm!0JC{Ye%3MgaTI+x9|C$98H0 z%Uq;$)baMs4yT-`#stL#ayx>*NmI`Dry$b6b5y%XkR6c|9@@fVKjqp_xX2~a_n?cK zi?;n;4A{Sg)5_4EQeZ@^A)g%OM#B1^`)E(vqSHO3S$q=ja0Q*n2?)MGwbrPsOEj;= zo}7sv-x`3G2=Q%fFDrQABW0eUYTVh%XMXxdna`F~RA0+wL=+0uuQK>zKI%n-vis1! zw!`o#%`Fdk21))o;q}-bc6Lgmc_#T4CL$dcj8s^bt8`~92s%DNqZOA)i=;HGX^N*~ zH!kLmY5x(;e}c)g=%jr#|NGc0D9AlYy%o;VdF}6rXoA)ib_Unef}h7T5e@!q1+o@K zcR=IUU}P1RjP#J?uQCn4_JRo&!6Mx$-0LxXLHFZJc0_e{=7OMmeN)GQ%Gurc6lI8# zrby>Vv!n&mB56rJyd}$eDVkWi_{Ou*j5%Y{yE9u`>+O{aVY}(z<$=|%Z?<99R@y5t zE3FpHW_@+->ZJ{7TrnH9Cd~C(z4G>|xl&m>H{*Pko6Og(+48xWa;x4hzg6FI7MdF} z(%+V<8|&-!t8F~8&|B>PhxlEd9b4xv3fE8l55G96{s?|4^m8^8k6*;&r@8z^VB|lp zL>e9QlQK&>;rV_$;MDOrsn7M3{AG;B+r+30)`}RNi}X7l6pLZr3mDD&S-`1J=G8IG zy9OuTAVfp`=RWEfjdw5L%tpowVi>OjCtlk1yG8LPJ^PreCowz=DIXKLG3GZwPkZQ5 z<3AFfAPvFEE6+~W=8g9b)fe+{?`*x|{jTA68y-=|cBvzkNbb!jd0>p|V>~#XI8CPC1fe1nb6%WY!Gi$Scr?4KtzPVhhTFrUMO|h-9Vp`+UG`= z9uj(3ruRlovxlU8DSYft@L%xF2VwfoT=48td{qbs@y z45>h;One*|RLGVEj1cirTF+A*TV@oN-GPs`u2sdRQ%%wnHIZy4*-UXvgg7NZyhXa3 zq?gu15~vnafNY5fSrWol2#TdZwNx}&fN05(ES4|uhH`zqDWEGBizMM-qz6b_0^Y^Q zUKLP`so3dpoSB&8h@C&2k#^SIhg3K9qBa`OHq&YHaj?6HQr3oCyF`i65&=TWQPi|}dMz29LZWPy-OLJ+`rGlpy zgHb`Bk=fVdS#~7|YpQ`sIQ#mtN}Y^~~&$F_Rof_4TGQ z^Xb93;9%bshAIT1G^8g+0&sGua^qxBhoFDNKNqcZ?DqlBme*a diff --git a/release/src/router/openssl/crypto/rc5/rc5ofb64.o b/release/src/router/openssl/crypto/rc5/rc5ofb64.o deleted file mode 100644 index 0ef2e13570d34fca54e8fa8c59af87d70eb3866b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 1804 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 A`2YX_ diff --git a/release/src/router/openssl/crypto/rsa/rsa_chk.o b/release/src/router/openssl/crypto/rsa/rsa_chk.o deleted file mode 100644 index e74ef5cb6d9161891974bc44cebad881dd5a1f00..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 3168 zcwUWGO>7%Q6#l&Hq|Oh;q)8h@5WB@vTq&}mHb?9>6uxoe_}U%8SMD&rbcgVTJBZKS0o-w;*m5Jd?OND$dvVVN zZdTg-_ZD`#_wu;I}Uq2j(=fwvHc&cb+PYnRJ(Y_f1>8$@2DPP z{0;Fi`}=UJY)1im5b)v*({pc}>S#nvB)d6QClC&xC-N(1y6syt;BjGWxIqLXm(UVf zLu7~j%b{91&`@7c-U-eBL0 zeWgikw)J7M?2n;y1QjvST8lk`%)9c^JT7kh~6pdfum($^m-6u-Msov;%(lZpqH)G z>eBzzDuU7STXO$I={YCI4bbzO(*C$wCK~3>^X9y?&Zu7l%XnSUM0VfnTGRJ>`4R86 z`Ma`=k$ueNgrbS=V=nJDJrm>QK5hT@DKQ3={d=TI?Dw?TPtbJz_^R%tqBCI~W-VQb z;d;F%!riY8=MsBF+!_AbgsrOBs?t_dY&BnZNYR~u*46USUy!iESqwY%k#0>WctK$Vdg=xsaH=X z<`$f}#l)g>5wW?YY}Uz@uW^L>+OtPAV%EqgjY?*tn2Zd2ZT zK;#W!FK-GW-k{Vyq*z_bxPa_WVXt=F{vusg)A{Jvj@vpV*&rjGE6^0Yyj*LZn;LJJ zoUX#vTBuF62k~@XO(GoIm0lQ^#-rZW|p1AQqEyg zTuw5~&!rer=@n1El=8=1C^(L9O6OLbLecRvdoHgT?E+gm#C~igq@Pf9bc%Ds_=d!c z#LE)7J{`1~`4iD`5O~1&B)pBuJQ5K6yyUBlRH$`E+7O%4{v9J7w4WIHFVYY^YzRJJ zh;b8)^jDE#>;Y~t9tNt0h!dhM-EoBO9#f1TG{yJ{Q|R-i$a~Ec`p=~9p45FWbvshm l9Td7@M!M*xgTkJd_H~I5f+Ft^61OD=TLkt>9AKnF@gLY&?u`Hd diff --git a/release/src/router/openssl/crypto/rsa/rsa_crpt.o b/release/src/router/openssl/crypto/rsa/rsa_crpt.o deleted file mode 100644 index e2903f4299111f5927d4acb2f0cca7595f14522e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 4544 zcwWs{O^j1j6#n`;e^8J&KS0${`?NSkv1t$!G(<~h5J)D&WE>3`lTK&eo1w`}r)gjD zXG3FLOk&e&;sO#)CZNcQCy2@dbRz1)l_o6MInjk|bt6$?J*W4*&V9E9bmvW)^S*n| z{m!}P-gEEm@qMGu2Lb_jEr1@ZA>ev9(5+*9R|CaxFSbB#w^08b|DioVzlZ)e`ufVP zdcE$UsTO^pEbAjJ`e6B{q>r`e;nU0Gd+>9m14k-7hy>x{4GPv3+#}&2$^)W*HE8H8 z->mR=6sZa@xCeND$XGoYT&`akdIeuOhw-H|i7%XSeC~|mGv@#SCx~U;I9tX#KsT0_$;-*wx|_nUv6Lj=$pNyhU1oh5O}!C`XxuMj2DKu2^5ozcDMiXNizI+mRQT&PYUxrOy%d|4gD#p*Ct`Xl(fnnJmc`=7%~-<|w; zn7bUfO{(jz+Q3ILFw%LiVSsNt~{R8~c>)=PUwo_|o9Kkrljepp-k_Bf)MG>=Y+Ti!LVgH(@UsyChL%_x^Kj<+hE z?wWXOM>^uhxjoRTf7FA~DCN3L`6Yag#?zV#{)obVo%kcfKS(w0`533Of&I{YTk2VF z?nk#qXdiPQ)vP{FzS#e9^4~+gIR^G0fEFbmHS*DnBi3e~VTyzOd;WBqXE%nUfEl|7 zsVMsig-2*@zN%f-gJ{lY|M2iLk=XvR7q>@t#dpT(?ui#)U$8UNB<+HbN4+oGdd)`M z%-9*kr;A0z3)WmVH@nCm^YOe{KzzZprb~12%yjn2onk*k7aD@4jR*H(Fn3u#q4}$t|)?O_7yF=luy%uoSDtdDN3(9y*N92TUAbF%)VhE zKC`&6VC8K5`*uIjxbM4MoK*Dgp#j6S3*N~Oh^_SNbnQ5@t$J7Uaawj1Ae~IF0l{1=J5>#{CsDn z`1-NNH{|jqT)X#(uTL5maDNllwdHTOCphDx-qFNEpi=8FwqVN5OIi8LwAxNWmKvyiviM6x^%eeg$_xZox*S z%Xo9sBj>b_;(y48*WpPYUXT4g9Ky>k9&F$ZFkQ?w)JO5ZinYekmL<#_Z!7qOf=?^> zyn?SN_QW&lK`@d~^_ODZ50ZO1x)N68(|x}RAi%Lnfa1M*R{o> znp$jIn$W*v*m-fk_veE-tgANi4H8C{C6Si~ExKZv}+EC>@!h zN9ev_NiW%Jn$X{5xsC1&Iu}BZ(s>>f;}b0DQ8daj);dq_3O&}^&-YDeyU1r~Ypb5` Ii_jCmKXRw5$p8QV diff --git a/release/src/router/openssl/crypto/rsa/rsa_depr.o b/release/src/router/openssl/crypto/rsa/rsa_depr.o deleted file mode 100644 index 54c39534a86716ec7b0c33223fa125b3e5cdebcc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 1604 zcwUWE-%Aux6#iz`T~}9aG7ur784z~^85UEhkeIa62NCH9^bjn&?zk#{qMLZFX5 z1mj~u4-!GWjoA-;Nbx=-n}?1BY|JbH8)XneWcb>aCgEilQJi z1xXwuU|a>-HO!3)ltB+tknI4g+c?!$*AAP_W{9TAFOXjpXkZ+8l{WS_Vmr;<^i6#A zEPVFH@yWY_kKQOgcv)gD_(EX`O0652Uc!9+GeSe%oAD)_pt_ECfo=Y+Q)q6DTMp++8dym zbehe`?5T!ssYX^8_5FC8P6YMLCv`MFvzz;BmU=W7<=TUpM1MYG9pV{S4bC&4bZ|)r zmvnGR2bXkkNe7p7a7hO@iT&6#cGH-eoV=!Ire^P7(nrk^lkUfCtW=zQfud9QvpMJU0CA9qFF1}VOENE;YrEN7s{7M{4^JtckbTEmF%ir&pUSR zvAqIweyLKitIpr9`xHA5h<7RxU@Nk(1YW;>S_vh#$j|V))*U@_3GFmO%n?tKE%(JAzuBo4=zsCec{>P`f{P!|Nm;8)l5AcTL8Q?od8uUjH4>^)Be*hSmzKH+; diff --git a/release/src/router/openssl/crypto/rsa/rsa_eay.o b/release/src/router/openssl/crypto/rsa/rsa_eay.o deleted file mode 100644 index addf8fdd658cd224b683501361f5e56121421f9b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 13772 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 UM{ZDeGpkR1$KZNtld6~h1y4jU@Bjb+ diff --git a/release/src/router/openssl/crypto/rsa/rsa_err.o b/release/src/router/openssl/crypto/rsa/rsa_err.o deleted file mode 100644 index de82de109b3bca1acb72b903d0af217189702b27..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 996 zcwU85%}T>S5T10aZT*4TlOSR}SwR-5?LiNsl-f%XsR-Ue(!^M3+LA=5C;JROi4WkT zc<>c`0-Z@Wbas*UgURIE{bpzL?dGlBy|F9{GFVWA1p~+Pu^q~i|G>hl8G?)B{9*zxS%{k4rt4MqW$_Qzr9kCLUk)v*VVdb6(h zl`&sd`B3S^3f&Qq536-2koKJ9m~NNp@`|4WXlM6`Q8jdgCPs;ke~I}%HZj(ej`$_$ z>rFvNHrEB+7t$4(F6$d8-KpX;j0)3PDt2Ju3E>@MV(7A*c|zF2q7TX#bW5o(c}U;N z*ZUN@FZ>%hwEqBpe)*g*s)V)^;=CjAg2A~%#Ph%*(v#r4l%5ZPDl7DiV#oHQNcQ31 JD^AFv5q~8wM1lYS diff --git a/release/src/router/openssl/crypto/rsa/rsa_gen.o b/release/src/router/openssl/crypto/rsa/rsa_gen.o deleted file mode 100644 index ffc2eee70a63a2e6dc63d6e811916eef4a0a3d6d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 3700 zcwUuOUu;ul6#wI3#pox%g?BItwiz>E6A!;C(tPii#5gjmnH-*?;FEA!8n+??-s z&iT$c-|zc(Pwd+FsK?`h-8}H4j(~t4Xbzyi+d^TiKntAhHmbj3$yQysU9DDabc(+F z>0581;CA4(PJQvLnyFstEaDUMBtAB0aM3K_Bl9>uG^a3c=JA1WtW}(k5zz1!OerXZQZfPnY|MR2H(U3q>CW6i_f8BWGQI~&$EWKR=K_YqMevx?pmQ#_7wZRoJZ>Cpumv#2O&3jG0L_hPt2YZvk( z*=B83BuhYV(ThF{w-Ro)d_`RzeBJRA#G2oz!iu3%JiF%aq)jh~`Drx2A)GJQ<`k;$&M%EFO{Ak$3d|NS8s%sULwQO&uL)`U7HwF6W_I-hP zn=ZBDMOyRTZVhjmA)GVAIB$00EtC9B4fCDtG|x7gryecT^6hoyTSNKUiH88L7VUgH zt$f#t^?aWdLH1UBUgUh;nCtAOoIR9tJLQZ~PKEXhjWhMag0*KtoVRC43DCW)Yqhhf zY5-g}uXcwTgRU9}|E0z~c)N2C)wqvp?57$J$QlQ^#-0Uv#x|9@_#TNa z!sch4#mD8poe$M6Mx5uw`7SuImwf|Jez*2-AjExo&&u?kmFYbz(|cB? z_pD6sS()CmGQDSIde6%Ao|XMrR8QebCwBMsJ*2xQdvaODI+;K5=kUSw{8(?9uygPVn=+$ z7&o$syb*uKI2Jdi5E-6Gr;YJE{ztnHu>KQ#631NjfRwuQQ~$-UlRp1{@auw=Gov{C z+8usgiMIg_|1pE$z1Qf+?IHS>IrP7^iaJQ3N%}E<1dZ{g(AaESKN@*qzd&={&(6CK zjd^cV!YPl)>qkBB(-85Z((fe2TJ0F;k>4uRx#RW<`Q==GwzRq97F!P7Amv@ur>>Qk zx#rrO@d8xXw+`&&!r7d9FMg@Q(NxzcwV@Km&Wwy5#97$y!d^I=YORMJnyY89CP8vTzJ5RpK{>|7e4O7(=Pmy3!ib}*IoEs7oKi19l8L8Aa~bsRkM|uIjE@`7+TC0}kSkef_ej>9PyyLavH>x~a5#>T8D=?r!a48${&`M8nIPGnh`p0sS~ ziBx=a{HT%5Sz%J6N9{_C@s!;?oHY!4uF7&Dn_9%4_mLbU*+Tn#h9w<{(=6#BI49*L zDX&ZErS06Z5(r7TQ_7T-Gg6+D@|u+2vm~;AkeH7F<93#`DPt_@koU7(L-ztp`g1tL z@^0X!^t&Y`|6RAxpI?mSI=bsrp+6+?j4I-tRzYNbjl?lzud zyhzXPXV#x9Jl@#YaJUl{`pWT~`obd#Kla>u|5NlnPyA2Q>lOMf9(|%hUpZWT^bl~R z!+3Dn4=fdfctEu82GbyxmU9c~)b!MNd_u8(YvcWnQT(DjjJxGQ+$kT$JLNw7w4B84 z@*&(R_uytZg7@h8?(zxfO~z^gQCwV(V9AW)ylJApUB?A8hF97ku9pMwzoDaVC4fC|(3};rUopbH2;ls3rzO9(?86b$mR(p5;FrrrxF5^| z-!ASZAHe0Jp)aAJ2S|3!YpsfVqUui^uV=e`;x6}x;1ne&bP*1jX zD;hM@(8she>DfmiQE&O+xr|i^YcOQSV66saCXsz;IPQKWj1{jDO^!>a8Gyx-xi`DK#p{)CmMr_1kA-F2!v z*R}^&i$-J(M)CvL`MX|jp*k9|0*u5MD0e=Ny`FN)ann32hL{qAj0t?ls)gUDnPI}} zvHbtd^ifS1tAXmG;YiHEquTd82{TH)7@=Ma6E^p=Q7F*Zx4%gI(pf@r3Ox7gt$wxp3Roo^-uKBC zl6!I*wtQ$M*0U}mFm(m%klca~{myXgiOwTAigO<(2^2UEP>wRHH#_2uU)P4y5lDvP6gsyE9IeOBbY z_`W#Z`Qi(UGx_v5(R|LPr=4H}(#-I;e-OJAb|4lZrkps3Gk9PqCv$ zr2X)8JKD4Cb6%6|B9dJ|@CO0UHwk|S6eK}F&;#@|NOm_~u+B)(#z&p7Z3ld%! zF5X|^#d}P6qtZMF@6Yh!U6Jsb;o@mNFWzvVI^O@_#d{}Wf6Fmm3tYSx6udV{u`11T z@V5KBc=x6FTH)d)6ufR~;`J)^?NspoO<jT{mYq zct7%a&#T6*u1>bQBk&TEU9)886HgOdEFQba?&nh7d=iz?g>{;ElP10dH_zPvyjB_S zn>*;mEKQW4JwuiU@XrlM!>`Qpdm>?8_Q?Deg%8pmXv-Y5@|CvW0#_tsUpTzG`OW%xt zDf*C4*0-QlYBAQg3x3tox8i`J?-l&IwcZE@75$jPe@)>pDEz7?o;F-p^zRCu&#Y#u z?ynX79~AyC3javqw@6!v`8L7Z`P_v)g6I2D6Ze<IGWh z$RhP7Eld^^lZq>~7s{1O7i?jY&SdOWDA(-%p@CyV{i(^R*{Oxo*t}|sS^Rr50$SCP z!DB;x$A$(fjYK*m(PqR-x>-E@YVSx_iawmO=|w1abx)d|_$a)*^IOKGxw4p9F`p6T z-0`JfzU~z0Wv~P7#M{ca-fuQ7Mm!`KFlPE#~Ki{RO6~d$3NWZ4H|wDcG@OELzmeLtde}if2Oc^VfhklSX$} z{n|U2%;HOD8Xr3u?03@m(9!X}Gmg)lDeWzc)*g)KT^Kuu7{P*OylheaZd=1%Cysc! zj)Am|M0)5*R}B(Dd2RYHv|dk3GjAe0sCcoAA2alv;_d6NU}PTnv8=9mF%1f7X_J;V zX=#&|Hfd=m(N*VgFe&T)M!I#<9q3GuHm=K>Hb_&AHIWY1Ii>yZv~yh6&b+4)?Fq^u z9i;6LzP7HnAA^#nex8;LYgt)Zn%6Tcx9?ukXU!RtW@t9IY`0J(?>2nD9(=jh6BlN= z;1*yOn@yMvt5U5!tng5@Ko0H77JBxXzP%c+%m3(R4DsALz z^_q1Ift(1J>b7mwT>Q741H8ML5O^UH*Mv6&Pd$N0!=l@MGH)7QPe+k>;}S0}@Kqr6 zcJ3iuGcNoUT0_#loA7&`rZpgVtm`_$^>z@pAeKY;T$uMs;st$I5$?O4@ZTKwO`_lT zF~aq71YSsaK|LGcdheuq!|2!JT&|ZDyzd0Yq`a6|XV9Mo+fUkj9pME&m<3y$4o#!Y z6n&4t@5|@O+T?m?N#A`5%V#T_ydTG}9wbvES!zfLW4R;a!3a)9@NfjjA)D&m2pNyk zpKmZ#!Rc^5tsN!SdQ#-r02X zR-;jGz_#qB<+3X|TlnX*7pBmlboSzr4UGD8ON{z&W`usA*V)r$YOzoK&C>;MLBwwe F{0A5Q&sP8d diff --git a/release/src/router/openssl/crypto/rsa/rsa_null.o b/release/src/router/openssl/crypto/rsa/rsa_null.o deleted file mode 100644 index 8436f5de8131ebf028837dae9641d0ea41af43f0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 3032 zcwW6#%}Z2K6#u<9qmGWqBuY9OjWD2sJ<1F$A}le5M8pc*jq~x;f%)RiGqO!0eJz4% z(Z*=uGTI0Qt&|M<7mC`sY+2C4MKIm-?t8v_Z!>5l9k|?g?)kmnIrrRi@3}uQeO=Qu zc%mT$Ujv4MKvM*>BaSwJ9&|yJpTHaZg`8sJ^zqr(_N&#Zrwsg8d+%l7Wq;q^MgUl^ zgs{ivYjK)2=m)ci`%>NMkKz4R7q+*6jYKiVv#;_Mk!;#$Y;#d%94>xWzP@uW%|irVI~SJ z-bCKCmx~!FtJy-158Z%1M8lFw(_*-YnRMoq-@dfb)hly84)6kGON6iwhirW5vc^ zrNePUaD0|@0VlpzL07*BNN?Oc8+!_lY(oB-4=n#=>lX`whYOy9k+YR^#iQczpL1+? zLal1T?A;-f40E!}7Ng+4$uH%RViWn|?0$R@bmbbCO&Z&LKo zLCz^xnv*Hf-s0?ogmR}dUABjvKJVMZioNyVtfm~hc*10FbMCosZ&U0MWF@=zdU^JC ztV?$BB+1^P=<5E05GCNeRHA+oFWhgc;dZvm*MgmD{SUcFvd zx5L%#YxTOB+L04Wr9>uME@5JBj$!SDX<0?f+l$`K-%&lpdxOr7et~9ogljajquQjI zZF-kxH}wrsUh|DnexI9J%IOpuJO8v(PQyLNyRLWeb&AKS$yOc*#YyKwarc7nD+a!= E-_metYXATM diff --git a/release/src/router/openssl/crypto/rsa/rsa_oaep.o b/release/src/router/openssl/crypto/rsa/rsa_oaep.o deleted file mode 100644 index 805546c7bac7055f9ccf6271722dad4faf4aac3c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 4612 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 aJbNQvp2I3GOXX2fd3>e#TZ&Jpc>V|AEFxV1 diff --git a/release/src/router/openssl/crypto/rsa/rsa_pk1.o b/release/src/router/openssl/crypto/rsa/rsa_pk1.o deleted file mode 100644 index 8c23255fbc9a9edb66831bea62d21bc07b0588f6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 3148 zcwVhmL1-IS5PiFnEX8u1wW}0E+FHU}TQy;k92eYTij14sP!o(pp@+g+vJ}O&Wp5-I zY6w)69CDM|lMSU9(|`{FrAdwrDK#l6^w@)shFo(T*IPgP*E>W5#wj)1y^4wV)Z1zU9qk0}RAEW!NSwE$9zgxjiw-_>Dd7k`_n2uFh0 zjfC)9+{tsDczOj-kn&73_zP_awQrU{d zQ*t9G3i%vTeVlii^KP;B^7kR|`P-~=oN*G>=@GaC6AEJ_D1#D`gTu;*{L-}We3&Kp z2V?Py#h;jO=)muv-lIajvL;|lJy)scD)n5Yo|_ttwa_R*8Xc)mP3W`X)@QkeK5sYm zxvLITg0iL0cPj7E*2kp0STriT-sP=?Z1otW9#!gbUc^()9%-NLdzzY@{5Tq)y8QVE z(NS$gqkB**tryDa4B2wgve)dVa_;Lgv~0SZhL$OnpcQlZ#g(h8{IIMU*&?(;HkVn; zYw675g%N9+leD=j6S|SkW*1lT`ogu`!jeAw+2oa^US2nH`iX(bHb62b;q$u~cu zBWJt?-x}O}55kr<%-4xSzHPYq;v~4*g6~JT`CbtpU;WJ2g+snS;O3j5z+a9$o9{8) zd}^2VKY;nVame=!7GFZ(q5%tI4@pe^cVeFv9wUT%?ZMgBJ}W$?X%q9b_!d3Wo!Y3& zXN&jd1XgC0NR@jE?!m&fn+__+7Z^!B@pIpOIeL?;TGZ#Zp=~ zmXg{6j=3uJyrE|oO9n2^&FRKkSMgT93v3A7zoIPSRsaA1 diff --git a/release/src/router/openssl/crypto/rsa/rsa_pmeth.o b/release/src/router/openssl/crypto/rsa/rsa_pmeth.o deleted file mode 100644 index 17254290fa00eb33972b7adec507f514d9913e25..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 10724 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 Maed_C$#wJp0r{T;6951J diff --git a/release/src/router/openssl/crypto/rsa/rsa_prn.o b/release/src/router/openssl/crypto/rsa/rsa_prn.o deleted file mode 100644 index c0d15537a2c225e6ffadb56b68c0e8743670b0e5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 2012 zcwUWFOHUI~6#hCbv`~anz%&tcCTT*AWKt0mG-|4ZhmmN5k7!~tv~-F!ZE2>1s4=l| z#co(a!h-k*3b#Aa#5PTi}YPS#XjM&58np1MwH{t;E&e9 zNDAMZNqlX}*lP}Bx0%3BGlp+XVAE1I8c^1@(e+0TD(i<(8W{{C6C=B2+f%Y++vE&- zJ$gurydWv*47U@3e>NFhN3o~{_8O%DC^1OH#Ud^iaj}StMO>^1j)Q3&jEKCChAhSQBX z+iw(h&YC3nB?P~agKq+!`}YFgm?3ApL0^}ke--Ardg<$M{1~sh@W$JKS6o{b-o7xu zeZkMoI|pyxa+u$1mN$ZS-U7VwvIKq#>)dz?@W$H;^LkmlZnWdAg2zice&f{0xUeqZ zeEn$e1(Rv=Yxw-!(cKFsv(&U2Df?(11<%X+$+(H}_NkyR0v3BKil`6aR||p!eXD{V zCJc)i84mk!#D}|mI0R9G_K6U2k6j}Zw#RXbHze3u4=)Lr_2H@y-|^w6KAd;vY|rDw zZ`o)6;KQGNc-@CLeHcbPM-M?&T}1nt(3Waip;WJ7>UmbnKAd`~RrS?2sO#o6jlA0$ z{*ut|+nlMl)kQzr})SD{fG|mw;?*{_z&?r8>M_ZY&;MA E1%_h#Q~&?~ diff --git a/release/src/router/openssl/crypto/rsa/rsa_pss.o b/release/src/router/openssl/crypto/rsa/rsa_pss.o deleted file mode 100644 index ab23fb023a1aafca6c3ef0db7a772c75a2659ed4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 4804 zcwUuPU1%KF75?__>d$iVXrsDns?x0 zusVY4)tB&o^(5Y_4&%?&L0qjK!@JdA;GOCKu2hp)t9D?$3S6+x;JT$R&OwjWps&(z zxdMG{11)!A;aRL%dN~QwwZb?Q*>?N7cni?$#EMvPGjMvzvZTA~Z=uhyz9*YT<_2E)guOvZ~>?GS+4;Z;*+e_Uc z6ubGp2*gf-{_ZaAb+L`?-?Ik|T^q!1?VM-~_%KaAM5Pa5;D^A1^?i=v8t3i;*}iP( zF*tXBNxJ&ABw9D`ycA$`m9k;Id>=6_YwC@UsCLnx$4r&qDvcso){DN>>K3}`unIhkJ58R zk9`EauSR#@Cs0>`G=l=wY_s}eOgUR3 z9F_@(zb70n5)S7HhjWC(S;FBN1&1rROcy^ z|3EUbZS5=J;;~=ik!imVkLM*Gf9&D0Tv6~CdCjxWnDp?_glDNM=AAl3I=Tecf%Ujf z-0!OG1+v|-iL=;FMnwoq-L^eIwYt=;Q*RJH!9MBQlJ9JeaV5{%cB;G%j$uqw@yB|< zQ}Fi&>AQV*9v*INngc4HIbMBvYdoLd0?)H5o^O|hMs?#j8Pj@VBkbx{M2>Rq^cdlw zfzR-8#(3Gb&&l3CSJ|ztLGM@)A?HO0Wtw%dDCd%Uocp^=dltU_j`3V=pj@S? zHmPzW<$1TZKzS6#cA1Yxx{v+;%CR|b*!H}k=JHjFDJgT=f@EU|e;_=y(Oew5uNMwT zJ$FvM)59}^;@zAF`?j1*$<4X+gfcIvf35o23I*uOn$YH8vn$b7x83_2(W#v6!&(o^ zIM3eQ?dr^jeirLJdi=Q` z#rDVd#_1a+UObyCjgAp56*{)P4`~O6lO9M&G<|%mzgf%TdW@d&bMBp;2Lub;zj?-Tf!Cp#ve z_bPhZ6}^a*oABrFGd}ADkGg-qhTp$0$UpwHYM1+-e~a+jOOW88a?Z0i55K*YHaA~v zuN8HBZ^LhIiUiG`5!CIi!f$V#?A?ZI?>ng5`v`t}rDlJPJ$tv{xA%6m?%xj7?R^f{ zp4SIgo85hHdG@}RdI`y|lTuXC3&|h34JG~fJL!d$f`=69-N|c!g5)pn@4~gg_j0dt z4640(a{lNR_JT{@kKo@nlobw~3i~`^UcHg|rU0*Ii1`+$=Db)Eaw1UWtx#9ksi?~D z2=Hyb+~U6blm>G6h5#SM_vABUAxi!oP~`00Qwq;{emcOv5a2TbemcO<2KZM4{F?#( ztpNX*0ROiDUkmV`2l)TWXU1xj^4%s&%vg(3zMoJ^&iZ>LpLFzhsDD=FG&hc=68MJq zj5(P%)7fGkho2ubpBXTV*;g_+JTzqHPnXP0p)gZG|8aBrbj}>hmWqxwM zc{f*aG>ej3E5unVp-JO@MGz4xkrLS}Pcy#s;GNq9RG-)m2^eYb>YTclW~12 q+_*mzZrpd}erMRFePK85lT05cdtukks*HO*?B?U9q+8~J>ia*()IR_K diff --git a/release/src/router/openssl/crypto/rsa/rsa_saos.o b/release/src/router/openssl/crypto/rsa/rsa_saos.o deleted file mode 100644 index 06df9880c7b18fc681bca0f9efc8386ee7598813..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 2820 zcwUWG-%lJ>7(F|?6zI}+OHol#XOgkI8k}qq6%DaNR|+Ns$g)i^k_^l40GsTxo81M$ z7m2aP2a@T750LP%Aw_vGSxRf7NgMei`Umh}OyiS2nDoK8es|`MduO`T-sI++?|wh- znRD*k%on2**8_n7+z~(rnjUa31hhvmJ!pF|T*P^Z<8NF&!l~ox=Ho`A;dVvpjkK?G`k301k4(q+R zU!TLF1?*U}IIzg7pP(Jrx+%}j2_dAeqfPw`XVeQoB!XHUxM|0L zeN~ZliPf!BT=_;v7Pl>0qPXPtRN}Jq zF7#fvpG@zd#B~s68>@`{sIsZ!E$9&^=lWI$9`-occB~GJZrOe0n)K>_IbK}LK3vZU zxRe;jA&POmE#jK?KM9WGK{S9%YO@y7qXuj&zct*w zn))4(e$%Ai1nD7?HQ#QuPZWf7h@-Iubw9?_Fe}k zaB(a0rt>bhh(FTluf{d?%}A28Zt}u7StCwLr)V93dYSdO!L;6Nt@T<9t!2jPEzT+7 zWV$)}?XmZ<^>=#E86fSIc#X~h#~Y*b(5oW|y^rOFc&}ybQC&CHC4O+u(Ce37e!W_O zYo$xXt3|w8#H&TTTEr`9cZaldw3;QYFqTMsAjifgZ@eK7Y6BX5*IH$xP)#q8t(G0T z>^@b^^(wS%x|)WzP^myGn@hQs#UgviYo%-%S|MvLtS)Kkh1}Z%v|MD#tkV^0ZD+9_ zT5@K@SToDH#SLR*X7Y+Ll}L@IjG0vOKFG{oH8S?sJ?^%+Byj~$M#QpaH&s{qUZ_g07@6hZN*1OI+d(jz28_#37 zK7_a5HoU`)P4MRdA+Jlw3-P!CFMqdb9t#_|_&$XfUmxMygoCdWO?+R&+b>H5ZMEq4 zCA|H1&$92q=@&+`-}i9(#d+QzBuuwZ7vS?Enwqg8QG-KYo@-sr*qCdlynw^?IXL^W zXNFDe*F_8e2)?L+IK=f3{%k-PL0?tSgM|6wj?8cO`5iuAWRUq`kH&Z+KLl|E?UNK3;1GyG$3uYlxC}C=PbaG~9!pP*!^h(8ayDgSY6Lyi4?kqgz+RP1PTddk> z%DJ_4)ilf%2aYo&I_NU9{K9HG@0|NHWZ6Gp_=0m!g^4g$6DHwHWIO4&t+PC`-}3l< zX6b|cmDx+gall#cVV3@4`njKCmVQi@nSGw_8D?L2a)0)nhhGHdIgYRRJ~fVGm*cq2 WaUApbBVHF`eP5z;$@fd~{r&}Tq@+#& diff --git a/release/src/router/openssl/crypto/rsa/rsa_sign.o b/release/src/router/openssl/crypto/rsa/rsa_sign.o deleted file mode 100644 index 2cf5725e7009d4cc1cf6e9ed7fc76c73c176936d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 4696 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 diff --git a/release/src/router/openssl/crypto/rsa/rsa_x931.o b/release/src/router/openssl/crypto/rsa/rsa_x931.o deleted file mode 100644 index 116359bbf274fb833efa26ec44ff6120751d814f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 2188 zcwUuN&2JM|5dZD2V{ha@HjxXF+JYAr;#SehB>{!1MJ^HLP=rvbO57H&?K&>lv1}uO zR0*qa=*MAms460HNP&JFDjDbn@gb0^wjA;Y^q5ocJv9g5F|!}Z+ogyy%4*)c`OWXm z%zK_(ICAVmMNtrm0v($cu&MzW11DyDtAH_Vg)EPi(OY;0d6T}K8ls>qPwOFCUsW&8?k8Ia)lvZ?TbRQEvURL!rm;c{ zZ@dRwnKajywZFvuNed4KdE6LG;ND;sKYJNuUIUgr;J2mkglh>LE~+>@l}0Idn$Auk zW%Y^gE2J%p_zkQKw!_US_}zLUGJAB|GmD({wIv;{q2LGWE;vs&$Gi&uu--QQ#J{4H zyF>dL9vZx#p}5`szY+0&P5dJv|5IV?F^wCB2?Zp4I;n;k81X~Ck5P}lzZ}sdQzmGOySo-0k;MgZf^8vci|^I6*nz& zX$|H?A6b}b^YTN;d0e18T8TXJeja>3`E3d=S)Wk~X1@|@R+ z;zyt7E^(U1n4iB8C#*Yy@#<9t#$Lvmg;T1ThZ@vbQdh}uPK^8bh?i>es3wnU@~Ebb z`e(WRqjPib<_kxUfAUs-#@=Vso432?o4vA2y4MNxLbU4D&h=nd%e^vex7&r?snr{; zPZxP{#%@rYnX;cIBhO1q!RvWFlQ(350 zPW!+Y07!-I%3`xwYxVH|<#oXSji*Dql<*s&Hbb2D5*$4oni?<1O~F62txC8F36~1( zgFtKsouuzn0>`qSzF}!Urw8$)^bLhL&g&53e76yo$af6!zA&yN;i7Zv3EVn;Iq851 zS3x|#DLt5Bqv3v(-ZU(qfsgEuYAC zCSmIdTkas+*@T^fESmq4WP6KWGfN5FSKa@g#KLc2ocL!XJoos0$>u(Nl(6R`!;jDU z?@RWh(=9va=*MnX@Z9`(!PIc-ZKvAkwsB;B-f5rhIkiq_v4dun%Z@>R7Npv^BWzG-(>X$kOBcJk;NY`VnhNd^NO_aU~f~5A$A#e+F5H97zBG diff --git a/release/src/router/openssl/crypto/sha/sha1-mips.o b/release/src/router/openssl/crypto/sha/sha1-mips.o deleted file mode 100644 index bf864f50db6044cbb093e509c41f07d465cc727f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 7424 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 W*_pdIU2KKhgfp{oD(Wk@bhy8VA(6uX diff --git a/release/src/router/openssl/crypto/sha/sha1dgst.o b/release/src/router/openssl/crypto/sha/sha1dgst.o deleted file mode 100644 index 024cb3f13057c699df9f8a0ce2cc26e46db96b68..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 3008 zcwUWGO>7%g5dQZ0C(aM)+D(xq4B1VL<3hBuO^{j?RmN$X0s&ejDFq@WcI+k=^^a_~ zA}376AxKqRacU(F)`}a*fx-b06%icZ08+)N2Mz^^Gazy3p(4z9cjMhnt1{Bldo$m> zZ)V@TH}*Rx=1xkI1WP0Y(9?h)eL$a#(^Fk7jzb8+F84g6H}F7_n)h~hcP&k!@i>jq zJ-p9>$M@m;#fgtP_9q;8WE%KzLcMd{b7%MFLn)Xnt-v4czpHrE zW)r`BFQ)(cEi*-UONQv2SQFFIc!oY(bbkI*OuzqeX39(Judj*ee}BzP1!$d;#q_0x z%+wIAiN8hsEeRqTz#Wf*n-lgNZc`3X%0a=6?Fc^G%Vi1rl?ZM`CCoE|$^zmB;61`g}@ zi)-YQ7E4e%9E&l|9Tbak@dU+)(s)YHUGwS!KAj@!fJgUIPJD(UMwUq$DG$8l<0BtG z{CXex1jxsZ2MF&ce1Pyl!iQY=5aEvyK1}!l!etkJuxs<`LGlTa57ntfb!t(ax;5o` z#$EN~Zw$crX1o0s)p?TY9LE>iQGC9y-sRrgdJH;w=sgtS9ZdFs7G>mTK=8B zH7#@1!ep0_iPHQ@7@4iiXb?*{zNN}Dgk?G-nC-;Sl+`w*G{!U^?TcVOrpi%~MrJaM z^oVh18y9NXa{YXzR&oQ2RSI4pYlV|AY?lhP zda+W5wpuBb3grg=uRI2H`@7%N(=J>#XVvucJj9P41--wA`%yFFm{no(3)}p>rhXJ~ z{QjJy(RBH-JWHeBX1_aN{JtEd;WPa>uVZlX-G);v>@=L`!hY}B{H(ZhaK;S}8hLZv z0D5uraPlpYa?6&8#kT?{UxN6!Z8P5hdVCvj@=@#BcYZ7v;pAJlM-aU`#p0);e&_PD zW-BI(OvzTsNX>6AKfZ(f4R*dJ9quKYZoeaTvD>})dlxqGxORCQnXqn;$ae0M{XU($uonrpseA!0vk z>YH8vVdPx?MRUz}BgmHedN!F~t2eY&^!nxUT6H;JtXEMglG}ByARkmWa4i7HMSoz-V@JXntr!To`_`Vrz8Xa4+*Q3G5`Po diff --git a/release/src/router/openssl/crypto/sha/sha256-mips.o b/release/src/router/openssl/crypto/sha/sha256-mips.o deleted file mode 100644 index 51e27aef2587887e0f0380c0966e466d5b3ebaa8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 8540 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 YUH>@lGEzuO%S@r6bfmsP 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 XgTwuQJ>$16zXKGL@HI{gL1X*@9px=? diff --git a/release/src/router/openssl/crypto/sha/sha_one.o b/release/src/router/openssl/crypto/sha/sha_one.o deleted file mode 100644 index cbca97303b2f9a5d0965d5e594c0b38aec2bba6e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 783 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 diff --git a/release/src/router/openssl/crypto/stack/stack.o b/release/src/router/openssl/crypto/stack/stack.o deleted file mode 100644 index deaf8db6f7259e9797532dd57a2866d19e538600..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 7548 zcwX&TZ){sv7619!asIZvv|jOAw|!2XKmF%9ZMLy44AZRLG`clv3mOv0bsVRSmN>?C zN{fnSy0&B}N;YW%Dh(-gRNIG;bQ2OEU@QVOAylD#s02v;5TpsAfe;7@%7|pndG|iQ z`>vff5ns8IbKg1loZq?U+;i@GCodj3cGTzd!5Ka@!KHw~4M3xb!9JVnK_7adjul_y zJ6OlqPQRW1UzfvIUa3?n4rQ%-z0tGYvu=HV`L42_s9CQa>s!Cy{%Xhi*8f+0um7sP ziA&Q4j+o4ELV3Ok%YGAA<|8PZ(J-(Ta{;0C()1ql4LpFPSxz({KzdR0C@PgRu~xiE z`cF?c65Jm1O}X}Sng^x>cs~XV%rpPrm1M|=8${E37`{s7aLnK>;L<$XV%t&kG}(&u z1Fv^Sm#_JOZ%#)Ob7&^HC~aI|50T7a!ageTuFW>V@>eQ1Vr=K1WTzZ%ka+Om1<5br z&!uTUl3_=evF|N^h2-bLsx3#}k8()FZ<+Xp&1d{JsoPSG;U$XUbp$DfOa&;WWwQZM za{xl;@U(;3CgZ;r-Dr4;I7jE5_^JExLF}iA^i{u>EAMtk@ZMq=Hy2I(ba4aQE0@7? ztw@GwZI*ov;4?#lXNH!#sbR`#w^>g@NV~7Y%pfPj?J}M#^k*+ z9@9|^hKp(0nD?^rJF*cY8y4PKjNt96Ew=L@+k0h>Vo13&#W6ExoZM-kI7Y1`qQ6QS z-aQyI<#0Rpm>tGH?0oI*a`r`bX35Sh*{SZY2ey5UzijjG6^j-b3*ai%%~IHjbvY3P z?}zhI><9OZ@dt$4L%1>W-6HI;^t}%^7Q5NT)RJA}pP(~k8^RvN!}7*s2i*aLGwZ`; zs-dg6Yu8W!pCs8zB@lCB)Q9V{?G!t*Gi#E5fN}!}&M>x#>x&`UM<0IBEpnwX77ZuS zAm!QKF0#ip|B_{ZaoHyAo#Jmc9woZ9SI_!p9Ehr)G*6tz<%c0&*u>yAbN=Ee~9kNSFuvb#QsxBQtU6sgj~B_>%fV5 z&e0~y3*IO1LENFn0^b*UF7ka)FCVM-9={Ch@HtP`5<}osQMa#fE_Zf?AadpFbQaNa zl6*^sI6e_sgW|k8yG$wfBFjy|U>S-xMML-@a+Cc{&Igd8`^JcUTp0=l?7L^v0>_wR z5VU>Af^(N}oiY~NikeoPn!QIXEN?8>XN!FH`b)k}mF*feDJR&+sLTP*l{R$Fhy$9HPJT)+I$m)6O zxzF#m`r-%T^gSFeUKlT>hiEPp#C+CyDrL`?5FbvL(ufZgi-;GpXGU`)6Z|k1&kq+6 zA0N&RO`eIThei(`5DM|)3#nqZl*)|fQzMhPjLRL)j%7<(q3q?Q@}+{8UpzZHQu4C$ z6L}XaH#zPS=h9=7S&wy>7%irX6NOTCSi>itmorkxW@`-A;eIV!m{2&Qxl*=}OOK^S zMsu1C=A^RcYnjBE;HYxQd+7{30;9QNR^QuXu3kJQi)X!@T=uIq42sm)m=^QNe02vW zPknaabE$LLLUD8=hj?aUd_0>gVXb2uVE0);Nhh^+`Ef-xB;@?}k)y(;`|SR5`(WG5 z8;V?5kqb!rF~HLYK2N_Tqe?=4eBojGH7jzrwgNY4=Avnka=fo6;Kd93;Tg`_F?i#` za{B&w3~6!+lDk+(?wlq!PjZ8GAj@+*`xtpuV{Z^Cv%PMyN zs>uZ?NrvmleFU$+zf}AU!S$EHRJ^mR;H|)mcW0aEhZ%1RT)a&h-Yvp=OVM-iHu}7H zE6V=DaPfLHyi!oqk~18T)ad2{^;RDMbE)|M8n$`as7?J#XF(l-E0)= z&T#Oa)9{Wdcste0IarR@r!>2NBe{^zE63xq zW_LOw`hLdW1=sHD8eX8eem;L!!~2nPZk=%P-q!FUtKj`m!@H&6b;HH`g@)HhN_P}J z2k$)%@56|=^BHe9T)f*Fp4n1=e;;UgvF+~u_QJ*cNW<$PyxWSNgZD=buYbF{zx{CW z{w498SI|m}c$YcD!P{U6Ip+@TX{DN0cVtbe@&Z346T_ zU+~Zy@nuO1e6#xQ?6>K5jC<%!aK3Pb{APSZ(!(|#!pm?6XUnW-eG9&$t-m3k-?G=k zSd{ehHoX-;*5rSt(Z7+;5nFx-e(#|z{6W(EF4#op{bx=8WBDxn=|qE1rMs~~(syin zx96S0`W+tmy@*TtwoUKH!%+W5(MK#f}Xmp!b7rC+O|}QfKn1;n89q z)%H&|eX`xFHhQwf^E7u(OZOG~uhY&AocQA4spH~VZRngfZah2ANXHL9lNu^!(}m1g z>eo_GdN-$Ia~m^>S;(fx#wKiUobJr&$z&%c1;?v$)ox7oU}Qa$zW{FwCWf&~d_Nd5 z@g6a#q)+oqrCjEjUiNc5(*Z2;ya!n3nM;|@#-IYTc&1WL@=Ql`n&)29=b2tib3D`4 zw!||vK+8OHA=341JWBdJQv;Rc`4H*z{5a|J{AtqX`3bS#hA#0A33iE^Y>n0OBkSbb zIPqFO-yN+9QOm7~+Vwp1A6iB4U@iYs%%?cL#&cioI=@YtH;cRvZeIU7_kyite&iXj5kFK51-+Qh7B2J8VO42dS&OGYJ$;N%WmTyTu-@&}^eu+0I@y;{6PH(?+ z?{)nAk`}fnIrp7E_uTX6p5MJM&yF0pU(+&`?i<3;fI&AYDAf5RQ@4?@>6lhpR98Q>YPRUtZ8`NY*)L$rT^ z-@UR<@Pb&&&kurs|2q78#kxnLb-opIbfVz}mN}6CS&=j}XXk@d?Y2%Q$#Rk$zhRvv z@gCy$(`-%0y2efX-6#AUFnaY*++Z!fL?L)a_zGtDv9W2omz(C~+8*FDq!OZU0f;5vC@8hSeFSV0{tsAC0nte}n+ z)Ukp(RzhS3hDg-<7CI|J$GbmPus^n9f7JH^VGj%#=Mh^nY&i~cjQHS2fb?ic?1>h# zjA3}Tf4+sBu<$LyxzMAn&@)KCDC1nlTp1gZbP;O^A1q^>*bmd^$2Is7gCFbdPvOVe zDp`vp>x-I(P*clzSnS7$+OwUjyvN|1x!GHrjnH9Vc%JZC=#kL-bZ{53nNv z?AVFg#88_kYGbbMmvfa-dbK8e`3N?t<$}T`KT_jN5;+X$=D{cVpmA^nS=h3eg$c9VGG-hv4zQn zF7$C5YDAQA+JQs-9-z7K8dQqcEL4V?s!MwIr`D;;4;7h50z_>zxg%9nJ zxvqXbNH2(*ZF5?5lAb(u5Or|3>LG^g)tPGZ||{_QKaiAM{?7wU5f)IV)?~%W+p_ zeObo)fcdSA@u<7?epRp6zQ?oAP)l9mscyxRtNmVIgZr7~yl$Nzq1_k5pzHIP-^1$* zKe?7=v8S$cucOaG)Vts~J;1*)(SPfmWvs(JCv^@lb%K`fN0*Re)a0$3;&Z(x8KcW5 z%c)E{KFM}Z6bt!jGe3JgZ5PeLlsT2PbD5G^$eX!r-ZuMk88enE6rRjNYpPI`a_J>i9%1SC}-F z3Tyv=*bwn!Llyf4eSHOWi8RhM*~fZIw6@CszL1#|#6BA7XZbN|jq>^aW6xZoBTK-= zC6;$$Wd6&L2i3lEa5PyaU|iYwHf*rY51|uMI$rs>k}p7xnq7oU-X9`7at-;+OR9Rx z_aN|Kz&Jzy7MODi7%&G6m|SqK>g0Tc^%?W@Em6iX?q63MuL?W^jq|2k#Gzm5XUvxP zSJm?>#vr8?)*t4zszI_B7(cAoh|t}ZxQw%A26*3%80H+loAA7pzzyP_>tS5M%5&SW z_y6Xm)xEBW-o&{YR-2>FT?jqKmA-Qgd8tYC`v%MiC=(J~E-CmlS?XjVV z9H^Zd_D)f=y=AuNiKTAOp=NuL2>*vd+Uul-y_cxj-YAmx@jCW!eQL6ojL2NEy)J6l zdxM(o?FH~w*RcnnY|dXq{*Qs}8Pu@%Ym)YMDZT5VwfSTD3N^2rX`{wsp4aQtyzU2B z(A4C*o2jub|Ko=3)k~kbP43go-plQk?9RSI^?6mR7>3cr;4}A2?>iuJ(-$hG4 z`BfkNu8;nWkG}4s|DxWj!oETO@yUapEyi?boer}8<|bTbd7qEo?W6DW(W5^4kdHp* zqratSuHz=|u+zyZFy;^4<(m(=(||wlqVzCnRI|@MB{~4#{_X_uzYq zho>fTvw{}<^)3;ZU$o1`to_ugTwNp7*Ar_fPSbT_-_iS14~;yO%G)Ohmxi33Uu8`f z3nx;OIeP-E2M_u5y`D7PK(LOm1!ut^@4droxE`temJ_ksClGHgCl*6+CHRxEi$$86 zDQ5HKDU7pV`YtW}=t#NA<5qbW(9vMyJX-P$({Zt=@~9fErAK05E5>IqcHAy|qaz~q zc;r3YfkwZ^WFBG2NM|6Qld|_Ququ(CmT1QOY3E1ARNUr-Kk2^?! zJ?AH;;v7}0c`#`V7-wB6?Htmlgj5MKhkZb;&cB`HyQdj%Rp`t9&B9 zPc^B}*u(mKys$n#XQ}PW$REZI9HehE4Isb9a*QA8GOxja)H5)44C0(-8ciI**lNgg ilJj&x=^aseV@v~_$5{{KN#>)@i#(#v7u0xFjsFFG4QZ4B diff --git a/release/src/router/openssl/crypto/ui/ui_compat.o b/release/src/router/openssl/crypto/ui/ui_compat.o deleted file mode 100644 index c6d638a73b8f8bdd36e1579b3128871e2a18fd55..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 1448 zcwUWE%}V4z5dLB^njQaUJuU3Yj(AW(8d3M43?hgt!mxO7Ku=A^#4#{GVG`NdlaHX_ z#Q`5;AH!$x{%;lFere&UZv*{n7iAlx><4>$+vVkhU$vF;CR=BsUl#vqC0l#)@ikZcJju%55reru#fSS?;8G6su$8Y`<=KYA?^p_Rxzj< zjVW`XCRp@nl z1sO+mUF3Bm==uI)c)lj|d^bwIBJzB$al-2&Q^tLckujA_1VT#w$=%8wIcBegS!SV8r*>jd+3{7U&N{5$7RUHX^gytoniQ)=8cH^VH}}$$ZN-k)!Z@aj2pq3 cnJ^|6RVFS5S}#Ew*ElvNf5Q3tRRcD^`Hk4N-aVWDHObgq)BU_X-bkpJ=tgQNqhhw z#e=Wl6X;B`v6DsG55CNPyWi|=CfV0^_fFF^NTERymI@$`qELp%W~^$k3tOOIp-!yA zA@UemgfBgw=(Jkb)mrDFe^zaZy1+UjeDNaF!Wacfd`?G^Gmk*nW@Lh}!VpB@jNHl4 zr@>fE?Er*lJJxI@Ov`Q5lLXQ3^^CD^+D8B0z@6O52r~!1=Q)#TZ0K~o7l=@a# zFUxo$efk>TDNrBQ`_3V*In6QOKJ(?Jz5>X6yC-B-@ewYOB{u)5C+FBkZb%>L8_4cA zhb+>yE@b;cz9RFbb%)Y-A@u@TVLnZA50*V4ydizXm&UXwgdI$Jr--D#l0SAL zA1IEP=I_Xnxd-t5!`E~rOV6ByG_OdyplIG9(s|&}<1fK=>F?%IW`&+J*KmSB4B)>% JJV6eVegR6#LxlhU diff --git a/release/src/router/openssl/crypto/ui/ui_lib.o b/release/src/router/openssl/crypto/ui/ui_lib.o deleted file mode 100644 index eb11af8b0305355a12650e2a5b941a3d160dd801..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 19808 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 A5C8xG diff --git a/release/src/router/openssl/crypto/ui/ui_openssl.o b/release/src/router/openssl/crypto/ui/ui_openssl.o deleted file mode 100644 index 10e01104a8750d1236ea437b855d8312a1355281..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 7912 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 diff --git a/release/src/router/openssl/crypto/ui/ui_util.o b/release/src/router/openssl/crypto/ui/ui_util.o deleted file mode 100644 index f0766e90d689e0b561938c34fabe295df0f6e8a5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 1960 zcwUWFOKa3n6#gceKI~MztqKJd6BwLPOB}R96|n(dRf-mB#a*0s(&jPX^?7|=5(q)$}1aap=i09;CZz7@xF6Vytob#P??jyN(cI;dxlR+#Q zbYl|%UlgEAV0w3V)Rm=ZEk6F&d?@m&U%|b~Rxy3E95qB=Dr5Z!D?r z{I!CK58g?<^@j1r8^UX^gje1mR=px#dK%t)y0Z@bu>*Z&87kKI=*t^83<%#Bd0@%i z@dcK@AvN)SoU@judbQUi;kj~0FKj#uPeG^Vi(LT$6doy zcNaXdI?fNJ9SAZ~bB(KSs8Vu^!eJEPdR7Pd2Ho4l5Ra*)@190j_7LVdf`w@ZDy z)VE80yVSQ!eY@S*P)D&=koW4-x3xl1eDLyO)zidFs_VU%5zpx0lzdJ+gND_DKCm9- z6nH`PYSgD0_lbe1My@OF0iq+%wXlu2UE+3$JIG%Wl>hwc(?!zQ;&PY#T>% zU)XO@3XJoPA(?lyE3A+6c4IT|4J7$K5^$urm~RG2z6ZpoA>`}9Cf|L8e5J_m3~gk; z6qkucA2!c|X*Cz9=P(u$TEbpx>@_H8EeMq9F zqSQnsjOC1syHdD2g?mys3t80QM##7~=#hobxS#lTOLpGFyo7ll4yEu&3SUfND}}4k z+yUq7!QGS{i#2PpU7Itek^T%=)rM86wHj=w+qYPiD;29&Z!EUsF9EGJnhVo5eQzT3 zO}kl}xg*(Unzo(hj?I_H&t96C7_+A5>~g(jM|CN=@GdIRMeFDd??q>C_zrUPtDIv^ gm-RVox;!hasiDsi{>r-V&v^dd=5pb?%k2Pu0ahynOaK4? diff --git a/release/src/router/openssl/crypto/uid.o b/release/src/router/openssl/crypto/uid.o deleted file mode 100644 index 01d7520ace29a1a8acd1c67a604262dcabac321b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 1316 zcwUWDU279j5Iy_RcAM0??Nh~wiHK=YF11!r5h;{fA3_Zj!MBifx7!8Nrr8Zt5Zr%| z=Yl_>5b@dKU&#;fMev~y!aB2e*WBGw^}sOq%sqGJ?#$hfTaA~RrXhm{3lj!>ATnd4 zxt_3P%%cnyCbTcO5?b^tj^m6~$!?L|PFUqR@Tp!KpBm%%yk5b#(Got7Y+wYHYop)@((SHjVjLT*xuZHR$boSd9zYo z7i)sPPXzC~VY@><>`Q-;twQ%CgmBtn8=?~g5PjG45BHCF@lN!dK1A1XI|EO&JN~0J z8RkRcb#rTHcel~@Fg`BmjV>~9CRpQ@Gd5<}=sZ_`O1@ie$kVm%HM7}Sqixgc} zw}E`!pR}-;3iZU$;4D%`ja67_szl$WuJR?N8$Y4 zD+T_rz@HR22EHTqaQT;NdA*k72R(QcAWqIry_Zt<480`tO_gQ;r^#2ym*?brFVk>d Mv7eXkxO^S>4V1%qlmGw# diff --git a/release/src/router/openssl/crypto/whrlpool/wp_block.o b/release/src/router/openssl/crypto/whrlpool/wp_block.o deleted file mode 100644 index 9d152cb7e32ba669d9d659379344ce21b2a65294..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 5380 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 J-FjNL{vTDd>*oLf diff --git a/release/src/router/openssl/crypto/whrlpool/wp_dgst.o b/release/src/router/openssl/crypto/whrlpool/wp_dgst.o deleted file mode 100644 index 74026afe044abd0425f034e4d8ed22c13a5a1377..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 3508 zcwUWGU2GIp6#jO0y1V@WrazW7qR!BvU8R{Ur6y<^GeRjpX#_#kx6*Bwvax?@SHQ%C zNrBjhO@8orGc((rnJ&UjCU?%9 zbHDT5^PRafXZQB@ghC;dMhG#KEucLLL?s;Vw5lOQ5K#4s z9G*o)rDrDj%n$@MhUKt~+il*pbF{Xb*6R47(1q^`yYOwH6E_PIKS6wGf&gms2q)ALSGobDHm+yquHjf9-oqZjNEAM%tOAok`l6q@79HnWUXb+L@%C zN!ppDoypqo4`_dnv`>)sD(Nhf&Ra<5xT~|ZN$6588pO3o+H$QRS=P}`=4iLy1M(Y! zz+55G{q$C0yEHC1{U-~GtPB5Gq?Zxtssb7)kI8F`NeR4$ZOTjBZkUvpdi45Qk0t{= zmx!lIJcAq!%;cD36g|m#Ss<=?L{OBJ#0ApeDtQDoN_|SCB-X;P1nR+as*ahwf>e7G z=`K?Y)wI2a`jWZx^#=8-PCB$C7ofsm=*LzrIjK;sgxlEo(si*P3Y(wu;mTf2z#&Z|i>3s`ZoV z;Mcb@7p`}SOBi}H<3G!MXh%v?7bp*v;C@cTZ@CzL&(-0NTp07S!2Dbk3$r2?=4!Dx z8^hw_%vkw5&``Zq~AT#?=JP(&!piZX;^eM z~J3QBJJJ%2afa}K6I$J@4#p#ThXyQlRY+0 z*y)Pi|8ezXM*D{=d2Eu}h_v5}GVXckXBo&)S}XvDSkfM0TF#f=L;A&!LP z^W%we?XYw5A+i=1_r!^={VL%5#=l2bJ`l&_6}qZD&ll^QZ|pO4Rk?A@>vj0?R^T5c z-(mRc!f{=mxKiF;`1Af%=kVsdF_iOW;K%DEW7R{XgqMaNPu$@Ai!fdd%6K2ckC&u^ z&wAIn^EvqO)D2~RbtvP_z>l{?c*P3*K8GK#YlEX5<84G4?-u-cm#Zr4HU~f6M}$X5 zrHv<{jCU9QzS_f`py|C=~((i7LQNqxB!WQ?>0`de zk7wS47q6R&Yj|vL&v}RUxrm1rJR=-f74|V<+nbT?XuysI?3#dG7qB-5YzejQy$N-cq2+iHRj`sC7&$ORmo@qb-0ajio A0ssI2 diff --git a/release/src/router/openssl/crypto/x509/by_dir.o b/release/src/router/openssl/crypto/x509/by_dir.o deleted file mode 100644 index cb332a5812bacb63b03e3a0c4a1ba4220df89c02..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 7232 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 diff --git a/release/src/router/openssl/crypto/x509/by_file.o b/release/src/router/openssl/crypto/x509/by_file.o deleted file mode 100644 index b887909d65eb8fffc94366524fbef796581e2bbd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 5320 zcwX&TO>9(E6h8B2+D@55hjyq13%m!*p?tS$>kG|8RZ+jNt{SIUCf0S~Qf#9I>H225-dhhm#bX8rd2p z*oZAc7tOOoHKv(c;HSv_&Vd?fO;j7oGtHOJwbtBK(r{lxi=%gPZDX#-rCc|N z+6}-j5q?%2!&vA{sx=)f`yyT=jKN|aoOyTRyaVun?Lc4OGkWKN!$)`Md!pS@d|N~d zr>2U@5tPL|m*dV?(LPy(XgXO;LUg21fN0(xo0uNW(nltmOXndvm9|G_#-hoQi6^^x zHw}so?~U!V5(5J-9v!r3OR1_1?lmiw&)i38=ZlUuOCeBvyD{JujhCStImLRcR5737 z-HeGoGTBrz6Fo^3%p{Y|PR`^Yn#xX1+0(_<@+h@O0oc2(R^Ygz4-07sJO3(nSj6}e zT-^?9mwe_l$*xth3kbXq!1Jyg#$QFTqqY}+^-_PSiND+MjK7~6F-W<@k#AXv}={};*+GbOfZKJ5gJG}L%igd;;08N-yC-SxeTA$+d3#!XcQV|}YKj`|r6!!;tCBsf%cz2<6?{U$Z!5T>;A;y0Qo-LScu~Q( z75ta@=J7YcI%&yCZz{M)!MzF|5SaFO6RzKwqAx1=Ed{@$;P({#p@KhE@b?P-QNbW? z$!H2Z_obQWi@}nM+#1VS>4`!PmRz07TutrT5N3J zP=b@Zd}Ls#-%6$#6Z8)aSvlLDv@*#;(X#XTY@YR{GIlaA;oOX)b=a)Yylq3ed*U8H zIb$I(&2q1erC~jPba+WvXwLh*9*BLVSBXe~>xCH}I=p}2o#uCu5BW&?W@FPDserg#I=2exXhK~qW_tN zFyCpC9X#*#csyrFkMgwe|1L>9TrUIX`A+n=3coRtmjuZjc(0S($$_IS h%i|(1Q4z-zIF4ky@QZ$~3;eZ+mzq}3?*pojzX8*sB2)kX diff --git a/release/src/router/openssl/crypto/x509/x509_att.o b/release/src/router/openssl/crypto/x509/x509_att.o deleted file mode 100644 index 4ed8ae3841160fc9b7cf0711c8002502a9f5a7cb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 9752 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 RHD5>ByNKq?nqQo+{{RW272*H@ diff --git a/release/src/router/openssl/crypto/x509/x509_d2.o b/release/src/router/openssl/crypto/x509/x509_d2.o deleted file mode 100644 index 7fd0cc000685861c78c06782c0f3ecd3fad72755..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 2068 zcwUWF%}W$v82`=8>aHK@C<#VJGqmAG%dnV2M%0p;L6Tw#9)e+ZXI7V1cbOf*C}`>A zLD+67bnwujL$KyKsXw4YhYlY77rJ#2w&$G>_nk@82WFr5`TD)j@0s_VeKR%lP!I$J zA|Qd51tcXPE@N)gwNj9A0lXX`zK2sKUOQ?wn}L;~=L$VnkK;lpo(jc>?gAf%)x&M+ zXLElzjc<(<_8LiiX(-rj4B~4;t?fYFs9^v*vij~j)oj;0{wNZwrg)v%YAOrnQx!$L zhO8X;W$ZLmB}-h}l4=Gb%MlPy3XqbQFmaLP4ItZpA|_$En1tPP0;ZbDiX!2*Fdy7z zIWa({by_5SQwEwN^WUCq$L&iQ@=~ zdSN-N&mjIUHym^8jo^sq#1UPdVv_NrzK?mO7_aGxi91Sa`pLo#WmFr{=v-;lmn)8u zBkkCpUJh1{weCPO4ab0%t5%`e)>3h`P-csgRxxd8E2foOThfeN@z#jvW<}cKSY}** z`fPT7N-vcSlYa7sQ!KAmPtK`Yj&527W3A-q6~kGkw0wDG#aeZ6ez^>|ccAA5Z)trc%5kBy@!XF z3F>H&{al^kKYeJu3np(VZzqx$=-^#2`A9>{kh7Q8UGVm0^JKm8c)y6yC(h<)%M0(1 z;dc|9NRcWj)Csfs9o@Seu@e!yGh)ZUi{zdN-tKlex+1VSCUBjLvl(if&E{}FVlPDO zLd1UMuh~2Ar~deJ=iZ5RcCpP7EsxVb1Nu@$H;dJZmohUu`*>kaFBD4_Ut^f8r2Jwn zoR)X&QpmAvRF?_O#(zI4Q}gqBzGNA;ZrOI(cKa1+SPIj9UjJ>~-uY-J&Hi({=~3PmxNqy{u*TS_@#j6utfU>ZXJ6A};Wwq0stTbk`c@T4K? z)x?_#2W}p`dN$lO(SN{%gMR=f9!>PU?$mv=uq~d9FPVAs&G+@&>FnE?r}Mc5MNyy? z3IxGH0PB8$o(L>wnrH$>U zFHfa$dXvQDG>O(t6?v%Z)2SJ)WLR3!*wD8smL|4YE0)c6GTLcPHx0d`=rl$f<%-c! zghrZC+wQ0%Gh0~LtX7Shb#if?5ElWO-&?o9vo1a&@|e*1JLtx-1y7;74$WuQeM}c) zx`4nl0P=Z&?ZBm@n8w!2=8q7hFb`wv5;|JfEs*_U955~?#%ZQoW4eIgHIVnOq8$Gp z6c0dNU;GR|0S?1RVj^8_w{q{Wk-h%A+kokqc@%s$2-+K?g zk0AR!V}4<9{C!HBZrxg?*RRmcnwY<|$@-0KSMd(#=NCrEi4R#{D8V@s(j_Ed`$s!1rIA^SgfK zmsUcUKap^c3kO}8?;znm7Y?~_*oC7mJP2o{nP5{9VVL$P#xR{<35Mg?XBfVM{T#zQ z{C}#Ug}Yq%JX{lFdgcKB-$lmL+Lk504<1W61TQ2UhJ6V~;e&*+@^cQyp$65xyb&Tl2;2bKf_D=MCix zcur8pmrDEO8@2Ua!}fR4jhX7B7t87#;gAR4FZg~BJ}mgK2Okl9#Dk9tKI*{_2p;oq D+*c-G diff --git a/release/src/router/openssl/crypto/x509/x509_err.o b/release/src/router/openssl/crypto/x509/x509_err.o deleted file mode 100644 index e4a4e97080704ff0865bc53ebc41a788a3f919df..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 1000 zcwU85-AV#M6#mw=)PA763L>&@GKfJ;FYF=$F>fS72)vVBcT>StTQ{()e1@K+2k2pX zg`S|!S!Z!(2>sym>^JkBIWuR*_eSg9vMeO9ki|*?X%d+OJXT^=#6EUlU||ld!wK<} zn8mjp4>arbn?kYq@N`+Ih_awMV)hn9j!Q8LmvNAMMgBa3@SMnjaAz}!(C-h&&lCO_ ziK!Pt1fK7{_J!jPugl8>(P+23qlx2nJJnLHOKT0seah`kg1{d~YqzW67>IkbE%lu- ze<0(T^w}GH7vMf@_FW;aIZY|PBgL1Nx&~->*C7@RAEQdlDdT(-ypLVtmh`c{g}&Y# zI+D2-^uDk!tN4<-1L-SCy&&clpCx&SRZkcn#23St#H1&TJxcoINaR<_b-9OpR&~8E z66cCm&!|HCAK>R#owJQBTiXe1wIb_`q16ttPD6zq--N1j@wphBndjd*zh^%TMGybK J@g-8!j6YZFM0)@L diff --git a/release/src/router/openssl/crypto/x509/x509_ext.o b/release/src/router/openssl/crypto/x509/x509_ext.o deleted file mode 100644 index d95ae2e7439f701bf4d7b67677ea15c45e912b66..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 8188 zcwX(8Uu;uV9LK-C-NrU1R5D4$G72eM8S^^2GRLfJvJDUyKvX0?Shls!#*HmoAz+9u zhD1%4%m-t{V8R0rn2IsLue*S|Fo2%yjcsD@I&nOa~`2)mPxien49KwCX<9%ZzZ;7K>wFmwO{(JLBQoxC()w9Qg!10-CM1$2h7Srv=rVGAU317I#x4@g$ z?e7p?uhAD~zS;RJO<{a-HiXM(WlYVSJ6EA+gnedx$P%m0Y%q!|P3AmzzA`uVFLJ~8 zkbA%H{{inmz}wc-(;1C#+xgPEXwpvDVn4GdkBsIA21TEraQoK_SNZJWJnYOsegO91 z~QYDYh&_a#2(K~z#h$H2M-S01B1D?glm>b_P&j+o6>vw_U?MFuQxrA$!tgq zYdV+6@R(A*o<02~{RRGTHt&RF5;-1H!X@b?++^};=P?w`+t2Jx+0Rt~X0jvMeAX|* z?2%Zrmpuo=GbnNYcYCmdN76$RxqNPDV8rx*ON7t|T_Vh9&|O=0lo-#)%ZBoa@EK+2 zv%Muo@$s@zd?NTLLt_UInBI%OlaAp942_MBX2r$5w#NYH3|r;tZsrep{c0~Rc$YY_ zIf#AY?r|+}#vHduT$sdFczP3{ow4_c&;HY#Y%p!2FL{O|V+blzpcTLQ(q0i74E@Soqe(0ShxUI>c!D|BAUz`G5dcZcwn zLGd06=)8Tx(LwSGyqbW{t7uTXdMI8C<9#3;DVpc?amI@f-f}2j593`k@VXc;NqAu> z-m8pPUFrXRUtzp{!dn5wn_|3ZrT_al%6J*Vi$L){VZ4-q_YvbACAQ*UUGZgPF#+x(T@0*MlBfJ(U-YLclRr$~FB;%zB z&xYcC$#^XW-sg<>BH^_{@oq8R_A3ATon^cc!b?E$YJ)m&zhQn=L7jJu@RCrxIO82P z@M4U2g7Dg*csm&HW5fM!WxNZ7*8#;FW4v>Q`Mtq-*9fl@iZ{)8*9^S(81EM0rJ#79 zdAwFH?w2ZezbdqV_jwrVY$e-YBJMmf1W0d@xWDV&J?R;!bwlp2a&DA2{V1^1hsPVW zSKzmKkQQWFL2V{d>xZr&7BOATbS=|$OfO+N1loeyla#ui>E%q*Z<^FAn5J)9>ISBx zOs`=&#&jdoai*J@ZeiMHx)rnqonJoHNv7MGrY9k(JDH{@5veOcThKXiQ@wfNjmamw zOuS!u$MQS<1kv*Cb$QnjC%zWXYq}1@o_2XlFvap`wD=HCYI+$idb-2W_4tP6|L9$( z9RG6stm!cR@U%Pr3M?gGd6~c3)9!c?Y|wNA`T{gR>YTf1eol*DgF~8*;ax4i5vN)H zS6X}=H#OaiKehZ8JVJh=GJm~A<85?ly4BgwRel1KEdPBiK8a5?-HwY|eh03z{GYV= zPRwaqyoJN^53u|vJOpzcDLp)%&g3S?oshk4u2VXS%S!&mBx4E514>gt7Ws>+N4_;9 zX*|@XNnOx#k*P@JL71gTvl5YSVaP*KsS8>YGL=gf>Nh&A$Ypkz3PPq4Wf`Yai_k3ZAZDhaf*TGpIt@Uu$ zK}&2OS7raWI4{axF1}(tu*9|zmHh^hFZ(u;FMF|FOv!$u$d~<-B474m@tl>tEYgVI zr}dP`m%aFTcFX>0kuQ6(m`};R+dV&9;t+CG_C4--)#`=ZBw+Q4eA#ak`Lf^c-dE*X z_qRA?mJFw9QIU8?8{> zbM8HF-hFr8*w92(KlDkXJLjHrfA^eofA`P3WB+k$`yRtEzs zR0FNh4C-?a7OueqJdfaK?f>h)Dt-F%g@pxMu=4eJ&x7gLrtc~Ejd}V7SN}c6gW?-5 zd@E1yj;|(9@9w`XzkS~0)<3mGdpCaf1M44h>GSiqlzyrFET#7?kw5qNM)UM;|MK;P z@r&WqWHH1-R9^~*CVgOi4MhFC&j2%043^K9L9-9tr@aqi`NHG0__4|t)}mO#<6YfKEff{M}XT@O6=83*;)5#7g^M9-d7IazkFB^i}S+XhlT-u^2EM7$<`4?>@)FTx@AV>|h|gn7UrM|{7)k^MONm;<%H_tF0b^gjwW zvbAtMTLag!5xAPQU^W+16I{wtT;Vfm2-n1bxUmB+geb-)xR3#8o?KXHj+oF~OXCqv zPh%gau)Zr&0oSXm(4Qu_R&D1eY*}V4)=_(s$+rr)kPW||Hp5nrDQs$DCh5b1OXS0w zB9{OIIOeCyDSm8&F(xqP-IGNea|!Ay;1bqfoFtu%UnIDFJF^n)s9h8Y2Uu zI6N;zD&bbOA#!>X<7l2)f%uik2iN#m(`NYndB&SFS8`6#e#(I62(@$anbz`|7Ww@5 zTs|!m^OM2+WH3J&%ufdMlfnFCFh3d0PX_ZNa@%9%&mDm6)x_&CE%MrYtVBLnDEt-v zq#f=qW9|w+EHKd?=jyDOCp1rO*2fb4Q( zayvu#)^L81>%$kGn*=Z1QOwTb_W~(`` zCUGeo#r!sc%7b(YS0JS}y>u_xgMQY&CR0Q4<{>U{YZQ?pD+T)src@IVQirie7$@k$0%-O$- zlqfv=p}8zl!D|xj3uI%kE*!-*kk^1ZTm#5%o#4$hkUiPRHZ7B+3#Vm1)+;&igMZ4- z0bxm>dW26DM+L5l6bHp7?E_OK9Frf+DSOS4bNIpx)ze-?v62r?Kf8qwn?mc*XWEPE ztNz7aJJXa|Cw_IF{gmTJUYnA$H<7b9kh9m3v)7QbSCO;cT)m9^>Og+A+m*-4VaM|LvU|O7SFW#1Dc$*QAe4_T`6ZLKTA#iam zLr(fdPS3?~svfV}N}M@MV?a6B<67tHbNqAm!3{hos2_D~{m?P_q$$_=Qt(&V>wCCS zu6MNd=eU;J$H82U9JA|XEN@lq6rh-<_xA553i`R8f&mAFU#6r(Qy8^jn+7y&U(%ay#?d*dIWzq^#Z@$uYP zoEK*xe2bf*F{HS@OPu91mLJMyyg1~Cf!zMU>p)?yX|n25Lh*_8%X0CZ7k$|Hq?7xS z_g?eohO^gT9`EbD=&Q(i*CIJTxk%0pE$1)(FXjB?SD5pc{s%eFeQXigc=)K5( zcQ)nyLb>eMIqxj?uC!P`AxMV^-?@vTaXf@)UU^SL_*CA{yO`G>>ecd-xA&sy}e2KTiH^4>z;t3DUgdl$WD;k%dM#Th3zggv*O6n_T(L$yVy(eg zz2e+Xd^kgVcx{sI7sBVfIKX*FpS^s_kH60pcN-%9WbS^!wsWv0FZ>XhlJ%D&HXd?3 zLOG=RCR`gz(WVG}Rr_=MXyN((J&$}?A|Kwm{9G-@U-GYwxqAz_ThHSMaGLd}BWj)u zSQU}6m^0GfRWr7~#aM@vPt;>_MExU(S1Q)R^XMPURN}|N4}#3p;HMTpQT#OE2bZiF znIqsF1#tazb4Fb!)baB3T*Hk#v>Sa|bk028((bq6+c&uNG1;K5 zo9=Pi_wRr9U`Kp#WH9AXojf*?8W=r3;-TtKjSqQL_q`fVPV~K$==Xv{mBbM zE~t;E#wU`g!s@Y!@v+flqOie0Vk~v6u=>bQ@6n{97Po1mB4hFX;W548{^oDDwsghE z6RGjR#4CyTaBr&rSb^q)11IABBYD0v1ZmaLS-c;YiQbWkyuoA2Qcwj{BZ=dMI~f`seK{Xg>b)?fMnLwD4i94r;eMZo0mN_f0hVK$ zKE!31?R-nv;o?sBUrXBI+Dd(nnTlP7V&`XhJAmtN2fA&gVn+|2aiK)9yG<3?um!|# zL&A>y`W9$-3Kl53c5vr~?4pXD-K<};J5#{!yPDlQ1?+yT+5Os2zq#bwUDNC;i{x*m zy4^o(cDoDM{ikL(RKRYP;kJ9dNaj_yYtZc8D9RsSdZLClZcj)%8n+NQP}Q@G8K;`$rA0fhM2Q&c^!(4Xi~&Y z2@c*W(~WlzUjhz$;H@y-co(LsnqWVaQdCq z@J=qrHOnK`ELv54^AY+;}P6c;-RkZ3YLgNyCe*!W??wHEMWWPvTqv ziMItDyu%va^lI$eV?4SwyrvyEZXogM!NGe~!z=$iZ@dW&?~a1E6&$>uXn1FEkvgWd zv+;hU;k7r({f+P*2M6zOG`vsOc&|g3G`y2d4qvu`gLg;6>-ieMWu={sH>csfq4>8Q z9K3(k@QQH}y{ojd@qVG(;&O@4Grr5z%y}Bck{7vybKo9M`rr1$c zy`{+@`SsoDbI`|38=Y+gLoVV2W zb1a_`{#C;-H2uG^+%DR0B$BxF%Qd-zWjZ63;r!XE>Dx5-qv`)j zli$?jzt!ZoSw1Q7w!q)p_#*!L++X|4w7Wg%~eEiB&^ z@(yTaxmL8_2?v!aN%(`BoMyRF*gpjsP5+mgd_|MN`6D^~g3s&5&b~j2w6{b-y&n?y zvT8-{Mpms9cd^zwTyl(*D`2e= zU;HYyqLtE3JaHl}e(%YrrS1jc%lJKvsg_|WK{l#*%sTn5Wp0so2xb)b7b@|%m8SAB zd{3nkk6Uw8Hpq8nlkZ&3C$K%0c$|t+iN~lOD)IP~rV?L3rm4ht-8m}prDUE;I?m!g zVLpTHsr)v!r}A03znOSAN>jNX+f&&o_fzu)Y)|E35c{S1B8a~rHPPu9mFuxRl^9=| zN<36eQ`s-y3r*a-X&*9=%J_@6$@i4NHhCu#Y%Ea!WP$po{CYai1iw|lK9*nKMfJPz zyg_AizMk&SgS+Lqqhz%_-v+QeLG`Wp&PC-OfRCws8vDWg2HWI)E9rH-GmJOOc<(Tt zpWD?GXh;5+tdVw-pONRm;6Xe$Qu#c}SZ7epZ@{V=|8EofqM6 zH~Y0u@`&tCf*ddMlg8@})?a4*ZI0uY9LHVOf6n?S``yIx#8{^DcJL758gkq&Qu+Ic z$98wv?qfsdQQQk3koU;JKXBrUaC|l&YQAKA7g;~c`a2xoCmi2rtOsR0sNBtdx3S#A z@lA4kS2(^qhTGo{*q+ui;th>o36`I6oE02rEyvlwe25l^Ge-XXq5MBW;RnfG4!`Yw z&$9js)juoOg3nZcOy-N$cQKBu*`ID+HwW3DmvH@If9AQL{|4Ht B2~Ge2 diff --git a/release/src/router/openssl/crypto/x509/x509_obj.o b/release/src/router/openssl/crypto/x509/x509_obj.o deleted file mode 100644 index b5f7a8a560b4f8fb750bdfac251bf51c2a9ceba9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 2912 zcwUWGO>7%g5dOUDIB{H>ZAn{0i`XaJ#8ko9?hh#fY#>qAfB(~)^ zBt2n;AO*?FMo@_s^!a^S=P1=<4#B!0x9hf2%5-F33w3el0C zX6NV4d~e>ovENS~>2kSTsFDi}*pPrrbwIs@-hGA?goGzxr-!2cH~y3Km4~{nSEXfI z&(M07R(FqlVt@Exs=MQ8(zNb+g|fA>wTt3m{buVme5WnpTkR^o(H3!CTfo;^8P~K+ z_)5EgFSYadLYu>q=En_<&6Fwjf+nIYvEmA0gv91}%!{h`fh_VbHW$MhViNhQT+ief zxa}_L0zX-LH{!E*Aq9X~c^MUT3u4V-%(vDdw$<7r@I7w4IcvuG(1-TUQ99i4%dV{~J&=Bj=g3&iit_R_fwpK=kkdy0Y^w`SR53~mgTc0vf4_KDJSm}+jo zP)WqEQAROcWMh7y4P`AzD?rObm}TO?)SR2}h)9RIA5giG6P$csPZ4n~3>9V=xVFpTVMu%YT?~eF_%7k3S4t(*XgM7AEzgk?xsYNWy;C zE+{R1w*IK&x&4ArB>a1%F(e2-^M?f&asj^YMP4%*0t=S~!dEu$vna6QHsRIvS_>67 zR%c!Cv^3!L($hR{T_At zG_BS0B*`w~0&bN>+@=M|jXUJ?ec45v-u7-0LS%;e&8UT(q+0B7{i5?T1nJqYkl)X( ztaw^jrhD9YKetPJq*d{_ZuXhyk@wI$ONTXT#EP;YV&zGGnr42k8L9=XE#S`*6~0fR zyY;~xC{T}fz+?7lJLsNb+s*jKKG^!)d{d-jk}S|{P-!-(G#gZ!4JyqBm1cuVvq7cV zpwetmX*Q@0SQD3Vvo#!v?%lWlz)S51JK~AXWS22+4kZ#V%fUn4$Dfz?g`y#vZ=tbs zqlNx7@j~9@XRBWYWwLq4d}oLV0CqICCb;KSn~i!8}5vgGzdQDAb=G-Ww%# zmOJxE5ejX1@fe}?nU~6Dl#$_#vhI3TnG8k3?U4vV1KH70B~!rT(oVpb*&a)dIqZ_f zndK+`k6$aThR5)0gOM{Q*!=u9Ker_x1ZsX$PSBDaew_Bx^4j!EjV6xGwCXHBF29D_ zc$285s_lsN9kuyYv2$`;_7rOC$6N1I6%;n`okT6ZWx}@z6Q36w_$FY+tJdYd+jtA> zRE_tM};-=UDCWeka8( zn{2PGo$Puy{?cJ1(XmUcLBeHwMlRPoI^+R|JmQe;eaqz!9P%d)`7?+7xkFxb$k!b* zCi(Qqrr!w-U}M|_jwHf(bS|Zaa;d@Lu^i&ZyHZD!M^hPPV*Pt4pPfLW@9o}WJ*hK! zMF9=E%s}oO#@Qrx4I)K(j^ne_`VS(gHdJF z+MO96MY69il^ZXllzcv$U(adeF-X{K^13For#-}v5%)=EjeT@^WzM&n|2cj1Yjlmc zm)`3Q?oXVztB)R~pYv@r%Q&Zo>g0R}aGG-(UM0bdcboI4fKAlKUV1Nn;vVAXiTmgW Td`UF({l+;pRx<(f?E?M<`47ae diff --git a/release/src/router/openssl/crypto/x509/x509_r2x.o b/release/src/router/openssl/crypto/x509/x509_r2x.o deleted file mode 100644 index ff33511e3f8fd243cc89f8464684edb65a8010da..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 2108 zcwUWFL2nyX5dOTj6F1wmOK2eo3cHdaMyj?UBvK27I&Dov(ZiKLLj2m$*VFlk_QF+v3#f(}{!#+loAsGRBD9}b5JD$+Ve>$wO$a~k+; z&f343zBjx(cM?Ag7V+I+9^Vd*9jf(2>c1fNXvl6ZwdD5-0Na-Gkk#yR~k^uGX3_F9JU9QtI6&}kHtpk$% zi%D^ggS4_SkMZjm&$o?nNqnmq?+f#OlLC{v7cpMhfBxxlo zJ$4etaz)0I3eG7w16k71#AG}b^^=8XFhlXjBtQ4;1qt(apHT2?3O=vkw-vmpVELXf z-c|7D3cjP@pA`JFf`3);?+V5?KXz|n+upzf@7`&2oO;vm2v6I6AEipg>2w3f^}H<) z{&lC_ZDILx`6cJ_mCA+kiWBT~+=v+&FO;v8R!SAecLR~5ynLzT)Vpy;GCO{^w&`vJ zPP^K2N7knAcU@01Hd;Zm+a4dFvg{~R-IOTDYiEoZLz!Rxvuzj zZA$2@F7EV%F5ZxSP`punTFgd2B;K8V7}#S?P5Y5GU5;N^(_{N1#(aJC$LXJ#^%1%Y cv0i6=6u8Fv3E)H4PXaes(~r>}>!*N!0N|+{S^xk5 diff --git a/release/src/router/openssl/crypto/x509/x509_req.o b/release/src/router/openssl/crypto/x509/x509_req.o deleted file mode 100644 index 712c509866b23e4b5001e5b842dc33ee19c07cd1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 8772 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 IRA`_659Sy)*Z=?k diff --git a/release/src/router/openssl/crypto/x509/x509_txt.o b/release/src/router/openssl/crypto/x509/x509_txt.o deleted file mode 100644 index 74a8a8880b23a994f43744a7155935676cbd53df..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 6908 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 diff --git a/release/src/router/openssl/crypto/x509/x509_vfy.o b/release/src/router/openssl/crypto/x509/x509_vfy.o deleted file mode 100644 index 49626f336b91c01d537a5f4d8a55dba67fdf0e17..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 29092 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 Mr=FkIcgigPFJBL@hyVZp diff --git a/release/src/router/openssl/crypto/x509/x509_vpm.o b/release/src/router/openssl/crypto/x509/x509_vpm.o deleted file mode 100644 index 1db97703207e4ea36f0bba0b18cc49bf42721b54..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 8920 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 diff --git a/release/src/router/openssl/crypto/x509/x509cset.o b/release/src/router/openssl/crypto/x509/x509cset.o deleted file mode 100644 index 3d412254b90697c2791915c538402496a654a4aa..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 3676 zcwWs{&2Jk;6#seGaoofSn_z-z60nO!OsQ6(A5x1VyMKDpCq8^Zp9dC<8>{#|X zq!JP<)B^`AhFc?5C_)^oru2lWRD7r>{sImhB9IW*a;i{;nYXj+o!P`mTYBI{qnY2l z_kQoq*S`4E%-manKme`;5Qc|Izx6xHp>p{ESc2SD8an@e? z-{^OXtnalRcJ&{d0 zY5YcCZL0QogW1K^Fs>%ap6`#mjwD-09Jl3twP+2NmiS_m*?(#854%fIH&+G0B<0%A z_LJ#u0*bv3ur(x7X@zmN7^jeH+|JcMPx*A#F*`l|Mm#l}z3^)Mq<&my-zB|%rEKO4 ztT$`C|Ii(o#+nJem^bs#3-vnmnsK>QxwJxqWxZOgK`$4LLgTWYFO*Ik=hNh*UpzH= zCby7z@7=dEGr789vQ{hQm$Qv>!Km$LS2I>umhxt4r81K@4Zr2|!kleYVKW!1#eFQ6 z^Y#5KR%&K9&r-eKFlxC|(OBJ=pFT?3h(Wu!{+HK?k1!r22J{wH==w$tl(j3G*`pz-e%f9>lczj>Ommk~6rr_uDeFd3s zTi}bpESN4+nT%CO!=w-#?J~{$zZU zf}hLxH)Ou#Am^es4394nkojW4z4IFn$b3_S-g=|(_@*2_H>X=c9?zA4(}v)^4U(Uj zT}HTr0ik!_21%@sPrLwcU#O?tM7|h1)MI<_`9+)$;(i-~s6H=M%7m~Ok#MgMhkdxu zha)~b=))RBQKg+E9QENKL{aS*FXE9-L<@8-VH_3obS5VROwp%(c+nYKApbtNpV+32 zBb~Rx@gTl&@HHE25dWzrzB@krqYwY=jOjiNv%lYc`uon9^G6X9j*Rr9K8!V1FP2!X z(3h}(EzDi6=8C0y6=%<9U(cOiTsW7V%@rFmzEm@e-8{Zp*{wo$tBZ0qtbf$$D~&RB ztNG=I&s(gGwjz7>oeXJYGq*m9OE9lg4VKl%eDYj&F*BQ4uw6+MjlXjx%4?JI9Pk14 zBm531>}S&^^`rcosEqTy?iu25Gc-iMrGWlnes}txeSCe|(ZBzM`XtTAc+Ko*AC4;Z Vhj-hJ(fru%c{{%s9e?&C>0kaZ4P*cS diff --git a/release/src/router/openssl/crypto/x509/x509name.o b/release/src/router/openssl/crypto/x509/x509name.o deleted file mode 100644 index 86a9f3dcd7da4adc933a678ed08019d6362e82f8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 9332 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 diff --git a/release/src/router/openssl/crypto/x509/x509spki.o b/release/src/router/openssl/crypto/x509/x509spki.o deleted file mode 100644 index 3e64f12e2d3b57cbef4d54a63157aedb93a8c88d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 3012 zcwUWGO>Y}j6g~ckopgxom=p>PVn(tWgQAgfUDToqIdx1yjf#~ts1-eg2py*c-u zciy{q-rSkbbBk~Jd_Fkl!#D;A*bD;UDDr6wC2$lm$o4P7w=vYh?MJ;{&q1f@dWo)= zM~)x1QRADZl4qLr^|HRo-kGz&ceC2TPGG-xXEu$y-6U>z=kRMcfnU1E@Ou~7>1YXH z;y*Q@ZMQ+b4zS%}KQMMeQ!}U{6u07EXGGkNWz;FuoLD=901)H2g3Pqd+37^F+f@*Z z-^5sa-r-Wh%$owD+BQII_*Lx9srieT z%B?ewgTQIrnH{ADT6-5E?9Oohjy6}%(x$wCFGbFKaUX&wIKD!;a6OJtuFjsET)*(- zO2vrw^GRg1gz7}<#ui<>4&p)5dzM&@0UtD=bP3tM0-Yva( zqtYrAX>2v@@tSkjGB;b$ONCYeda>Dr-Z0n7)vGnW+0g5y2J}kFEM8yJ3&rxu6uE0m zW~J9i+G4SWeld4xIXj=v8O!+#?-<3`(}r1Ht(D9tQcC6%DQjlSs9!Ixn>U71ni6HT zR;ifP7Dl(@fYpye0%tsNQEX^}7kCPf9xgqHr}O4uty%X=ykinCDDWA;)h{p8)%Nh% zPSG_X`F}gY=M;FBt}(&meZ2{{-UGPJi7krzl*D^R;sr(AfV+Nwa!gvl+28wc@9#eC z??c%8o4{ayH{sTMNMP(6?V80hW8 zt+y~l?+>{3ev+Ot78BbYtX5%v)qxD~v;v73EVXkA&gO@$H;K3hx@TcN_&RS2wx1RX-9{jTh-xc?K zeqvM)`F-a2LsvWk=~v9|MbeK((Wo_$doOR~EQNCvTz9xv8>ab~wZ!LuzAYPO)tb9t4(66pWzWh(zZRD% zEhE2j?n3SgyD{{eArr~%)W#pN`=|doyEpq^wEK&H#*U9g?RP0eW1L2X4#!y@V>Ume z*u9!D|94Ih{y_LY5&Slf)DZ6RIBoY><>+C3es;?9z}rG^LFg?Cy=y{ei$`iQKMK4r V^bUA@0eCb-pHotf5Ao9v@Bh3ghJgS8 diff --git a/release/src/router/openssl/crypto/x509/x509type.o b/release/src/router/openssl/crypto/x509/x509type.o deleted file mode 100644 index 7d3e22ac565703da016d83550a551c0318155c9b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 1660 zcwUWE&ubGw6#lYFlQhw0twkbM%xWMJ%TjAwS}hXN)Zd_X)}W?G9u-gz@@Dq zgk%(|I7}ELGzj|%w|zE#{i!AeWJhuklVL!Nv;+hRuM!Us4ieIl#bv@dYfjzj)|-17 z$D8)q-}QD(DUpGc23S0fcd0=q7ROuD?d7!7!>og>r;yVV;Sk%Wk7^ zow`yYA-q5~4beZz_6{L)CfZWL$Jsg-lUk&S2!Zr8Nl%mXG)YgB^fbdb@=xI~g@xJK z>xuNjoqLxPIl%fRgAUJl z;-Z6+ljr|OUWz>YA9*9NYSsiUFV5u!96k;7yqRV4geQ;L1bIIa$z`5Zrmu6E3VB+!~C z&qY@|W_#>`(d0=QM_|`wTC?8x{SHWsryS?C;EkUT;9Ccr`8})rJ)JPlS7bco;b9LC zfH%K&V?2*odNONTx`lC(i!;rxaGag{hKDbB_(KoZJsj)wz}TCT3;6q6Q_3}^s5feM zxU3mUZB2cmZQyQpQCU?Vk5%=eH7@DZqSDaIdQr)*lpC18pHp(T=O57AGp)-?bxpJD n3lSUpqV_!o3F(K9D2cGgkS_T%!vXrvNRMa?NIE#jkPh$*_KLhC diff --git a/release/src/router/openssl/crypto/x509/x_all.o b/release/src/router/openssl/crypto/x509/x_all.o deleted file mode 100644 index 8c7745909ca0f1df6680191c7bb3a581fd7ff6c9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 21984 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 diff --git a/release/src/router/openssl/crypto/x509v3/pcy_cache.o b/release/src/router/openssl/crypto/x509v3/pcy_cache.o deleted file mode 100644 index 7ced4d3e7d78f8750507c6878ab7049a9b4431a6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 4364 zcwUuPU2IfE6#n+^Pg`2-QWjXC;x1fiHDpsN#MU(C((-F++msq1F`}xU#)X<_t%X9tFugbzBD4G-th6Jm^j%7b%=MyA0z z0LCoa5>76xa*0qbncm~^-tON1WUSX!gD)wjMKPOjBj128@>_5{Ux&~0n{bWlay4(_ zN(5JV^3MB^SLwdF+Rl!?Y#p z%z1=yBgcI)hM!h)oJo<#N#$#ab+K?|qH!K`ENAx&y^A{4lg@|rv(NHcPRh09jEgx~ zh}O-C{Gzo|9?e=X$*W!}J?PwM%cGI3!LsLr%?9lUgZX;}D8)yS2mnSEzV7#w0R5BSs!jy73*=!kaL7XX4mMXs>f|} ziP~4J|C{y{*OqMF#YI2Tc8 z!EWtb($Aa_vOzv`s6S~hW#@a$?nyrD{7P=Go4a3O6wjWBID7Q72)kNZUW(N2YJ2Uu z$d*`rjP97&$no@OcMs9gVM+V#x6$OWQN$A6quq%0jEo>Qoa{>t9vtGAfmkLnj95C6 z>^a&O>+VUtP%p*o6w3?^r0ioaelRtdh)WdRfTi)?bY?Nvk>qGRHAqPe53wodxS5h( z+k`v`8lQ^fQ;{A|1r;Kmzw;8mcAcM%e= zUfDhLNWDFLO8*tyaUXk74CZ*f4tLzoC~kvC#;rs#?mcLDv{+e(pN)4HZoD6Z^4pK` zmZ6CE01~fG*_{Z8!*G6h)Wbe@kMfuxyFWEMo7z3fqq>~#ViK%`#O1i$)0~?VZ)Pd* zwxiLUJ?9)wxevb=;22)b%j?R7d1plCOEkVzIX0AMg5| z^{+RT+1gTvMXtYiUnZVNjbt!#SV)<^**$PHiT37K1mw28ZJXnJ+PZe^+R+*Bqw8$J z{npaCzoV-?J}}gK*nUrU4-kueTk9IxCr+1NJW-!w^ueQPL6UE|vS*${4)q+WA54in zGDk=HT{hyzWW`WMzIU{@?rGV-r)_7ucU|X4FVK|8jZW1c+7>Ef2~2r+mdiJ)iOAD;LTe zSiWkZod0vnR|DILmeIEDVmZ+S%hv#Jc%-~v$xpF-tvtV(K4d@2`w!L=H9b;(fGH(= zf+-y?#~6p^IYu-<^b*V00e6_vPxO6{oL7jBy7CC!A VcMRvlb>sM4M~=_mDdqG5@(;Rpq00aO diff --git a/release/src/router/openssl/crypto/x509v3/pcy_data.o b/release/src/router/openssl/crypto/x509v3/pcy_data.o deleted file mode 100644 index aff47d633c4f33dc911d0bdc22329478fd0ffd62..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 2160 zcwUWF-)j?D6#g89~dcOU-lrtr3FJnz8Rc#i?h zPZ;_J2C*>?th=Xxl+giHf#Zyy0m(1A$~zd(EF6QCA`TaL?wTPGuQpqf#xe zESjZq?L>~kP4Cjs`r}0HRWXO@H0w2SqwJ;Xo$q9BE?28C7n+Smb*YV?w*7$j&cp?_ zBKef?hNx42P)7$uZ{d&Yj>6m1QKY(kQk^C+-TlxzeGOqwP56^El2ZKRpug8H8Uvz^ z`}!4OzUK&AkSmCJPO2N0>NJtJ5!UY&jiR(c(BBP&``e=aitzhOqTk;t!hD|z+?Un` zd@Bg^WfQ(G%r}HSAAKe~zO1NY!N;U^F)?`J*glZBPR!SO1pdA} z=iX$#X?orl5|+f6#W5jPrdCnb?Fzb{<-xymFT!`Rn5nK~&y_vJZzW#+g|OU~!#{J@TH6RmWb zjz2HX7B1zl|9T5H!%YSd!^Ji{|9?Bt~q@%pc nb>#o#IEnoid%EoJ+3(rOmlp9e?DzWo$qB(vc#bjUD}v`6uww~Q diff --git a/release/src/router/openssl/crypto/x509v3/pcy_lib.o b/release/src/router/openssl/crypto/x509v3/pcy_lib.o deleted file mode 100644 index 0be8abbc9296b72568b99fc7620cffc5c7e80be9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 3036 zcwXgJOHUI~6#nJ`lon;c2dEg^!~{f~G>VBBVvMM;K%)y27bK;R5gS`t`%qcgh>4pf z=n~_C_*i3HxRU5X6MshIKXB*5Sns)W$KJV?sjNN8V zgcbtcnm~_*Ym*#}VF-I6+cdOy*nu5p&yoKouGM}vn@tZzrMQ6_pU4mzM$B@(iAVJa zY8JKkV#6d)ZR6HUbm6?^s;t&A&?WL_{^YmQ>tngp?qQ1WWo)lwij@NXMPVbMX5sNN@@z!EBU1xpjEO(9Nu90>WTcenr znK>IBo4tDDSai}pX|w%pmsj$YWQzGp$@RCrw~F(i0y~qeBw?q@W!NQWDZ6~DKrcDF zm?^=|XPi`Z$xf!Sr%t*F_RZ7rsYJ1m%cfTnm6GEma?U*`mq-_?%a!dYOHL*3@&XyW zA?uU_N!7Ab3Sur7GP2xCAmwf~nakeFI;9Ru$&y1~NAvO*&HaAPql`cnmlRW#F68s1 zx&u1|@O!LV;PXmc945pB&*;D#1?{!Yyb16=i@L-cmUyPXQ-JTDy~&=a)L;sK8gv)5 zY#{>7F~5&JU4lpBItRbr0~tuMdHCmrcPZFmiZ zXR(PKX~Q!#KW}0i-nhb>)7y{ly24x3skZ&iyQ2Bm<8{Qn*J(Za(OQrDirx#Rw;<(t zdSylLbHp7V=?$Qz_gv_CbM}Mj4N7^Mcqqr)qhw(QUP*gFlf1V_$>u`tn(T+GOa0QG zrm@L-V_{&jjhud?U!1)6>p~O+7n>m}Z(+DhUK?SWtDf^cq7FfPI7OudO6;!AaOT|Pc zTP~t}Cvh*Ct2%AiQo&-Zz-^Ep0zQ!+cJDy_ h0Qe!&#iiDD&^?pg2i-M~90K1%pNr8r41bkG1ULBdFhY~o17-YJS3me#zF4VU>olX}`5FaN#;i2Jk!0L$k>1pIc z=iSH{-nU2bUps-xUL5OL2gI8bk`6f8^l}&})vTxR zBT_@ccDZ>Ho4WAXYOtSvu$G+pVtKB@hegXR zEWs)joZRxfmCY4Tj|(*iS#D*qn7?P|v-t(bt~xclly%)=c^+22QYty+8um}e0PlP6 z@o_3-*L`XFev$9^jSy@5@Ee6!(^VzEqmp0L$G-xB_c%*zg#4J!5ckRYUeU(@@d4kD z@oxy`TS1VzwhV&z!hZitf!(?@2-Y3w6~0_o!*1OQM82_Z91T7w#VI}?!S3BL-BN=+ zDw6Ep9g{{wW=MIE&ixQ|`L4M)Io~V|^g_b&UC1QsqxjN+M3GQbB+vT^Vj7a3{retvh$stk}%Jm4B_)3JRQQfL)Z;rc?XOih4AALhD$G$-ldht zp3l{uckM#4>Y{qbE-#l@{FPl?c5prYhh542IbJRng3)uua>4d~8NQm&cGtp zA)udIavaZ4am6`veP(*{rhWBdCNq6)O6Yu2`-MCZ6W>lxOnj@c0rBQy2gRMl4gn8+ pxyte|u*s5!{>qY;F+@9x(Z@ZZ2t2EZJpZu#0eIreRg!%}z&Bhr0+;{* diff --git a/release/src/router/openssl/crypto/x509v3/pcy_node.o b/release/src/router/openssl/crypto/x509v3/pcy_node.o deleted file mode 100644 index c7ffabb1755a03cb6d7e9a338f0c3d07cc199534..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 3848 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 V@c&=W`c21g0dM_Bkt8`y@CWS|EXDu; diff --git a/release/src/router/openssl/crypto/x509v3/v3_akey.o b/release/src/router/openssl/crypto/x509v3/v3_akey.o deleted file mode 100644 index ce6a81ca496658be88fc64fa89deb240d6b08444..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 4080 zcwVhnU2GIp6#jO0S+*>drIcC_bO)ApA!Jiph@hxb+ocd|!BPyUaoDm$yP?}|cDK+f zYGcq4gB>1BfJn?rP!Zi5y<5pDu3c1OXbGBN~PkVt@JFX z=dt^G|I}ScAD8q8tjSE8WNPG4YO(-i3Waei4~(X=)>Bkpu=1JI2)A0c893dl-#O*K zQn}XJjq7Ct-;_7wtMW#CSzeFJo~lmVu9K;DoIoFF`Ne zfPMkc&jC*Y5&b0lK4t6CDXs2q)UU_)YShLK;DuxQltH?;ZATv!dLS8_2cwZ~LI_N^ zU@F3TNB2w13Rkz1d~0Zm)wcbPMwaU;NX zz&jLYaGLFaPlQe*+bz_d^%_YZ#o!}fJ``HKzBt!4kwNX-iqqdB7!9loV8`@gpveb~ z`tF*p$6zDzEb=F=ZQ|M{u5IGlCa!Jb+9s}T;@T#zDW|A^E3UPA@lH~_QHp_cScw}A zddcG&T0iMImP#cUtA`PA@*!Q^fD>Xeqer4z0B2@GxH$6=cr&;(Bju@Zvsb}W0yEEgq@?j2`gil^j+j64TE9(eJxXhR z8Lj7LTF()&p3fZ9kCxCtIk(}{vNQja$GGnhx{pOfEJtjo{z!~@AiGu(8*vq>i4|Hz z}>3Wb5gKZ5z&%Ls&7rkox;S`XYan?{%AUvYXw!dL3?J_SFslAO zMD4hpB{DWj?L2=cQ0wpZ0*8P0SC6W{i*Wq4xpqI1zXqwD&waR^L<4>&yQ_+wC%rkq z|Tqn5a z!gD~YVU+dZ`~P!1rrLdLPhXFYnwpRptB{2Ge=Z{7XCbef5PHDpauv(Puk4I|u`*=5 zK+Jou@EGorF!%eaf-MCX6#TA&-&gR*3cjr1n+pC>!M`f_F9pw&hM4hE1-B^paRoo4 z;64SL3eGC{O$EQF;L|SVab8H{|CyqPyS*p&VYahkwi6=O+ttReb^L1QR|mh=!yL+) z=}aMq!U6MOYGm93ok#n!IVAi0&D?m=wDS3}yg;dR+Cio`_~2{%w6d!irEuOv!uUd!|&J~VYv$UfF<3q&bm_Ni_e^Jt8+IF z(_!50^406|#dqNFYM0M7E`MZy$+f@0_7R82Ajw;59NyE-v79HWysg#D21JJ5|C*b!2W{ujP)6nHz(zqy(LR#$Q;ka~F~z5PX#_LoiC zU#*mGR47YZlKm7Avu!&cEE`(uSqYLPob>Zrl$d*UndA4jk}H*#Uk zgdwbkKNl?Ct<#SMYsqWCs(Jp*gE`Bc3Ci^pLG}h8a0Ui_SAhs|GpCuzu9`N<}XIrf%SszNh`;f zG+yjoKlc;++{|wPY%jO-JB@hEB~$VfIYCY2$az3Hv$sfjuK7_rM@pO2zTU?2=>RD$ z+>gd}5vtw>R1@43)ODeLdVJI-p^m#HjhjO(TQi>m8T$+L7qJgQ{0(qPGTBZ(P#rK%(~%Os~lOMhtqxCYI&=2GqQ|LqMPAN9_yL zalJgtB|2^wl5tH#)q6_7sMJsB{er3&5xqe$y}d~EPH??J?)TnM9|eOK8iN><+Go;u zMoKh8szuII+ae3T$=6!UgU*Y_ChM)|Sj@uY9F|RP&*H~#nagOsGD;*A%Og^}OT#%0 z=QZ38*)nlP$hZ@-Wyp+054uN2yz(-y<1A#$#3x(E`*4hZ)Aj5o@s3D5UEh*~X*5&( zyD#RuFst;>Nb;X`)iK%l0(I%*-x!$C&%rJ7JPTdWY7B7~j&(&P{7KyVG`)wCN#rTTc^y q|2F)=ZTQ0pAKy89*nXRN#+&?ZGJAR41Rtk0NwQ&%XN_LnnXEZV-o*4{R+9c=s?zjXinoZ8;~rQ4U; z#-GpMKL0+);{AiR{kDV2Ul`y z;DemMEd&0Gv*3n|$3HuV{a>ANfDw2OhCRfs5>CwA3mGrKTiI&(<%|cy-h6&}fUpN< za~q*7@C_&r`~jE&*XKT`A18x+vuJmZ|11F25k1v8sqSJ21ipvH@GzY}=rd?u)E-2BEO*%OpJchO z<~z!Wj$}bQqt4&UqMfs7=PcSei+0YUowJp2+Zl%I4M(Hn)A6qWq~as#vB|_&Xq2NZ zk?453X@tJVC!%BHSRUx_fzI9m=+RB(NX`Ba>6dsqe(( zQL2WqRBAe&1g0gT9qrSJ)b!NUWHKF(eH9M227|rxtD!44))!5tkC$o_a_y)~5r33R zd_x&U*~zl)@L^j|pRXepOU6^F9d)rL>rbr**im;7s_eAwV+qvE7>xwbA3rjdO2?D& zm=9;K%mcq`Vio2>{Z#pdoKk11AUHJaAU^7VTD-Pnytct#EgG|ZXj}gkj9ZLX^xakd zi?>1by$k3o-_(5XQyGsQjAj4X45;xyF;!KU5dBMkhAc;*eNaSq8(G2jP6yP~uXJacalU zslSlzs=P}zbWgc$_{6Ut(K-zP1E;c=2Ty4X774uL=${iNDVx=NG@ux9QHiyRyP@XJT#H)TQw=cKZFnm^HX8D?Sb z{va4apH_}P$vNJi2^y?3IM2G^wS&g9`ckg7^g#9}Uu!JkPk)H>zF(QQRsZKeaun-{ z*D7qY)|qN;-s+m-_p#ifKKMV27iS?}Xq}tB?1VY74wcJTq?|8k&&u_|Gh|@=XEFYl z%;lq~tz%C94B;o^;F9nf{C-=@EgxZSX~o>KP)@0Y-^}<=V@^3cEAmPe_*Rv{of&n0 z(^_8HSMcAWzguftcfq&jw>hQmFhh7us0b`Z^DxpFOVBhSP300abx2dO1Wm2TJ&V(< zAltQZUbA#EjXEJ6Eu442mIK^!jd$Q!-I(WC$5(S+IG+>id!zJ=U`F^K+HFB!XhUC6 z?R*RE>_a<~P5qu(&cAJQK=NVS0{O0-6L9Q)DEKsLe3tST!FQJZMesX42NXw6Y4`hR zjwe}9mj4{p;$x!~A4=}wSj#9nkof^~BiX?t*B!l&8m|v{HX5`qBHuv9AV&o#) zoY!?ZKeF?i*%Zk=Yq#@Tnw?*;*?Cs#Dx=x?lY*U}P;As|w^98b*;aw)B04+Z-tE*A z^1N3Du~QY|yjRR|FQP0jqb&C+Yv%#1BYye38Q2NoGD|ks}LDPIS zTYBHl@_kLj=-XmFd`9{Hl>A->=Vu64!s9blCF;sc)LCmP>9||jKgiq?V1F(@MKZhs z73~zm8=Svx6}rM)^r-B^Ja^4hLf;JTJp=c^uoqK%zyRY70P_u8Ti@{Ddg>II*J4^< zt#LL>KKEh2LcTc7drnIZ&dCD-=0|*xE@VPo@Nc1zThJdUCspFu)aPz~=PCm{_12g~ z=T>xAseCUrXN#}p>uA$?_NSP&)+F5DLk2%*@H2{^kMNVm&qbg+Hh>SrrCiZZuKd^a zhHl4)xlYG>xv=9}uHEr&uFdgIuGMih7j#@fpJ9I?UwIvU<)Gt-xy5~jo)coOJhu}8 z3zun_zrU7E*!<5Bb* zkMtY1FZ&Gp(6@xYIHld!;CFzZ1h&G32IgNL*n&K1j5^^%C$iQWz7=MFKzEcs{s_en9i0`#2$EiMHFK?Ew7mo+p0E=R3z>G-iUG{vInC^QYHQqYu)9~ny=o}@41O;fQX zG)=_f!_!BaqQhe?A+DxQO>|Ef;S0v5|?dtE?8|m%X*Tqee zx^$!HcT{VN#E&h~x=7Q2)|Q$cel|XmrW;bNg|9ia2Ad31$+1M*HiLzlMc=W|(S_$; zy0K(GIR(*;IW+MVFQ5q~CgO?oQVvmk)&Yp$bWDlETDwPIzAkZ6^PGFfiNk4vGO!2xhR5b~5uI+Ba-V^w}fn6^| zS8E9i#c}t7ecYenxU}81^k9t}1?Cr$bk|TpXS8_`OoM&gZWO-F8Vri#QjS%}jco-O za`3orD2|KCQt-1x&tRv3($C`e9kBDe(Zs)L5x;w&$nO%^<-35LJ}qGn+MB5Ss<$B> zFu!F`4j^=l3!4^OcbA7of=(Ec(j|DDtD9 zKUIEraY4OXg5Q6Fo!=qkHwVmbB^3Fs)A)UQFRq9s{A#ts&abu^;3hD?)llTus_{F4 z$|x(rFR1bR4EZ%me_5;Wd%|J&my;_>`^!F!pSPvxFYBPlZ%UKz67tKGkZ)Y$cc_J9 zj`*!t_Rq)>f|L=!|Z{hop zf`1O`ey0k41)M7_{IB>L$$@V7Pmry9PZ;rBKCQw{%*t;u8uV#9M=+#26R(frx*F*Grm|ku4dPER&7tyC#bZQp8nnkx}(XUx_Y!*G6 zMb~E0HzfLocs$WJB>IL#-;n4V5`9CWZ%FiN;a-AIi|E_J!iv5vqHoJ~h#Z-U#Kuxn zaBzF@k;svFx-fO|FF{@X{gJ8ZbR?ckP9~W~9PWv5ED?(ziwqx+^!9WrO+^YoNHJ{4!Rrjz6Ggsm+VXUErXoyaR9BNJ2e8s}9E zkhPF|Br!ccF1}AsP$B+DPgrttsyNjN#RKEV(l)n}b(WgC4h}|Qp)q1H-%I$`X=l%V z{&rZgfvBK4h}P+J3dTawh?q3`LD#N9n0E^$MBu&tfyfwNXc;E&U5&lG$25ijhNv9I{7U5rz$}&b^4Z()@LtZC z0C6xelDzI1$2tF%KgQ=B^D(|xa)xDH!ArOl}{sIDxbl*%UW6bWU1S!Q|g<}ChjQvjcXm>%bDx=4v^~Utl~muGgM#8_h(cu z?#I@%pPB11VXE9>u2{RXzPxk36J)_ci5C}b_!$0z+S%Kqr`v;9p! zpD9S*jI=BHr)wjh4a|*v58~cCf1acV_t5-$IwQJce3m1=G*9<1&x_)K&S361+Lg+~ zeD~)*!tvwkna{6X@}sk$%VfQpri_CQKI0J|I)Bmph(GCB#O0{e|0W*K+$7^6%K3rp zLT5Ij7kV4zGo~xR@nQz}3`X(|I(Qy*Z$l>KB{_zq+&87%U&#JsSN9m|naXF;->7^}#&HMV9g}>QB)%c#q%@+S3rp7m5+BlAg(%qKN6 zpVY{FQX}(8jm#%CGN07Qd?GLK^nBu4$@$-0$@+Dtq<^%?cxYk$Qa$P0)hhMeD&sH3 z>!52p=O1%B=N;EW{J#U{L#%gqn&XM$Lipo4xxS>?4wRQ}Q2lxtUul__YGr)Y%5`TN zcpXf!-?|>=yAbnXx$Ye0yAD?y+sSO>b;tDx-&vSg&PY1p$1mVGvK05hJ9r&3vHU`g z^O>}BOqS%|Wbe-jKZ@fMrhgzYn4Zq>MCX-s^gFa0lS){&w;OEdPJ``CPqkOt*DLMo zmG<>Y`+B8)z0$s3X*v-k@=e7x^xm_9u z(_QnDOFA&jo4ncVd;2-LzH}T177kh{9q_H_2e=&;u7|ejZ-nW1JnHtQH}@yqA@xa} zr~D(8B2+4~wLaTQ#_tjo2`NBfo`bS@o-Cf0pjDKC(kKpJ=On^p&>T{Nho4{Gb8DyE$|TzJ8@2br V;r_p#_1iVS1H26$MV>@7!yoNZEX)7^ diff --git a/release/src/router/openssl/crypto/x509v3/v3_bcons.o b/release/src/router/openssl/crypto/x509v3/v3_bcons.o deleted file mode 100644 index cb3f10ecc6623b0695723da4837c4686f12fe97d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 4588 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 diff --git a/release/src/router/openssl/crypto/x509v3/v3_genn.o b/release/src/router/openssl/crypto/x509v3/v3_genn.o deleted file mode 100644 index 5f6828f620d0e1786c170c7343582d038387d697..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 10816 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 diff --git a/release/src/router/openssl/crypto/x509v3/v3_info.o b/release/src/router/openssl/crypto/x509v3/v3_info.o deleted file mode 100644 index 05f5b1000f751f7ae928213cc1950cbdda2f1c6e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 7616 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 diff --git a/release/src/router/openssl/crypto/x509v3/v3_lib.o b/release/src/router/openssl/crypto/x509v3/v3_lib.o deleted file mode 100644 index 3f9c3ec7b5a7e517957aa7e7acce351ba0021248..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 8196 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 baVBK<2kTqd|XsO7DW^)A$a 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 luOmJ~cpdRK46h^eyKbY@+aT?F`GeiIY diff --git a/release/src/router/openssl/crypto/x509v3/v3_pci.o b/release/src/router/openssl/crypto/x509v3/v3_pci.o deleted file mode 100644 index 9c2ea50871fc836bfddd4f9a5c94df07058aa90c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 7084 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 F{{umm)9nBN diff --git a/release/src/router/openssl/crypto/x509v3/v3_pcons.o b/release/src/router/openssl/crypto/x509v3/v3_pcons.o deleted file mode 100644 index c5545332beedc48034772fbb4eaaff7911c38a6c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 4108 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 diff --git a/release/src/router/openssl/crypto/x509v3/v3_pmaps.o b/release/src/router/openssl/crypto/x509v3/v3_pmaps.o deleted file mode 100644 index de920912952c2d2f068d64c9ff619c855681c517..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 4480 zcwU`XU1(HC6#nkbCa%UN8;vzlYj!o7)rKWM3Mx`pQ;ka0McZPbaNQ(pT$}xIcjHeH z8f;5T5w8Uwl=dM6l|qHJ{(ujPKKS5+6e%J;_>e-O4}Gyzij>0koSA#QbH@$ZPPjYs zopa_pXXeabKHWU9#V`!G#Xt}q0?yX~GeStL5-5r`EP`5|VZ#+nTQ-b8uT&~7dQ9J2 z^tDaj;XmsA{9AqcMeBj@IwDi&YNC}}9S?B3d>_}#_i(Lz7gx)7aHV_`KbCLcayf*X z<;cVYB3}V5xY}_5S30I}y<u*uj!_wrvV@n*J}!lX^{+Z4Y|@!J%? zP4U|lzfJMmK}^*=#;p!@%-k;sj{6I{y8Lsym>MdjbJ=w~w$5xalcHAV;pFHTH4?i9 zw)K5z?bw(|Y}?rn4evp^SR6|g-pyr_>1-l5njSg^6vqY+5~W|L_`X4Th*KWcQy$h( z9#&Bvx+o8wl!qwgAxwFAF(=>Op?t*Ak9dgW_HLT~$OPc#g6Ev&L2No1i2?z#e?e~BxeW{>|gW;olO8OQF9X(NqE_@Hq;sURe6_FQ6F0J|@_edL@>h&fpqIzj7h++=Lv%<_xQ zx{HLuCgsbfeA$#QoAPB-zHG{u9d*{-R$6zzoA_Ua&zX?Zb}54NxhG6T+1qaE)bM%@ z2k1*EZMVGW*WcH-E*$OO`TmOVs#s5q&b3(aSf-R5q`Fj)^#Qk4N*ygBHk>Ra5gRNP z5i6ud(%JnvZj8qA!v(}L!>Pfskyvst-PQ_P<2;huDLKf;_Fg2l4juGKE2+wa8e!lz0%j4y85PrUB$Q#EjczkrB`uKjGhL5giAKzAmZ#F!>3y^$0 zj@>^5hLwH+M}Gr;zxzz-TeahI4Sv4|$nRxHzm4$xK7xN;y&I78=N6amXZZPAn&fzy zuL&OC-|+Jt55V{Oa{2y(pRcP)u1)5f3y*K9;paO$4PTq#=Zh&|2z7llV8mz9fKfmhg&x29I$&I@;e|M)U>?mU3g$e2t>JGqJgMOyoHpQ7v$NaUwQ2k2zW11e4Z zH+Ycc`CMMoZr;7y%8!+-RH2Y72*gneWQm6+8;=zapvt4I%A-peHA7L%I(fdDZSpN* zE}^@P>w2lLT_De@I;uaSx}F|RN1dAQ;(AK(d9LX|y~p+9m;3R)st?QkH#0Jge(Cgj zK9lR)A@*qfGCE7SUM}B5Gb!%VjOhV(lQEIp<$hE@WH}umcUVrB(G!+a{ebbC5PPPM z>YyQc+qtIkZ{>OgoyCUqlQ5*8eTMXN#*pK^VaW0F>1e)9{UPU*&n%ulA)h1nq&dsM Xb3HuUsd+z`olYKRIXs=3p62CW!@*^= diff --git a/release/src/router/openssl/crypto/x509v3/v3_prn.o b/release/src/router/openssl/crypto/x509v3/v3_prn.o deleted file mode 100644 index 6916276fcafbeca5cd030622d97e73ffd9cc48d0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 5592 zcwUWIU2Gf25gs0YM4C}d$+DxgN^+OdlH#b$NtRn%5bR47#dhJ!MywQeTZH#nM*GwTaDhA&MIZFg!hR^wAN0Ww2H0c6MfVcF7-(A9^hi2$1^(C`v7gD7lHKEkQ?y1=UYaQ5WgY<3QtI z^xvPQM~z0qB}}}};C-&iZqy%Zd}kehpGW_|I{s!4-(JV};_Ld`ca%ntOczTTbG%s0 z7x%g{JU)>xn@1N5g?zD`ncFMIXmtGRM<$Q&-NZ5jCdNu5+e_$gk~*R<+L28(Tg;ZT zv(u+ocEsFX5=zuFN_4T$TDuTjYkbnzO~0-s=x%K@8KX)29$C&B#i^dK>4QoDV^7e% zgn{;Hv_uywLG;6PPdLAaC=sPg%P=Ehf%`04=p>2WuY_qz$P>L+v1|&2z$3bxbZPF# z9+^R+2T9Cd*{pOKkLb1KD2*>S8b;ElOEuV7iIN#K>61Q*Df#-i?5`=A)*9STGABl>M0V=LeFMj^wx5i-9(bf)6UN&a}!wZZB)4cCqk{Kw-#s&}y;!y+~p zDs5Ell6J9tom|@@Y7T2ReAC3f+{o~X$HA{3H1Jzh{%EY z<<^>r*l&!}MaNg%F{YmczIEOq&S(D|3E)W|@9C5Nk~)V)tR3vB<13wHZegDZ%zg)J za8OemF_)fmjK%nzN0wc6b0R5i0$vq$6L?z~4>&R}3I1>>sC@86mRlkUVU045uoqY% zdSJWr3tvH|L+sIx1Uf&{;aNvShQn}t$j6RNIy94{-P$&tp!VR3^mfgd>iJuy+NM83fmmitx?pi z-Kbl`$axz%KLC6CVQ&)lntIN!F3}|Y0y$9^^^0?#=Rbyd-Xy1+{S=3<^&Dc`6Toom zm%CqCHYE1&8C8?c;e9h{okvwc3_`T4SFW+HVh=xHoiQ?-v1A;gzxMJRGB@Av-K*^I z$6ESQ<*1rpmkFx8GB{uDI=UJ;PL(wILOs@mG@rzs!jW3-i256 z+9l=BXgcGB z-awvSM{Zn0ZfN$=8BYBn9Iy8o=8p4WOoi>IM2e2Gze%R#Tco@+*`T)>0BE9 zbfK8dl{Mb6UG|=D>`adzn@qnweG2T{#?1erCs^tE!g?;cnOrHG&y`&L+5Eyn2A%)^ zK}{2P$B3dGA3vd5OUVU4M-CekXYl9C4Um|#U}$pPnp{ZHdx$)D+hcgEJ~@7N;f-nI z^-jL|67C=3>=ANo7hf86yhr4HT;3toAJXIsnp{Zn)8zHvNf3YW$?@|o^4j;XQ?6yJ z8h7pcK6&vD!9n*mgI&DSTqc^coVSeI$Pqy7a3g_o_=D#CKAoC-D8YMl?RM5+58#e&mezx@@JSoyZG}J{(O}`yZN(6$O)CfK}w$}r024w0=;~6VlZ9c{~6MA ziwgyM<=|mC!My15SUQ`V<8yX{6oY=2$dE(PxXH+cl1D{N8O}W4M zpO7hTUzF#Lk&<%Z9$8}}J+dyupCRHuY2wey^EieQ^)B<3g^!X z=dQwesBj)DIX-t{IHaP;^+>0<08{)+B=#EPj|QZiqi9}74CnnE%cCu*@!#+`itW2R zj`nOo+UZ{}*W37ZwGI^M`>fX{?T+yItLA$GZEUNo0gQNK{(!B(8z^$jaO*u1W8>Hi4YLjh^`DaGeImdKZYoads# aSyDL5EQgC^mD`=*2V|VCs5sSCoc;q@Epi9| diff --git a/release/src/router/openssl/crypto/x509v3/v3_purp.o b/release/src/router/openssl/crypto/x509v3/v3_purp.o deleted file mode 100644 index 61a395c5183a154a0c5d0d86e9bf0019321ede0b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 16756 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 k3(V<}xWxQCGk#Q(#kk*D>U=_czyCzN_ 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 G diff --git a/release/src/router/openssl/crypto/x509v3/v3_utl.o b/release/src/router/openssl/crypto/x509v3/v3_utl.o deleted file mode 100644 index 79a76a3c65fd6e1e4bcc7afe4062badead7ec3e1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 17932 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 iZ^#8a9%;)#@u>3o1fO5w(}BkgV200 diff --git a/release/src/router/openssl/crypto/x509v3/v3err.o b/release/src/router/openssl/crypto/x509v3/v3err.o deleted file mode 100644 index 802b2877e2482ade64e16a7628c7f3be2baa15d5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 1004 zcwU84%}T>S5T10aP5pt|lOSR|SwWW4pF=%}P--tlq@eUxk|x$l)0QMkJ=tgQNqht! z#e*;46X;B`Yc~tFAAFhpcE8!#%1Kg!+#v)cGuY|EOzB%VMdMkX9>_&S_fh5a}$aVDU|;I{$ZPlv$+jbJYt1 NK7juoxj+V+@e8{rM9}~M diff --git a/release/src/router/openssl/libcrypto.a b/release/src/router/openssl/libcrypto.a deleted file mode 100644 index 55d05ec61394698e4acd96bcfa7de4c42a6fefc9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 2838846 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�U}&oqzIQ#rzb}_m>^f`&2Uye!5f3+U_dAILlP{ym{c`x$3=k7jU z>hzcSDgWAw$7_J!7O&Rt(cL~LX-DQ0_xGB^x?Ih_&iq=YuOqumpC@;p{%(@JkNNDd z&cFGOF~8o>!sYnZ{6;;N(w(n8 z`uwd-Pj^1Kq{kAv(>LSp(^=l9d>(P0zmex};`uuqZD)w_+|TihZvW>$&ga;mb$

      })>gCVe0F^T_q_ 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 Yv=Te{ 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 diff --git a/release/src/router/openssl/libcrypto.so b/release/src/router/openssl/libcrypto.so deleted file mode 120000 index c04956684e..0000000000 --- a/release/src/router/openssl/libcrypto.so +++ /dev/null @@ -1 +0,0 @@ -libcrypto.so.1.0.0 \ No newline at end of file diff --git a/release/src/router/openssl/libssl.a b/release/src/router/openssl/libssl.a deleted file mode 100644 index 3fee0211f3dfb737c3e0ef0e82fd67aff091aff2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 549590 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

      f63cHzveeJg1_cB$U^_E^qX5jqMg7mb3YP% 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 diff --git a/release/src/router/openssl/libssl.so b/release/src/router/openssl/libssl.so deleted file mode 120000 index 8a897d019b..0000000000 --- a/release/src/router/openssl/libssl.so +++ /dev/null @@ -1 +0,0 @@ -libssl.so.1.0.0 \ No newline at end of file diff --git a/release/src/router/openssl/ssl/bio_ssl.o b/release/src/router/openssl/ssl/bio_ssl.o deleted file mode 100644 index 2991d24ab7c5a3805ae84558331d81c574969ffb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 10136 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 diff --git a/release/src/router/openssl/ssl/d1_both.o b/release/src/router/openssl/ssl/d1_both.o deleted file mode 100644 index bd35482a6fc62e304da7dfdf5309b8c2dfc00fb0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 21172 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 CmWKcU diff --git a/release/src/router/openssl/ssl/d1_lib.o b/release/src/router/openssl/ssl/d1_lib.o deleted file mode 100644 index 0927ad9f8332bb0e686937f688480f7aa4ebe6a4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 9432 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 diff --git a/release/src/router/openssl/ssl/d1_srvr.o b/release/src/router/openssl/ssl/d1_srvr.o deleted file mode 100644 index f44c2d22f2283e4b86fa8e91a94afb6742b12e8d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 16984 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 diff --git a/release/src/router/openssl/ssl/kssl.o b/release/src/router/openssl/ssl/kssl.o deleted file mode 100644 index da15b9820bc655ae12c22b869ff784ced46fb186..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 780 zcwUWCu};G<5PiWR6j%aNC6+Q#By>WhES-=lC<8(;Ah9M*CBpJ?zM>1eItJ3(>hVuShG%;#Hu4piR!5moq>2Ms<~ySDi$^X=Ds zCiYOyVDO^jzUFi6W-w4%d~4p(v5i%Kq0RYuzCh)-@ZLH2x{u{AuZh|&QR&2JexuO= TIK=(Rqs~Xwk@kL)+ZjN#9->r+;55&^J~_ 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 Gg!~U~=c<4J diff --git a/release/src/router/openssl/ssl/s23_lib.o b/release/src/router/openssl/ssl/s23_lib.o deleted file mode 100644 index 20d6199433934a1a602cdbf6528451a347622f1d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 4092 zcwXgKO>7%Q6#jPCi4!{{+hB^@ICQr)#6YyN(jt|rLKda%C4#60sfUWKe>RCB{*k>F z4XQ-oLZzab1D8l38ORajQdJd)R+JM+TsUw-9DLz|1QMtR4wcNz>?}Jwj+InY0*R5< zZ@%}w`DWhi?!5I|Cl^mCiUPkW7(;-7tx+JVW9bM(8SKZS5ZgUOuj4-2EV&NsIv(A) z*YEdzlzrfFB@{OvV0;WcZC+8+QFL@L{LXt?N`-b%g^Eu)z^5GrTOG>Npr(P;ap1!_ zv$v^z-@iRKkFUBJT<@mwMc2T!ZW6b;z-HUr*noMtgYiEN&3yk3h`&w!K<+c&deC9 zna!zWeQmP7Hd!Chz1ALsp=EJwUc~K18f|}J%)FyYbJAeT36Kw*(+aPBe}9YB>h8%HZa$2 zwCQ{8>v?nKVCqZEH?Y>zCr%tQGN)gBq zv3kq3i{<*N)36Kcc5yY|@Dv5g8;!E-40!8~^ZJ0Z;p9sL&J}0JDFVtssM@OV5J|dN zt5lq-i`}*vfYq*1j&o96=hoyrZ3iBC2*|m;GjASj&blh_k^(Qn@v}gvww^=S5#jb3 za*YeT4<-Z65zeFQdJdAF2!z-o!uvvbV*<~gcU9tDP-w*;`aTQCdy;8SJGz)n-az9icQ+AL|UQ%p@?(zc9=ns^3gNEZUNytc1Zb&lsYEHFb}7 zHmTFznXEqSJ(uKz78}&2fDW~f0e7e+4}Fi?$G!0*3GZAPC6@fTLi`bO->Kc}>BPz3 z*h|zVJ-s+NjK1am`x-y<5692$JU&JJ2fXt*ZVZVZ1ddXB2zY_o^l%>iUWq>e`~?BJ BXU+fs diff --git a/release/src/router/openssl/ssl/s23_meth.o b/release/src/router/openssl/ssl/s23_meth.o deleted file mode 100644 index 0ea7aa41772cc3cf87194b51acac627a606f5c0f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 2968 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 Hy@%-E*PGWk diff --git a/release/src/router/openssl/ssl/s2_clnt.o b/release/src/router/openssl/ssl/s2_clnt.o deleted file mode 100644 index 1cc6c12d8d0246e9ef04bb57584a265c12750ca5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 12932 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 YhCreW|B`<*1AH8QWf+n5!~oI%0ZXP%rT_o{ diff --git a/release/src/router/openssl/ssl/s2_enc.o b/release/src/router/openssl/ssl/s2_enc.o deleted file mode 100644 index a45ad033b1b49ddf68faf03e8f5e299ef74c69df..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 3692 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 keNodrrdEISe)0}-%rS1poj5 diff --git a/release/src/router/openssl/ssl/s2_meth.o b/release/src/router/openssl/ssl/s2_meth.o deleted file mode 100644 index 2f18f2aad67c7ee36b4281f80f7aafe7176019de..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 2532 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 I)?fSl|N7Yk%K!iX diff --git a/release/src/router/openssl/ssl/s2_srvr.o b/release/src/router/openssl/ssl/s2_srvr.o deleted file mode 100644 index d58929117d1fd36e21c60c2e0e06fee8238559a6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 12864 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 MzYL=?pO{$mKh2mfG5`Po diff --git a/release/src/router/openssl/ssl/s3_both.o b/release/src/router/openssl/ssl/s3_both.o deleted file mode 100644 index f2a11404b64661b9ef9a6c3985d3f1dac63ad580..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 11720 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 diff --git a/release/src/router/openssl/ssl/s3_clnt.o b/release/src/router/openssl/ssl/s3_clnt.o deleted file mode 100644 index b22d88f720d5f97f826c3527330316e0e324f1ae..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 30916 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 diff --git a/release/src/router/openssl/ssl/s3_enc.o b/release/src/router/openssl/ssl/s3_enc.o deleted file mode 100644 index 1475b0b2a8f133dff1d88ddd89ee8d439bdbc99e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 14224 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 Ph$+ug_i>5WQKJ6?y42}* diff --git a/release/src/router/openssl/ssl/s3_meth.o b/release/src/router/openssl/ssl/s3_meth.o deleted file mode 100644 index ba00d312f32e3abc220d37908b7bb1f94cc6d05f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 2740 zcwV(u&5IpH5dXcN&F6c9oqRCMNKk#56;4L>X7jNSKASig;gLwDi#e;TD_wc$)*66{4q3TyvT~*UHQ{5lD zxb;$}(?LrebTLCfPXG%&T-Kde6f8>O{o@ z%~fUisFjqwq7bIBiV+U#8et`eS-xG6Fb>PKLO4m~U^)!rLDoNQ)U+tPbZP5yKblB2 zDpE&X*W-RPl*+SE{6?q>Z(YfN3FoM8y{W+(Ox`YLd57@h-3I-IGiu`{@Z){AX!26LCCuVogWr#z_2V|a zjrTtMct2{e2NUlu%;MdGiFeBSZE3LTtn1k45d2^AU9J3v`L(?5EzzD%bX%D9%P@JV z2CB`C_vr%ghtnXpS1!5wIsEpgYYW(_z^jC?KU4xNFx3w`j@T~O#n z&k)xawzI?^Hs`C*m$w&)>tHVvUpHr+c+{MYLJz< RL|hj^TO&^Df06hTz+bgaJBI)O diff --git a/release/src/router/openssl/ssl/s3_pkt.o b/release/src/router/openssl/ssl/s3_pkt.o deleted file mode 100644 index 1e1fc9d5374b75d9470e5f6c738430e48dffcc1e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 12948 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 diff --git a/release/src/router/openssl/ssl/ssl_cert.o b/release/src/router/openssl/ssl/ssl_cert.o deleted file mode 100644 index 62c8e5fb0c8b91d893f56a598f692d20d552f702..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 14212 zcwV(yeQaCTbw7NhD9Mx@T2&k+(UM1*mS{txDOpx**G;G|$7%hc$WCT=$tX&sEGE=P zNh(v&6yaRE)izC3i?ndIpcMiqHBeXbVkdL481{gm>xKYxu@p4|FK`E=>mS{a0Ywq4 zS+#TSxsUI@OVYA|^#Ro7x%ZskJ)ig9cd3^L_V0DMTwpyer~#V-xby%(wI2q%1Qmi^ z&<*PIsq5vp;4Yp&z|X_~Z{rW=KV4m2wWw&x_{)y*eV)6;cjrG*VHWYcYzVCftzj*oH|GC z5}cU#z*pzNZv@xDNTVCvLBKwDg8}u>*BI~v97VboqJF|6nQ?dT{Kwc=1<^+8yMf;s zt9PFG={wKdya(X5w!qC--B(vHx9x!|D?8!hN*7#MiNISc?eMoNAvnL%1n;f{@=M5n zssQjRe%=V0u(VS9iRlh3<^jh=zo3_*PTGt@U@i(i)Wz!eqiiF1g4dxc*aP06;M)m8 z4i)kT@}%3V1?)3OK8<|D<3`?XXeaTRaG_1`pmRw!5E?dkKGWcF@(1f+!kGf~5!S;> zKg}ZhjX)mt3`OC-vg2T&FFk6%7xlF434}n-9TjtbxC(yu6Z5;kA2cMtWt&siGX)Ri zOXd~Wh$(nOc>`l-u#c`3Fir)GQvu^tz&I5!P6di<6fU=Av+3AqGLs9B0&LE1+nhzb zLxTec4wjV>mPy7Fq1MsdY`fV;bG2;&z%g@dDr3Ho%%sL%G)Lp<^hkX4c@S9X zRB|#0;(IokK^AB3T>9Pl|7!fS9W?Zhdh`=9?T&R=8%VT2;ggM)A>9E z7MFl>2;fJ-TFiwej4{Bsg#GRA>LB~&VjI?$KZvm|^^3`Vp}6G@;THq^tuBv0959Cs z@DSdct%03UV;#UoD;`$v{S4<@@3M1mr;HELe$4yT)n1{)s=K#6U|uySzdE$s_(PeC ztWRFXiE}{Y6z2U;R;dQgx{oaJ@jbE-e zEwJPd%u&J6`c>*jb;PxVZ47~KBVq4qBO90CWU$iM$J$tV`^oN;^IlvR0&`2i@~0fO18i9Sed)CJ zejxOd{yZ7v9J2CN`f#qyUa&|$HyfzGPKl|NyFb+Sgh4Pj67OM(!)dYBm+T3T%Q~cS zS~EmF7WajGaczE7@@;_O;(B2DGjKWz>&om=x<2j7x-aWyjlIRZ>%GON?k(0j7vkCz zeZ~D|SoFOo_nRshZcy{Y8YjQlG2lH1YrjE>%Wd}|kHmH8?H@MQ+K2QU4`M!O$}7VK z9j!l?Yc{QSs5AQIt=rbvHMA{+wgu5HQ`X0Js#{Sbyl(%q%Lw}6^%YvTb678{tDL|0 zU~YvV+RU-_EL2JVtFcAppPbp(WcO5aVcjXR(fGp0{zoEq4z5d6{!yoq7(W`k}QW z#5pmGymer-5?>7%%d~Fiu(jh=IZo}UV+eClja8ReW9?W?DY2SUVpWgxZjrHS!aby% z56uewfjs8dBE2gZ3oaO{7{7KLr?EOb%aj{OdxQVA+Pl$O8_*uCxwlHRlxkj`Waac|0{gu`=#sKtvEF{K74vxceykIk zk7|W;m-&ge24&VEKk@oerVeu+b9>p;WV~=9Z0Xj3>jTBpBhLlQ$7c!`ywXa!|KaM1 zjZ_;vkAd|$vP@?fjsx#^ZDO65`=-c`gjiQCUpVVEQK4SZ2Xj`vR$g!KtX^9-ikOHs z+%&KzaL;@j>*pfMUnr^5%6n(&+G^FyJ5YXYeZ5SrY*5!$y;kykW<$GMc@AD*=diW? z%x96c)>~cgYREToopU~Zgu3dLa0|Z;&|O)9ThiscBY$msn4X5s z3wB==-bcC$Z7;`r1LsS?F?>HWKSO$r!@#^XUZuSw6zc_R>mPm|fw{a2G&0`{G0{K7ws7!|k~B zEtj0lK{yf5#UVVB%|bYnJf4~yo1!o2@N^;r;fX|YWafA{K9btr$pT@%>&eBYlgW&@ zOp4`RoKDI?x=89fax``v8TfK2*4GnDr?NSPq1+(NSY(JN60xyVI?3?anUUv`qq%G> zHxvrRn#M%fTMx+AhHcKFDlp#kC1RAN>G;TufG8Xb?PCOP@V*enTWb5j}2 zh}KvR2%opHX!-jYw*!UY|S0;wS$;*+EDnK z6h4on@r>vAz3nJ|ZW={W@X@maKeYFbxOXM z&>0Cu&LhWv3C?+MB44nKpKpP4-e3p7kAdf15B9wGx}10(>}*!#EW8aaC*H3*IPQe! z2ODpThG*9Byw+pkZPxHSot#^Q*8nzNkB0Zl3i^Fc!|U$^@jD#hHG+*7*X^w>kN2#G zmr(FFf{phT-Ch)WMv=4dUexeTDtJv`%|WN z#mB;XQp20?qPuCvYXuu`Lc=?aFE_)AoQ0Rt@NRVR@5qD~0voTO;eCR5`;@iU!uv}N z&$Gi`U$%mc_ojvy{S2@7MLF5NuHn7E!;Wt|*m#$9{SfapMb5(ep@!GkZQC0L8}FwY z-YbpeZ%?5zd2Jd$o-mejF5g4x%Y`llu&i(x8eKrPw{k=!> zMI`;qeY}oZk4t{=T^y8f!X)y2Ug>Ztty0#ov1@GtgRR6i+|ac)doi*Jz!;LF^Iq zP)!()NYHqrMsEc5apR57nmQH53?x1-{SuF~ioP>|nArv}WwHzi#o=vw#(NgoyTI=C)rIx{w4 z{(Y+8QH@q9B|zDAuST019n$D-jebm{pVa8%8a<=YU(x7!jebR=&uH`yH2Uu(O=s5z ztfvpP@n2~4e`@sqXtYmRB8YC*=xrMPm_{Ga=wp(m%4)#OnsU$^;m;>3BS?C|5u~Ea!K@vd}@LFl_iqKw`g>yM(@_>y^^N0 zP6MtFN44=Wjh>LSU(DYMU)IL|T%*6K(SIXpI%_oGdU949zo5}qHToYVO?z?!u0J10 z`ZYm^;olwlMW9M4X_DV8>5F2#6F#erAJXXOH2RcAe^;a5(dd8G=vx{M%0E@vS4z&y zpfZ;?m2OFHdl?bj-xr}j9rUM@{%of|UGztcc0+~hx!YXKRk)J7lZ&|6@#$D1m7Rv{ z^L#-yF&!J5nH+`QCl1B3dEE9nEFZFgS2P{M%Vy$ITTAz(SN(4uE|NZYjQf1n#_%r{O26RXu8QMl8EP0Qpt*;FE%?GRtG z&M5Wr(Rt-~2N#W6m*l2UVwNUnq5Sou4m6p{ z>3vyy-f}~7;V3hIBqnU+k*5cSp4fXVHrO-NbAaSJ%3)dhjqsqNuFg%RHHkhGj}hkg zdSe^k3mFl4_Ur(0mNRq>-pWuThHfCUl*V4efXYBx4^z`-m83%usyz=Y>#gjzT;B68=wjG^L-ZasNDn5 zPwnRr$Hn|)pYKtCS!y4{_epA_Y$xfV>qq+ddRfofAirdR>fg*~057)Z zslOlhNU5*T3*%8o_yhQ!?qWHi-(EcHxR@_T?c)GxY-?LtKQFe^M7MD~ylqlnVd2`%{;vvwZD(dA?eI z_u~|I-vR00O85;@zTxi2g?&$!<`>10@{8Uziuv`3w6~kzNhx1`1?-QHf&Eh>{V(FU zOXe5)DIxRjC7E}NGVjjF_Fb8O@447siXYi4;x~l&G9PQOPADJgY)*Nq+Y^*}i2B$~ zzi~3Y$j1X*_k=6rg~|CYwNI7e(A%f)kNCca@<#Y2DC_M2$Gpr6-HqEud~#i+dHSi{B=fSD{Yd@ek~XDYY1yBb{EIZ6qW^Wl@es$?8ZmR2{< diff --git a/release/src/router/openssl/ssl/ssl_ciph.o b/release/src/router/openssl/ssl/ssl_ciph.o deleted file mode 100644 index 2de43f12ca0f3c923b7260f24a587d24d44a9109..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 27064 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 JD^AFv5r0cXM5X`$ diff --git a/release/src/router/openssl/ssl/ssl_err2.o b/release/src/router/openssl/ssl/ssl_err2.o deleted file mode 100644 index e67d4bd739dd946d9f39aa0e6327ebb7359063c2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 1000 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 Iismc&KPOC*TL1t6 diff --git a/release/src/router/openssl/ssl/ssl_rsa.o b/release/src/router/openssl/ssl/ssl_rsa.o deleted file mode 100644 index 192b109cd834efc10368861485866e91024e5689..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 14744 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 Apa1{> diff --git a/release/src/router/openssl/ssl/ssl_sess.o b/release/src/router/openssl/ssl/ssl_sess.o deleted file mode 100644 index 13829d5848a24ac906ae249464e78687b7dd5414..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 19136 zcwX&WeQaD+c0ccpJ+?E(nHVPwi4$hR!=6pN(@AiUfxu4ukvL$2^8t0(?AjiC{89YH z%mkdmmLY_YrPCR2mz5H2+FFSNscJa^(iRCQ?ryqu3u=+tKSCR|S(a*%${$&2RYfX` zd(OT0&Aac;dv;Kz{fj3}?mPFK^SkGsd+xdSzUw^S*0EF5G%z0x%E6)lE*k)4e&}pu zR2UwI{UASIXm`8`U*TDgzdOF>f6f1zPfzB?;^Lx7H2pvM;jhg1*!a<9_{-@R+gFzP zVoChv?9*)e%eB88zqtLC%kYbzrR)n9@t5oW9d>=~tJ=4mf9(3PB7X7n75T3IFNbTM zc{rN&z_g!ut@sXbW|r#P;iy67dB)GwfRGRQY5ma|ZyH{jRe8L=Scl3PQ6KV8EA=n2 zHeYqnGq8@{4VShI7yAxq#~Eg)R;)+-4#96n{$+SA8-RJ{gLyccT@5|{TGs!c)CAyV zqXY(-el28XD*^lgEX%R1g%@W_1up={5$8;{1ncLaWp*BZioY}2%div6Y2;0__Dnm% zqR(N`zXm}!2s$e0sGv^^`m~_af=&y1Qqa#~xqp90aDUtW{ktFC6YSivZ^t8T2io@G zmLQcH=}sk5sYoB|&31s(^`UF0JPV8O)kop|3t@QoLa1pPc`xMwPUS<<489-B`(gS* z4gLc7tHoase-$@^*q3t#>f}*3Pi;5Bd-cB!+$)G1MBD)31~_iWPnf6j9QQTEefAjda4f5=wLt1gD)UDM{@yf%%hFikBfO8 zbI!i0#eM{^AAZ)4AMmlvWS|O4jS6fZpstSEISXaRJos}s7phS7o4VD3A8&e&I`OCm#^Ds6I7gssU{Y3tRj+2R1+q{WDXr>l06zQ48nL?`JNM zZIz-eYMZxnCQoA=gwAXbVzWV*$#dJzF}VP|R&U9jBDq=9ZWHS>Y{M_&6z$1}h0SWb zQXDj}dGMwZ3rDl$Kh4t|4oyvi2m25@F%JSi!IhV-Z zaxj?RU-x(o;`=ZzS~c!#GoI=&E_Q%DE~-R3RS>J@SbJw$HBYV_;+XT|vxt!kg=2aN zv}T!JG|1vd1CQZFUF;L;#AZm2>Ppa$REPa6#8b%M153pen{V)w2C|vkVA`w+j8$ z2C-Um4!sTDIuF{#>!zS2M`J6`Pjh@yG?c)(Y#Ht~$oI5I zn1L6wA%6>O^0(pI8uJHPJdr<*oatjfv%$#m*toaetf%oNUY6w)Bi8_@aP1A=N`0~G za{KLhh4*2pJmZwRsSi!U{;O=S)SNv82eaIVGg+J~n5TJ8F2|f_@eGF#6>Ta94~|D0?z_&iIa`W)q;J|tvYP`s$m@z*9LyW#E4D z`N?_QpPtD!VVsaXE7*RGV&b^SgFiFmJpVJD=VtEfRuNA@J(P)Ip55#BoB8hqp~*5a zARfgJkDZuah`S8uX|M`&Zcnw`w!AL}hh0a|A;hG}n!>vD88##G49{a}ta zM4O|yF4U+tLaaGjF4fONX^!WMk{s3PEEaTH&v8z_U$8lN(`(`spR+jjFJNBA^I09m z0L3%Kca@kc6z66<1LkFU?2n=UiAQ5vuw9IOCEF*wo4*rdplEz?>;p=FiN1{Uqe8^p zJidF`yQ<6A#sD zHf1`Q4Do-l2x~}Y1sg|y0dup0`N<+*7rBh{Joqb}@9RiT-4{5;@wG28RyB-O?b3xB z?X3%b?ad37+8YaiKvA=077+3h@SN8}lyq z<%dlfKZW*-XlI{6>kj4bkpB?or5FqO52QYu^PnHkj$|+G1AEyX1)xi7&IM5ywC3ms zSjYE>%`Da?V5UA4&gisP3bR~1#jr+LUgP6XDtyG^7I|N4JYESGV>WBHABJ=FW<0E5 z>m%Wv%6r6qh4v~mFU&bXb48vLUTG{!aV*HrKNIUmm)4T&fH=*6;}rHA-)GsHa+1Db z#ItuXpXr8y?L^^7*6fp+zYKW2p6ppCVv=k>1TBcyXJ9#tdd%;%KAC&#wUXWH8pSbM z(XY6!>djFv^XtXJTnxgwJjqa94?7Og9&lCeG*G)6*O1%@?yshyjro*peO&Z)fzOv{ zWnt|IuHiYKufZRq9jldn=G`I|W^uh+C-$Zn+1j@=r*F{FGx*y?Yuwqh-+-C3o8a8p z&2Z){pp2(l$2F!oOl$Qfj0c*h?eKAyekfaS#ul}M_;WNavlvgCL|!2pa}S$q)9ie5 zmi2uG`m%S@ekr5tx1bNmU!6RM8|!dA!uMIy=YBlL^GSxcvl?xnap)5ASkB^#>bMW2 z_Gvwz$J}xf?OMb31RCiS z$6Xa?i+P+6PJ6}op!f{8UaS)=PvZo>ihRl$W^U(W;W46`&hpx6@Zgww=B)VA=gf9y z*xnCtt%AAp_*=jqop)%jLb7!JA=xWfPkDW*Gr&CdvkCjzh+`7PF)`2U0rMLOjtjGq z_IPYh#``-f_O)GFJZE6+dBxo0v?lWpdhmWee)ZX<$i ztQKtqw0_)w6_0TV_Gbb8TgLoPxG;Ab26FU0VWq?O1j21q=8qLye4kP&;%`Kp)u$m* zcN*e3;tjF0W;{0!6LU1DFdO1rf;o)yJjQt*-*oMs74p)EM4*z{mpoo$bFKa(6r zAZhp<`SIcLC1jF`-u~s-?g(x!N{r!jPAG!trY+XoEy5TWIh-0Y`6)%fIffM>Y0hoI zNsiteOS?-ABonfQVqSH3wC~v8-rf4>j*gD*9s72<+aYm8)S3p4j8hC1bOW)8qRNrwrSQo+byTa z#AG*5`EH}OjD*0T#)ilG6O$0Zls<|<2RHxV{*3)?lUL9&h3^+-NXU7Xk;BCo*Wu;m z8i2Jqp-XZBNv=fD_X61d_NoiOGFHgZvkiY0lH6o7Kn4{L;Crc%BfB011y8~PiPr&k zzmQzHBxkl8SLAxU#r>e?Sw(Kr1@BK3xr~>->lMqrqsX0hY4>AA?vjh#uNAouUF243 zcDYYo`mtG&``o1;ZHioZnRC0{id?Xa|80pX_q-w(bCEl%$n~JygoE7QDsmr{IrsNJ z6}c-ea=%gJuDQr<(Cu=cxyXG>k-P39_Z>yWo=x90p4UAom_+1L#fpU?HBso^^vFD*1E&OkkC=YD} zD-TU7c(X2eX$3FbYT+4R;hk3SN-DUF`IvYo6}&D9uMRA{cNDxX7reh#@J>j0VX*N2 zL+vjrEl7GM-oGh$Z@2Qlp(DIaVBwXO*zwXU0J4&viRUS?<6W2V8o?e zy;7n5AU_`Fb(xk&hUi-rx~5 zZ%}CaUxRyCMwjW3LT^-PL!s*wI;_x}6uLp7BL&3EK>oZ(;YUG!JcZq^NjECAs^6s0 z_p!B$9$G_nwld26?I1rMwlc|dOre_ccfvRpt9<#e58YMI}z&<`neheGdB=uQ~2 z)r4RaTX}K~lWaOs&R$j|w`#=nD9ejlTlk5Ogi0eee%9`AYb?jlKo` z$3|CyPm}RhLP(SG{IE@vZFCUc6Lc4&H^RS2DVDO;Rf(o-_TLKq zzczgXR!b?F_+ddGVEj6GK;b{E(BHPnhuOJK<{uaI0^@Ija|-_rg??Y5f1%L75;UEO zsxe>aQpgg&O3;@WKLU3t{H=nfGfOq*k4F^#L4_Vv=rKXl8KoNY%`1YQV0ex2V@3Wi z6#9LI{%3{$M4>-d=wB=Jmx3N*?KeS{G-Zh&Qs{3An$Mr@Y(GuUNk%^iPbl*Jf~Gxo zHRiWTg@06`^Ma;5bT#I`8HNA0LjR3I|D8hrqe5R*=o^BjJ#01R%W`QCL;RHry;0D# zN3F(udXK{2qtFLUc_8@?cuL_Pv+?(^@0BwDf}r{Q=w#m?Wxo8MY1}U8+^#H~t|Q#O z@*5p3QTk^Kh%1`HcYO8BI|{2+@{OwcDc`)ORCSiBcLY%-#hs~q^(14e_oV9Wk#$4r zey?P5o$ftt^@A?;_Pfp^6&IFtzgeVGRIlDy%6)g{INW2(N-ivyyGsYQb!+K-IoUlp z(cM3snqcf5`}b_&GBCW=ego-#b!k^5HaOm47UYNn{ac5NxQ_RlHZ_Ls<~nh|*|ulb z?mcbj?%_1F?c3Kqfs-+jOpYf_4x3NxcF)osI6T&urU@ow22edUWKKWphO}kh!OjDZ z^4V+Jq1=&<40ZR9<1lykCI^=YXA_Fuc#8K?R2%Pu(Zp!q#1VDg*=|o|o{T`Zk<2&= zy>Nl|XlL6VQlx9mu~edv&4ddGrfXaDUjCMPl9$w-#7H8YQ2S!h2s4^U4~_SeFwW!T zaN_Ai!9B_itMk1o!%Fw2Ej9UG6=8?b;G~sI`qIe}aJ)lJkEFI>&3GSmjJq3p8=%#u;ZqWDc6`T zcDj2NL4Uad2r*ap-H7e-{L}#(x!2Zv)jz^#vl@Fsnm3RcoP>DzL zX(}H21pgxt|s83}a^{MPfeJY1hpUNkJeRR?B;1#6uDb%MD4^ll;;*mE)-15!km)eH-di`3mY&`A4Wv9adfaN&1ze3=W{4wDDxJczhv3^k08$wRylOKI4&L>>6znxT{7WN+ocutg4 zqNHySzNh)O7T+`UH^5j<@;h|0w^HM!A<9OL>$MA7wS%Uv?}+GMHSe!ieE;_)i{*zz ze;EH+JS&KPToV0Q5dHX6==(KZGCQ7iY5zIVZ!vy^b3ovX2>z6?^SrS0qOkKrp|>FP zJ`#GBnzQ}%?XM!j_x0XLF`vFR`JNZ{JTLnDy<$0Y{LFDXAnY*5vrE*ocz=Q0Um^TT zc2hsdz7IwHzl!==VRx6t?L4G$J1LL)j$%BB@{%a8YP{Vm8gG~KsZ%^t9`GIG-#jZC zxn15yF%Mr7enjSV(T^{L{d5K=|3@|6-wuI)K(u?!?60W*Ovqgm_S_Kll-GS39B(R* z158qhade)_mvKBiyzKOFe;@O3KV0@$<5+n&?+=ybqO269UzBRU*?681dF1=puAo)9 zAk~kHy!HSeN3z?@Un~#&A6BYiUajw|L z$Jx7$e=8ulejzs^!&Y|b_jZkN*w1`1${{e*LmXm QflK`li|bjQ`w_tZ0TMre9RL6T diff --git a/release/src/router/openssl/ssl/ssl_stat.o b/release/src/router/openssl/ssl/ssl_stat.o deleted file mode 100644 index 0dfb3d440cb1a914f5bb4bf762f682db812e06fd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 25408 zcwX(Ce|Qwt)yMCKI53Jr5EL!yf>BU0WF`qDzO*Gj_@N-g1PCe$OR|ti*o55;g3=n$ z*P>F37Asn6X-lnI+M?3dR%+3rMMcF*m0E1kqNNoTEpKbBZQt*?=L~bQ*#zF_dE0*q z&yzXlGxx{Lz31#bXJ)QmH+IsvNF-u{e-YEmgk;R{5ytfFYpRPa4Kt^iQ;q&N$e7#B z|KZo7DOQOm6!nSxS9j!2?EipgQa&;n_ zO2^W1w3!p1+meh&YilP(n-WdwrdV^+HL-M4OCl_b)z`;c)18Zh^7@uUB3_@R0(F{* z&uhV1Iuo6X8mY#3Lp0TfE>o$wZOzR~q+T)})I^6(t&Q*L9E)7++dGHbaxe4UCT zs8e|ab*jQTdamU6P~J^h*7@%+4c(PjWRz!`z00zSZptb%#+&IBU6xg3>$8JPbYEVP zweLfd*mYS&H)WMsuG!`MW^=P_eRt`n*$kx1gQYRkQ4d$=NczdNTedn?hw98IDJ<*Y zRH|C%I-Px<>lAgf-efJS2+F!%Z?ctDWG(ABi`|!3WGN@7i!ZKkj3wr&^`e_P71`_P z>jblYxcdo%WaoM*L@SD5>8ASm@pL$!-PFlCuMI7UF2`ld)OZfRj&@V$NcyQff;v@Q z)ahiX!_}$CtfMXxuF8k4(|KInJ*N!ORBOCGOFy0Kbm~VhAX(3Mv}e}Kc3Y}_tmuC-S-IZ5#F7I^t?#gX@e)h73Ss%U1kDyM4If7?6bYy!V z4={(G=Zy3kYltUVpVQJn&sJ4+l@q3;<7ty8)=iEYQ+?s&3#USsi>wrh@lBZs=~vc{ zos31nuMK47gjwYx(T_jAmYHOQJ%91Ua*@pAr2aT5uN1C4#FZkeY(LYbzvd5x6UNO|1^zCV%ySK9hA&S2bZm!diuf1QlK zPR3s+ty_OGX5GFe~pa4M#fuH8O+~wDQA0=A<9Ksh9NB1R34Hz zUj;F}Tx5m(PQX{kl8L6oJTn*Zwi&;lI{b~p-!%HG#@|HzW+p>kY)l3Is!%uqfAm|a zz~40dRo38dEdJ2wLbR#Extb|p^j{8}RZ-cc#*9V1>glLci$9#3200n$rcwD6`pu$G zaK(i1y-juP#As6k7N4dx{k%)>tyOAdZJoWA9mBtk|1FOIio*m|Czx z&TVeF`p_KFJjd)CrYL5r$=0PYH{i0#WD9i{^mph4?gxXwt)|k+rh0yX)0%8ax74>Z z(-NGLcS21V?_AukUH?<@`nDt+qA7vkR8a4OMjNws=-@qf^(Z#iuk2xR@)t$s^fhMr7fj!r{Dq?T=o_Bz3;i>q z=Rsd8dKCJ#q7R0Cjp&8Ymx%5`Uo83<=vRwguKKTr-X{7b(9@#VKu?KY3q2|NY;~V8 z=&ho+LT?d$A@qdk?a(h2eHHXo!Fcm>@}CXH2z_NRM(DQ$V}yQlFh=M%iGDWpk3=5| z{jb5;p)U`{4t-fLcIfTF*r8t+j2-%CgR$p@^E_MCkE!~ts{TS%KbaTWC6yQ2r9CgS z%d))CF01lFyWEx++GSl{XqT_$g?8DP7uw~)ywEON@M_y=`7xO~9?14T` z^w*(}4d%aJPX67&{6oJhn1ASNg87Gjr|2e{lfTul-UIpzqW6XVf#`YA-xs|f^aG+t zp}!~kVCe6PUI_gi(LLzs;FS-Z4x9DS_A18V_^kYS@hVF`f3G`l~&xYPp^cZwU z^j1}Wp{n1m>Mv9ES3y5U^xL54ioOnd57EB{JxBD7(0?xDeGvLnqHlrzr09Z@u&w*Z@lRqHP zXJd?JPJddtaj@rlnLRy_G30Cgs5~l<%74Gq`BW+LsRPKTjt|xV=)Fb%0D7+cj*s*= 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 M^N9;0oTo$nFTd8%=Kufz diff --git a/release/src/router/openssl/ssl/ssl_txt.o b/release/src/router/openssl/ssl/ssl_txt.o deleted file mode 100644 index 7517ac9d74295008f9eb473ba58de76075532549..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 5132 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 diff --git a/release/src/router/openssl/ssl/t1_enc.o b/release/src/router/openssl/ssl/t1_enc.o deleted file mode 100644 index c90476b741d32ee67a35bd3b555f4482bf144ef8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 15948 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 Yi+h?;{TYS7uiC4sy{X#DB6+U=2aCdfn*aa+ diff --git a/release/src/router/openssl/ssl/t1_lib.o b/release/src/router/openssl/ssl/t1_lib.o deleted file mode 100644 index e401f3c9012f4858397e4fe14b12ccb637849b90..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 20396 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 J#q$pY?|&;0K|lZi diff --git a/release/src/router/openssl/ssl/t1_srvr.o b/release/src/router/openssl/ssl/t1_srvr.o deleted file mode 100644 index 64f70544f2666d26b02f6c6acdcd028d21a3bfd2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 4424 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 WFRc^8A5v;khNX;1*&}64%6|b@C58w9 diff --git a/release/src/router/openvpn/Makefile b/release/src/router/openvpn/Makefile index 5422938811..45aa1bbf78 100644 --- a/release/src/router/openvpn/Makefile +++ b/release/src/router/openvpn/Makefile @@ -179,19 +179,19 @@ distuninstallcheck_listfiles = find . -type f -print am__distuninstallcheck_listfiles = $(distuninstallcheck_listfiles) \ | sed 's|^\./|$(prefix)/|' | grep -v '$(infodir)/dir$$' distcleancheck_listfiles = find . -type f -print -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/openvpn/missing --run aclocal-1.11 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/openvpn/missing --run aclocal-1.11 AMTAR = $${TAR-tar} AR = mipsel-uclibc-ar AS = mipsel-uclibc-as -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/openvpn/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/openvpn/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/openvpn/missing --run automake-1.11 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/openvpn/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/openvpn/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/openvpn/missing --run automake-1.11 AWK = gawk CC = mipsel-uclibc-gcc CCDEPMODE = depmode=gcc3 CFLAGS = -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections CPP = mipsel-uclibc-gcc -E -CPPFLAGS = -I/home/vicente/tomato/release/src-rt/router/lzo/include -I/home/vicente/tomato/release/src-rt/router/openssl/include +CPPFLAGS = -I/home/vicente/repos/tomato/release/src-rt/router/lzo/include -I/home/vicente/repos/tomato/release/src-rt/router/openssl/include CYGPATH_W = echo DEFS = -DHAVE_CONFIG_H DEPDIR = .deps @@ -215,7 +215,7 @@ INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = $(install_sh) -c -s IPROUTE = /sbin/ip LD = mipsel-uclibc-ld -LDFLAGS = -L/home/vicente/tomato/release/src-rt/router/openssl -L/home/vicente/tomato/release/src-rt/router/lzo/src/.libs -ffunction-sections -fdata-sections -Wl,--gc-sections +LDFLAGS = -L/home/vicente/repos/tomato/release/src-rt/router/openssl -L/home/vicente/repos/tomato/release/src-rt/router/lzo/src/.libs -ffunction-sections -fdata-sections -Wl,--gc-sections LIBOBJS = LIBPAM_CFLAGS = LIBPAM_LIBS = @@ -226,7 +226,7 @@ LN_S = ln -s LTLIBOBJS = LZO_CFLAGS = LZO_LIBS = -llzo2 -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/openvpn/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/openvpn/missing --run makeinfo MAN2HTML = MKDIR_P = /bin/mkdir -p NETSTAT = netstat @@ -236,10 +236,10 @@ OBJDUMP = mipsel-linux-objdump OBJEXT = o OPENSSL_CRYPTO_CFLAGS = OPENSSL_CRYPTO_LIBS = -lcrypto -OPENSSL_SSL_CFLAGS = -I/home/vicente/tomato/release/src-rt/router/openssl/include -OPENSSL_SSL_LIBS = -L/home/vicente/tomato/release/src-rt/router/openssl -lssl -OPTIONAL_CRYPTO_CFLAGS = -I/home/vicente/tomato/release/src-rt/router/openssl/include -OPTIONAL_CRYPTO_LIBS = -L/home/vicente/tomato/release/src-rt/router/openssl -lssl -lcrypto +OPENSSL_SSL_CFLAGS = -I/home/vicente/repos/tomato/release/src-rt/router/openssl/include +OPENSSL_SSL_LIBS = -L/home/vicente/repos/tomato/release/src-rt/router/openssl -lssl +OPTIONAL_CRYPTO_CFLAGS = -I/home/vicente/repos/tomato/release/src-rt/router/openssl/include +OPTIONAL_CRYPTO_LIBS = -L/home/vicente/repos/tomato/release/src-rt/router/openssl -lssl -lcrypto OPTIONAL_DL_LIBS = OPTIONAL_LZO_CFLAGS = OPTIONAL_LZO_LIBS = -llzo2 @@ -279,10 +279,10 @@ TAP_WIN_COMPONENT_ID = tap0901 TAP_WIN_MIN_MAJOR = 9 TAP_WIN_MIN_MINOR = 9 VERSION = 2.3.0 -abs_builddir = /home/vicente/tomato/release/src/router/openvpn -abs_srcdir = /home/vicente/tomato/release/src/router/openvpn -abs_top_builddir = /home/vicente/tomato/release/src/router/openvpn -abs_top_srcdir = /home/vicente/tomato/release/src/router/openvpn +abs_builddir = /home/vicente/repos/tomato/release/src/router/openvpn +abs_srcdir = /home/vicente/repos/tomato/release/src/router/openvpn +abs_top_builddir = /home/vicente/repos/tomato/release/src/router/openvpn +abs_top_srcdir = /home/vicente/repos/tomato/release/src/router/openvpn ac_ct_CC = ac_ct_DUMPBIN = am__include = include @@ -310,7 +310,7 @@ host_vendor = unknown htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = ${SHELL} /home/vicente/tomato/release/src/router/openvpn/install-sh +install_sh = ${SHELL} /home/vicente/repos/tomato/release/src/router/openvpn/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = ${datarootdir}/locale diff --git a/release/src/router/pcre/Makefile b/release/src/router/pcre/Makefile index b9ee446fd0..0db240a82a 100644 --- a/release/src/router/pcre/Makefile +++ b/release/src/router/pcre/Makefile @@ -483,14 +483,14 @@ distuninstallcheck_listfiles = find . -type f -print am__distuninstallcheck_listfiles = $(distuninstallcheck_listfiles) \ | sed 's|^\./|$(prefix)/|' | grep -v '$(infodir)/dir$$' distcleancheck_listfiles = find . -type f -print -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/pcre/missing --run aclocal-1.11 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/pcre/missing --run aclocal-1.11 AMTAR = $${TAR-tar} AM_DEFAULT_VERBOSITY = 0 AR = mipsel-uclibc-ar AS = mipsel-uclibc-as -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/pcre/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/pcre/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/pcre/missing --run automake-1.11 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/pcre/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/pcre/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/pcre/missing --run automake-1.11 AWK = gawk CC = mipsel-uclibc-gcc CCDEPMODE = depmode=none @@ -542,7 +542,7 @@ LIBZ = LIPO = LN_S = ln -s LTLIBOBJS = -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/pcre/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/pcre/missing --run makeinfo MANIFEST_TOOL = : MKDIR_P = /bin/mkdir -p NM = mipsel-uclibc-nm @@ -581,10 +581,10 @@ VALGRIND_LIBS = VERSION = 8.32 VISIBILITY_CFLAGS = -fvisibility=hidden VISIBILITY_CXXFLAGS = -fvisibility=hidden -fvisibility-inlines-hidden -abs_builddir = /home/vicente/tomato/release/src/router/pcre -abs_srcdir = /home/vicente/tomato/release/src/router/pcre -abs_top_builddir = /home/vicente/tomato/release/src/router/pcre -abs_top_srcdir = /home/vicente/tomato/release/src/router/pcre +abs_builddir = /home/vicente/repos/tomato/release/src/router/pcre +abs_srcdir = /home/vicente/repos/tomato/release/src/router/pcre +abs_top_builddir = /home/vicente/repos/tomato/release/src/router/pcre +abs_top_srcdir = /home/vicente/repos/tomato/release/src/router/pcre ac_ct_AR = ac_ct_CC = ac_ct_CXX = @@ -619,7 +619,7 @@ host_vendor = unknown htmldir = ${docdir}/html includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = ${SHELL} /home/vicente/tomato/release/src/router/pcre/install-sh +install_sh = ${SHELL} /home/vicente/repos/tomato/release/src/router/pcre/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = ${datarootdir}/locale diff --git a/release/src/router/pcre/config.log b/release/src/router/pcre/config.log deleted file mode 100644 index 0ed4b77277..0000000000 --- a/release/src/router/pcre/config.log +++ /dev/null @@ -1,1570 +0,0 @@ -This file contains any messages produced by compilers while -running configure, to aid debugging if configure makes a mistake. - -It was created by PCRE configure 8.32, which was -generated by GNU Autoconf 2.68. Invocation command line was - - $ ./configure --host=mipsel-linux --build=x86_64-linux-gnu --prefix=/usr --disable-dependency-tracking --enable-utf8 --enable-unicode-properties --disable-cpp - -## --------- ## -## Platform. ## -## --------- ## - -hostname = vicente-P5K-E -uname -m = x86_64 -uname -r = 3.2.0-47-generic -uname -s = Linux -uname -v = #72-Ubuntu SMP Mon Jun 3 17:53:49 UTC 2013 - -/usr/bin/uname -p = unknown -/bin/uname -X = unknown - -/bin/arch = unknown -/usr/bin/arch -k = unknown -/usr/convex/getsysinfo = unknown -/usr/bin/hostinfo = unknown -/bin/machine = unknown -/usr/bin/oslevel = unknown -/bin/universe = unknown - -PATH: /home/vicente/tomato/release/tools -PATH: /home/vicente/tomato/release/tools -PATH: /home/vicente/tomato/release/tools -PATH: /home/vicente/tomato/release/tools -PATH: /opt/brcm/hndtools-mipsel-uclibc/bin -PATH: /opt/brcm/hndtools-mipsel-linux/bin -PATH: /usr/lib/lightdm/lightdm -PATH: /usr/local/sbin -PATH: /usr/local/bin -PATH: /usr/sbin -PATH: /usr/bin -PATH: /sbin -PATH: /bin -PATH: /usr/games - - -## ----------- ## -## Core tests. ## -## ----------- ## - -configure:2783: checking for a BSD-compatible install -configure:2851: result: /usr/bin/install -c -configure:2862: checking whether build environment is sane -configure:2912: result: yes -configure:2961: checking for mipsel-linux-strip -configure:2988: result: mipsel-uclibc-strip -R .note -R .comment -configure:3053: checking for a thread-safe mkdir -p -configure:3092: result: /bin/mkdir -p -configure:3105: checking for gawk -configure:3121: found /usr/bin/gawk -configure:3132: result: gawk -configure:3143: checking whether make sets $(MAKE) -configure:3165: result: yes -configure:3256: checking whether make supports nested variables -configure:3273: result: yes -configure:3311: checking for mipsel-linux-gcc -configure:3338: result: mipsel-uclibc-gcc -configure:3607: checking for C compiler version -configure:3616: mipsel-uclibc-gcc --version >&5 -mipsel-uclibc-gcc (GCC) 4.2.4 -Copyright (C) 2007 Free Software Foundation, Inc. -This is free software; see the source for copying conditions. There is NO -warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - -configure:3627: $? = 0 -configure:3616: mipsel-uclibc-gcc -v >&5 -Using built-in specs. -Target: mipsel-linux-uclibc -Configured with: /home/fedork/tomato/toolchain/build_dir/toolchain-mipsel_gcc4.2.4/gcc-4.2.4/configure --prefix=/opt/brcm/hndtools-mipsel-uclibc-4.2.4 --build=i486-linux-gnu --host=i486-linux-gnu --target=mipsel-linux-uclibc --with-gnu-ld --enable-target-optspace --disable-libgomp --disable-libmudflap --disable-multilib --disable-nls --disable-__cxa_atexit --enable-libssp --enable-languages=c,c++ --enable-shared --enable-threads --enable-tls -Thread model: posix -gcc version 4.2.4 -configure:3627: $? = 0 -configure:3616: mipsel-uclibc-gcc -V >&5 -mipsel-uclibc-gcc: '-V' option must have argument -configure:3627: $? = 1 -configure:3616: mipsel-uclibc-gcc -qversion >&5 -mipsel-uclibc-gcc: unrecognized option '-qversion' -mipsel-uclibc-gcc: no input files -configure:3627: $? = 1 -configure:3647: checking whether the C compiler works -configure:3669: mipsel-uclibc-gcc -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:3673: $? = 0 -configure:3721: result: yes -configure:3724: checking for C compiler default output file name -configure:3726: result: a.out -configure:3732: checking for suffix of executables -configure:3739: mipsel-uclibc-gcc -o conftest -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:3743: $? = 0 -configure:3765: result: -configure:3787: checking whether we are cross compiling -configure:3825: result: yes -configure:3830: checking for suffix of object files -configure:3852: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:3856: $? = 0 -configure:3877: result: o -configure:3881: checking whether we are using the GNU C compiler -configure:3900: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:3900: $? = 0 -configure:3909: result: yes -configure:3918: checking whether mipsel-uclibc-gcc accepts -g -configure:3938: mipsel-uclibc-gcc -c -g conftest.c >&5 -configure:3938: $? = 0 -configure:3979: result: yes -configure:3996: checking for mipsel-uclibc-gcc option to accept ISO C89 -configure:4060: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:4060: $? = 0 -configure:4073: result: none needed -configure:4104: checking for style of include used by make -configure:4132: result: GNU -configure:4158: checking dependency style of mipsel-uclibc-gcc -configure:4269: result: none -configure:4396: checking for C++ compiler version -configure:4405: mipsel-uclibc-g++ --version >&5 -mipsel-uclibc-g++ (GCC) 4.2.4 -Copyright (C) 2007 Free Software Foundation, Inc. -This is free software; see the source for copying conditions. There is NO -warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - -configure:4416: $? = 0 -configure:4405: mipsel-uclibc-g++ -v >&5 -Using built-in specs. -Target: mipsel-linux-uclibc -Configured with: /home/fedork/tomato/toolchain/build_dir/toolchain-mipsel_gcc4.2.4/gcc-4.2.4/configure --prefix=/opt/brcm/hndtools-mipsel-uclibc-4.2.4 --build=i486-linux-gnu --host=i486-linux-gnu --target=mipsel-linux-uclibc --with-gnu-ld --enable-target-optspace --disable-libgomp --disable-libmudflap --disable-multilib --disable-nls --disable-__cxa_atexit --enable-libssp --enable-languages=c,c++ --enable-shared --enable-threads --enable-tls -Thread model: posix -gcc version 4.2.4 -configure:4416: $? = 0 -configure:4405: mipsel-uclibc-g++ -V >&5 -mipsel-uclibc-g++: '-V' option must have argument -configure:4416: $? = 1 -configure:4405: mipsel-uclibc-g++ -qversion >&5 -mipsel-uclibc-g++: unrecognized option '-qversion' -mipsel-uclibc-g++: no input files -configure:4416: $? = 1 -configure:4420: checking whether we are using the GNU C++ compiler -configure:4439: mipsel-uclibc-g++ -c conftest.cpp >&5 -configure:4439: $? = 0 -configure:4448: result: yes -configure:4457: checking whether mipsel-uclibc-g++ accepts -g -configure:4477: mipsel-uclibc-g++ -c -g conftest.cpp >&5 -configure:4477: $? = 0 -configure:4518: result: yes -configure:4543: checking dependency style of mipsel-uclibc-g++ -configure:4654: result: none -configure:4670: checking whether mipsel-uclibc-gcc and cc understand -c and -o together -configure:4701: mipsel-uclibc-gcc -c conftest.c -o conftest2.o >&5 -configure:4705: $? = 0 -configure:4711: mipsel-uclibc-gcc -c conftest.c -o conftest2.o >&5 -configure:4715: $? = 0 -configure:4726: cc -c conftest.c >&5 -configure:4730: $? = 0 -configure:4738: cc -c conftest.c -o conftest2.o >&5 -configure:4742: $? = 0 -configure:4748: cc -c conftest.c -o conftest2.o >&5 -configure:4752: $? = 0 -configure:4770: result: yes -configure:4838: mipsel-uclibc-g++ -c -O2 conftest.cpp >&5 -configure:4838: $? = 0 -configure:4858: checking how to run the C preprocessor -configure:4889: mipsel-uclibc-gcc -E conftest.c -configure:4889: $? = 0 -configure:4903: mipsel-uclibc-gcc -E conftest.c -conftest.c:11:28: error: ac_nonexistent.h: No such file or directory -configure:4903: $? = 1 -configure: failed program was: -| /* confdefs.h */ -| #define PACKAGE_NAME "PCRE" -| #define PACKAGE_TARNAME "pcre" -| #define PACKAGE_VERSION "8.32" -| #define PACKAGE_STRING "PCRE 8.32" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE_URL "" -| #define PACKAGE "pcre" -| #define VERSION "8.32" -| /* end confdefs.h. */ -| #include -configure:4928: result: mipsel-uclibc-gcc -E -configure:4948: mipsel-uclibc-gcc -E conftest.c -configure:4948: $? = 0 -configure:4962: mipsel-uclibc-gcc -E conftest.c -conftest.c:11:28: error: ac_nonexistent.h: No such file or directory -configure:4962: $? = 1 -configure: failed program was: -| /* confdefs.h */ -| #define PACKAGE_NAME "PCRE" -| #define PACKAGE_TARNAME "pcre" -| #define PACKAGE_VERSION "8.32" -| #define PACKAGE_STRING "PCRE 8.32" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE_URL "" -| #define PACKAGE "pcre" -| #define VERSION "8.32" -| /* end confdefs.h. */ -| #include -configure:4991: checking for grep that handles long lines and -e -configure:5049: result: /bin/grep -configure:5054: checking for egrep -configure:5116: result: /bin/grep -E -configure:5121: checking for ANSI C header files -configure:5141: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:5141: $? = 0 -configure:5225: result: yes -configure:5238: checking for sys/types.h -configure:5238: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:5238: $? = 0 -configure:5238: result: yes -configure:5238: checking for sys/stat.h -configure:5238: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:5238: $? = 0 -configure:5238: result: yes -configure:5238: checking for stdlib.h -configure:5238: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:5238: $? = 0 -configure:5238: result: yes -configure:5238: checking for string.h -configure:5238: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:5238: $? = 0 -configure:5238: result: yes -configure:5238: checking for memory.h -configure:5238: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:5238: $? = 0 -configure:5238: result: yes -configure:5238: checking for strings.h -configure:5238: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:5238: $? = 0 -configure:5238: result: yes -configure:5238: checking for inttypes.h -configure:5238: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:5238: $? = 0 -configure:5238: result: yes -configure:5238: checking for stdint.h -configure:5238: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:5238: $? = 0 -configure:5238: result: yes -configure:5238: checking for unistd.h -configure:5238: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:5238: $? = 0 -configure:5238: result: yes -configure:5250: checking for int64_t -configure:5250: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:5250: $? = 0 -configure:5250: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -conftest.c: In function 'main': -conftest.c:59: warning: integer overflow in expression -conftest.c:59: error: size of array 'test_array' is negative -configure:5250: $? = 1 -configure: failed program was: -| /* confdefs.h */ -| #define PACKAGE_NAME "PCRE" -| #define PACKAGE_TARNAME "pcre" -| #define PACKAGE_VERSION "8.32" -| #define PACKAGE_STRING "PCRE 8.32" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE_URL "" -| #define PACKAGE "pcre" -| #define VERSION "8.32" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| /* end confdefs.h. */ -| #include -| #ifdef HAVE_SYS_TYPES_H -| # include -| #endif -| #ifdef HAVE_SYS_STAT_H -| # include -| #endif -| #ifdef STDC_HEADERS -| # include -| # include -| #else -| # ifdef HAVE_STDLIB_H -| # include -| # endif -| #endif -| #ifdef HAVE_STRING_H -| # if !defined STDC_HEADERS && defined HAVE_MEMORY_H -| # include -| # endif -| # include -| #endif -| #ifdef HAVE_STRINGS_H -| # include -| #endif -| #ifdef HAVE_INTTYPES_H -| # include -| #endif -| #ifdef HAVE_STDINT_H -| # include -| #endif -| #ifdef HAVE_UNISTD_H -| # include -| #endif -| enum { N = 64 / 2 - 1 }; -| int -| main () -| { -| static int test_array [1 - 2 * !((int64_t) (((((int64_t) 1 << N) << N) - 1) * 2 + 1) -| < (int64_t) (((((int64_t) 1 << N) << N) - 1) * 2 + 2))]; -| test_array [0] = 0 -| -| ; -| return 0; -| } -configure:5250: result: yes -configure:5267: checking build system type -configure:5281: result: x86_64-pc-linux-gnu -configure:5301: checking host system type -configure:5314: result: mipsel-unknown-linux-gnu -configure:5683: checking how to print strings -configure:5710: result: printf -configure:5731: checking for a sed that does not truncate output -configure:5795: result: /bin/sed -configure:5813: checking for fgrep -configure:5875: result: /bin/grep -F -configure:5910: checking for ld used by mipsel-uclibc-gcc -configure:5977: result: mipsel-uclibc-ld -configure:5984: checking if the linker (mipsel-uclibc-ld) is GNU ld -configure:5999: result: yes -configure:6011: checking for BSD- or MS-compatible name lister (nm) -configure:6060: result: mipsel-uclibc-nm -configure:6190: checking the name lister (mipsel-uclibc-nm) interface -configure:6197: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:6200: mipsel-uclibc-nm "conftest.o" -configure:6203: output -00000000 B some_variable -configure:6210: result: BSD nm -configure:6213: checking whether ln -s works -configure:6217: result: yes -configure:6225: checking the maximum length of command line arguments -configure:6350: result: 3458764513820540925 -configure:6367: checking whether the shell understands some XSI constructs -configure:6377: result: yes -configure:6381: checking whether the shell understands "+=" -configure:6387: result: yes -configure:6422: checking how to convert x86_64-pc-linux-gnu file names to mipsel-unknown-linux-gnu format -configure:6462: result: func_convert_file_noop -configure:6469: checking how to convert x86_64-pc-linux-gnu file names to toolchain format -configure:6489: result: func_convert_file_noop -configure:6496: checking for mipsel-uclibc-ld option to reload object files -configure:6503: result: -r -configure:6537: checking for mipsel-linux-objdump -configure:6564: result: objdump -configure:6633: checking how to recognize dependent libraries -configure:6835: result: pass_all -configure:6880: checking for mipsel-linux-dlltool -configure:6907: result: dlltool -configure:6977: checking how to associate runtime and link libraries -configure:7004: result: printf %s\n -configure:7020: checking for mipsel-linux-ar -configure:7047: result: mipsel-uclibc-ar -configure:7128: checking for archiver @FILE support -configure:7145: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:7145: $? = 0 -configure:7148: mipsel-uclibc-ar cru libconftest.a @conftest.lst >&5 -configure:7151: $? = 0 -configure:7156: mipsel-uclibc-ar cru libconftest.a @conftest.lst >&5 -mipsel-uclibc-ar: conftest.o: No such file or directory -configure:7159: $? = 1 -configure:7171: result: @ -configure:7189: checking for mipsel-linux-strip -configure:7216: result: mipsel-uclibc-strip -R .note -R .comment -configure:7288: checking for mipsel-linux-ranlib -configure:7315: result: mipsel-uclibc-ranlib -configure:7457: checking command to parse mipsel-uclibc-nm output from mipsel-uclibc-gcc object -configure:7576: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:7579: $? = 0 -configure:7583: mipsel-uclibc-nm conftest.o \| sed -n -e 's/^.*[ ]\([ABCDGIRSTW][ABCDGIRSTW]*\)[ ][ ]*\([_A-Za-z][_A-Za-z0-9]*\)$/\1 \2 \2/p' | sed '/ __gnu_lto/d' \> conftest.nm -configure:7586: $? = 0 -configure:7652: mipsel-uclibc-gcc -o conftest -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c conftstm.o >&5 -configure:7655: $? = 0 -configure:7693: result: ok -configure:7730: checking for sysroot -configure:7760: result: no -configure:7963: checking for mipsel-linux-mt -configure:7993: result: no -configure:8003: checking for mt -configure:8019: found /bin/mt -configure:8030: result: mt -configure:8042: WARNING: using cross tools not prefixed with host triplet -configure:8053: checking if mt is a manifest tool -configure:8059: mt '-?' -configure:8067: result: no -configure:8696: checking for dlfcn.h -configure:8696: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:8696: $? = 0 -configure:8696: result: yes -configure:8891: checking for objdir -configure:8906: result: .libs -configure:9177: checking if mipsel-uclibc-gcc supports -fno-rtti -fno-exceptions -configure:9195: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fno-rtti -fno-exceptions conftest.c >&5 -cc1: warning: command line option "-fno-rtti" is valid for C++/ObjC++ but not for C -configure:9199: $? = 0 -configure:9212: result: no -configure:9522: checking for mipsel-uclibc-gcc option to produce PIC -configure:9529: result: -fPIC -DPIC -configure:9537: checking if mipsel-uclibc-gcc PIC flag -fPIC -DPIC works -configure:9555: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fPIC -DPIC -DPIC conftest.c >&5 -configure:9559: $? = 0 -configure:9572: result: yes -configure:9601: checking if mipsel-uclibc-gcc static flag -static works -configure:9629: result: yes -configure:9644: checking if mipsel-uclibc-gcc supports -c -o file.o -configure:9665: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -o out/conftest2.o conftest.c >&5 -configure:9669: $? = 0 -configure:9691: result: yes -configure:9699: checking if mipsel-uclibc-gcc supports -c -o file.o -configure:9746: result: yes -configure:9779: checking whether the mipsel-uclibc-gcc linker (mipsel-uclibc-ld) supports shared libraries -configure:10937: result: yes -configure:10974: checking whether -lc should be explicitly linked in -configure:10982: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:10985: $? = 0 -configure:11000: mipsel-uclibc-gcc -shared -fPIC -DPIC conftest.o -v -Wl,-soname -Wl,conftest -o conftest 2\>\&1 \| /bin/grep -lc \>/dev/null 2\>\&1 -configure:11003: $? = 0 -configure:11017: result: no -configure:11182: checking dynamic linker characteristics -configure:11709: mipsel-uclibc-gcc -o conftest -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -Wl,-rpath -Wl,/foo conftest.c >&5 -configure:11709: $? = 0 -configure:11931: result: GNU/Linux ld.so -configure:12038: checking how to hardcode library paths into programs -configure:12063: result: immediate -configure:12603: checking whether stripping libraries is possible -configure:12608: result: yes -configure:12643: checking if libtool supports shared libraries -configure:12645: result: yes -configure:12648: checking whether to build shared libraries -configure:12669: result: yes -configure:12672: checking whether to build static libraries -configure:12676: result: yes -configure:12699: checking how to run the C++ preprocessor -configure:12726: mipsel-uclibc-g++ -E conftest.cpp -configure:12726: $? = 0 -configure:12740: mipsel-uclibc-g++ -E conftest.cpp -conftest.cpp:23:28: error: ac_nonexistent.h: No such file or directory -configure:12740: $? = 1 -configure: failed program was: -| /* confdefs.h */ -| #define PACKAGE_NAME "PCRE" -| #define PACKAGE_TARNAME "pcre" -| #define PACKAGE_VERSION "8.32" -| #define PACKAGE_STRING "PCRE 8.32" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE_URL "" -| #define PACKAGE "pcre" -| #define VERSION "8.32" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_DLFCN_H 1 -| #define LT_OBJDIR ".libs/" -| /* end confdefs.h. */ -| #include -configure:12765: result: mipsel-uclibc-g++ -E -configure:12785: mipsel-uclibc-g++ -E conftest.cpp -configure:12785: $? = 0 -configure:12799: mipsel-uclibc-g++ -E conftest.cpp -conftest.cpp:23:28: error: ac_nonexistent.h: No such file or directory -configure:12799: $? = 1 -configure: failed program was: -| /* confdefs.h */ -| #define PACKAGE_NAME "PCRE" -| #define PACKAGE_TARNAME "pcre" -| #define PACKAGE_VERSION "8.32" -| #define PACKAGE_STRING "PCRE 8.32" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE_URL "" -| #define PACKAGE "pcre" -| #define VERSION "8.32" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_DLFCN_H 1 -| #define LT_OBJDIR ".libs/" -| /* end confdefs.h. */ -| #include -configure:12969: checking for ld used by mipsel-uclibc-g++ -configure:13036: result: mipsel-uclibc-ld -configure:13043: checking if the linker (mipsel-uclibc-ld) is GNU ld -configure:13058: result: yes -configure:13113: checking whether the mipsel-uclibc-g++ linker (mipsel-uclibc-ld) supports shared libraries -configure:14117: result: yes -configure:14152: mipsel-uclibc-g++ -c -O2 conftest.cpp >&5 -configure:14155: $? = 0 -configure:14675: checking for mipsel-uclibc-g++ option to produce PIC -configure:14682: result: -fPIC -DPIC -configure:14690: checking if mipsel-uclibc-g++ PIC flag -fPIC -DPIC works -configure:14708: mipsel-uclibc-g++ -c -O2 -fPIC -DPIC -DPIC conftest.cpp >&5 -configure:14712: $? = 0 -configure:14725: result: yes -configure:14748: checking if mipsel-uclibc-g++ static flag -static works -configure:14776: result: yes -configure:14788: checking if mipsel-uclibc-g++ supports -c -o file.o -configure:14809: mipsel-uclibc-g++ -c -O2 -o out/conftest2.o conftest.cpp >&5 -configure:14813: $? = 0 -configure:14835: result: yes -configure:14840: checking if mipsel-uclibc-g++ supports -c -o file.o -configure:14887: result: yes -configure:14917: checking whether the mipsel-uclibc-g++ linker (mipsel-uclibc-ld) supports shared libraries -configure:14951: result: yes -configure:15094: checking dynamic linker characteristics -configure:15777: result: GNU/Linux ld.so -configure:15830: checking how to hardcode library paths into programs -configure:15855: result: immediate -configure:15914: checking whether ln -s works -configure:15918: result: yes -configure:15934: checking whether the -Werror option is usable -configure:15953: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -Werror conftest.c >&5 -configure:15953: $? = 0 -configure:15962: result: yes -configure:15964: checking for simple visibility declarations -configure:15991: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fvisibility=hidden -Werror conftest.c >&5 -configure:15991: $? = 0 -configure:16000: result: yes -configure:16459: checking for ANSI C header files -configure:16563: result: yes -configure:16574: checking limits.h usability -configure:16574: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:16574: $? = 0 -configure:16574: result: yes -configure:16574: checking limits.h presence -configure:16574: mipsel-uclibc-gcc -E conftest.c -configure:16574: $? = 0 -configure:16574: result: yes -configure:16574: checking for limits.h -configure:16574: result: yes -configure:16574: checking for sys/types.h -configure:16574: result: yes -configure:16574: checking for sys/stat.h -configure:16574: result: yes -configure:16574: checking dirent.h usability -configure:16574: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:16574: $? = 0 -configure:16574: result: yes -configure:16574: checking dirent.h presence -configure:16574: mipsel-uclibc-gcc -E conftest.c -configure:16574: $? = 0 -configure:16574: result: yes -configure:16574: checking for dirent.h -configure:16574: result: yes -configure:16574: checking windows.h usability -configure:16574: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -conftest.c:69:21: error: windows.h: No such file or directory -configure:16574: $? = 1 -configure: failed program was: -| /* confdefs.h */ -| #define PACKAGE_NAME "PCRE" -| #define PACKAGE_TARNAME "pcre" -| #define PACKAGE_VERSION "8.32" -| #define PACKAGE_STRING "PCRE 8.32" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE_URL "" -| #define PACKAGE "pcre" -| #define VERSION "8.32" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_DLFCN_H 1 -| #define LT_OBJDIR ".libs/" -| #define PCRE_EXP_DECL extern __attribute__ ((visibility ("default"))) -| #define PCRE_EXP_DEFN __attribute__ ((visibility ("default"))) -| #define PCRE_EXP_DATA_DEFN __attribute__ ((visibility ("default"))) -| #define PCREPOSIX_EXP_DECL extern __attribute__ ((visibility ("default"))) -| #define PCREPOSIX_EXP_DEFN extern __attribute__ ((visibility ("default"))) -| #define PCRECPP_EXP_DECL extern __attribute__ ((visibility ("default"))) -| #define PCRECPP_EXP_DEFN __attribute__ ((visibility ("default"))) -| #define HAVE_VISIBILITY 1 -| #define STDC_HEADERS 1 -| #define HAVE_LIMITS_H 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_DIRENT_H 1 -| /* end confdefs.h. */ -| #include -| #ifdef HAVE_SYS_TYPES_H -| # include -| #endif -| #ifdef HAVE_SYS_STAT_H -| # include -| #endif -| #ifdef STDC_HEADERS -| # include -| # include -| #else -| # ifdef HAVE_STDLIB_H -| # include -| # endif -| #endif -| #ifdef HAVE_STRING_H -| # if !defined STDC_HEADERS && defined HAVE_MEMORY_H -| # include -| # endif -| # include -| #endif -| #ifdef HAVE_STRINGS_H -| # include -| #endif -| #ifdef HAVE_INTTYPES_H -| # include -| #endif -| #ifdef HAVE_STDINT_H -| # include -| #endif -| #ifdef HAVE_UNISTD_H -| # include -| #endif -| #include -configure:16574: result: no -configure:16574: checking windows.h presence -configure:16574: mipsel-uclibc-gcc -E conftest.c -conftest.c:36:21: error: windows.h: No such file or directory -configure:16574: $? = 1 -configure: failed program was: -| /* confdefs.h */ -| #define PACKAGE_NAME "PCRE" -| #define PACKAGE_TARNAME "pcre" -| #define PACKAGE_VERSION "8.32" -| #define PACKAGE_STRING "PCRE 8.32" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE_URL "" -| #define PACKAGE "pcre" -| #define VERSION "8.32" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_DLFCN_H 1 -| #define LT_OBJDIR ".libs/" -| #define PCRE_EXP_DECL extern __attribute__ ((visibility ("default"))) -| #define PCRE_EXP_DEFN __attribute__ ((visibility ("default"))) -| #define PCRE_EXP_DATA_DEFN __attribute__ ((visibility ("default"))) -| #define PCREPOSIX_EXP_DECL extern __attribute__ ((visibility ("default"))) -| #define PCREPOSIX_EXP_DEFN extern __attribute__ ((visibility ("default"))) -| #define PCRECPP_EXP_DECL extern __attribute__ ((visibility ("default"))) -| #define PCRECPP_EXP_DEFN __attribute__ ((visibility ("default"))) -| #define HAVE_VISIBILITY 1 -| #define STDC_HEADERS 1 -| #define HAVE_LIMITS_H 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_DIRENT_H 1 -| /* end confdefs.h. */ -| #include -configure:16574: result: no -configure:16574: checking for windows.h -configure:16574: result: no -configure:16849: checking for an ANSI C-conforming const -configure:16914: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -conftest.c: In function 'main': -conftest.c:65: warning: 't' is used uninitialized in this function -conftest.c:81: warning: 'b' is used uninitialized in this function -conftest.c:87: warning: 'cs[0]' is used uninitialized in this function -configure:16914: $? = 0 -configure:16921: result: yes -configure:16929: checking for size_t -configure:16929: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:16929: $? = 0 -configure:16929: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -conftest.c: In function 'main': -conftest.c:72: error: expected expression before ')' token -configure:16929: $? = 1 -configure: failed program was: -| /* confdefs.h */ -| #define PACKAGE_NAME "PCRE" -| #define PACKAGE_TARNAME "pcre" -| #define PACKAGE_VERSION "8.32" -| #define PACKAGE_STRING "PCRE 8.32" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE_URL "" -| #define PACKAGE "pcre" -| #define VERSION "8.32" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_DLFCN_H 1 -| #define LT_OBJDIR ".libs/" -| #define PCRE_EXP_DECL extern __attribute__ ((visibility ("default"))) -| #define PCRE_EXP_DEFN __attribute__ ((visibility ("default"))) -| #define PCRE_EXP_DATA_DEFN __attribute__ ((visibility ("default"))) -| #define PCREPOSIX_EXP_DECL extern __attribute__ ((visibility ("default"))) -| #define PCREPOSIX_EXP_DEFN extern __attribute__ ((visibility ("default"))) -| #define PCRECPP_EXP_DECL extern __attribute__ ((visibility ("default"))) -| #define PCRECPP_EXP_DEFN __attribute__ ((visibility ("default"))) -| #define HAVE_VISIBILITY 1 -| #define STDC_HEADERS 1 -| #define HAVE_LIMITS_H 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_DIRENT_H 1 -| /* end confdefs.h. */ -| #include -| #ifdef HAVE_SYS_TYPES_H -| # include -| #endif -| #ifdef HAVE_SYS_STAT_H -| # include -| #endif -| #ifdef STDC_HEADERS -| # include -| # include -| #else -| # ifdef HAVE_STDLIB_H -| # include -| # endif -| #endif -| #ifdef HAVE_STRING_H -| # if !defined STDC_HEADERS && defined HAVE_MEMORY_H -| # include -| # endif -| # include -| #endif -| #ifdef HAVE_STRINGS_H -| # include -| #endif -| #ifdef HAVE_INTTYPES_H -| # include -| #endif -| #ifdef HAVE_STDINT_H -| # include -| #endif -| #ifdef HAVE_UNISTD_H -| # include -| #endif -| int -| main () -| { -| if (sizeof ((size_t))) -| return 0; -| ; -| return 0; -| } -configure:16929: result: yes -configure:16946: checking for bcopy -configure:16946: mipsel-uclibc-gcc -o conftest -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -conftest.c:59: warning: conflicting types for built-in function 'bcopy' -configure:16946: $? = 0 -configure:16946: result: yes -configure:16946: checking for memmove -configure:16946: mipsel-uclibc-gcc -o conftest -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -conftest.c:60: warning: conflicting types for built-in function 'memmove' -configure:16946: $? = 0 -configure:16946: result: yes -configure:16946: checking for strerror -configure:16946: mipsel-uclibc-gcc -o conftest -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:16946: $? = 0 -configure:16946: result: yes -configure:16960: checking zlib.h usability -configure:16960: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -conftest.c:72:18: error: zlib.h: No such file or directory -configure:16960: $? = 1 -configure: failed program was: -| /* confdefs.h */ -| #define PACKAGE_NAME "PCRE" -| #define PACKAGE_TARNAME "pcre" -| #define PACKAGE_VERSION "8.32" -| #define PACKAGE_STRING "PCRE 8.32" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE_URL "" -| #define PACKAGE "pcre" -| #define VERSION "8.32" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_DLFCN_H 1 -| #define LT_OBJDIR ".libs/" -| #define PCRE_EXP_DECL extern __attribute__ ((visibility ("default"))) -| #define PCRE_EXP_DEFN __attribute__ ((visibility ("default"))) -| #define PCRE_EXP_DATA_DEFN __attribute__ ((visibility ("default"))) -| #define PCREPOSIX_EXP_DECL extern __attribute__ ((visibility ("default"))) -| #define PCREPOSIX_EXP_DEFN extern __attribute__ ((visibility ("default"))) -| #define PCRECPP_EXP_DECL extern __attribute__ ((visibility ("default"))) -| #define PCRECPP_EXP_DEFN __attribute__ ((visibility ("default"))) -| #define HAVE_VISIBILITY 1 -| #define STDC_HEADERS 1 -| #define HAVE_LIMITS_H 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_DIRENT_H 1 -| #define HAVE_BCOPY 1 -| #define HAVE_MEMMOVE 1 -| #define HAVE_STRERROR 1 -| /* end confdefs.h. */ -| #include -| #ifdef HAVE_SYS_TYPES_H -| # include -| #endif -| #ifdef HAVE_SYS_STAT_H -| # include -| #endif -| #ifdef STDC_HEADERS -| # include -| # include -| #else -| # ifdef HAVE_STDLIB_H -| # include -| # endif -| #endif -| #ifdef HAVE_STRING_H -| # if !defined STDC_HEADERS && defined HAVE_MEMORY_H -| # include -| # endif -| # include -| #endif -| #ifdef HAVE_STRINGS_H -| # include -| #endif -| #ifdef HAVE_INTTYPES_H -| # include -| #endif -| #ifdef HAVE_STDINT_H -| # include -| #endif -| #ifdef HAVE_UNISTD_H -| # include -| #endif -| #include -configure:16960: result: no -configure:16960: checking zlib.h presence -configure:16960: mipsel-uclibc-gcc -E conftest.c -conftest.c:39:18: error: zlib.h: No such file or directory -configure:16960: $? = 1 -configure: failed program was: -| /* confdefs.h */ -| #define PACKAGE_NAME "PCRE" -| #define PACKAGE_TARNAME "pcre" -| #define PACKAGE_VERSION "8.32" -| #define PACKAGE_STRING "PCRE 8.32" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE_URL "" -| #define PACKAGE "pcre" -| #define VERSION "8.32" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_DLFCN_H 1 -| #define LT_OBJDIR ".libs/" -| #define PCRE_EXP_DECL extern __attribute__ ((visibility ("default"))) -| #define PCRE_EXP_DEFN __attribute__ ((visibility ("default"))) -| #define PCRE_EXP_DATA_DEFN __attribute__ ((visibility ("default"))) -| #define PCREPOSIX_EXP_DECL extern __attribute__ ((visibility ("default"))) -| #define PCREPOSIX_EXP_DEFN extern __attribute__ ((visibility ("default"))) -| #define PCRECPP_EXP_DECL extern __attribute__ ((visibility ("default"))) -| #define PCRECPP_EXP_DEFN __attribute__ ((visibility ("default"))) -| #define HAVE_VISIBILITY 1 -| #define STDC_HEADERS 1 -| #define HAVE_LIMITS_H 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_DIRENT_H 1 -| #define HAVE_BCOPY 1 -| #define HAVE_MEMMOVE 1 -| #define HAVE_STRERROR 1 -| /* end confdefs.h. */ -| #include -configure:16960: result: no -configure:16960: checking for zlib.h -configure:16960: result: no -configure:16970: checking for gzopen in -lz -configure:16995: mipsel-uclibc-gcc -o conftest -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c -lz >&5 -/home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/bin/ld: cannot find -lz -collect2: ld returned 1 exit status -configure:16995: $? = 1 -configure: failed program was: -| /* confdefs.h */ -| #define PACKAGE_NAME "PCRE" -| #define PACKAGE_TARNAME "pcre" -| #define PACKAGE_VERSION "8.32" -| #define PACKAGE_STRING "PCRE 8.32" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE_URL "" -| #define PACKAGE "pcre" -| #define VERSION "8.32" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_DLFCN_H 1 -| #define LT_OBJDIR ".libs/" -| #define PCRE_EXP_DECL extern __attribute__ ((visibility ("default"))) -| #define PCRE_EXP_DEFN __attribute__ ((visibility ("default"))) -| #define PCRE_EXP_DATA_DEFN __attribute__ ((visibility ("default"))) -| #define PCREPOSIX_EXP_DECL extern __attribute__ ((visibility ("default"))) -| #define PCREPOSIX_EXP_DEFN extern __attribute__ ((visibility ("default"))) -| #define PCRECPP_EXP_DECL extern __attribute__ ((visibility ("default"))) -| #define PCRECPP_EXP_DEFN __attribute__ ((visibility ("default"))) -| #define HAVE_VISIBILITY 1 -| #define STDC_HEADERS 1 -| #define HAVE_LIMITS_H 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_DIRENT_H 1 -| #define HAVE_BCOPY 1 -| #define HAVE_MEMMOVE 1 -| #define HAVE_STRERROR 1 -| /* end confdefs.h. */ -| -| /* Override any GCC internal prototype to avoid an error. -| Use char because int might match the return type of a GCC -| builtin and then its argument prototype would still apply. */ -| #ifdef __cplusplus -| extern "C" -| #endif -| char gzopen (); -| int -| main () -| { -| return gzopen (); -| ; -| return 0; -| } -configure:17004: result: no -configure:17029: checking bzlib.h usability -configure:17029: mipsel-uclibc-gcc -c -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -conftest.c:72:19: error: bzlib.h: No such file or directory -configure:17029: $? = 1 -configure: failed program was: -| /* confdefs.h */ -| #define PACKAGE_NAME "PCRE" -| #define PACKAGE_TARNAME "pcre" -| #define PACKAGE_VERSION "8.32" -| #define PACKAGE_STRING "PCRE 8.32" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE_URL "" -| #define PACKAGE "pcre" -| #define VERSION "8.32" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_DLFCN_H 1 -| #define LT_OBJDIR ".libs/" -| #define PCRE_EXP_DECL extern __attribute__ ((visibility ("default"))) -| #define PCRE_EXP_DEFN __attribute__ ((visibility ("default"))) -| #define PCRE_EXP_DATA_DEFN __attribute__ ((visibility ("default"))) -| #define PCREPOSIX_EXP_DECL extern __attribute__ ((visibility ("default"))) -| #define PCREPOSIX_EXP_DEFN extern __attribute__ ((visibility ("default"))) -| #define PCRECPP_EXP_DECL extern __attribute__ ((visibility ("default"))) -| #define PCRECPP_EXP_DEFN __attribute__ ((visibility ("default"))) -| #define HAVE_VISIBILITY 1 -| #define STDC_HEADERS 1 -| #define HAVE_LIMITS_H 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_DIRENT_H 1 -| #define HAVE_BCOPY 1 -| #define HAVE_MEMMOVE 1 -| #define HAVE_STRERROR 1 -| /* end confdefs.h. */ -| #include -| #ifdef HAVE_SYS_TYPES_H -| # include -| #endif -| #ifdef HAVE_SYS_STAT_H -| # include -| #endif -| #ifdef STDC_HEADERS -| # include -| # include -| #else -| # ifdef HAVE_STDLIB_H -| # include -| # endif -| #endif -| #ifdef HAVE_STRING_H -| # if !defined STDC_HEADERS && defined HAVE_MEMORY_H -| # include -| # endif -| # include -| #endif -| #ifdef HAVE_STRINGS_H -| # include -| #endif -| #ifdef HAVE_INTTYPES_H -| # include -| #endif -| #ifdef HAVE_STDINT_H -| # include -| #endif -| #ifdef HAVE_UNISTD_H -| # include -| #endif -| #include -configure:17029: result: no -configure:17029: checking bzlib.h presence -configure:17029: mipsel-uclibc-gcc -E conftest.c -conftest.c:39:19: error: bzlib.h: No such file or directory -configure:17029: $? = 1 -configure: failed program was: -| /* confdefs.h */ -| #define PACKAGE_NAME "PCRE" -| #define PACKAGE_TARNAME "pcre" -| #define PACKAGE_VERSION "8.32" -| #define PACKAGE_STRING "PCRE 8.32" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE_URL "" -| #define PACKAGE "pcre" -| #define VERSION "8.32" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_DLFCN_H 1 -| #define LT_OBJDIR ".libs/" -| #define PCRE_EXP_DECL extern __attribute__ ((visibility ("default"))) -| #define PCRE_EXP_DEFN __attribute__ ((visibility ("default"))) -| #define PCRE_EXP_DATA_DEFN __attribute__ ((visibility ("default"))) -| #define PCREPOSIX_EXP_DECL extern __attribute__ ((visibility ("default"))) -| #define PCREPOSIX_EXP_DEFN extern __attribute__ ((visibility ("default"))) -| #define PCRECPP_EXP_DECL extern __attribute__ ((visibility ("default"))) -| #define PCRECPP_EXP_DEFN __attribute__ ((visibility ("default"))) -| #define HAVE_VISIBILITY 1 -| #define STDC_HEADERS 1 -| #define HAVE_LIMITS_H 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_DIRENT_H 1 -| #define HAVE_BCOPY 1 -| #define HAVE_MEMMOVE 1 -| #define HAVE_STRERROR 1 -| /* end confdefs.h. */ -| #include -configure:17029: result: no -configure:17029: checking for bzlib.h -configure:17029: result: no -configure:17044: checking for libbz2 -configure:17062: mipsel-uclibc-gcc -o conftest -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c -lbz2 >&5 -conftest.c: In function 'main': -conftest.c:46: warning: implicit declaration of function 'BZ2_bzopen' -/home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/bin/ld: cannot find -lbz2 -collect2: ld returned 1 exit status -configure:17062: $? = 1 -configure: failed program was: -| /* confdefs.h */ -| #define PACKAGE_NAME "PCRE" -| #define PACKAGE_TARNAME "pcre" -| #define PACKAGE_VERSION "8.32" -| #define PACKAGE_STRING "PCRE 8.32" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE_URL "" -| #define PACKAGE "pcre" -| #define VERSION "8.32" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_DLFCN_H 1 -| #define LT_OBJDIR ".libs/" -| #define PCRE_EXP_DECL extern __attribute__ ((visibility ("default"))) -| #define PCRE_EXP_DEFN __attribute__ ((visibility ("default"))) -| #define PCRE_EXP_DATA_DEFN __attribute__ ((visibility ("default"))) -| #define PCREPOSIX_EXP_DECL extern __attribute__ ((visibility ("default"))) -| #define PCREPOSIX_EXP_DEFN extern __attribute__ ((visibility ("default"))) -| #define PCRECPP_EXP_DECL extern __attribute__ ((visibility ("default"))) -| #define PCRECPP_EXP_DEFN __attribute__ ((visibility ("default"))) -| #define HAVE_VISIBILITY 1 -| #define STDC_HEADERS 1 -| #define HAVE_LIMITS_H 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_DIRENT_H 1 -| #define HAVE_BCOPY 1 -| #define HAVE_MEMMOVE 1 -| #define HAVE_STRERROR 1 -| /* end confdefs.h. */ -| -| #ifdef HAVE_BZLIB_H -| #include -| #endif -| int -| main () -| { -| return (int)BZ2_bzopen("conftest", "rb"); -| ; -| return 0; -| } -configure:17066: result: no -configure:18688: creating ./config.status - -## ---------------------- ## -## Running config.status. ## -## ---------------------- ## - -This file was extended by PCRE config.status 8.32, which was -generated by GNU Autoconf 2.68. Invocation command line was - - CONFIG_FILES = - CONFIG_HEADERS = - CONFIG_LINKS = - CONFIG_COMMANDS = - $ ./config.status - -on vicente-P5K-E - -config.status:1254: creating Makefile -config.status:1254: creating libpcre.pc -config.status:1254: creating libpcre16.pc -config.status:1254: creating libpcre32.pc -config.status:1254: creating libpcreposix.pc -config.status:1254: creating libpcrecpp.pc -config.status:1254: creating pcre-config -config.status:1254: creating pcre.h -config.status:1254: creating pcre_stringpiece.h -config.status:1254: creating pcrecpparg.h -config.status:1254: creating config.h -config.status:1435: config.h is unchanged -config.status:1483: executing depfiles commands -config.status:1483: executing libtool commands -config.status:1483: executing script-chmod commands -config.status:1483: executing delete-old-chartables commands - -## ---------------- ## -## Cache variables. ## -## ---------------- ## - -ac_cv_build=x86_64-pc-linux-gnu -ac_cv_c_compiler_gnu=yes -ac_cv_c_const=yes -ac_cv_c_int64_t=yes -ac_cv_cxx_compiler_gnu=yes -ac_cv_env_CCC_set= -ac_cv_env_CCC_value= -ac_cv_env_CC_set=set -ac_cv_env_CC_value=mipsel-uclibc-gcc -ac_cv_env_CFLAGS_set=set -ac_cv_env_CFLAGS_value='-Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 ' -ac_cv_env_CPPFLAGS_set= -ac_cv_env_CPPFLAGS_value= -ac_cv_env_CPP_set= -ac_cv_env_CPP_value= -ac_cv_env_CXXCPP_set= -ac_cv_env_CXXCPP_value= -ac_cv_env_CXXFLAGS_set= -ac_cv_env_CXXFLAGS_value= -ac_cv_env_CXX_set=set -ac_cv_env_CXX_value=mipsel-uclibc-g++ -ac_cv_env_GENHTML_set= -ac_cv_env_GENHTML_value= -ac_cv_env_LCOV_set= -ac_cv_env_LCOV_value= -ac_cv_env_LDFLAGS_set= -ac_cv_env_LDFLAGS_value= -ac_cv_env_LIBS_set= -ac_cv_env_LIBS_value= -ac_cv_env_PKG_CONFIG_LIBDIR_set= -ac_cv_env_PKG_CONFIG_LIBDIR_value= -ac_cv_env_PKG_CONFIG_PATH_set= -ac_cv_env_PKG_CONFIG_PATH_value= -ac_cv_env_PKG_CONFIG_set= -ac_cv_env_PKG_CONFIG_value= -ac_cv_env_VALGRIND_CFLAGS_set= -ac_cv_env_VALGRIND_CFLAGS_value= -ac_cv_env_VALGRIND_LIBS_set= -ac_cv_env_VALGRIND_LIBS_value= -ac_cv_env_build_alias_set=set -ac_cv_env_build_alias_value=x86_64-linux-gnu -ac_cv_env_host_alias_set=set -ac_cv_env_host_alias_value=mipsel-linux -ac_cv_env_target_alias_set= -ac_cv_env_target_alias_value= -ac_cv_func_bcopy=yes -ac_cv_func_malloc_0_nonnull=yes -ac_cv_func_memmove=yes -ac_cv_func_strerror=yes -ac_cv_header_bzlib_h=no -ac_cv_header_dirent_h=yes -ac_cv_header_dlfcn_h=yes -ac_cv_header_inttypes_h=yes -ac_cv_header_limits_h=yes -ac_cv_header_memory_h=yes -ac_cv_header_stdc=yes -ac_cv_header_stdint_h=yes -ac_cv_header_stdlib_h=yes -ac_cv_header_string_h=yes -ac_cv_header_strings_h=yes -ac_cv_header_sys_stat_h=yes -ac_cv_header_sys_types_h=yes -ac_cv_header_unistd_h=yes -ac_cv_header_windows_h=no -ac_cv_header_zlib_h=no -ac_cv_host=mipsel-unknown-linux-gnu -ac_cv_lib_z_gzopen=no -ac_cv_objext=o -ac_cv_path_EGREP='/bin/grep -E' -ac_cv_path_FGREP='/bin/grep -F' -ac_cv_path_GREP=/bin/grep -ac_cv_path_SED=/bin/sed -ac_cv_path_install='/usr/bin/install -c' -ac_cv_path_mkdir=/bin/mkdir -ac_cv_prog_AR=mipsel-uclibc-ar -ac_cv_prog_AWK=gawk -ac_cv_prog_CC=mipsel-uclibc-gcc -ac_cv_prog_CPP='mipsel-uclibc-gcc -E' -ac_cv_prog_CXXCPP='mipsel-uclibc-g++ -E' -ac_cv_prog_DLLTOOL=dlltool -ac_cv_prog_OBJDUMP=objdump -ac_cv_prog_RANLIB=mipsel-uclibc-ranlib -ac_cv_prog_STRIP='mipsel-uclibc-strip -R .note -R .comment' -ac_cv_prog_ac_ct_MANIFEST_TOOL=mt -ac_cv_prog_cc_c89= -ac_cv_prog_cc_g=yes -ac_cv_prog_cc_mipsel_uclibc_gcc_c_o=yes -ac_cv_prog_cxx_g=yes -ac_cv_prog_make_make_set=yes -ac_cv_type_size_t=yes -am_cv_CC_dependencies_compiler_type=none -am_cv_CXX_dependencies_compiler_type=none -am_cv_make_support_nested_variables=yes -lt_cv_ar_at_file=@ -lt_cv_archive_cmds_need_lc=no -lt_cv_deplibs_check_method=pass_all -lt_cv_file_magic_cmd='$MAGIC_CMD' -lt_cv_file_magic_test_file= -lt_cv_ld_reload_flag=-r -lt_cv_nm_interface='BSD nm' -lt_cv_objdir=.libs -lt_cv_path_LD=mipsel-uclibc-ld -lt_cv_path_LDCXX=mipsel-uclibc-ld -lt_cv_path_NM=mipsel-uclibc-nm -lt_cv_path_mainfest_tool=no -lt_cv_prog_compiler_c_o=yes -lt_cv_prog_compiler_c_o_CXX=yes -lt_cv_prog_compiler_pic='-fPIC -DPIC' -lt_cv_prog_compiler_pic_CXX='-fPIC -DPIC' -lt_cv_prog_compiler_pic_works=yes -lt_cv_prog_compiler_pic_works_CXX=yes -lt_cv_prog_compiler_rtti_exceptions=no -lt_cv_prog_compiler_static_works=yes -lt_cv_prog_compiler_static_works_CXX=yes -lt_cv_prog_gnu_ld=yes -lt_cv_prog_gnu_ldcxx=yes -lt_cv_sharedlib_from_linklib_cmd='printf %s\n' -lt_cv_shlibpath_overrides_runpath=no -lt_cv_sys_global_symbol_pipe='sed -n -e '\''s/^.*[ ]\([ABCDGIRSTW][ABCDGIRSTW]*\)[ ][ ]*\([_A-Za-z][_A-Za-z0-9]*\)$/\1 \2 \2/p'\'' | sed '\''/ __gnu_lto/d'\''' -lt_cv_sys_global_symbol_to_c_name_address='sed -n -e '\''s/^: \([^ ]*\)[ ]*$/ {\"\1\", (void *) 0},/p'\'' -e '\''s/^[ABCDGIRSTW]* \([^ ]*\) \([^ ]*\)$/ {"\2", (void *) \&\2},/p'\''' -lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='sed -n -e '\''s/^: \([^ ]*\)[ ]*$/ {\"\1\", (void *) 0},/p'\'' -e '\''s/^[ABCDGIRSTW]* \([^ ]*\) \(lib[^ ]*\)$/ {"\2", (void *) \&\2},/p'\'' -e '\''s/^[ABCDGIRSTW]* \([^ ]*\) \([^ ]*\)$/ {"lib\2", (void *) \&\2},/p'\''' -lt_cv_sys_global_symbol_to_cdecl='sed -n -e '\''s/^T .* \(.*\)$/extern int \1();/p'\'' -e '\''s/^[ABCDGIRSTW]* .* \(.*\)$/extern char \1;/p'\''' -lt_cv_sys_max_cmd_len=3458764513820540925 -lt_cv_to_host_file_cmd=func_convert_file_noop -lt_cv_to_tool_file_cmd=func_convert_file_noop -pcre_cv_cc_vis_werror=yes -pcre_cv_cc_visibility=yes - -## ----------------- ## -## Output variables. ## -## ----------------- ## - -ACLOCAL='${SHELL} /home/vicente/tomato/release/src/router/pcre/missing --run aclocal-1.11' -AMDEPBACKSLASH='' -AMDEP_FALSE='' -AMDEP_TRUE='#' -AMTAR='$${TAR-tar}' -AM_BACKSLASH='\' -AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)' -AM_DEFAULT_VERBOSITY='0' -AM_V='$(V)' -AR='mipsel-uclibc-ar' -AS='mipsel-uclibc-as' -AUTOCONF='${SHELL} /home/vicente/tomato/release/src/router/pcre/missing --run autoconf' -AUTOHEADER='${SHELL} /home/vicente/tomato/release/src/router/pcre/missing --run autoheader' -AUTOMAKE='${SHELL} /home/vicente/tomato/release/src/router/pcre/missing --run automake-1.11' -AWK='gawk' -CC='mipsel-uclibc-gcc' -CCDEPMODE='depmode=none' -CFLAGS='-Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 ' -CPP='mipsel-uclibc-gcc -E' -CPPFLAGS='' -CXX='mipsel-uclibc-g++' -CXXCPP='mipsel-uclibc-g++ -E' -CXXDEPMODE='depmode=none' -CXXFLAGS='-O2' -CYGPATH_W='echo' -DEFS='-DHAVE_CONFIG_H' -DEPDIR='.deps' -DISTCHECK_CONFIGURE_FLAGS='CFLAGS='\'''\'' CXXFLAGS='\'''\'' --enable-pcre16 --enable-pcre32 --enable-jit --enable-cpp --enable-unicode-properties' -DLLTOOL='dlltool' -DSYMUTIL='' -DUMPBIN='' -ECHO_C='' -ECHO_N='-n' -ECHO_T='' -EGREP='/bin/grep -E' -EXEEXT='' -EXTRA_LIBPCRE16_LDFLAGS=' -version-info 2:0:2' -EXTRA_LIBPCRE32_LDFLAGS=' -version-info 0:0:0' -EXTRA_LIBPCRECPP_LDFLAGS=' -version-info 0:0:0 ' -EXTRA_LIBPCREPOSIX_LDFLAGS=' -version-info 0:1:0' -EXTRA_LIBPCRE_LDFLAGS=' -version-info 3:0:2' -FGREP='/bin/grep -F' -GCOV_CFLAGS='' -GCOV_CXXFLAGS='' -GCOV_LIBS='' -GENHTML='' -GREP='/bin/grep' -HAVE_VISIBILITY='1' -INSTALL_DATA='${INSTALL} -m 644' -INSTALL_PROGRAM='${INSTALL}' -INSTALL_SCRIPT='${INSTALL}' -INSTALL_STRIP_PROGRAM='$(install_sh) -c -s' -LCOV='' -LD='mipsel-uclibc-ld' -LDFLAGS='' -LIBBZ2='' -LIBOBJS='' -LIBREADLINE='' -LIBS='' -LIBTOOL='$(SHELL) $(top_builddir)/libtool' -LIBZ='' -LIPO='' -LN_S='ln -s' -LTLIBOBJS='' -MAKEINFO='${SHELL} /home/vicente/tomato/release/src/router/pcre/missing --run makeinfo' -MANIFEST_TOOL=':' -MKDIR_P='/bin/mkdir -p' -NM='mipsel-uclibc-nm' -NMEDIT='' -OBJDUMP='objdump' -OBJEXT='o' -OTOOL64='' -OTOOL='' -PACKAGE='pcre' -PACKAGE_BUGREPORT='' -PACKAGE_NAME='PCRE' -PACKAGE_STRING='PCRE 8.32' -PACKAGE_TARNAME='pcre' -PACKAGE_URL='' -PACKAGE_VERSION='8.32' -PATH_SEPARATOR=':' -PCRE_DATE='2012-11-30' -PCRE_MAJOR='8' -PCRE_MINOR='32' -PCRE_PRERELEASE='' -PCRE_STATIC_CFLAG='' -PKG_CONFIG='' -PKG_CONFIG_LIBDIR='' -PKG_CONFIG_PATH='' -PTHREAD_CC='' -PTHREAD_CFLAGS='' -PTHREAD_LIBS='' -RANLIB='mipsel-uclibc-ranlib' -SED='/bin/sed' -SET_MAKE='' -SHELL='/bin/sh' -SHTOOL='' -STRIP='mipsel-uclibc-strip -R .note -R .comment' -VALGRIND_CFLAGS='' -VALGRIND_LIBS='' -VERSION='8.32' -VISIBILITY_CFLAGS='-fvisibility=hidden' -VISIBILITY_CXXFLAGS='-fvisibility=hidden -fvisibility-inlines-hidden' -WITH_GCOV_FALSE='' -WITH_GCOV_TRUE='#' -WITH_JIT_FALSE='' -WITH_JIT_TRUE='#' -WITH_PCRE16_FALSE='' -WITH_PCRE16_TRUE='#' -WITH_PCRE32_FALSE='' -WITH_PCRE32_TRUE='#' -WITH_PCRE8_FALSE='#' -WITH_PCRE8_TRUE='' -WITH_PCRE_CPP_FALSE='' -WITH_PCRE_CPP_TRUE='#' -WITH_REBUILD_CHARTABLES_FALSE='' -WITH_REBUILD_CHARTABLES_TRUE='#' -WITH_UTF_FALSE='#' -WITH_UTF_TRUE='' -WITH_VALGRIND_FALSE='' -WITH_VALGRIND_TRUE='#' -ac_ct_AR='' -ac_ct_CC='' -ac_ct_CXX='' -ac_ct_DUMPBIN='' -am__EXEEXT_FALSE='' -am__EXEEXT_TRUE='#' -am__fastdepCC_FALSE='' -am__fastdepCC_TRUE='#' -am__fastdepCXX_FALSE='' -am__fastdepCXX_TRUE='#' -am__include='include' -am__isrc='' -am__leading_dot='.' -am__nodep='' -am__quote='' -am__tar='$${TAR-tar} chof - "$$tardir"' -am__untar='$${TAR-tar} xf -' -ax_pthread_config='' -bindir='${exec_prefix}/bin' -build='x86_64-pc-linux-gnu' -build_alias='x86_64-linux-gnu' -build_cpu='x86_64' -build_os='linux-gnu' -build_vendor='pc' -datadir='${datarootdir}' -datarootdir='${prefix}/share' -docdir='${datarootdir}/doc/${PACKAGE_TARNAME}' -dvidir='${docdir}' -enable_cpp='no' -enable_pcre16='no' -enable_pcre32='no' -enable_pcre8='yes' -exec_prefix='${prefix}' -host='mipsel-unknown-linux-gnu' -host_alias='mipsel-linux' -host_cpu='mipsel' -host_os='linux-gnu' -host_vendor='unknown' -htmldir='${docdir}/html' -includedir='${prefix}/include' -infodir='${datarootdir}/info' -install_sh='${SHELL} /home/vicente/tomato/release/src/router/pcre/install-sh' -libdir='${exec_prefix}/lib' -libexecdir='${exec_prefix}/libexec' -localedir='${datarootdir}/locale' -localstatedir='${prefix}/var' -mandir='${datarootdir}/man' -mkdir_p='/bin/mkdir -p' -oldincludedir='/usr/include' -pcre_have_bits_type_traits='0' -pcre_have_long_long='' -pcre_have_type_traits='0' -pcre_have_ulong_long='' -pdfdir='${docdir}' -prefix='/usr' -program_transform_name='s,x,x,' -psdir='${docdir}' -sbindir='${exec_prefix}/sbin' -sharedstatedir='${prefix}/com' -sysconfdir='${prefix}/etc' -target_alias='' - -## ----------- ## -## confdefs.h. ## -## ----------- ## - -/* confdefs.h */ -#define PACKAGE_NAME "PCRE" -#define PACKAGE_TARNAME "pcre" -#define PACKAGE_VERSION "8.32" -#define PACKAGE_STRING "PCRE 8.32" -#define PACKAGE_BUGREPORT "" -#define PACKAGE_URL "" -#define PACKAGE "pcre" -#define VERSION "8.32" -#define STDC_HEADERS 1 -#define HAVE_SYS_TYPES_H 1 -#define HAVE_SYS_STAT_H 1 -#define HAVE_STDLIB_H 1 -#define HAVE_STRING_H 1 -#define HAVE_MEMORY_H 1 -#define HAVE_STRINGS_H 1 -#define HAVE_INTTYPES_H 1 -#define HAVE_STDINT_H 1 -#define HAVE_UNISTD_H 1 -#define HAVE_DLFCN_H 1 -#define LT_OBJDIR ".libs/" -#define PCRE_EXP_DECL extern __attribute__ ((visibility ("default"))) -#define PCRE_EXP_DEFN __attribute__ ((visibility ("default"))) -#define PCRE_EXP_DATA_DEFN __attribute__ ((visibility ("default"))) -#define PCREPOSIX_EXP_DECL extern __attribute__ ((visibility ("default"))) -#define PCREPOSIX_EXP_DEFN extern __attribute__ ((visibility ("default"))) -#define PCRECPP_EXP_DECL extern __attribute__ ((visibility ("default"))) -#define PCRECPP_EXP_DEFN __attribute__ ((visibility ("default"))) -#define HAVE_VISIBILITY 1 -#define STDC_HEADERS 1 -#define HAVE_LIMITS_H 1 -#define HAVE_SYS_TYPES_H 1 -#define HAVE_SYS_STAT_H 1 -#define HAVE_DIRENT_H 1 -#define HAVE_BCOPY 1 -#define HAVE_MEMMOVE 1 -#define HAVE_STRERROR 1 -#define SUPPORT_PCRE8 /**/ -#define SUPPORT_UTF /**/ -#define SUPPORT_UCP /**/ -#define PCREGREP_BUFSIZE 20480 -#define NEWLINE 10 -#define LINK_SIZE 2 -#define POSIX_MALLOC_THRESHOLD 10 -#define MATCH_LIMIT 10000000 -#define MATCH_LIMIT_RECURSION MATCH_LIMIT -#define MAX_NAME_SIZE 32 -#define MAX_NAME_COUNT 10000 - -configure: exit 0 diff --git a/release/src/router/pcre/config.status b/release/src/router/pcre/config.status deleted file mode 100755 index f4f7120386..0000000000 --- a/release/src/router/pcre/config.status +++ /dev/null @@ -1,2397 +0,0 @@ -#! /bin/sh -# Generated by configure. -# Run this file to recreate the current configuration. -# Compiler output produced by configure, useful for debugging -# configure, is in config.log if it exists. - -debug=false -ac_cs_recheck=false -ac_cs_silent=false - -SHELL=${CONFIG_SHELL-/bin/sh} -export SHELL -## -------------------- ## -## M4sh Initialization. ## -## -------------------- ## - -# Be more Bourne compatible -DUALCASE=1; export DUALCASE # for MKS sh -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then : - emulate sh - NULLCMD=: - # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which - # is contrary to our usage. Disable this feature. - alias -g '${1+"$@"}'='"$@"' - setopt NO_GLOB_SUBST -else - case `(set -o) 2>/dev/null` in #( - *posix*) : - set -o posix ;; #( - *) : - ;; -esac -fi - - -as_nl=' -' -export as_nl -# Printing a long string crashes Solaris 7 /usr/bin/printf. -as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' -as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo -as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo -# Prefer a ksh shell builtin over an external printf program on Solaris, -# but without wasting forks for bash or zsh. -if test -z "$BASH_VERSION$ZSH_VERSION" \ - && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then - as_echo='print -r --' - as_echo_n='print -rn --' -elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then - as_echo='printf %s\n' - as_echo_n='printf %s' -else - if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then - as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"' - as_echo_n='/usr/ucb/echo -n' - else - as_echo_body='eval expr "X$1" : "X\\(.*\\)"' - as_echo_n_body='eval - arg=$1; - case $arg in #( - *"$as_nl"*) - expr "X$arg" : "X\\(.*\\)$as_nl"; - arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;; - esac; - expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl" - ' - export as_echo_n_body - as_echo_n='sh -c $as_echo_n_body as_echo' - fi - export as_echo_body - as_echo='sh -c $as_echo_body as_echo' -fi - -# The user is always right. -if test "${PATH_SEPARATOR+set}" != set; then - PATH_SEPARATOR=: - (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { - (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || - PATH_SEPARATOR=';' - } -fi - - -# IFS -# We need space, tab and new line, in precisely that order. Quoting is -# there to prevent editors from complaining about space-tab. -# (If _AS_PATH_WALK were called with IFS unset, it would disable word -# splitting by setting IFS to empty value.) -IFS=" "" $as_nl" - -# Find who we are. Look in the path if we contain no directory separator. -as_myself= -case $0 in #(( - *[\\/]* ) as_myself=$0 ;; - *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break - done -IFS=$as_save_IFS - - ;; -esac -# We did not find ourselves, most probably we were run as `sh COMMAND' -# in which case we are not to be found in the path. -if test "x$as_myself" = x; then - as_myself=$0 -fi -if test ! -f "$as_myself"; then - $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 - exit 1 -fi - -# Unset variables that we do not need and which cause bugs (e.g. in -# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1" -# suppresses any "Segmentation fault" message there. '((' could -# trigger a bug in pdksh 5.2.14. -for as_var in BASH_ENV ENV MAIL MAILPATH -do eval test x\${$as_var+set} = xset \ - && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : -done -PS1='$ ' -PS2='> ' -PS4='+ ' - -# NLS nuisances. -LC_ALL=C -export LC_ALL -LANGUAGE=C -export LANGUAGE - -# CDPATH. -(unset CDPATH) >/dev/null 2>&1 && unset CDPATH - - -# as_fn_error STATUS ERROR [LINENO LOG_FD] -# ---------------------------------------- -# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are -# provided, also output the error to LOG_FD, referencing LINENO. Then exit the -# script with STATUS, using 1 if that was 0. -as_fn_error () -{ - as_status=$1; test $as_status -eq 0 && as_status=1 - if test "$4"; then - as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4 - fi - $as_echo "$as_me: error: $2" >&2 - as_fn_exit $as_status -} # as_fn_error - - -# as_fn_set_status STATUS -# ----------------------- -# Set $? to STATUS, without forking. -as_fn_set_status () -{ - return $1 -} # as_fn_set_status - -# as_fn_exit STATUS -# ----------------- -# Exit the shell with STATUS, even in a "trap 0" or "set -e" context. -as_fn_exit () -{ - set +e - as_fn_set_status $1 - exit $1 -} # as_fn_exit - -# as_fn_unset VAR -# --------------- -# Portably unset VAR. -as_fn_unset () -{ - { eval $1=; unset $1;} -} -as_unset=as_fn_unset -# as_fn_append VAR VALUE -# ---------------------- -# Append the text in VALUE to the end of the definition contained in VAR. Take -# advantage of any shell optimizations that allow amortized linear growth over -# repeated appends, instead of the typical quadratic growth present in naive -# implementations. -if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then : - eval 'as_fn_append () - { - eval $1+=\$2 - }' -else - as_fn_append () - { - eval $1=\$$1\$2 - } -fi # as_fn_append - -# as_fn_arith ARG... -# ------------------ -# Perform arithmetic evaluation on the ARGs, and store the result in the -# global $as_val. Take advantage of shells that can avoid forks. The arguments -# must be portable across $(()) and expr. -if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then : - eval 'as_fn_arith () - { - as_val=$(( $* )) - }' -else - as_fn_arith () - { - as_val=`expr "$@" || test $? -eq 1` - } -fi # as_fn_arith - - -if expr a : '\(a\)' >/dev/null 2>&1 && - test "X`expr 00001 : '.*\(...\)'`" = X001; then - as_expr=expr -else - as_expr=false -fi - -if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then - as_basename=basename -else - as_basename=false -fi - -if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then - as_dirname=dirname -else - as_dirname=false -fi - -as_me=`$as_basename -- "$0" || -$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ - X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X/"$0" | - sed '/^.*\/\([^/][^/]*\)\/*$/{ - s//\1/ - q - } - /^X\/\(\/\/\)$/{ - s//\1/ - q - } - /^X\/\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - -# Avoid depending upon Character Ranges. -as_cr_letters='abcdefghijklmnopqrstuvwxyz' -as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' -as_cr_Letters=$as_cr_letters$as_cr_LETTERS -as_cr_digits='0123456789' -as_cr_alnum=$as_cr_Letters$as_cr_digits - -ECHO_C= ECHO_N= ECHO_T= -case `echo -n x` in #((((( --n*) - case `echo 'xy\c'` in - *c*) ECHO_T=' ';; # ECHO_T is single tab character. - xy) ECHO_C='\c';; - *) echo `echo ksh88 bug on AIX 6.1` > /dev/null - ECHO_T=' ';; - esac;; -*) - ECHO_N='-n';; -esac - -rm -f conf$$ conf$$.exe conf$$.file -if test -d conf$$.dir; then - rm -f conf$$.dir/conf$$.file -else - rm -f conf$$.dir - mkdir conf$$.dir 2>/dev/null -fi -if (echo >conf$$.file) 2>/dev/null; then - if ln -s conf$$.file conf$$ 2>/dev/null; then - as_ln_s='ln -s' - # ... but there are two gotchas: - # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. - # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. - # In both cases, we have to default to `cp -p'. - ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || - as_ln_s='cp -p' - elif ln conf$$.file conf$$ 2>/dev/null; then - as_ln_s=ln - else - as_ln_s='cp -p' - fi -else - as_ln_s='cp -p' -fi -rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file -rmdir conf$$.dir 2>/dev/null - - -# as_fn_mkdir_p -# ------------- -# Create "$as_dir" as a directory, including parents if necessary. -as_fn_mkdir_p () -{ - - case $as_dir in #( - -*) as_dir=./$as_dir;; - esac - test -d "$as_dir" || eval $as_mkdir_p || { - as_dirs= - while :; do - case $as_dir in #( - *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( - *) as_qdir=$as_dir;; - esac - as_dirs="'$as_qdir' $as_dirs" - as_dir=`$as_dirname -- "$as_dir" || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - test -d "$as_dir" && break - done - test -z "$as_dirs" || eval "mkdir $as_dirs" - } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir" - - -} # as_fn_mkdir_p -if mkdir -p . 2>/dev/null; then - as_mkdir_p='mkdir -p "$as_dir"' -else - test -d ./-p && rmdir ./-p - as_mkdir_p=false -fi - -if test -x / >/dev/null 2>&1; then - as_test_x='test -x' -else - if ls -dL / >/dev/null 2>&1; then - as_ls_L_option=L - else - as_ls_L_option= - fi - as_test_x=' - eval sh -c '\'' - if test -d "$1"; then - test -d "$1/."; - else - case $1 in #( - -*)set "./$1";; - esac; - case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #(( - ???[sx]*):;;*)false;;esac;fi - '\'' sh - ' -fi -as_executable_p=$as_test_x - -# Sed expression to map a string onto a valid CPP name. -as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" - -# Sed expression to map a string onto a valid variable name. -as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" - - -exec 6>&1 -## ----------------------------------- ## -## Main body of $CONFIG_STATUS script. ## -## ----------------------------------- ## -# Save the log message, to keep $0 and so on meaningful, and to -# report actual input values of CONFIG_FILES etc. instead of their -# values after options handling. -ac_log=" -This file was extended by PCRE $as_me 8.32, which was -generated by GNU Autoconf 2.68. Invocation command line was - - CONFIG_FILES = $CONFIG_FILES - CONFIG_HEADERS = $CONFIG_HEADERS - CONFIG_LINKS = $CONFIG_LINKS - CONFIG_COMMANDS = $CONFIG_COMMANDS - $ $0 $@ - -on `(hostname || uname -n) 2>/dev/null | sed 1q` -" - -# Files that config.status was made for. -config_files=" Makefile libpcre.pc libpcre16.pc libpcre32.pc libpcreposix.pc libpcrecpp.pc pcre-config pcre.h pcre_stringpiece.h pcrecpparg.h" -config_headers=" config.h" -config_commands=" depfiles libtool script-chmod delete-old-chartables" - -ac_cs_usage="\ -\`$as_me' instantiates files and other configuration actions -from templates according to the current configuration. Unless the files -and actions are specified as TAGs, all are instantiated by default. - -Usage: $0 [OPTION]... [TAG]... - - -h, --help print this help, then exit - -V, --version print version number and configuration settings, then exit - --config print configuration, then exit - -q, --quiet, --silent - do not print progress messages - -d, --debug don't remove temporary files - --recheck update $as_me by reconfiguring in the same conditions - --file=FILE[:TEMPLATE] - instantiate the configuration file FILE - --header=FILE[:TEMPLATE] - instantiate the configuration header FILE - -Configuration files: -$config_files - -Configuration headers: -$config_headers - -Configuration commands: -$config_commands - -Report bugs to the package provider." - -ac_cs_config="'--host=mipsel-linux' '--build=x86_64-linux-gnu' '--prefix=/usr' '--disable-dependency-tracking' '--enable-utf8' '--enable-unicode-properties' '--disable-cpp' 'build_alias=x86_64-linux-gnu' 'host_alias=mipsel-linux' 'CC=mipsel-uclibc-gcc' 'CFLAGS=-Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 ' 'CXX=mipsel-uclibc-g++'" -ac_cs_version="\ -PCRE config.status 8.32 -configured by ./configure, generated by GNU Autoconf 2.68, - with options \"$ac_cs_config\" - -Copyright (C) 2010 Free Software Foundation, Inc. -This config.status script is free software; the Free Software Foundation -gives unlimited permission to copy, distribute and modify it." - -ac_pwd='/home/vicente/tomato/release/src/router/pcre' -srcdir='.' -INSTALL='/usr/bin/install -c' -MKDIR_P='/bin/mkdir -p' -AWK='gawk' -test -n "$AWK" || AWK=awk -# The default lists apply if the user does not specify any file. -ac_need_defaults=: -while test $# != 0 -do - case $1 in - --*=?*) - ac_option=`expr "X$1" : 'X\([^=]*\)='` - ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'` - ac_shift=: - ;; - --*=) - ac_option=`expr "X$1" : 'X\([^=]*\)='` - ac_optarg= - ac_shift=: - ;; - *) - ac_option=$1 - ac_optarg=$2 - ac_shift=shift - ;; - esac - - case $ac_option in - # Handling of the options. - -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) - ac_cs_recheck=: ;; - --version | --versio | --versi | --vers | --ver | --ve | --v | -V ) - $as_echo "$ac_cs_version"; exit ;; - --config | --confi | --conf | --con | --co | --c ) - $as_echo "$ac_cs_config"; exit ;; - --debug | --debu | --deb | --de | --d | -d ) - debug=: ;; - --file | --fil | --fi | --f ) - $ac_shift - case $ac_optarg in - *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; - '') as_fn_error $? "missing file argument" ;; - esac - as_fn_append CONFIG_FILES " '$ac_optarg'" - ac_need_defaults=false;; - --header | --heade | --head | --hea ) - $ac_shift - case $ac_optarg in - *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; - esac - as_fn_append CONFIG_HEADERS " '$ac_optarg'" - ac_need_defaults=false;; - --he | --h) - # Conflict between --help and --header - as_fn_error $? "ambiguous option: \`$1' -Try \`$0 --help' for more information.";; - --help | --hel | -h ) - $as_echo "$ac_cs_usage"; exit ;; - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil | --si | --s) - ac_cs_silent=: ;; - - # This is an error. - -*) as_fn_error $? "unrecognized option: \`$1' -Try \`$0 --help' for more information." ;; - - *) as_fn_append ac_config_targets " $1" - ac_need_defaults=false ;; - - esac - shift -done - -ac_configure_extra_args= - -if $ac_cs_silent; then - exec 6>/dev/null - ac_configure_extra_args="$ac_configure_extra_args --silent" -fi - -if $ac_cs_recheck; then - set X '/bin/sh' './configure' '--host=mipsel-linux' '--build=x86_64-linux-gnu' '--prefix=/usr' '--disable-dependency-tracking' '--enable-utf8' '--enable-unicode-properties' '--disable-cpp' 'build_alias=x86_64-linux-gnu' 'host_alias=mipsel-linux' 'CC=mipsel-uclibc-gcc' 'CFLAGS=-Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 ' 'CXX=mipsel-uclibc-g++' $ac_configure_extra_args --no-create --no-recursion - shift - $as_echo "running CONFIG_SHELL=/bin/sh $*" >&6 - CONFIG_SHELL='/bin/sh' - export CONFIG_SHELL - exec "$@" -fi - -exec 5>>config.log -{ - echo - sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX -## Running $as_me. ## -_ASBOX - $as_echo "$ac_log" -} >&5 - -# -# INIT-COMMANDS -# -AMDEP_TRUE="#" ac_aux_dir="." - - -# The HP-UX ksh and POSIX shell print the target directory to stdout -# if CDPATH is set. -(unset CDPATH) >/dev/null 2>&1 && unset CDPATH - -sed_quote_subst='s/\(["`$\\]\)/\\\1/g' -double_quote_subst='s/\(["`\\]\)/\\\1/g' -delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g' -AS='mipsel-uclibc-as' -DLLTOOL='dlltool' -OBJDUMP='objdump' -macro_version='2.4' -macro_revision='1.3293' -enable_shared='yes' -enable_static='yes' -pic_mode='default' -enable_fast_install='yes' -SHELL='/bin/sh' -ECHO='printf %s\n' -host_alias='mipsel-linux' -host='mipsel-unknown-linux-gnu' -host_os='linux-gnu' -build_alias='x86_64-linux-gnu' -build='x86_64-pc-linux-gnu' -build_os='linux-gnu' -SED='/bin/sed' -Xsed='/bin/sed -e 1s/^X//' -GREP='/bin/grep' -EGREP='/bin/grep -E' -FGREP='/bin/grep -F' -LD='mipsel-uclibc-ld' -NM='mipsel-uclibc-nm' -LN_S='ln -s' -max_cmd_len='3458764513820540925' -ac_objext='o' -exeext='' -lt_unset='unset' -lt_SP2NL='tr \040 \012' -lt_NL2SP='tr \015\012 \040\040' -lt_cv_to_host_file_cmd='func_convert_file_noop' -lt_cv_to_tool_file_cmd='func_convert_file_noop' -reload_flag=' -r' -reload_cmds='$LD$reload_flag -o $output$reload_objs' -deplibs_check_method='pass_all' -file_magic_cmd='$MAGIC_CMD' -file_magic_glob='' -want_nocaseglob='no' -sharedlib_from_linklib_cmd='printf %s\n' -AR='mipsel-uclibc-ar' -AR_FLAGS='cru' -archiver_list_spec='@' -STRIP='mipsel-uclibc-strip -R .note -R .comment' -RANLIB='mipsel-uclibc-ranlib' -old_postinstall_cmds='chmod 644 $oldlib~$RANLIB $oldlib' -old_postuninstall_cmds='' -old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs~$RANLIB $oldlib' -lock_old_archive_extraction='no' -CC='mipsel-uclibc-gcc' -CFLAGS='-Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 ' -compiler='mipsel-uclibc-g++' -GCC='yes' -lt_cv_sys_global_symbol_pipe='sed -n -e '\''s/^.*[ ]\([ABCDGIRSTW][ABCDGIRSTW]*\)[ ][ ]*\([_A-Za-z][_A-Za-z0-9]*\)$/\1 \2 \2/p'\'' | sed '\''/ __gnu_lto/d'\''' -lt_cv_sys_global_symbol_to_cdecl='sed -n -e '\''s/^T .* \(.*\)$/extern int \1();/p'\'' -e '\''s/^[ABCDGIRSTW]* .* \(.*\)$/extern char \1;/p'\''' -lt_cv_sys_global_symbol_to_c_name_address='sed -n -e '\''s/^: \([^ ]*\)[ ]*$/ {\"\1\", (void *) 0},/p'\'' -e '\''s/^[ABCDGIRSTW]* \([^ ]*\) \([^ ]*\)$/ {"\2", (void *) \&\2},/p'\''' -lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='sed -n -e '\''s/^: \([^ ]*\)[ ]*$/ {\"\1\", (void *) 0},/p'\'' -e '\''s/^[ABCDGIRSTW]* \([^ ]*\) \(lib[^ ]*\)$/ {"\2", (void *) \&\2},/p'\'' -e '\''s/^[ABCDGIRSTW]* \([^ ]*\) \([^ ]*\)$/ {"lib\2", (void *) \&\2},/p'\''' -nm_file_list_spec='@' -lt_sysroot='' -objdir='.libs' -MAGIC_CMD='file' -lt_prog_compiler_no_builtin_flag=' -fno-builtin' -lt_prog_compiler_pic=' -fPIC -DPIC' -lt_prog_compiler_wl='-Wl,' -lt_prog_compiler_static='-static' -lt_cv_prog_compiler_c_o='yes' -need_locks='no' -MANIFEST_TOOL=':' -DSYMUTIL='' -NMEDIT='' -LIPO='' -OTOOL='' -OTOOL64='' -libext='a' -shrext_cmds='.so' -extract_expsyms_cmds='' -archive_cmds_need_lc='no' -enable_shared_with_static_runtimes='no' -export_dynamic_flag_spec='${wl}--export-dynamic' -whole_archive_flag_spec='${wl}--whole-archive$convenience ${wl}--no-whole-archive' -compiler_needs_object='no' -old_archive_from_new_cmds='' -old_archive_from_expsyms_cmds='' -archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' -archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~ - cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ - echo "local: *; };" >> $output_objdir/$libname.ver~ - $CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib' -module_cmds='' -module_expsym_cmds='' -with_gnu_ld='yes' -allow_undefined_flag='' -no_undefined_flag='' -hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' -hardcode_libdir_flag_spec_ld='' -hardcode_libdir_separator='' -hardcode_direct='no' -hardcode_direct_absolute='no' -hardcode_minus_L='no' -hardcode_shlibpath_var='unsupported' -hardcode_automatic='no' -inherit_rpath='no' -link_all_deplibs='unknown' -always_export_symbols='no' -export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' -exclude_expsyms='_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*' -include_expsyms='' -prelink_cmds='' -postlink_cmds='' -file_list_spec='' -variables_saved_for_relink='PATH LD_LIBRARY_PATH LD_RUN_PATH GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH' -need_lib_prefix='no' -need_version='no' -version_type='linux' -runpath_var='LD_RUN_PATH' -shlibpath_var='LD_LIBRARY_PATH' -shlibpath_overrides_runpath='no' -libname_spec='lib$name' -library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' -soname_spec='${libname}${release}${shared_ext}$major' -install_override_mode='' -postinstall_cmds='' -postuninstall_cmds='' -finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' -finish_eval='' -hardcode_into_libs='yes' -sys_lib_search_path_spec='/home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/lib/gcc/mipsel-linux-uclibc/4.2.4 /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/lib/gcc /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/mipsel-linux-uclibc/lib ' -sys_lib_dlsearch_path_spec='/lib /usr/lib /lib/i386-linux-gnu /usr/lib/i386-linux-gnu /lib/i686-linux-gnu /usr/lib/i686-linux-gnu /usr/local/lib /usr/lib/nvidia-settings /lib/x86_64-linux-gnu /usr/lib/x86_64-linux-gnu /usr/lib/nvidia-current /usr/lib32/nvidia-current /lib32 /usr/lib32 ' -hardcode_action='immediate' -enable_dlopen='unknown' -enable_dlopen_self='unknown' -enable_dlopen_self_static='unknown' -old_striplib='mipsel-uclibc-strip -R .note -R .comment --strip-debug' -striplib='mipsel-uclibc-strip -R .note -R .comment --strip-unneeded' -compiler_lib_search_dirs='' -predep_objects='' -postdep_objects='' -predeps='' -postdeps='' -compiler_lib_search_path='' -LD_CXX='mipsel-uclibc-ld' -reload_flag_CXX=' -r' -reload_cmds_CXX='$LD$reload_flag -o $output$reload_objs' -old_archive_cmds_CXX='$AR $AR_FLAGS $oldlib$oldobjs~$RANLIB $oldlib' -compiler_CXX='mipsel-uclibc-g++' -GCC_CXX='yes' -lt_prog_compiler_no_builtin_flag_CXX=' -fno-builtin' -lt_prog_compiler_pic_CXX=' -fPIC -DPIC' -lt_prog_compiler_wl_CXX='-Wl,' -lt_prog_compiler_static_CXX='-static' -lt_cv_prog_compiler_c_o_CXX='yes' -archive_cmds_need_lc_CXX='no' -enable_shared_with_static_runtimes_CXX='no' -export_dynamic_flag_spec_CXX='${wl}--export-dynamic' -whole_archive_flag_spec_CXX='${wl}--whole-archive$convenience ${wl}--no-whole-archive' -compiler_needs_object_CXX='no' -old_archive_from_new_cmds_CXX='' -old_archive_from_expsyms_cmds_CXX='' -archive_cmds_CXX='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib' -archive_expsym_cmds_CXX='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' -module_cmds_CXX='' -module_expsym_cmds_CXX='' -with_gnu_ld_CXX='yes' -allow_undefined_flag_CXX='' -no_undefined_flag_CXX='' -hardcode_libdir_flag_spec_CXX='${wl}-rpath ${wl}$libdir' -hardcode_libdir_flag_spec_ld_CXX='' -hardcode_libdir_separator_CXX='' -hardcode_direct_CXX='no' -hardcode_direct_absolute_CXX='no' -hardcode_minus_L_CXX='no' -hardcode_shlibpath_var_CXX='unsupported' -hardcode_automatic_CXX='no' -inherit_rpath_CXX='no' -link_all_deplibs_CXX='unknown' -always_export_symbols_CXX='no' -export_symbols_cmds_CXX='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' -exclude_expsyms_CXX='_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*' -include_expsyms_CXX='' -prelink_cmds_CXX='' -postlink_cmds_CXX='' -file_list_spec_CXX='' -hardcode_action_CXX='immediate' -compiler_lib_search_dirs_CXX='/home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4 /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/lib' -predep_objects_CXX='/home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/lib/crti.o /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/crtbeginS.o' -postdep_objects_CXX='/home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/crtendS.o /home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/lib/crtn.o' -predeps_CXX='' -postdeps_CXX='-lstdc++ -lm -lgcc_s -lc -lgcc_s' -compiler_lib_search_path_CXX='-L/home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4 -L/home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc -L/home/vicente/tomato/tools/brcm/K26/hndtools-mipsel-uclibc-4.2.4/bin/../lib/gcc/mipsel-linux-uclibc/4.2.4/../../../../mipsel-linux-uclibc/lib' - -LTCC='mipsel-uclibc-gcc' -LTCFLAGS='-Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 ' -compiler='mipsel-uclibc-gcc' - -# A function that is used when there is no print builtin or printf. -func_fallback_echo () -{ - eval 'cat <<_LTECHO_EOF -$1 -_LTECHO_EOF' -} - -# Quote evaled strings. -for var in AS DLLTOOL OBJDUMP SHELL ECHO SED GREP EGREP FGREP LD NM LN_S lt_SP2NL lt_NL2SP reload_flag deplibs_check_method file_magic_cmd file_magic_glob want_nocaseglob sharedlib_from_linklib_cmd AR AR_FLAGS archiver_list_spec STRIP RANLIB CC CFLAGS compiler lt_cv_sys_global_symbol_pipe lt_cv_sys_global_symbol_to_cdecl lt_cv_sys_global_symbol_to_c_name_address lt_cv_sys_global_symbol_to_c_name_address_lib_prefix nm_file_list_spec lt_prog_compiler_no_builtin_flag lt_prog_compiler_pic lt_prog_compiler_wl lt_prog_compiler_static lt_cv_prog_compiler_c_o need_locks MANIFEST_TOOL DSYMUTIL NMEDIT LIPO OTOOL OTOOL64 shrext_cmds export_dynamic_flag_spec whole_archive_flag_spec compiler_needs_object with_gnu_ld allow_undefined_flag no_undefined_flag hardcode_libdir_flag_spec hardcode_libdir_flag_spec_ld hardcode_libdir_separator exclude_expsyms include_expsyms file_list_spec variables_saved_for_relink libname_spec library_names_spec soname_spec install_override_mode finish_eval old_striplib striplib compiler_lib_search_dirs predep_objects postdep_objects predeps postdeps compiler_lib_search_path LD_CXX reload_flag_CXX compiler_CXX lt_prog_compiler_no_builtin_flag_CXX lt_prog_compiler_pic_CXX lt_prog_compiler_wl_CXX lt_prog_compiler_static_CXX lt_cv_prog_compiler_c_o_CXX export_dynamic_flag_spec_CXX whole_archive_flag_spec_CXX compiler_needs_object_CXX with_gnu_ld_CXX allow_undefined_flag_CXX no_undefined_flag_CXX hardcode_libdir_flag_spec_CXX hardcode_libdir_flag_spec_ld_CXX hardcode_libdir_separator_CXX exclude_expsyms_CXX include_expsyms_CXX file_list_spec_CXX compiler_lib_search_dirs_CXX predep_objects_CXX postdep_objects_CXX predeps_CXX postdeps_CXX compiler_lib_search_path_CXX; do - case `eval \\$ECHO \\""\\$$var"\\"` in - *[\\\`\"\$]*) - eval "lt_$var=\\\"\`\$ECHO \"\$$var\" | \$SED \"\$sed_quote_subst\"\`\\\"" - ;; - *) - eval "lt_$var=\\\"\$$var\\\"" - ;; - esac -done - -# Double-quote double-evaled strings. -for var in reload_cmds old_postinstall_cmds old_postuninstall_cmds old_archive_cmds extract_expsyms_cmds old_archive_from_new_cmds old_archive_from_expsyms_cmds archive_cmds archive_expsym_cmds module_cmds module_expsym_cmds export_symbols_cmds prelink_cmds postlink_cmds postinstall_cmds postuninstall_cmds finish_cmds sys_lib_search_path_spec sys_lib_dlsearch_path_spec reload_cmds_CXX old_archive_cmds_CXX old_archive_from_new_cmds_CXX old_archive_from_expsyms_cmds_CXX archive_cmds_CXX archive_expsym_cmds_CXX module_cmds_CXX module_expsym_cmds_CXX export_symbols_cmds_CXX prelink_cmds_CXX postlink_cmds_CXX; do - case `eval \\$ECHO \\""\\$$var"\\"` in - *[\\\`\"\$]*) - eval "lt_$var=\\\"\`\$ECHO \"\$$var\" | \$SED -e \"\$double_quote_subst\" -e \"\$sed_quote_subst\" -e \"\$delay_variable_subst\"\`\\\"" - ;; - *) - eval "lt_$var=\\\"\$$var\\\"" - ;; - esac -done - -ac_aux_dir='.' -xsi_shell='yes' -lt_shell_append='yes' - -# See if we are running on zsh, and set the options which allow our -# commands through without removal of \ escapes INIT. -if test -n "${ZSH_VERSION+set}" ; then - setopt NO_GLOB_SUBST -fi - - - PACKAGE='pcre' - VERSION='8.32' - TIMESTAMP='' - RM='rm -f' - ofile='libtool' - - - - - - - -# Handling of arguments. -for ac_config_target in $ac_config_targets -do - case $ac_config_target in - "config.h") CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;; - "depfiles") CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;; - "libtool") CONFIG_COMMANDS="$CONFIG_COMMANDS libtool" ;; - "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;; - "libpcre.pc") CONFIG_FILES="$CONFIG_FILES libpcre.pc" ;; - "libpcre16.pc") CONFIG_FILES="$CONFIG_FILES libpcre16.pc" ;; - "libpcre32.pc") CONFIG_FILES="$CONFIG_FILES libpcre32.pc" ;; - "libpcreposix.pc") CONFIG_FILES="$CONFIG_FILES libpcreposix.pc" ;; - "libpcrecpp.pc") CONFIG_FILES="$CONFIG_FILES libpcrecpp.pc" ;; - "pcre-config") CONFIG_FILES="$CONFIG_FILES pcre-config" ;; - "pcre.h") CONFIG_FILES="$CONFIG_FILES pcre.h" ;; - "pcre_stringpiece.h") CONFIG_FILES="$CONFIG_FILES pcre_stringpiece.h" ;; - "pcrecpparg.h") CONFIG_FILES="$CONFIG_FILES pcrecpparg.h" ;; - "script-chmod") CONFIG_COMMANDS="$CONFIG_COMMANDS script-chmod" ;; - "delete-old-chartables") CONFIG_COMMANDS="$CONFIG_COMMANDS delete-old-chartables" ;; - - *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;; - esac -done - - -# If the user did not use the arguments to specify the items to instantiate, -# then the envvar interface is used. Set only those that are not. -# We use the long form for the default assignment because of an extremely -# bizarre bug on SunOS 4.1.3. -if $ac_need_defaults; then - test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files - test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers - test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands -fi - -# Have a temporary directory for convenience. Make it in the build tree -# simply because there is no reason against having it here, and in addition, -# creating and moving files from /tmp can sometimes cause problems. -# Hook for its removal unless debugging. -# Note that there is a small window in which the directory will not be cleaned: -# after its creation but before its name has been assigned to `$tmp'. -$debug || -{ - tmp= ac_tmp= - trap 'exit_status=$? - : "${ac_tmp:=$tmp}" - { test ! -d "$ac_tmp" || rm -fr "$ac_tmp"; } && exit $exit_status -' 0 - trap 'as_fn_exit 1' 1 2 13 15 -} -# Create a (secure) tmp directory for tmp files. - -{ - tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` && - test -d "$tmp" -} || -{ - tmp=./conf$$-$RANDOM - (umask 077 && mkdir "$tmp") -} || as_fn_error $? "cannot create a temporary directory in ." "$LINENO" 5 -ac_tmp=$tmp - -# Set up the scripts for CONFIG_FILES section. -# No need to generate them if there are no CONFIG_FILES. -# This happens for instance with `./config.status config.h'. -if test -n "$CONFIG_FILES"; then - - -ac_cr=`echo X | tr X '\015'` -# On cygwin, bash can eat \r inside `` if the user requested igncr. -# But we know of no other shell where ac_cr would be empty at this -# point, so we can use a bashism as a fallback. -if test "x$ac_cr" = x; then - eval ac_cr=\$\'\\r\' -fi -ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' /dev/null` -if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then - ac_cs_awk_cr='\\r' -else - ac_cs_awk_cr=$ac_cr -fi - -echo 'BEGIN {' >"$ac_tmp/subs1.awk" && -cat >>"$ac_tmp/subs1.awk" <<\_ACAWK && -S["am__EXEEXT_FALSE"]="" -S["am__EXEEXT_TRUE"]="#" -S["LTLIBOBJS"]="" -S["LIBOBJS"]="" -S["WITH_GCOV_FALSE"]="" -S["WITH_GCOV_TRUE"]="#" -S["GCOV_LIBS"]="" -S["GCOV_CXXFLAGS"]="" -S["GCOV_CFLAGS"]="" -S["GENHTML"]="" -S["LCOV"]="" -S["SHTOOL"]="" -S["VALGRIND_LIBS"]="" -S["VALGRIND_CFLAGS"]="" -S["PKG_CONFIG_LIBDIR"]="" -S["PKG_CONFIG_PATH"]="" -S["PKG_CONFIG"]="" -S["LIBBZ2"]="" -S["LIBZ"]="" -S["DISTCHECK_CONFIGURE_FLAGS"]="CFLAGS='' CXXFLAGS='' --enable-pcre16 --enable-pcre32 --enable-jit --enable-cpp --enable-unicode-properties" -S["EXTRA_LIBPCRECPP_LDFLAGS"]=" -version-info 0:0:0 " -S["EXTRA_LIBPCREPOSIX_LDFLAGS"]=" -version-info 0:1:0" -S["EXTRA_LIBPCRE32_LDFLAGS"]=" -version-info 0:0:0" -S["EXTRA_LIBPCRE16_LDFLAGS"]=" -version-info 2:0:2" -S["EXTRA_LIBPCRE_LDFLAGS"]=" -version-info 3:0:2" -S["PTHREAD_CFLAGS"]="" -S["PTHREAD_LIBS"]="" -S["PTHREAD_CC"]="" -S["ax_pthread_config"]="" -S["PCRE_STATIC_CFLAG"]="" -S["LIBREADLINE"]="" -S["WITH_VALGRIND_FALSE"]="" -S["WITH_VALGRIND_TRUE"]="#" -S["WITH_UTF_FALSE"]="#" -S["WITH_UTF_TRUE"]="" -S["WITH_JIT_FALSE"]="" -S["WITH_JIT_TRUE"]="#" -S["WITH_REBUILD_CHARTABLES_FALSE"]="" -S["WITH_REBUILD_CHARTABLES_TRUE"]="#" -S["WITH_PCRE_CPP_FALSE"]="" -S["WITH_PCRE_CPP_TRUE"]="#" -S["WITH_PCRE32_FALSE"]="" -S["WITH_PCRE32_TRUE"]="#" -S["WITH_PCRE16_FALSE"]="" -S["WITH_PCRE16_TRUE"]="#" -S["WITH_PCRE8_FALSE"]="#" -S["WITH_PCRE8_TRUE"]="" -S["pcre_have_bits_type_traits"]="0" -S["pcre_have_type_traits"]="0" -S["pcre_have_ulong_long"]="" -S["pcre_have_long_long"]="" -S["enable_cpp"]="no" -S["enable_pcre32"]="no" -S["enable_pcre16"]="no" -S["enable_pcre8"]="yes" -S["PCRE_DATE"]="2012-11-30" -S["PCRE_PRERELEASE"]="" -S["PCRE_MINOR"]="32" -S["PCRE_MAJOR"]="8" -S["HAVE_VISIBILITY"]="1" -S["VISIBILITY_CXXFLAGS"]="-fvisibility=hidden -fvisibility-inlines-hidden" -S["VISIBILITY_CFLAGS"]="-fvisibility=hidden" -S["CXXCPP"]="mipsel-uclibc-g++ -E" -S["OTOOL64"]="" -S["OTOOL"]="" -S["LIPO"]="" -S["NMEDIT"]="" -S["DSYMUTIL"]="" -S["MANIFEST_TOOL"]=":" -S["RANLIB"]="mipsel-uclibc-ranlib" -S["ac_ct_AR"]="" -S["AR"]="mipsel-uclibc-ar" -S["LN_S"]="ln -s" -S["NM"]="mipsel-uclibc-nm" -S["ac_ct_DUMPBIN"]="" -S["DUMPBIN"]="" -S["LD"]="mipsel-uclibc-ld" -S["FGREP"]="/bin/grep -F" -S["SED"]="/bin/sed" -S["LIBTOOL"]="$(SHELL) $(top_builddir)/libtool" -S["OBJDUMP"]="objdump" -S["DLLTOOL"]="dlltool" -S["AS"]="mipsel-uclibc-as" -S["host_os"]="linux-gnu" -S["host_vendor"]="unknown" -S["host_cpu"]="mipsel" -S["host"]="mipsel-unknown-linux-gnu" -S["build_os"]="linux-gnu" -S["build_vendor"]="pc" -S["build_cpu"]="x86_64" -S["build"]="x86_64-pc-linux-gnu" -S["EGREP"]="/bin/grep -E" -S["GREP"]="/bin/grep" -S["CPP"]="mipsel-uclibc-gcc -E" -S["am__fastdepCXX_FALSE"]="" -S["am__fastdepCXX_TRUE"]="#" -S["CXXDEPMODE"]="depmode=none" -S["ac_ct_CXX"]="" -S["CXXFLAGS"]="-O2" -S["CXX"]="mipsel-uclibc-g++" -S["am__fastdepCC_FALSE"]="" -S["am__fastdepCC_TRUE"]="#" -S["CCDEPMODE"]="depmode=none" -S["am__nodep"]="" -S["AMDEPBACKSLASH"]="" -S["AMDEP_FALSE"]="" -S["AMDEP_TRUE"]="#" -S["am__quote"]="" -S["am__include"]="include" -S["DEPDIR"]=".deps" -S["OBJEXT"]="o" -S["EXEEXT"]="" -S["ac_ct_CC"]="" -S["CPPFLAGS"]="" -S["LDFLAGS"]="" -S["CFLAGS"]="-Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 " -S["CC"]="mipsel-uclibc-gcc" -S["AM_BACKSLASH"]="\\" -S["AM_DEFAULT_VERBOSITY"]="0" -S["AM_DEFAULT_V"]="$(AM_DEFAULT_VERBOSITY)" -S["AM_V"]="$(V)" -S["am__untar"]="$${TAR-tar} xf -" -S["am__tar"]="$${TAR-tar} chof - \"$$tardir\"" -S["AMTAR"]="$${TAR-tar}" -S["am__leading_dot"]="." -S["SET_MAKE"]="" -S["AWK"]="gawk" -S["mkdir_p"]="/bin/mkdir -p" -S["MKDIR_P"]="/bin/mkdir -p" -S["INSTALL_STRIP_PROGRAM"]="$(install_sh) -c -s" -S["STRIP"]="mipsel-uclibc-strip -R .note -R .comment" -S["install_sh"]="${SHELL} /home/vicente/tomato/release/src/router/pcre/install-sh" -S["MAKEINFO"]="${SHELL} /home/vicente/tomato/release/src/router/pcre/missing --run makeinfo" -S["AUTOHEADER"]="${SHELL} /home/vicente/tomato/release/src/router/pcre/missing --run autoheader" -S["AUTOMAKE"]="${SHELL} /home/vicente/tomato/release/src/router/pcre/missing --run automake-1.11" -S["AUTOCONF"]="${SHELL} /home/vicente/tomato/release/src/router/pcre/missing --run autoconf" -S["ACLOCAL"]="${SHELL} /home/vicente/tomato/release/src/router/pcre/missing --run aclocal-1.11" -S["VERSION"]="8.32" -S["PACKAGE"]="pcre" -S["CYGPATH_W"]="echo" -S["am__isrc"]="" -S["INSTALL_DATA"]="${INSTALL} -m 644" -S["INSTALL_SCRIPT"]="${INSTALL}" -S["INSTALL_PROGRAM"]="${INSTALL}" -S["target_alias"]="" -S["host_alias"]="mipsel-linux" -S["build_alias"]="x86_64-linux-gnu" -S["LIBS"]="" -S["ECHO_T"]="" -S["ECHO_N"]="-n" -S["ECHO_C"]="" -S["DEFS"]="-DHAVE_CONFIG_H" -S["mandir"]="${datarootdir}/man" -S["localedir"]="${datarootdir}/locale" -S["libdir"]="${exec_prefix}/lib" -S["psdir"]="${docdir}" -S["pdfdir"]="${docdir}" -S["dvidir"]="${docdir}" -S["htmldir"]="${docdir}/html" -S["infodir"]="${datarootdir}/info" -S["docdir"]="${datarootdir}/doc/${PACKAGE_TARNAME}" -S["oldincludedir"]="/usr/include" -S["includedir"]="${prefix}/include" -S["localstatedir"]="${prefix}/var" -S["sharedstatedir"]="${prefix}/com" -S["sysconfdir"]="${prefix}/etc" -S["datadir"]="${datarootdir}" -S["datarootdir"]="${prefix}/share" -S["libexecdir"]="${exec_prefix}/libexec" -S["sbindir"]="${exec_prefix}/sbin" -S["bindir"]="${exec_prefix}/bin" -S["program_transform_name"]="s,x,x," -S["prefix"]="/usr" -S["exec_prefix"]="${prefix}" -S["PACKAGE_URL"]="" -S["PACKAGE_BUGREPORT"]="" -S["PACKAGE_STRING"]="PCRE 8.32" -S["PACKAGE_VERSION"]="8.32" -S["PACKAGE_TARNAME"]="pcre" -S["PACKAGE_NAME"]="PCRE" -S["PATH_SEPARATOR"]=":" -S["SHELL"]="/bin/sh" -_ACAWK -cat >>"$ac_tmp/subs1.awk" <<_ACAWK && - for (key in S) S_is_set[key] = 1 - FS = "" - -} -{ - line = $ 0 - nfields = split(line, field, "@") - substed = 0 - len = length(field[1]) - for (i = 2; i < nfields; i++) { - key = field[i] - keylen = length(key) - if (S_is_set[key]) { - value = S[key] - line = substr(line, 1, len) "" value "" substr(line, len + keylen + 3) - len += length(value) + length(field[++i]) - substed = 1 - } else - len += 1 + keylen - } - - print line -} - -_ACAWK -if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then - sed "s/$ac_cr\$//; s/$ac_cr/$ac_cs_awk_cr/g" -else - cat -fi < "$ac_tmp/subs1.awk" > "$ac_tmp/subs.awk" \ - || as_fn_error $? "could not setup config files machinery" "$LINENO" 5 -fi # test -n "$CONFIG_FILES" - -# Set up the scripts for CONFIG_HEADERS section. -# No need to generate them if there are no CONFIG_HEADERS. -# This happens for instance with `./config.status Makefile'. -if test -n "$CONFIG_HEADERS"; then -cat >"$ac_tmp/defines.awk" <<\_ACAWK || -BEGIN { -D["PACKAGE_NAME"]=" \"PCRE\"" -D["PACKAGE_TARNAME"]=" \"pcre\"" -D["PACKAGE_VERSION"]=" \"8.32\"" -D["PACKAGE_STRING"]=" \"PCRE 8.32\"" -D["PACKAGE_BUGREPORT"]=" \"\"" -D["PACKAGE_URL"]=" \"\"" -D["PACKAGE"]=" \"pcre\"" -D["VERSION"]=" \"8.32\"" -D["STDC_HEADERS"]=" 1" -D["HAVE_SYS_TYPES_H"]=" 1" -D["HAVE_SYS_STAT_H"]=" 1" -D["HAVE_STDLIB_H"]=" 1" -D["HAVE_STRING_H"]=" 1" -D["HAVE_MEMORY_H"]=" 1" -D["HAVE_STRINGS_H"]=" 1" -D["HAVE_INTTYPES_H"]=" 1" -D["HAVE_STDINT_H"]=" 1" -D["HAVE_UNISTD_H"]=" 1" -D["HAVE_DLFCN_H"]=" 1" -D["LT_OBJDIR"]=" \".libs/\"" -D["PCRE_EXP_DECL"]=" extern __attribute__ ((visibility (\"default\")))" -D["PCRE_EXP_DEFN"]=" __attribute__ ((visibility (\"default\")))" -D["PCRE_EXP_DATA_DEFN"]=" __attribute__ ((visibility (\"default\")))" -D["PCREPOSIX_EXP_DECL"]=" extern __attribute__ ((visibility (\"default\")))" -D["PCREPOSIX_EXP_DEFN"]=" extern __attribute__ ((visibility (\"default\")))" -D["PCRECPP_EXP_DECL"]=" extern __attribute__ ((visibility (\"default\")))" -D["PCRECPP_EXP_DEFN"]=" __attribute__ ((visibility (\"default\")))" -D["HAVE_VISIBILITY"]=" 1" -D["STDC_HEADERS"]=" 1" -D["HAVE_LIMITS_H"]=" 1" -D["HAVE_SYS_TYPES_H"]=" 1" -D["HAVE_SYS_STAT_H"]=" 1" -D["HAVE_DIRENT_H"]=" 1" -D["HAVE_BCOPY"]=" 1" -D["HAVE_MEMMOVE"]=" 1" -D["HAVE_STRERROR"]=" 1" -D["SUPPORT_PCRE8"]=" /**/" -D["SUPPORT_UTF"]=" /**/" -D["SUPPORT_UCP"]=" /**/" -D["PCREGREP_BUFSIZE"]=" 20480" -D["NEWLINE"]=" 10" -D["LINK_SIZE"]=" 2" -D["POSIX_MALLOC_THRESHOLD"]=" 10" -D["MATCH_LIMIT"]=" 10000000" -D["MATCH_LIMIT_RECURSION"]=" MATCH_LIMIT" -D["MAX_NAME_SIZE"]=" 32" -D["MAX_NAME_COUNT"]=" 10000" - for (key in D) D_is_set[key] = 1 - FS = "" -} -/^[\t ]*#[\t ]*(define|undef)[\t ]+[_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ][_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789]*([\t (]|$)/ { - line = $ 0 - split(line, arg, " ") - if (arg[1] == "#") { - defundef = arg[2] - mac1 = arg[3] - } else { - defundef = substr(arg[1], 2) - mac1 = arg[2] - } - split(mac1, mac2, "(") #) - macro = mac2[1] - prefix = substr(line, 1, index(line, defundef) - 1) - if (D_is_set[macro]) { - # Preserve the white space surrounding the "#". - print prefix "define", macro P[macro] D[macro] - next - } else { - # Replace #undef with comments. This is necessary, for example, - # in the case of _POSIX_SOURCE, which is predefined and required - # on some systems where configure will not decide to define it. - if (defundef == "undef") { - print "/*", prefix defundef, macro, "*/" - next - } - } -} -{ print } -_ACAWK - as_fn_error $? "could not setup config headers machinery" "$LINENO" 5 -fi # test -n "$CONFIG_HEADERS" - - -eval set X " :F $CONFIG_FILES :H $CONFIG_HEADERS :C $CONFIG_COMMANDS" -shift -for ac_tag -do - case $ac_tag in - :[FHLC]) ac_mode=$ac_tag; continue;; - esac - case $ac_mode$ac_tag in - :[FHL]*:*);; - :L* | :C*:*) as_fn_error $? "invalid tag \`$ac_tag'" "$LINENO" 5;; - :[FH]-) ac_tag=-:-;; - :[FH]*) ac_tag=$ac_tag:$ac_tag.in;; - esac - ac_save_IFS=$IFS - IFS=: - set x $ac_tag - IFS=$ac_save_IFS - shift - ac_file=$1 - shift - - case $ac_mode in - :L) ac_source=$1;; - :[FH]) - ac_file_inputs= - for ac_f - do - case $ac_f in - -) ac_f="$ac_tmp/stdin";; - *) # Look for the file first in the build tree, then in the source tree - # (if the path is not absolute). The absolute path cannot be DOS-style, - # because $ac_f cannot contain `:'. - test -f "$ac_f" || - case $ac_f in - [\\/$]*) false;; - *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";; - esac || - as_fn_error 1 "cannot find input file: \`$ac_f'" "$LINENO" 5;; - esac - case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac - as_fn_append ac_file_inputs " '$ac_f'" - done - - # Let's still pretend it is `configure' which instantiates (i.e., don't - # use $as_me), people would be surprised to read: - # /* config.h. Generated by config.status. */ - configure_input='Generated from '` - $as_echo "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g' - `' by configure.' - if test x"$ac_file" != x-; then - configure_input="$ac_file. $configure_input" - { $as_echo "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5 -$as_echo "$as_me: creating $ac_file" >&6;} - fi - # Neutralize special characters interpreted by sed in replacement strings. - case $configure_input in #( - *\&* | *\|* | *\\* ) - ac_sed_conf_input=`$as_echo "$configure_input" | - sed 's/[\\\\&|]/\\\\&/g'`;; #( - *) ac_sed_conf_input=$configure_input;; - esac - - case $ac_tag in - *:-:* | *:-) cat >"$ac_tmp/stdin" \ - || as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;; - esac - ;; - esac - - ac_dir=`$as_dirname -- "$ac_file" || -$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$ac_file" : 'X\(//\)[^/]' \| \ - X"$ac_file" : 'X\(//\)$' \| \ - X"$ac_file" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$ac_file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - as_dir="$ac_dir"; as_fn_mkdir_p - ac_builddir=. - -case "$ac_dir" in -.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; -*) - ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'` - # A ".." for each directory in $ac_dir_suffix. - ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'` - case $ac_top_builddir_sub in - "") ac_top_builddir_sub=. ac_top_build_prefix= ;; - *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; - esac ;; -esac -ac_abs_top_builddir=$ac_pwd -ac_abs_builddir=$ac_pwd$ac_dir_suffix -# for backward compatibility: -ac_top_builddir=$ac_top_build_prefix - -case $srcdir in - .) # We are building in place. - ac_srcdir=. - ac_top_srcdir=$ac_top_builddir_sub - ac_abs_top_srcdir=$ac_pwd ;; - [\\/]* | ?:[\\/]* ) # Absolute name. - ac_srcdir=$srcdir$ac_dir_suffix; - ac_top_srcdir=$srcdir - ac_abs_top_srcdir=$srcdir ;; - *) # Relative name. - ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix - ac_top_srcdir=$ac_top_build_prefix$srcdir - ac_abs_top_srcdir=$ac_pwd/$srcdir ;; -esac -ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix - - - case $ac_mode in - :F) - # - # CONFIG_FILE - # - - case $INSTALL in - [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;; - *) ac_INSTALL=$ac_top_build_prefix$INSTALL ;; - esac - ac_MKDIR_P=$MKDIR_P - case $MKDIR_P in - [\\/$]* | ?:[\\/]* ) ;; - */*) ac_MKDIR_P=$ac_top_build_prefix$MKDIR_P ;; - esac -# If the template does not know about datarootdir, expand it. -# FIXME: This hack should be removed a few years after 2.60. -ac_datarootdir_hack=; ac_datarootdir_seen= -ac_sed_dataroot=' -/datarootdir/ { - p - q -} -/@datadir@/p -/@docdir@/p -/@infodir@/p -/@localedir@/p -/@mandir@/p' -case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in -*datarootdir*) ac_datarootdir_seen=yes;; -*@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*) - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5 -$as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;} - ac_datarootdir_hack=' - s&@datadir@&${datarootdir}&g - s&@docdir@&${datarootdir}/doc/${PACKAGE_TARNAME}&g - s&@infodir@&${datarootdir}/info&g - s&@localedir@&${datarootdir}/locale&g - s&@mandir@&${datarootdir}/man&g - s&\${datarootdir}&${prefix}/share&g' ;; -esac -ac_sed_extra="/^[ ]*VPATH[ ]*=[ ]*/{ -h -s/// -s/^/:/ -s/[ ]*$/:/ -s/:\$(srcdir):/:/g -s/:\${srcdir}:/:/g -s/:@srcdir@:/:/g -s/^:*// -s/:*$// -x -s/\(=[ ]*\).*/\1/ -G -s/\n// -s/^[^=]*=[ ]*$// -} - -:t -/@[a-zA-Z_][a-zA-Z_0-9]*@/!b -s|@configure_input@|$ac_sed_conf_input|;t t -s&@top_builddir@&$ac_top_builddir_sub&;t t -s&@top_build_prefix@&$ac_top_build_prefix&;t t -s&@srcdir@&$ac_srcdir&;t t -s&@abs_srcdir@&$ac_abs_srcdir&;t t -s&@top_srcdir@&$ac_top_srcdir&;t t -s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t -s&@builddir@&$ac_builddir&;t t -s&@abs_builddir@&$ac_abs_builddir&;t t -s&@abs_top_builddir@&$ac_abs_top_builddir&;t t -s&@INSTALL@&$ac_INSTALL&;t t -s&@MKDIR_P@&$ac_MKDIR_P&;t t -$ac_datarootdir_hack -" -eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$ac_tmp/subs.awk" \ - >$ac_tmp/out || as_fn_error $? "could not create $ac_file" "$LINENO" 5 - -test -z "$ac_datarootdir_hack$ac_datarootdir_seen" && - { ac_out=`sed -n '/\${datarootdir}/p' "$ac_tmp/out"`; test -n "$ac_out"; } && - { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' \ - "$ac_tmp/out"`; test -z "$ac_out"; } && - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir' -which seems to be undefined. Please make sure it is defined" >&5 -$as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir' -which seems to be undefined. Please make sure it is defined" >&2;} - - rm -f "$ac_tmp/stdin" - case $ac_file in - -) cat "$ac_tmp/out" && rm -f "$ac_tmp/out";; - *) rm -f "$ac_file" && mv "$ac_tmp/out" "$ac_file";; - esac \ - || as_fn_error $? "could not create $ac_file" "$LINENO" 5 - ;; - :H) - # - # CONFIG_HEADER - # - if test x"$ac_file" != x-; then - { - $as_echo "/* $configure_input */" \ - && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" - } >"$ac_tmp/config.h" \ - || as_fn_error $? "could not create $ac_file" "$LINENO" 5 - if diff "$ac_file" "$ac_tmp/config.h" >/dev/null 2>&1; then - { $as_echo "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5 -$as_echo "$as_me: $ac_file is unchanged" >&6;} - else - rm -f "$ac_file" - mv "$ac_tmp/config.h" "$ac_file" \ - || as_fn_error $? "could not create $ac_file" "$LINENO" 5 - fi - else - $as_echo "/* $configure_input */" \ - && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" \ - || as_fn_error $? "could not create -" "$LINENO" 5 - fi -# Compute "$ac_file"'s index in $config_headers. -_am_arg="$ac_file" -_am_stamp_count=1 -for _am_header in $config_headers :; do - case $_am_header in - $_am_arg | $_am_arg:* ) - break ;; - * ) - _am_stamp_count=`expr $_am_stamp_count + 1` ;; - esac -done -echo "timestamp for $_am_arg" >`$as_dirname -- "$_am_arg" || -$as_expr X"$_am_arg" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$_am_arg" : 'X\(//\)[^/]' \| \ - X"$_am_arg" : 'X\(//\)$' \| \ - X"$_am_arg" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$_am_arg" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'`/stamp-h$_am_stamp_count - ;; - - :C) { $as_echo "$as_me:${as_lineno-$LINENO}: executing $ac_file commands" >&5 -$as_echo "$as_me: executing $ac_file commands" >&6;} - ;; - esac - - - case $ac_file$ac_mode in - "depfiles":C) test x"$AMDEP_TRUE" != x"" || { - # Autoconf 2.62 quotes --file arguments for eval, but not when files - # are listed without --file. Let's play safe and only enable the eval - # if we detect the quoting. - case $CONFIG_FILES in - *\'*) eval set x "$CONFIG_FILES" ;; - *) set x $CONFIG_FILES ;; - esac - shift - for mf - do - # Strip MF so we end up with the name of the file. - mf=`echo "$mf" | sed -e 's/:.*$//'` - # Check whether this is an Automake generated Makefile or not. - # We used to match only the files named `Makefile.in', but - # some people rename them; so instead we look at the file content. - # Grep'ing the first line is not enough: some people post-process - # each Makefile.in and add a new line on top of each file to say so. - # Grep'ing the whole file is not good either: AIX grep has a line - # limit of 2048, but all sed's we know have understand at least 4000. - if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then - dirpart=`$as_dirname -- "$mf" || -$as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$mf" : 'X\(//\)[^/]' \| \ - X"$mf" : 'X\(//\)$' \| \ - X"$mf" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$mf" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - else - continue - fi - # Extract the definition of DEPDIR, am__include, and am__quote - # from the Makefile without running `make'. - DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"` - test -z "$DEPDIR" && continue - am__include=`sed -n 's/^am__include = //p' < "$mf"` - test -z "am__include" && continue - am__quote=`sed -n 's/^am__quote = //p' < "$mf"` - # When using ansi2knr, U may be empty or an underscore; expand it - U=`sed -n 's/^U = //p' < "$mf"` - # Find all dependency output files, they are included files with - # $(DEPDIR) in their names. We invoke sed twice because it is the - # simplest approach to changing $(DEPDIR) to its actual value in the - # expansion. - for file in `sed -n " - s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \ - sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do - # Make sure the directory exists. - test -f "$dirpart/$file" && continue - fdir=`$as_dirname -- "$file" || -$as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$file" : 'X\(//\)[^/]' \| \ - X"$file" : 'X\(//\)$' \| \ - X"$file" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - as_dir=$dirpart/$fdir; as_fn_mkdir_p - # echo "creating $dirpart/$file" - echo '# dummy' > "$dirpart/$file" - done - done -} - ;; - "libtool":C) - - # See if we are running on zsh, and set the options which allow our - # commands through without removal of \ escapes. - if test -n "${ZSH_VERSION+set}" ; then - setopt NO_GLOB_SUBST - fi - - cfgfile="${ofile}T" - trap "$RM \"$cfgfile\"; exit 1" 1 2 15 - $RM "$cfgfile" - - cat <<_LT_EOF >> "$cfgfile" -#! $SHELL - -# `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services. -# Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $VERSION -# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`: -# NOTE: Changes made to this file will be lost: look at ltmain.sh. -# -# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, -# 2006, 2007, 2008, 2009, 2010 Free Software Foundation, -# Inc. -# Written by Gordon Matzigkeit, 1996 -# -# This file is part of GNU Libtool. -# -# GNU Libtool is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License as -# published by the Free Software Foundation; either version 2 of -# the License, or (at your option) any later version. -# -# As a special exception to the GNU General Public License, -# if you distribute this file as part of a program or library that -# is built using GNU Libtool, you may include this file under the -# same distribution terms that you use for the rest of that program. -# -# GNU Libtool is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GNU Libtool; see the file COPYING. If not, a copy -# can be downloaded from http://www.gnu.org/licenses/gpl.html, or -# obtained by writing to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - - -# The names of the tagged configurations supported by this script. -available_tags="CXX " - -# ### BEGIN LIBTOOL CONFIG - -# Assembler program. -AS=$lt_AS - -# DLL creation program. -DLLTOOL=$lt_DLLTOOL - -# Object dumper program. -OBJDUMP=$lt_OBJDUMP - -# Which release of libtool.m4 was used? -macro_version=$macro_version -macro_revision=$macro_revision - -# Whether or not to build shared libraries. -build_libtool_libs=$enable_shared - -# Whether or not to build static libraries. -build_old_libs=$enable_static - -# What type of objects to build. -pic_mode=$pic_mode - -# Whether or not to optimize for fast installation. -fast_install=$enable_fast_install - -# Shell to use when invoking shell scripts. -SHELL=$lt_SHELL - -# An echo program that protects backslashes. -ECHO=$lt_ECHO - -# The host system. -host_alias=$host_alias -host=$host -host_os=$host_os - -# The build system. -build_alias=$build_alias -build=$build -build_os=$build_os - -# A sed program that does not truncate output. -SED=$lt_SED - -# Sed that helps us avoid accidentally triggering echo(1) options like -n. -Xsed="\$SED -e 1s/^X//" - -# A grep program that handles long lines. -GREP=$lt_GREP - -# An ERE matcher. -EGREP=$lt_EGREP - -# A literal string matcher. -FGREP=$lt_FGREP - -# A BSD- or MS-compatible name lister. -NM=$lt_NM - -# Whether we need soft or hard links. -LN_S=$lt_LN_S - -# What is the maximum length of a command? -max_cmd_len=$max_cmd_len - -# Object file suffix (normally "o"). -objext=$ac_objext - -# Executable file suffix (normally ""). -exeext=$exeext - -# whether the shell understands "unset". -lt_unset=$lt_unset - -# turn spaces into newlines. -SP2NL=$lt_lt_SP2NL - -# turn newlines into spaces. -NL2SP=$lt_lt_NL2SP - -# convert \$build file names to \$host format. -to_host_file_cmd=$lt_cv_to_host_file_cmd - -# convert \$build files to toolchain format. -to_tool_file_cmd=$lt_cv_to_tool_file_cmd - -# Method to check whether dependent libraries are shared objects. -deplibs_check_method=$lt_deplibs_check_method - -# Command to use when deplibs_check_method = "file_magic". -file_magic_cmd=$lt_file_magic_cmd - -# How to find potential files when deplibs_check_method = "file_magic". -file_magic_glob=$lt_file_magic_glob - -# Find potential files using nocaseglob when deplibs_check_method = "file_magic". -want_nocaseglob=$lt_want_nocaseglob - -# Command to associate shared and link libraries. -sharedlib_from_linklib_cmd=$lt_sharedlib_from_linklib_cmd - -# The archiver. -AR=$lt_AR - -# Flags to create an archive. -AR_FLAGS=$lt_AR_FLAGS - -# How to feed a file listing to the archiver. -archiver_list_spec=$lt_archiver_list_spec - -# A symbol stripping program. -STRIP=$lt_STRIP - -# Commands used to install an old-style archive. -RANLIB=$lt_RANLIB -old_postinstall_cmds=$lt_old_postinstall_cmds -old_postuninstall_cmds=$lt_old_postuninstall_cmds - -# Whether to use a lock for old archive extraction. -lock_old_archive_extraction=$lock_old_archive_extraction - -# A C compiler. -LTCC=$lt_CC - -# LTCC compiler flags. -LTCFLAGS=$lt_CFLAGS - -# Take the output of nm and produce a listing of raw symbols and C names. -global_symbol_pipe=$lt_lt_cv_sys_global_symbol_pipe - -# Transform the output of nm in a proper C declaration. -global_symbol_to_cdecl=$lt_lt_cv_sys_global_symbol_to_cdecl - -# Transform the output of nm in a C name address pair. -global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address - -# Transform the output of nm in a C name address pair when lib prefix is needed. -global_symbol_to_c_name_address_lib_prefix=$lt_lt_cv_sys_global_symbol_to_c_name_address_lib_prefix - -# Specify filename containing input files for \$NM. -nm_file_list_spec=$lt_nm_file_list_spec - -# The root where to search for dependent libraries,and in which our libraries should be installed. -lt_sysroot=$lt_sysroot - -# The name of the directory that contains temporary libtool files. -objdir=$objdir - -# Used to examine libraries when file_magic_cmd begins with "file". -MAGIC_CMD=$MAGIC_CMD - -# Must we lock files when doing compilation? -need_locks=$lt_need_locks - -# Manifest tool. -MANIFEST_TOOL=$lt_MANIFEST_TOOL - -# Tool to manipulate archived DWARF debug symbol files on Mac OS X. -DSYMUTIL=$lt_DSYMUTIL - -# Tool to change global to local symbols on Mac OS X. -NMEDIT=$lt_NMEDIT - -# Tool to manipulate fat objects and archives on Mac OS X. -LIPO=$lt_LIPO - -# ldd/readelf like tool for Mach-O binaries on Mac OS X. -OTOOL=$lt_OTOOL - -# ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4. -OTOOL64=$lt_OTOOL64 - -# Old archive suffix (normally "a"). -libext=$libext - -# Shared library suffix (normally ".so"). -shrext_cmds=$lt_shrext_cmds - -# The commands to extract the exported symbol list from a shared archive. -extract_expsyms_cmds=$lt_extract_expsyms_cmds - -# Variables whose values should be saved in libtool wrapper scripts and -# restored at link time. -variables_saved_for_relink=$lt_variables_saved_for_relink - -# Do we need the "lib" prefix for modules? -need_lib_prefix=$need_lib_prefix - -# Do we need a version for libraries? -need_version=$need_version - -# Library versioning type. -version_type=$version_type - -# Shared library runtime path variable. -runpath_var=$runpath_var - -# Shared library path variable. -shlibpath_var=$shlibpath_var - -# Is shlibpath searched before the hard-coded library search path? -shlibpath_overrides_runpath=$shlibpath_overrides_runpath - -# Format of library name prefix. -libname_spec=$lt_libname_spec - -# List of archive names. First name is the real one, the rest are links. -# The last name is the one that the linker finds with -lNAME -library_names_spec=$lt_library_names_spec - -# The coded name of the library, if different from the real name. -soname_spec=$lt_soname_spec - -# Permission mode override for installation of shared libraries. -install_override_mode=$lt_install_override_mode - -# Command to use after installation of a shared archive. -postinstall_cmds=$lt_postinstall_cmds - -# Command to use after uninstallation of a shared archive. -postuninstall_cmds=$lt_postuninstall_cmds - -# Commands used to finish a libtool library installation in a directory. -finish_cmds=$lt_finish_cmds - -# As "finish_cmds", except a single script fragment to be evaled but -# not shown. -finish_eval=$lt_finish_eval - -# Whether we should hardcode library paths into libraries. -hardcode_into_libs=$hardcode_into_libs - -# Compile-time system search path for libraries. -sys_lib_search_path_spec=$lt_sys_lib_search_path_spec - -# Run-time system search path for libraries. -sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec - -# Whether dlopen is supported. -dlopen_support=$enable_dlopen - -# Whether dlopen of programs is supported. -dlopen_self=$enable_dlopen_self - -# Whether dlopen of statically linked programs is supported. -dlopen_self_static=$enable_dlopen_self_static - -# Commands to strip libraries. -old_striplib=$lt_old_striplib -striplib=$lt_striplib - - -# The linker used to build libraries. -LD=$lt_LD - -# How to create reloadable object files. -reload_flag=$lt_reload_flag -reload_cmds=$lt_reload_cmds - -# Commands used to build an old-style archive. -old_archive_cmds=$lt_old_archive_cmds - -# A language specific compiler. -CC=$lt_compiler - -# Is the compiler the GNU compiler? -with_gcc=$GCC - -# Compiler flag to turn off builtin functions. -no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag - -# Additional compiler flags for building library objects. -pic_flag=$lt_lt_prog_compiler_pic - -# How to pass a linker flag through the compiler. -wl=$lt_lt_prog_compiler_wl - -# Compiler flag to prevent dynamic linking. -link_static_flag=$lt_lt_prog_compiler_static - -# Does compiler simultaneously support -c and -o options? -compiler_c_o=$lt_lt_cv_prog_compiler_c_o - -# Whether or not to add -lc for building shared libraries. -build_libtool_need_lc=$archive_cmds_need_lc - -# Whether or not to disallow shared libs when runtime libs are static. -allow_libtool_libs_with_static_runtimes=$enable_shared_with_static_runtimes - -# Compiler flag to allow reflexive dlopens. -export_dynamic_flag_spec=$lt_export_dynamic_flag_spec - -# Compiler flag to generate shared objects directly from archives. -whole_archive_flag_spec=$lt_whole_archive_flag_spec - -# Whether the compiler copes with passing no objects directly. -compiler_needs_object=$lt_compiler_needs_object - -# Create an old-style archive from a shared archive. -old_archive_from_new_cmds=$lt_old_archive_from_new_cmds - -# Create a temporary old-style archive to link instead of a shared archive. -old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds - -# Commands used to build a shared archive. -archive_cmds=$lt_archive_cmds -archive_expsym_cmds=$lt_archive_expsym_cmds - -# Commands used to build a loadable module if different from building -# a shared archive. -module_cmds=$lt_module_cmds -module_expsym_cmds=$lt_module_expsym_cmds - -# Whether we are building with GNU ld or not. -with_gnu_ld=$lt_with_gnu_ld - -# Flag that allows shared libraries with undefined symbols to be built. -allow_undefined_flag=$lt_allow_undefined_flag - -# Flag that enforces no undefined symbols. -no_undefined_flag=$lt_no_undefined_flag - -# Flag to hardcode \$libdir into a binary during linking. -# This must work even if \$libdir does not exist -hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec - -# If ld is used when linking, flag to hardcode \$libdir into a binary -# during linking. This must work even if \$libdir does not exist. -hardcode_libdir_flag_spec_ld=$lt_hardcode_libdir_flag_spec_ld - -# Whether we need a single "-rpath" flag with a separated argument. -hardcode_libdir_separator=$lt_hardcode_libdir_separator - -# Set to "yes" if using DIR/libNAME\${shared_ext} during linking hardcodes -# DIR into the resulting binary. -hardcode_direct=$hardcode_direct - -# Set to "yes" if using DIR/libNAME\${shared_ext} during linking hardcodes -# DIR into the resulting binary and the resulting library dependency is -# "absolute",i.e impossible to change by setting \${shlibpath_var} if the -# library is relocated. -hardcode_direct_absolute=$hardcode_direct_absolute - -# Set to "yes" if using the -LDIR flag during linking hardcodes DIR -# into the resulting binary. -hardcode_minus_L=$hardcode_minus_L - -# Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR -# into the resulting binary. -hardcode_shlibpath_var=$hardcode_shlibpath_var - -# Set to "yes" if building a shared library automatically hardcodes DIR -# into the library and all subsequent libraries and executables linked -# against it. -hardcode_automatic=$hardcode_automatic - -# Set to yes if linker adds runtime paths of dependent libraries -# to runtime path list. -inherit_rpath=$inherit_rpath - -# Whether libtool must link a program against all its dependency libraries. -link_all_deplibs=$link_all_deplibs - -# Set to "yes" if exported symbols are required. -always_export_symbols=$always_export_symbols - -# The commands to list exported symbols. -export_symbols_cmds=$lt_export_symbols_cmds - -# Symbols that should not be listed in the preloaded symbols. -exclude_expsyms=$lt_exclude_expsyms - -# Symbols that must always be exported. -include_expsyms=$lt_include_expsyms - -# Commands necessary for linking programs (against libraries) with templates. -prelink_cmds=$lt_prelink_cmds - -# Commands necessary for finishing linking programs. -postlink_cmds=$lt_postlink_cmds - -# Specify filename containing input files. -file_list_spec=$lt_file_list_spec - -# How to hardcode a shared library path into an executable. -hardcode_action=$hardcode_action - -# The directories searched by this compiler when creating a shared library. -compiler_lib_search_dirs=$lt_compiler_lib_search_dirs - -# Dependencies to place before and after the objects being linked to -# create a shared library. -predep_objects=$lt_predep_objects -postdep_objects=$lt_postdep_objects -predeps=$lt_predeps -postdeps=$lt_postdeps - -# The library search path used internally by the compiler when linking -# a shared library. -compiler_lib_search_path=$lt_compiler_lib_search_path - -# ### END LIBTOOL CONFIG - -_LT_EOF - - case $host_os in - aix3*) - cat <<\_LT_EOF >> "$cfgfile" -# AIX sometimes has problems with the GCC collect2 program. For some -# reason, if we set the COLLECT_NAMES environment variable, the problems -# vanish in a puff of smoke. -if test "X${COLLECT_NAMES+set}" != Xset; then - COLLECT_NAMES= - export COLLECT_NAMES -fi -_LT_EOF - ;; - esac - - -ltmain="$ac_aux_dir/ltmain.sh" - - - # We use sed instead of cat because bash on DJGPP gets confused if - # if finds mixed CR/LF and LF-only lines. Since sed operates in - # text mode, it properly converts lines to CR/LF. This bash problem - # is reportedly fixed, but why not run on old versions too? - sed '$q' "$ltmain" >> "$cfgfile" \ - || (rm -f "$cfgfile"; exit 1) - - if test x"$xsi_shell" = xyes; then - sed -e '/^func_dirname ()$/,/^} # func_dirname /c\ -func_dirname ()\ -{\ -\ case ${1} in\ -\ */*) func_dirname_result="${1%/*}${2}" ;;\ -\ * ) func_dirname_result="${3}" ;;\ -\ esac\ -} # Extended-shell func_dirname implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_basename ()$/,/^} # func_basename /c\ -func_basename ()\ -{\ -\ func_basename_result="${1##*/}"\ -} # Extended-shell func_basename implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_dirname_and_basename ()$/,/^} # func_dirname_and_basename /c\ -func_dirname_and_basename ()\ -{\ -\ case ${1} in\ -\ */*) func_dirname_result="${1%/*}${2}" ;;\ -\ * ) func_dirname_result="${3}" ;;\ -\ esac\ -\ func_basename_result="${1##*/}"\ -} # Extended-shell func_dirname_and_basename implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_stripname ()$/,/^} # func_stripname /c\ -func_stripname ()\ -{\ -\ # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are\ -\ # positional parameters, so assign one to ordinary parameter first.\ -\ func_stripname_result=${3}\ -\ func_stripname_result=${func_stripname_result#"${1}"}\ -\ func_stripname_result=${func_stripname_result%"${2}"}\ -} # Extended-shell func_stripname implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_split_long_opt ()$/,/^} # func_split_long_opt /c\ -func_split_long_opt ()\ -{\ -\ func_split_long_opt_name=${1%%=*}\ -\ func_split_long_opt_arg=${1#*=}\ -} # Extended-shell func_split_long_opt implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_split_short_opt ()$/,/^} # func_split_short_opt /c\ -func_split_short_opt ()\ -{\ -\ func_split_short_opt_arg=${1#??}\ -\ func_split_short_opt_name=${1%"$func_split_short_opt_arg"}\ -} # Extended-shell func_split_short_opt implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_lo2o ()$/,/^} # func_lo2o /c\ -func_lo2o ()\ -{\ -\ case ${1} in\ -\ *.lo) func_lo2o_result=${1%.lo}.${objext} ;;\ -\ *) func_lo2o_result=${1} ;;\ -\ esac\ -} # Extended-shell func_lo2o implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_xform ()$/,/^} # func_xform /c\ -func_xform ()\ -{\ - func_xform_result=${1%.*}.lo\ -} # Extended-shell func_xform implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_arith ()$/,/^} # func_arith /c\ -func_arith ()\ -{\ - func_arith_result=$(( $* ))\ -} # Extended-shell func_arith implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_len ()$/,/^} # func_len /c\ -func_len ()\ -{\ - func_len_result=${#1}\ -} # Extended-shell func_len implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - -fi - -if test x"$lt_shell_append" = xyes; then - sed -e '/^func_append ()$/,/^} # func_append /c\ -func_append ()\ -{\ - eval "${1}+=\\${2}"\ -} # Extended-shell func_append implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_append_quoted ()$/,/^} # func_append_quoted /c\ -func_append_quoted ()\ -{\ -\ func_quote_for_eval "${2}"\ -\ eval "${1}+=\\\\ \\$func_quote_for_eval_result"\ -} # Extended-shell func_append_quoted implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - # Save a `func_append' function call where possible by direct use of '+=' - sed -e 's%func_append \([a-zA-Z_]\{1,\}\) "%\1+="%g' $cfgfile > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") - test 0 -eq $? || _lt_function_replace_fail=: -else - # Save a `func_append' function call even when '+=' is not available - sed -e 's%func_append \([a-zA-Z_]\{1,\}\) "%\1="$\1%g' $cfgfile > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") - test 0 -eq $? || _lt_function_replace_fail=: -fi - -if test x"$_lt_function_replace_fail" = x":"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Unable to substitute extended shell functions in $ofile" >&5 -$as_echo "$as_me: WARNING: Unable to substitute extended shell functions in $ofile" >&2;} -fi - - - mv -f "$cfgfile" "$ofile" || - (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile") - chmod +x "$ofile" - - - cat <<_LT_EOF >> "$ofile" - -# ### BEGIN LIBTOOL TAG CONFIG: CXX - -# The linker used to build libraries. -LD=$lt_LD_CXX - -# How to create reloadable object files. -reload_flag=$lt_reload_flag_CXX -reload_cmds=$lt_reload_cmds_CXX - -# Commands used to build an old-style archive. -old_archive_cmds=$lt_old_archive_cmds_CXX - -# A language specific compiler. -CC=$lt_compiler_CXX - -# Is the compiler the GNU compiler? -with_gcc=$GCC_CXX - -# Compiler flag to turn off builtin functions. -no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag_CXX - -# Additional compiler flags for building library objects. -pic_flag=$lt_lt_prog_compiler_pic_CXX - -# How to pass a linker flag through the compiler. -wl=$lt_lt_prog_compiler_wl_CXX - -# Compiler flag to prevent dynamic linking. -link_static_flag=$lt_lt_prog_compiler_static_CXX - -# Does compiler simultaneously support -c and -o options? -compiler_c_o=$lt_lt_cv_prog_compiler_c_o_CXX - -# Whether or not to add -lc for building shared libraries. -build_libtool_need_lc=$archive_cmds_need_lc_CXX - -# Whether or not to disallow shared libs when runtime libs are static. -allow_libtool_libs_with_static_runtimes=$enable_shared_with_static_runtimes_CXX - -# Compiler flag to allow reflexive dlopens. -export_dynamic_flag_spec=$lt_export_dynamic_flag_spec_CXX - -# Compiler flag to generate shared objects directly from archives. -whole_archive_flag_spec=$lt_whole_archive_flag_spec_CXX - -# Whether the compiler copes with passing no objects directly. -compiler_needs_object=$lt_compiler_needs_object_CXX - -# Create an old-style archive from a shared archive. -old_archive_from_new_cmds=$lt_old_archive_from_new_cmds_CXX - -# Create a temporary old-style archive to link instead of a shared archive. -old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds_CXX - -# Commands used to build a shared archive. -archive_cmds=$lt_archive_cmds_CXX -archive_expsym_cmds=$lt_archive_expsym_cmds_CXX - -# Commands used to build a loadable module if different from building -# a shared archive. -module_cmds=$lt_module_cmds_CXX -module_expsym_cmds=$lt_module_expsym_cmds_CXX - -# Whether we are building with GNU ld or not. -with_gnu_ld=$lt_with_gnu_ld_CXX - -# Flag that allows shared libraries with undefined symbols to be built. -allow_undefined_flag=$lt_allow_undefined_flag_CXX - -# Flag that enforces no undefined symbols. -no_undefined_flag=$lt_no_undefined_flag_CXX - -# Flag to hardcode \$libdir into a binary during linking. -# This must work even if \$libdir does not exist -hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec_CXX - -# If ld is used when linking, flag to hardcode \$libdir into a binary -# during linking. This must work even if \$libdir does not exist. -hardcode_libdir_flag_spec_ld=$lt_hardcode_libdir_flag_spec_ld_CXX - -# Whether we need a single "-rpath" flag with a separated argument. -hardcode_libdir_separator=$lt_hardcode_libdir_separator_CXX - -# Set to "yes" if using DIR/libNAME\${shared_ext} during linking hardcodes -# DIR into the resulting binary. -hardcode_direct=$hardcode_direct_CXX - -# Set to "yes" if using DIR/libNAME\${shared_ext} during linking hardcodes -# DIR into the resulting binary and the resulting library dependency is -# "absolute",i.e impossible to change by setting \${shlibpath_var} if the -# library is relocated. -hardcode_direct_absolute=$hardcode_direct_absolute_CXX - -# Set to "yes" if using the -LDIR flag during linking hardcodes DIR -# into the resulting binary. -hardcode_minus_L=$hardcode_minus_L_CXX - -# Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR -# into the resulting binary. -hardcode_shlibpath_var=$hardcode_shlibpath_var_CXX - -# Set to "yes" if building a shared library automatically hardcodes DIR -# into the library and all subsequent libraries and executables linked -# against it. -hardcode_automatic=$hardcode_automatic_CXX - -# Set to yes if linker adds runtime paths of dependent libraries -# to runtime path list. -inherit_rpath=$inherit_rpath_CXX - -# Whether libtool must link a program against all its dependency libraries. -link_all_deplibs=$link_all_deplibs_CXX - -# Set to "yes" if exported symbols are required. -always_export_symbols=$always_export_symbols_CXX - -# The commands to list exported symbols. -export_symbols_cmds=$lt_export_symbols_cmds_CXX - -# Symbols that should not be listed in the preloaded symbols. -exclude_expsyms=$lt_exclude_expsyms_CXX - -# Symbols that must always be exported. -include_expsyms=$lt_include_expsyms_CXX - -# Commands necessary for linking programs (against libraries) with templates. -prelink_cmds=$lt_prelink_cmds_CXX - -# Commands necessary for finishing linking programs. -postlink_cmds=$lt_postlink_cmds_CXX - -# Specify filename containing input files. -file_list_spec=$lt_file_list_spec_CXX - -# How to hardcode a shared library path into an executable. -hardcode_action=$hardcode_action_CXX - -# The directories searched by this compiler when creating a shared library. -compiler_lib_search_dirs=$lt_compiler_lib_search_dirs_CXX - -# Dependencies to place before and after the objects being linked to -# create a shared library. -predep_objects=$lt_predep_objects_CXX -postdep_objects=$lt_postdep_objects_CXX -predeps=$lt_predeps_CXX -postdeps=$lt_postdeps_CXX - -# The library search path used internally by the compiler when linking -# a shared library. -compiler_lib_search_path=$lt_compiler_lib_search_path_CXX - -# ### END LIBTOOL TAG CONFIG: CXX -_LT_EOF - - ;; - "script-chmod":C) chmod a+x pcre-config ;; - "delete-old-chartables":C) rm -f pcre_chartables.c ;; - - esac -done # for ac_tag - - -as_fn_exit 0 diff --git a/release/src/router/pptpd/Makefile b/release/src/router/pptpd/Makefile index 395a222925..26e685a220 100644 --- a/release/src/router/pptpd/Makefile +++ b/release/src/router/pptpd/Makefile @@ -94,13 +94,13 @@ DIST_ARCHIVES = $(distdir).tar.gz GZIP_ENV = --best distuninstallcheck_listfiles = find . -type f -print distcleancheck_listfiles = find . -type f -print -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src-rt/router/pptpd/missing --run aclocal-1.9 +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/pptpd/missing --run aclocal-1.9 AMDEP_FALSE = # AMDEP_TRUE = -AMTAR = ${SHELL} /home/vicente/tomato/release/src-rt/router/pptpd/missing --run tar -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src-rt/router/pptpd/missing --run autoconf -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src-rt/router/pptpd/missing --run autoheader -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src-rt/router/pptpd/missing --run automake-1.9 +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/pptpd/missing --run tar +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/pptpd/missing --run autoconf +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/pptpd/missing --run autoheader +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/pptpd/missing --run automake-1.9 AWK = gawk CC = mipsel-uclibc-gcc CCDEPMODE = depmode=none @@ -126,7 +126,7 @@ LIBOBJS = LIBS = LN_S = ln -s LTLIBOBJS = -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src-rt/router/pptpd/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src-rt/router/pptpd/missing --run makeinfo OBJEXT = o PACKAGE = pptpd PACKAGE_BUGREPORT = @@ -163,7 +163,7 @@ host_alias = mipsel-linux htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = /home/vicente/tomato/release/src-rt/router/pptpd/install-sh +install_sh = /home/vicente/repos/tomato/release/src-rt/router/pptpd/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = ${datarootdir}/locale @@ -172,7 +172,7 @@ mandir = ${datarootdir}/man mkdir_p = mkdir -p -- oldincludedir = /usr/include pdfdir = ${docdir} -prefix = /home/vicente/tomato/release/src-rt/router/mipsel-uclibc/install/pptpd +prefix = /home/vicente/repos/tomato/release/src-rt/router/mipsel-uclibc/install/pptpd program_transform_name = s,x,x, psdir = ${docdir} sbindir = ${exec_prefix}/sbin diff --git a/release/src/router/rp-pppoe/src/Makefile b/release/src/router/rp-pppoe/src/Makefile index 9f4263b212..bcc53d37e5 100644 --- a/release/src/router/rp-pppoe/src/Makefile +++ b/release/src/router/rp-pppoe/src/Makefile @@ -29,7 +29,7 @@ sbindir=${exec_prefix}/sbin # Plugin for pppd on Linux LINUX_KERNELMODE_PLUGIN=rp-pppoe.so -PPPD_INCDIR=/home/vicente/tomato/release/src-rt/router/pppd +PPPD_INCDIR=/home/vicente/repos/tomato/release/src-rt/router/pppd # Licensed version LIC_INCDIR= diff --git a/release/src/router/rp-pppoe/src/config.log b/release/src/router/rp-pppoe/src/config.log deleted file mode 100644 index dd29de5bf4..0000000000 --- a/release/src/router/rp-pppoe/src/config.log +++ /dev/null @@ -1,2294 +0,0 @@ -This file contains any messages produced by compilers while -running configure, to aid debugging if configure makes a mistake. - -It was created by configure, which was -generated by GNU Autoconf 2.67. Invocation command line was - - $ ./configure --host=mipsel-linux --build=x86_64-linux-gnu --prefix=/usr --enable-plugin=/home/vicente/tomato/release/src-rt/router/pppd ac_cv_linux_kernel_pppoe=yes rpppoe_cv_pack_bitfields=rev - -## --------- ## -## Platform. ## -## --------- ## - -hostname = vicente-P5K-E -uname -m = x86_64 -uname -r = 3.2.0-47-generic -uname -s = Linux -uname -v = #72-Ubuntu SMP Mon Jun 3 17:53:49 UTC 2013 - -/usr/bin/uname -p = unknown -/bin/uname -X = unknown - -/bin/arch = unknown -/usr/bin/arch -k = unknown -/usr/convex/getsysinfo = unknown -/usr/bin/hostinfo = unknown -/bin/machine = unknown -/usr/bin/oslevel = unknown -/bin/universe = unknown - -PATH: /home/vicente/tomato/release/tools -PATH: /home/vicente/tomato/release/tools -PATH: /home/vicente/tomato/release/tools -PATH: /home/vicente/tomato/release/tools -PATH: /opt/brcm/hndtools-mipsel-uclibc/bin -PATH: /opt/brcm/hndtools-mipsel-linux/bin -PATH: /usr/lib/lightdm/lightdm -PATH: /usr/local/sbin -PATH: /usr/local/bin -PATH: /usr/sbin -PATH: /usr/bin -PATH: /sbin -PATH: /bin -PATH: /usr/games - - -## ----------- ## -## Core tests. ## -## ----------- ## - -configure:2334: checking for mipsel-linux-gcc -configure:2361: result: mipsel-uclibc-gcc -configure:2630: checking for C compiler version -configure:2639: mipsel-uclibc-gcc --version >&5 -mipsel-uclibc-gcc (GCC) 4.2.4 -Copyright (C) 2007 Free Software Foundation, Inc. -This is free software; see the source for copying conditions. There is NO -warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - -configure:2650: $? = 0 -configure:2639: mipsel-uclibc-gcc -v >&5 -Using built-in specs. -Target: mipsel-linux-uclibc -Configured with: /home/fedork/tomato/toolchain/build_dir/toolchain-mipsel_gcc4.2.4/gcc-4.2.4/configure --prefix=/opt/brcm/hndtools-mipsel-uclibc-4.2.4 --build=i486-linux-gnu --host=i486-linux-gnu --target=mipsel-linux-uclibc --with-gnu-ld --enable-target-optspace --disable-libgomp --disable-libmudflap --disable-multilib --disable-nls --disable-__cxa_atexit --enable-libssp --enable-languages=c,c++ --enable-shared --enable-threads --enable-tls -Thread model: posix -gcc version 4.2.4 -configure:2650: $? = 0 -configure:2639: mipsel-uclibc-gcc -V >&5 -mipsel-uclibc-gcc: '-V' option must have argument -configure:2650: $? = 1 -configure:2639: mipsel-uclibc-gcc -qversion >&5 -mipsel-uclibc-gcc: unrecognized option '-qversion' -mipsel-uclibc-gcc: no input files -configure:2650: $? = 1 -configure:2670: checking whether the C compiler works -configure:2692: mipsel-uclibc-gcc -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:2696: $? = 0 -configure:2744: result: yes -configure:2747: checking for C compiler default output file name -configure:2749: result: a.out -configure:2755: checking for suffix of executables -configure:2762: mipsel-uclibc-gcc -o conftest -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:2766: $? = 0 -configure:2788: result: -configure:2810: checking whether we are cross compiling -configure:2848: result: yes -configure:2853: checking for suffix of object files -configure:2875: mipsel-uclibc-gcc -c -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:2879: $? = 0 -configure:2900: result: o -configure:2904: checking whether we are using the GNU C compiler -configure:2923: mipsel-uclibc-gcc -c -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:2923: $? = 0 -configure:2932: result: yes -configure:2941: checking whether mipsel-uclibc-gcc accepts -g -configure:2961: mipsel-uclibc-gcc -c -g conftest.c >&5 -configure:2961: $? = 0 -configure:3002: result: yes -configure:3019: checking for mipsel-uclibc-gcc option to accept ISO C89 -configure:3083: mipsel-uclibc-gcc -c -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:3083: $? = 0 -configure:3096: result: none needed -configure:3119: checking for mipsel-linux-ranlib -configure:3146: result: mipsel-uclibc-ranlib -configure:3216: checking how to run the C preprocessor -configure:3247: mipsel-uclibc-gcc -E conftest.c -configure:3247: $? = 0 -configure:3261: mipsel-uclibc-gcc -E conftest.c -conftest.c:9:28: error: ac_nonexistent.h: No such file or directory -configure:3261: $? = 1 -configure: failed program was: -| /* confdefs.h */ -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE_URL "" -| /* end confdefs.h. */ -| #include -configure:3286: result: mipsel-uclibc-gcc -E -configure:3306: mipsel-uclibc-gcc -E conftest.c -configure:3306: $? = 0 -configure:3320: mipsel-uclibc-gcc -E conftest.c -conftest.c:9:28: error: ac_nonexistent.h: No such file or directory -configure:3320: $? = 1 -configure: failed program was: -| /* confdefs.h */ -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE_URL "" -| /* end confdefs.h. */ -| #include -configure:3349: checking for grep that handles long lines and -e -configure:3407: result: /bin/grep -configure:3412: checking for egrep -configure:3474: result: /bin/grep -E -configure:3479: checking for ANSI C header files -configure:3499: mipsel-uclibc-gcc -c -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:3499: $? = 0 -configure:3583: result: yes -configure:3591: checking for sys/wait.h that is POSIX.1 compatible -configure:3617: mipsel-uclibc-gcc -c -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:3617: $? = 0 -configure:3624: result: yes -configure:3637: checking for sys/types.h -configure:3637: mipsel-uclibc-gcc -c -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:3637: $? = 0 -configure:3637: result: yes -configure:3637: checking for sys/stat.h -configure:3637: mipsel-uclibc-gcc -c -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:3637: $? = 0 -configure:3637: result: yes -configure:3637: checking for stdlib.h -configure:3637: mipsel-uclibc-gcc -c -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:3637: $? = 0 -configure:3637: result: yes -configure:3637: checking for string.h -configure:3637: mipsel-uclibc-gcc -c -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:3637: $? = 0 -configure:3637: result: yes -configure:3637: checking for memory.h -configure:3637: mipsel-uclibc-gcc -c -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:3637: $? = 0 -configure:3637: result: yes -configure:3637: checking for strings.h -configure:3637: mipsel-uclibc-gcc -c -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:3637: $? = 0 -configure:3637: result: yes -configure:3637: checking for inttypes.h -configure:3637: mipsel-uclibc-gcc -c -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:3637: $? = 0 -configure:3637: result: yes -configure:3637: checking for stdint.h -configure:3637: mipsel-uclibc-gcc -c -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:3637: $? = 0 -configure:3637: result: yes -configure:3637: checking for unistd.h -configure:3637: mipsel-uclibc-gcc -c -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:3637: $? = 0 -configure:3637: result: yes -configure:3652: checking fcntl.h usability -configure:3652: mipsel-uclibc-gcc -c -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:3652: $? = 0 -configure:3652: result: yes -configure:3652: checking fcntl.h presence -configure:3652: mipsel-uclibc-gcc -E conftest.c -configure:3652: $? = 0 -configure:3652: result: yes -configure:3652: checking for fcntl.h -configure:3652: result: yes -configure:3652: checking sys/dlpi.h usability -configure:3652: mipsel-uclibc-gcc -c -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -conftest.c:54:22: error: sys/dlpi.h: No such file or directory -configure:3652: $? = 1 -configure: failed program was: -| /* confdefs.h */ -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE_URL "" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_WAIT_H 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_FCNTL_H 1 -| /* end confdefs.h. */ -| #include -| #ifdef HAVE_SYS_TYPES_H -| # include -| #endif -| #ifdef HAVE_SYS_STAT_H -| # include -| #endif -| #ifdef STDC_HEADERS -| # include -| # include -| #else -| # ifdef HAVE_STDLIB_H -| # include -| # endif -| #endif -| #ifdef HAVE_STRING_H -| # if !defined STDC_HEADERS && defined HAVE_MEMORY_H -| # include -| # endif -| # include -| #endif -| #ifdef HAVE_STRINGS_H -| # include -| #endif -| #ifdef HAVE_INTTYPES_H -| # include -| #endif -| #ifdef HAVE_STDINT_H -| # include -| #endif -| #ifdef HAVE_UNISTD_H -| # include -| #endif -| #include -configure:3652: result: no -configure:3652: checking sys/dlpi.h presence -configure:3652: mipsel-uclibc-gcc -E conftest.c -conftest.c:21:22: error: sys/dlpi.h: No such file or directory -configure:3652: $? = 1 -configure: failed program was: -| /* confdefs.h */ -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE_URL "" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_WAIT_H 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_FCNTL_H 1 -| /* end confdefs.h. */ -| #include -configure:3652: result: no -configure:3652: checking for sys/dlpi.h -configure:3652: result: no -configure:3652: checking sys/ioctl.h usability -configure:3652: mipsel-uclibc-gcc -c -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:3652: $? = 0 -configure:3652: result: yes -configure:3652: checking sys/ioctl.h presence -configure:3652: mipsel-uclibc-gcc -E conftest.c -configure:3652: $? = 0 -configure:3652: result: yes -configure:3652: checking for sys/ioctl.h -configure:3652: result: yes -configure:3652: checking sys/time.h usability -configure:3652: mipsel-uclibc-gcc -c -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:3652: $? = 0 -configure:3652: result: yes -configure:3652: checking sys/time.h presence -configure:3652: mipsel-uclibc-gcc -E conftest.c -configure:3652: $? = 0 -configure:3652: result: yes -configure:3652: checking for sys/time.h -configure:3652: result: yes -configure:3652: checking syslog.h usability -configure:3652: mipsel-uclibc-gcc -c -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:3652: $? = 0 -configure:3652: result: yes -configure:3652: checking syslog.h presence -configure:3652: mipsel-uclibc-gcc -E conftest.c -configure:3652: $? = 0 -configure:3652: result: yes -configure:3652: checking for syslog.h -configure:3652: result: yes -configure:3652: checking for unistd.h -configure:3652: result: yes -configure:3652: checking net/if_arp.h usability -configure:3652: mipsel-uclibc-gcc -c -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:3652: $? = 0 -configure:3652: result: yes -configure:3652: checking net/if_arp.h presence -configure:3652: mipsel-uclibc-gcc -E conftest.c -configure:3652: $? = 0 -configure:3652: result: yes -configure:3652: checking for net/if_arp.h -configure:3652: result: yes -configure:3652: checking netinet/if_ether.h usability -configure:3652: mipsel-uclibc-gcc -c -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:3652: $? = 0 -configure:3652: result: yes -configure:3652: checking netinet/if_ether.h presence -configure:3652: mipsel-uclibc-gcc -E conftest.c -configure:3652: $? = 0 -configure:3652: result: yes -configure:3652: checking for netinet/if_ether.h -configure:3652: result: yes -configure:3652: checking getopt.h usability -configure:3652: mipsel-uclibc-gcc -c -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:3652: $? = 0 -configure:3652: result: yes -configure:3652: checking getopt.h presence -configure:3652: mipsel-uclibc-gcc -E conftest.c -configure:3652: $? = 0 -configure:3652: result: yes -configure:3652: checking for getopt.h -configure:3652: result: yes -configure:3652: checking sys/uio.h usability -configure:3652: mipsel-uclibc-gcc -c -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:3652: $? = 0 -configure:3652: result: yes -configure:3652: checking sys/uio.h presence -configure:3652: mipsel-uclibc-gcc -E conftest.c -configure:3652: $? = 0 -configure:3652: result: yes -configure:3652: checking for sys/uio.h -configure:3652: result: yes -configure:3652: checking sys/param.h usability -configure:3652: mipsel-uclibc-gcc -c -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:3652: $? = 0 -configure:3652: result: yes -configure:3652: checking sys/param.h presence -configure:3652: mipsel-uclibc-gcc -E conftest.c -configure:3652: $? = 0 -configure:3652: result: yes -configure:3652: checking for sys/param.h -configure:3652: result: yes -configure:3652: checking for fcntl.h -configure:3652: result: yes -configure:3652: checking net/bpf.h usability -configure:3652: mipsel-uclibc-gcc -c -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -conftest.c:64:21: error: net/bpf.h: No such file or directory -configure:3652: $? = 1 -configure: failed program was: -| /* confdefs.h */ -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE_URL "" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_WAIT_H 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_FCNTL_H 1 -| #define HAVE_SYS_IOCTL_H 1 -| #define HAVE_SYS_TIME_H 1 -| #define HAVE_SYSLOG_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_NET_IF_ARP_H 1 -| #define HAVE_NETINET_IF_ETHER_H 1 -| #define HAVE_GETOPT_H 1 -| #define HAVE_SYS_UIO_H 1 -| #define HAVE_SYS_PARAM_H 1 -| #define HAVE_FCNTL_H 1 -| /* end confdefs.h. */ -| #include -| #ifdef HAVE_SYS_TYPES_H -| # include -| #endif -| #ifdef HAVE_SYS_STAT_H -| # include -| #endif -| #ifdef STDC_HEADERS -| # include -| # include -| #else -| # ifdef HAVE_STDLIB_H -| # include -| # endif -| #endif -| #ifdef HAVE_STRING_H -| # if !defined STDC_HEADERS && defined HAVE_MEMORY_H -| # include -| # endif -| # include -| #endif -| #ifdef HAVE_STRINGS_H -| # include -| #endif -| #ifdef HAVE_INTTYPES_H -| # include -| #endif -| #ifdef HAVE_STDINT_H -| # include -| #endif -| #ifdef HAVE_UNISTD_H -| # include -| #endif -| #include -configure:3652: result: no -configure:3652: checking net/bpf.h presence -configure:3652: mipsel-uclibc-gcc -E conftest.c -conftest.c:31:21: error: net/bpf.h: No such file or directory -configure:3652: $? = 1 -configure: failed program was: -| /* confdefs.h */ -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE_URL "" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_WAIT_H 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_FCNTL_H 1 -| #define HAVE_SYS_IOCTL_H 1 -| #define HAVE_SYS_TIME_H 1 -| #define HAVE_SYSLOG_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_NET_IF_ARP_H 1 -| #define HAVE_NETINET_IF_ETHER_H 1 -| #define HAVE_GETOPT_H 1 -| #define HAVE_SYS_UIO_H 1 -| #define HAVE_SYS_PARAM_H 1 -| #define HAVE_FCNTL_H 1 -| /* end confdefs.h. */ -| #include -configure:3652: result: no -configure:3652: checking for net/bpf.h -configure:3652: result: no -configure:3652: checking netpacket/packet.h usability -configure:3652: mipsel-uclibc-gcc -c -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:3652: $? = 0 -configure:3652: result: yes -configure:3652: checking netpacket/packet.h presence -configure:3652: mipsel-uclibc-gcc -E conftest.c -configure:3652: $? = 0 -configure:3652: result: yes -configure:3652: checking for netpacket/packet.h -configure:3652: result: yes -configure:3652: checking net/ethernet.h usability -configure:3652: mipsel-uclibc-gcc -c -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:3652: $? = 0 -configure:3652: result: yes -configure:3652: checking net/ethernet.h presence -configure:3652: mipsel-uclibc-gcc -E conftest.c -configure:3652: $? = 0 -configure:3652: result: yes -configure:3652: checking for net/ethernet.h -configure:3652: result: yes -configure:3652: checking asm/types.h usability -configure:3652: mipsel-uclibc-gcc -c -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:3652: $? = 0 -configure:3652: result: yes -configure:3652: checking asm/types.h presence -configure:3652: mipsel-uclibc-gcc -E conftest.c -configure:3652: $? = 0 -configure:3652: result: yes -configure:3652: checking for asm/types.h -configure:3652: result: yes -configure:3652: checking linux/if_packet.h usability -configure:3652: mipsel-uclibc-gcc -c -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:3652: $? = 0 -configure:3652: result: yes -configure:3652: checking linux/if_packet.h presence -configure:3652: mipsel-uclibc-gcc -E conftest.c -configure:3652: $? = 0 -configure:3652: result: yes -configure:3652: checking for linux/if_packet.h -configure:3652: result: yes -configure:3652: checking linux/if_ether.h usability -configure:3652: mipsel-uclibc-gcc -c -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:3652: $? = 0 -configure:3652: result: yes -configure:3652: checking linux/if_ether.h presence -configure:3652: mipsel-uclibc-gcc -E conftest.c -configure:3652: $? = 0 -configure:3652: result: yes -configure:3652: checking for linux/if_ether.h -configure:3652: result: yes -configure:3652: checking sys/socket.h usability -configure:3652: mipsel-uclibc-gcc -c -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:3652: $? = 0 -configure:3652: result: yes -configure:3652: checking sys/socket.h presence -configure:3652: mipsel-uclibc-gcc -E conftest.c -configure:3652: $? = 0 -configure:3652: result: yes -configure:3652: checking for sys/socket.h -configure:3652: result: yes -configure:3652: checking sys/cdefs.h usability -configure:3652: mipsel-uclibc-gcc -c -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:3652: $? = 0 -configure:3652: result: yes -configure:3652: checking sys/cdefs.h presence -configure:3652: mipsel-uclibc-gcc -E conftest.c -configure:3652: $? = 0 -configure:3652: result: yes -configure:3652: checking for sys/cdefs.h -configure:3652: result: yes -configure:3652: checking net/if.h usability -configure:3652: mipsel-uclibc-gcc -c -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:3652: $? = 0 -configure:3652: result: yes -configure:3652: checking net/if.h presence -configure:3652: mipsel-uclibc-gcc -E conftest.c -configure:3652: $? = 0 -configure:3652: result: yes -configure:3652: checking for net/if.h -configure:3652: result: yes -configure:3652: checking net/if_dl.h usability -configure:3652: mipsel-uclibc-gcc -c -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -conftest.c:72:23: error: net/if_dl.h: No such file or directory -configure:3652: $? = 1 -configure: failed program was: -| /* confdefs.h */ -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE_URL "" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_WAIT_H 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_FCNTL_H 1 -| #define HAVE_SYS_IOCTL_H 1 -| #define HAVE_SYS_TIME_H 1 -| #define HAVE_SYSLOG_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_NET_IF_ARP_H 1 -| #define HAVE_NETINET_IF_ETHER_H 1 -| #define HAVE_GETOPT_H 1 -| #define HAVE_SYS_UIO_H 1 -| #define HAVE_SYS_PARAM_H 1 -| #define HAVE_FCNTL_H 1 -| #define HAVE_NETPACKET_PACKET_H 1 -| #define HAVE_NET_ETHERNET_H 1 -| #define HAVE_ASM_TYPES_H 1 -| #define HAVE_LINUX_IF_PACKET_H 1 -| #define HAVE_LINUX_IF_ETHER_H 1 -| #define HAVE_SYS_SOCKET_H 1 -| #define HAVE_SYS_CDEFS_H 1 -| #define HAVE_NET_IF_H 1 -| /* end confdefs.h. */ -| #include -| #ifdef HAVE_SYS_TYPES_H -| # include -| #endif -| #ifdef HAVE_SYS_STAT_H -| # include -| #endif -| #ifdef STDC_HEADERS -| # include -| # include -| #else -| # ifdef HAVE_STDLIB_H -| # include -| # endif -| #endif -| #ifdef HAVE_STRING_H -| # if !defined STDC_HEADERS && defined HAVE_MEMORY_H -| # include -| # endif -| # include -| #endif -| #ifdef HAVE_STRINGS_H -| # include -| #endif -| #ifdef HAVE_INTTYPES_H -| # include -| #endif -| #ifdef HAVE_STDINT_H -| # include -| #endif -| #ifdef HAVE_UNISTD_H -| # include -| #endif -| #include -configure:3652: result: no -configure:3652: checking net/if_dl.h presence -configure:3652: mipsel-uclibc-gcc -E conftest.c -conftest.c:39:23: error: net/if_dl.h: No such file or directory -configure:3652: $? = 1 -configure: failed program was: -| /* confdefs.h */ -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE_URL "" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_WAIT_H 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_FCNTL_H 1 -| #define HAVE_SYS_IOCTL_H 1 -| #define HAVE_SYS_TIME_H 1 -| #define HAVE_SYSLOG_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_NET_IF_ARP_H 1 -| #define HAVE_NETINET_IF_ETHER_H 1 -| #define HAVE_GETOPT_H 1 -| #define HAVE_SYS_UIO_H 1 -| #define HAVE_SYS_PARAM_H 1 -| #define HAVE_FCNTL_H 1 -| #define HAVE_NETPACKET_PACKET_H 1 -| #define HAVE_NET_ETHERNET_H 1 -| #define HAVE_ASM_TYPES_H 1 -| #define HAVE_LINUX_IF_PACKET_H 1 -| #define HAVE_LINUX_IF_ETHER_H 1 -| #define HAVE_SYS_SOCKET_H 1 -| #define HAVE_SYS_CDEFS_H 1 -| #define HAVE_NET_IF_H 1 -| /* end confdefs.h. */ -| #include -configure:3652: result: no -configure:3652: checking for net/if_dl.h -configure:3652: result: no -configure:3652: checking net/if_ether.h usability -configure:3652: mipsel-uclibc-gcc -c -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -conftest.c:72:26: error: net/if_ether.h: No such file or directory -configure:3652: $? = 1 -configure: failed program was: -| /* confdefs.h */ -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE_URL "" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_WAIT_H 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_FCNTL_H 1 -| #define HAVE_SYS_IOCTL_H 1 -| #define HAVE_SYS_TIME_H 1 -| #define HAVE_SYSLOG_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_NET_IF_ARP_H 1 -| #define HAVE_NETINET_IF_ETHER_H 1 -| #define HAVE_GETOPT_H 1 -| #define HAVE_SYS_UIO_H 1 -| #define HAVE_SYS_PARAM_H 1 -| #define HAVE_FCNTL_H 1 -| #define HAVE_NETPACKET_PACKET_H 1 -| #define HAVE_NET_ETHERNET_H 1 -| #define HAVE_ASM_TYPES_H 1 -| #define HAVE_LINUX_IF_PACKET_H 1 -| #define HAVE_LINUX_IF_ETHER_H 1 -| #define HAVE_SYS_SOCKET_H 1 -| #define HAVE_SYS_CDEFS_H 1 -| #define HAVE_NET_IF_H 1 -| /* end confdefs.h. */ -| #include -| #ifdef HAVE_SYS_TYPES_H -| # include -| #endif -| #ifdef HAVE_SYS_STAT_H -| # include -| #endif -| #ifdef STDC_HEADERS -| # include -| # include -| #else -| # ifdef HAVE_STDLIB_H -| # include -| # endif -| #endif -| #ifdef HAVE_STRING_H -| # if !defined STDC_HEADERS && defined HAVE_MEMORY_H -| # include -| # endif -| # include -| #endif -| #ifdef HAVE_STRINGS_H -| # include -| #endif -| #ifdef HAVE_INTTYPES_H -| # include -| #endif -| #ifdef HAVE_STDINT_H -| # include -| #endif -| #ifdef HAVE_UNISTD_H -| # include -| #endif -| #include -configure:3652: result: no -configure:3652: checking net/if_ether.h presence -configure:3652: mipsel-uclibc-gcc -E conftest.c -conftest.c:39:26: error: net/if_ether.h: No such file or directory -configure:3652: $? = 1 -configure: failed program was: -| /* confdefs.h */ -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE_URL "" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_WAIT_H 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_FCNTL_H 1 -| #define HAVE_SYS_IOCTL_H 1 -| #define HAVE_SYS_TIME_H 1 -| #define HAVE_SYSLOG_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_NET_IF_ARP_H 1 -| #define HAVE_NETINET_IF_ETHER_H 1 -| #define HAVE_GETOPT_H 1 -| #define HAVE_SYS_UIO_H 1 -| #define HAVE_SYS_PARAM_H 1 -| #define HAVE_FCNTL_H 1 -| #define HAVE_NETPACKET_PACKET_H 1 -| #define HAVE_NET_ETHERNET_H 1 -| #define HAVE_ASM_TYPES_H 1 -| #define HAVE_LINUX_IF_PACKET_H 1 -| #define HAVE_LINUX_IF_ETHER_H 1 -| #define HAVE_SYS_SOCKET_H 1 -| #define HAVE_SYS_CDEFS_H 1 -| #define HAVE_NET_IF_H 1 -| /* end confdefs.h. */ -| #include -configure:3652: result: no -configure:3652: checking for net/if_ether.h -configure:3652: result: no -configure:3652: checking net/if_types.h usability -configure:3652: mipsel-uclibc-gcc -c -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -conftest.c:72:26: error: net/if_types.h: No such file or directory -configure:3652: $? = 1 -configure: failed program was: -| /* confdefs.h */ -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE_URL "" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_WAIT_H 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_FCNTL_H 1 -| #define HAVE_SYS_IOCTL_H 1 -| #define HAVE_SYS_TIME_H 1 -| #define HAVE_SYSLOG_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_NET_IF_ARP_H 1 -| #define HAVE_NETINET_IF_ETHER_H 1 -| #define HAVE_GETOPT_H 1 -| #define HAVE_SYS_UIO_H 1 -| #define HAVE_SYS_PARAM_H 1 -| #define HAVE_FCNTL_H 1 -| #define HAVE_NETPACKET_PACKET_H 1 -| #define HAVE_NET_ETHERNET_H 1 -| #define HAVE_ASM_TYPES_H 1 -| #define HAVE_LINUX_IF_PACKET_H 1 -| #define HAVE_LINUX_IF_ETHER_H 1 -| #define HAVE_SYS_SOCKET_H 1 -| #define HAVE_SYS_CDEFS_H 1 -| #define HAVE_NET_IF_H 1 -| /* end confdefs.h. */ -| #include -| #ifdef HAVE_SYS_TYPES_H -| # include -| #endif -| #ifdef HAVE_SYS_STAT_H -| # include -| #endif -| #ifdef STDC_HEADERS -| # include -| # include -| #else -| # ifdef HAVE_STDLIB_H -| # include -| # endif -| #endif -| #ifdef HAVE_STRING_H -| # if !defined STDC_HEADERS && defined HAVE_MEMORY_H -| # include -| # endif -| # include -| #endif -| #ifdef HAVE_STRINGS_H -| # include -| #endif -| #ifdef HAVE_INTTYPES_H -| # include -| #endif -| #ifdef HAVE_STDINT_H -| # include -| #endif -| #ifdef HAVE_UNISTD_H -| # include -| #endif -| #include -configure:3652: result: no -configure:3652: checking net/if_types.h presence -configure:3652: mipsel-uclibc-gcc -E conftest.c -conftest.c:39:26: error: net/if_types.h: No such file or directory -configure:3652: $? = 1 -configure: failed program was: -| /* confdefs.h */ -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE_URL "" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_WAIT_H 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_FCNTL_H 1 -| #define HAVE_SYS_IOCTL_H 1 -| #define HAVE_SYS_TIME_H 1 -| #define HAVE_SYSLOG_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_NET_IF_ARP_H 1 -| #define HAVE_NETINET_IF_ETHER_H 1 -| #define HAVE_GETOPT_H 1 -| #define HAVE_SYS_UIO_H 1 -| #define HAVE_SYS_PARAM_H 1 -| #define HAVE_FCNTL_H 1 -| #define HAVE_NETPACKET_PACKET_H 1 -| #define HAVE_NET_ETHERNET_H 1 -| #define HAVE_ASM_TYPES_H 1 -| #define HAVE_LINUX_IF_PACKET_H 1 -| #define HAVE_LINUX_IF_ETHER_H 1 -| #define HAVE_SYS_SOCKET_H 1 -| #define HAVE_SYS_CDEFS_H 1 -| #define HAVE_NET_IF_H 1 -| /* end confdefs.h. */ -| #include -configure:3652: result: no -configure:3652: checking for net/if_types.h -configure:3652: result: no -configure:3652: checking for netinet/if_ether.h -configure:3652: result: yes -configure:3652: checking for net/if_types.h -configure:3652: result: no -configure:3652: checking for net/if_dl.h -configure:3652: result: no -configure:3664: checking for linux/if.h -configure:3664: mipsel-uclibc-gcc -c -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:3664: $? = 0 -configure:3664: result: yes -configure:3677: checking for linux/if_pppox.h -configure:3677: mipsel-uclibc-gcc -c -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:3677: $? = 0 -configure:3677: result: yes -configure:3694: checking for an ANSI C-conforming const -configure:3759: mipsel-uclibc-gcc -c -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:3759: $? = 0 -configure:3766: result: yes -configure:3774: checking for pid_t -configure:3774: mipsel-uclibc-gcc -c -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:3774: $? = 0 -configure:3774: mipsel-uclibc-gcc -c -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -conftest.c: In function 'main': -conftest.c:78: error: expected expression before ')' token -configure:3774: $? = 1 -configure: failed program was: -| /* confdefs.h */ -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE_URL "" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_WAIT_H 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_FCNTL_H 1 -| #define HAVE_SYS_IOCTL_H 1 -| #define HAVE_SYS_TIME_H 1 -| #define HAVE_SYSLOG_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_NET_IF_ARP_H 1 -| #define HAVE_NETINET_IF_ETHER_H 1 -| #define HAVE_GETOPT_H 1 -| #define HAVE_SYS_UIO_H 1 -| #define HAVE_SYS_PARAM_H 1 -| #define HAVE_FCNTL_H 1 -| #define HAVE_NETPACKET_PACKET_H 1 -| #define HAVE_NET_ETHERNET_H 1 -| #define HAVE_ASM_TYPES_H 1 -| #define HAVE_LINUX_IF_PACKET_H 1 -| #define HAVE_LINUX_IF_ETHER_H 1 -| #define HAVE_SYS_SOCKET_H 1 -| #define HAVE_SYS_CDEFS_H 1 -| #define HAVE_NET_IF_H 1 -| #define HAVE_NETINET_IF_ETHER_H 1 -| #define HAVE_LINUX_IF_H 1 -| #define HAVE_LINUX_IF_PPPOX_H 1 -| /* end confdefs.h. */ -| #include -| #ifdef HAVE_SYS_TYPES_H -| # include -| #endif -| #ifdef HAVE_SYS_STAT_H -| # include -| #endif -| #ifdef STDC_HEADERS -| # include -| # include -| #else -| # ifdef HAVE_STDLIB_H -| # include -| # endif -| #endif -| #ifdef HAVE_STRING_H -| # if !defined STDC_HEADERS && defined HAVE_MEMORY_H -| # include -| # endif -| # include -| #endif -| #ifdef HAVE_STRINGS_H -| # include -| #endif -| #ifdef HAVE_INTTYPES_H -| # include -| #endif -| #ifdef HAVE_STDINT_H -| # include -| #endif -| #ifdef HAVE_UNISTD_H -| # include -| #endif -| int -| main () -| { -| if (sizeof ((pid_t))) -| return 0; -| ; -| return 0; -| } -configure:3774: result: yes -configure:3785: checking whether time.h and sys/time.h may both be included -configure:3805: mipsel-uclibc-gcc -c -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:3805: $? = 0 -configure:3812: result: yes -configure:3820: checking whether struct tm is in sys/time.h or time.h -configure:3840: mipsel-uclibc-gcc -c -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:3840: $? = 0 -configure:3847: result: time.h -configure:3856: checking for struct sockaddr_ll -configure:3872: mipsel-uclibc-gcc -c -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:3872: $? = 0 -configure:3878: result: yes -configure:3886: checking for N_HDLC line discipline -configure:3899: mipsel-uclibc-gcc -c -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -conftest.c: In function 'main': -conftest.c:48: error: 'N_HDLC' undeclared (first use in this function) -conftest.c:48: error: (Each undeclared identifier is reported only once -conftest.c:48: error: for each function it appears in.) -configure:3899: $? = 1 -configure: failed program was: -| /* confdefs.h */ -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE_URL "" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_WAIT_H 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_FCNTL_H 1 -| #define HAVE_SYS_IOCTL_H 1 -| #define HAVE_SYS_TIME_H 1 -| #define HAVE_SYSLOG_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_NET_IF_ARP_H 1 -| #define HAVE_NETINET_IF_ETHER_H 1 -| #define HAVE_GETOPT_H 1 -| #define HAVE_SYS_UIO_H 1 -| #define HAVE_SYS_PARAM_H 1 -| #define HAVE_FCNTL_H 1 -| #define HAVE_NETPACKET_PACKET_H 1 -| #define HAVE_NET_ETHERNET_H 1 -| #define HAVE_ASM_TYPES_H 1 -| #define HAVE_LINUX_IF_PACKET_H 1 -| #define HAVE_LINUX_IF_ETHER_H 1 -| #define HAVE_SYS_SOCKET_H 1 -| #define HAVE_SYS_CDEFS_H 1 -| #define HAVE_NET_IF_H 1 -| #define HAVE_NETINET_IF_ETHER_H 1 -| #define HAVE_LINUX_IF_H 1 -| #define HAVE_LINUX_IF_PPPOX_H 1 -| #define TIME_WITH_SYS_TIME 1 -| #define HAVE_STRUCT_SOCKADDR_LL 1 -| /* end confdefs.h. */ -| #include -| int -| main () -| { -| int x = N_HDLC; -| ; -| return 0; -| } -configure:3905: result: no -configure:3997: checking for working memcmp -configure:4050: result: no -configure:4066: checking return type of signal handlers -configure:4084: mipsel-uclibc-gcc -c -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -conftest.c: In function 'main': -conftest.c:52: error: void value not ignored as it ought to be -configure:4084: $? = 1 -configure: failed program was: -| /* confdefs.h */ -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE_URL "" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_WAIT_H 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_FCNTL_H 1 -| #define HAVE_SYS_IOCTL_H 1 -| #define HAVE_SYS_TIME_H 1 -| #define HAVE_SYSLOG_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_NET_IF_ARP_H 1 -| #define HAVE_NETINET_IF_ETHER_H 1 -| #define HAVE_GETOPT_H 1 -| #define HAVE_SYS_UIO_H 1 -| #define HAVE_SYS_PARAM_H 1 -| #define HAVE_FCNTL_H 1 -| #define HAVE_NETPACKET_PACKET_H 1 -| #define HAVE_NET_ETHERNET_H 1 -| #define HAVE_ASM_TYPES_H 1 -| #define HAVE_LINUX_IF_PACKET_H 1 -| #define HAVE_LINUX_IF_ETHER_H 1 -| #define HAVE_SYS_SOCKET_H 1 -| #define HAVE_SYS_CDEFS_H 1 -| #define HAVE_NET_IF_H 1 -| #define HAVE_NETINET_IF_ETHER_H 1 -| #define HAVE_LINUX_IF_H 1 -| #define HAVE_LINUX_IF_PPPOX_H 1 -| #define TIME_WITH_SYS_TIME 1 -| #define HAVE_STRUCT_SOCKADDR_LL 1 -| #define HAVE_LINUX_KERNEL_PPPOE 1 -| #define DEBUGGING_ENABLED 1 -| /* end confdefs.h. */ -| #include -| #include -| -| int -| main () -| { -| return *(signal (0, 0)) (0) == 1; -| ; -| return 0; -| } -configure:4091: result: void -configure:4102: checking for select -configure:4102: mipsel-uclibc-gcc -o conftest -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:4102: $? = 0 -configure:4102: result: yes -configure:4102: checking for socket -configure:4102: mipsel-uclibc-gcc -o conftest -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:4102: $? = 0 -configure:4102: result: yes -configure:4102: checking for strerror -configure:4102: mipsel-uclibc-gcc -o conftest -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:4102: $? = 0 -configure:4102: result: yes -configure:4102: checking for strtol -configure:4102: mipsel-uclibc-gcc -o conftest -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:4102: $? = 0 -configure:4102: result: yes -configure:4154: checking for a BSD-compatible install -configure:4222: result: /usr/bin/install -c -configure:4238: checking size of unsigned short -configure:4243: mipsel-uclibc-gcc -c -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:4243: $? = 0 -configure:4243: mipsel-uclibc-gcc -c -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -conftest.c: In function 'main': -conftest.c:87: error: size of array 'test_array' is negative -configure:4243: $? = 1 -configure: failed program was: -| /* confdefs.h */ -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE_URL "" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_WAIT_H 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_FCNTL_H 1 -| #define HAVE_SYS_IOCTL_H 1 -| #define HAVE_SYS_TIME_H 1 -| #define HAVE_SYSLOG_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_NET_IF_ARP_H 1 -| #define HAVE_NETINET_IF_ETHER_H 1 -| #define HAVE_GETOPT_H 1 -| #define HAVE_SYS_UIO_H 1 -| #define HAVE_SYS_PARAM_H 1 -| #define HAVE_FCNTL_H 1 -| #define HAVE_NETPACKET_PACKET_H 1 -| #define HAVE_NET_ETHERNET_H 1 -| #define HAVE_ASM_TYPES_H 1 -| #define HAVE_LINUX_IF_PACKET_H 1 -| #define HAVE_LINUX_IF_ETHER_H 1 -| #define HAVE_SYS_SOCKET_H 1 -| #define HAVE_SYS_CDEFS_H 1 -| #define HAVE_NET_IF_H 1 -| #define HAVE_NETINET_IF_ETHER_H 1 -| #define HAVE_LINUX_IF_H 1 -| #define HAVE_LINUX_IF_PPPOX_H 1 -| #define TIME_WITH_SYS_TIME 1 -| #define HAVE_STRUCT_SOCKADDR_LL 1 -| #define HAVE_LINUX_KERNEL_PPPOE 1 -| #define DEBUGGING_ENABLED 1 -| #define RETSIGTYPE void -| #define HAVE_SELECT 1 -| #define HAVE_SOCKET 1 -| #define HAVE_STRERROR 1 -| #define HAVE_STRTOL 1 -| /* end confdefs.h. */ -| #include -| #ifdef HAVE_SYS_TYPES_H -| # include -| #endif -| #ifdef HAVE_SYS_STAT_H -| # include -| #endif -| #ifdef STDC_HEADERS -| # include -| # include -| #else -| # ifdef HAVE_STDLIB_H -| # include -| # endif -| #endif -| #ifdef HAVE_STRING_H -| # if !defined STDC_HEADERS && defined HAVE_MEMORY_H -| # include -| # endif -| # include -| #endif -| #ifdef HAVE_STRINGS_H -| # include -| #endif -| #ifdef HAVE_INTTYPES_H -| # include -| #endif -| #ifdef HAVE_STDINT_H -| # include -| #endif -| #ifdef HAVE_UNISTD_H -| # include -| #endif -| int -| main () -| { -| static int test_array [1 - 2 * !(((long int) (sizeof (unsigned short))) <= 0)]; -| test_array [0] = 0 -| -| ; -| return 0; -| } -configure:4243: mipsel-uclibc-gcc -c -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -conftest.c: In function 'main': -conftest.c:87: error: size of array 'test_array' is negative -configure:4243: $? = 1 -configure: failed program was: -| /* confdefs.h */ -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE_URL "" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_WAIT_H 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_FCNTL_H 1 -| #define HAVE_SYS_IOCTL_H 1 -| #define HAVE_SYS_TIME_H 1 -| #define HAVE_SYSLOG_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_NET_IF_ARP_H 1 -| #define HAVE_NETINET_IF_ETHER_H 1 -| #define HAVE_GETOPT_H 1 -| #define HAVE_SYS_UIO_H 1 -| #define HAVE_SYS_PARAM_H 1 -| #define HAVE_FCNTL_H 1 -| #define HAVE_NETPACKET_PACKET_H 1 -| #define HAVE_NET_ETHERNET_H 1 -| #define HAVE_ASM_TYPES_H 1 -| #define HAVE_LINUX_IF_PACKET_H 1 -| #define HAVE_LINUX_IF_ETHER_H 1 -| #define HAVE_SYS_SOCKET_H 1 -| #define HAVE_SYS_CDEFS_H 1 -| #define HAVE_NET_IF_H 1 -| #define HAVE_NETINET_IF_ETHER_H 1 -| #define HAVE_LINUX_IF_H 1 -| #define HAVE_LINUX_IF_PPPOX_H 1 -| #define TIME_WITH_SYS_TIME 1 -| #define HAVE_STRUCT_SOCKADDR_LL 1 -| #define HAVE_LINUX_KERNEL_PPPOE 1 -| #define DEBUGGING_ENABLED 1 -| #define RETSIGTYPE void -| #define HAVE_SELECT 1 -| #define HAVE_SOCKET 1 -| #define HAVE_STRERROR 1 -| #define HAVE_STRTOL 1 -| /* end confdefs.h. */ -| #include -| #ifdef HAVE_SYS_TYPES_H -| # include -| #endif -| #ifdef HAVE_SYS_STAT_H -| # include -| #endif -| #ifdef STDC_HEADERS -| # include -| # include -| #else -| # ifdef HAVE_STDLIB_H -| # include -| # endif -| #endif -| #ifdef HAVE_STRING_H -| # if !defined STDC_HEADERS && defined HAVE_MEMORY_H -| # include -| # endif -| # include -| #endif -| #ifdef HAVE_STRINGS_H -| # include -| #endif -| #ifdef HAVE_INTTYPES_H -| # include -| #endif -| #ifdef HAVE_STDINT_H -| # include -| #endif -| #ifdef HAVE_UNISTD_H -| # include -| #endif -| int -| main () -| { -| static int test_array [1 - 2 * !(((long int) (sizeof (unsigned short))) <= 1)]; -| test_array [0] = 0 -| -| ; -| return 0; -| } -configure:4243: mipsel-uclibc-gcc -c -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:4243: $? = 0 -configure:4243: mipsel-uclibc-gcc -c -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:4243: $? = 0 -configure:4257: result: 2 -configure:4271: checking size of unsigned int -configure:4276: mipsel-uclibc-gcc -c -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:4276: $? = 0 -configure:4276: mipsel-uclibc-gcc -c -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -conftest.c: In function 'main': -conftest.c:88: error: size of array 'test_array' is negative -configure:4276: $? = 1 -configure: failed program was: -| /* confdefs.h */ -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE_URL "" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_WAIT_H 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_FCNTL_H 1 -| #define HAVE_SYS_IOCTL_H 1 -| #define HAVE_SYS_TIME_H 1 -| #define HAVE_SYSLOG_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_NET_IF_ARP_H 1 -| #define HAVE_NETINET_IF_ETHER_H 1 -| #define HAVE_GETOPT_H 1 -| #define HAVE_SYS_UIO_H 1 -| #define HAVE_SYS_PARAM_H 1 -| #define HAVE_FCNTL_H 1 -| #define HAVE_NETPACKET_PACKET_H 1 -| #define HAVE_NET_ETHERNET_H 1 -| #define HAVE_ASM_TYPES_H 1 -| #define HAVE_LINUX_IF_PACKET_H 1 -| #define HAVE_LINUX_IF_ETHER_H 1 -| #define HAVE_SYS_SOCKET_H 1 -| #define HAVE_SYS_CDEFS_H 1 -| #define HAVE_NET_IF_H 1 -| #define HAVE_NETINET_IF_ETHER_H 1 -| #define HAVE_LINUX_IF_H 1 -| #define HAVE_LINUX_IF_PPPOX_H 1 -| #define TIME_WITH_SYS_TIME 1 -| #define HAVE_STRUCT_SOCKADDR_LL 1 -| #define HAVE_LINUX_KERNEL_PPPOE 1 -| #define DEBUGGING_ENABLED 1 -| #define RETSIGTYPE void -| #define HAVE_SELECT 1 -| #define HAVE_SOCKET 1 -| #define HAVE_STRERROR 1 -| #define HAVE_STRTOL 1 -| #define SIZEOF_UNSIGNED_SHORT 2 -| /* end confdefs.h. */ -| #include -| #ifdef HAVE_SYS_TYPES_H -| # include -| #endif -| #ifdef HAVE_SYS_STAT_H -| # include -| #endif -| #ifdef STDC_HEADERS -| # include -| # include -| #else -| # ifdef HAVE_STDLIB_H -| # include -| # endif -| #endif -| #ifdef HAVE_STRING_H -| # if !defined STDC_HEADERS && defined HAVE_MEMORY_H -| # include -| # endif -| # include -| #endif -| #ifdef HAVE_STRINGS_H -| # include -| #endif -| #ifdef HAVE_INTTYPES_H -| # include -| #endif -| #ifdef HAVE_STDINT_H -| # include -| #endif -| #ifdef HAVE_UNISTD_H -| # include -| #endif -| int -| main () -| { -| static int test_array [1 - 2 * !(((long int) (sizeof (unsigned int))) <= 0)]; -| test_array [0] = 0 -| -| ; -| return 0; -| } -configure:4276: mipsel-uclibc-gcc -c -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -conftest.c: In function 'main': -conftest.c:88: error: size of array 'test_array' is negative -configure:4276: $? = 1 -configure: failed program was: -| /* confdefs.h */ -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE_URL "" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_WAIT_H 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_FCNTL_H 1 -| #define HAVE_SYS_IOCTL_H 1 -| #define HAVE_SYS_TIME_H 1 -| #define HAVE_SYSLOG_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_NET_IF_ARP_H 1 -| #define HAVE_NETINET_IF_ETHER_H 1 -| #define HAVE_GETOPT_H 1 -| #define HAVE_SYS_UIO_H 1 -| #define HAVE_SYS_PARAM_H 1 -| #define HAVE_FCNTL_H 1 -| #define HAVE_NETPACKET_PACKET_H 1 -| #define HAVE_NET_ETHERNET_H 1 -| #define HAVE_ASM_TYPES_H 1 -| #define HAVE_LINUX_IF_PACKET_H 1 -| #define HAVE_LINUX_IF_ETHER_H 1 -| #define HAVE_SYS_SOCKET_H 1 -| #define HAVE_SYS_CDEFS_H 1 -| #define HAVE_NET_IF_H 1 -| #define HAVE_NETINET_IF_ETHER_H 1 -| #define HAVE_LINUX_IF_H 1 -| #define HAVE_LINUX_IF_PPPOX_H 1 -| #define TIME_WITH_SYS_TIME 1 -| #define HAVE_STRUCT_SOCKADDR_LL 1 -| #define HAVE_LINUX_KERNEL_PPPOE 1 -| #define DEBUGGING_ENABLED 1 -| #define RETSIGTYPE void -| #define HAVE_SELECT 1 -| #define HAVE_SOCKET 1 -| #define HAVE_STRERROR 1 -| #define HAVE_STRTOL 1 -| #define SIZEOF_UNSIGNED_SHORT 2 -| /* end confdefs.h. */ -| #include -| #ifdef HAVE_SYS_TYPES_H -| # include -| #endif -| #ifdef HAVE_SYS_STAT_H -| # include -| #endif -| #ifdef STDC_HEADERS -| # include -| # include -| #else -| # ifdef HAVE_STDLIB_H -| # include -| # endif -| #endif -| #ifdef HAVE_STRING_H -| # if !defined STDC_HEADERS && defined HAVE_MEMORY_H -| # include -| # endif -| # include -| #endif -| #ifdef HAVE_STRINGS_H -| # include -| #endif -| #ifdef HAVE_INTTYPES_H -| # include -| #endif -| #ifdef HAVE_STDINT_H -| # include -| #endif -| #ifdef HAVE_UNISTD_H -| # include -| #endif -| int -| main () -| { -| static int test_array [1 - 2 * !(((long int) (sizeof (unsigned int))) <= 1)]; -| test_array [0] = 0 -| -| ; -| return 0; -| } -configure:4276: mipsel-uclibc-gcc -c -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -conftest.c: In function 'main': -conftest.c:88: error: size of array 'test_array' is negative -configure:4276: $? = 1 -configure: failed program was: -| /* confdefs.h */ -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE_URL "" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_WAIT_H 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_FCNTL_H 1 -| #define HAVE_SYS_IOCTL_H 1 -| #define HAVE_SYS_TIME_H 1 -| #define HAVE_SYSLOG_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_NET_IF_ARP_H 1 -| #define HAVE_NETINET_IF_ETHER_H 1 -| #define HAVE_GETOPT_H 1 -| #define HAVE_SYS_UIO_H 1 -| #define HAVE_SYS_PARAM_H 1 -| #define HAVE_FCNTL_H 1 -| #define HAVE_NETPACKET_PACKET_H 1 -| #define HAVE_NET_ETHERNET_H 1 -| #define HAVE_ASM_TYPES_H 1 -| #define HAVE_LINUX_IF_PACKET_H 1 -| #define HAVE_LINUX_IF_ETHER_H 1 -| #define HAVE_SYS_SOCKET_H 1 -| #define HAVE_SYS_CDEFS_H 1 -| #define HAVE_NET_IF_H 1 -| #define HAVE_NETINET_IF_ETHER_H 1 -| #define HAVE_LINUX_IF_H 1 -| #define HAVE_LINUX_IF_PPPOX_H 1 -| #define TIME_WITH_SYS_TIME 1 -| #define HAVE_STRUCT_SOCKADDR_LL 1 -| #define HAVE_LINUX_KERNEL_PPPOE 1 -| #define DEBUGGING_ENABLED 1 -| #define RETSIGTYPE void -| #define HAVE_SELECT 1 -| #define HAVE_SOCKET 1 -| #define HAVE_STRERROR 1 -| #define HAVE_STRTOL 1 -| #define SIZEOF_UNSIGNED_SHORT 2 -| /* end confdefs.h. */ -| #include -| #ifdef HAVE_SYS_TYPES_H -| # include -| #endif -| #ifdef HAVE_SYS_STAT_H -| # include -| #endif -| #ifdef STDC_HEADERS -| # include -| # include -| #else -| # ifdef HAVE_STDLIB_H -| # include -| # endif -| #endif -| #ifdef HAVE_STRING_H -| # if !defined STDC_HEADERS && defined HAVE_MEMORY_H -| # include -| # endif -| # include -| #endif -| #ifdef HAVE_STRINGS_H -| # include -| #endif -| #ifdef HAVE_INTTYPES_H -| # include -| #endif -| #ifdef HAVE_STDINT_H -| # include -| #endif -| #ifdef HAVE_UNISTD_H -| # include -| #endif -| int -| main () -| { -| static int test_array [1 - 2 * !(((long int) (sizeof (unsigned int))) <= 3)]; -| test_array [0] = 0 -| -| ; -| return 0; -| } -configure:4276: mipsel-uclibc-gcc -c -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:4276: $? = 0 -configure:4276: mipsel-uclibc-gcc -c -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:4276: $? = 0 -configure:4276: mipsel-uclibc-gcc -c -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:4276: $? = 0 -configure:4290: result: 4 -configure:4304: checking size of unsigned long -configure:4309: mipsel-uclibc-gcc -c -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:4309: $? = 0 -configure:4309: mipsel-uclibc-gcc -c -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -conftest.c: In function 'main': -conftest.c:89: error: size of array 'test_array' is negative -configure:4309: $? = 1 -configure: failed program was: -| /* confdefs.h */ -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE_URL "" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_WAIT_H 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_FCNTL_H 1 -| #define HAVE_SYS_IOCTL_H 1 -| #define HAVE_SYS_TIME_H 1 -| #define HAVE_SYSLOG_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_NET_IF_ARP_H 1 -| #define HAVE_NETINET_IF_ETHER_H 1 -| #define HAVE_GETOPT_H 1 -| #define HAVE_SYS_UIO_H 1 -| #define HAVE_SYS_PARAM_H 1 -| #define HAVE_FCNTL_H 1 -| #define HAVE_NETPACKET_PACKET_H 1 -| #define HAVE_NET_ETHERNET_H 1 -| #define HAVE_ASM_TYPES_H 1 -| #define HAVE_LINUX_IF_PACKET_H 1 -| #define HAVE_LINUX_IF_ETHER_H 1 -| #define HAVE_SYS_SOCKET_H 1 -| #define HAVE_SYS_CDEFS_H 1 -| #define HAVE_NET_IF_H 1 -| #define HAVE_NETINET_IF_ETHER_H 1 -| #define HAVE_LINUX_IF_H 1 -| #define HAVE_LINUX_IF_PPPOX_H 1 -| #define TIME_WITH_SYS_TIME 1 -| #define HAVE_STRUCT_SOCKADDR_LL 1 -| #define HAVE_LINUX_KERNEL_PPPOE 1 -| #define DEBUGGING_ENABLED 1 -| #define RETSIGTYPE void -| #define HAVE_SELECT 1 -| #define HAVE_SOCKET 1 -| #define HAVE_STRERROR 1 -| #define HAVE_STRTOL 1 -| #define SIZEOF_UNSIGNED_SHORT 2 -| #define SIZEOF_UNSIGNED_INT 4 -| /* end confdefs.h. */ -| #include -| #ifdef HAVE_SYS_TYPES_H -| # include -| #endif -| #ifdef HAVE_SYS_STAT_H -| # include -| #endif -| #ifdef STDC_HEADERS -| # include -| # include -| #else -| # ifdef HAVE_STDLIB_H -| # include -| # endif -| #endif -| #ifdef HAVE_STRING_H -| # if !defined STDC_HEADERS && defined HAVE_MEMORY_H -| # include -| # endif -| # include -| #endif -| #ifdef HAVE_STRINGS_H -| # include -| #endif -| #ifdef HAVE_INTTYPES_H -| # include -| #endif -| #ifdef HAVE_STDINT_H -| # include -| #endif -| #ifdef HAVE_UNISTD_H -| # include -| #endif -| int -| main () -| { -| static int test_array [1 - 2 * !(((long int) (sizeof (unsigned long))) <= 0)]; -| test_array [0] = 0 -| -| ; -| return 0; -| } -configure:4309: mipsel-uclibc-gcc -c -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -conftest.c: In function 'main': -conftest.c:89: error: size of array 'test_array' is negative -configure:4309: $? = 1 -configure: failed program was: -| /* confdefs.h */ -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE_URL "" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_WAIT_H 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_FCNTL_H 1 -| #define HAVE_SYS_IOCTL_H 1 -| #define HAVE_SYS_TIME_H 1 -| #define HAVE_SYSLOG_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_NET_IF_ARP_H 1 -| #define HAVE_NETINET_IF_ETHER_H 1 -| #define HAVE_GETOPT_H 1 -| #define HAVE_SYS_UIO_H 1 -| #define HAVE_SYS_PARAM_H 1 -| #define HAVE_FCNTL_H 1 -| #define HAVE_NETPACKET_PACKET_H 1 -| #define HAVE_NET_ETHERNET_H 1 -| #define HAVE_ASM_TYPES_H 1 -| #define HAVE_LINUX_IF_PACKET_H 1 -| #define HAVE_LINUX_IF_ETHER_H 1 -| #define HAVE_SYS_SOCKET_H 1 -| #define HAVE_SYS_CDEFS_H 1 -| #define HAVE_NET_IF_H 1 -| #define HAVE_NETINET_IF_ETHER_H 1 -| #define HAVE_LINUX_IF_H 1 -| #define HAVE_LINUX_IF_PPPOX_H 1 -| #define TIME_WITH_SYS_TIME 1 -| #define HAVE_STRUCT_SOCKADDR_LL 1 -| #define HAVE_LINUX_KERNEL_PPPOE 1 -| #define DEBUGGING_ENABLED 1 -| #define RETSIGTYPE void -| #define HAVE_SELECT 1 -| #define HAVE_SOCKET 1 -| #define HAVE_STRERROR 1 -| #define HAVE_STRTOL 1 -| #define SIZEOF_UNSIGNED_SHORT 2 -| #define SIZEOF_UNSIGNED_INT 4 -| /* end confdefs.h. */ -| #include -| #ifdef HAVE_SYS_TYPES_H -| # include -| #endif -| #ifdef HAVE_SYS_STAT_H -| # include -| #endif -| #ifdef STDC_HEADERS -| # include -| # include -| #else -| # ifdef HAVE_STDLIB_H -| # include -| # endif -| #endif -| #ifdef HAVE_STRING_H -| # if !defined STDC_HEADERS && defined HAVE_MEMORY_H -| # include -| # endif -| # include -| #endif -| #ifdef HAVE_STRINGS_H -| # include -| #endif -| #ifdef HAVE_INTTYPES_H -| # include -| #endif -| #ifdef HAVE_STDINT_H -| # include -| #endif -| #ifdef HAVE_UNISTD_H -| # include -| #endif -| int -| main () -| { -| static int test_array [1 - 2 * !(((long int) (sizeof (unsigned long))) <= 1)]; -| test_array [0] = 0 -| -| ; -| return 0; -| } -configure:4309: mipsel-uclibc-gcc -c -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -conftest.c: In function 'main': -conftest.c:89: error: size of array 'test_array' is negative -configure:4309: $? = 1 -configure: failed program was: -| /* confdefs.h */ -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE_URL "" -| #define STDC_HEADERS 1 -| #define HAVE_SYS_WAIT_H 1 -| #define HAVE_SYS_TYPES_H 1 -| #define HAVE_SYS_STAT_H 1 -| #define HAVE_STDLIB_H 1 -| #define HAVE_STRING_H 1 -| #define HAVE_MEMORY_H 1 -| #define HAVE_STRINGS_H 1 -| #define HAVE_INTTYPES_H 1 -| #define HAVE_STDINT_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_FCNTL_H 1 -| #define HAVE_SYS_IOCTL_H 1 -| #define HAVE_SYS_TIME_H 1 -| #define HAVE_SYSLOG_H 1 -| #define HAVE_UNISTD_H 1 -| #define HAVE_NET_IF_ARP_H 1 -| #define HAVE_NETINET_IF_ETHER_H 1 -| #define HAVE_GETOPT_H 1 -| #define HAVE_SYS_UIO_H 1 -| #define HAVE_SYS_PARAM_H 1 -| #define HAVE_FCNTL_H 1 -| #define HAVE_NETPACKET_PACKET_H 1 -| #define HAVE_NET_ETHERNET_H 1 -| #define HAVE_ASM_TYPES_H 1 -| #define HAVE_LINUX_IF_PACKET_H 1 -| #define HAVE_LINUX_IF_ETHER_H 1 -| #define HAVE_SYS_SOCKET_H 1 -| #define HAVE_SYS_CDEFS_H 1 -| #define HAVE_NET_IF_H 1 -| #define HAVE_NETINET_IF_ETHER_H 1 -| #define HAVE_LINUX_IF_H 1 -| #define HAVE_LINUX_IF_PPPOX_H 1 -| #define TIME_WITH_SYS_TIME 1 -| #define HAVE_STRUCT_SOCKADDR_LL 1 -| #define HAVE_LINUX_KERNEL_PPPOE 1 -| #define DEBUGGING_ENABLED 1 -| #define RETSIGTYPE void -| #define HAVE_SELECT 1 -| #define HAVE_SOCKET 1 -| #define HAVE_STRERROR 1 -| #define HAVE_STRTOL 1 -| #define SIZEOF_UNSIGNED_SHORT 2 -| #define SIZEOF_UNSIGNED_INT 4 -| /* end confdefs.h. */ -| #include -| #ifdef HAVE_SYS_TYPES_H -| # include -| #endif -| #ifdef HAVE_SYS_STAT_H -| # include -| #endif -| #ifdef STDC_HEADERS -| # include -| # include -| #else -| # ifdef HAVE_STDLIB_H -| # include -| # endif -| #endif -| #ifdef HAVE_STRING_H -| # if !defined STDC_HEADERS && defined HAVE_MEMORY_H -| # include -| # endif -| # include -| #endif -| #ifdef HAVE_STRINGS_H -| # include -| #endif -| #ifdef HAVE_INTTYPES_H -| # include -| #endif -| #ifdef HAVE_STDINT_H -| # include -| #endif -| #ifdef HAVE_UNISTD_H -| # include -| #endif -| int -| main () -| { -| static int test_array [1 - 2 * !(((long int) (sizeof (unsigned long))) <= 3)]; -| test_array [0] = 0 -| -| ; -| return 0; -| } -configure:4309: mipsel-uclibc-gcc -c -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:4309: $? = 0 -configure:4309: mipsel-uclibc-gcc -c -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:4309: $? = 0 -configure:4309: mipsel-uclibc-gcc -c -g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 conftest.c >&5 -configure:4309: $? = 0 -configure:4323: result: 4 -configure:4336: checking for pppd -configure:4368: result: NOTFOUND -configure:4378: checking for echo -configure:4396: found /bin/echo -configure:4409: result: /bin/echo -configure:4420: checking for setsid -configure:4439: found /usr/bin/setsid -configure:4452: result: /usr/bin/setsid -configure:4463: checking for id -configure:4482: found /usr/bin/id -configure:4495: result: /usr/bin/id -configure:4504: checking for Linux 2.4.X kernel-mode PPPoE support -configure:4551: result: yes -configure:4566: WARNING: *** Oops! I couldn't find pppd, the PPP daemon anywhere. -configure:4568: WARNING: *** You must install pppd, version 2.3.10 or later. -configure:4570: WARNING: *** I will keep going, but it may not work. -configure:4601: WARNING: *** Oops. I cannot figure out what version of pppd you have. -configure:4603: WARNING: *** All I got back was '' -configure:4605: WARNING: *** I will keep going, but it may not work. -configure:4610: checking packing order of bit fields -configure:4654: result: reversed -configure:4832: creating ./config.status - -## ---------------------- ## -## Running config.status. ## -## ---------------------- ## - -This file was extended by config.status, which was -generated by GNU Autoconf 2.67. Invocation command line was - - CONFIG_FILES = - CONFIG_HEADERS = - CONFIG_LINKS = - CONFIG_COMMANDS = - $ ./config.status - -on vicente-P5K-E - -config.status:878: creating Makefile -config.status:981: WARNING: 'Makefile.in' seems to ignore the --datarootdir setting -config.status:878: creating libevent/Makefile -config.status:878: creating ../scripts/pppoe-connect -config.status:878: creating ../scripts/pppoe-start -config.status:878: creating ../scripts/pppoe-stop -config.status:878: creating ../scripts/pppoe-init -config.status:878: creating ../scripts/pppoe-init-suse -config.status:878: creating ../scripts/pppoe-init-turbolinux -config.status:878: creating ../scripts/pppoe-setup -config.status:878: creating ../gui/Makefile -config.status:981: WARNING: '../gui/Makefile.in' seems to ignore the --datarootdir setting -config.status:878: creating ../gui/tkpppoe -config.status:878: creating config.h -config.status:1052: config.h is unchanged -configure:6016: result: On this platform, the following targets will be built: -configure:6018: result: pppoe pppoe-server pppoe-sniff pppoe-relay rp-pppoe.so -configure:6020: result: Type 'make' to compile the software. - -## ---------------- ## -## Cache variables. ## -## ---------------- ## - -ac_cv_c_compiler_gnu=yes -ac_cv_c_const=yes -ac_cv_debugging=yes -ac_cv_env_CC_set=set -ac_cv_env_CC_value=mipsel-uclibc-gcc -ac_cv_env_CFLAGS_set=set -ac_cv_env_CFLAGS_value='-g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 ' -ac_cv_env_CPPFLAGS_set= -ac_cv_env_CPPFLAGS_value= -ac_cv_env_CPP_set= -ac_cv_env_CPP_value= -ac_cv_env_LDFLAGS_set= -ac_cv_env_LDFLAGS_value= -ac_cv_env_LIBS_set= -ac_cv_env_LIBS_value= -ac_cv_env_build_alias_set=set -ac_cv_env_build_alias_value=x86_64-linux-gnu -ac_cv_env_host_alias_set=set -ac_cv_env_host_alias_value=mipsel-linux -ac_cv_env_target_alias_set= -ac_cv_env_target_alias_value= -ac_cv_func_malloc_0_nonnull=yes -ac_cv_func_memcmp_working=no -ac_cv_func_select=yes -ac_cv_func_setvbuf_reversed=no -ac_cv_func_socket=yes -ac_cv_func_strerror=yes -ac_cv_func_strtol=yes -ac_cv_header_asm_types_h=yes -ac_cv_header_fcntl_h=yes -ac_cv_header_getopt_h=yes -ac_cv_header_inttypes_h=yes -ac_cv_header_linux_if_ether_h=yes -ac_cv_header_linux_if_h=yes -ac_cv_header_linux_if_packet_h=yes -ac_cv_header_linux_if_pppox_h=yes -ac_cv_header_memory_h=yes -ac_cv_header_net_bpf_h=no -ac_cv_header_net_ethernet_h=yes -ac_cv_header_net_if_arp_h=yes -ac_cv_header_net_if_dl_h=no -ac_cv_header_net_if_ether_h=no -ac_cv_header_net_if_h=yes -ac_cv_header_net_if_types_h=no -ac_cv_header_netinet_if_ether_h=yes -ac_cv_header_netpacket_packet_h=yes -ac_cv_header_stdc=yes -ac_cv_header_stdint_h=yes -ac_cv_header_stdlib_h=yes -ac_cv_header_string_h=yes -ac_cv_header_strings_h=yes -ac_cv_header_sys_cdefs_h=yes -ac_cv_header_sys_dlpi_h=no -ac_cv_header_sys_ioctl_h=yes -ac_cv_header_sys_param_h=yes -ac_cv_header_sys_socket_h=yes -ac_cv_header_sys_stat_h=yes -ac_cv_header_sys_time_h=yes -ac_cv_header_sys_types_h=yes -ac_cv_header_sys_uio_h=yes -ac_cv_header_sys_wait_h=yes -ac_cv_header_syslog_h=yes -ac_cv_header_time=yes -ac_cv_header_unistd_h=yes -ac_cv_licpath=no -ac_cv_linux_kernel_pppoe=yes -ac_cv_n_hdlc=no -ac_cv_objext=o -ac_cv_path_ECHO=/bin/echo -ac_cv_path_EGREP='/bin/grep -E' -ac_cv_path_GREP=/bin/grep -ac_cv_path_ID=/usr/bin/id -ac_cv_path_PPPD=NOTFOUND -ac_cv_path_SETSID=/usr/bin/setsid -ac_cv_path_install='/usr/bin/install -c' -ac_cv_pluginpath=/home/vicente/tomato/release/src-rt/router/pppd -ac_cv_prog_CC=mipsel-uclibc-gcc -ac_cv_prog_CPP='mipsel-uclibc-gcc -E' -ac_cv_prog_RANLIB=mipsel-uclibc-ranlib -ac_cv_prog_cc_c89= -ac_cv_prog_cc_g=yes -ac_cv_sizeof_unsigned_int=4 -ac_cv_sizeof_unsigned_long=4 -ac_cv_sizeof_unsigned_short=2 -ac_cv_struct_sockaddr_ll=yes -ac_cv_struct_tm=time.h -ac_cv_type_pid_t=yes -ac_cv_type_signal=void -rpppoe_cv_pack_bitfields=rev - -## ----------------- ## -## Output variables. ## -## ----------------- ## - -CC='mipsel-uclibc-gcc' -CFLAGS='-g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fno-strict-aliasing -Wall -Wstrict-prototypes' -CPP='mipsel-uclibc-gcc -E' -CPPFLAGS='' -DEFS='-DHAVE_CONFIG_H' -ECHO='/bin/echo' -ECHO_C='' -ECHO_N='-n' -ECHO_T='' -EGREP='/bin/grep -E' -EXEEXT='' -GREP='/bin/grep' -ID='/usr/bin/id' -INSTALL_DATA='${INSTALL} -m 644' -INSTALL_PROGRAM='${INSTALL}' -INSTALL_SCRIPT='${INSTALL}' -LDFLAGS='' -LIBEVENT='../libevent' -LIBOBJS=' ${LIBOBJDIR}memcmp$U.o' -LIBS='' -LIC_DEFINE='' -LIC_INCDIR='' -LIC_LIB='' -LIC_LIBDIR='' -LIC_MAKEFILE_INCLUDE='' -LINUX_KERNELMODE_PLUGIN='rp-pppoe.so' -LTLIBOBJS=' ${LIBOBJDIR}memcmp$U.lo' -OBJEXT='o' -PACKAGE_BUGREPORT='' -PACKAGE_NAME='' -PACKAGE_STRING='' -PACKAGE_TARNAME='' -PACKAGE_URL='' -PACKAGE_VERSION='' -PATH_SEPARATOR=':' -PPPD='pppd' -PPPD_H='' -PPPD_INCDIR='/home/vicente/tomato/release/src-rt/router/pppd' -PPPOE_RELAY='pppoe-relay' -PPPOE_SERVER_DEPS='' -RANLIB='mipsel-uclibc-ranlib' -RDYNAMIC='' -SETSID='/usr/bin/setsid' -SHELL='/bin/sh' -TARGETS='pppoe pppoe-server pppoe-sniff pppoe-relay rp-pppoe.so' -WRAPPER='/usr/sbin/pppoe-wrapper' -ac_ct_CC='' -bindir='${exec_prefix}/bin' -build_alias='x86_64-linux-gnu' -datadir='${datarootdir}' -datadir_evaluated='${prefix}/share' -datarootdir='${prefix}/share' -docdir='${datarootdir}/doc/${PACKAGE}' -dvidir='${docdir}' -exec_prefix='${prefix}' -host_alias='mipsel-linux' -htmldir='${docdir}' -includedir='${prefix}/include' -infodir='${datarootdir}/info' -libdir='${exec_prefix}/lib' -libexecdir='${exec_prefix}/libexec' -localedir='${datarootdir}/locale' -localstatedir='${prefix}/var' -mandir='${datarootdir}/man' -oldincludedir='/usr/include' -pdfdir='${docdir}' -prefix='/usr' -program_transform_name='s,x,x,' -psdir='${docdir}' -sbindir='${exec_prefix}/sbin' -sharedstatedir='${prefix}/com' -sysconfdir='${prefix}/etc' -target_alias='' - -## ----------- ## -## confdefs.h. ## -## ----------- ## - -/* confdefs.h */ -#define PACKAGE_NAME "" -#define PACKAGE_TARNAME "" -#define PACKAGE_VERSION "" -#define PACKAGE_STRING "" -#define PACKAGE_BUGREPORT "" -#define PACKAGE_URL "" -#define STDC_HEADERS 1 -#define HAVE_SYS_WAIT_H 1 -#define HAVE_SYS_TYPES_H 1 -#define HAVE_SYS_STAT_H 1 -#define HAVE_STDLIB_H 1 -#define HAVE_STRING_H 1 -#define HAVE_MEMORY_H 1 -#define HAVE_STRINGS_H 1 -#define HAVE_INTTYPES_H 1 -#define HAVE_STDINT_H 1 -#define HAVE_UNISTD_H 1 -#define HAVE_FCNTL_H 1 -#define HAVE_SYS_IOCTL_H 1 -#define HAVE_SYS_TIME_H 1 -#define HAVE_SYSLOG_H 1 -#define HAVE_UNISTD_H 1 -#define HAVE_NET_IF_ARP_H 1 -#define HAVE_NETINET_IF_ETHER_H 1 -#define HAVE_GETOPT_H 1 -#define HAVE_SYS_UIO_H 1 -#define HAVE_SYS_PARAM_H 1 -#define HAVE_FCNTL_H 1 -#define HAVE_NETPACKET_PACKET_H 1 -#define HAVE_NET_ETHERNET_H 1 -#define HAVE_ASM_TYPES_H 1 -#define HAVE_LINUX_IF_PACKET_H 1 -#define HAVE_LINUX_IF_ETHER_H 1 -#define HAVE_SYS_SOCKET_H 1 -#define HAVE_SYS_CDEFS_H 1 -#define HAVE_NET_IF_H 1 -#define HAVE_NETINET_IF_ETHER_H 1 -#define HAVE_LINUX_IF_H 1 -#define HAVE_LINUX_IF_PPPOX_H 1 -#define TIME_WITH_SYS_TIME 1 -#define HAVE_STRUCT_SOCKADDR_LL 1 -#define HAVE_LINUX_KERNEL_PPPOE 1 -#define DEBUGGING_ENABLED 1 -#define RETSIGTYPE void -#define HAVE_SELECT 1 -#define HAVE_SOCKET 1 -#define HAVE_STRERROR 1 -#define HAVE_STRTOL 1 -#define SIZEOF_UNSIGNED_SHORT 2 -#define SIZEOF_UNSIGNED_INT 4 -#define SIZEOF_UNSIGNED_LONG 4 -#define PACK_BITFIELDS_REVERSED 1 - -configure: exit 0 diff --git a/release/src/router/rp-pppoe/src/config.status b/release/src/router/rp-pppoe/src/config.status deleted file mode 100755 index b87c451c81..0000000000 --- a/release/src/router/rp-pppoe/src/config.status +++ /dev/null @@ -1,1072 +0,0 @@ -#! /bin/sh -# Generated by configure. -# Run this file to recreate the current configuration. -# Compiler output produced by configure, useful for debugging -# configure, is in config.log if it exists. - -debug=false -ac_cs_recheck=false -ac_cs_silent=false - -SHELL=${CONFIG_SHELL-/bin/sh} -export SHELL -## -------------------- ## -## M4sh Initialization. ## -## -------------------- ## - -# Be more Bourne compatible -DUALCASE=1; export DUALCASE # for MKS sh -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then : - emulate sh - NULLCMD=: - # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which - # is contrary to our usage. Disable this feature. - alias -g '${1+"$@"}'='"$@"' - setopt NO_GLOB_SUBST -else - case `(set -o) 2>/dev/null` in #( - *posix*) : - set -o posix ;; #( - *) : - ;; -esac -fi - - -as_nl=' -' -export as_nl -# Printing a long string crashes Solaris 7 /usr/bin/printf. -as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' -as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo -as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo -# Prefer a ksh shell builtin over an external printf program on Solaris, -# but without wasting forks for bash or zsh. -if test -z "$BASH_VERSION$ZSH_VERSION" \ - && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then - as_echo='print -r --' - as_echo_n='print -rn --' -elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then - as_echo='printf %s\n' - as_echo_n='printf %s' -else - if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then - as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"' - as_echo_n='/usr/ucb/echo -n' - else - as_echo_body='eval expr "X$1" : "X\\(.*\\)"' - as_echo_n_body='eval - arg=$1; - case $arg in #( - *"$as_nl"*) - expr "X$arg" : "X\\(.*\\)$as_nl"; - arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;; - esac; - expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl" - ' - export as_echo_n_body - as_echo_n='sh -c $as_echo_n_body as_echo' - fi - export as_echo_body - as_echo='sh -c $as_echo_body as_echo' -fi - -# The user is always right. -if test "${PATH_SEPARATOR+set}" != set; then - PATH_SEPARATOR=: - (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { - (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || - PATH_SEPARATOR=';' - } -fi - - -# IFS -# We need space, tab and new line, in precisely that order. Quoting is -# there to prevent editors from complaining about space-tab. -# (If _AS_PATH_WALK were called with IFS unset, it would disable word -# splitting by setting IFS to empty value.) -IFS=" "" $as_nl" - -# Find who we are. Look in the path if we contain no directory separator. -case $0 in #(( - *[\\/]* ) as_myself=$0 ;; - *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break - done -IFS=$as_save_IFS - - ;; -esac -# We did not find ourselves, most probably we were run as `sh COMMAND' -# in which case we are not to be found in the path. -if test "x$as_myself" = x; then - as_myself=$0 -fi -if test ! -f "$as_myself"; then - $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 - exit 1 -fi - -# Unset variables that we do not need and which cause bugs (e.g. in -# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1" -# suppresses any "Segmentation fault" message there. '((' could -# trigger a bug in pdksh 5.2.14. -for as_var in BASH_ENV ENV MAIL MAILPATH -do eval test x\${$as_var+set} = xset \ - && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : -done -PS1='$ ' -PS2='> ' -PS4='+ ' - -# NLS nuisances. -LC_ALL=C -export LC_ALL -LANGUAGE=C -export LANGUAGE - -# CDPATH. -(unset CDPATH) >/dev/null 2>&1 && unset CDPATH - - -# as_fn_error STATUS ERROR [LINENO LOG_FD] -# ---------------------------------------- -# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are -# provided, also output the error to LOG_FD, referencing LINENO. Then exit the -# script with STATUS, using 1 if that was 0. -as_fn_error () -{ - as_status=$1; test $as_status -eq 0 && as_status=1 - if test "$4"; then - as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4 - fi - $as_echo "$as_me: error: $2" >&2 - as_fn_exit $as_status -} # as_fn_error - - -# as_fn_set_status STATUS -# ----------------------- -# Set $? to STATUS, without forking. -as_fn_set_status () -{ - return $1 -} # as_fn_set_status - -# as_fn_exit STATUS -# ----------------- -# Exit the shell with STATUS, even in a "trap 0" or "set -e" context. -as_fn_exit () -{ - set +e - as_fn_set_status $1 - exit $1 -} # as_fn_exit - -# as_fn_unset VAR -# --------------- -# Portably unset VAR. -as_fn_unset () -{ - { eval $1=; unset $1;} -} -as_unset=as_fn_unset -# as_fn_append VAR VALUE -# ---------------------- -# Append the text in VALUE to the end of the definition contained in VAR. Take -# advantage of any shell optimizations that allow amortized linear growth over -# repeated appends, instead of the typical quadratic growth present in naive -# implementations. -if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then : - eval 'as_fn_append () - { - eval $1+=\$2 - }' -else - as_fn_append () - { - eval $1=\$$1\$2 - } -fi # as_fn_append - -# as_fn_arith ARG... -# ------------------ -# Perform arithmetic evaluation on the ARGs, and store the result in the -# global $as_val. Take advantage of shells that can avoid forks. The arguments -# must be portable across $(()) and expr. -if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then : - eval 'as_fn_arith () - { - as_val=$(( $* )) - }' -else - as_fn_arith () - { - as_val=`expr "$@" || test $? -eq 1` - } -fi # as_fn_arith - - -if expr a : '\(a\)' >/dev/null 2>&1 && - test "X`expr 00001 : '.*\(...\)'`" = X001; then - as_expr=expr -else - as_expr=false -fi - -if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then - as_basename=basename -else - as_basename=false -fi - -if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then - as_dirname=dirname -else - as_dirname=false -fi - -as_me=`$as_basename -- "$0" || -$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ - X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X/"$0" | - sed '/^.*\/\([^/][^/]*\)\/*$/{ - s//\1/ - q - } - /^X\/\(\/\/\)$/{ - s//\1/ - q - } - /^X\/\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - -# Avoid depending upon Character Ranges. -as_cr_letters='abcdefghijklmnopqrstuvwxyz' -as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' -as_cr_Letters=$as_cr_letters$as_cr_LETTERS -as_cr_digits='0123456789' -as_cr_alnum=$as_cr_Letters$as_cr_digits - -ECHO_C= ECHO_N= ECHO_T= -case `echo -n x` in #((((( --n*) - case `echo 'xy\c'` in - *c*) ECHO_T=' ';; # ECHO_T is single tab character. - xy) ECHO_C='\c';; - *) echo `echo ksh88 bug on AIX 6.1` > /dev/null - ECHO_T=' ';; - esac;; -*) - ECHO_N='-n';; -esac - -rm -f conf$$ conf$$.exe conf$$.file -if test -d conf$$.dir; then - rm -f conf$$.dir/conf$$.file -else - rm -f conf$$.dir - mkdir conf$$.dir 2>/dev/null -fi -if (echo >conf$$.file) 2>/dev/null; then - if ln -s conf$$.file conf$$ 2>/dev/null; then - as_ln_s='ln -s' - # ... but there are two gotchas: - # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. - # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. - # In both cases, we have to default to `cp -p'. - ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || - as_ln_s='cp -p' - elif ln conf$$.file conf$$ 2>/dev/null; then - as_ln_s=ln - else - as_ln_s='cp -p' - fi -else - as_ln_s='cp -p' -fi -rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file -rmdir conf$$.dir 2>/dev/null - - -# as_fn_mkdir_p -# ------------- -# Create "$as_dir" as a directory, including parents if necessary. -as_fn_mkdir_p () -{ - - case $as_dir in #( - -*) as_dir=./$as_dir;; - esac - test -d "$as_dir" || eval $as_mkdir_p || { - as_dirs= - while :; do - case $as_dir in #( - *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( - *) as_qdir=$as_dir;; - esac - as_dirs="'$as_qdir' $as_dirs" - as_dir=`$as_dirname -- "$as_dir" || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - test -d "$as_dir" && break - done - test -z "$as_dirs" || eval "mkdir $as_dirs" - } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir" - - -} # as_fn_mkdir_p -if mkdir -p . 2>/dev/null; then - as_mkdir_p='mkdir -p "$as_dir"' -else - test -d ./-p && rmdir ./-p - as_mkdir_p=false -fi - -if test -x / >/dev/null 2>&1; then - as_test_x='test -x' -else - if ls -dL / >/dev/null 2>&1; then - as_ls_L_option=L - else - as_ls_L_option= - fi - as_test_x=' - eval sh -c '\'' - if test -d "$1"; then - test -d "$1/."; - else - case $1 in #( - -*)set "./$1";; - esac; - case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #(( - ???[sx]*):;;*)false;;esac;fi - '\'' sh - ' -fi -as_executable_p=$as_test_x - -# Sed expression to map a string onto a valid CPP name. -as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" - -# Sed expression to map a string onto a valid variable name. -as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" - - -exec 6>&1 -## ----------------------------------- ## -## Main body of $CONFIG_STATUS script. ## -## ----------------------------------- ## -# Save the log message, to keep $0 and so on meaningful, and to -# report actual input values of CONFIG_FILES etc. instead of their -# values after options handling. -ac_log=" -This file was extended by $as_me, which was -generated by GNU Autoconf 2.67. Invocation command line was - - CONFIG_FILES = $CONFIG_FILES - CONFIG_HEADERS = $CONFIG_HEADERS - CONFIG_LINKS = $CONFIG_LINKS - CONFIG_COMMANDS = $CONFIG_COMMANDS - $ $0 $@ - -on `(hostname || uname -n) 2>/dev/null | sed 1q` -" - -# Files that config.status was made for. -config_files=" Makefile libevent/Makefile ../scripts/pppoe-connect ../scripts/pppoe-start ../scripts/pppoe-stop ../scripts/pppoe-init ../scripts/pppoe-init-suse ../scripts/pppoe-init-turbolinux ../scripts/pppoe-setup ../gui/Makefile ../gui/tkpppoe " -config_headers=" config.h" - -ac_cs_usage="\ -\`$as_me' instantiates files and other configuration actions -from templates according to the current configuration. Unless the files -and actions are specified as TAGs, all are instantiated by default. - -Usage: $0 [OPTION]... [TAG]... - - -h, --help print this help, then exit - -V, --version print version number and configuration settings, then exit - --config print configuration, then exit - -q, --quiet, --silent - do not print progress messages - -d, --debug don't remove temporary files - --recheck update $as_me by reconfiguring in the same conditions - --file=FILE[:TEMPLATE] - instantiate the configuration file FILE - --header=FILE[:TEMPLATE] - instantiate the configuration header FILE - -Configuration files: -$config_files - -Configuration headers: -$config_headers - -Report bugs to the package provider." - -ac_cs_config="'--host=mipsel-linux' '--build=x86_64-linux-gnu' '--prefix=/usr' '--enable-plugin=/home/vicente/tomato/release/src-rt/router/pppd' 'ac_cv_linux_kernel_pppoe=yes' 'rpppoe_cv_pack_bitfields=rev' 'build_alias=x86_64-linux-gnu' 'host_alias=mipsel-linux' 'CC=mipsel-uclibc-gcc' 'CFLAGS=-g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 '" -ac_cs_version="\ -config.status -configured by ./configure, generated by GNU Autoconf 2.67, - with options \"$ac_cs_config\" - -Copyright (C) 2010 Free Software Foundation, Inc. -This config.status script is free software; the Free Software Foundation -gives unlimited permission to copy, distribute and modify it." - -ac_pwd='/home/vicente/tomato/release/src/router/rp-pppoe/src' -srcdir='.' -INSTALL='/usr/bin/install -c' -test -n "$AWK" || AWK=awk -# The default lists apply if the user does not specify any file. -ac_need_defaults=: -while test $# != 0 -do - case $1 in - --*=?*) - ac_option=`expr "X$1" : 'X\([^=]*\)='` - ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'` - ac_shift=: - ;; - --*=) - ac_option=`expr "X$1" : 'X\([^=]*\)='` - ac_optarg= - ac_shift=: - ;; - *) - ac_option=$1 - ac_optarg=$2 - ac_shift=shift - ;; - esac - - case $ac_option in - # Handling of the options. - -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) - ac_cs_recheck=: ;; - --version | --versio | --versi | --vers | --ver | --ve | --v | -V ) - $as_echo "$ac_cs_version"; exit ;; - --config | --confi | --conf | --con | --co | --c ) - $as_echo "$ac_cs_config"; exit ;; - --debug | --debu | --deb | --de | --d | -d ) - debug=: ;; - --file | --fil | --fi | --f ) - $ac_shift - case $ac_optarg in - *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; - '') as_fn_error $? "missing file argument" ;; - esac - as_fn_append CONFIG_FILES " '$ac_optarg'" - ac_need_defaults=false;; - --header | --heade | --head | --hea ) - $ac_shift - case $ac_optarg in - *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; - esac - as_fn_append CONFIG_HEADERS " '$ac_optarg'" - ac_need_defaults=false;; - --he | --h) - # Conflict between --help and --header - as_fn_error $? "ambiguous option: \`$1' -Try \`$0 --help' for more information.";; - --help | --hel | -h ) - $as_echo "$ac_cs_usage"; exit ;; - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil | --si | --s) - ac_cs_silent=: ;; - - # This is an error. - -*) as_fn_error $? "unrecognized option: \`$1' -Try \`$0 --help' for more information." ;; - - *) as_fn_append ac_config_targets " $1" - ac_need_defaults=false ;; - - esac - shift -done - -ac_configure_extra_args= - -if $ac_cs_silent; then - exec 6>/dev/null - ac_configure_extra_args="$ac_configure_extra_args --silent" -fi - -if $ac_cs_recheck; then - set X '/bin/sh' './configure' '--host=mipsel-linux' '--build=x86_64-linux-gnu' '--prefix=/usr' '--enable-plugin=/home/vicente/tomato/release/src-rt/router/pppd' 'ac_cv_linux_kernel_pppoe=yes' 'rpppoe_cv_pack_bitfields=rev' 'build_alias=x86_64-linux-gnu' 'host_alias=mipsel-linux' 'CC=mipsel-uclibc-gcc' 'CFLAGS=-g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 ' $ac_configure_extra_args --no-create --no-recursion - shift - $as_echo "running CONFIG_SHELL=/bin/sh $*" >&6 - CONFIG_SHELL='/bin/sh' - export CONFIG_SHELL - exec "$@" -fi - -exec 5>>config.log -{ - echo - sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX -## Running $as_me. ## -_ASBOX - $as_echo "$ac_log" -} >&5 - - -# Handling of arguments. -for ac_config_target in $ac_config_targets -do - case $ac_config_target in - "config.h") CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;; - "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;; - "libevent/Makefile") CONFIG_FILES="$CONFIG_FILES libevent/Makefile" ;; - "../scripts/pppoe-connect") CONFIG_FILES="$CONFIG_FILES ../scripts/pppoe-connect" ;; - "../scripts/pppoe-start") CONFIG_FILES="$CONFIG_FILES ../scripts/pppoe-start" ;; - "../scripts/pppoe-stop") CONFIG_FILES="$CONFIG_FILES ../scripts/pppoe-stop" ;; - "../scripts/pppoe-init") CONFIG_FILES="$CONFIG_FILES ../scripts/pppoe-init" ;; - "../scripts/pppoe-init-suse") CONFIG_FILES="$CONFIG_FILES ../scripts/pppoe-init-suse" ;; - "../scripts/pppoe-init-turbolinux") CONFIG_FILES="$CONFIG_FILES ../scripts/pppoe-init-turbolinux" ;; - "../scripts/pppoe-setup") CONFIG_FILES="$CONFIG_FILES ../scripts/pppoe-setup" ;; - "../gui/Makefile") CONFIG_FILES="$CONFIG_FILES ../gui/Makefile" ;; - "../gui/tkpppoe") CONFIG_FILES="$CONFIG_FILES ../gui/tkpppoe" ;; - "$EXTRACONFIGS") CONFIG_FILES="$CONFIG_FILES $EXTRACONFIGS" ;; - - *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5 ;; - esac -done - - -# If the user did not use the arguments to specify the items to instantiate, -# then the envvar interface is used. Set only those that are not. -# We use the long form for the default assignment because of an extremely -# bizarre bug on SunOS 4.1.3. -if $ac_need_defaults; then - test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files - test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers -fi - -# Have a temporary directory for convenience. Make it in the build tree -# simply because there is no reason against having it here, and in addition, -# creating and moving files from /tmp can sometimes cause problems. -# Hook for its removal unless debugging. -# Note that there is a small window in which the directory will not be cleaned: -# after its creation but before its name has been assigned to `$tmp'. -$debug || -{ - tmp= - trap 'exit_status=$? - { test -z "$tmp" || test ! -d "$tmp" || rm -fr "$tmp"; } && exit $exit_status -' 0 - trap 'as_fn_exit 1' 1 2 13 15 -} -# Create a (secure) tmp directory for tmp files. - -{ - tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` && - test -n "$tmp" && test -d "$tmp" -} || -{ - tmp=./conf$$-$RANDOM - (umask 077 && mkdir "$tmp") -} || as_fn_error $? "cannot create a temporary directory in ." "$LINENO" 5 - -# Set up the scripts for CONFIG_FILES section. -# No need to generate them if there are no CONFIG_FILES. -# This happens for instance with `./config.status config.h'. -if test -n "$CONFIG_FILES"; then - - -ac_cr=`echo X | tr X '\015'` -# On cygwin, bash can eat \r inside `` if the user requested igncr. -# But we know of no other shell where ac_cr would be empty at this -# point, so we can use a bashism as a fallback. -if test "x$ac_cr" = x; then - eval ac_cr=\$\'\\r\' -fi -ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' /dev/null` -if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then - ac_cs_awk_cr='\\r' -else - ac_cs_awk_cr=$ac_cr -fi - -echo 'BEGIN {' >"$tmp/subs1.awk" && -cat >>"$tmp/subs1.awk" <<\_ACAWK && -S["LTLIBOBJS"]=" ${LIBOBJDIR}memcmp$U.lo" -S["datadir_evaluated"]="${prefix}/share" -S["LIBEVENT"]="../libevent" -S["RDYNAMIC"]="" -S["PPPOE_SERVER_DEPS"]="" -S["LIC_DEFINE"]="" -S["LIC_MAKEFILE_INCLUDE"]="" -S["LIC_LIB"]="" -S["LIC_LIBDIR"]="" -S["LIC_INCDIR"]="" -S["TARGETS"]="pppoe pppoe-server pppoe-sniff pppoe-relay rp-pppoe.so" -S["WRAPPER"]="/usr/sbin/pppoe-wrapper" -S["ID"]="/usr/bin/id" -S["SETSID"]="/usr/bin/setsid" -S["ECHO"]="/bin/echo" -S["PPPD"]="pppd" -S["INSTALL_DATA"]="${INSTALL} -m 644" -S["INSTALL_SCRIPT"]="${INSTALL}" -S["INSTALL_PROGRAM"]="${INSTALL}" -S["LIBOBJS"]=" ${LIBOBJDIR}memcmp$U.o" -S["PPPOE_RELAY"]="pppoe-relay" -S["PPPD_H"]="" -S["PPPD_INCDIR"]="/home/vicente/tomato/release/src-rt/router/pppd" -S["LINUX_KERNELMODE_PLUGIN"]="rp-pppoe.so" -S["EGREP"]="/bin/grep -E" -S["GREP"]="/bin/grep" -S["CPP"]="mipsel-uclibc-gcc -E" -S["RANLIB"]="mipsel-uclibc-ranlib" -S["OBJEXT"]="o" -S["EXEEXT"]="" -S["ac_ct_CC"]="" -S["CPPFLAGS"]="" -S["LDFLAGS"]="" -S["CFLAGS"]="-g -O2 -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -fno-strict-aliasing -Wall -Wstrict-prot"\ -"otypes" -S["CC"]="mipsel-uclibc-gcc" -S["target_alias"]="" -S["host_alias"]="mipsel-linux" -S["build_alias"]="x86_64-linux-gnu" -S["LIBS"]="" -S["ECHO_T"]="" -S["ECHO_N"]="-n" -S["ECHO_C"]="" -S["DEFS"]="-DHAVE_CONFIG_H" -S["mandir"]="${datarootdir}/man" -S["localedir"]="${datarootdir}/locale" -S["libdir"]="${exec_prefix}/lib" -S["psdir"]="${docdir}" -S["pdfdir"]="${docdir}" -S["dvidir"]="${docdir}" -S["htmldir"]="${docdir}" -S["infodir"]="${datarootdir}/info" -S["docdir"]="${datarootdir}/doc/${PACKAGE}" -S["oldincludedir"]="/usr/include" -S["includedir"]="${prefix}/include" -S["localstatedir"]="${prefix}/var" -S["sharedstatedir"]="${prefix}/com" -S["sysconfdir"]="${prefix}/etc" -S["datadir"]="${datarootdir}" -S["datarootdir"]="${prefix}/share" -S["libexecdir"]="${exec_prefix}/libexec" -S["sbindir"]="${exec_prefix}/sbin" -S["bindir"]="${exec_prefix}/bin" -S["program_transform_name"]="s,x,x," -S["prefix"]="/usr" -S["exec_prefix"]="${prefix}" -S["PACKAGE_URL"]="" -S["PACKAGE_BUGREPORT"]="" -S["PACKAGE_STRING"]="" -S["PACKAGE_VERSION"]="" -S["PACKAGE_TARNAME"]="" -S["PACKAGE_NAME"]="" -S["PATH_SEPARATOR"]=":" -S["SHELL"]="/bin/sh" -_ACAWK -cat >>"$tmp/subs1.awk" <<_ACAWK && - for (key in S) S_is_set[key] = 1 - FS = "" - -} -{ - line = $ 0 - nfields = split(line, field, "@") - substed = 0 - len = length(field[1]) - for (i = 2; i < nfields; i++) { - key = field[i] - keylen = length(key) - if (S_is_set[key]) { - value = S[key] - line = substr(line, 1, len) "" value "" substr(line, len + keylen + 3) - len += length(value) + length(field[++i]) - substed = 1 - } else - len += 1 + keylen - } - - print line -} - -_ACAWK -if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then - sed "s/$ac_cr\$//; s/$ac_cr/$ac_cs_awk_cr/g" -else - cat -fi < "$tmp/subs1.awk" > "$tmp/subs.awk" \ - || as_fn_error $? "could not setup config files machinery" "$LINENO" 5 -fi # test -n "$CONFIG_FILES" - -# Set up the scripts for CONFIG_HEADERS section. -# No need to generate them if there are no CONFIG_HEADERS. -# This happens for instance with `./config.status Makefile'. -if test -n "$CONFIG_HEADERS"; then -cat >"$tmp/defines.awk" <<\_ACAWK || -BEGIN { -D["PACKAGE_NAME"]=" \"\"" -D["PACKAGE_TARNAME"]=" \"\"" -D["PACKAGE_VERSION"]=" \"\"" -D["PACKAGE_STRING"]=" \"\"" -D["PACKAGE_BUGREPORT"]=" \"\"" -D["PACKAGE_URL"]=" \"\"" -D["STDC_HEADERS"]=" 1" -D["HAVE_SYS_WAIT_H"]=" 1" -D["HAVE_SYS_TYPES_H"]=" 1" -D["HAVE_SYS_STAT_H"]=" 1" -D["HAVE_STDLIB_H"]=" 1" -D["HAVE_STRING_H"]=" 1" -D["HAVE_MEMORY_H"]=" 1" -D["HAVE_STRINGS_H"]=" 1" -D["HAVE_INTTYPES_H"]=" 1" -D["HAVE_STDINT_H"]=" 1" -D["HAVE_UNISTD_H"]=" 1" -D["HAVE_FCNTL_H"]=" 1" -D["HAVE_SYS_IOCTL_H"]=" 1" -D["HAVE_SYS_TIME_H"]=" 1" -D["HAVE_SYSLOG_H"]=" 1" -D["HAVE_UNISTD_H"]=" 1" -D["HAVE_NET_IF_ARP_H"]=" 1" -D["HAVE_NETINET_IF_ETHER_H"]=" 1" -D["HAVE_GETOPT_H"]=" 1" -D["HAVE_SYS_UIO_H"]=" 1" -D["HAVE_SYS_PARAM_H"]=" 1" -D["HAVE_FCNTL_H"]=" 1" -D["HAVE_NETPACKET_PACKET_H"]=" 1" -D["HAVE_NET_ETHERNET_H"]=" 1" -D["HAVE_ASM_TYPES_H"]=" 1" -D["HAVE_LINUX_IF_PACKET_H"]=" 1" -D["HAVE_LINUX_IF_ETHER_H"]=" 1" -D["HAVE_SYS_SOCKET_H"]=" 1" -D["HAVE_SYS_CDEFS_H"]=" 1" -D["HAVE_NET_IF_H"]=" 1" -D["HAVE_NETINET_IF_ETHER_H"]=" 1" -D["HAVE_LINUX_IF_H"]=" 1" -D["HAVE_LINUX_IF_PPPOX_H"]=" 1" -D["TIME_WITH_SYS_TIME"]=" 1" -D["HAVE_STRUCT_SOCKADDR_LL"]=" 1" -D["HAVE_LINUX_KERNEL_PPPOE"]=" 1" -D["DEBUGGING_ENABLED"]=" 1" -D["RETSIGTYPE"]=" void" -D["HAVE_SELECT"]=" 1" -D["HAVE_SOCKET"]=" 1" -D["HAVE_STRERROR"]=" 1" -D["HAVE_STRTOL"]=" 1" -D["SIZEOF_UNSIGNED_SHORT"]=" 2" -D["SIZEOF_UNSIGNED_INT"]=" 4" -D["SIZEOF_UNSIGNED_LONG"]=" 4" -D["PACK_BITFIELDS_REVERSED"]=" 1" - for (key in D) D_is_set[key] = 1 - FS = "" -} -/^[\t ]*#[\t ]*(define|undef)[\t ]+[_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ][_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789]*([\t (]|$)/ { - line = $ 0 - split(line, arg, " ") - if (arg[1] == "#") { - defundef = arg[2] - mac1 = arg[3] - } else { - defundef = substr(arg[1], 2) - mac1 = arg[2] - } - split(mac1, mac2, "(") #) - macro = mac2[1] - prefix = substr(line, 1, index(line, defundef) - 1) - if (D_is_set[macro]) { - # Preserve the white space surrounding the "#". - print prefix "define", macro P[macro] D[macro] - next - } else { - # Replace #undef with comments. This is necessary, for example, - # in the case of _POSIX_SOURCE, which is predefined and required - # on some systems where configure will not decide to define it. - if (defundef == "undef") { - print "/*", prefix defundef, macro, "*/" - next - } - } -} -{ print } -_ACAWK - as_fn_error $? "could not setup config headers machinery" "$LINENO" 5 -fi # test -n "$CONFIG_HEADERS" - - -eval set X " :F $CONFIG_FILES :H $CONFIG_HEADERS " -shift -for ac_tag -do - case $ac_tag in - :[FHLC]) ac_mode=$ac_tag; continue;; - esac - case $ac_mode$ac_tag in - :[FHL]*:*);; - :L* | :C*:*) as_fn_error $? "invalid tag \`$ac_tag'" "$LINENO" 5 ;; - :[FH]-) ac_tag=-:-;; - :[FH]*) ac_tag=$ac_tag:$ac_tag.in;; - esac - ac_save_IFS=$IFS - IFS=: - set x $ac_tag - IFS=$ac_save_IFS - shift - ac_file=$1 - shift - - case $ac_mode in - :L) ac_source=$1;; - :[FH]) - ac_file_inputs= - for ac_f - do - case $ac_f in - -) ac_f="$tmp/stdin";; - *) # Look for the file first in the build tree, then in the source tree - # (if the path is not absolute). The absolute path cannot be DOS-style, - # because $ac_f cannot contain `:'. - test -f "$ac_f" || - case $ac_f in - [\\/$]*) false;; - *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";; - esac || - as_fn_error 1 "cannot find input file: \`$ac_f'" "$LINENO" 5 ;; - esac - case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac - as_fn_append ac_file_inputs " '$ac_f'" - done - - # Let's still pretend it is `configure' which instantiates (i.e., don't - # use $as_me), people would be surprised to read: - # /* config.h. Generated by config.status. */ - configure_input='Generated from '` - $as_echo "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g' - `' by configure.' - if test x"$ac_file" != x-; then - configure_input="$ac_file. $configure_input" - { $as_echo "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5 -$as_echo "$as_me: creating $ac_file" >&6;} - fi - # Neutralize special characters interpreted by sed in replacement strings. - case $configure_input in #( - *\&* | *\|* | *\\* ) - ac_sed_conf_input=`$as_echo "$configure_input" | - sed 's/[\\\\&|]/\\\\&/g'`;; #( - *) ac_sed_conf_input=$configure_input;; - esac - - case $ac_tag in - *:-:* | *:-) cat >"$tmp/stdin" \ - || as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;; - esac - ;; - esac - - ac_dir=`$as_dirname -- "$ac_file" || -$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$ac_file" : 'X\(//\)[^/]' \| \ - X"$ac_file" : 'X\(//\)$' \| \ - X"$ac_file" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$ac_file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - as_dir="$ac_dir"; as_fn_mkdir_p - ac_builddir=. - -case "$ac_dir" in -.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; -*) - ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'` - # A ".." for each directory in $ac_dir_suffix. - ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'` - case $ac_top_builddir_sub in - "") ac_top_builddir_sub=. ac_top_build_prefix= ;; - *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; - esac ;; -esac -ac_abs_top_builddir=$ac_pwd -ac_abs_builddir=$ac_pwd$ac_dir_suffix -# for backward compatibility: -ac_top_builddir=$ac_top_build_prefix - -case $srcdir in - .) # We are building in place. - ac_srcdir=. - ac_top_srcdir=$ac_top_builddir_sub - ac_abs_top_srcdir=$ac_pwd ;; - [\\/]* | ?:[\\/]* ) # Absolute name. - ac_srcdir=$srcdir$ac_dir_suffix; - ac_top_srcdir=$srcdir - ac_abs_top_srcdir=$srcdir ;; - *) # Relative name. - ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix - ac_top_srcdir=$ac_top_build_prefix$srcdir - ac_abs_top_srcdir=$ac_pwd/$srcdir ;; -esac -ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix - - - case $ac_mode in - :F) - # - # CONFIG_FILE - # - - case $INSTALL in - [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;; - *) ac_INSTALL=$ac_top_build_prefix$INSTALL ;; - esac -# If the template does not know about datarootdir, expand it. -# FIXME: This hack should be removed a few years after 2.60. -ac_datarootdir_hack=; ac_datarootdir_seen= -ac_sed_dataroot=' -/datarootdir/ { - p - q -} -/@datadir@/p -/@docdir@/p -/@infodir@/p -/@localedir@/p -/@mandir@/p' -case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in -*datarootdir*) ac_datarootdir_seen=yes;; -*@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*) - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5 -$as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;} - ac_datarootdir_hack=' - s&@datadir@&${datarootdir}&g - s&@docdir@&${datarootdir}/doc/${PACKAGE}&g - s&@infodir@&${datarootdir}/info&g - s&@localedir@&${datarootdir}/locale&g - s&@mandir@&${datarootdir}/man&g - s&\${datarootdir}&${prefix}/share&g' ;; -esac -ac_sed_extra="/^[ ]*VPATH[ ]*=[ ]*/{ -h -s/// -s/^/:/ -s/[ ]*$/:/ -s/:\$(srcdir):/:/g -s/:\${srcdir}:/:/g -s/:@srcdir@:/:/g -s/^:*// -s/:*$// -x -s/\(=[ ]*\).*/\1/ -G -s/\n// -s/^[^=]*=[ ]*$// -} - -:t -/@[a-zA-Z_][a-zA-Z_0-9]*@/!b -s|@configure_input@|$ac_sed_conf_input|;t t -s&@top_builddir@&$ac_top_builddir_sub&;t t -s&@top_build_prefix@&$ac_top_build_prefix&;t t -s&@srcdir@&$ac_srcdir&;t t -s&@abs_srcdir@&$ac_abs_srcdir&;t t -s&@top_srcdir@&$ac_top_srcdir&;t t -s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t -s&@builddir@&$ac_builddir&;t t -s&@abs_builddir@&$ac_abs_builddir&;t t -s&@abs_top_builddir@&$ac_abs_top_builddir&;t t -s&@INSTALL@&$ac_INSTALL&;t t -$ac_datarootdir_hack -" -eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$tmp/subs.awk" >$tmp/out \ - || as_fn_error $? "could not create $ac_file" "$LINENO" 5 - -test -z "$ac_datarootdir_hack$ac_datarootdir_seen" && - { ac_out=`sed -n '/\${datarootdir}/p' "$tmp/out"`; test -n "$ac_out"; } && - { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' "$tmp/out"`; test -z "$ac_out"; } && - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir' -which seems to be undefined. Please make sure it is defined" >&5 -$as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir' -which seems to be undefined. Please make sure it is defined" >&2;} - - rm -f "$tmp/stdin" - case $ac_file in - -) cat "$tmp/out" && rm -f "$tmp/out";; - *) rm -f "$ac_file" && mv "$tmp/out" "$ac_file";; - esac \ - || as_fn_error $? "could not create $ac_file" "$LINENO" 5 - ;; - :H) - # - # CONFIG_HEADER - # - if test x"$ac_file" != x-; then - { - $as_echo "/* $configure_input */" \ - && eval '$AWK -f "$tmp/defines.awk"' "$ac_file_inputs" - } >"$tmp/config.h" \ - || as_fn_error $? "could not create $ac_file" "$LINENO" 5 - if diff "$ac_file" "$tmp/config.h" >/dev/null 2>&1; then - { $as_echo "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5 -$as_echo "$as_me: $ac_file is unchanged" >&6;} - else - rm -f "$ac_file" - mv "$tmp/config.h" "$ac_file" \ - || as_fn_error $? "could not create $ac_file" "$LINENO" 5 - fi - else - $as_echo "/* $configure_input */" \ - && eval '$AWK -f "$tmp/defines.awk"' "$ac_file_inputs" \ - || as_fn_error $? "could not create -" "$LINENO" 5 - fi - ;; - - - esac - -done # for ac_tag - - -as_fn_exit 0 diff --git a/release/src/router/shared/tomato_version.h b/release/src/router/shared/tomato_version.h index 27d4685865..5373cd38c6 100644 --- a/release/src/router/shared/tomato_version.h +++ b/release/src/router/shared/tomato_version.h @@ -3,7 +3,7 @@ #define TOMATO_MAJOR "1" #define TOMATO_MINOR "28" #define TOMATO_BUILD "9013" -#define TOMATO_BUILDTIME "Sun, 09 Jun 2013 12:46:59 +0200" +#define TOMATO_BUILDTIME "Sun, 09 Jun 2013 17:47:15 +0200" #define TOMATO_VERSION "1.28.9013 MIPSR2-RAF-V1.1t K26 USB VLAN-NGINX" #define TOMATO_SHORTVER "1.28" #endif diff --git a/release/src/router/snmp/config.status b/release/src/router/snmp/config.status deleted file mode 100755 index 8cfde6fd0e..0000000000 --- a/release/src/router/snmp/config.status +++ /dev/null @@ -1,1050 +0,0 @@ -#! /bin/sh -# Generated automatically by configure. -# Run this file to recreate the current configuration. -# This directory was configured as follows, -# on host vicente-P5K-E: -# -# ./configure --host=mipsel-linux --build=x86_64-linux-gnu --prefix=/usr --with-endianness=little --enable-mini-agent --disable-debugging --disable-privacy --without-opaque-special-types --with-persistent-directory=/tmp/snmp-persist --with-default-snmp-version=3 --with-sys-contact=root --with-sys-location=Unknown --with-logfile=/dev/null --with-out-transports=UDPIPv6,TCPIPv6,AAL5PVC,IPX,TCP,Unix --enable-shared=no --enable-static --with-gnu-ld --enable-internal-md5 --with-copy-persistent-files=no --without-openssl -sysconfdir=/tmp --with-mib-modules=mibII,host,mibII/ip,mibII/tcp,mibII/udp,mibII/icmp,mibII/var_route,mibII/kernel_linux,qos,ucd_snmp --with-out-mib-modules=snmpv3mibs,agent_mips,agentx,notification,utilities,target --disable-ipv6 --with-defaults --without-efence --without-rsaref --without-kmem-usage --without-rpm --without-dmalloc -# -# Compiler output produced by configure, useful for debugging -# configure, is in ./config.log if it exists. - -ac_cs_usage="Usage: ./config.status [--recheck] [--version] [--help]" -for ac_option -do - case "$ac_option" in - -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) - echo "running ${CONFIG_SHELL-/bin/sh} ./configure --host=mipsel-linux --build=x86_64-linux-gnu --prefix=/usr --with-endianness=little --enable-mini-agent --disable-debugging --disable-privacy --without-opaque-special-types --with-persistent-directory=/tmp/snmp-persist --with-default-snmp-version=3 --with-sys-contact=root --with-sys-location=Unknown --with-logfile=/dev/null --with-out-transports=UDPIPv6,TCPIPv6,AAL5PVC,IPX,TCP,Unix --enable-shared=no --enable-static --with-gnu-ld --enable-internal-md5 --with-copy-persistent-files=no --without-openssl -sysconfdir=/tmp --with-mib-modules=mibII,host,mibII/ip,mibII/tcp,mibII/udp,mibII/icmp,mibII/var_route,mibII/kernel_linux,qos,ucd_snmp --with-out-mib-modules=snmpv3mibs,agent_mips,agentx,notification,utilities,target --disable-ipv6 --with-defaults --without-efence --without-rsaref --without-kmem-usage --without-rpm --without-dmalloc --no-create --no-recursion" - exec ${CONFIG_SHELL-/bin/sh} ./configure --host=mipsel-linux --build=x86_64-linux-gnu --prefix=/usr --with-endianness=little --enable-mini-agent --disable-debugging --disable-privacy --without-opaque-special-types --with-persistent-directory=/tmp/snmp-persist --with-default-snmp-version=3 --with-sys-contact=root --with-sys-location=Unknown --with-logfile=/dev/null --with-out-transports=UDPIPv6,TCPIPv6,AAL5PVC,IPX,TCP,Unix --enable-shared=no --enable-static --with-gnu-ld --enable-internal-md5 --with-copy-persistent-files=no --without-openssl -sysconfdir=/tmp --with-mib-modules=mibII,host,mibII/ip,mibII/tcp,mibII/udp,mibII/icmp,mibII/var_route,mibII/kernel_linux,qos,ucd_snmp --with-out-mib-modules=snmpv3mibs,agent_mips,agentx,notification,utilities,target --disable-ipv6 --with-defaults --without-efence --without-rsaref --without-kmem-usage --without-rpm --without-dmalloc --no-create --no-recursion ;; - -version | --version | --versio | --versi | --vers | --ver | --ve | --v) - echo "./config.status generated by autoconf version 2.13" - exit 0 ;; - -help | --help | --hel | --he | --h) - echo "$ac_cs_usage"; exit 0 ;; - *) echo "$ac_cs_usage"; exit 1 ;; - esac -done - -ac_given_srcdir=. -ac_given_INSTALL="/usr/bin/install -c" - -trap 'rm -fr - Makefile - snmplib/Makefile - apps/Makefile - apps/snmpnetstat/Makefile - agent/Makefile - agent/helpers/Makefile - agent/mibgroup/Makefile - local/Makefile - testing/Makefile - man/Makefile - mibs/Makefile - net-snmp-config - include/net-snmp/net-snmp-config.h conftest*; exit 1' 1 2 15 - -# Protect against being on the right side of a sed subst in config.status. -sed 's/%@/@@/; s/@%/@@/; s/%g$/@g/; /@g$/s/[\\&%]/\\&/g; - s/@@/%@/; s/@@/@%/; s/@g$/%g/' > conftest.subs <<\CEOF -/^[ ]*VPATH[ ]*=[^:]*$/d - -s%@SHELL@%/bin/sh%g -s%@CFLAGS@%-Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -Dlinux%g -s%@CPPFLAGS@%%g -s%@CXXFLAGS@%%g -s%@FFLAGS@%%g -s%@DEFS@%-DHAVE_CONFIG_H%g -s%@LDFLAGS@%%g -s%@LIBS@%-lm %g -s%@exec_prefix@%/usr%g -s%@prefix@%/usr%g -s%@program_transform_name@%s,x,x,%g -s%@bindir@%${exec_prefix}/bin%g -s%@sbindir@%${exec_prefix}/sbin%g -s%@libexecdir@%${exec_prefix}/libexec%g -s%@datadir@%${prefix}/share%g -s%@sysconfdir@%/tmp%g -s%@sharedstatedir@%${prefix}/com%g -s%@localstatedir@%${prefix}/var%g -s%@libdir@%${exec_prefix}/lib%g -s%@includedir@%${prefix}/include%g -s%@oldincludedir@%/usr/include%g -s%@infodir@%${prefix}/info%g -s%@mandir@%${prefix}/man%g -s%@CONFIGURE_OPTIONS@%" --host=mipsel-linux --build=x86_64-linux-gnu --prefix=/usr --with-endianness=little --enable-mini-agent --disable-debugging --disable-privacy --without-opaque-special-types --with-persistent-directory=/tmp/snmp-persist --with-default-snmp-version=3 --with-sys-contact=root --with-sys-location=Unknown --with-logfile=/dev/null --with-out-transports=UDPIPv6,TCPIPv6,AAL5PVC,IPX,TCP,Unix --enable-shared=no --enable-static --with-gnu-ld --enable-internal-md5 --with-copy-persistent-files=no --without-openssl -sysconfdir=/tmp --with-mib-modules=mibII,host,mibII/ip,mibII/tcp,mibII/udp,mibII/icmp,mibII/var_route,mibII/kernel_linux,qos,ucd_snmp --with-out-mib-modules=snmpv3mibs,agent_mips,agentx,notification,utilities,target --disable-ipv6 --with-defaults --without-efence --without-rsaref --without-kmem-usage --without-rpm --without-dmalloc"%g -s%@LIBTOOLFLAGS@%%g -s%@HAVE_DMALLOC_H@%%g -s%@WRAPLIBS@%%g -s%@installucdheaders@%%g -s%@installucdlibs@%%g -s%@CC@%mipsel-uclibc-gcc%g -s%@CPP@%mipsel-uclibc-gcc -E%g -s%@EXEEXT@%%g -s%@host@%mipsel-unknown-linux-gnu%g -s%@host_alias@%mipsel-unknown-linux-gnu%g -s%@host_cpu@%mipsel%g -s%@host_vendor@%unknown%g -s%@host_os@%linux-gnu%g -s%@build@%x86_64-pc-linux-gnu%g -s%@build_alias@%x86_64-pc-linux-gnu%g -s%@build_cpu@%x86_64%g -s%@build_vendor@%pc%g -s%@build_os@%linux-gnu%g -s%@LN_S@%ln -s%g -s%@OBJEXT@%o%g -s%@ECHO@%echo%g -s%@RANLIB@%mipsel-uclibc-ranlib%g -s%@STRIP@%mipsel-uclibc-strip -R .note -R .comment%g -s%@DLLTOOL@%dlltool%g -s%@AS@%mipsel-uclibc-as%g -s%@OBJDUMP@%objdump%g -s%@LIBTOOL@%$(SHELL) $(top_builddir)/libtool%g -s%@INSTALL_PROGRAM@%${INSTALL}%g -s%@INSTALL_SCRIPT@%${INSTALL_PROGRAM}%g -s%@INSTALL_DATA@%${INSTALL} -m 644%g -s%@SET_MAKE@%%g -s%@PSPROG@%/bin/ps%g -s%@PERLPROG@%/usr/bin/perl%g -s%@WHOAMI@%whoami%g -s%@SED@%/bin/sed%g -s%@AUTOCONF@%:%g -s%@AUTOHEADER@%:%g -s%@UNAMEPROG@%/bin/uname%g -s%@VERSION@%5.0.9%g -s%@RELEASEVERSION@%5:0:0.9%g -s%@DEVFLAGS@%%g -s%@target@%mipsel-unknown-linux-gnu%g -s%@target_alias@%mipsel-unknown-linux-gnu%g -s%@target_cpu@%mipsel%g -s%@target_vendor@%unknown%g -s%@target_os@%linux-gnu%g -s%@CCPATH@%/opt/brcm/hndtools-mipsel-uclibc/bin/mipsel-uclibc-gcc%g -s%@EXTRACPPFLAGS@%-x c%g -s%@SNMPCONFPATH@%/tmp/snmp%g -s%@transport_hdr_list@%snmpUDPDomain.h snmpCallbackDomain.h %g -s%@transport_src_list@%snmpUDPDomain.c snmpCallbackDomain.c %g -s%@transport_obj_list@% snmpUDPDomain.o snmpCallbackDomain.o %g -s%@transport_lobj_list@% snmpUDPDomain.lo snmpCallbackDomain.lo %g -s%@security_src_list@% snmpusm.c%g -s%@security_obj_list@% snmpusm.o%g -s%@security_lobj_list@% snmpusm.lo%g -s%@security_hdr_list@% snmpusm.h%g -s%@MODULE_LIST@% mibII/snmp_mib mibII/system_mib mibII/sysORTable mibII/vacm_vars mibII/ip mibII/tcp mibII/udp mibII/icmp mibII/var_route mibII/kernel_linux qos util_funcs mibII/vacm_context host/hr_system host/hr_storage host/hr_device host/hr_other host/hr_proc host/hr_network host/hr_print host/hr_disk host/hr_partition host/hr_filesys host/hr_swrun host/hr_swinst mibII/interfaces mibII/ipAddr mibII/at mibII/route_write mibII/tcpTable mibII/udpTable qos_access qos_checkfns ucd-snmp/memory ucd-snmp/vmstat ucd-snmp/proc ucd-snmp/versioninfo ucd-snmp/pass ucd-snmp/pass_persist ucd-snmp/disk ucd-snmp/loadave ucd-snmp/extensible ucd-snmp/errormib ucd-snmp/file ucd-snmp/dlmod ucd-snmp/proxy qos_checkfns_local%g -s%@module_list_c@% mibII/snmp_mib.c mibII/system_mib.c mibII/sysORTable.c mibII/vacm_vars.c mibII/ip.c mibII/tcp.c mibII/udp.c mibII/icmp.c mibII/var_route.c mibII/kernel_linux.c qos.c util_funcs.c mibII/vacm_context.c host/hr_system.c host/hr_storage.c host/hr_device.c host/hr_other.c host/hr_proc.c host/hr_network.c host/hr_print.c host/hr_disk.c host/hr_partition.c host/hr_filesys.c host/hr_swrun.c host/hr_swinst.c mibII/interfaces.c mibII/ipAddr.c mibII/at.c mibII/route_write.c mibII/tcpTable.c mibII/udpTable.c qos_access.c qos_checkfns.c ucd-snmp/memory.c ucd-snmp/vmstat.c ucd-snmp/proc.c ucd-snmp/versioninfo.c ucd-snmp/pass.c ucd-snmp/pass_persist.c ucd-snmp/disk.c ucd-snmp/loadave.c ucd-snmp/extensible.c ucd-snmp/errormib.c ucd-snmp/file.c ucd-snmp/dlmod.c ucd-snmp/proxy.c qos_checkfns_local.c %g -s%@module_list_h@% mibgroup/mibII/snmp_mib.h mibgroup/mibII/system_mib.h mibgroup/mibII/sysORTable.h mibgroup/mibII/vacm_vars.h mibgroup/host.h mibgroup/mibII/ip.h mibgroup/mibII/tcp.h mibgroup/mibII/udp.h mibgroup/mibII/icmp.h mibgroup/mibII/var_route.h mibgroup/mibII/kernel_linux.h mibgroup/qos.h mibgroup/ucd_snmp.h mibgroup/util_funcs.h mibgroup/mibII/vacm_context.h mibgroup/host/hr_system.h mibgroup/host/hr_storage.h mibgroup/host/hr_device.h mibgroup/host/hr_other.h mibgroup/host/hr_proc.h mibgroup/host/hr_network.h mibgroup/host/hr_print.h mibgroup/host/hr_disk.h mibgroup/host/hr_partition.h mibgroup/host/hr_filesys.h mibgroup/host/hr_swrun.h mibgroup/host/hr_swinst.h mibgroup/mibII/interfaces.h mibgroup/mibII/ipAddr.h mibgroup/mibII/at.h mibgroup/mibII/route_write.h mibgroup/mibII/tcpTable.h mibgroup/mibII/udpTable.h mibgroup/qos_access.h mibgroup/qos_checkfns.h mibgroup/ucd-snmp/memory.h mibgroup/ucd-snmp/vmstat.h mibgroup/ucd-snmp/proc.h mibgroup/ucd-snmp/versioninfo.h mibgroup/ucd-snmp/pass.h mibgroup/ucd-snmp/pass_persist.h mibgroup/ucd-snmp/disk.h mibgroup/ucd-snmp/loadave.h mibgroup/ucd-snmp/extensible.h mibgroup/ucd-snmp/errormib.h mibgroup/ucd-snmp/file.h mibgroup/ucd-snmp/dlmod.h mibgroup/ucd-snmp/proxy.h mibgroup/qos_checkfns_local.h%g -s%@module_list_o@% mibII/snmp_mib.o mibII/system_mib.o mibII/sysORTable.o mibII/vacm_vars.o mibII/ip.o mibII/tcp.o mibII/udp.o mibII/icmp.o mibII/var_route.o mibII/kernel_linux.o qos.o util_funcs.o mibII/vacm_context.o host/hr_system.o host/hr_storage.o host/hr_device.o host/hr_other.o host/hr_proc.o host/hr_network.o host/hr_print.o host/hr_disk.o host/hr_partition.o host/hr_filesys.o host/hr_swrun.o host/hr_swinst.o mibII/interfaces.o mibII/ipAddr.o mibII/at.o mibII/route_write.o mibII/tcpTable.o mibII/udpTable.o qos_access.o qos_checkfns.o ucd-snmp/memory.o ucd-snmp/vmstat.o ucd-snmp/proc.o ucd-snmp/versioninfo.o ucd-snmp/pass.o ucd-snmp/pass_persist.o ucd-snmp/disk.o ucd-snmp/loadave.o ucd-snmp/extensible.o ucd-snmp/errormib.o ucd-snmp/file.o ucd-snmp/dlmod.o ucd-snmp/proxy.o qos_checkfns_local.o %g -s%@module_list_lo@% mibII/snmp_mib.lo mibII/system_mib.lo mibII/sysORTable.lo mibII/vacm_vars.lo mibII/ip.lo mibII/tcp.lo mibII/udp.lo mibII/icmp.lo mibII/var_route.lo mibII/kernel_linux.lo qos.lo util_funcs.lo mibII/vacm_context.lo host/hr_system.lo host/hr_storage.lo host/hr_device.lo host/hr_other.lo host/hr_proc.lo host/hr_network.lo host/hr_print.lo host/hr_disk.lo host/hr_partition.lo host/hr_filesys.lo host/hr_swrun.lo host/hr_swinst.lo mibII/interfaces.lo mibII/ipAddr.lo mibII/at.lo mibII/route_write.lo mibII/tcpTable.lo mibII/udpTable.lo qos_access.lo qos_checkfns.lo ucd-snmp/memory.lo ucd-snmp/vmstat.lo ucd-snmp/proc.lo ucd-snmp/versioninfo.lo ucd-snmp/pass.lo ucd-snmp/pass_persist.lo ucd-snmp/disk.lo ucd-snmp/loadave.lo ucd-snmp/extensible.lo ucd-snmp/errormib.lo ucd-snmp/file.lo ucd-snmp/dlmod.lo ucd-snmp/proxy.lo qos_checkfns_local.lo %g -s%@mibgroup_list_o@% mibgroup/mibII/snmp_mib.o mibgroup/mibII/system_mib.o mibgroup/mibII/sysORTable.o mibgroup/mibII/vacm_vars.o mibgroup/mibII/ip.o mibgroup/mibII/tcp.o mibgroup/mibII/udp.o mibgroup/mibII/icmp.o mibgroup/mibII/var_route.o mibgroup/mibII/kernel_linux.o mibgroup/qos.o mibgroup/util_funcs.o mibgroup/mibII/vacm_context.o mibgroup/host/hr_system.o mibgroup/host/hr_storage.o mibgroup/host/hr_device.o mibgroup/host/hr_other.o mibgroup/host/hr_proc.o mibgroup/host/hr_network.o mibgroup/host/hr_print.o mibgroup/host/hr_disk.o mibgroup/host/hr_partition.o mibgroup/host/hr_filesys.o mibgroup/host/hr_swrun.o mibgroup/host/hr_swinst.o mibgroup/mibII/interfaces.o mibgroup/mibII/ipAddr.o mibgroup/mibII/at.o mibgroup/mibII/route_write.o mibgroup/mibII/tcpTable.o mibgroup/mibII/udpTable.o mibgroup/qos_access.o mibgroup/qos_checkfns.o mibgroup/ucd-snmp/memory.o mibgroup/ucd-snmp/vmstat.o mibgroup/ucd-snmp/proc.o mibgroup/ucd-snmp/versioninfo.o mibgroup/ucd-snmp/pass.o mibgroup/ucd-snmp/pass_persist.o mibgroup/ucd-snmp/disk.o mibgroup/ucd-snmp/loadave.o mibgroup/ucd-snmp/extensible.o mibgroup/ucd-snmp/errormib.o mibgroup/ucd-snmp/file.o mibgroup/ucd-snmp/dlmod.o mibgroup/ucd-snmp/proxy.o mibgroup/qos_checkfns_local.o %g -s%@mibgroup_list_lo@% mibgroup/mibII/snmp_mib.lo mibgroup/mibII/system_mib.lo mibgroup/mibII/sysORTable.lo mibgroup/mibII/vacm_vars.lo mibgroup/mibII/ip.lo mibgroup/mibII/tcp.lo mibgroup/mibII/udp.lo mibgroup/mibII/icmp.lo mibgroup/mibII/var_route.lo mibgroup/mibII/kernel_linux.lo mibgroup/qos.lo mibgroup/util_funcs.lo mibgroup/mibII/vacm_context.lo mibgroup/host/hr_system.lo mibgroup/host/hr_storage.lo mibgroup/host/hr_device.lo mibgroup/host/hr_other.lo mibgroup/host/hr_proc.lo mibgroup/host/hr_network.lo mibgroup/host/hr_print.lo mibgroup/host/hr_disk.lo mibgroup/host/hr_partition.lo mibgroup/host/hr_filesys.lo mibgroup/host/hr_swrun.lo mibgroup/host/hr_swinst.lo mibgroup/mibII/interfaces.lo mibgroup/mibII/ipAddr.lo mibgroup/mibII/at.lo mibgroup/mibII/route_write.lo mibgroup/mibII/tcpTable.lo mibgroup/mibII/udpTable.lo mibgroup/qos_access.lo mibgroup/qos_checkfns.lo mibgroup/ucd-snmp/memory.lo mibgroup/ucd-snmp/vmstat.lo mibgroup/ucd-snmp/proc.lo mibgroup/ucd-snmp/versioninfo.lo mibgroup/ucd-snmp/pass.lo mibgroup/ucd-snmp/pass_persist.lo mibgroup/ucd-snmp/disk.lo mibgroup/ucd-snmp/loadave.lo mibgroup/ucd-snmp/extensible.lo mibgroup/ucd-snmp/errormib.lo mibgroup/ucd-snmp/file.lo mibgroup/ucd-snmp/dlmod.lo mibgroup/ucd-snmp/proxy.lo mibgroup/qos_checkfns_local.lo %g -s%@module_list@% mibII/snmp_mib mibII/system_mib mibII/sysORTable mibII/vacm_vars host mibII/ip mibII/tcp mibII/udp mibII/icmp mibII/var_route mibII/kernel_linux qos ucd_snmp util_funcs mibII/vacm_context host/hr_system host/hr_storage host/hr_device host/hr_other host/hr_proc host/hr_network host/hr_print host/hr_disk host/hr_partition host/hr_filesys host/hr_swrun host/hr_swinst mibII/interfaces mibII/ipAddr mibII/at mibII/route_write mibII/tcpTable mibII/udpTable qos_access qos_checkfns ucd-snmp/memory ucd-snmp/vmstat ucd-snmp/proc ucd-snmp/versioninfo ucd-snmp/pass ucd-snmp/pass_persist ucd-snmp/disk ucd-snmp/loadave ucd-snmp/extensible ucd-snmp/errormib ucd-snmp/file ucd-snmp/dlmod ucd-snmp/proxy qos_checkfns_local%g -s%@default_mibs_install@% SNMP-VIEW-BASED-ACM-MIB.txt SNMP-COMMUNITY-MIB.txt HOST-RESOURCES-MIB.txt HOST-RESOURCES-TYPES.txt UCD-SNMP-MIB.txt UCD-DEMO-MIB.txt UCD-DLMOD-MIB.txt%g -s%@PERLTARGS@%%g -s%@PERLINSTALLTARGS@%%g -s%@PERLARGS@%%g -s%@EMBEDPERLINSTALL@%%g -s%@LPSTAT_PATH@%/usr/bin/lpstat%g -s%@PSCMD@%/bin/ps -e%g -s%@ALLOCA@%%g -s%@LIBOBJS@% memcmp.o%g -s%@AGENTLIBS@%-ldl -lm %g -s%@OTHERAGENTLIBOBJS@%%g -s%@OTHERAGENTLIBLOBJS@%%g -s%@PERSISTENT_DIRECTORY@%/tmp/snmp-persist%g -s%@UCDPERSISTENT_DIRECTORY@%/var/ucd-snmp%g -s%@COPY_PERSISTENT_FILES@%no%g -s%@DLLIBS@%%g - -CEOF - -# Split the substitutions into bite-sized pieces for seds with -# small command number limits, like on Digital OSF/1 and HP-UX. -ac_max_sed_cmds=90 # Maximum number of lines to put in a sed script. -ac_file=1 # Number of current file. -ac_beg=1 # First line for current file. -ac_end=$ac_max_sed_cmds # Line after last line for current file. -ac_more_lines=: -ac_sed_cmds="" -while $ac_more_lines; do - if test $ac_beg -gt 1; then - sed "1,${ac_beg}d; ${ac_end}q" conftest.subs > conftest.s$ac_file - else - sed "${ac_end}q" conftest.subs > conftest.s$ac_file - fi - if test ! -s conftest.s$ac_file; then - ac_more_lines=false - rm -f conftest.s$ac_file - else - if test -z "$ac_sed_cmds"; then - ac_sed_cmds="sed -f conftest.s$ac_file" - else - ac_sed_cmds="$ac_sed_cmds | sed -f conftest.s$ac_file" - fi - ac_file=`expr $ac_file + 1` - ac_beg=$ac_end - ac_end=`expr $ac_end + $ac_max_sed_cmds` - fi -done -if test -z "$ac_sed_cmds"; then - ac_sed_cmds=cat -fi - -CONFIG_FILES=${CONFIG_FILES-"Makefile:Makefile.top:Makefile.in:Makefile.rules - snmplib/Makefile:Makefile.top:snmplib/Makefile.in:Makefile.rules:snmplib/Makefile.depend - apps/Makefile:Makefile.top:apps/Makefile.in:Makefile.rules:apps/Makefile.depend - apps/snmpnetstat/Makefile:Makefile.top:apps/snmpnetstat/Makefile.in:Makefile.rules:apps/snmpnetstat/Makefile.depend - agent/Makefile:Makefile.top:agent/Makefile.in:Makefile.rules:agent/Makefile.depend - agent/helpers/Makefile:Makefile.top:agent/helpers/Makefile.in:Makefile.rules:agent/helpers/Makefile.depend - agent/mibgroup/Makefile:Makefile.top:agent/mibgroup/Makefile.in:Makefile.rules:agent/mibgroup/Makefile.depend - local/Makefile:Makefile.top:local/Makefile.in:Makefile.rules - testing/Makefile:Makefile.top:testing/Makefile.in - man/Makefile:Makefile.top:man/Makefile.in:Makefile.rules - mibs/Makefile:Makefile.top:mibs/Makefile.in:Makefile.rules - net-snmp-config:net-snmp-config.in -"} -for ac_file in .. $CONFIG_FILES; do if test "x$ac_file" != x..; then - # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in". - case "$ac_file" in - *:*) ac_file_in=`echo "$ac_file"|sed 's%[^:]*:%%'` - ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;; - *) ac_file_in="${ac_file}.in" ;; - esac - - # Adjust a relative srcdir, top_srcdir, and INSTALL for subdirectories. - - # Remove last slash and all that follows it. Not all systems have dirname. - ac_dir=`echo $ac_file|sed 's%/[^/][^/]*$%%'` - if test "$ac_dir" != "$ac_file" && test "$ac_dir" != .; then - # The file is in a subdirectory. - test ! -d "$ac_dir" && mkdir "$ac_dir" - ac_dir_suffix="/`echo $ac_dir|sed 's%^\./%%'`" - # A "../" for each directory in $ac_dir_suffix. - ac_dots=`echo $ac_dir_suffix|sed 's%/[^/]*%../%g'` - else - ac_dir_suffix= ac_dots= - fi - - case "$ac_given_srcdir" in - .) srcdir=. - if test -z "$ac_dots"; then top_srcdir=. - else top_srcdir=`echo $ac_dots|sed 's%/$%%'`; fi ;; - /*) srcdir="$ac_given_srcdir$ac_dir_suffix"; top_srcdir="$ac_given_srcdir" ;; - *) # Relative path. - srcdir="$ac_dots$ac_given_srcdir$ac_dir_suffix" - top_srcdir="$ac_dots$ac_given_srcdir" ;; - esac - - case "$ac_given_INSTALL" in - [/$]*) INSTALL="$ac_given_INSTALL" ;; - *) INSTALL="$ac_dots$ac_given_INSTALL" ;; - esac - - echo creating "$ac_file" - rm -f "$ac_file" - configure_input="Generated automatically from `echo $ac_file_in|sed 's%.*/%%'` by configure." - case "$ac_file" in - *Makefile*) ac_comsub="1i\\ -# $configure_input" ;; - *) ac_comsub= ;; - esac - - ac_file_inputs=`echo $ac_file_in|sed -e "s%^%$ac_given_srcdir/%" -e "s%:% $ac_given_srcdir/%g"` - sed -e "$ac_comsub -s%@configure_input@%$configure_input%g -s%@srcdir@%$srcdir%g -s%@top_srcdir@%$top_srcdir%g -s%@INSTALL@%$INSTALL%g -" $ac_file_inputs | (eval "$ac_sed_cmds") > $ac_file -fi; done -rm -f conftest.s* - -# These sed commands are passed to sed as "A NAME B NAME C VALUE D", where -# NAME is the cpp macro being defined and VALUE is the value it is being given. -# -# ac_d sets the value in "#define NAME VALUE" lines. -ac_dA='s%^\([ ]*\)#\([ ]*define[ ][ ]*\)' -ac_dB='\([ ][ ]*\)[^ ]*%\1#\2' -ac_dC='\3' -ac_dD='%g' -# ac_u turns "#undef NAME" with trailing blanks into "#define NAME VALUE". -ac_uA='s%^\([ ]*\)#\([ ]*\)undef\([ ][ ]*\)' -ac_uB='\([ ]\)%\1#\2define\3' -ac_uC=' ' -ac_uD='\4%g' -# ac_e turns "#undef NAME" without trailing blanks into "#define NAME VALUE". -ac_eA='s%^\([ ]*\)#\([ ]*\)undef\([ ][ ]*\)' -ac_eB='$%\1#\2define\3' -ac_eC=' ' -ac_eD='%g' - -if test "${CONFIG_HEADERS+set}" != set; then - CONFIG_HEADERS="include/net-snmp/net-snmp-config.h" -fi -for ac_file in .. $CONFIG_HEADERS; do if test "x$ac_file" != x..; then - # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in". - case "$ac_file" in - *:*) ac_file_in=`echo "$ac_file"|sed 's%[^:]*:%%'` - ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;; - *) ac_file_in="${ac_file}.in" ;; - esac - - echo creating $ac_file - - rm -f conftest.frag conftest.in conftest.out - ac_file_inputs=`echo $ac_file_in|sed -e "s%^%$ac_given_srcdir/%" -e "s%:% $ac_given_srcdir/%g"` - cat $ac_file_inputs > conftest.in - - cat > conftest.frag < conftest.out - rm -f conftest.in - mv conftest.out conftest.in - - cat > conftest.frag < conftest.out - rm -f conftest.in - mv conftest.out conftest.in - - cat > conftest.frag < conftest.out - rm -f conftest.in - mv conftest.out conftest.in - - cat > conftest.frag < conftest.out - rm -f conftest.in - mv conftest.out conftest.in - - cat > conftest.frag < conftest.out - rm -f conftest.in - mv conftest.out conftest.in - - cat > conftest.frag < conftest.out - rm -f conftest.in - mv conftest.out conftest.in - - cat > conftest.frag < conftest.out - rm -f conftest.in - mv conftest.out conftest.in - - cat > conftest.frag < conftest.out - rm -f conftest.in - mv conftest.out conftest.in - - cat > conftest.frag < conftest.out - rm -f conftest.in - mv conftest.out conftest.in - - cat > conftest.frag < conftest.out - rm -f conftest.in - mv conftest.out conftest.in - - cat > conftest.frag < conftest.out - rm -f conftest.in - mv conftest.out conftest.in - - cat > conftest.frag < conftest.out - rm -f conftest.in - mv conftest.out conftest.in - - cat > conftest.frag < conftest.out - rm -f conftest.in - mv conftest.out conftest.in - - cat > conftest.frag < conftest.out - rm -f conftest.in - mv conftest.out conftest.in - - cat > conftest.frag < conftest.out - rm -f conftest.in - mv conftest.out conftest.in - - cat > conftest.frag < conftest.out - rm -f conftest.in - mv conftest.out conftest.in - - cat > conftest.frag < conftest.out - rm -f conftest.in - mv conftest.out conftest.in - - cat > conftest.frag < conftest.out - rm -f conftest.in - mv conftest.out conftest.in - - cat > conftest.frag < conftest.out - rm -f conftest.in - mv conftest.out conftest.in - - cat > conftest.frag < conftest.out - rm -f conftest.in - mv conftest.out conftest.in - - cat > conftest.frag < conftest.out - rm -f conftest.in - mv conftest.out conftest.in - - cat > conftest.frag < conftest.out - rm -f conftest.in - mv conftest.out conftest.in - - cat > conftest.frag < conftest.out - rm -f conftest.in - mv conftest.out conftest.in - - cat > conftest.frag < conftest.out - rm -f conftest.in - mv conftest.out conftest.in - - cat > conftest.frag < conftest.out - rm -f conftest.in - mv conftest.out conftest.in - - cat > conftest.frag < conftest.out - rm -f conftest.in - mv conftest.out conftest.in - - cat > conftest.frag < conftest.out - rm -f conftest.in - mv conftest.out conftest.in - - cat > conftest.frag < conftest.out - rm -f conftest.in - mv conftest.out conftest.in - - cat > conftest.frag < conftest.out - rm -f conftest.in - mv conftest.out conftest.in - - cat > conftest.frag < conftest.out - rm -f conftest.in - mv conftest.out conftest.in - - cat > conftest.frag < conftest.out - rm -f conftest.in - mv conftest.out conftest.in - - cat > conftest.frag < conftest.out - rm -f conftest.in - mv conftest.out conftest.in - - cat > conftest.frag < conftest.out - rm -f conftest.in - mv conftest.out conftest.in - - cat > conftest.frag < conftest.out - rm -f conftest.in - mv conftest.out conftest.in - - cat > conftest.frag < conftest.out - rm -f conftest.in - mv conftest.out conftest.in - - cat > conftest.frag < conftest.out - rm -f conftest.in - mv conftest.out conftest.in - - cat > conftest.frag < conftest.out - rm -f conftest.in - mv conftest.out conftest.in - - cat > conftest.frag < conftest.out - rm -f conftest.in - mv conftest.out conftest.in - - cat > conftest.frag < conftest.out - rm -f conftest.in - mv conftest.out conftest.in - - cat > conftest.frag < conftest.out - rm -f conftest.in - mv conftest.out conftest.in - - cat > conftest.frag < conftest.out - rm -f conftest.in - mv conftest.out conftest.in - - rm -f conftest.frag conftest.h - echo "/* $ac_file. Generated automatically by configure. */" > conftest.h - cat conftest.in >> conftest.h - rm -f conftest.in - if cmp -s $ac_file conftest.h 2>/dev/null; then - echo "$ac_file is unchanged" - rm -f conftest.h - else - # Remove last slash and all that follows it. Not all systems have dirname. - ac_dir=`echo $ac_file|sed 's%/[^/][^/]*$%%'` - if test "$ac_dir" != "$ac_file" && test "$ac_dir" != .; then - # The file is in a subdirectory. - test ! -d "$ac_dir" && mkdir "$ac_dir" - fi - rm -f $ac_file - mv conftest.h $ac_file - fi -fi; done - - - - echo timestamp > stamp-h - chmod 755 net-snmp-config - -exit 0 diff --git a/release/src/router/sqlite/config.status b/release/src/router/sqlite/config.status deleted file mode 100755 index 1a69f31af6..0000000000 --- a/release/src/router/sqlite/config.status +++ /dev/null @@ -1,1056 +0,0 @@ -#! /bin/sh -# Generated by configure. -# Run this file to recreate the current configuration. -# Compiler output produced by configure, useful for debugging -# configure, is in config.log if it exists. - -debug=false -ac_cs_recheck=false -ac_cs_silent=false -SHELL=${CONFIG_SHELL-/bin/sh} -## --------------------- ## -## M4sh Initialization. ## -## --------------------- ## - -# Be more Bourne compatible -DUALCASE=1; export DUALCASE # for MKS sh -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then - emulate sh - NULLCMD=: - # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which - # is contrary to our usage. Disable this feature. - alias -g '${1+"$@"}'='"$@"' - setopt NO_GLOB_SUBST -else - case `(set -o) 2>/dev/null` in - *posix*) set -o posix ;; -esac - -fi - - - - -# PATH needs CR -# Avoid depending upon Character Ranges. -as_cr_letters='abcdefghijklmnopqrstuvwxyz' -as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' -as_cr_Letters=$as_cr_letters$as_cr_LETTERS -as_cr_digits='0123456789' -as_cr_alnum=$as_cr_Letters$as_cr_digits - -as_nl=' -' -export as_nl -# Printing a long string crashes Solaris 7 /usr/bin/printf. -as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' -as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo -as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo -if (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then - as_echo='printf %s\n' - as_echo_n='printf %s' -else - if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then - as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"' - as_echo_n='/usr/ucb/echo -n' - else - as_echo_body='eval expr "X$1" : "X\\(.*\\)"' - as_echo_n_body='eval - arg=$1; - case $arg in - *"$as_nl"*) - expr "X$arg" : "X\\(.*\\)$as_nl"; - arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;; - esac; - expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl" - ' - export as_echo_n_body - as_echo_n='sh -c $as_echo_n_body as_echo' - fi - export as_echo_body - as_echo='sh -c $as_echo_body as_echo' -fi - -# The user is always right. -if test "${PATH_SEPARATOR+set}" != set; then - PATH_SEPARATOR=: - (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { - (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || - PATH_SEPARATOR=';' - } -fi - -# Support unset when possible. -if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then - as_unset=unset -else - as_unset=false -fi - - -# IFS -# We need space, tab and new line, in precisely that order. Quoting is -# there to prevent editors from complaining about space-tab. -# (If _AS_PATH_WALK were called with IFS unset, it would disable word -# splitting by setting IFS to empty value.) -IFS=" "" $as_nl" - -# Find who we are. Look in the path if we contain no directory separator. -case $0 in - *[\\/]* ) as_myself=$0 ;; - *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break -done -IFS=$as_save_IFS - - ;; -esac -# We did not find ourselves, most probably we were run as `sh COMMAND' -# in which case we are not to be found in the path. -if test "x$as_myself" = x; then - as_myself=$0 -fi -if test ! -f "$as_myself"; then - $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 - { (exit 1); exit 1; } -fi - -# Work around bugs in pre-3.0 UWIN ksh. -for as_var in ENV MAIL MAILPATH -do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var -done -PS1='$ ' -PS2='> ' -PS4='+ ' - -# NLS nuisances. -LC_ALL=C -export LC_ALL -LANGUAGE=C -export LANGUAGE - -# Required to use basename. -if expr a : '\(a\)' >/dev/null 2>&1 && - test "X`expr 00001 : '.*\(...\)'`" = X001; then - as_expr=expr -else - as_expr=false -fi - -if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then - as_basename=basename -else - as_basename=false -fi - - -# Name of the executable. -as_me=`$as_basename -- "$0" || -$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ - X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X/"$0" | - sed '/^.*\/\([^/][^/]*\)\/*$/{ - s//\1/ - q - } - /^X\/\(\/\/\)$/{ - s//\1/ - q - } - /^X\/\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - -# CDPATH. -$as_unset CDPATH - - - - as_lineno_1=$LINENO - as_lineno_2=$LINENO - test "x$as_lineno_1" != "x$as_lineno_2" && - test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2" || { - - # Create $as_me.lineno as a copy of $as_myself, but with $LINENO - # uniformly replaced by the line number. The first 'sed' inserts a - # line-number line after each line using $LINENO; the second 'sed' - # does the real work. The second script uses 'N' to pair each - # line-number line with the line containing $LINENO, and appends - # trailing '-' during substitution so that $LINENO is not a special - # case at line end. - # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the - # scripts with optimization help from Paolo Bonzini. Blame Lee - # E. McMahon (1931-1989) for sed's syntax. :-) - sed -n ' - p - /[$]LINENO/= - ' <$as_myself | - sed ' - s/[$]LINENO.*/&-/ - t lineno - b - :lineno - N - :loop - s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/ - t loop - s/-\n.*// - ' >$as_me.lineno && - chmod +x "$as_me.lineno" || - { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2 - { (exit 1); exit 1; }; } - - # Don't try to exec as it changes $[0], causing all sort of problems - # (the dirname of $[0] is not the place where we might find the - # original and so on. Autoconf is especially sensitive to this). - . "./$as_me.lineno" - # Exit status is that of the last command. - exit -} - - -if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then - as_dirname=dirname -else - as_dirname=false -fi - -ECHO_C= ECHO_N= ECHO_T= -case `echo -n x` in --n*) - case `echo 'x\c'` in - *c*) ECHO_T=' ';; # ECHO_T is single tab character. - *) ECHO_C='\c';; - esac;; -*) - ECHO_N='-n';; -esac -if expr a : '\(a\)' >/dev/null 2>&1 && - test "X`expr 00001 : '.*\(...\)'`" = X001; then - as_expr=expr -else - as_expr=false -fi - -rm -f conf$$ conf$$.exe conf$$.file -if test -d conf$$.dir; then - rm -f conf$$.dir/conf$$.file -else - rm -f conf$$.dir - mkdir conf$$.dir 2>/dev/null -fi -if (echo >conf$$.file) 2>/dev/null; then - if ln -s conf$$.file conf$$ 2>/dev/null; then - as_ln_s='ln -s' - # ... but there are two gotchas: - # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. - # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. - # In both cases, we have to default to `cp -p'. - ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || - as_ln_s='cp -p' - elif ln conf$$.file conf$$ 2>/dev/null; then - as_ln_s=ln - else - as_ln_s='cp -p' - fi -else - as_ln_s='cp -p' -fi -rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file -rmdir conf$$.dir 2>/dev/null - -if mkdir -p . 2>/dev/null; then - as_mkdir_p=: -else - test -d ./-p && rmdir ./-p - as_mkdir_p=false -fi - -if test -x / >/dev/null 2>&1; then - as_test_x='test -x' -else - if ls -dL / >/dev/null 2>&1; then - as_ls_L_option=L - else - as_ls_L_option= - fi - as_test_x=' - eval sh -c '\'' - if test -d "$1"; then - test -d "$1/."; - else - case $1 in - -*)set "./$1";; - esac; - case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in - ???[sx]*):;;*)false;;esac;fi - '\'' sh - ' -fi -as_executable_p=$as_test_x - -# Sed expression to map a string onto a valid CPP name. -as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" - -# Sed expression to map a string onto a valid variable name. -as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" - - -exec 6>&1 - -# Save the log message, to keep $[0] and so on meaningful, and to -# report actual input values of CONFIG_FILES etc. instead of their -# values after options handling. -ac_log=" -This file was extended by sqlite $as_me 3.7.5, which was -generated by GNU Autoconf 2.62. Invocation command line was - - CONFIG_FILES = $CONFIG_FILES - CONFIG_HEADERS = $CONFIG_HEADERS - CONFIG_LINKS = $CONFIG_LINKS - CONFIG_COMMANDS = $CONFIG_COMMANDS - $ $0 $@ - -on `(hostname || uname -n) 2>/dev/null | sed 1q` -" - -# Files that config.status was made for. -config_files=" Makefile sqlite3.pc" -config_commands=" depfiles" - -ac_cs_usage="\ -\`$as_me' instantiates files from templates according to the -current configuration. - -Usage: $0 [OPTIONS] [FILE]... - - -h, --help print this help, then exit - -V, --version print version number and configuration settings, then exit - -q, --quiet do not print progress messages - -d, --debug don't remove temporary files - --recheck update $as_me by reconfiguring in the same conditions - --file=FILE[:TEMPLATE] - instantiate the configuration file FILE - -Configuration files: -$config_files - -Configuration commands: -$config_commands - -Report bugs to ." - -ac_cs_version="\ -sqlite config.status 3.7.5 -configured by ./configure, generated by GNU Autoconf 2.62, - with options \"'--host=mipsel-linux' '--build=x86_64-linux-gnu' '--prefix=/usr' '--enable-shared' '--enable-static' '--disable-readline' '--disable-dynamic-extensions' '--enable-threadsafe' 'build_alias=x86_64-linux-gnu' 'host_alias=mipsel-linux' 'CC=mipsel-uclibc-gcc' 'CFLAGS=-Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections' 'LDFLAGS=-ffunction-sections -fdata-sections -Wl,--gc-sections'\" - -Copyright (C) 2008 Free Software Foundation, Inc. -This config.status script is free software; the Free Software Foundation -gives unlimited permission to copy, distribute and modify it." - -ac_pwd='/home/vicente/tomato/release/src/router/sqlite' -srcdir='.' -INSTALL='/usr/bin/install -c' -AWK='gawk' -test -n "$AWK" || AWK=awk -# The default lists apply if the user does not specify any file. -ac_need_defaults=: -while test $# != 0 -do - case $1 in - --*=*) - ac_option=`expr "X$1" : 'X\([^=]*\)='` - ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'` - ac_shift=: - ;; - *) - ac_option=$1 - ac_optarg=$2 - ac_shift=shift - ;; - esac - - case $ac_option in - # Handling of the options. - -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) - ac_cs_recheck=: ;; - --version | --versio | --versi | --vers | --ver | --ve | --v | -V ) - $as_echo "$ac_cs_version"; exit ;; - --debug | --debu | --deb | --de | --d | -d ) - debug=: ;; - --file | --fil | --fi | --f ) - $ac_shift - case $ac_optarg in - *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; - esac - CONFIG_FILES="$CONFIG_FILES '$ac_optarg'" - ac_need_defaults=false;; - --he | --h | --help | --hel | -h ) - $as_echo "$ac_cs_usage"; exit ;; - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil | --si | --s) - ac_cs_silent=: ;; - - # This is an error. - -*) { $as_echo "$as_me: error: unrecognized option: $1 -Try \`$0 --help' for more information." >&2 - { (exit 1); exit 1; }; } ;; - - *) ac_config_targets="$ac_config_targets $1" - ac_need_defaults=false ;; - - esac - shift -done - -ac_configure_extra_args= - -if $ac_cs_silent; then - exec 6>/dev/null - ac_configure_extra_args="$ac_configure_extra_args --silent" -fi - -if $ac_cs_recheck; then - set X '/bin/sh' './configure' '--host=mipsel-linux' '--build=x86_64-linux-gnu' '--prefix=/usr' '--enable-shared' '--enable-static' '--disable-readline' '--disable-dynamic-extensions' '--enable-threadsafe' 'build_alias=x86_64-linux-gnu' 'host_alias=mipsel-linux' 'CC=mipsel-uclibc-gcc' 'CFLAGS=-Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections' 'LDFLAGS=-ffunction-sections -fdata-sections -Wl,--gc-sections' $ac_configure_extra_args --no-create --no-recursion - shift - $as_echo "running CONFIG_SHELL=/bin/sh $*" >&6 - CONFIG_SHELL='/bin/sh' - export CONFIG_SHELL - exec "$@" -fi - -exec 5>>config.log -{ - echo - sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX -## Running $as_me. ## -_ASBOX - $as_echo "$ac_log" -} >&5 - -# -# INIT-COMMANDS -# -AMDEP_TRUE="" ac_aux_dir="." - - -# Handling of arguments. -for ac_config_target in $ac_config_targets -do - case $ac_config_target in - "depfiles") CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;; - "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;; - "sqlite3.pc") CONFIG_FILES="$CONFIG_FILES sqlite3.pc" ;; - - *) { { $as_echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5 -$as_echo "$as_me: error: invalid argument: $ac_config_target" >&2;} - { (exit 1); exit 1; }; };; - esac -done - - -# If the user did not use the arguments to specify the items to instantiate, -# then the envvar interface is used. Set only those that are not. -# We use the long form for the default assignment because of an extremely -# bizarre bug on SunOS 4.1.3. -if $ac_need_defaults; then - test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files - test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands -fi - -# Have a temporary directory for convenience. Make it in the build tree -# simply because there is no reason against having it here, and in addition, -# creating and moving files from /tmp can sometimes cause problems. -# Hook for its removal unless debugging. -# Note that there is a small window in which the directory will not be cleaned: -# after its creation but before its name has been assigned to `$tmp'. -$debug || -{ - tmp= - trap 'exit_status=$? - { test -z "$tmp" || test ! -d "$tmp" || rm -fr "$tmp"; } && exit $exit_status -' 0 - trap '{ (exit 1); exit 1; }' 1 2 13 15 -} -# Create a (secure) tmp directory for tmp files. - -{ - tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` && - test -n "$tmp" && test -d "$tmp" -} || -{ - tmp=./conf$$-$RANDOM - (umask 077 && mkdir "$tmp") -} || -{ - $as_echo "$as_me: cannot create a temporary directory in ." >&2 - { (exit 1); exit 1; } -} - -# Set up the scripts for CONFIG_FILES section. -# No need to generate them if there are no CONFIG_FILES. -# This happens for instance with `./config.status config.h'. -if test -n "$CONFIG_FILES"; then - - -ac_cr=' ' -ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' /dev/null` -if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then - ac_cs_awk_cr='\\r' -else - ac_cs_awk_cr=$ac_cr -fi - -echo 'BEGIN {' >"$tmp/subs1.awk" && -cat >>"$tmp/subs1.awk" <<\_ACAWK && -S["SHELL"]="/bin/sh" -S["PATH_SEPARATOR"]=":" -S["PACKAGE_NAME"]="sqlite" -S["PACKAGE_TARNAME"]="sqlite" -S["PACKAGE_VERSION"]="3.7.5" -S["PACKAGE_STRING"]="sqlite 3.7.5" -S["PACKAGE_BUGREPORT"]="http://www.sqlite.org" -S["exec_prefix"]="${prefix}" -S["prefix"]="/usr" -S["program_transform_name"]="s,x,x," -S["bindir"]="${exec_prefix}/bin" -S["sbindir"]="${exec_prefix}/sbin" -S["libexecdir"]="${exec_prefix}/libexec" -S["datarootdir"]="${prefix}/share" -S["datadir"]="${datarootdir}" -S["sysconfdir"]="${prefix}/etc" -S["sharedstatedir"]="${prefix}/com" -S["localstatedir"]="${prefix}/var" -S["includedir"]="${prefix}/include" -S["oldincludedir"]="/usr/include" -S["docdir"]="${datarootdir}/doc/${PACKAGE_TARNAME}" -S["infodir"]="${datarootdir}/info" -S["htmldir"]="${docdir}" -S["dvidir"]="${docdir}" -S["pdfdir"]="${docdir}" -S["psdir"]="${docdir}" -S["libdir"]="${exec_prefix}/lib" -S["localedir"]="${datarootdir}/locale" -S["mandir"]="${datarootdir}/man" -S["DEFS"]="-DPACKAGE_NAME=\\\"sqlite\\\" -DPACKAGE_TARNAME=\\\"sqlite\\\" -DPACKAGE_VERSION=\\\"3.7.5\\\" -DPACKAGE_STRING=\\\"sqlite\\ 3.7.5\\\" -DPACKAGE_BUGREPORT=\\\"http://w"\ -"ww.sqlite.org\\\" -DPACKAGE=\\\"sqlite\\\" -DVERSION=\\\"3.7.5\\\" -D_FILE_OFFSET_BITS=64 -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STD"\ -"LIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DHAVE_FDATA"\ -"SYNC=1 -DHAVE_USLEEP=1 -DHAVE_LOCALTIME_R=1 -DHAVE_GMTIME_R=1" -S["ECHO_C"]="" -S["ECHO_N"]="-n" -S["ECHO_T"]="" -S["LIBS"]="-lpthread " -S["build_alias"]="x86_64-linux-gnu" -S["host_alias"]="mipsel-linux" -S["target_alias"]="" -S["INSTALL_PROGRAM"]="${INSTALL}" -S["INSTALL_SCRIPT"]="${INSTALL}" -S["INSTALL_DATA"]="${INSTALL} -m 644" -S["CYGPATH_W"]="echo" -S["PACKAGE"]="sqlite" -S["VERSION"]="3.7.5" -S["ACLOCAL"]="${SHELL} /home/vicente/tomato/release/src/router/sqlite/missing --run aclocal-1.9" -S["AUTOCONF"]="${SHELL} /home/vicente/tomato/release/src/router/sqlite/missing --run autoconf" -S["AUTOMAKE"]="${SHELL} /home/vicente/tomato/release/src/router/sqlite/missing --run automake-1.9" -S["AUTOHEADER"]="${SHELL} /home/vicente/tomato/release/src/router/sqlite/missing --run autoheader" -S["MAKEINFO"]="${SHELL} /home/vicente/tomato/release/src/router/sqlite/missing --run makeinfo" -S["install_sh"]="/home/vicente/tomato/release/src/router/sqlite/install-sh" -S["STRIP"]="mipsel-uclibc-strip -R .note -R .comment" -S["INSTALL_STRIP_PROGRAM"]="${SHELL} $(install_sh) -c -s" -S["mkdir_p"]="mkdir -p --" -S["AWK"]="gawk" -S["SET_MAKE"]="" -S["am__leading_dot"]="." -S["AMTAR"]="${SHELL} /home/vicente/tomato/release/src/router/sqlite/missing --run tar" -S["am__tar"]="${AMTAR} chof - \"$$tardir\"" -S["am__untar"]="${AMTAR} xf -" -S["CC"]="mipsel-uclibc-gcc" -S["CFLAGS"]="-Os -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections" -S["LDFLAGS"]="-ffunction-sections -fdata-sections -Wl,--gc-sections" -S["CPPFLAGS"]="" -S["ac_ct_CC"]="" -S["EXEEXT"]="" -S["OBJEXT"]="o" -S["DEPDIR"]=".deps" -S["am__include"]="include" -S["am__quote"]="" -S["AMDEP_TRUE"]="" -S["AMDEP_FALSE"]="#" -S["AMDEPBACKSLASH"]="\\" -S["CCDEPMODE"]="depmode=gcc3" -S["am__fastdepCC_TRUE"]="" -S["am__fastdepCC_FALSE"]="#" -S["RANLIB"]="mipsel-uclibc-ranlib" -S["build"]="x86_64-pc-linux-gnu" -S["build_cpu"]="x86_64" -S["build_vendor"]="pc" -S["build_os"]="linux-gnu" -S["host"]="mipsel-unknown-linux-gnu" -S["host_cpu"]="mipsel" -S["host_vendor"]="unknown" -S["host_os"]="linux-gnu" -S["GREP"]="/bin/grep" -S["EGREP"]="/bin/grep -E" -S["LN_S"]="ln -s" -S["ECHO"]="echo" -S["AR"]="mipsel-uclibc-ar" -S["CPP"]="mipsel-uclibc-gcc -E" -S["CXX"]="mipsel-linux-g++" -S["CXXFLAGS"]="-g -O2" -S["ac_ct_CXX"]="" -S["CXXDEPMODE"]="depmode=gcc3" -S["am__fastdepCXX_TRUE"]="" -S["am__fastdepCXX_FALSE"]="#" -S["CXXCPP"]="mipsel-linux-g++ -E" -S["F77"]="" -S["FFLAGS"]="" -S["ac_ct_F77"]="" -S["LIBTOOL"]="$(SHELL) $(top_builddir)/libtool" -S["BUILD_CFLAGS"]="" -S["READLINE_LIBS"]="" -S["THREADSAFE_FLAGS"]="-DSQLITE_THREADSAFE=1" -S["DYNAMIC_EXTENSION_FLAGS"]="-DSQLITE_OMIT_LOAD_EXTENSION=1" -S["LIBOBJS"]="" -S["LTLIBOBJS"]="" -_ACAWK -cat >>"$tmp/subs1.awk" <<_ACAWK && - for (key in S) S_is_set[key] = 1 - FS = "" - -} -{ - line = $ 0 - nfields = split(line, field, "@") - substed = 0 - len = length(field[1]) - for (i = 2; i < nfields; i++) { - key = field[i] - keylen = length(key) - if (S_is_set[key]) { - value = S[key] - line = substr(line, 1, len) "" value "" substr(line, len + keylen + 3) - len += length(value) + length(field[++i]) - substed = 1 - } else - len += 1 + keylen - } - - print line -} - -_ACAWK -if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then - sed "s/$ac_cr\$//; s/$ac_cr/$ac_cs_awk_cr/g" -else - cat -fi < "$tmp/subs1.awk" > "$tmp/subs.awk" \ - || { { $as_echo "$as_me:$LINENO: error: could not setup config files machinery" >&5 -$as_echo "$as_me: error: could not setup config files machinery" >&2;} - { (exit 1); exit 1; }; } -fi # test -n "$CONFIG_FILES" - - -eval set X " :F $CONFIG_FILES :C $CONFIG_COMMANDS" -shift -for ac_tag -do - case $ac_tag in - :[FHLC]) ac_mode=$ac_tag; continue;; - esac - case $ac_mode$ac_tag in - :[FHL]*:*);; - :L* | :C*:*) { { $as_echo "$as_me:$LINENO: error: Invalid tag $ac_tag." >&5 -$as_echo "$as_me: error: Invalid tag $ac_tag." >&2;} - { (exit 1); exit 1; }; };; - :[FH]-) ac_tag=-:-;; - :[FH]*) ac_tag=$ac_tag:$ac_tag.in;; - esac - ac_save_IFS=$IFS - IFS=: - set x $ac_tag - IFS=$ac_save_IFS - shift - ac_file=$1 - shift - - case $ac_mode in - :L) ac_source=$1;; - :[FH]) - ac_file_inputs= - for ac_f - do - case $ac_f in - -) ac_f="$tmp/stdin";; - *) # Look for the file first in the build tree, then in the source tree - # (if the path is not absolute). The absolute path cannot be DOS-style, - # because $ac_f cannot contain `:'. - test -f "$ac_f" || - case $ac_f in - [\\/$]*) false;; - *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";; - esac || - { { $as_echo "$as_me:$LINENO: error: cannot find input file: $ac_f" >&5 -$as_echo "$as_me: error: cannot find input file: $ac_f" >&2;} - { (exit 1); exit 1; }; };; - esac - case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac - ac_file_inputs="$ac_file_inputs '$ac_f'" - done - - # Let's still pretend it is `configure' which instantiates (i.e., don't - # use $as_me), people would be surprised to read: - # /* config.h. Generated by config.status. */ - configure_input='Generated from '` - $as_echo "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g' - `' by configure.' - if test x"$ac_file" != x-; then - configure_input="$ac_file. $configure_input" - { $as_echo "$as_me:$LINENO: creating $ac_file" >&5 -$as_echo "$as_me: creating $ac_file" >&6;} - fi - # Neutralize special characters interpreted by sed in replacement strings. - case $configure_input in #( - *\&* | *\|* | *\\* ) - ac_sed_conf_input=`$as_echo "$configure_input" | - sed 's/[\\\\&|]/\\\\&/g'`;; #( - *) ac_sed_conf_input=$configure_input;; - esac - - case $ac_tag in - *:-:* | *:-) cat >"$tmp/stdin" \ - || { { $as_echo "$as_me:$LINENO: error: could not create $ac_file" >&5 -$as_echo "$as_me: error: could not create $ac_file" >&2;} - { (exit 1); exit 1; }; } ;; - esac - ;; - esac - - ac_dir=`$as_dirname -- "$ac_file" || -$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$ac_file" : 'X\(//\)[^/]' \| \ - X"$ac_file" : 'X\(//\)$' \| \ - X"$ac_file" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$ac_file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - { as_dir="$ac_dir" - case $as_dir in #( - -*) as_dir=./$as_dir;; - esac - test -d "$as_dir" || { $as_mkdir_p && mkdir -p "$as_dir"; } || { - as_dirs= - while :; do - case $as_dir in #( - *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( - *) as_qdir=$as_dir;; - esac - as_dirs="'$as_qdir' $as_dirs" - as_dir=`$as_dirname -- "$as_dir" || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - test -d "$as_dir" && break - done - test -z "$as_dirs" || eval "mkdir $as_dirs" - } || test -d "$as_dir" || { { $as_echo "$as_me:$LINENO: error: cannot create directory $as_dir" >&5 -$as_echo "$as_me: error: cannot create directory $as_dir" >&2;} - { (exit 1); exit 1; }; }; } - ac_builddir=. - -case "$ac_dir" in -.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; -*) - ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'` - # A ".." for each directory in $ac_dir_suffix. - ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'` - case $ac_top_builddir_sub in - "") ac_top_builddir_sub=. ac_top_build_prefix= ;; - *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; - esac ;; -esac -ac_abs_top_builddir=$ac_pwd -ac_abs_builddir=$ac_pwd$ac_dir_suffix -# for backward compatibility: -ac_top_builddir=$ac_top_build_prefix - -case $srcdir in - .) # We are building in place. - ac_srcdir=. - ac_top_srcdir=$ac_top_builddir_sub - ac_abs_top_srcdir=$ac_pwd ;; - [\\/]* | ?:[\\/]* ) # Absolute name. - ac_srcdir=$srcdir$ac_dir_suffix; - ac_top_srcdir=$srcdir - ac_abs_top_srcdir=$srcdir ;; - *) # Relative name. - ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix - ac_top_srcdir=$ac_top_build_prefix$srcdir - ac_abs_top_srcdir=$ac_pwd/$srcdir ;; -esac -ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix - - - case $ac_mode in - :F) - # - # CONFIG_FILE - # - - case $INSTALL in - [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;; - *) ac_INSTALL=$ac_top_build_prefix$INSTALL ;; - esac -# If the template does not know about datarootdir, expand it. -# FIXME: This hack should be removed a few years after 2.60. -ac_datarootdir_hack=; ac_datarootdir_seen= - -ac_sed_dataroot=' -/datarootdir/ { - p - q -} -/@datadir@/p -/@docdir@/p -/@infodir@/p -/@localedir@/p -/@mandir@/p -' -case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in -*datarootdir*) ac_datarootdir_seen=yes;; -*@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*) - { $as_echo "$as_me:$LINENO: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5 -$as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;} - ac_datarootdir_hack=' - s&@datadir@&${datarootdir}&g - s&@docdir@&${datarootdir}/doc/${PACKAGE_TARNAME}&g - s&@infodir@&${datarootdir}/info&g - s&@localedir@&${datarootdir}/locale&g - s&@mandir@&${datarootdir}/man&g - s&\${datarootdir}&${prefix}/share&g' ;; -esac -ac_sed_extra="/^[ ]*VPATH[ ]*=/{ -s/:*\$(srcdir):*/:/ -s/:*\${srcdir}:*/:/ -s/:*@srcdir@:*/:/ -s/^\([^=]*=[ ]*\):*/\1/ -s/:*$// -s/^[^=]*=[ ]*$// -} - -:t -/@[a-zA-Z_][a-zA-Z_0-9]*@/!b -s|@configure_input@|$ac_sed_conf_input|;t t -s&@top_builddir@&$ac_top_builddir_sub&;t t -s&@top_build_prefix@&$ac_top_build_prefix&;t t -s&@srcdir@&$ac_srcdir&;t t -s&@abs_srcdir@&$ac_abs_srcdir&;t t -s&@top_srcdir@&$ac_top_srcdir&;t t -s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t -s&@builddir@&$ac_builddir&;t t -s&@abs_builddir@&$ac_abs_builddir&;t t -s&@abs_top_builddir@&$ac_abs_top_builddir&;t t -s&@INSTALL@&$ac_INSTALL&;t t -$ac_datarootdir_hack -" -eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$tmp/subs.awk" >$tmp/out \ - || { { $as_echo "$as_me:$LINENO: error: could not create $ac_file" >&5 -$as_echo "$as_me: error: could not create $ac_file" >&2;} - { (exit 1); exit 1; }; } - -test -z "$ac_datarootdir_hack$ac_datarootdir_seen" && - { ac_out=`sed -n '/\${datarootdir}/p' "$tmp/out"`; test -n "$ac_out"; } && - { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' "$tmp/out"`; test -z "$ac_out"; } && - { $as_echo "$as_me:$LINENO: WARNING: $ac_file contains a reference to the variable \`datarootdir' -which seems to be undefined. Please make sure it is defined." >&5 -$as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir' -which seems to be undefined. Please make sure it is defined." >&2;} - - rm -f "$tmp/stdin" - case $ac_file in - -) cat "$tmp/out" && rm -f "$tmp/out";; - *) rm -f "$ac_file" && mv "$tmp/out" "$ac_file";; - esac \ - || { { $as_echo "$as_me:$LINENO: error: could not create $ac_file" >&5 -$as_echo "$as_me: error: could not create $ac_file" >&2;} - { (exit 1); exit 1; }; } - ;; - - - :C) { $as_echo "$as_me:$LINENO: executing $ac_file commands" >&5 -$as_echo "$as_me: executing $ac_file commands" >&6;} - ;; - esac - - - case $ac_file$ac_mode in - "depfiles":C) test x"$AMDEP_TRUE" != x"" || for mf in $CONFIG_FILES; do - # Strip MF so we end up with the name of the file. - mf=`echo "$mf" | sed -e 's/:.*$//'` - # Check whether this is an Automake generated Makefile or not. - # We used to match only the files named `Makefile.in', but - # some people rename them; so instead we look at the file content. - # Grep'ing the first line is not enough: some people post-process - # each Makefile.in and add a new line on top of each file to say so. - # So let's grep whole file. - if grep '^#.*generated by automake' $mf > /dev/null 2>&1; then - dirpart=`$as_dirname -- "$mf" || -$as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$mf" : 'X\(//\)[^/]' \| \ - X"$mf" : 'X\(//\)$' \| \ - X"$mf" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$mf" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - else - continue - fi - # Extract the definition of DEPDIR, am__include, and am__quote - # from the Makefile without running `make'. - DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"` - test -z "$DEPDIR" && continue - am__include=`sed -n 's/^am__include = //p' < "$mf"` - test -z "am__include" && continue - am__quote=`sed -n 's/^am__quote = //p' < "$mf"` - # When using ansi2knr, U may be empty or an underscore; expand it - U=`sed -n 's/^U = //p' < "$mf"` - # Find all dependency output files, they are included files with - # $(DEPDIR) in their names. We invoke sed twice because it is the - # simplest approach to changing $(DEPDIR) to its actual value in the - # expansion. - for file in `sed -n " - s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \ - sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do - # Make sure the directory exists. - test -f "$dirpart/$file" && continue - fdir=`$as_dirname -- "$file" || -$as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$file" : 'X\(//\)[^/]' \| \ - X"$file" : 'X\(//\)$' \| \ - X"$file" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - { as_dir=$dirpart/$fdir - case $as_dir in #( - -*) as_dir=./$as_dir;; - esac - test -d "$as_dir" || { $as_mkdir_p && mkdir -p "$as_dir"; } || { - as_dirs= - while :; do - case $as_dir in #( - *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( - *) as_qdir=$as_dir;; - esac - as_dirs="'$as_qdir' $as_dirs" - as_dir=`$as_dirname -- "$as_dir" || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - test -d "$as_dir" && break - done - test -z "$as_dirs" || eval "mkdir $as_dirs" - } || test -d "$as_dir" || { { $as_echo "$as_me:$LINENO: error: cannot create directory $as_dir" >&5 -$as_echo "$as_me: error: cannot create directory $as_dir" >&2;} - { (exit 1); exit 1; }; }; } - # echo "creating $dirpart/$file" - echo '# dummy' > "$dirpart/$file" - done -done - ;; - - esac -done # for ac_tag - - -{ (exit 0); exit 0; } diff --git a/release/src/router/target.info b/release/src/router/target.info new file mode 100644 index 0000000000..3b856c43bb --- /dev/null +++ b/release/src/router/target.info @@ -0,0 +1,21 @@ +Creating little endian 3.0 filesystem on /home/vicente/repos/tomato/release/src-rt/router/mipsel-uclibc/target.image, block size 65536. + +Little endian filesystem, data block size 65536, compressed data, compressed metadata, compressed fragments +Filesystem size 9170.84 Kbytes (8.96 Mbytes) + 30.16% of uncompressed filesystem size (30406.42 Kbytes) +Inode table size 8428 bytes (8.23 Kbytes) + 24.10% of uncompressed inode table size (34969 bytes) +Directory table size 9009 bytes (8.80 Kbytes) + 54.58% of uncompressed directory table size (16505 bytes) +Number of duplicate files found 0 +Number of inodes 1061 +Number of files 822 +Number of fragments 68 +Number of symbolic links 185 +Number of device nodes 0 +Number of fifo nodes 0 +Number of socket nodes 0 +Number of directories 54 +Number of uids 1 + root (0) +Number of gids 0 diff --git a/release/src/router/zebra/Makefile b/release/src/router/zebra/Makefile index 8cd7b89a7d..d368c52221 100644 --- a/release/src/router/zebra/Makefile +++ b/release/src/router/zebra/Makefile @@ -38,10 +38,10 @@ pkglibdir = $(libdir)/zebra pkgincludedir = $(includedir)/zebra top_builddir = . -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/zebra/missing --run aclocal-1.6 -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/zebra/missing --run autoconf -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/zebra/missing --run automake-1.6 -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/zebra/missing --run autoheader +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/zebra/missing --run aclocal-1.6 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/zebra/missing --run autoconf +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/zebra/missing --run automake-1.6 +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/zebra/missing --run autoheader am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd INSTALL = /usr/bin/install -c @@ -65,7 +65,7 @@ host_triplet = mipsel-unknown-linux-gnu EXEEXT = OBJEXT = o PATH_SEPARATOR = : -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/zebra/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/zebra/missing --run tar AR = mipsel-uclibc-ar AWK = gawk BGPD = @@ -98,7 +98,7 @@ VTYSH = ZEBRA = zebra am__include = include am__quote = -install_sh = /home/vicente/tomato/release/src/router/zebra/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/zebra/install-sh SUBDIRS = lib zebra ripd diff --git a/release/src/router/zebra/bgpd/Makefile b/release/src/router/zebra/bgpd/Makefile index a9458a5871..293b0a4dae 100644 --- a/release/src/router/zebra/bgpd/Makefile +++ b/release/src/router/zebra/bgpd/Makefile @@ -38,10 +38,10 @@ pkglibdir = $(libdir)/zebra pkgincludedir = $(includedir)/zebra top_builddir = .. -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/zebra/missing --run aclocal-1.6 -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/zebra/missing --run autoconf -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/zebra/missing --run automake-1.6 -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/zebra/missing --run autoheader +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/zebra/missing --run aclocal-1.6 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/zebra/missing --run autoconf +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/zebra/missing --run automake-1.6 +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/zebra/missing --run autoheader am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd INSTALL = /usr/bin/install -c @@ -65,7 +65,7 @@ host_triplet = mipsel-unknown-linux-gnu EXEEXT = OBJEXT = o PATH_SEPARATOR = : -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/zebra/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/zebra/missing --run tar AR = mipsel-uclibc-ar AWK = gawk BGPD = @@ -99,7 +99,7 @@ VTYSH = ZEBRA = zebra am__include = include am__quote = -install_sh = /home/vicente/tomato/release/src/router/zebra/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/zebra/install-sh DEFS = -DHAVE_CONFIG_H -DSYSCONFDIR=\"$(sysconfdir)/\" INSTALL_SDATA = /usr/bin/install -c -m 600 diff --git a/release/src/router/zebra/config.status b/release/src/router/zebra/config.status deleted file mode 100755 index 2213a237a8..0000000000 --- a/release/src/router/zebra/config.status +++ /dev/null @@ -1,1308 +0,0 @@ -#! /bin/sh -# Generated by configure. -# Run this file to recreate the current configuration. -# Compiler output produced by configure, useful for debugging -# configure, is in config.log if it exists. - -debug=false -ac_cs_recheck=false -ac_cs_silent=false -SHELL=${CONFIG_SHELL-/bin/sh} -## --------------------- ## -## M4sh Initialization. ## -## --------------------- ## - -# Be Bourne compatible -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then - emulate sh - NULLCMD=: - # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which - # is contrary to our usage. Disable this feature. - alias -g '${1+"$@"}'='"$@"' -elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then - set -o posix -fi -DUALCASE=1; export DUALCASE # for MKS sh - -# Support unset when possible. -if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then - as_unset=unset -else - as_unset=false -fi - - -# Work around bugs in pre-3.0 UWIN ksh. -$as_unset ENV MAIL MAILPATH -PS1='$ ' -PS2='> ' -PS4='+ ' - -# NLS nuisances. -for as_var in \ - LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \ - LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \ - LC_TELEPHONE LC_TIME -do - if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then - eval $as_var=C; export $as_var - else - $as_unset $as_var - fi -done - -# Required to use basename. -if expr a : '\(a\)' >/dev/null 2>&1; then - as_expr=expr -else - as_expr=false -fi - -if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then - as_basename=basename -else - as_basename=false -fi - - -# Name of the executable. -as_me=`$as_basename "$0" || -$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ - X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)$' \| \ - . : '\(.\)' 2>/dev/null || -echo X/"$0" | - sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; } - /^X\/\(\/\/\)$/{ s//\1/; q; } - /^X\/\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - - -# PATH needs CR, and LINENO needs CR and PATH. -# Avoid depending upon Character Ranges. -as_cr_letters='abcdefghijklmnopqrstuvwxyz' -as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' -as_cr_Letters=$as_cr_letters$as_cr_LETTERS -as_cr_digits='0123456789' -as_cr_alnum=$as_cr_Letters$as_cr_digits - -# The user is always right. -if test "${PATH_SEPARATOR+set}" != set; then - echo "#! /bin/sh" >conf$$.sh - echo "exit 0" >>conf$$.sh - chmod +x conf$$.sh - if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then - PATH_SEPARATOR=';' - else - PATH_SEPARATOR=: - fi - rm -f conf$$.sh -fi - - - as_lineno_1=$LINENO - as_lineno_2=$LINENO - as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` - test "x$as_lineno_1" != "x$as_lineno_2" && - test "x$as_lineno_3" = "x$as_lineno_2" || { - # Find who we are. Look in the path if we contain no path at all - # relative or not. - case $0 in - *[\\/]* ) as_myself=$0 ;; - *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break -done - - ;; - esac - # We did not find ourselves, most probably we were run as `sh COMMAND' - # in which case we are not to be found in the path. - if test "x$as_myself" = x; then - as_myself=$0 - fi - if test ! -f "$as_myself"; then - { { echo "$as_me:$LINENO: error: cannot find myself; rerun with an absolute path" >&5 -echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2;} - { (exit 1); exit 1; }; } - fi - case $CONFIG_SHELL in - '') - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for as_base in sh bash ksh sh5; do - case $as_dir in - /*) - if ("$as_dir/$as_base" -c ' - as_lineno_1=$LINENO - as_lineno_2=$LINENO - as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` - test "x$as_lineno_1" != "x$as_lineno_2" && - test "x$as_lineno_3" = "x$as_lineno_2" ') 2>/dev/null; then - $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { BASH_ENV=; export BASH_ENV; } - $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; } - CONFIG_SHELL=$as_dir/$as_base - export CONFIG_SHELL - exec "$CONFIG_SHELL" "$0" ${1+"$@"} - fi;; - esac - done -done -;; - esac - - # Create $as_me.lineno as a copy of $as_myself, but with $LINENO - # uniformly replaced by the line number. The first 'sed' inserts a - # line-number line before each line; the second 'sed' does the real - # work. The second script uses 'N' to pair each line-number line - # with the numbered line, and appends trailing '-' during - # substitution so that $LINENO is not a special case at line end. - # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the - # second 'sed' script. Blame Lee E. McMahon for sed's syntax. :-) - sed '=' <$as_myself | - sed ' - N - s,$,-, - : loop - s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3, - t loop - s,-$,, - s,^['$as_cr_digits']*\n,, - ' >$as_me.lineno && - chmod +x $as_me.lineno || - { { echo "$as_me:$LINENO: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&5 -echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2;} - { (exit 1); exit 1; }; } - - # Don't try to exec as it changes $[0], causing all sort of problems - # (the dirname of $[0] is not the place where we might find the - # original and so on. Autoconf is especially sensible to this). - . ./$as_me.lineno - # Exit status is that of the last command. - exit -} - - -case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in - *c*,-n*) ECHO_N= ECHO_C=' -' ECHO_T=' ' ;; - *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;; - *) ECHO_N= ECHO_C='\c' ECHO_T= ;; -esac - -if expr a : '\(a\)' >/dev/null 2>&1; then - as_expr=expr -else - as_expr=false -fi - -rm -f conf$$ conf$$.exe conf$$.file -echo >conf$$.file -if ln -s conf$$.file conf$$ 2>/dev/null; then - # We could just check for DJGPP; but this test a) works b) is more generic - # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04). - if test -f conf$$.exe; then - # Don't use ln at all; we don't have any links - as_ln_s='cp -p' - else - as_ln_s='ln -s' - fi -elif ln conf$$.file conf$$ 2>/dev/null; then - as_ln_s=ln -else - as_ln_s='cp -p' -fi -rm -f conf$$ conf$$.exe conf$$.file - -if mkdir -p . 2>/dev/null; then - as_mkdir_p=: -else - test -d ./-p && rmdir ./-p - as_mkdir_p=false -fi - -as_executable_p="test -f" - -# Sed expression to map a string onto a valid CPP name. -as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" - -# Sed expression to map a string onto a valid variable name. -as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" - - -# IFS -# We need space, tab and new line, in precisely that order. -as_nl=' -' -IFS=" $as_nl" - -# CDPATH. -$as_unset CDPATH - -exec 6>&1 - -# Open the log real soon, to keep \$[0] and so on meaningful, and to -# report actual input values of CONFIG_FILES etc. instead of their -# values after options handling. Logging --version etc. is OK. -exec 5>>config.log -{ - echo - sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX -## Running $as_me. ## -_ASBOX -} >&5 -cat >&5 <<_CSEOF - -This file was extended by $as_me, which was -generated by GNU Autoconf 2.59. Invocation command line was - - CONFIG_FILES = $CONFIG_FILES - CONFIG_HEADERS = $CONFIG_HEADERS - CONFIG_LINKS = $CONFIG_LINKS - CONFIG_COMMANDS = $CONFIG_COMMANDS - $ $0 $@ - -_CSEOF -echo "on `(hostname || uname -n) 2>/dev/null | sed 1q`" >&5 -echo >&5 -config_files=" Makefile lib/Makefile zebra/Makefile ripd/Makefile ripngd/Makefile bgpd/Makefile ospfd/Makefile ospf6d/Makefile vtysh/Makefile doc/Makefile" -config_headers=" config.h" -config_commands=" depfiles" - -ac_cs_usage="\ -\`$as_me' instantiates files from templates according to the -current configuration. - -Usage: $0 [OPTIONS] [FILE]... - - -h, --help print this help, then exit - -V, --version print version number, then exit - -q, --quiet do not print progress messages - -d, --debug don't remove temporary files - --recheck update $as_me by reconfiguring in the same conditions - --file=FILE[:TEMPLATE] - instantiate the configuration file FILE - --header=FILE[:TEMPLATE] - instantiate the configuration header FILE - -Configuration files: -$config_files - -Configuration headers: -$config_headers - -Configuration commands: -$config_commands - -Report bugs to ." -ac_cs_version="\ -config.status -configured by ./configure, generated by GNU Autoconf 2.59, - with options \"'--host=mipsel-linux' '--build=x86_64-linux-gnu' '--sysconfdir=/etc' '--enable-netlink' '--enable-ipv6' '--disable-ripngd' '--disable-ospfd' '--disable-doc' '--disable-ospf6d' '--disable-bgpd' '--disable-bgpd-announce' 'CC=mipsel-uclibc-gcc' 'CFLAGS=-Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections' 'LDFLAGS=-ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC' 'build_alias=x86_64-linux-gnu' 'host_alias=mipsel-linux'\" - -Copyright (C) 2003 Free Software Foundation, Inc. -This config.status script is free software; the Free Software Foundation -gives unlimited permission to copy, distribute and modify it." -srcdir=. -INSTALL="/usr/bin/install -c" -# If no file are specified by the user, then we need to provide default -# value. By we need to know if files were specified by the user. -ac_need_defaults=: -while test $# != 0 -do - case $1 in - --*=*) - ac_option=`expr "x$1" : 'x\([^=]*\)='` - ac_optarg=`expr "x$1" : 'x[^=]*=\(.*\)'` - ac_shift=: - ;; - -*) - ac_option=$1 - ac_optarg=$2 - ac_shift=shift - ;; - *) # This is not an option, so the user has probably given explicit - # arguments. - ac_option=$1 - ac_need_defaults=false;; - esac - - case $ac_option in - # Handling of the options. - -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) - ac_cs_recheck=: ;; - --version | --vers* | -V ) - echo "$ac_cs_version"; exit 0 ;; - --he | --h) - # Conflict between --help and --header - { { echo "$as_me:$LINENO: error: ambiguous option: $1 -Try \`$0 --help' for more information." >&5 -echo "$as_me: error: ambiguous option: $1 -Try \`$0 --help' for more information." >&2;} - { (exit 1); exit 1; }; };; - --help | --hel | -h ) - echo "$ac_cs_usage"; exit 0 ;; - --debug | --d* | -d ) - debug=: ;; - --file | --fil | --fi | --f ) - $ac_shift - CONFIG_FILES="$CONFIG_FILES $ac_optarg" - ac_need_defaults=false;; - --header | --heade | --head | --hea ) - $ac_shift - CONFIG_HEADERS="$CONFIG_HEADERS $ac_optarg" - ac_need_defaults=false;; - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil | --si | --s) - ac_cs_silent=: ;; - - # This is an error. - -*) { { echo "$as_me:$LINENO: error: unrecognized option: $1 -Try \`$0 --help' for more information." >&5 -echo "$as_me: error: unrecognized option: $1 -Try \`$0 --help' for more information." >&2;} - { (exit 1); exit 1; }; } ;; - - *) ac_config_targets="$ac_config_targets $1" ;; - - esac - shift -done - -ac_configure_extra_args= - -if $ac_cs_silent; then - exec 6>/dev/null - ac_configure_extra_args="$ac_configure_extra_args --silent" -fi - -if $ac_cs_recheck; then - echo "running /bin/sh ./configure " '--host=mipsel-linux' '--build=x86_64-linux-gnu' '--sysconfdir=/etc' '--enable-netlink' '--enable-ipv6' '--disable-ripngd' '--disable-ospfd' '--disable-doc' '--disable-ospf6d' '--disable-bgpd' '--disable-bgpd-announce' 'CC=mipsel-uclibc-gcc' 'CFLAGS=-Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections' 'LDFLAGS=-ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC' 'build_alias=x86_64-linux-gnu' 'host_alias=mipsel-linux' $ac_configure_extra_args " --no-create --no-recursion" >&6 - exec /bin/sh ./configure '--host=mipsel-linux' '--build=x86_64-linux-gnu' '--sysconfdir=/etc' '--enable-netlink' '--enable-ipv6' '--disable-ripngd' '--disable-ospfd' '--disable-doc' '--disable-ospf6d' '--disable-bgpd' '--disable-bgpd-announce' 'CC=mipsel-uclibc-gcc' 'CFLAGS=-Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections' 'LDFLAGS=-ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC' 'build_alias=x86_64-linux-gnu' 'host_alias=mipsel-linux' $ac_configure_extra_args --no-create --no-recursion -fi - -# -# INIT-COMMANDS section. -# - -AMDEP_TRUE="" ac_aux_dir="." - -for ac_config_target in $ac_config_targets -do - case "$ac_config_target" in - # Handling of arguments. - "Makefile" ) CONFIG_FILES="$CONFIG_FILES Makefile" ;; - "lib/Makefile" ) CONFIG_FILES="$CONFIG_FILES lib/Makefile" ;; - "zebra/Makefile" ) CONFIG_FILES="$CONFIG_FILES zebra/Makefile" ;; - "ripd/Makefile" ) CONFIG_FILES="$CONFIG_FILES ripd/Makefile" ;; - "ripngd/Makefile" ) CONFIG_FILES="$CONFIG_FILES ripngd/Makefile" ;; - "bgpd/Makefile" ) CONFIG_FILES="$CONFIG_FILES bgpd/Makefile" ;; - "ospfd/Makefile" ) CONFIG_FILES="$CONFIG_FILES ospfd/Makefile" ;; - "ospf6d/Makefile" ) CONFIG_FILES="$CONFIG_FILES ospf6d/Makefile" ;; - "vtysh/Makefile" ) CONFIG_FILES="$CONFIG_FILES vtysh/Makefile" ;; - "doc/Makefile" ) CONFIG_FILES="$CONFIG_FILES doc/Makefile" ;; - "depfiles" ) CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;; - "config.h" ) CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;; - *) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5 -echo "$as_me: error: invalid argument: $ac_config_target" >&2;} - { (exit 1); exit 1; }; };; - esac -done - -# If the user did not use the arguments to specify the items to instantiate, -# then the envvar interface is used. Set only those that are not. -# We use the long form for the default assignment because of an extremely -# bizarre bug on SunOS 4.1.3. -if $ac_need_defaults; then - test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files - test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers - test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands -fi - -# Have a temporary directory for convenience. Make it in the build tree -# simply because there is no reason to put it here, and in addition, -# creating and moving files from /tmp can sometimes cause problems. -# Create a temporary directory, and hook for its removal unless debugging. -$debug || -{ - trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' 0 - trap '{ (exit 1); exit 1; }' 1 2 13 15 -} - -# Create a (secure) tmp directory for tmp files. - -{ - tmp=`(umask 077 && mktemp -d -q "./confstatXXXXXX") 2>/dev/null` && - test -n "$tmp" && test -d "$tmp" -} || -{ - tmp=./confstat$$-$RANDOM - (umask 077 && mkdir $tmp) -} || -{ - echo "$me: cannot create a temporary directory in ." >&2 - { (exit 1); exit 1; } -} - - -# -# CONFIG_FILES section. -# - -# No need to generate the scripts if there are no CONFIG_FILES. -# This happens for instance when ./config.status config.h -if test -n "$CONFIG_FILES"; then - # Protect against being on the right side of a sed subst in config.status. - sed 's/,@/@@/; s/@,/@@/; s/,;t t$/@;t t/; /@;t t$/s/[\\&,]/\\&/g; - s/@@/,@/; s/@@/@,/; s/@;t t$/,;t t/' >$tmp/subs.sed <<\CEOF -s,@SHELL@,/bin/sh,;t t -s,@PATH_SEPARATOR@,:,;t t -s,@PACKAGE_NAME@,,;t t -s,@PACKAGE_TARNAME@,,;t t -s,@PACKAGE_VERSION@,,;t t -s,@PACKAGE_STRING@,,;t t -s,@PACKAGE_BUGREPORT@,,;t t -s,@exec_prefix@,${prefix},;t t -s,@prefix@,/usr/local,;t t -s,@program_transform_name@,s,x,x,,;t t -s,@bindir@,${exec_prefix}/bin,;t t -s,@sbindir@,${exec_prefix}/sbin,;t t -s,@libexecdir@,${exec_prefix}/libexec,;t t -s,@datadir@,${prefix}/share,;t t -s,@sysconfdir@,/etc,;t t -s,@sharedstatedir@,${prefix}/com,;t t -s,@localstatedir@,${prefix}/var,;t t -s,@libdir@,${exec_prefix}/lib,;t t -s,@includedir@,${prefix}/include,;t t -s,@oldincludedir@,/usr/include,;t t -s,@infodir@,${prefix}/info,;t t -s,@mandir@,${prefix}/man,;t t -s,@build_alias@,x86_64-linux-gnu,;t t -s,@host_alias@,mipsel-linux,;t t -s,@target_alias@,,;t t -s,@DEFS@,-DHAVE_CONFIG_H,;t t -s,@ECHO_C@,,;t t -s,@ECHO_N@,-n,;t t -s,@ECHO_T@,,;t t -s,@LIBS@,-lm -lcrypt ,;t t -s,@INSTALL_PROGRAM@,${INSTALL},;t t -s,@INSTALL_SCRIPT@,${INSTALL},;t t -s,@INSTALL_DATA@,${INSTALL} -m 644,;t t -s,@PACKAGE@,zebra,;t t -s,@VERSION@,0.95a,;t t -s,@ACLOCAL@,${SHELL} /home/vicente/tomato/release/src/router/zebra/missing --run aclocal-1.6,;t t -s,@AUTOCONF@,${SHELL} /home/vicente/tomato/release/src/router/zebra/missing --run autoconf,;t t -s,@AUTOMAKE@,${SHELL} /home/vicente/tomato/release/src/router/zebra/missing --run automake-1.6,;t t -s,@AUTOHEADER@,${SHELL} /home/vicente/tomato/release/src/router/zebra/missing --run autoheader,;t t -s,@MAKEINFO@,${SHELL} /home/vicente/tomato/release/src/router/zebra/missing --run makeinfo,;t t -s,@AMTAR@,${SHELL} /home/vicente/tomato/release/src/router/zebra/missing --run tar,;t t -s,@install_sh@,/home/vicente/tomato/release/src/router/zebra/install-sh,;t t -s,@STRIP@,mipsel-uclibc-strip -R .note -R .comment,;t t -s,@ac_ct_STRIP@,,;t t -s,@INSTALL_STRIP_PROGRAM@,${SHELL} $(install_sh) -c -s,;t t -s,@AWK@,gawk,;t t -s,@SET_MAKE@,,;t t -s,@build@,x86_64-pc-linux-gnu,;t t -s,@build_cpu@,x86_64,;t t -s,@build_vendor@,pc,;t t -s,@build_os@,linux-gnu,;t t -s,@host@,mipsel-unknown-linux-gnu,;t t -s,@host_cpu@,mipsel,;t t -s,@host_vendor@,unknown,;t t -s,@host_os@,linux-gnu,;t t -s,@CC@,mipsel-uclibc-gcc,;t t -s,@CFLAGS@,-Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32 -mips32 -ffunction-sections -fdata-sections,;t t -s,@LDFLAGS@,-ffunction-sections -fdata-sections -Wl,--gc-sections -fPIC,;t t -s,@CPPFLAGS@,,;t t -s,@ac_ct_CC@,,;t t -s,@EXEEXT@,,;t t -s,@OBJEXT@,o,;t t -s,@DEPDIR@,.deps,;t t -s,@am__include@,include,;t t -s,@am__quote@,,;t t -s,@AMDEP_TRUE@,,;t t -s,@AMDEP_FALSE@,#,;t t -s,@AMDEPBACKSLASH@,\,;t t -s,@CCDEPMODE@,depmode=gcc3,;t t -s,@CPP@,mipsel-uclibc-gcc -E,;t t -s,@AR@,mipsel-uclibc-ar,;t t -s,@ac_ct_AR@,,;t t -s,@RANLIB@,mipsel-uclibc-ranlib,;t t -s,@ac_ct_RANLIB@,,;t t -s,@EGREP@,grep -E,;t t -s,@MULTIPATH_NUM@,1,;t t -s,@LIBPAM@,,;t t -s,@RT_METHOD@,rt_netlink.o,;t t -s,@KERNEL_METHOD@,,;t t -s,@OTHER_METHOD@,,;t t -s,@RTREAD_METHOD@,rtread_netlink.o,;t t -s,@IF_METHOD@,if_netlink.o,;t t -s,@IF_PROC@,if_proc.o,;t t -s,@IPFORWARD@,ipforward_proc.o,;t t -s,@LIB_IPV6@,,;t t -s,@ZEBRA@,zebra,;t t -s,@BGPD@,,;t t -s,@RIPD@,ripd,;t t -s,@RIPNGD@,,;t t -s,@OSPFD@,,;t t -s,@OSPF6D@,,;t t -s,@VTYSH@,,;t t -s,@INCLUDES@,,;t t -s,@CURSES@,,;t t -s,@LIB_REGEX@,,;t t -s,@LIBOBJS@,,;t t -s,@LTLIBOBJS@,,;t t -CEOF - - # Split the substitutions into bite-sized pieces for seds with - # small command number limits, like on Digital OSF/1 and HP-UX. - ac_max_sed_lines=48 - ac_sed_frag=1 # Number of current file. - ac_beg=1 # First line for current file. - ac_end=$ac_max_sed_lines # Line after last line for current file. - ac_more_lines=: - ac_sed_cmds= - while $ac_more_lines; do - if test $ac_beg -gt 1; then - sed "1,${ac_beg}d; ${ac_end}q" $tmp/subs.sed >$tmp/subs.frag - else - sed "${ac_end}q" $tmp/subs.sed >$tmp/subs.frag - fi - if test ! -s $tmp/subs.frag; then - ac_more_lines=false - else - # The purpose of the label and of the branching condition is to - # speed up the sed processing (if there are no `@' at all, there - # is no need to browse any of the substitutions). - # These are the two extra sed commands mentioned above. - (echo ':t - /@[a-zA-Z_][a-zA-Z_0-9]*@/!b' && cat $tmp/subs.frag) >$tmp/subs-$ac_sed_frag.sed - if test -z "$ac_sed_cmds"; then - ac_sed_cmds="sed -f $tmp/subs-$ac_sed_frag.sed" - else - ac_sed_cmds="$ac_sed_cmds | sed -f $tmp/subs-$ac_sed_frag.sed" - fi - ac_sed_frag=`expr $ac_sed_frag + 1` - ac_beg=$ac_end - ac_end=`expr $ac_end + $ac_max_sed_lines` - fi - done - if test -z "$ac_sed_cmds"; then - ac_sed_cmds=cat - fi -fi # test -n "$CONFIG_FILES" - -for ac_file in : $CONFIG_FILES; do test "x$ac_file" = x: && continue - # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in". - case $ac_file in - - | *:- | *:-:* ) # input from stdin - cat >$tmp/stdin - ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; - *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; - * ) ac_file_in=$ac_file.in ;; - esac - - # Compute @srcdir@, @top_srcdir@, and @INSTALL@ for subdirectories. - ac_dir=`(dirname "$ac_file") 2>/dev/null || -$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$ac_file" : 'X\(//\)[^/]' \| \ - X"$ac_file" : 'X\(//\)$' \| \ - X"$ac_file" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$ac_file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - { if $as_mkdir_p; then - mkdir -p "$ac_dir" - else - as_dir="$ac_dir" - as_dirs= - while test ! -d "$as_dir"; do - as_dirs="$as_dir $as_dirs" - as_dir=`(dirname "$as_dir") 2>/dev/null || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - done - test ! -n "$as_dirs" || mkdir $as_dirs - fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5 -echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;} - { (exit 1); exit 1; }; }; } - - ac_builddir=. - -if test "$ac_dir" != .; then - ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` - # A "../" for each directory in $ac_dir_suffix. - ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'` -else - ac_dir_suffix= ac_top_builddir= -fi - -case $srcdir in - .) # No --srcdir option. We are building in place. - ac_srcdir=. - if test -z "$ac_top_builddir"; then - ac_top_srcdir=. - else - ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'` - fi ;; - [\\/]* | ?:[\\/]* ) # Absolute path. - ac_srcdir=$srcdir$ac_dir_suffix; - ac_top_srcdir=$srcdir ;; - *) # Relative path. - ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix - ac_top_srcdir=$ac_top_builddir$srcdir ;; -esac - -# Do not use `cd foo && pwd` to compute absolute paths, because -# the directories may not exist. -case `pwd` in -.) ac_abs_builddir="$ac_dir";; -*) - case "$ac_dir" in - .) ac_abs_builddir=`pwd`;; - [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";; - *) ac_abs_builddir=`pwd`/"$ac_dir";; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_builddir=${ac_top_builddir}.;; -*) - case ${ac_top_builddir}. in - .) ac_abs_top_builddir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;; - *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_srcdir=$ac_srcdir;; -*) - case $ac_srcdir in - .) ac_abs_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;; - *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_srcdir=$ac_top_srcdir;; -*) - case $ac_top_srcdir in - .) ac_abs_top_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;; - *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;; - esac;; -esac - - - case $INSTALL in - [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;; - *) ac_INSTALL=$ac_top_builddir$INSTALL ;; - esac - - if test x"$ac_file" != x-; then - { echo "$as_me:$LINENO: creating $ac_file" >&5 -echo "$as_me: creating $ac_file" >&6;} - rm -f "$ac_file" - fi - # Let's still pretend it is `configure' which instantiates (i.e., don't - # use $as_me), people would be surprised to read: - # /* config.h. Generated by config.status. */ - if test x"$ac_file" = x-; then - configure_input= - else - configure_input="$ac_file. " - fi - configure_input=$configure_input"Generated from `echo $ac_file_in | - sed 's,.*/,,'` by configure." - - # First look for the input files in the build tree, otherwise in the - # src tree. - ac_file_inputs=`IFS=: - for f in $ac_file_in; do - case $f in - -) echo $tmp/stdin ;; - [\\/$]*) - # Absolute (can't be DOS-style, as IFS=:) - test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 -echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - echo "$f";; - *) # Relative - if test -f "$f"; then - # Build tree - echo "$f" - elif test -f "$srcdir/$f"; then - # Source tree - echo "$srcdir/$f" - else - # /dev/null tree - { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 -echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - fi;; - esac - done` || { (exit 1); exit 1; } - sed "/^[ ]*VPATH[ ]*=/{ -s/:*\$(srcdir):*/:/; -s/:*\${srcdir}:*/:/; -s/:*@srcdir@:*/:/; -s/^\([^=]*=[ ]*\):*/\1/; -s/:*$//; -s/^[^=]*=[ ]*$//; -} - -:t -/@[a-zA-Z_][a-zA-Z_0-9]*@/!b -s,@configure_input@,$configure_input,;t t -s,@srcdir@,$ac_srcdir,;t t -s,@abs_srcdir@,$ac_abs_srcdir,;t t -s,@top_srcdir@,$ac_top_srcdir,;t t -s,@abs_top_srcdir@,$ac_abs_top_srcdir,;t t -s,@builddir@,$ac_builddir,;t t -s,@abs_builddir@,$ac_abs_builddir,;t t -s,@top_builddir@,$ac_top_builddir,;t t -s,@abs_top_builddir@,$ac_abs_top_builddir,;t t -s,@INSTALL@,$ac_INSTALL,;t t -" $ac_file_inputs | (eval "$ac_sed_cmds") >$tmp/out - rm -f $tmp/stdin - if test x"$ac_file" != x-; then - mv $tmp/out $ac_file - else - cat $tmp/out - rm -f $tmp/out - fi - -done - -# -# CONFIG_HEADER section. -# - -# These sed commands are passed to sed as "A NAME B NAME C VALUE D", where -# NAME is the cpp macro being defined and VALUE is the value it is being given. -# -# ac_d sets the value in "#define NAME VALUE" lines. -ac_dA='s,^\([ ]*\)#\([ ]*define[ ][ ]*\)' -ac_dB='[ ].*$,\1#\2' -ac_dC=' ' -ac_dD=',;t' -# ac_u turns "#undef NAME" without trailing blanks into "#define NAME VALUE". -ac_uA='s,^\([ ]*\)#\([ ]*\)undef\([ ][ ]*\)' -ac_uB='$,\1#\2define\3' -ac_uC=' ' -ac_uD=',;t' - -for ac_file in : $CONFIG_HEADERS; do test "x$ac_file" = x: && continue - # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in". - case $ac_file in - - | *:- | *:-:* ) # input from stdin - cat >$tmp/stdin - ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; - *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; - * ) ac_file_in=$ac_file.in ;; - esac - - test x"$ac_file" != x- && { echo "$as_me:$LINENO: creating $ac_file" >&5 -echo "$as_me: creating $ac_file" >&6;} - - # First look for the input files in the build tree, otherwise in the - # src tree. - ac_file_inputs=`IFS=: - for f in $ac_file_in; do - case $f in - -) echo $tmp/stdin ;; - [\\/$]*) - # Absolute (can't be DOS-style, as IFS=:) - test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 -echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - # Do quote $f, to prevent DOS paths from being IFS'd. - echo "$f";; - *) # Relative - if test -f "$f"; then - # Build tree - echo "$f" - elif test -f "$srcdir/$f"; then - # Source tree - echo "$srcdir/$f" - else - # /dev/null tree - { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 -echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - fi;; - esac - done` || { (exit 1); exit 1; } - # Remove the trailing spaces. - sed 's/[ ]*$//' $ac_file_inputs >$tmp/in - - # Handle all the #define templates only if necessary. - if grep "^[ ]*#[ ]*define" $tmp/in >/dev/null; then - # If there are no defines, we may have an empty if/fi - : - cat >$tmp/defines.sed <$tmp/out - rm -f $tmp/in - mv $tmp/out $tmp/in - - cat >$tmp/defines.sed <$tmp/out - rm -f $tmp/in - mv $tmp/out $tmp/in - - fi # grep - - # Handle all the #undef templates - cat >$tmp/undefs.sed <$tmp/out - rm -f $tmp/in - mv $tmp/out $tmp/in - - cat >$tmp/undefs.sed <$tmp/out - rm -f $tmp/in - mv $tmp/out $tmp/in - - # Let's still pretend it is `configure' which instantiates (i.e., don't - # use $as_me), people would be surprised to read: - # /* config.h. Generated by config.status. */ - if test x"$ac_file" = x-; then - echo "/* Generated by configure. */" >$tmp/config.h - else - echo "/* $ac_file. Generated by configure. */" >$tmp/config.h - fi - cat $tmp/in >>$tmp/config.h - rm -f $tmp/in - if test x"$ac_file" != x-; then - if diff $ac_file $tmp/config.h >/dev/null 2>&1; then - { echo "$as_me:$LINENO: $ac_file is unchanged" >&5 -echo "$as_me: $ac_file is unchanged" >&6;} - else - ac_dir=`(dirname "$ac_file") 2>/dev/null || -$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$ac_file" : 'X\(//\)[^/]' \| \ - X"$ac_file" : 'X\(//\)$' \| \ - X"$ac_file" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$ac_file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - { if $as_mkdir_p; then - mkdir -p "$ac_dir" - else - as_dir="$ac_dir" - as_dirs= - while test ! -d "$as_dir"; do - as_dirs="$as_dir $as_dirs" - as_dir=`(dirname "$as_dir") 2>/dev/null || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - done - test ! -n "$as_dirs" || mkdir $as_dirs - fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5 -echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;} - { (exit 1); exit 1; }; }; } - - rm -f $ac_file - mv $tmp/config.h $ac_file - fi - else - cat $tmp/config.h - rm -f $tmp/config.h - fi - # Run the commands associated with the file. - case $ac_file in - config.h ) # update the timestamp -echo 'timestamp for config.h' >"./stamp-h1" - ;; - esac -done - -# -# CONFIG_COMMANDS section. -# -for ac_file in : $CONFIG_COMMANDS; do test "x$ac_file" = x: && continue - ac_dest=`echo "$ac_file" | sed 's,:.*,,'` - ac_source=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_dir=`(dirname "$ac_dest") 2>/dev/null || -$as_expr X"$ac_dest" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$ac_dest" : 'X\(//\)[^/]' \| \ - X"$ac_dest" : 'X\(//\)$' \| \ - X"$ac_dest" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$ac_dest" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - { if $as_mkdir_p; then - mkdir -p "$ac_dir" - else - as_dir="$ac_dir" - as_dirs= - while test ! -d "$as_dir"; do - as_dirs="$as_dir $as_dirs" - as_dir=`(dirname "$as_dir") 2>/dev/null || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - done - test ! -n "$as_dirs" || mkdir $as_dirs - fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5 -echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;} - { (exit 1); exit 1; }; }; } - - ac_builddir=. - -if test "$ac_dir" != .; then - ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` - # A "../" for each directory in $ac_dir_suffix. - ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'` -else - ac_dir_suffix= ac_top_builddir= -fi - -case $srcdir in - .) # No --srcdir option. We are building in place. - ac_srcdir=. - if test -z "$ac_top_builddir"; then - ac_top_srcdir=. - else - ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'` - fi ;; - [\\/]* | ?:[\\/]* ) # Absolute path. - ac_srcdir=$srcdir$ac_dir_suffix; - ac_top_srcdir=$srcdir ;; - *) # Relative path. - ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix - ac_top_srcdir=$ac_top_builddir$srcdir ;; -esac - -# Do not use `cd foo && pwd` to compute absolute paths, because -# the directories may not exist. -case `pwd` in -.) ac_abs_builddir="$ac_dir";; -*) - case "$ac_dir" in - .) ac_abs_builddir=`pwd`;; - [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";; - *) ac_abs_builddir=`pwd`/"$ac_dir";; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_builddir=${ac_top_builddir}.;; -*) - case ${ac_top_builddir}. in - .) ac_abs_top_builddir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;; - *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_srcdir=$ac_srcdir;; -*) - case $ac_srcdir in - .) ac_abs_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;; - *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_srcdir=$ac_top_srcdir;; -*) - case $ac_top_srcdir in - .) ac_abs_top_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;; - *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;; - esac;; -esac - - - { echo "$as_me:$LINENO: executing $ac_dest commands" >&5 -echo "$as_me: executing $ac_dest commands" >&6;} - case $ac_dest in - depfiles ) test x"$AMDEP_TRUE" != x"" || for mf in $CONFIG_FILES; do - # Strip MF so we end up with the name of the file. - mf=`echo "$mf" | sed -e 's/:.*$//'` - # Check whether this is an Automake generated Makefile or not. - # We used to match only the files named `Makefile.in', but - # some people rename them; so instead we look at the file content. - # Grep'ing the first line is not enough: some people post-process - # each Makefile.in and add a new line on top of each file to say so. - # So let's grep whole file. - if grep '^#.*generated by automake' $mf > /dev/null 2>&1; then - dirpart=`(dirname "$mf") 2>/dev/null || -$as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$mf" : 'X\(//\)[^/]' \| \ - X"$mf" : 'X\(//\)$' \| \ - X"$mf" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$mf" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - else - continue - fi - grep '^DEP_FILES *= *[^ #]' < "$mf" > /dev/null || continue - # Extract the definition of DEP_FILES from the Makefile without - # running `make'. - DEPDIR=`sed -n -e '/^DEPDIR = / s///p' < "$mf"` - test -z "$DEPDIR" && continue - # When using ansi2knr, U may be empty or an underscore; expand it - U=`sed -n -e '/^U = / s///p' < "$mf"` - test -d "$dirpart/$DEPDIR" || mkdir "$dirpart/$DEPDIR" - # We invoke sed twice because it is the simplest approach to - # changing $(DEPDIR) to its actual value in the expansion. - for file in `sed -n -e ' - /^DEP_FILES = .*\\\\$/ { - s/^DEP_FILES = // - :loop - s/\\\\$// - p - n - /\\\\$/ b loop - p - } - /^DEP_FILES = / s/^DEP_FILES = //p' < "$mf" | \ - sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do - # Make sure the directory exists. - test -f "$dirpart/$file" && continue - fdir=`(dirname "$file") 2>/dev/null || -$as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$file" : 'X\(//\)[^/]' \| \ - X"$file" : 'X\(//\)$' \| \ - X"$file" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - { if $as_mkdir_p; then - mkdir -p $dirpart/$fdir - else - as_dir=$dirpart/$fdir - as_dirs= - while test ! -d "$as_dir"; do - as_dirs="$as_dir $as_dirs" - as_dir=`(dirname "$as_dir") 2>/dev/null || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - done - test ! -n "$as_dirs" || mkdir $as_dirs - fi || { { echo "$as_me:$LINENO: error: cannot create directory $dirpart/$fdir" >&5 -echo "$as_me: error: cannot create directory $dirpart/$fdir" >&2;} - { (exit 1); exit 1; }; }; } - - # echo "creating $dirpart/$file" - echo '# dummy' > "$dirpart/$file" - done -done - ;; - esac -done - -{ (exit 0); exit 0; } diff --git a/release/src/router/zebra/doc/Makefile b/release/src/router/zebra/doc/Makefile index 7b043913db..242f697d9e 100644 --- a/release/src/router/zebra/doc/Makefile +++ b/release/src/router/zebra/doc/Makefile @@ -38,10 +38,10 @@ pkglibdir = $(libdir)/zebra pkgincludedir = $(includedir)/zebra top_builddir = .. -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/zebra/missing --run aclocal-1.6 -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/zebra/missing --run autoconf -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/zebra/missing --run automake-1.6 -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/zebra/missing --run autoheader +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/zebra/missing --run aclocal-1.6 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/zebra/missing --run autoconf +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/zebra/missing --run automake-1.6 +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/zebra/missing --run autoheader am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd INSTALL = /usr/bin/install -c @@ -65,7 +65,7 @@ host_triplet = mipsel-unknown-linux-gnu EXEEXT = OBJEXT = o PATH_SEPARATOR = : -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/zebra/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/zebra/missing --run tar AR = mipsel-uclibc-ar AWK = gawk BGPD = @@ -98,7 +98,7 @@ VTYSH = ZEBRA = zebra am__include = include am__quote = -install_sh = /home/vicente/tomato/release/src/router/zebra/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/zebra/install-sh info_TEXINFOS = zebra.texi @@ -153,7 +153,7 @@ zebra.dvi: zebra.texi $(zebra_TEXINFOS) && $(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) \ `echo $< | sed 's,.*/,,'` -MAKEINFO = ${SHELL} /home/vicente/tomato/release/src/router/zebra/missing --run makeinfo +MAKEINFO = ${SHELL} /home/vicente/repos/tomato/release/src/router/zebra/missing --run makeinfo TEXI2DVI = texi2dvi DVIPS = dvips .dvi.ps: diff --git a/release/src/router/zebra/lib/Makefile b/release/src/router/zebra/lib/Makefile index f0436cbc99..031aef528d 100644 --- a/release/src/router/zebra/lib/Makefile +++ b/release/src/router/zebra/lib/Makefile @@ -38,10 +38,10 @@ pkglibdir = $(libdir)/zebra pkgincludedir = $(includedir)/zebra top_builddir = .. -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/zebra/missing --run aclocal-1.6 -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/zebra/missing --run autoconf -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/zebra/missing --run automake-1.6 -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/zebra/missing --run autoheader +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/zebra/missing --run aclocal-1.6 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/zebra/missing --run autoconf +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/zebra/missing --run automake-1.6 +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/zebra/missing --run autoheader am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd INSTALL = /usr/bin/install -c @@ -65,7 +65,7 @@ host_triplet = mipsel-unknown-linux-gnu EXEEXT = OBJEXT = o PATH_SEPARATOR = : -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/zebra/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/zebra/missing --run tar AR = mipsel-uclibc-ar AWK = gawk BGPD = @@ -99,7 +99,7 @@ VTYSH = ZEBRA = zebra am__include = include am__quote = -install_sh = /home/vicente/tomato/release/src/router/zebra/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/zebra/install-sh DEFS = -DHAVE_CONFIG_H -DSYSCONFDIR=\"$(sysconfdir)/\" noinst_LIBRARIES = libzebra.a libzebra.so diff --git a/release/src/router/zebra/ospf6d/Makefile b/release/src/router/zebra/ospf6d/Makefile index 008f71ed2a..e31f2733b7 100644 --- a/release/src/router/zebra/ospf6d/Makefile +++ b/release/src/router/zebra/ospf6d/Makefile @@ -38,10 +38,10 @@ pkglibdir = $(libdir)/zebra pkgincludedir = $(includedir)/zebra top_builddir = .. -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/zebra/missing --run aclocal-1.6 -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/zebra/missing --run autoconf -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/zebra/missing --run automake-1.6 -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/zebra/missing --run autoheader +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/zebra/missing --run aclocal-1.6 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/zebra/missing --run autoconf +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/zebra/missing --run automake-1.6 +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/zebra/missing --run autoheader am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd INSTALL = /usr/bin/install -c @@ -65,7 +65,7 @@ host_triplet = mipsel-unknown-linux-gnu EXEEXT = OBJEXT = o PATH_SEPARATOR = : -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/zebra/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/zebra/missing --run tar AR = mipsel-uclibc-ar AWK = gawk BGPD = @@ -99,7 +99,7 @@ VTYSH = ZEBRA = zebra am__include = include am__quote = -install_sh = /home/vicente/tomato/release/src/router/zebra/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/zebra/install-sh DEFS = -DHAVE_CONFIG_H -DSYSCONFDIR=\"$(sysconfdir)/\" INSTALL_SDATA = /usr/bin/install -c -m 600 diff --git a/release/src/router/zebra/ospfd/Makefile b/release/src/router/zebra/ospfd/Makefile index fbde756928..6bc8d19de0 100644 --- a/release/src/router/zebra/ospfd/Makefile +++ b/release/src/router/zebra/ospfd/Makefile @@ -38,10 +38,10 @@ pkglibdir = $(libdir)/zebra pkgincludedir = $(includedir)/zebra top_builddir = .. -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/zebra/missing --run aclocal-1.6 -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/zebra/missing --run autoconf -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/zebra/missing --run automake-1.6 -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/zebra/missing --run autoheader +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/zebra/missing --run aclocal-1.6 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/zebra/missing --run autoconf +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/zebra/missing --run automake-1.6 +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/zebra/missing --run autoheader am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd INSTALL = /usr/bin/install -c @@ -65,7 +65,7 @@ host_triplet = mipsel-unknown-linux-gnu EXEEXT = OBJEXT = o PATH_SEPARATOR = : -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/zebra/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/zebra/missing --run tar AR = mipsel-uclibc-ar AWK = gawk BGPD = @@ -99,7 +99,7 @@ VTYSH = ZEBRA = zebra am__include = include am__quote = -install_sh = /home/vicente/tomato/release/src/router/zebra/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/zebra/install-sh DEFS = -DHAVE_CONFIG_H $(LOCAL_OPTS) -DSYSCONFDIR=\"$(sysconfdir)/\" INSTALL_SDATA = /usr/bin/install -c -m 600 diff --git a/release/src/router/zebra/ripd/Makefile b/release/src/router/zebra/ripd/Makefile index 494ecadf4d..80933fe126 100644 --- a/release/src/router/zebra/ripd/Makefile +++ b/release/src/router/zebra/ripd/Makefile @@ -38,10 +38,10 @@ pkglibdir = $(libdir)/zebra pkgincludedir = $(includedir)/zebra top_builddir = .. -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/zebra/missing --run aclocal-1.6 -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/zebra/missing --run autoconf -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/zebra/missing --run automake-1.6 -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/zebra/missing --run autoheader +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/zebra/missing --run aclocal-1.6 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/zebra/missing --run autoconf +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/zebra/missing --run automake-1.6 +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/zebra/missing --run autoheader am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd INSTALL = /usr/bin/install -c @@ -65,7 +65,7 @@ host_triplet = mipsel-unknown-linux-gnu EXEEXT = OBJEXT = o PATH_SEPARATOR = : -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/zebra/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/zebra/missing --run tar AR = mipsel-uclibc-ar AWK = gawk BGPD = @@ -99,7 +99,7 @@ VTYSH = ZEBRA = zebra am__include = include am__quote = -install_sh = /home/vicente/tomato/release/src/router/zebra/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/zebra/install-sh DEFS = -DHAVE_CONFIG_H -DSYSCONFDIR=\"$(sysconfdir)/\" INSTALL_SDATA = /usr/bin/install -c -m 600 diff --git a/release/src/router/zebra/ripngd/Makefile b/release/src/router/zebra/ripngd/Makefile index 0a0a33de5b..9323f9d3f9 100644 --- a/release/src/router/zebra/ripngd/Makefile +++ b/release/src/router/zebra/ripngd/Makefile @@ -38,10 +38,10 @@ pkglibdir = $(libdir)/zebra pkgincludedir = $(includedir)/zebra top_builddir = .. -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/zebra/missing --run aclocal-1.6 -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/zebra/missing --run autoconf -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/zebra/missing --run automake-1.6 -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/zebra/missing --run autoheader +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/zebra/missing --run aclocal-1.6 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/zebra/missing --run autoconf +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/zebra/missing --run automake-1.6 +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/zebra/missing --run autoheader am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd INSTALL = /usr/bin/install -c @@ -65,7 +65,7 @@ host_triplet = mipsel-unknown-linux-gnu EXEEXT = OBJEXT = o PATH_SEPARATOR = : -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/zebra/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/zebra/missing --run tar AR = mipsel-uclibc-ar AWK = gawk BGPD = @@ -99,7 +99,7 @@ VTYSH = ZEBRA = zebra am__include = include am__quote = -install_sh = /home/vicente/tomato/release/src/router/zebra/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/zebra/install-sh DEFS = -DHAVE_CONFIG_H -DSYSCONFDIR=\"$(sysconfdir)/\" INSTALL_SDATA = /usr/bin/install -c -m 600 diff --git a/release/src/router/zebra/vtysh/Makefile b/release/src/router/zebra/vtysh/Makefile index 9a0e3bcebe..d49674bdd8 100644 --- a/release/src/router/zebra/vtysh/Makefile +++ b/release/src/router/zebra/vtysh/Makefile @@ -38,10 +38,10 @@ pkglibdir = $(libdir)/zebra pkgincludedir = $(includedir)/zebra top_builddir = .. -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/zebra/missing --run aclocal-1.6 -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/zebra/missing --run autoconf -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/zebra/missing --run automake-1.6 -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/zebra/missing --run autoheader +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/zebra/missing --run aclocal-1.6 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/zebra/missing --run autoconf +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/zebra/missing --run automake-1.6 +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/zebra/missing --run autoheader am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd INSTALL = /usr/bin/install -c @@ -65,7 +65,7 @@ host_triplet = mipsel-unknown-linux-gnu EXEEXT = OBJEXT = o PATH_SEPARATOR = : -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/zebra/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/zebra/missing --run tar AR = mipsel-uclibc-ar AWK = gawk BGPD = @@ -99,7 +99,7 @@ VTYSH = ZEBRA = zebra am__include = include am__quote = -install_sh = /home/vicente/tomato/release/src/router/zebra/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/zebra/install-sh DEFS = -DHAVE_CONFIG_H -DSYSCONFDIR=\"$(sysconfdir)/\" LIBS = -lm -lcrypt diff --git a/release/src/router/zebra/zebra/Makefile b/release/src/router/zebra/zebra/Makefile index ebf8e87024..889bd5d934 100644 --- a/release/src/router/zebra/zebra/Makefile +++ b/release/src/router/zebra/zebra/Makefile @@ -38,10 +38,10 @@ pkglibdir = $(libdir)/zebra pkgincludedir = $(includedir)/zebra top_builddir = .. -ACLOCAL = ${SHELL} /home/vicente/tomato/release/src/router/zebra/missing --run aclocal-1.6 -AUTOCONF = ${SHELL} /home/vicente/tomato/release/src/router/zebra/missing --run autoconf -AUTOMAKE = ${SHELL} /home/vicente/tomato/release/src/router/zebra/missing --run automake-1.6 -AUTOHEADER = ${SHELL} /home/vicente/tomato/release/src/router/zebra/missing --run autoheader +ACLOCAL = ${SHELL} /home/vicente/repos/tomato/release/src/router/zebra/missing --run aclocal-1.6 +AUTOCONF = ${SHELL} /home/vicente/repos/tomato/release/src/router/zebra/missing --run autoconf +AUTOMAKE = ${SHELL} /home/vicente/repos/tomato/release/src/router/zebra/missing --run automake-1.6 +AUTOHEADER = ${SHELL} /home/vicente/repos/tomato/release/src/router/zebra/missing --run autoheader am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd INSTALL = /usr/bin/install -c @@ -65,7 +65,7 @@ host_triplet = mipsel-unknown-linux-gnu EXEEXT = OBJEXT = o PATH_SEPARATOR = : -AMTAR = ${SHELL} /home/vicente/tomato/release/src/router/zebra/missing --run tar +AMTAR = ${SHELL} /home/vicente/repos/tomato/release/src/router/zebra/missing --run tar AR = mipsel-uclibc-ar AWK = gawk BGPD = @@ -100,7 +100,7 @@ VTYSH = ZEBRA = zebra am__include = include am__quote = -install_sh = /home/vicente/tomato/release/src/router/zebra/install-sh +install_sh = /home/vicente/repos/tomato/release/src/router/zebra/install-sh DEFS = -DHAVE_CONFIG_H -DSYSCONFDIR=\"$(sysconfdir)/\" -DMULTIPATH_NUM=1 INSTALL_SDATA = /usr/bin/install -c -m 600 diff --git a/release/src/router/zlib/Makefile b/release/src/router/zlib/Makefile deleted file mode 100644 index 6bba86c73f..0000000000 --- a/release/src/router/zlib/Makefile +++ /dev/null @@ -1,5 +0,0 @@ -all: - -@echo "Please use ./configure first. Thank you." - -distclean: - make -f Makefile.in distclean diff --git a/release/src/router/zlib/zconf.h b/release/src/router/zlib/zconf.h deleted file mode 100644 index 02ce56c431..0000000000 --- a/release/src/router/zlib/zconf.h +++ /dev/null @@ -1,428 +0,0 @@ -/* zconf.h -- configuration of the zlib compression library - * Copyright (C) 1995-2010 Jean-loup Gailly. - * For conditions of distribution and use, see copyright notice in zlib.h - */ - -/* @(#) $Id$ */ - -#ifndef ZCONF_H -#define ZCONF_H - -/* - * If you *really* need a unique prefix for all types and library functions, - * compile with -DZ_PREFIX. The "standard" zlib should be compiled without it. - * Even better than compiling with -DZ_PREFIX would be to use configure to set - * this permanently in zconf.h using "./configure --zprefix". - */ -#ifdef Z_PREFIX /* may be set to #if 1 by ./configure */ - -/* all linked symbols */ -# define _dist_code z__dist_code -# define _length_code z__length_code -# define _tr_align z__tr_align -# define _tr_flush_block z__tr_flush_block -# define _tr_init z__tr_init -# define _tr_stored_block z__tr_stored_block -# define _tr_tally z__tr_tally -# define adler32 z_adler32 -# define adler32_combine z_adler32_combine -# define adler32_combine64 z_adler32_combine64 -# define compress z_compress -# define compress2 z_compress2 -# define compressBound z_compressBound -# define crc32 z_crc32 -# define crc32_combine z_crc32_combine -# define crc32_combine64 z_crc32_combine64 -# define deflate z_deflate -# define deflateBound z_deflateBound -# define deflateCopy z_deflateCopy -# define deflateEnd z_deflateEnd -# define deflateInit2_ z_deflateInit2_ -# define deflateInit_ z_deflateInit_ -# define deflateParams z_deflateParams -# define deflatePrime z_deflatePrime -# define deflateReset z_deflateReset -# define deflateSetDictionary z_deflateSetDictionary -# define deflateSetHeader z_deflateSetHeader -# define deflateTune z_deflateTune -# define deflate_copyright z_deflate_copyright -# define get_crc_table z_get_crc_table -# define gz_error z_gz_error -# define gz_intmax z_gz_intmax -# define gz_strwinerror z_gz_strwinerror -# define gzbuffer z_gzbuffer -# define gzclearerr z_gzclearerr -# define gzclose z_gzclose -# define gzclose_r z_gzclose_r -# define gzclose_w z_gzclose_w -# define gzdirect z_gzdirect -# define gzdopen z_gzdopen -# define gzeof z_gzeof -# define gzerror z_gzerror -# define gzflush z_gzflush -# define gzgetc z_gzgetc -# define gzgets z_gzgets -# define gzoffset z_gzoffset -# define gzoffset64 z_gzoffset64 -# define gzopen z_gzopen -# define gzopen64 z_gzopen64 -# define gzprintf z_gzprintf -# define gzputc z_gzputc -# define gzputs z_gzputs -# define gzread z_gzread -# define gzrewind z_gzrewind -# define gzseek z_gzseek -# define gzseek64 z_gzseek64 -# define gzsetparams z_gzsetparams -# define gztell z_gztell -# define gztell64 z_gztell64 -# define gzungetc z_gzungetc -# define gzwrite z_gzwrite -# define inflate z_inflate -# define inflateBack z_inflateBack -# define inflateBackEnd z_inflateBackEnd -# define inflateBackInit_ z_inflateBackInit_ -# define inflateCopy z_inflateCopy -# define inflateEnd z_inflateEnd -# define inflateGetHeader z_inflateGetHeader -# define inflateInit2_ z_inflateInit2_ -# define inflateInit_ z_inflateInit_ -# define inflateMark z_inflateMark -# define inflatePrime z_inflatePrime -# define inflateReset z_inflateReset -# define inflateReset2 z_inflateReset2 -# define inflateSetDictionary z_inflateSetDictionary -# define inflateSync z_inflateSync -# define inflateSyncPoint z_inflateSyncPoint -# define inflateUndermine z_inflateUndermine -# define inflate_copyright z_inflate_copyright -# define inflate_fast z_inflate_fast -# define inflate_table z_inflate_table -# define uncompress z_uncompress -# define zError z_zError -# define zcalloc z_zcalloc -# define zcfree z_zcfree -# define zlibCompileFlags z_zlibCompileFlags -# define zlibVersion z_zlibVersion - -/* all zlib typedefs in zlib.h and zconf.h */ -# define Byte z_Byte -# define Bytef z_Bytef -# define alloc_func z_alloc_func -# define charf z_charf -# define free_func z_free_func -# define gzFile z_gzFile -# define gz_header z_gz_header -# define gz_headerp z_gz_headerp -# define in_func z_in_func -# define intf z_intf -# define out_func z_out_func -# define uInt z_uInt -# define uIntf z_uIntf -# define uLong z_uLong -# define uLongf z_uLongf -# define voidp z_voidp -# define voidpc z_voidpc -# define voidpf z_voidpf - -/* all zlib structs in zlib.h and zconf.h */ -# define gz_header_s z_gz_header_s -# define internal_state z_internal_state - -#endif - -#if defined(__MSDOS__) && !defined(MSDOS) -# define MSDOS -#endif -#if (defined(OS_2) || defined(__OS2__)) && !defined(OS2) -# define OS2 -#endif -#if defined(_WINDOWS) && !defined(WINDOWS) -# define WINDOWS -#endif -#if defined(_WIN32) || defined(_WIN32_WCE) || defined(__WIN32__) -# ifndef WIN32 -# define WIN32 -# endif -#endif -#if (defined(MSDOS) || defined(OS2) || defined(WINDOWS)) && !defined(WIN32) -# if !defined(__GNUC__) && !defined(__FLAT__) && !defined(__386__) -# ifndef SYS16BIT -# define SYS16BIT -# endif -# endif -#endif - -/* - * Compile with -DMAXSEG_64K if the alloc function cannot allocate more - * than 64k bytes at a time (needed on systems with 16-bit int). - */ -#ifdef SYS16BIT -# define MAXSEG_64K -#endif -#ifdef MSDOS -# define UNALIGNED_OK -#endif - -#ifdef __STDC_VERSION__ -# ifndef STDC -# define STDC -# endif -# if __STDC_VERSION__ >= 199901L -# ifndef STDC99 -# define STDC99 -# endif -# endif -#endif -#if !defined(STDC) && (defined(__STDC__) || defined(__cplusplus)) -# define STDC -#endif -#if !defined(STDC) && (defined(__GNUC__) || defined(__BORLANDC__)) -# define STDC -#endif -#if !defined(STDC) && (defined(MSDOS) || defined(WINDOWS) || defined(WIN32)) -# define STDC -#endif -#if !defined(STDC) && (defined(OS2) || defined(__HOS_AIX__)) -# define STDC -#endif - -#if defined(__OS400__) && !defined(STDC) /* iSeries (formerly AS/400). */ -# define STDC -#endif - -#ifndef STDC -# ifndef const /* cannot use !defined(STDC) && !defined(const) on Mac */ -# define const /* note: need a more gentle solution here */ -# endif -#endif - -/* Some Mac compilers merge all .h files incorrectly: */ -#if defined(__MWERKS__)||defined(applec)||defined(THINK_C)||defined(__SC__) -# define NO_DUMMY_DECL -#endif - -/* Maximum value for memLevel in deflateInit2 */ -#ifndef MAX_MEM_LEVEL -# ifdef MAXSEG_64K -# define MAX_MEM_LEVEL 8 -# else -# define MAX_MEM_LEVEL 9 -# endif -#endif - -/* Maximum value for windowBits in deflateInit2 and inflateInit2. - * WARNING: reducing MAX_WBITS makes minigzip unable to extract .gz files - * created by gzip. (Files created by minigzip can still be extracted by - * gzip.) - */ -#ifndef MAX_WBITS -# define MAX_WBITS 15 /* 32K LZ77 window */ -#endif - -/* The memory requirements for deflate are (in bytes): - (1 << (windowBits+2)) + (1 << (memLevel+9)) - that is: 128K for windowBits=15 + 128K for memLevel = 8 (default values) - plus a few kilobytes for small objects. For example, if you want to reduce - the default memory requirements from 256K to 128K, compile with - make CFLAGS="-O -DMAX_WBITS=14 -DMAX_MEM_LEVEL=7" - Of course this will generally degrade compression (there's no free lunch). - - The memory requirements for inflate are (in bytes) 1 << windowBits - that is, 32K for windowBits=15 (default value) plus a few kilobytes - for small objects. -*/ - - /* Type declarations */ - -#ifndef OF /* function prototypes */ -# ifdef STDC -# define OF(args) args -# else -# define OF(args) () -# endif -#endif - -/* The following definitions for FAR are needed only for MSDOS mixed - * model programming (small or medium model with some far allocations). - * This was tested only with MSC; for other MSDOS compilers you may have - * to define NO_MEMCPY in zutil.h. If you don't need the mixed model, - * just define FAR to be empty. - */ -#ifdef SYS16BIT -# if defined(M_I86SM) || defined(M_I86MM) - /* MSC small or medium model */ -# define SMALL_MEDIUM -# ifdef _MSC_VER -# define FAR _far -# else -# define FAR far -# endif -# endif -# if (defined(__SMALL__) || defined(__MEDIUM__)) - /* Turbo C small or medium model */ -# define SMALL_MEDIUM -# ifdef __BORLANDC__ -# define FAR _far -# else -# define FAR far -# endif -# endif -#endif - -#if defined(WINDOWS) || defined(WIN32) - /* If building or using zlib as a DLL, define ZLIB_DLL. - * This is not mandatory, but it offers a little performance increase. - */ -# ifdef ZLIB_DLL -# if defined(WIN32) && (!defined(__BORLANDC__) || (__BORLANDC__ >= 0x500)) -# ifdef ZLIB_INTERNAL -# define ZEXTERN extern __declspec(dllexport) -# else -# define ZEXTERN extern __declspec(dllimport) -# endif -# endif -# endif /* ZLIB_DLL */ - /* If building or using zlib with the WINAPI/WINAPIV calling convention, - * define ZLIB_WINAPI. - * Caution: the standard ZLIB1.DLL is NOT compiled using ZLIB_WINAPI. - */ -# ifdef ZLIB_WINAPI -# ifdef FAR -# undef FAR -# endif -# include - /* No need for _export, use ZLIB.DEF instead. */ - /* For complete Windows compatibility, use WINAPI, not __stdcall. */ -# define ZEXPORT WINAPI -# ifdef WIN32 -# define ZEXPORTVA WINAPIV -# else -# define ZEXPORTVA FAR CDECL -# endif -# endif -#endif - -#if defined (__BEOS__) -# ifdef ZLIB_DLL -# ifdef ZLIB_INTERNAL -# define ZEXPORT __declspec(dllexport) -# define ZEXPORTVA __declspec(dllexport) -# else -# define ZEXPORT __declspec(dllimport) -# define ZEXPORTVA __declspec(dllimport) -# endif -# endif -#endif - -#ifndef ZEXTERN -# define ZEXTERN extern -#endif -#ifndef ZEXPORT -# define ZEXPORT -#endif -#ifndef ZEXPORTVA -# define ZEXPORTVA -#endif - -#ifndef FAR -# define FAR -#endif - -#if !defined(__MACTYPES__) -typedef unsigned char Byte; /* 8 bits */ -#endif -typedef unsigned int uInt; /* 16 bits or more */ -typedef unsigned long uLong; /* 32 bits or more */ - -#ifdef SMALL_MEDIUM - /* Borland C/C++ and some old MSC versions ignore FAR inside typedef */ -# define Bytef Byte FAR -#else - typedef Byte FAR Bytef; -#endif -typedef char FAR charf; -typedef int FAR intf; -typedef uInt FAR uIntf; -typedef uLong FAR uLongf; - -#ifdef STDC - typedef void const *voidpc; - typedef void FAR *voidpf; - typedef void *voidp; -#else - typedef Byte const *voidpc; - typedef Byte FAR *voidpf; - typedef Byte *voidp; -#endif - -#ifdef HAVE_UNISTD_H /* may be set to #if 1 by ./configure */ -# define Z_HAVE_UNISTD_H -#endif - -#ifdef STDC -# include /* for off_t */ -#endif - -/* a little trick to accommodate both "#define _LARGEFILE64_SOURCE" and - * "#define _LARGEFILE64_SOURCE 1" as requesting 64-bit operations, (even - * though the former does not conform to the LFS document), but considering - * both "#undef _LARGEFILE64_SOURCE" and "#define _LARGEFILE64_SOURCE 0" as - * equivalently requesting no 64-bit operations - */ -#if -_LARGEFILE64_SOURCE - -1 == 1 -# undef _LARGEFILE64_SOURCE -#endif - -#if defined(Z_HAVE_UNISTD_H) || defined(_LARGEFILE64_SOURCE) -# include /* for SEEK_* and off_t */ -# ifdef VMS -# include /* for off_t */ -# endif -# ifndef z_off_t -# define z_off_t off_t -# endif -#endif - -#ifndef SEEK_SET -# define SEEK_SET 0 /* Seek from beginning of file. */ -# define SEEK_CUR 1 /* Seek from current position. */ -# define SEEK_END 2 /* Set file pointer to EOF plus "offset" */ -#endif - -#ifndef z_off_t -# define z_off_t long -#endif - -#if defined(_LARGEFILE64_SOURCE) && _LFS64_LARGEFILE-0 -# define z_off64_t off64_t -#else -# define z_off64_t z_off_t -#endif - -#if defined(__OS400__) -# define NO_vsnprintf -#endif - -#if defined(__MVS__) -# define NO_vsnprintf -#endif - -/* MVS linker does not support external names larger than 8 bytes */ -#if defined(__MVS__) - #pragma map(deflateInit_,"DEIN") - #pragma map(deflateInit2_,"DEIN2") - #pragma map(deflateEnd,"DEEND") - #pragma map(deflateBound,"DEBND") - #pragma map(inflateInit_,"ININ") - #pragma map(inflateInit2_,"ININ2") - #pragma map(inflateEnd,"INEND") - #pragma map(inflateSync,"INSY") - #pragma map(inflateSetDictionary,"INSEDI") - #pragma map(compressBound,"CMBND") - #pragma map(inflate_table,"INTABL") - #pragma map(inflate_fast,"INFA") - #pragma map(inflate_copyright,"INCOPY") -#endif - -#endif /* ZCONF_H */ -- 2.11.4.GIT

      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%0D!9CkHKUgll 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�)MQBgmmqJBn2{fvtGk#*Z1@wXi@yIF{G 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ⅇ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 Z!~FBWH7?H%^LX4dPltPZUi4$V{{X8XsAT{E diff --git a/release/src/router/openssl/crypto/engine/tb_ecdh.o b/release/src/router/openssl/crypto/engine/tb_ecdh.o deleted file mode 100644 index b1d2987b5b5fd0c0ed98b52b18c58483af00d236..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 3568 zcwVhnO=ufO6#jNsb}UOavJi>wD(xyUScR~-X$nmniokL0(qK|Zq0oY&pS3Mm$wFFz z1A&T?&`UtQx|CuHg&qnnJv&W~z4ub+p*|FvLoS6-aww?tc4oCRBdNwE1EZO5-uJ%u zW_EUF_37G;cMZcpSPV=dLcoI;W_j$kH4?+I) z_MxKMjqX2^zdd9hE}?x2$5sZPJuqM{@&5hqf$TNltL5DBz6IRt0sE}pV|LpzFtH@t zf9*e9w(;n29!H0yW1*1At#mO1q)3zd-)Hsn9>@E=48A!`u}Yf2w@dNoHjDG;64U50 ztsdo($HV3S8;4@h7{$oo;8bzK`O;juUt~LGIb?$zeqi|@9TJag(mEo=#s--Bp*?5A zB%JFOKx2RRS?+d$?a@a)rWNF2YkB1IUFf+4`+a?N^({NUzWL#+_7&%{!}hz=zEk&0 zW!CyF-tL4w-`(@!R7-vdPPyHN({i_Kjjdhkcuuq0f>W=$<<7QKD%W1W%pIJy&Gq*- z*NWS&UtC+gzM+n`2csmR^Q-PwspE}fv`=JEer?}v>1MaV@^*`z#(+@rypuG>QzRWu zV2k6pmFiBBEt}^uhh17Ur`oC4?-U!gDxAu0z3w*rkuTGj@)8i7QIi4}Gro@|V@ zbzO)zCGo4pwRc~b`(wjx3_d8U*PuPRbN`9fTk$dO_E)%JRv7supinEGTWWNgL(IW^q%5~;t+p=@H0YCP%x8cS zB{GI=ZAST@5DuMKF)DJ()$;6L#y)u diff --git a/release/src/router/openssl/crypto/engine/tb_ecdsa.o b/release/src/router/openssl/crypto/engine/tb_ecdsa.o deleted file mode 100644 index a094530e3898b7d030870d3a04b91fba1c7e6414..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 3584 zcwVhmU1%d!6#ix=%{FZs(h_#lZq}V>q49@dSu3b45~;N-l)9jTppxci+6E?RNG8zw zpkdiXAB6ZILP22_d=s+xyvzEa?>;X0(uak8RVdO2A>K20rgQI|WJ_f)%-s9k^PTUU zd*}Yl=d0^)Ynq0jXqZHZfNx^JxioGpd#HdM<{_3NXuseL8<38HVkUp3hZ!JEn%w_3d%oy%e9+I}$3dDsqzU}Am^e0BoX3kyqtCSZ zlt%&gm;P@Yia~u8BZE6)Ld+ab##=jCvh<$rHLJg!Oeh&1av!PE}yc@sL} ze6I-V`)9~67rvs~PZ`Ye!yVP*3R;>-IQL`)EZL3_VzkHQDSgRXr?`*7= zwr#hxy7Jb0Z_3@Bu$x3wkD9$z?mA;Bozp3lW5>1I5xd=F$=juF^Mp}$oKsbvz!8*u z2Ad?yuGTu`5}QBAW-hxldseO6XzZ7o^%|_|Zlhs0-I2R$bh!w4XI0$CMa7=>>%7l1 zPT{eILhJ2R-b?Uewse7)6?icpzXnKW>4%UzVt)M!dlCZg>m=7)V9$ilqrBdLq9+2u zwhnn-h&L(lg1A+Mx5+?q1n)D2=V<&aRC%959>*U^e&*6RrVx(f2grKtki?GQ7wCNt zS?`$XT?f}oBGmg0vfj}cyJsX zdrZ#}`~tnWChOf5^yU!iS&H5xef0NuLD73C=w%S zUGedx!SfG_=0CFtV^UdQU{6@nnotKZsT{Fni#p%`=fUIBeA8G(z2#}(qY-*)5&L8K zdkCQzikBf}LRgGQ_?&{pokv*wB7~<-_8g5v^F}1vlP6~jtwEiQbXnqGQ1~eYry&+Y z`VxdQ3RdH*`r;QSJfYyMcTQ2Ekk`8 zpxA$x>?!=I*#Gj|j%T0q_M>ROsNffUYkAOrDQp4z<0*PC7>~gc)icrH*37Kxy+Z|WzXwpB@ zxE}&3PH5$Gte@v|uV3Kzpw2eHCe>`i_o!w+*>|W;@iSe&%+F%|S?)hE&-X@ro`0|D z1-|wYv;5qP&qjIIh?nDcJMpgjJUYV?DSoHMSxtK{!M4!*gy*6kc8<5p#9W_Oy% zldCC7qm9dh50Gfm5b-A=Sz3JXp#&aC#5W#%pow&1`Heqz8ZEWwFvSalK_=jow{e8i2XeT5P}?qEYy6aQg!@VNrs}-?T0k zU^RelGBda_IDjk791eYH8D%gI7+vZ>!C)+KxykP`__oRR%SKvnWDHoQsar#5b&Hbn z*G8dFgRzhF5YLS!>1mRlCh2Li_Jg=N7_WVWv|n#!NHfo4EiQ}stp@47Tc8{iNFV7n zp<4${-NaQl4w^HCLSM$yXJEOt56SFpbYyLGX8l;%uTzYc!MVTEboH%}zIa{M5G4f* zg0l;phlQ-{zel=rq}$ibdG6ypH{3j%Ql5KI$hi8L?}DfE3a!!iOg1>7%^;UkzL3X`S>9kiLw!AN@T9v9BTam2b;? zjMrK0&qe|K?qAwhmRX?vd#jo8beNB`W}`=rylxJSo_Oyi^FV%op6;%E{rs#`DpT*& z+nrJ^K(4`re*qtn?!3^{>)zyM(*n3yi`2UUYak z*7YXBe3xWH@*PJwFO2JwaQ?j03T{~w-;D@vQNdj!V=V@^fN&f+!_5Q7u>(OIKO)RG zO^LiDjq~}gBFuNx2)?u32>9+I%*P98O5=RKI|%bl7+m$Zd_4&G{zRCMZ=OYIoX__M z!hB0cP^TCO`1-Xl-wz2lSAO&P(ps4Bj>MNn!1sp2mrEj4x%qsrDSQv5c>56WO)7lH z$Wf8T`Fv%CFZ*=B*N=d&sqp=jj9-s06u#pUUj_l+sun(%za;|>Ab9@8n|D~kr6ru^ z{b-s;T-<&q+&$?mX;SZ>ac&n=K!aZFK@cymGshtF8MK*xjp0+9{62|)HXyZxGAa>L z!nQmk+uIadKJjeJnPz*3V#_C=?H;Nx+{STg*roUlu}<80@9APk$$mNWY^(l$#g=bS zw$=IM6=%Ccv3HC6ksC*zroX2=yIa`X@u6q033~@VmB#a)_*}AiUBB_3FA01%)760Gf^P=z@=#iF`{aMdm5dJjYQv9bpyCVGks4M;j#s12(O@Yr~Me)Na z(`T5!x%qLZ-`}=XKzvmcUk`0k1r?{N#fh1E6(jGD702Ek`M?z*e6e-W$jOt%>bz65 zYqfK=ScqR6c{7SwNKM5acd&Jp6dK_NjV&ss(17uZU7DM(M(~>_ZE~hocjOmyT%2xM zD1~MWApV-_{q9=p&$u;+PDki0_f!})xTgcU%>7<>uj&@C&OOx^e7)!|(0K0mxqKbZ zx@WzUdalD#yQ1%TzEr=?J>I>TcJGGHbQE`tai*)Aac4Z-QMP;CI68aV qk2|f5JG03+){}bPy$g6;2JyOBZz>BM=Ke*u4og{4oQQKU8s~p5D~-+o diff --git a/release/src/router/openssl/crypto/engine/tb_rand.o b/release/src/router/openssl/crypto/engine/tb_rand.o deleted file mode 100644 index 587501156795a78a2b31c98b6fd0728389ffd345..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 3568 zcwVhnL1-IC6n(oZJC-F2S%}1Tm3EaFtU_4aG=-)OMI~{a(qPh%LZJmkvevd>B@1Z< z4g@MnLN5XJ>Qag+6nZGQ^z1Y__TEdOhx$-R4!smY$swT5-e)tIFZKn3jr!1hk3~5DU6?RjB=XQS6-aG`>fyZhoEqL z`%qEsM)$eoZx7jrOK6|Mp_Rku_YIhfynpWpAa@D)dMSUnYXNtAz%HwInccPwOf1Uw z-}(=hY&_hb!@)l3SSV)m%U#R>Y0~8W_gMX+$MJ42i*NVStdb`1-D3Qi&Eh;>WEwrD z)uTKLc(C+;<4_D5qZnE29V<>aUz#iTi)@E1hg^`uk1YR#ed2LVT1TYW*Z@;MwC8P@ zg!A1ZXzZUp%iS)rJ^HZ6w1PZrEsuPm3q6-$zpq}t{FYr&=R z3TyoqZ@0pp@9y|;s%5_nr_yf2X}O!V#>O^vJf~T0!Kqi>N@vq4S8A`H=MK)w+Uomj zE2T}>FWq=|?TR|u9*mNN&ab)~<&HOw(LRzv`L%twrJLOb%iAq=8UsSv^N!LOPmy#u zfh~^HDmSVnwrrlu9JXoEoNA|Dzg=q7s&Lk~>vgx`k9?WNl$U_ujG7djYuzMsCqk0 z&y)N@JtE0^dy-xTk=~M~_oq4fd7Rbsev$ODi1e-)>b{RzQcj5aH$~iV-;d*M2;Q>5 zQx?xZEQYAFh+K z#nQYiB@@DOM8YRDEWde#-zE&Cp@9yIlL|UH1iDm{XpPkfaCZ?U^~FmXiNUIC+&COH%{xjJndW%~2qIaofAJu!*rudm}vJdP-YR_>0iFy7`OwRM?lvv<< zEqsUykyg8k6wBsVucCE@kl_9+Wg`rfp!7hGeqr zdNIf@iU>JM(ZebT9)vDl^w4F!d+{W)ryK;&!Xib)_m!P3YC6K zl)F*QcW?M`s%5_nr_yf2X}LSK#`YdpJf~T0!Kqi>N@vF@S8C5+5FMPgjrG?y)=E3B zUwY%sSJcLK)W`xlyXtP2JKh*V`#1vU*7n_&=5-sCvRmpj9{J0jcZ|YVhNKesX;Pe4 zyIi8#@?4_t@mx98PQ8A!)TmYAZ0*(SZo?mWhDO;FKyWWjhIm!;XTq`&@~mTcv?+LR z9m{(bLCmHp@p2L`5#kpC<=%W3YC|F{U!X4~@pjWfbCJG@kjHtw3{6i4lJ6?id0}2s z;ze=G8gG+8dIawSjprHS-qU&4p^oF*w76e+98-wL@dZ>px)8A|^^5dAhpP7r>0N=) zOC#1hgsS&&jNXq>^>Q<@-YjCh2T=9iqlL~({UW_zq3UhU#N*8%*83N#-VM_8q<)d! z-%#~Fk@V&f>)D2?_q#cIJ@SUCcURKOBGy|m)P0|@Vhtd!zaGYo_Wd~C`yuaqh?ADc zKQbfy<`BnZTO_b8?P)_QqnK=cN_N#0=l?WBT%KTBZSU!1-g?~ol&uTaW*(_xx7-u1y zH56ahmsgzegobmt6xMm<^YnK;#OVO1@J@*B08gPV_2)ftUBaCGr(u0J;HUAG=Kn$Q z&*Epz-w*3v;Gf5l=1)mW%y=QhcEHc#In58hQlf{<*+TrBjej}g2TptIwO4-3+g{pf zma4UOGl~#|qfVZ?`1M zePTY%(_)^@GvduN>EYbuk`8y5OZxGAhfCVlKXG|Ztf%>u=s&R_&cWn@SexlZvCmR- z;*Oh~8|JMrFE8G4=3NPSd|#zz#rru)CI5euqT})w$ot7S@7$QY`TS4Y YVg3c+8kc8>c|7jvr^CHHC;GA8e*?a$UjP6A diff --git a/release/src/router/openssl/crypto/engine/tb_store.o b/release/src/router/openssl/crypto/engine/tb_store.o deleted file mode 100644 index 368f7fa7d3ec0cb23e9913d8972f8e6f66f7dbe2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 2876 zcwUuO&ube;6#jM<%a-KC+fLg|seB zD2*sJy%cn54=$yILT?3?o|`6={sB4W=tE0#=%IxYa%fTC+u8Nb%qnp@Fq--1eeZko z^ zu-J!ot`F=}{fz2CpT{hGJILbpfNW&{ZZ7r2rrmuwM;d+7>T{eT?##<^4k=FFkMqO8 zqFAgY{CJMAXzU1cKeQKYn2Za(5_s(KkmhHXKw5p$>Wek0vBaDY$i{j+$H-PF_MqGS zJXyVX@lCt9x_uB@oT-DsFaWD~1*J-2hLz0zpJ zIBtuk=9c$b&twHk5-VWP@@NBgJ8qd)-f+ofm)Gso_L|Kb8Q_v;w}Q41@Dj)H=OGCe~HTZ6hU%$tySVcac^XA_tl!TVU_ohPs}f_D?@IzFOxybH08 zG@^BU16A(}0u9M8)cXpm-mhtK=ds=-BE4Ur>VXa>FZqRfKSR~~L()5iNbeC;y}T*z z(y)Yjzd_Z@W+FWckzUeJ^J>|QG=Qi-V~Dt6UOkO>F5oQ$xJ10u63+u$@aSh9v z%~(DW#_6M+=5-jfQ{lJDIbzbuFDdpHHGlbwV0=o$7UYspPJ*$nC!Z+eF%4(^@0<&- z>@@vu1bEWNDO?Nij*rv$K=S7^za?Rw-IqbX;qxak(Cqg#d|$)A2YnmtZ{c6f4zF7F zuXbk(@)iHA7bCj%W3O549UJ|6mABjFTD{v2!}u|eNHM1vNffhf=ir`km zt+e*qc-q6JkRxljKW0|!n>j7s36m~|Yuvs>f9ANQKS;N^ofZ7C8IgxcYG0=|lN0Yv zYD(Ot$tm&Or%sA{K1nU-Z;B3Lld%=o;XKd0O!o=5^k`n@_Dr0|u9>{ZGme)F;^{oT O6EbImJ7G%bGw(ktd{LAD diff --git a/release/src/router/openssl/crypto/err/err.o b/release/src/router/openssl/crypto/err/err.o deleted file mode 100644 index 642c634ca6dcb92d3a834fc204111b2f081033d4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 24348 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 diff --git a/release/src/router/openssl/crypto/evp/bio_b64.o b/release/src/router/openssl/crypto/evp/bio_b64.o deleted file mode 100644 index 5efd4d5947b3330a852f18b4efcfd7bd5ea1adb6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 8836 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 diff --git a/release/src/router/openssl/crypto/evp/bio_enc.o b/release/src/router/openssl/crypto/evp/bio_enc.o deleted file mode 100644 index 44d9c523eb91a0487987334defcdb22e54902495..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 5976 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 diff --git a/release/src/router/openssl/crypto/evp/bio_md.o b/release/src/router/openssl/crypto/evp/bio_md.o deleted file mode 100644 index d8ee86046b70913dfcd36c0b7de76a6d3acabca1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 4604 zcwUuQUuaWT82{aywzf8FuU)KFqrIt_%{Iw8b>fB_!L~XHP-v4_0~8#oZU?>pz*+;eY=wFkm? zzdz@9zJKQrdB6Yg0mCrh4g-zwIN;_QV2y==-GWP?6H(~nvC(=9s~B78*ZI_Xqw;uZ zY02g6RqIt_cu64&2uZDmN(~Vdpx<9VV2|6JCPw;+UVaaceG$ud3Jvo{h&YRS>Hz zAU3lI3-gwZOOs*3?8gnuA=*tePjnB_0?~G&6GS%={fKBEZbaC}jTCzr7bf|4ko;sB zP=7gQ!w~*cF?Jx;!T!e)pJF}9%-G(PNxf_tsE_m9y)@T=MRhSR?;$zx$4%xF;`^_g zJxc!)@iw|=-TbuD{N=D&=O~?!+qNn5nZj1W@Z>OJiAA`+hLDP~ZavqOY#SA2TN@81 zg^KRF7ll)m)GUFY%L2KL-*ojs2N9@XVbm6)co2k%V z{$R2bb{nt6@kP}>;Wb$nM(-4_8OAA*r)H|P>;akcSmKn-drzvG+pzGDYt1&YR;^mC zggwbkRj1YFZKc?DaBS57FJhsCv2A=vc}-PgtPjK}eMnKPT@-6dWW5F0!OYM*>7jBl=T{9E9mg*jcg_T6 z*Gw95$|b*~=wt$Go+*x&89C2kaEvcg(859p_#>Am$C6`C`E)*85>5~0$HtuT@=D3{ z#%4g=;SGvU1@xApF=ZE8!H$}o&!ZLXc0jCIaLdnj9hzO8;$H=PZ;TW03+fbog?>$% z-9AfV@*P{R?AWh25Wv$JO*a64Uf3?^ACJTEuY2C|-WHAU)*XT$uVBbGggackH2iqi zEV(Y@t%Zm89{hM$h&idvbMel>k9S+c3&X>kfgkT5L*~F8E*>55KD?haycT$PpTdvV zM}_`wnYw)pKi&gNuFH59JiK}M@fz!vkCz@LKD^!QJpbC@;e8K3UX~R1wRtYyH}K;f zCcM3ncoBGbzap@YsOjpKiT4-y@h)n3?eOsagv8sa?D`tKy#r;(`v2hHmq#0x@2h{| zU-!;BZ+~orw{FCccsD4uPOp)CdEnY*T`VoJTnr?;!^u7^i53kE{ zv2QwFq?O`W1}`{tc^w`uK^vjKtdP$W=JgesUlZUP#h&BAIW(KaUIqghHRnEy2)5E#UNJ;Yf z!ddcgqD=mji+(^>(KHX}!031;=OPLJJ>9WF)?Hpk#KYVy??!rninGV0?Q)7KZHo$1 zYX9p@DX|Mosht;@swl?jX>tGn diff --git a/release/src/router/openssl/crypto/evp/bio_ok.o b/release/src/router/openssl/crypto/evp/bio_ok.o deleted file mode 100644 index 26509ba05b233264a8e8411031e17494122d8793..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 7352 zcwVhoYiu0V6+U}+?f4OsiCMzNxM2owY(vszA+Bm5troumY6=Dd3IcUsUOR5qUSn^F zgQ&U!Q~8Ir>w+pJ6+gBvk&uekF7F>a+>liH=~h%~rT%bf5s^SuT2K{LQQhy{duMlM zoG4W4NV8|oJ?EZ#-g9PuJa}-(=kt+$`KW2pOxaIo%Rc(3Ea+T$k8y$i zwGj&j=(Dhr;g%hyxdlHJ45Cvw!<2O9vkW)i`o{ZR?eyVth*p*jdT$wff>xnG*Rvi5 z`*v=DWi(zg{UMqQgQsLtplGjMHtOV>jWdmLABk{~sAA&YiW_H?aE7$kr1!g0bH^vm(cG;0!($UunGrMhbY|MjgPu)3bHW_SjdjhKsbu-!efhpj@4{1gka-mThh z)}Q%%NK_2m*i;GNZqW9yZHQ|{`6bY4+iX%4G!r}~Z2zzX9jbPB!)~vhVd!bn>n>eQ zT9iH~sxMlL1-iWP+pxH$p2QB^?e!F*?VWd1V5yhH(p}_Vx`*nQEYlRM%YLfsyq;o) zib<1aQ)--3?s1>qqd-@(a~5{a!OjAGu>35&vph?0FX!p4y#l|bih5xQ1HH z$hd^*mEu{WKHL#KM{*BzfuHF##X@Rds@NlS8G!6mh2!!NbYR=z_hN_!A*ZhxpaI11 zmkS->i-r7jo6%1Pkk5QZh=w~6t7_bTRE<0D8!W2+FtiYcj9xm_sq}b3*gT3ph2tr_zf@uw z3{m$b)O`tcUqaoNQ1>O&eF=46Lfw~8_oamHkMo|sv5LO2AAO@2eWM3`BZ|JU7k#4} zeIty%;q9ANc~$m}w`nzGt(1xT=<7t)zOn4+8?WhS^!MVRe0~lwsMEc0X(46^;=J}5 zeS5#7>CX7t@q57&zcAv%^}_UC^ywOn*M}AqPhC;@EG(RRN$<65jpJz4?orzg)wZ@hWU9@QU60*5V<> z6VSTdgqU|MrjUzuMeb?UUN#>iU9;^Si+#eID^8gWkm=XD4e>j;Yzn^nb^h{MmhljA zZb!Ahn4fFoFB>tPpGqh6=wMXs;To0i?I?OLb3`c7X7gG`TGS!FEGJ-yF!u**J|Q~h z`*p7WRao7t!meY|_FBd*B4G6IZJ|VvWz}~eatl#^VHNDYHBZP>S{IQqhOe4 zB%VdBlc=Y~bqdm(2G^2+Kig=@@B=0Rn*eVDYzFKCYyrFxFavlWU=Hwcz$w5nT9Ums z4qLeXdeEE5GgBE@~MO z&x$6*_vAbsll!*I9ge78)0$)+3jK~d#5Gdnc?##y zmzcx3wzzf-T|+^~%vjY4`mio2Citu_Y{%J-yO)n?8CS2?^Bd-uU3#`?m(VDx-W0%` zw@!Ag2X#HM|5~Nrd+=URzT>{a>s#e};*;0xvymHD$tBYtMJ`GIz{softxLWpWcC1k zjq5;v|J`Qyfd?MF)$EDf89^_K%$%6WCsTm=X$6niPx;Jjo+2a3e3BxmnHh>qXU4`S zM|1p;jZBS9Q)FT!lR7pQNv6j4-Kmy&Q>5?y2jiph>KB7r%;qM?W{xMP9DKQ>@pLkq z{S0h@VO0CJC{F7o$~M@@2Uq|-mHi3W1spz!pp}ocAneNru5@; zo2hp0OXQY!8OWStpDhm!#U;;dQ|Ge07OKhn1u1!VYCfI_h8_C?n*Jua&s_uGs~$eS zR>*zseQoOh5kA+T+PUY*6AvWV1;;*H-fze)Z`NT)E7j!viQMuMAoSWos3z|Za=(xj?4-BQ?fQ96(pxLS3A*!qqvM-bP8+$~GD$ z{tm0*Zhl8$O1#d4x6@Jm%qO)X9?v-FoP*ChaQ4Q}Jh-zrG5)RxKkLDN@4-Lu;9q+1 zdPj;ezQcom!-Mbk;1LfV^WXEhX)^c z zo{o=ZlVdaR#YB4Q1cQm((-}#Y*44J&57E4nIVZFYxv3NI%4{CI`RNn%@VyTV#HVI5 z$3}AT)QNm%Msfk>^(l-hXUXksxxB>9YPP^frJR=p+DL*S3a7vjWm9H|gkNQNJ<&Qt zZa#>wxKYWeGgUvWH&x9w?o{ux`kkBUyxweWUgy5we2eO5%^m0i48xoGc&T}}(z~%u z&wXv0zjHG`_rK;Y^$u(9R&zx2t(*DgdHpuL7a8tRGhs7?&oTTa>e;90=lOjGf2{%5 z177ke`Csum55MS7^?*U4&fCv0LX;Is?pH$b2mOlP<5%=WztZa!4bN-%v4$5I-o9Dy zmr3dO9>b`L59@h}l%4^tXSdeV)OtpJO3#BnrN=z4BhDvD!C4J?uB_*EpVH&cKBdPO z4DWzkwgP-=O2LucpUq8b7P` n`J0ZD)MuYMM_i|73(i;0OU_^J=bX3gr1IM&mG7Kaod5p?tOAWs diff --git a/release/src/router/openssl/crypto/evp/c_all.o b/release/src/router/openssl/crypto/evp/c_all.o deleted file mode 100644 index 921f3cc35aafaef220072d3bc2c62330de5b8cc4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 1308 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 diff --git a/release/src/router/openssl/crypto/evp/digest.o b/release/src/router/openssl/crypto/evp/digest.o deleted file mode 100644 index cf08ce9f29201fe0ad571b2125d3f6b741d9f074..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 6912 zcwVJgUu;`v6+gaq5+_dDTh}U1NY{I_+r)#`bGr=66e>4ynpI?NXgf%zO3oiUX;A)H zwj-syU`9JCVa1W)fldR3twVc&q$^0|hm1i_^M%r1a76D9^36$1xsP@m7>*nQZ? za}@uM)hJ)-vud>}DQn;S`e%RoZ61E2j_)t+Dg4+I^y~Ti)33LG%)@`Nj^7+V0(Z(m zu>73UI|T5?fW3RizgvAU&`3-1s zS|J%hxe9=>VZl_H_H7Fcxp#!g1Ef&*u=w4H`=-DlS<(q0R!G4jUMB=Lh?j!VGT-NR zX`g5l*8r4i{t!0p2b%0ldp0J5_M_11&_2dn!FVe^Fq|Ol`Ym`c@V|4yaVaM%uEe3d z>KIH0?GlgdW)>H+g<^b;e48t-pFGPqPM%%PqzjAR&ssy@v_`)(k$&miWcsC4`pSh@ zMxSs_x0oLQZ#z*4ION}t(2iY7LJQ_v&7W;0ncudl`dlCPM`+^&+K9pZ9S7dsvCvi& zZP~ZCAOKseCIH?nx8b?*I=WM7McXTQmaAwRM+4g3+6lnj@&WBUu#O^8;SLwzpe$9m}7XoJ~^y~*uRzNuz-J%l%+p7@B@hdKirL3nzj6CA9U;~Np^XL12B zwu9i`#yZ+Ip=CP)t=rgZNcU~@*6Q_>ayRoCtwS)ky#`2dc&w;Gz6r3;1y6!}uNH>CZP4uw~?L`EJ%#*}6m3@kj_Q@Zcd1#>DQ)NF` zUm{)*_o+&*F=5abO1hNxj*1*aVU1O z8&zhHeLIQunGDNWLYM%<+j2&AfOVL%=ABjUETXxl&mlTDCXYRAn- z#@i@|4C}U%KkQTPk7ZC_(!MvB_1Mk&ljD_u@@R-2p*+%D?8F+AJ=G4=ta|3b3iJM* zEAu`Zi4evN>)*h}DZ$rgD&d4!Z`9_B(WUe?^+5^kzlMD<0J0CHzO!L(CJ`fPN_oJ3 zkT?f59MY9oaz1!_KFNCGlIRJl0qTzc_G>3wft`N`n^o@2AX{)7)J%;s9+owjH8ke zaliNld-;pbLp#CW|E!P4Mn+z+Vq+Iye#RP%pN`}GIbOK2T%4K3wV3DYb@{89T`xjB zGgF*__-vs7@qBh+abFj!QrpDm` zonKs;S*ll4m<>4>(Bo!WO%)(Mx4OKXT`9soo-YHi@1#~iCpEq)R$IvVpCE^Yh_&-% zxf8%_<_twHs>lTd{S5%mcibfYm6VNuSf9tgc113T%G0>^;a`i8Bfrjq7w?fuD7RrDm@FTjiUQIzMO@Vdaodk;9?X(2a>c!P>wK=A(zUb}edgN!Ce&xhc( z`_Cxc+qYwGT?Y&aPe@Md-1SHt}1#Gk3LFOyxZMw zo+IGm9o6ts_~WsnC-J&{Uc7g@-8wh|F5U|o-e4QRHAPS2eNDrAtoRoN7w@Wuw~2V` z4e~dk;h8-s3mmTpT)doy7wo`VRrDm@l7_d{!+V|ZdcnoJrQuN#Pbzv6?}r-RZjT%9 zQ{dvgF7OgUZZgErUp_wZcL>~BMbGz8?k%5JPOeJ2;2wfaqvF%x=9%i1d{gmEJkj*=t)N7B&hwzl`}q)pnpz5-959x?J~WPOJ^1fIh9vLjr9D|%t8S!O^jZ=a%G&0 z7qT#Nd1~V7rSyD0%h4vjH9Ey~_|C<#3l~Sz^LPO*T!-cCav@t(f#t1LzpK_?Nrj!| znWd%GIS*f4OGhtXPUqI}(wNV$=A~gB49$x;(3iQ~4X?|YwVaNuq^x$6y_CzYUlt1b=ZbmNie^yOhav7lMmK-g7&gBP8h!lU zWZ=-=q7|F|A+2A<_Xw?YDaAT6;;2vSv#3uiUT~&qeV*gD^zeD#+QZ*3A-qJdi}h!; zV$;4u>rsv$!g72>>oL6F&}!A=P@jjo`MsF*bbemSK7s2K`m{cS_f=ZIf?u9KuGi4NK7L0G9k1up z-6wRC`%8Alh5s}M+i^%w5FOF{vzpjBAKEsAN}She zKHq5H^l|x=h@Zuc=k&hF({Dtc9*R6Y5^{UAK3DG#JLf(gAH~J|dRF*__4|g1=Z{U| Ku|UZy>irirv?d|| diff --git a/release/src/router/openssl/crypto/evp/e_aes.o b/release/src/router/openssl/crypto/evp/e_aes.o deleted file mode 100644 index 15d1c55a9b1647d7722751eed7e3416570189911..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 26156 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 diff --git a/release/src/router/openssl/crypto/evp/e_aes_cbc_hmac_sha1.o b/release/src/router/openssl/crypto/evp/e_aes_cbc_hmac_sha1.o deleted file mode 100644 index 5d437a9a11b1f59e4aba136d2630dad1f5872bca..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 1196 zcwUuL%}T>S5dP9cTYss&D2P~3R*=QUR@8$CrS@QvToi91Nn=}R+R{YOlYIcMf(H*C zeFmSxNAMMV0^LnFbP}l54<@r;=G&RgZ04a_KT{M15fo%FW`My-It!x|vI3T|016El z;vd-Hw)uy62A}FycI;8BRF3n7+QsEgzQlCK&%^wCFR*OxgTctRqE+DD1z-&;u)u8J z2OGG}cK4Bj&1gAGAxCRO}yg|z6u`1UhQ;t82G0yY3;fTb>gE^QyT9bz=M2a^xFFgODegL7# BW2FE9 diff --git a/release/src/router/openssl/crypto/evp/e_bf.o b/release/src/router/openssl/crypto/evp/e_bf.o deleted file mode 100644 index e23096326515942f4b11dfaad00dd040e00fa1ac..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 5024 zcwW6&U2IcT9RKxpjIs^9lx8Vo!o93)#VyUmN~T$)VFJ?-G7JzBKic(UTa|sdRfU9v zhG^Ww+^vb4k@(O6F}xK97-B&8=mQTtn7GG9dEkMV?MX~X>i^u2-g8b{Cl7j(n{)sF z-}(RkALrwq_QIi~hdmw-oaTWKt^}-Z1U9M|ikeawo#+7Hp5nqHo}oQY&#wOsKahV? zE|(ptuL}1Hc(@9`kblbIv32mlDqQq0+PC)u-*)LMm%PA5!-o~>4~G5={miv1@O5R=6V0pVw<_K0l=5derV^Jyz6|nZkS~LL8RW|#Uk3RyJWxU` z#y;HZ;$vK<7&VGfjOmi0&lbUaBv6=R+@>xZgRa5y-K!}~PqtM)!jg|A^3hK|`tW@z zO10>vTJ%sY!c>b8`PIm8ko=YpDE<0E9(th&eRhd*UqQKiDyre@P&1$o;j2&rqw^|p zuowcwgP6A;OG-c48+u+*^umCm&vsB<9w=tannv}CDQo3e0I|mYCcsaz7>s8KsZI^a zP8F9+0bD6rc|l=ZYz)O~P`p&vTU6JZRM$nS>kZ1;%{3EJ4FJp(ZouugTBF`2;?n4^o^e z@mjgxE_JJ072-0QXDM$jMtLTzoGAyra9q(BK2&H?`q{WYXpMBxdZE}1ijDHSP5IrT z{BBZyikNvu%;^S~l-Ov}u;`S~hRPjg9q9 z5?;#&M+OF7)xt-Po!qNMBl{xs{fNw*8_x|Vsn1PY{h0HX%bd+2k{-?tBa)n%L1a2J znw=P#WG`nTQ|W0$#?zVPN28J9WcH)oD9mt&>Juj!C#P<+?r2yUsY;#OB&rZ(I*dpHm7qF362*u;o_(;hu7u z9*t8p*!{~8_tNrK>pM*!NNljjvAAA?$aj_(IBW=FUD!A|KGu#x^sD*lf#uf+*KY$JYdx?>t1lYjya}LgY(ud@XSKzJ$oPREO^ih)@ zbNDVpc_X9+}J6wEzxO~4rjeA+g*er<61_Dg(s>+tQ9_+lJiJ6yhF65nbazBeVl1jn}%F5j5M7iz4{mzMbQ z9G?bmzuA1f_PEoH)_QW9$A0M8srY2=eH!%4XVgq}T)NcLVdw)<27l z=PRmK?VZNG3XRt{V66{7pxDcMgJzvOjhb~g*tEm?#x?G!gSXjuTOEA6jc>1m z2W>o9jh~>tIaICJn0}9SE;M&mBH6fJk#&B;$Zb*p|E-}*UAgle?>~S Og!|XQ1MA?e)%f4<>zeog diff --git a/release/src/router/openssl/crypto/evp/e_camellia.o b/release/src/router/openssl/crypto/evp/e_camellia.o deleted file mode 100644 index 1d5a4b5e7bf1bf7d48424f1d7b6ffa5718bf1ee4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 786 zcwUWA!AiqG6r7kCtAa#Nf|q)-f;^CT}+T-hN)*Tse*d3kMxk4*1se1KbTt*Tc5%uY~bvH0<`qw-3kN0rg3r zr~D&TBGjs~rM}oo$#(^cg%Y4J&q0}-B(vu^Xc1?iG?wApghZH}^+C}*P326r4N&0# zD0lLWzi9LWqlYHvw&ad9J1gW)P~N#%W4V2n^Nc?SYH$9CIy|GpmYnTfoBEXH_8Pf@ zyQp?3@Tz&=$XT^J6j0iHY2DJ?#B#pC)ck**HapDo**W-k4?n-W=Qd8cwMh!kZ!EkI X4)_1{tY2^V4M09cB9+r=A}GQidx9<^ diff --git a/release/src/router/openssl/crypto/evp/e_cast.o b/release/src/router/openssl/crypto/evp/e_cast.o deleted file mode 100644 index 0873568c07f7dc6335a5b8169e268f1f2e8d036f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 5112 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 IJ{Bre2p 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 F_rL65+e!cc diff --git a/release/src/router/openssl/crypto/evp/e_idea.o b/release/src/router/openssl/crypto/evp/e_idea.o deleted file mode 100644 index 1b39760d39468f9975e4bf67c47e675bfa47bc1b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 5312 zcwW6&U1(HC6#n*ZOkxsrvspsaRPQxwvNq|G+HFZos7qti7O`vn!KdzDHZj!1G}#sf z!9|4T!R7{9t%A_dQjk)*8nyUPF%Nz4(Z@XWAz1q+MWK`+!uFi|vv+28x7LStV3|AT zoAaIX&6&A(k~72mcKdujxXp(~cq8CkBhU~)B4&*u=tdXB_6%nh@dE87`fd5&@STO# zQmN#Q1}gA|!ZQJ9;WB&0-igiaHjHow#1?z_nrkKNrdOym6_3IvhA}TwOqK;0am~4;c$f=$d~5 zqrf>|Hd7d#GxT}Qh+NawuIhfH(5m$Y6547h9v~i*;+Pc2q&OzUF)5BoaZHM1`k;k5 zzX9Cok@BYeo>6|Ql+&M-(_<$mV}1dxSP2=k1uHhk<1E(0KiGh&SU8ZNeEq~ZWW{#p z7`m=8<|k|ohC+;`ux*a<^+3ST;~GCxPCfi=`9z?J^K2g5#$$e7#+tC31KTNQlX5mG zXY;Y34?bDn66qTxeFONZ7^52WQw{p41`*O5CcQf8?I69So!TJRfOQ+QOSI-ID3y-H zbX*8GQ^*9q45u(Q7a$JKBSbui`v|rFaPO z`oSh3NV%BIlR&mxN2WV~Z;By&YjGO=(3p$oP`)PROEtYoHN8PKU8I^`rkScpj9I-vw42*ypW8AjThy7yKI~hk;MIKit0DUM z6}+0yR(QE_uPJynAM6<#dP|S&*?)Mu9*gdX(swI5b7~@=&QPD9w)WG$QSOv#C+->^Rywt?Ojbg8Ijo226Hz(0 z3ZyKi0ul6AV!UM86B84;$$YgE)@qwz@1c5U99M964;#)rcaPPYM+aQmi?!zU!HPNM z?mwQ_AfBOEvhu zfXr7A_}0PW`w=qVG7T04KbP-&$b1WJc3kEQz~j3Ir5?0#Rs=tn?-$5?x7+N!#e6|{ zeC#Xo9iy3OUF!1v1(`1p^7z`}@wNM8zE0Z24+TG$ zFX)r`A_89rJidOPe14fYCiuC0eF`6aAZSl#*Nmyh#Rk| z&sr%FZ$g`dZ&vV@vc<+b6?~ob9r5su3LYreVFA33?pMXdgXQneiiL}nVmyTX&hsM+ z4=H#%K6IX!ExcX9J22%uKeTZ1P06^Luc}X74_z78L2Q2O3nq@YqToDp)LWc%H%*RBB}c|*rl4F+r31OWX&YGss7b zYN|O$X^n2b<@ diff --git a/release/src/router/openssl/crypto/evp/e_null.o b/release/src/router/openssl/crypto/evp/e_null.o deleted file mode 100644 index ed9464123d961480f0b13df82322a4807bfb5d15..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 1776 zcwUuM&1(}u6#wn!qiItyjXeacxPd|<=n!f=SVY8FTck)1D&AtU*`|y6BH5zBgW_GH z$ASkB9=u4wgLts$(W6I?`4!}%jCLX6x$MV0uxib{xF*b$#5V4gD^A<4wD+1#!NX`;aoes}dFTw3P~UF5-Cd_AtW?jR^g68B zv8zqip7`xftL3!4)65O*Ga&914$Wt6z6)GtHd z!~1+Z2*nXD@iDL1U&clL5+5-cN9(!@o$nKL1imu#zEE6veS~f3b>GFsS*N-QOzYav z`MyhgfPn8wDDDRzTYrgr1ikJz<$sfy)_nzi-z=^amAruO1$4eqTibBUs4ZglxivF*AuG*vcIfjBr zC@Z3^gmkqc>2o1Hfdx6Io*I6qRR02ha|Nh(<|I1sC;fXx*z*0!kUz{9g^GxOvQ_;g zF335Zg*30auJ~zBN{a5^MaO@Fn2pIBqQ67x>!Uqdl}5Kxcl%wmoR-}kNKP{)&cB%u jciNP{99t558Rv45%X$7;CVlZwf1b-^TKI`4BYA!U3jCP? diff --git a/release/src/router/openssl/crypto/evp/e_old.o b/release/src/router/openssl/crypto/evp/e_old.o deleted file mode 100644 index bd264af54f61b051755a7929f02cabd696b4847d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 3856 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 XkG0z=fB!h|gMO9AQ-0Onk5~T(`OoXX diff --git a/release/src/router/openssl/crypto/evp/e_rc4_hmac_md5.o b/release/src/router/openssl/crypto/evp/e_rc4_hmac_md5.o deleted file mode 100644 index c3abc90a8bd6e1dea97508832dda060d1688867a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 3968 zcwVJfUu;uV9RBX@-PZkaT+19)rnJjwt07H=qSFwmjKNSe3jwnSleX*1Hd#mQY69`W zW|Bx^vpc~UNO-6NqKOUN5ECCpL;=Ht4?gaZfd3xh#gIs>zu!Igw)fs{A;gp1ob&s0 zzH{#P`_8%TM}zzKNRkAzNpPcX0je8lQ866Vtq{7g9@h3y+Ibm|(VnGeQ_b2`cv!7g zO)J|F-&uHIi4QfzUAB107Vp^soD2GIpLGGVnj5#N-_>XJ&sVPor|?5%0#_An!;7NVc=O+U{u^V!dH z{Ab8t^2sAOPkE!KUc#<^>K7!;1pcX}x_K_|p<#U*n|Qou;qN{5o<6^q=D$eux9Rf} zYs~lJV$eFDC{QKlEc6HdtuD-0tLNw4I8lU0MiUBMo4o_LS55WF9v8<;6fb$@flG?C zC$KE-4IGq)h^wE93a%I3xKZrD&7z8*iRU|I1$WDC{8sM3@8!R%w}{(6`xMG?Q$8qP ze@}|LDHoKxEbR_h`QrVlv^T1^M)lUH-Wt_gqk3ypZ(Sc*Tn$?F@jdAyM*7%+?<)PI zktk^-LK@jZ8VMO1N#Jy`T2=eJ^80iCuS>dC6hu7!`D;+o8z|yVm){FIRkOuG#MGer zBzUiFCuiklDH{-Vh#C9z$=eY1@Lrp7$Rl(TBb}6L@f!apmt?C}*q@LN2mJkz7o~~E z;*t5Qb7|*MrP|hX8uG2G)0!_*l7+4lax-bc-(QkzT943skj*ik$0u|b<<#*Kb$wGF z`cY|^>U;3-t9t?9*upzy^k9K`-N2VN`&8+nK|zOz|7+u2y+`#|^eJU7*y zW39{yX@PP09YjqF`aHf*B)CXNqnAi?8fi`=&1s}LjWnl`=IDGaYJR$fSgS)0t*($( zeWcYM(x%tYrhazuSy5l7P(r;ionM8MHQGi9ewz(D=7^iT`;9!;Bl1YhRHH}dZGpaK)+`_A zc`bR0VZQ>{e#eZ^Q*h*Q+fGlb#UJW~u9Pl%nv6W&*K4rjt-#*Q*f8w8aGrC2-1fu1 z?vQ0&H|pyifgSH2JwA(eO}uf~@g@i_0fEE z2s_>~k=A1&%EbE;cD&d+@q3N&I#I{F3A@8e^`lhxVVd#JOf4T5Lw2b=aRe>@OU4$zgxxu)lHG);~LJ z|KhNbwq5Pv6jr%z8*lm5?)KGh^oEZ|d^{T;o1Doalg`Yf^LT6b_V_-^)(3~Obor$!>A) z%5CC~kqsF%trz-lUN7#5)=qIAn>!oheE+pmkUu%?ba+m1PyaT~alZk$!o64AcN|wF z5syg1-fh?`M(@NQGw_NA&IJP(Mt+|p?0)W_rt@j^d87Z_$SWIpiY)9cvan;^KhwCb ckJs5K&R2Vn_#W_nnFr>HbWbgyBPc94;qUVAB0VIvrU6(vTjzi z{&lH}5kfW(Dk=0K)|Y~nO@AytCa`k=R6 z?wtFb``z=Md*{v}hju)&GZYHJZ6QSAS-?^g(5Pc5DXcjCyBTu(3x`hOU$o8iyXpVK zOINGas%yk+@a;alzXoqC{k7`+Lq0sU2EMxn_pk4t-#Gvr?KW4Agn`55C|0Py-}*1c zzpsAUZQ!#?2R^Apv8cB|vm*3s!ZCdv^)1x5;`3gLORrWV)-Yb14IyG}A{)q@7{*~? z6Yp%h7`u3)1u5!}ltTzxA!q}UjxT`L`;%5j2J0}avqE=XlbEyfL<2qRSggE)b=I3` zu$rzKVUsq6;wqa4Krxn0y#&?}$EV%0hV!JMk2Lh+qe>iSDi%&x44kTT;w0%>s_3MR z^v{~}B}DM}ta*G9J^E#AKq_V~E~9JVGRzXkv~!N*j$+rGY0PV8d`XMoOFNcQtJb6E zwLhyVo%qVMUYXV_(|ToEuT1NeX}vP7N4hnO(?vP^MicrBgYucu{-~y6NHq*J18o#fnYo6L-D)7SRmU;ne7|D$*&3Ob z`Ph%*E>ql;_cN6D)0Fp9r2Qmm_cW&z%^#EI2S{^@G!Ia`{S2dFCR_1oWfa-D)%KG8{>eTb zq&p%CaXE&AIhhZMZt9PAn#yvK;| zdUWqCMl!K2LEqHG^uYtgkqq_4g5B?TpNhE`ib#x(6i1NAOiv?G$c>Fp?wjI=i9~+1 zfW(2(T;{p4#7JiRj&1fZPfF}~awuKM-kH8*Tl#kTe^)x2$*v0T%iNV*&0%U^W;HmM zm0^am#lnO#Bzvc`Y7IXrz%29M&D*}rW+hPrQq&6WjcQ0HT>w}5$Aj@ zzg~zn^P1$>A^Ald`)sIv`L2?2PMYWPeFZ~GM^5Q?O%35l-*9^aV4w?r?+uhKl1FRSpKllV5m<9jRQzYmTQaZ;M+^1Y$( zU6A-X;qjeR_`V6?`%vM#BJte_kM9SCFVa|_?>mLBrQPE*Ae|S@&(|NoS5^2diEj%$ zzHW!F&+(gRw9lv8Le8%h-kRKACBHt+vqMrZ4dajNDTkVUADgh(<@bqWllhiu(K8{> zmL7dg9*^L16;cZ;v%ba<>GDPyTk3cz~!A{JchjU{IbAf3f_*_o#!h8Z&&aR9Ce;A2wc8- z8Q+Mr&hxJVceCN*svcFpq1bAEBamBId@*I)68AYbj;xLL>ym`?8FlXx8(%N(SI=%i zhtJ-C+oU7I*}hk?A64xAiv7G|¬Nij5rCqKPbOil#dCR!yl^Q{!DLUV}>3dWC9G zc^X`l29=_9EBEwRK0P`dhm&-SX_D{H#t_^?>bNCY{`x}B}BQioxyC~K@#Z>annru9@e_-8d0;K>D64}o?k&a0~)<*2KUY@wQh@j7dC9M>z}60_IJEta{%7y z;GF^ZCI{aXfNym0jkWkF_03yr$N8>l?yeoTcsx!u68E>%;xjycYwbAKip@Q><9sJI c_uBDs-Z({^N3P8|ufFkEz<7JWc!xLsH#&bTW&i*H diff --git a/release/src/router/openssl/crypto/evp/e_seed.o b/release/src/router/openssl/crypto/evp/e_seed.o deleted file mode 100644 index 07d37953733739be4b1a8849fa5f522bc806ebbf..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 782 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 P6~4sbpr-ocni~Hf8$Giv diff --git a/release/src/router/openssl/crypto/evp/evp_acnf.o b/release/src/router/openssl/crypto/evp/evp_acnf.o deleted file mode 100644 index a4fcbe09256754efae98380c006dc0eb364a34b3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 1256 zcwU86%WB(D5Iu^N#Ie)jW))~l<&{$imy#xnhENJ2O&2CLgwpJUY{`njdSI!+S*3sA zb)f$cC|x$RtJ2T#FLalkI-@J$E0xp-hS9lm=FVtF_SI46t)^)xprM921Ktr?ZKAuI zu`N7A11g%pSKN=!cWIgy#3Xx4_AFyh4uCK1*6doJrMK-({J3f2`wehCUAr@NRuG>u zr`WVb$u*d|iQ6`g4-favt>cpq&&^%2Bd9kKU;2sNBcF_=KQEpVcalIjc49;H;uvD= zdc$B4^210(&KSaX+};8ti8piK%60kzT^l@?#ky@|HKQd(x2foioWBA}`#*!+o2p~% zk*z7`KMmQ(I@xlrWBwZD`z9!(h;>n(3+oOPT~W7#a^2sC?2qf#Ft2+7dEbj%_l;~r z$D3nO)WX8-^I diff --git a/release/src/router/openssl/crypto/evp/evp_enc.o b/release/src/router/openssl/crypto/evp/evp_enc.o deleted file mode 100644 index 17647e7a0f79359836b55f3042e7e1dc425a0047..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 12804 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 diff --git a/release/src/router/openssl/crypto/evp/evp_err.o b/release/src/router/openssl/crypto/evp/evp_err.o deleted file mode 100644 index 6fdf36bf98de5c641b709d227682b4c63b92bfae..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 996 zcwU85%}T>S5T10aZT*4TlOSR}SwR-5^`Hk4O6{dcDJb4T(!^M3+K@)6C;JROi4WkT zc<>c`0-Z@Wbas*UgURIE{bpzL?dGl3xv?w@GFVWA1p~+V{xkvUIf(<(olHQ+elQq4 zj_GA6BQFLSdcOM{NXH$V)#nAW)$7^AvE$jT`>u^k4MqW$_Qzr9kCLUk)v*VVdb6(h zwJ~2-`B3S^3f&Qq536-2koJsnOt;H)dBraPw6lA_s2V!LIYx<%e~I}%HZj(ej`$Vm z>rFvNHrD~&7t$4(F6$d8-KpX;j0)3PDt2Ju3E>?hGIUwaJRxjh(FbJ=x~0^YJfv^s z>wOB{7ygYL+J68)zkE&@RYKbdao&-5!Qk8>;(6c@=}B;2O3#Ntl@)sWFOluXvFyXY KSDcVTBmMw1#zc_- diff --git a/release/src/router/openssl/crypto/evp/evp_fips.o b/release/src/router/openssl/crypto/evp/evp_fips.o deleted file mode 100644 index 2f4e88d99ef75eac3a73b766b604d8a5ab3bb6c9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 784 zcwUWAyH3ME5FBG;!lN)$NHn1$NN9yZXi_0X5DJ8#K%zr-d}82fq{b#Y6pBP`T_0+mFrx{xEIqQQai!>E;*)~9p z1EAW;*Z#ul2U-tx&TYvZDRx%KouIliTVuI>mh-ef2O4kwh$cL(!A&^7;`r_2uXe0C20-NVl>@440~w=qfS`HiLb X!QuYDp7HCJ-vGp0_B2hhf+qL_9%U_n diff --git a/release/src/router/openssl/crypto/evp/evp_key.o b/release/src/router/openssl/crypto/evp/evp_key.o deleted file mode 100644 index 4a24006688f9c6932718eb5523d1894c48aead04..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 4180 zcwUuPTWl0n82)y4dt<>)mr_?PG9zodBH0wI2^usDZJ~q$Rl(E*v-C35jqP^RU7(Fo zHb@K)B-2D5AogKXQ2JmpTnh34(g#9(GR7w#G--_S!I*e?P#!ev|Iazoo|)F$NoN1^ zo&P)k<(&V_nLXLnvnvz|!D}JZVhI7wH9(Dy-gXxy5yv{H?GIFb#s6sQ>DjP|D)WC- zDisgSF4J!)srs}Y)T8u3(I=P95BcUBK7I3cV7k>@xDW>3wSj?>=6c{Zkf_B%n0wao zeCADSGBrs39CeKCFBn~~_Gb3&=*#TwdM(q_wSV`)Zqj9stExS(E^7R~`YLx?FX66J z#;49SK5@?DrgIKAoGHvXXK~#*gKN%dTy;vg;^?^T)MD!F$N12>f{&azTz29pJ3F9l zGJh^%9yjcJn6vAUZd{G`&jP0@kN4=gK+ov}a6eJ^zzDyCss!1x8!)hG6>;Yn3- zy(I)KQG;(|!sbUy{N%jWN4}WPx;e6Si}bFJI4?=v6^f}w#>C@hG7aX`qB_y7%%2F@ z-XV336iWyVZl1g=ZVs-Ud2O4t%Q}ut)v>)cMbC3LOPjZG(e?SXzENYoyAG89_my;G z2wPfK12K~dFHW)7;goL1?`f5a-V#AM7IN2pU<#O-3E@V|?-evLuO3HYEY}d9eeoP` zK4YF2K`BrpXS+^Z{XxN2640@rBL%;N`&k>8)2g^?58U z_ukZ@QH|PEqc+v3O*Lv$joMVBHr1$2HEL6h+Ek-9pOabKX;o`{{--;w+x5H7Hhs=% z*RMNm`ZZ^>e$`3pR~&k0lI_ zQx9*7PK7ld*Xf)z(mA2^hM6=pUT zk00OC3u~9oN~1(SDSLRDOa0vwJBG3ZPL1bZN8%OZ_xRV^E&AB z5b<4h%(gP+AnMsna=qNPiRao#2G)0hY&5$z#5*F45|#E8)d#pfX5845B^;o0A?h_k zb)vQK-X1`@Ompe{iTDh*y}P61c_X=d|DmUh_SDuCz3Wqj$dwicRX8}d*P09{#;yJ#HbS$qx#7%cHusN&fU@9^fKo__{vv&F zY;@Gh74cu&V}N^SR!f`?=;fsXQ}V+9!lTWmTln93o8kJ*YYH!}@FEgF2l(#vK6=Ul z9=B)dsZ++M9};&ey-etw3LeMxBK-Cqz~4MwFZ}DmyrjbO{Pw`__nzXn7E6BLfUvh! z@(co<%DjlwzXiYFAp+ldi-aY=C*b${Bl(?&@EgUF-*fQW>n26BvH+evdJ+5VeOxcr zn(eK@lD!)U#8UaddRG_qQU{=@{31ihGmTtr(#qh7)t@_-$AR9i{p3U7f|#|!4SQ%$CTE>s z(LXdqA>@xOrYFaaTjSZIlgc0^H)zop0(Fm$TPs<{@(Y<1xxxITx2{^F_}`{AiTh2X zB0s{CzMM-epA@{Rb>jU{y-u8gx;0`?s!29W8RX?jMjsaUN*%rX`Npp%Il`EZ-vncl z(~@^i^2(BTo-sMO#F*r5=Ftm!f#oCapAAGGrF&Y+UMWXd(nrIr#GgsL5EAo>nviE% zQt;C(*DsGhE%WS@`E^Ul@1N)fkyq3ZaYjvXw?&@-zF@ggoR5|4@_I!dUp}6c_W8Rb PN?(-QB{pOnX^H;=&s&;$ diff --git a/release/src/router/openssl/crypto/evp/evp_lib.o b/release/src/router/openssl/crypto/evp/evp_lib.o deleted file mode 100644 index 785c5a938c9f1bd25d87759b6b46622c0e0ba9cd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 7972 zcwX&TZ){W76+eE@4lxPj5mFk!gy-TUE=`S-LYsBax(S9-Qb-}KQZ16PlZSC}V#{_B zOq1qS>x5c1cd8~8sZz75oz@AIj{W&Es`6>-v`OR3BtC8V)(@*TO`0?+ZOYDh@4oon zOh@1OfqYO8`2d$*^n!*kHi)ew)N$4ED)Z_$Tz- zfUi(?;cxeS`+fU;JC*v~wY4>u#9Qov`oAT+*<#L*m*l{eTsTq(SiY9R~ zu>aUr1KSegFzt1~>)mzD*9fii816?M%&pEIaPxzE)tE@?VqWC^O6yLJaT~`R$1%s? z7p>#2FT+DL?swR@FaK}j&Pn4opfY67aXh8j^PMy`%AXD|*z?_K?+F9fRjQx#CM*m! zwW;+v$G$eOuPkq?deS2|@&6|`M<*wrG~-84y!f!WKQWfT_o77g(qb)}L#$OCJm+53 ztcx{BEM#k0NaU(jNK~wRVd-p%E{cirLIo0w3s&ycd?K4GJT~SyB+@TUXC{wLKbt<4 z$rVfU=QFe>TWymwvp)7h`J7epc9{3Eoh@ebRd1Izro2_lWXt7@GeR##wXLFXAyc%L z^0jl`&TY)+txIiP+u4^23*Jtu;rYYf>Baimr8282Q-iJ5Ja2R8&ed@3b*Sai@3+?FCX@8pX->7L>D< z>|&-?vQ^%a{Jmn>Mhs!cg2a4janV|;!B;3d0qpOh4#88*ZU~GDoqi7;-i+{`a&O%T z*lm_IN!Kswf`WeyK>2Q)#owyFPHi2P1NaL|x(L3|-38~}FC=u-ucttbHy#9~xV9-! z^Fq2#N$0wqW4aU?x;=E4nQkiB%!RDG%5-x+?f#1C7JPJnV7j7D|2}8Bi$3wf0aaJ` z(LKU+mwj|cnC>l~{#i`-u1~!0Fx>|}x*s#$H6PutneLZ9{re-+-SUa|In#aSqx+KS zZu{sAP1W7;(d}Wn)nMy>qw)mP-3@xL(^E{>iJPp?Lsw$DNXR>XZ!#Tzf_S$3Go~B& zY4`U`H|5jr-sNBXyn#8p*3e9$DeN*4$c=*8u+dbm(BG(7u zA8Q~Loq6d>PlzimBHO^Ydeb#OBFgz!?Ve^gfqN4AD^9t{VZz=wp;D?HR zGhA1A5ByHy2K-s^-va+q>=-d1^Q|zf@IH7vAp1W6#}xZE_=dtCguKH0;iAH~!|Q_g z+k6MSEx419o$yn^`)nS8PnGs}!JicU0Q^nS?}o4@>rMN8fXa-`qp(l9MbK^=mpH{d zA~-$EdU5@|#Oyi7tAf)rs2A7c8_fPA##aPCZ0qCjnc#P9z8C(&^j|U#y6lg4*yf>F zY-%z|f1~s_2HvL-{^t+U$%FTqL(6G{=Q%^W6NYwY3!bM6zUK+vCkg&%2<-I0 zrq&+a$%*GEDPyJFEAY(e6QdcdNKejW&Q>gC3CSP-C(G8->C;n(3zp+D^YV1s7L?{| zR;^mA6qfR`uX--va~jZ$lxL9^t;PBBCD~6sBoIX#aqj2Zqt3UtmH;?IxDTLCh&SkE zLVRJlMTjq;tAvk%{qmvVOQ=bBz_}-AkE1`~6X;Jkj{b!B0e_3|N%SZDI@m8p+ClUu zJcRy)_+fsA@M-iX#7->}K7;;*6X;Jk>Fjk4H@ZofMt?$li9JJj9Q_GTpg-YB^d~&! zj5~D1dH3o-q^ES(QJ;G3|4qVUcn`&Xci{snB9QCpS=M#HxtDfLIcEpqA?K{3W5{`b z4G-hHHgUuv>7MtAbG)^Fzlc98;!lhCb0R*q8;(2k*MV3j-Lx}*T`%~wgL(Nc diff --git a/release/src/router/openssl/crypto/evp/evp_pbe.o b/release/src/router/openssl/crypto/evp/evp_pbe.o deleted file mode 100644 index e91446df8f38c1f370a2b30f44382ac87957f1c4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 5888 zcwUuQUu;`f8UK9kI(D3PZsw#Jw9UP(N75}biI+lvf!w%B+b!$7B%L||y78ae#GB(- zjuRRQL^L`n57BN01GQ2?ZrXGMg*xl@0@_3$hSUdM5D)N#@_=~aflUbYp_2K&bIy&= zJxcUKj-)Tz2_X~$0K8-9*+l{;eh}&D1fe3fR-?%1{u{0N8!sLkB88G7ygfN z1fT9b%RS2v>-D-r=}q$H;g&zK{6JctYLa)m@P{6={&DiEOa7Bpfc4em;SBg75h0Eb zc|O4lz_ypKx`KKet9#c!`~txB9%K8Ocf0;+&tdpOtqZnlVfds5ux10ijn6fFeD4Gw z=(uJhiZZ0(4(i&dYZI0ZpZ3UDv?c(0lZ`F3aTaZyhL36qxLbPxKCBI)y)Lw8tlR@* zZ5v`x4Nt*GHrdzVR*h`$hvje-Hfn@Re(12#WArAVUe}_2SPyqGpSX3ak3dWGAS4)u7xZ?cD}nhL#{3<-!MbHKrq=%87>Ll6^5cYr< z@iMD4Ye)lR?igJF7@v*t*%+UV@!1%kZD2%{rxfPNS}d8Rj1|iw&iM;tV}v*PdTQj` zO0Mo>t_Cqz{qS+E5A)TF`HEt`bdfL0k5OI5HQGDIN)>Z=4_Yv8@>ZLDEksIRdm41akU_Z`B&*~5LfS)<&O-CnreLppu%e$P>? zg)aQ0I#4|-Sc@g879_{`I|s3s<+@V5Db!>3`$0?LI$jUHM%L9t4-BI1bGS}t-$0_1 z@)e*uui$_s~ipMkC1 zC-9zl4Bl>7HxR4C!NS!M{MJ9lp6rL;*;|MkW<9h{`DQied7RQPUKV#N`=+(1-2a4o zS;;wJW6f=>xs5fqvF7%Q=#MJv4}c)>eOqjRY_tlVPvV`%=QchGi8q2zT?~h}hR;4l z?_GS-3h$>tIdt=WhR?GK?>&5;R(L)Jzy5QZAc!uDuOT1?U?}X#@nPl>tdheO@7f$Gdv3Lyc zBeD6V*-AQtbEVAZ8RxBHU9LbZm#(BCmYJW2SlOD+7cb4xOCeUul_55pvoZ_Qv2-T? ze4Hd*=r&08@(Vhl$irebgq~B*N9obW7}$dzeKTmY zq)B>RlAce{-vDskXD@=A;q>rH;Cp~GrXn2kF!1k~^vJL8fPyCzl57mzc_F=CNzbwS zhN8EOME@>&KUDO#Jluw=cNyGqRHZmtp%KR~z>W9N)0{sVv_Hvs+Yzoucx}+Y`w-lC z5shumJHx^IEx7R>Al?*kyaUj{`wTc&x3{(%DBXn{$c|M`wt#vlyJp>KBQIGq3`yk*x6P))+Vb|$R(rcIWJmR5T%ID1Q zQSbYbe;#R;(g63d_-kJN`-yxcyY#J73^LwDG#Zc=Dxcr3d>?#X2WfbfRbH1TM9UV5 zZc*p}-o5#tnrkeBvOEaK#d|-K%atH`D?8t5@IHPD1_j;4^xG7Dl|I1k95imRx*SsE zVUUNHRYj(sROk+cR`H&KS6!Siyaph76^8Eu-QOCtJiM-sB6^=fe~Ik@G-yw2$NZEe zIeEV%(S-iCLci<0duaUu_?05RtI76L-9^~M?2=b zO=>xkA6DpILDSyQj`jGKB0rC z$(a|^g#`;<8Gg~s%vuctjL)ZNS<66+FT9qmIQ17L>c zWBlwS{uQE+^ZQs3<60rUpT`l5@ZWv@NHcz)z#o+HpQiskAs_QHNqn5YC*(Pje}(5M z*vb9ycMAJGJWnA^!k=LGI1?m)hTnHX&vO4m(Pll$W9T{VM@R=K2>h!w$N2BgARY(T zN&gW4EgAYMzn_KrxgSA1wC diff --git a/release/src/router/openssl/crypto/evp/evp_pkey.o b/release/src/router/openssl/crypto/evp/evp_pkey.o deleted file mode 100644 index 63a0421ee6a02ef6b1dce1027b5ea8b9a6356c88..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 5996 zcwWs{O>9(E6#izW|5M2WhgwRhZ(yXu-!Lsjia|3_3RIdh79`+i>@Y)Hq3zgCahedE zL`b@57}Q22VbKt9)ua_oWC6j%r7T=vf{|!lnz+EEi<)5SIq%)+yYJ3C>PEv&CTGq$ z-}%nD=iYbUeIK@W9&ou_$PX7PU}?bP3ZPs=w8hYZXhZ<=c#87da30x(#l^+E5~SZc z`n~)g`Sn77!FbO6%gnDl`&9CW3*!rh-S4sSkK6q9dw}bW{<&+OM~n9wb=;q+#od`! z+{gjfavE;TR4(YAdRz>UJxBiB7R^n&W6l%Ay~gJ$evaa6DPE&^j?KrBo~xDObR~|l z6)><9|EFD^Zz-lU7u--Gd&-t}%(LVh^dACyDAa2hD@a2q-S)&Hd>%WqP!8JYwe>Q?DM10I? zuEo?0=Y5}Y?v-+Gr<(j!An?|7HTGThA)+xph?5i5&|l;je=y=U@H*TpCC)tGC&ag! zcsK{!*>;6&ny}?@=g8(2wraR9Gqwc#Cj9(RpnakO`zP{sRf@Xg-WYS#g)IxPpY7BS zs`qw|`ayeaHphJnJM0rbJ)p-Dco)#C!$$X6A-m*V{*+$0b z_+qJ7QNoz9myCGeR)FSV_}s+tlBl5?>n{gr-MzH#G+%c-cnQ}|GS_xMo^xc5%PIiKRQ<9-X$el3G zzNN8;4%R-Buh6el;JB_gVCP$q70DNcy)TT5NVt4nI>T&vZ>~1$=DZcK^74|%e68-{ zd@0!Z?n-=Bu=qZQoiF3SHwio6Ly4~%7T;ai`R)*3s}z^#y8}Dl9}?dRSbRUh&iBM! zxV}7ogq^RX#^Tdp@h!m4SK%qnHxD~sy~MW)7N5^$=hGed=z?P7YmxYTu=sWHyz_!DEN~CX%zc+1F7aCl>x|^_3*r8j^139MKO=d}(?d2zfg541FFz+- zo6I*!NpDGk618o}_7eQL2x)kfD37fY*5!<>mn*v5an`F8y;{*%D7prDcx;_y-KXd^ ziZ1UU*6S3#UeOyAT~~C!QnBhUfjm6Mn@83+80*d>0^S!D*dqDa*COdW`%W9a3a1tS z1)IOxcrVEQS@FNs@UOskivOYbUu*a^{I2+)+Wf>IZ3*@_xMaW2I0t2am(5>;Ud4aG z=C8$Piho+@8N*+Pdy4;iq4U|Ziq`Wt#s8P0yQMA6`dXoz`5UlV=#vJYAG;NNhoT=> z^ths@75$>3UsZG@&!u9iGs&^gDFiy(!f?KD$9hw-ME^(%Cw7K+_oNE}&iC+Q5o~w9 zl^2U(dyzZ33biouRb8NDQ{kOmfR=Q}o4W!ms7}4c7s1=+uiWWXxM?l8-?w*n$5Nx| zSaNuH$ST%;$2XN|cgOJiULj#CzA>vl&ilP#yf}0l=cmi zQ!ipe@%Nes`xBOf3r~-wlIU+v$MzoWYT}l)w;eO4L6w-(h#6mrOF>2@V$jF6aRR#6 zn&*#u9q=y8mw_xxdNEG1+yH#bl3tc`EcqjWo-g+%if2iOV1(s1if7qG@hrv5yL65D zo-12p-Wj}g4)%Hndqbg}pLefbXy^0YyWYVbaIkN5um>INn+xqs?cM5N51IXCe@e(n zA*Y3W#Bw{`L8x!uutVN$g?63oJIwDLZ;ScO#C#Jh>7(j8%U6M~eu*PVssMa!}fiUkJ|0!lF; zoV*MI^YgcIg{23pmvhtZq|46M z?QS=MN|miaN30v+E~vc>;Chvy0=L@j!tK=ResjG=n@zXvb>KFQHjJKv3{H7lWNCo+(({jCTrQGn~uC*GCS~EEL#l7Vm!0*|B z#6`oOmTO+d*?)+eVCwuu+*RGE0q1QcB>N<$(R-yBKhlmR$5_q z!;fF8&o;7bV`AA_MZ$3dJI7~6XKEe4s?eV}w&XzHnK1lG_WvPdjQf*@KgH*F(`rn^P<-A*SC4SSVo?+Bj#9)9rrU@ z<+1i>#eEvciZ?fy68C!`b<$704-KE5H#E}2J}UC4-mt7cCi@wu^{jYPF=qS?SD2m3 diff --git a/release/src/router/openssl/crypto/evp/m_dss1.o b/release/src/router/openssl/crypto/evp/m_dss1.o deleted file mode 100644 index ad519a992fb422c9a76d51e2ae0fb24197f2044f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 2156 zcwW6!&ubGw6#h2bHrqCYn5MO$VgiLmsEe&tP(=E>3RME7)!UkM)416DFuN6dvXmYR z5j_<|JbLx+!9T-;hyDqA7j)jvOm=qKpk911%)Ix$_r14oXWpyjwH3oKAjN=%NCQd< zAeljFHq?q3!w6Ji_BZ$kxy07x|Kh)R2Y5GGI5{?fgN}t0wl7Sm_7o0|fa6Xf|ABpV z-YgX7w7BCA*;6SYgD#B;WCY$bYD#f7j7;P@3`n`6tBfYrst+xg<^!;LHXS$oE2 zy|w+ldQh&gJ!td&sXPVMmjP_I9F$>Kd>?kZTJsv)O*-t@Ew>H3?p7nynw5eF+8-JHnBK$7xq@OUavNS)8E`nE&$;@ z8xZ=O=Ff<|AaLd%aFc9Ve}S7qn6oAS72(DeT%XWy0kL=Rn5}&cM{#89 z=gSyp*VjaxFK0!3DMWmSi1QVD@a-ecH>L2U5%Il+c3%wMD=Ct%gE-%kMbnM*Wf1Xw z1n0XZa7RqZDshHb=Md#2dC!cWG@RVkIq`*ElGn^Q3eHP;DL>Vw@|D>Cc&6y;T~bB0 z_u?SzzBbLgK2)p2hykgRR3`9?6~349`-RFNBMFh|G21!dY?GY-&KMce*;T^ BpN0Sc diff --git a/release/src/router/openssl/crypto/evp/m_ecdsa.o b/release/src/router/openssl/crypto/evp/m_ecdsa.o deleted file mode 100644 index 27e88cfbc18e4615e9f3929c2866adf72cc424ac..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 2100 zcwW6!-D(p-6#h1wHrq6WnEnv7Vgh0#$e^`?6_ILft575$mEuj@WYZeR&ys9GuhgP< zfr|8|Aks(h!W-Yf2k^qnK7bec1UhGCwmUmE{@i$AnDhIcvuDqoXUl6VmSrI%3l1U) z*hm1W94hldDq|WG(248c;2-ETKWF}nedapwcD8i5Zv#8K4i5Q!>#VNNU}pgA@0N-O z{Hu$0sk~^!?eCI4gO`J0`UBo9I+Hvy@teAa(IP)yD6B3mT`QJX@2#IN&a*kjd&~My z+kso-chHmfB8=9ioX$DfHl!EDXS*u%jTTFme+a6fG+io{H!SL@j=@cO5 zZB)sNhCQe5lJc|v;5W;U^A~;>AaeTQKO?__=9g6R0uX->{5&`Oh_3K6rs?-mKoN2- zMwB1bbpvs{FNjlUt03MN@-yorT0=bV2Q9CIC@;;Jj`t1HFQgFf5#o5CQ!+2%r4ixL zFV^vL*75cEh~s_L@G^+-ULlTG9)kA*alE7x;bjrw?ZKEAOZMt0PTj8&$D7gca)|KW zL*iXjegiJ#wKz+i6NqvWz2nM{hF^H=`{ENH5}zxlAaN-#<)_+oysNx_4>ehzC7pDA z65oI5Hrt4@jm>4pGLoD!WC!Dlr=D6zuPU^sMgNG3pzll@_6$xcz98%w!=4rIJ+fyF zyO}Quoow;qbUBZ6iYL50uRr{cMD))VG?~zE8*;^v(UvQe)p4}_M!s?{1jgR zc48C9OZueKyXSjn-+6s?d+m813_NsEE8ts35aNDVssZ+7eIrc9<57PwxqCe64=Ezq zPsJw}aUxmd6~CHHWFG>Q#v%qKMFGmQ*?jS`1g+8>#M3N!pHZC5&m+)u$$7RAZ3EQk z0p(7C)|XB_)O@6Uti^XMqq~9c6y=+%Ez5Uk`FyP}fX1Icp$T8}sKsY$H#$GFd2L&O;m*ia;JE-Ohb#CA1v+B&ip52Ch?&Igzt}&;JH6~Hoeo^TF THrW5~8NKc34#1yz8qpMgk;*IZ diff --git a/release/src/router/openssl/crypto/evp/m_md4.o b/release/src/router/openssl/crypto/evp/m_md4.o deleted file mode 100644 index 5cc2814d5929ea968a98331d2ad3c2ea3ffc71be..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 2152 zcwW6#L2DC16#h2bCfhWGn5MO$Vj_h`kww~gP*kF|twNQkRK$ZZX*O}8Nkg&~d#Y5A z!HTznh$pXJJ^C|x>`%~}H=VaL4KkYd3>gn&v6 zNMukcg{X)Lj6oG}(hEAK9#nSXUwN(YLcNwpz82pYOa7YQmO>d3ymlzS;m9=);>jXH0oB+am78kf|_+>u} zBF_Fx+%!|?AL7m<%-M}8ag$2ikieG!?HxQ~`qGFaxyW=xv42SbdA8=54vRRd>l$>v zUFafx73h7TII}*ICFpr~mAnq3ymjb&-@xOfNWLe~`FkM{hl= zoU?=;LzI)`12cX$;^Zpt9?4gBN!~K!I5;omrTkQz%2#3kho@lmE~%p0hw%NU>a&eg zwpIyYH6!7Kft}wyqn=vE)U(-5k(NB@cP0&gihV!0OoslH;ZKM2JMyOuznO0cs@UO+ zQ*jn&#Gd%Ftp0O~pZ>F11rz&K1K%?6Jp(^BFxoU)-4%%0$S13qr{NTp)3@5{RvUi5 zi#s<<)rByOcFR1Jwznz#{)6k)zTfJEo9AB7Z*ItZv8?E`!{=Bm$-gBr(bnNHexKrF r{LPJ|`TdTk_xq{#(cHo3M#m4aPw;b;FDLR(ih8DKJ#ddi2lev44Wzyy?81neNQkPP!<;b6}Ows##Iu>JOws!w5i2iV&!i+BuSJNeT z;Yp?1YLpbsn%}OiD|n;Jcs)hoxBY-a3K$-G9mZc`L~vI-t(MmgZ~{34gngC}xNO*E zJqyCmKE`hv{5>4!cNt;KZcOo;RQ%!sUj?-9;3->g3_p?*Tf>U}dlJaAJ;&CN@T0tL zLg(9uF49(kUKjE+^CMY?9(P}f>mZ6-htBsC+)s++dk&rNcap~?z7a%xJ?MNH>*)O2 z(D^b>#Fs+E_ZB)|aRA>IbiSg(mqx@#!$|8Fi`PnuAj%5R3B+-2{P{9sM;fhotqc_}W%r`%M&3VR=(g4JG9Mb*dg>yK)) zja#;s31KxN;iQ3`!iK!=7UQ4=$6TJ!RO_;rx#5X~S;Di$fJV z{Nhxc#RYLDzAVfCl47TKHmhJ_zhU6J27YMZX9h-#MytCDF&p`074tNlqH_9Ho84-| z?{{(kPN}*Wy3uKcyVCI-lS&GF~hz>g@1278~LJl9(v#&=~Kh t#2EkPhSR*i6X}2Ll>2Dz=zF8%1N0O89>vRv_>&@^DcVo-Zz{%=e*r_}ng0L) diff --git a/release/src/router/openssl/crypto/evp/m_mdc2.o b/release/src/router/openssl/crypto/evp/m_mdc2.o deleted file mode 100644 index cda18571f14d2c2ae37d034a47f8b10bf79cd4bc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 782 zcwUWAJx{|h6ujUN3M_#MiKR>w2|b}umQF|&lmQ_akl0YZC`EExB}Rg&e}NywpW+vQ zo!G?jlAd(BcX{XdJ+H2AuRYI$frlO%2YgEgA?}Bj8(>%V*TQ5x9`y&4yT_CMkRp=j zsr=+3PNa&W)>l)B{6m1USj3>DEI~y+oy}hspk-Eoc$O#cQ;L(>c?3!qoab}VH9&(y zpxPxmEdu!xQQQf)RuyO}h&e#3|XubIp+VHiGI&!9Wqw6y(x9{W> z_t5O1@Fw}-WqOsyAAuhkDp(=$DC8FHHq@}jmihG U!Tw**_)W)e0sNU~X+$ah0Kb$hQ~&?~ diff --git a/release/src/router/openssl/crypto/evp/m_null.o b/release/src/router/openssl/crypto/evp/m_null.o deleted file mode 100644 index 7a32f4f4d4dfb72d2daa0175ed520eddeb455109..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 1760 zcwW6#OKTKC5dP+o&1~K#K>|kHKp+vMkr)q(NHD})7RkZaZJphjT?b}nhuvAwlj1=n zmw-3HtKiAs;ZN|mN00gov}?MX?QTh;7e8pKs_U!j>8{$^R|n1ej^jYVL4b(`th&JT z5{`B&Ya1(Af({>ekAJ{rzOMWSe}J*)z}>VZuzm;lxV16<-~n$=Xdk$@c}B{=hOd;v z{r%gG?ZXF;t~Per4&!gfhA*=+Y;#!-gnX{FGJa8lMPV6&wTDBnLEKC7Zl9Et7101J zi{kdE$HI1UV@CwABu`4IjtU+eOQW0QVJbo^`{40WD~nqBD3!Z(P^Ap|EbVu~l#!2f zz&iabi}UiVD;l^2RJ~G@_MYWeow6Z$-Z{K2P~FbwT|;$d;cC1!jps}I7GU)9Q@&nX zJi<-B>e~K0p1i^31-_;vkG|_J%zWQqLiw67--URA##84$v3TQCc#*~XehRO&ct7yx zyATSP_x-HhcNUZT9>c6#;E1~^sC;i>=KER`=Tg3TO!9q#$ah`x9&%$@i*w|nICUnW z%QwGRJS9~R5axKX_GC_4bT0J_eVd-ISrfgXpx0D~zVGAbFWu)^QJ(Q7Wa}rAJ#Eip&)}lrSJ{+*7VA&GE_DtM_UE677?z4Rm$TMr_75WGp!tTn>6Az49B{sn)Kf68B= zn{?N_)7yuW-jD{Q z&r|*(RTybi*-Bq*rNp}e#i0s8QJ#Y`F;5oHOHdkTAQ_A3ZBAj7oDV>=rIcc!+6Jg_ z2$Vbd#$Pu2fzczAb6ax9nw>Rrrzr1CH(0LAa-Q)QK<&*RQHN)A)RMEkYg3=G+(9E( za39qU1zt7p8#$|XhXP8QFReS8+gQyPn4163(`Ju(K062h?&0T`_uR%Qw>C-P`HhA5 W!QuYDp7omzzXiyrEJ=loX@)-@94&DG diff --git a/release/src/router/openssl/crypto/evp/m_sha.o b/release/src/router/openssl/crypto/evp/m_sha.o deleted file mode 100644 index 83aea103f114c4987ba2aeee051223b52fab35bd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 781 zcwUWAu};G<5PiWR6j%Zi5=)sV5;~z$mQF|&lmQ_akl2vZgtka-tHek!@e6zqKgAb- zo!G?jl0ND5?)l!?cmBM(y$*r^76Ce_74WShig7Vj=)YOSwLZMO}1bhm#fP_eZEBmvV1C>}`de^%SFX%|Be zDj~$w1k=QDu(4uAk0u;AXgqO14;%~!55}PB#e=GqW@A&6{7}Jb3g_BoaZGB8Wp1 z^+A!V@$jsP&^SCaw9iW&e(q$u*X?I~ad!F(i?jLBF;V8{WqBs7MP;dlQxH$%Fd0>*iGkhV!o4hTXrs+FK)5<0m`0-MA>cBu|!Lz2vx*kU8G5C8&u}c z`tsL}%ubY)#B5!Xn2%G+ID4f7Vf^gu?BrbdsBI`c1_a;d3S|#4J*mnjBd~eZwVJmTns**HZ^^-(X=y#e@fAOc8KTieM6^r?h{MjitCo0 zz!#QXg)c2Ti967V-n;La{WG(FV|L7VrN~Y)yOG%)%ngy(mIuN^oYHS z(!HBX@jwnxSugiADvpK=REi^DjY=`dO)AAJy-uZib<20lZ$`y#8CPuSkoV(?4u{^Z z^md1yQhLgvw<*2Np|>i%wOFU;b6a=me%pE+?Y)lnJq~`K!+)=%eV?O!zk}cJ@PEqD zen9r4{ib!H{SVI8q`XH)pO*KI=z#L8-JoBC@~c;Vbq>GA4f?exzh>p<75n`O1Goa+ diff --git a/release/src/router/openssl/crypto/evp/m_sigver.o b/release/src/router/openssl/crypto/evp/m_sigver.o deleted file mode 100644 index 5882e526196f4faa08c589264dc1ed49e3f10b7e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 3956 zcwU`X-)~cO6#w*g>&6Q6QU**#xmTO4I&2UJ8DudxFkm9;L?B=^T}v;eN!K-Phs>B* zk%z@JD~Wr6gqVsbFNPvu;sZqV!9Tz!A4uGzk7|6_1E!wy{odQ&``so#zRAtE=X=ii zoO3?s-22@=-g|IgAP|7N0_a9t0{#pET{^~xgcQRDtb=#m$L1SYac!>LZ#J8*bb+2{ z`1CRL))GA`iynRKk@TBJfJ+1B!o}dJ=AD6g{Ma~;Ta7AiHfC|7aSq=#D!AV0$L)rW zvsK_?4cJ|c;`)Gjz5>&LW?rbntl!0|MI$(dx2t4ZV>{OInHjURAgn$6Rzaea=2Xp=Ro1F(KC01 zc&1#iiFi5e%!_Ml5SLV2zgwF;yHfMYWJ~cZgq``89Mp-sj_8-@jDCSoRPqNAcL(vu z@iMx zecSFAu(4&+G3VynM_e|WozX=n-vGLzYaF{ECL+>KBm2}f@y^E#&7D8C8PqipxK2H) zaecf~uV`*>)~HuC>Qyb~^wv^(`y2Jvpx$yHhg0t?IW4vke$GYJtRik zzrNIe|DHX&jM)A+kGx)5&rY@l>gVc+t*e z^CzeHM=oAS7ZIOK+o|bHJekVAvP~YdQ+)5y@x*90W0%TD?PB)i%)V?snOj!>PBxQQ zwdtuuDVsTM7Zcfhw){V^udSqJRH-~MH92YL%Xs+pG$8K5kRw})UUzoWu?s%Hj+#a{ z>x1pKK*TI)9=m>zU56v@1bp}OF?#BX9k1>5tn!=>^~!s&kDgA)j`MmIe!NBam#Z6x zpBJ`^c^uui2jP$V9>t|kfr#6UcH9E|cm@?-UIs4*Ki)jyjX~n|pp8c_st<3T2*0-s z-e>UR-RqScGTv&m@vg#;S0K_xJ$^3US5SCqQ&y7x?jRb^2$)#rqk4yu%(m z9c{edA@R04cK;Aw#N!um9=g9;v&Sn$3H+hhxw|`iye5cTiw@S)Z%RSL<@lVN7q3pF z&3kzE&XRX|&pYr}6P^`Ryn?<=SoTI_xl56|6}d-|SBu{A;+fD|lB@4kWF6iWY<0(# zI~6%1z8k#worq9AFMIUdgIyk((GMu{`-)speYX*$UiCauZsM) zBLAz%5l@R)HWYcgB9AHZyNaB1WPYb2#Q!IbYzdhxCY@U#egevku>AFs$P^OkY^fmB zZ;U4P96r`IcjOaOg_(qX#)BYy-6Pj3XD9R15@`JOy~h)$MHu)m7#X!?LkZ?xkW%(T zyRBi!y!}D@AY+#kY5QbyI!C*}OXRa@ytVrP@7qceM_37MY9^nYB)~(55{2ny($~e2=sZvR4|tdK0`qNB?y3{=DpCr!K!4 zAzgl>!fWMsHXM<5VfriXHt+OdTi|{DQonmG+<9CnujWka*J7KyUqX8+a zIDB7(>E95pAp8_i<(*#GOT2HQZ!z!m4`M(2KTC0Wr+*mIyc=ZCySWsXT(PQK-m9VR JmGx0a{~vxHhkpP7 diff --git a/release/src/router/openssl/crypto/evp/m_wp.o b/release/src/router/openssl/crypto/evp/m_wp.o deleted file mode 100644 index 98a51af07328533337156f602e712513d216fe2b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 2128 zcwW6!U279T6g`_wn{69HOg|{7xRF95$RM=^6)C~e)`$n_KWc@4*>mrmbMM@pnU~9@6~izP!GMLB z0b2DcLjl(10xSzK_ z^Ih9!zEITG9rwwe#_OX&_8C*;Ee@#XG8Fmv5|P!Vr3ZFlb$#=eJ#-tl6nmn(SQAY1P4MomQ*S_6P4<$5kLW zcf%nsYW{3E=fgPjlDJtutiOo6jUcC&km9DLxMaxh1IoR4&c`b)jYYKvMTqq3Q1#AIA}{HUBGx;A zs+Tn`u8)p_tY=xVUK+99Tc~=40eWws>e-TB2C?1;Xy?Tcy^0X&y@#rIPtwaG*82vb zcPETH;v^@nGs1BNaZbV~Zv3vrMRRoa2q*lIc-%M%p-XuwKh-Ad75V>YOI$unGGu!a zKYz(SQ(I*!l@OOR5>IK|3VK4Io*L)3D)Ns8`ykk$eU57Wba3wp(}6#&`7^kw_%oVc z&zFP@Gq`aw&js%Sf%I~``US~P|7=m>q`t0kN8@NY`yQ)7dH%#h8a|)Fqp3c*&W`8Q z-JXYMkJp}*${QOcXC+t?^G&fhHms41Kq43R(-QAhg12>x=CFN34 dIP<5U_AoYa@w&0e0rn}ej`B@}`KQBreghFjrZE5j diff --git a/release/src/router/openssl/crypto/evp/names.o b/release/src/router/openssl/crypto/evp/names.o deleted file mode 100644 index c3df60154029466f5e4693ad8de1e7cbf3e1c855..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 4880 zcwWU z-|zd)%=c#Ief=;!{ic@*C;{Ove!d2HZ;V;P8y zG0rmMF2}H9C2@27@93ESlFolMpB1JvB6KKTjtQ`#;Z{q0d}29&=_pbm_GOX zB;1in>}LC`S4=MrKc4AO{5BCEVLTTNn{p1A7q;M_t>>z((dgU5H5^|fq0J$p%|XT# zLu0V@vz%US>rt-gJu5zY7QNp8D9d4xKMRc^%AG^!%cj|O&bwPKOeq%|){;lYXXCf$ zPddTg2<$X(f3F-maNs2;d1&U19nPNAt`xiHQ?;{;^<19y^(yb@gI{&;OdY9WuAW0G zU#lTi_2x?D6HD}CAyp|>ky7Y|4km$JEqg>0cznfI#M6J^!BSoBRK z;G5HLX0nG5W`(!5RIPhO&3)jt%vAd5BPnf#M}=y>!h)A8pQ>oqIj^2Amgc-#J%6^G zTlBiP`O3PwbH$>F?&9EaNEMbA7rk;FYiOGR|2rKOcvAD*qIU()T7}0pFx$(k^CsYr zSurKvh{THs{34*#5pS_)Rx(6H|2%sJB;I|SbGNXkPw;47FGJP4E(6Io4K**s+bi*c zaSIyneh=Pz8ZXHfKGlVH8tOWxHt_E`tz#X+bzFj~SLvbm1ysF?q&J9A?*_E>_RzZy zRqsnlZ#_c2J5cp#Lv+)-4OQ=!q-P`4yAM@wis?0_xIph7RK2@QF9WWZK&TfrRJ}V^ z=l-K+8mivj1m}_75JJ7}n%=!0dakCIk@SWU>K)YdA`xy2TA(+n>CH2}d2qcEgnGv{ zy{SI_E`t{6y{+lpPVloydYcgHRfXQpfEeZZ4Vobymj3o#KrO*|?@Q}2q&~O{s9j{6 z^R~%r)F3akA82l}-s}^M+eJ@rvOR)7T9BHhMOn&B2+Jc9?$>avoijT7rk^3%Kj7ys z^vfA0|2hp1YIwbdZOF}1GEaC&!^0YucP8OYkek)s4FT@c@Th;!Q=>DTVDsN6`RSdf zB}}t@N8u0Rl!DjeoW}oL@!Pm8aMQ;LT+{eJYxq|U|E}RbH5_aR%1nagZ%En_qRY$a9C^PwEv zQ9!kaV4gNZsiCyW=}0C$bL`l3wp1?F{pfP3xT{tUg%}rwd9U!UG$Z0Hl-p9G)}m%c z`G09M#_vdz9kW^LpJe~2sAsS3YwAbYca3`Xr+bC^ZSXH7b32Qt{uzFcn-lz<_ig0& zU34SYkF!n3Brp&YbyI8=UR3a+J$RcRQ*ZO?dUPJ*TlhDd`n{s3a~t2v&;5YIze#Zy zSfKuC-~)kmJ-YegV~=ll$Ue@$L-8bk5Ahv9k@{x=Du(0Fv46h8eqHc>5%{j)JrKN@ Z!R`7u6JnfwB7R!L&x`moBL2Lv{{>{ho&*2@ diff --git a/release/src/router/openssl/crypto/evp/p5_crpt.o b/release/src/router/openssl/crypto/evp/p5_crpt.o deleted file mode 100644 index b446348ece6323bbc7c63e1bfb01a45691c5728a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 3348 zcwUuPU1%It6#jO0lWv--(->>jT4(CgY>F&NOiR@$nLts5;ev-S>l-3J( z&wTg%-gD;Mx%*+?!2VDu1b>7O#To)Cb-)H0sZIyQA>#>%V+GZJ@ju3kG+$ap)yhh> zTJ_Pgz>i`n%xmUuZLDBgi7|Tadncv!^rsH?4QcP|C$uR&KVePA#|(2)FSIIMZz^#k zZ?zVUllt^{JeSq1oY{(6J>%FqYVCViYFig@wnbf92uG_oTkhk>@;&@e{tMU3f8tvC zcYIr3!Z+o+xLUr0E9GBtxqKU!%3E=x3@q5oIA2z0m(YpxE$aLt)Ke8iL)YwvWhJ~R zblr{uO(bgr;nOmtSRF>2SuaAk5oza{r;NpNJtDCg)Wr&@kFmbG7hv6A09l>o+>DkK zoFl*EB~<}fM!|&^bvB8ONH)8E9&YPc+l! z!)op3Xntb5xt)svKRI!IM0Kp)Q^m+R&u(F};usb?IU z(DO))P3LlY-ojXas6ulH~=z?VI$dUD}M$WhVh9D20eD{y?8k|4KLkc)WuHK69Z za}>2UBOcvNvq4zD(dhbml4hMJ$8o)dT6^=T9X@XWwRvH=s37P2O?z@39$ut58IWUs z5w-TB1Z3X`*6dBAb|1HB9|uG3J~m=)A0@c<+B~_fw8gNX zyb+BxD-F(GHVK%{dGrcc9AOBBa&TP$Z^HB5Ge^=yzi|(9jho2-8-hI7WX+eG*O34o z4dCejo(SzYgH<0{G_u{w;w24&dbg77NO_Stu#vodLWjfQ1WPY@nx&f7Bm9mEnNu(#u1awVI95=ZM>lC0(-xa&rGqR7Y5%q z*T0(Lu&L*VhX;BM9XUNWW}aC0D(Wse*HJ&F!>PVOQq;z#^h~~}i#v9fW=ub)5;d*D z)H`tNHoHAsPn0gSXr#k}KNF2lyYEsX-S*}@eA}ZdOsO&UQmq>4M%TskSs>+MlPMk2 zC69i^^f@|vnNmaCVM-sEnB?+%C3pQ@$GN^H`pb-|@gt0hHiupLm`A(9uAMYfO4b}x`q0gL^rA;^ IG2H?D2O#|p9{>OV diff --git a/release/src/router/openssl/crypto/evp/p5_crpt2.o b/release/src/router/openssl/crypto/evp/p5_crpt2.o deleted file mode 100644 index 1ada969ea377d7f4e7208fe8975cf3a77068e60e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 5256 zcwUWHU2GHC75--IfD;E{ve`hpZ1J!zHjwouDM%DS<=_ND3E&2(ctCQT#3U|>=@xv;Tb-9@RdzN3`em zkoMH>*Phsyw8!>E?U8+6duS)L2X?P^-|o?t?I1p}ft!}`(!`XuWKC$d?Mdy9UH>ZR zG3MuC+>OD5PA}b8Q-)gTM!GdAD%y<-LfXN+tNSutu9#?$#{%qUTg~aTry#ERTnl1 z2Z%LSWR-lGZc*RMQ*t`vS`_cKlV>Fco@Ljx}qz71GeR$J7?BeSx_C zHyU$tn9J$!Ot+EVANJfU2U}v=vQ=FR5t9ZzMEI}>9~R-mB79hc4~y_&5k4%!hei0X z2p_brtDc9-U&cTJjj|p!tS74Z{aN=Dy(db$OUiVG#hL%tl`jFO6 z)DCcJX98d0+TE?H~OY8Zi(M zdbPgu8~83r{ClC#_z*8qt!ejQJRdKyZUnc&+yib*x$PaL`Rv0TyAM+{tlJ1PznUn& zMCKh^ZL;sH`I|cRztc;Eaf>i+5ymaTxJ4MZ2;&xE+#-xygmH^7?)1?do`u~#@-g*D z7xhStdg2J>aES6bKt0hWd%~DDVa!oa%&*WXwHoLrd%%klV_w@8S#KRXOiZ;E9Y=exaX)? zQu&QyxI*^6mKBMr$tYST6LF%kD%_CXPR2G_m!G$l{T@WkmYr-fxQie7f4R&e;+OI^(qF7OlBOYi`k+TeRkcYk`p- z1tTkjkwb)$1B8z@^3zKAh`9GmlQ1$(7@1uW`OmF_V>wT8v9AOcDZT~!qQriH_N1L0 zt8>g;_<`5$cZx-_683`JEC+)iWaVq6;lI5 zi+MpuDsRQ~L=n-UR56940#IaLd$2*cer#s^$8)rl8rJdZWs@FOy+H?|St_`QN8>@7`UheXiJlE6Nj_Ba{ z*jPGS#Q*=i1vq!fO_Gl(@_?j<)bo6S9sz-R^^5gd;rPtyF1;NtJ+I`y4%FOrFVfFc z^!PbQzk1iW*~Gm7yg|P@smF1B1GV=4h}x$jOQ5zctk+)&7FEBrKh^l1C%+>QetoF= zM2J zN``m~VS8Ipwf7vg_Lh9&o1pSk?EM0@_C}hk>#-G8dw+tk*CzFj&?NWQiza{DP{kBK zXGrfaie81f(!(SNPZP<#gFUaL^{BNsNrN8OL^npF()%8l1W{y7*dsFWisE=@d7=4K4DWvEM}TMO<>W-R|PKu16LA zl*0EZd{W`BDEu{r|FOc)DEv?4JNHZz)$5)j|CPf3Ug7_)@c&ZyI@c02-=grl75+Vi zKdkU)6+Wf#-&ObCgbC{xIx``d}+>8>PyWx+X_;^!|WGuccLbP&=fm>4`s1IhG+U@qk7pp@FjGuhN= zb>iS?I+eYe!&rK3Fn8S<$7|0|b{#*N=;`hgb2GV-bROM(eaYNa@|Mq!=T#k=o1~zI ziz7IjOJ~oW>+Q;YCc4j%TajrY4VT~K<$OAgjqd^? z#BLd2#g|Cg?MtMZDrDP}#qne=l~0XfZJyh~y2}JlFN~yQgVV*)*}wI-#96KHr9FXZ zRLJYLiM@3bQMw4iPn-BCQ`+!nnbHRQTc&T)zE2qQ)5a2#G{$s0opns<(4S;V7iTYF z-2Y{|S?XeZLq9ud9@DqQdF7`MYVLXeE;^ft*8BMziu8%{XLdbphL4yh`Wfp5#ktAz zTQxzuG-0QosR0z__(x3XgYO>GcWCcmN{9F=)2{-rq+U=Lv{x7NN0?ImmYD7Ve#ew9 zN~=sG>+|ZB@$g;8zpt9#T}gip5yzh;|4Q;c8P5);`;~mi?*vo2c+JZ3PngnrzGV9D O`Zzc=|9dhHivNF4mYduF diff --git a/release/src/router/openssl/crypto/evp/p_dec.o b/release/src/router/openssl/crypto/evp/p_dec.o deleted file mode 100644 index df846ecea0500f4e3029a60f2c39fa6c32ac999c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 1280 zcwUWD-)qxQ6#mkrS=Ua;rhG9zTWS7aVM(olZ;9boaAIqoVNlnL>(IP&NfNw(; zg{rZ3NS$oW(7%%Q_(;S1kqV{y7RBl-sMXmsT{dn4lyg)9v@k4GFW~!-YbDCp@L?2b zmLPEr)hFFpuH&SJjrH~0dVS;3lWY14TW0icY_Q)8ESr4b$Npvd6}Wo=m}3PNm^~PP z`EIAX^P^MdhSjz zbzIYN5s1!2P54?at|i_`bn-uRHL}uw=&mE`=@kUsqM%a}ehbLlnP+5rPRFrIHY=>3 zD)Bz%$cl-M^Sj8_+d~#EPWAf+7%82{&S@XS#^@bF9AaHROBE)qCKSBtQb6Ij`C!C8N zIiJb#QjRMSAx9@B^75Y<^D|hW{3}A7&#WeJ{@<%P4v)VS*2dI_V|FOq9e8N8TBf%f pn6B^leY76mGd;ii+6vrMp4KdsV_&SqvsNqdovzHqceFwW@f!>he&+xH diff --git a/release/src/router/openssl/crypto/evp/p_enc.o b/release/src/router/openssl/crypto/evp/p_enc.o deleted file mode 100644 index b978326b482ec6a88006f202071785f0c94416ce..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 1276 zcwUWDO=}ZT6g`ufOs7eeX>n2TYX$-nK^~>HpdwN!v4TZHMA6ldNyZqPk6|)}77F$U z1iH20LRxNt4F=t7A1&4+n2MD)Pr&Ux?Ld*9sq-pk7NT}hIVK!S!T z0}hDH>8P%Stc8@W zhAMI;bK{UIIl5_lBJJ^!jyEF}O6e8yr58|3^QVSvUI!@VNCR|J2hQR9kZUE1*YS1~ zYE~d|4do}@ST5tl!q(>IO{2W^;L#Ohjjb~JH#XSs26cyg;79&>@)fvy0a&vh)WMv= z0L*t=?cTFK|L8EU>4SBfuCv=>b*Fu8HCpCDtn#>OSMOJz+HSAm?|XsW?=-<0{chLo z1vA?<8|Q&=CTh$#GW&Y$%~&V@LuZj`|Dn5zu%?$2bjyNHiTMp6b!VQC85teNI@!Fi z{#l96u|SrOb)4TuI^Q1BNcO5o_l4^Y1YJ^h8|k`VmFRrDu7+vd9Ypz7V%<-&B_U3V zZ4uMnaj3K?&QlV6(mRfK6f`D(hOB_7F7Guzo0xA%8}|e*_CkcXuHeT60_04ToH_~T zVnxp9GF;1W1tR2dVj?g6=`o+d62)H<_Ib}Nf%E@f&v1DBrLYEOJ{-H{+0FLAL#0-; qz1_feeZTLc_V5ldr_*jE>M&of5arDmqdu#}=sp)0qWf8-A^ZmIE_|2( diff --git a/release/src/router/openssl/crypto/evp/p_lib.o b/release/src/router/openssl/crypto/evp/p_lib.o deleted file mode 100644 index 91397fba7478af9d0f4d958cb153266f3bb01141..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 10492 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 diff --git a/release/src/router/openssl/crypto/evp/p_open.o b/release/src/router/openssl/crypto/evp/p_open.o deleted file mode 100644 index 178216dd853c315c27a2d49258775a79cd35b952..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 2396 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 q9|i_Y9|3-0T8+-BKm!~yO%Gyy@Qr2hqn=P926 diff --git a/release/src/router/openssl/crypto/evp/pmeth_fn.o b/release/src/router/openssl/crypto/evp/pmeth_fn.o deleted file mode 100644 index e7d3e3196e0b99483364c395b0d1ad8dafa9f498..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 7908 zcwW_5U1%KF75-*s^;x*>#dV9_B&>dREG>zo z&F&_|#gN4bX-E{U0wG1VC?fQsP~&x-JoF)dg%&qG<3uFfQ$QpE)$t?*Gpm)3CQKT zcIXNsi&nW_uh$!1lAeR~9NM)wD%WnReY<#9AfDb4KNN^h?0Vb?j6cY4_(5QE)ZX4O z{!xE_G=UFm7B1J~c(2xlifLCWl=I?h2WCuQqdJ4R)m}^vdPo~p6I-=T#1iMxk$4N8 zi9OdW!zKdMzS;|zU)J>mVtT^FxrfckY92!sh)RYDc`PG3ral!|5Th?l`X-u{AqBi5Mn_IG@M8 zpYnmjmw>z1?l-5HyYuZju>UP@Fxo^^>N}34mEF%q9 zE2Vzht(P_Zm^2+HP1AU{Hima1wPjuHt!-E1$M8;7*7#(E#*6JV)^}>W7@_ff)NcGM zXne4Z#*1wT;@16zZ=xlfIS#);F zkho~sVgAIBYv?`y`rxwb7!-$&zRe6HiUck7du z-YeD1^j)PRu=zPiwaK#%G8-QXk>aLu>38Zl904 zcl)<%-Qa7;zo=b@+pdS&d+X9j&>T0{gl*2Cc@KDWYU+Dd^3fmu zOXb-)vgM*@7aMP7=lL>Hx!Lk8QgfveQblJWzkGUyU!G1Caz&(;a?aed3#r+;`~ye4 zYHpM|`qNA{^Mj+OvN@-if6mF~m-FTD@O<%1p&S`^mRrZ4Bly#2vPEZpgj5c|67|DiJhV#0oho;_0D;4rXA z_M7x{h&<-?eFX8Y$&M7uAgBxHZAy8Key0)a_bl~m!Rxmhe!nXS;=QSd<2{8S-ll}t z10RnzhyY&N2*-O3LA>`QygvANv>^uY{v3h#TLkg0N_hS7@&1k=-XaAqOYItXe?t)O z`mp!k8RMDo@xDM1FWwQ(?=uAP_~5qS;SIpYyF&}&y&Hkos|E2Mk?;oLa7K!wTM}gcpa8H>==Td&2RaRPa8L@D9MoJFDPr z_Jrd-ui*8K_;|zc@qVS?#rwkX&a3kw;f=t@yCU$8h`cxVdh5MWIFI9hQu^KEyvC*k zzu!M7{hl51_ZJ&}zn==cw8*=7hqvw;MH3I*Lz;Uemk%iKb7{PqWFtpy&9a1rrRz`pc`*M%$cPW0i;`b=NJR|J)E4~T27y%{O zA5{Dy#g|VM_75oju;Py>zNPrK!dQ*RAQ!_ud1U{vJMUb0uNfeH?vdgg`lBMCMX1*{FFE`U+VbY9-Zw*UnIU&e^+qYB{M^|=ZwIp|Qo*ivNYcC>HUmrfQYpW@ zkS)v>XGu?|Sn^}@ONG$-(?!R@)bUf96FDce>cb)sa`(rPC z&JPN^+wr8RpAfe2HF4U-8}-w|R)qaM+q;2(N3?6?KOyY8upf(d*KYH6W1_gl92Q$J+)&@pnAY$w_O0mA$=2mk;8 diff --git a/release/src/router/openssl/crypto/evp/pmeth_gn.o b/release/src/router/openssl/crypto/evp/pmeth_gn.o deleted file mode 100644 index 334c55655a856f83c234497081e518dd4b48601c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 4380 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 diff --git a/release/src/router/openssl/crypto/ex_data.o b/release/src/router/openssl/crypto/ex_data.o deleted file mode 100644 index 0ddbde281a6e6b32e852b028ad7662ca8911ac65..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 12688 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 Z$UO{s$F>^zQ%w diff --git a/release/src/router/openssl/crypto/fips_ers.o b/release/src/router/openssl/crypto/fips_ers.o deleted file mode 100644 index b5485a7b2b7ac867bca471ffe9fc056af0e6e024..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 784 zcwUWAO-sW-6r7kC>&GE_61>!t733kcUV0LW)`N&11aFcw+ZrKlNLH{X|AIfrKjkmb zO}cAd_L2?^^CoXL``&(D-`zNl0|N&g)DHMo^aDH$D%ZoV>aT_IXf*8h#`jOB-2wGU zou^`%$}mzY^Oe4uN{SB&ibENKqM`uhVwTLO3s4s4pfncI`;5XUx#)u?i!>E;*)~9p zBcR&J*Z#`t2U?GH&TYw^D0bG!ouRrj+hDmvmh-f~1R8Jtj3zv-!@440~w=qfS`HiLb X!QuYDp7EQO-vXvdR=kM3pb7o}9#1WQ diff --git a/release/src/router/openssl/crypto/hmac/hm_ameth.o b/release/src/router/openssl/crypto/hmac/hm_ameth.o deleted file mode 100644 index a12db17f149b4aa9d0ac2388a963e24b10cdab7e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 3008 zcwVhmU1%It6#jO0H`!zi*~FMeo8pd4Ndy@-v4V=omSs)Fn1m);3&M1=JIx07&)rp< zg18R~eF(dGY(*rL3Vjfxtq(p}Dn9$rM|}%E^-;x#fWh^gxijpYyMZWp;4=4|@4MeQ zbLaldN4dpUB9RCJiy(oX2V98(gGsEM@w{1_zyxGF#ONLT2RlXW$$yOxwhp`9Zs5)K z;iIhs2~YRok*geR~c%|J7wUb~ruAN#wjnH&dx{gV9%^^0ZODZ9<0l?Tqfem2Y8 z<(gYrU0qDEpJK3Dpy>2Vz-KeY{*CC*-Fq`8?(d~=XKxzc>`me8y(GThGp_Ao3cJY( z>}&%!w}+9Lh+v%ZebNDLP>Z#JFU+BXRP;j(n8pr3<0$^rR{}TN3B=os0|V_iGUGl@ zlLuYg7IXhMFF!Qq2;EdPMY=%_?q47_H?~Kpg;)0fYzx`!i>cX# zr8k~Vow4RE+D}$vtK4+f>DjD{XEEqC-78I41*hr2T5mL9)!mKF%H=9|N>;5+fw?&idxF^J0KiEIWC-v3b>%{n|V3mYr|bOEk91ikxna@_SMquUabD9@nkps|EKc zq~I!u7iHIIp=gs@R84>l#JjOppSZ|S>+X|1Zh4A|(b#XrP z`|9Yu@8<~X{YlO(Xp!Y4pdPQB_53Dzep56n5 z*VQ5Em85Zj-cJbYT_e5cA@s)3)B6KLFYWV+Bs?ySi};Pl1UcERlJl3s3!cFmWlK_$ z-zYc<(Ks)!X|7Gy1FgS@k}Iz{+2nW(zjq;7R2dZwRlNZI7=j_=vX;*=~9Gh=PwI=l2U9KC0kjSPezg{4vND^>()G zKkA(if$=wXB%i-iRq@|f{B6a*srd5G82dje{x5!?*YFruApP9*?hobWP%jAeS_oeT z=3+Jtd!uF-HXAi$&tF_wTeiziiS7iH-EzLRg|n+mbM|s}Ew^T`uAP5%X~C|z9~=>F zxJ~5VT(MVP%Uz_4q_MeC!SYIOiT=Foe93hx4flvqUKPsS!=??0J+39hd9Km&xWvy9 zab9Wu=Z;T`eKRmAc=`!|env1v8}%H=$Hh2(s-MqilK!~h=}(Atq@V2P@&4DRef?A7 d|3e!V--w@#bG>VRUA%6%Za&YsUe3?;{{!G9b4&mL diff --git a/release/src/router/openssl/crypto/hmac/hm_pmeth.o b/release/src/router/openssl/crypto/hmac/hm_pmeth.o deleted file mode 100644 index af8b7eda3deccb875080846f7df037e2a0f32964..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 5512 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 N(@J&p0nb!t{{}hdX`TQ8 diff --git a/release/src/router/openssl/crypto/idea/i_cbc.o b/release/src/router/openssl/crypto/idea/i_cbc.o deleted file mode 100644 index 1d17abcad3ebba2eb4ea62d9d94da43fe5886598..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 5352 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 diff --git a/release/src/router/openssl/crypto/idea/i_ofb64.o b/release/src/router/openssl/crypto/idea/i_ofb64.o deleted file mode 100644 index 8fad2a34e202d2a75bdb268cb8db4c63de67e924..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 1792 zcwUWFUuaup6#w0O)8r=cPb?C*wM~=R-b5{zQlrdLMp@$;Mvyut6dBZ{$-2PWW=Vt& z1c!fMf^cWp!v=jwayQqN!mWR%FHQ%(_$c`5Lm%}~pL`fxe_w85zXZh{IQ+hIzVn^) z`_4UI^8V|&(~6>?Ckk{NTELzL1R_{UcdQhiLKw0UhT* zoddR$iGy3(mir+25q@y4;(O;keCurC8>f!@P6b~(m++Ny5nnn*eBr!vahZ4yyVecdbrLt5NL+siH5!CENGkckOZP*m2x*UIHQ$*kQeR^gQnc+_IK&n>FuP z!N1~~g8N1sZA@PlO&I^A=tQT8z z%%h$W>umD`V}MVZyen~`C2A{}FcOi=+&^_4_^=VcXVXSxfp(#-;D(`~X1MNIsygwD zdnzg>`jZ_F|^J`gA56>3oOANV~UPf&-tal$@{{(M{Lm)_nI`uif{_IqS;ST~3M zy1)57-lDFK!@6a7`KG&ZDK=x}w*D zo1AZt{L+#w_d*ug@53K1B+&*=X?;wDEmstFV8GS~Y#(INI$un-L;w7fh;J~=^D${( u^eidaof#{8FT-5LzdVzbwaQAdT&s9{J+BZo%4B5AM|ggBocuD diff --git a/release/src/router/openssl/crypto/idea/i_skey.o b/release/src/router/openssl/crypto/idea/i_skey.o deleted file mode 100644 index 7e54028f4bf6bad4d4d8497e9255107e0e5e41f9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 2176 zcwUuNO=x3P6#m{%l9!scZ(`6)tu(JqCK)J?%orh+AR%dH1{p*|LEPl0dDf_HLz0oH z8^h>INK(Otf{rkPGaky*MNRM3Sk1Q)Xyc%J)y+LutU9yr{0zVn@P z?m73~60m6M29wdC)!h?j*Sol2Qvlc#Y>}S-HFlhO(*OD=81#qhs z#C~fYw_E9_cnrQL?+G61jD+;F0@5#vNS9nlzv4#v4G#t<1q>7sgVQby&bTpH@z4w| zK-V+zNU(xP=p962pCc0g5s~Cygs;VQ{cX}uN%u*AkB2bmy1<9S*z3kH>@MS0H;(;o z0=K)Ro!8#Qx%+5T#1mm5&a#YPcosa}U#)7C4SFKw}p*VJmc26dyXl`gHT#Zu+5 zvu1!=DQm@iU2EjE&9&NgwUK{S+qPYsuWPlsX2y?`%bJ6{wzaXLZ8mUhc?2+im)w?} zp76`os#rYXKX_46=@`6a7&WWBgBNu0M9W?Q#(pJ5yGk%8DW%1a) zp2T>*uQ4vR?;^(M!g!xK0`0o%6TAX7bor2Wz}ueS{Y<=jNANCTypIBHIs~(iDIE6k z9?X1ki+6_x?svp-mY%@jSupv9jE^RG_G+JnAs!Q)rG@=7vAXQ+*xsD^*k*DL(>YtG zIB^kw>u`uL5haZ8gzT}3WO*iRX~Omzvtq)|f*+eG^H0Gk!ol=y+cjbP4ra^lfS>9` zEt{R8pYo*~d^U4b@^yNV>Kg2)d*tgr@)hUTtNC)JUbXY_)8-xEJ?1;%XH48RYo3dH N)_hN1@+X;1>%X(6LoxsW diff --git a/release/src/router/openssl/crypto/lhash/lh_stats.o b/release/src/router/openssl/crypto/lhash/lh_stats.o deleted file mode 100644 index 56a3f32f4683baf555a5f9b7d8ec3d4f3525c720..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 5516 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 diff --git a/release/src/router/openssl/crypto/md5/md5_dgst.o b/release/src/router/openssl/crypto/md5/md5_dgst.o deleted file mode 100644 index 6f9cfa0b1f96a9a496496fe793cfb237fa229a4d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 6928 zcwUWJ3vg7&l|8R#B#k10Mj!A%h?$n=NdpFXkOxPYiFbA+kQ`$Ng6$B07W6~NHb@al z3U7Hgj+|e~0~pz%5ZF#k#j!IxV8D()B>v$_D#b!sc9Pw&A19%*B-(S| z8%a+BmGY{l-s{`9PoKWGZ}+{@S68fBX&44Z9|InYw}7)HK#muy!&WPZ*(iqdxim8J zznJnFiC!ET85wN_`TG=q^QRs#so#iSa*X$1)}J$>|8o5K6Z%7r{xc&lR`~JK&^$ap zH)H|7vyAAbLaXQ?@`lYE23Jw{nG3UP*bx50~7EZidEBJJaD zJJlEe3^7x=u0)ZtFwN?7Y`a_!{=pT|)x#+Fz6`ANV5p!eY^FRe?ca`o_Z;ObFbhBL z)Bb*x2rg|nn|`{An5j8#y0s87`oip9piFWQKkck@N3{5V|#KU2;JE+7y z0dFH^D=`P}^y%Oc_ym_WoJ-tK5*KAzz|*s!7H7d6e2RYCVc~`bvm(OF986|#TT#4n zf7l!xRAQfiH$hn)_vagZI`j_a2`+7THF4(?H@YYr=$wi4b=fdGUNOwzlNRpEzhv8f z>qr|m?sgd8M~jfSAqVE3o9MTb z7H+&P$M)NvScdODoayI&*i)~>J^^o>z5fEG-ZA07&vBNX7VIF=(307(u zeReplVpqE?KbeP5DYN=KYX8ME=D(pod6sH__n6-n;7$7LF~;;U%Wn%MzW%WQ*9i8_ z^x3xahBDn2SF=7~nA^@7BO@xJ>nn_M->@~$k-K7HbK6IT_$S~iqkJP4<23y>1RdOq zN@6aOeU|XzTE=a(mOhKSRQj4M8#kI|m~o}<-bLJKF2`3G61y+GN8GquiGKnvI`q|Y{NHxgCZHm?5>wiCvl`-samOAJdamlhIt!wy6I zW5;nDmg05#>p!4ruj`2$7TkMh;L~zOtf9{~?KNVID+_mZondZD8vTDE?&@0d>W1L< zeTlf6_8Ypsl<`($$oa4gKkL)=izzEJZXj;8;NF>s<;2BxxiHr?8S0i?8#nX{+l|Hp zPZBruDtXmfe0SFncU_C2qiQUUKO_4fnn#(-xRJOK!ToG5{*JiO2z}4_(ls6%x0>f9 zIX!oiviE`SRg16o5Vzhm#P0#$dCKpFoOu#I@x^W=O6h;@c^y1}tN*AX<-P-GG-F}y zJ*NWnvG_xKKMOfWqC7{_a)uI1GZv#M(dYYF(N9vpmHI8zU1{rAQD4qR`c{XI;~&aJ z|2Wp%Df)`~E!H|UV^#Fy%M}vVTFyb%@T1>|{xF_CDf*4nZ-(qUp7)kM7Aq(@Be^Gq z|F!Sh{O|FKeyM|h?G^dgDx3e>5^KH2bo`$H68!PLt1wN2 zL-tNN&nugEJwV>-Dx3G0cB;rjf21Dy%UZ=QHV2z?ikxE^&fnXtBBc$~C3jh;?0I{B zn=c~7&G7wz=S+Szb*N79a{Y@&ai;?(# zF*)~PVU66CJE)(7Z;eo&`HpGbkz8ZP2}5@rGvZYJKE;82^DslxBV$uPQ-e ze+l`&jSC~={Qv1=>NCF?JHp|bMd3ZDlr{DS(YN?kU8u9tO_W}Os7vNu&W z2eH@Yu%fK%G5wF@k>81(9I*Zi_^X7cyeBFcnJ*M{#Xc=4I2$@Sq8GqF$5yh`7+_>qW2lWT@QFkyzJm$WE zk&&jrU6&e5*dAhS+soRvm$hv#YujGdw!N%vds*9Zt|PsyZTWqcYk0AOMO6g&ZiPPk zI1}{8Dfhb!WCxt`v#gir;is&X53^4G$&l!27TkAJFZZI~rQ>l_c~#^qx5dKj=UnR0 z3f_GNV-Ng({ep_@`avx0=J${LRphU~iiJJ=CMG!^?lqtS!pA>}kJRY_&g*AQK94o| z==|%D?D655fPuPzjt@ZYwD^cCunZq80%`^dFi@hq;}D)vax7zAqy2Tt;!57a(OQEa ztm~qdT-GddT@7noHQO>q#yZE9z_r^8wOduWpl;=lrJ`EIUxeQ)l{NM@xRPt&PJSL) z$+hq#Z%20W4&)@ifZXJ2sN|LAwfRKVI^dAZC4EuL4{Epct4hu>m%jji2qalmv3M^{ z8YoM;$w_Ret`|Q1Epj1?I;=dBth(7>mh@1^*`Le)Pq06a{T}w`OMf~07V;N%p@992 zw&YCq=d+)F=%pXHuZ~zgyVCwSO@A$-zk+yfD1c`#^PBEY@qCHnW~972IzW3SdQyyG zUEPRlSo^sV^@{a*680E~1^7N#g4piZ{6efl?QXe8*goV%-Jx>Cy?Ovf6s4>hqFx`? zmTPZ7MG;%%L$t*9y*E(CTFtg?v+e&7l+)fixZyHCtV8sW_HR&5KS*C$cSx~%;k-#OP(odWA(xwx9Fd8=@`r($^rT&hF&MtrZM*rtJTDGiRyUM?$GE}*w$-gAzzop>; ze^qEnl^j(yH8=Q!b+_KWz#p!xs$_sxZhc^LS3@J;U7hxO)96=M%eF35HaB!Npt5o6 zR#bMjw6<;8*e)OUS9UaaqH=R{OXHVYD;pZyuB);KP_%S?)ShS^xej@BuKjmW1_RFnTTgi1h>3U?G4UDgTZM^s5xx9^alO%b@0+CO_FldY zd0H`%-=?{?UP(qi%5OU+;>{!8HpjS8ysu&+Ufh9~hjF~eFcI$?#5?RTz$o6Mn26U; zJh=`8ZwAKkp2kGHT1I;J74V+KM7+~;Z66C>0mkuOfQ>i04_+&_{WkiH;=P&C3uW3L z7h8wS*kfdVg&5y^@?>+uGn4d2-=lNNvzo?>Q^<2{jGydPS%VYrG*g}qN87oVoR3rP z#($5%@wg_9a!p_&ZRd>A&Y9HqOlmtVE$zHX?HQBWj*V=!3n#VRa6T?8f}HIl=4$pM zF;PT5I@6XtSVTV8I`jp-I`h5F>d(X9JNm`W^_g$kn?>aN`AoapY8T+1N&3y1Z#i!Y zWd=ETn_IVbRW{*@XYj<6cYSNe`sTK+9T+=!H@9rw+R}ybQ`d3UvahM*0XUCZc~pV@ zzZqUs*4|d!kQ?O9Jr|evESqCip}n87`4+q76g0NKlPzrHehb$K2C-|$xI~T*@&_`X;d!(}ty1N2=O&aGtwK+UXe#X!KA%65bIO%`D zalei4{RB??MrQ!yO9v_j(?<6j?fYZ{xjCR`&)_&Yd7-O@u18d4ripLg1QJGv^Y?6H zJ`*ugyAhwm>rPyU8%xPC-HE+HbdF<20uk!Trk-r-$)=uc>dDq{u6A*j#K!9CV?DL8 zwR2xz6bpjpBU7*1tjJkbHkw!fpmEhjvv6Gvqq?sVoXfH@nguY*w-2}Oyu`aD@f1(#E??$ic|pNOi04~>#w^oR zNT=Wp^7*xLUG9U=Am>}8b8Jdjo|!CidMq;3dtYPJ&=FfY*l$R2kG}u_ diff --git a/release/src/router/openssl/crypto/mem.o b/release/src/router/openssl/crypto/mem.o deleted file mode 100644 index 7bb70663d4ea440b20ba43efbd340aaf5bb15f4f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 13012 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 diff --git a/release/src/router/openssl/crypto/mem_clr.o b/release/src/router/openssl/crypto/mem_clr.o deleted file mode 100644 index 0de1916d1b13dffb6abe4049450f0634a4db65cf..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 1348 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 VRuWs^qOI>wIT!(y>oNLx{sL-62Ri@& diff --git a/release/src/router/openssl/crypto/modes/ccm128.o b/release/src/router/openssl/crypto/modes/ccm128.o deleted file mode 100644 index fed7df409de4fcb69d81da83079d6c278f8a2c1d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 6960 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 b>F}7c#_SX zGw0`?^PTVB+4tMpU-S8VD2fjOY-qr5m4K$Bqs7r8s7D>V@>I3|#Fk=bp4hfs)J*tA+z<*CQs@eI2+e#O2Qj^pcm3zqUREasbVD<8qlyn%&$2=n>fn9Bz- zo7eGGz7q>p7p5$6I|DJBgP2)?$gOd|c}s=a01SWh5}=DQput@Oz)lhBP)^~FB|@em zBBoOHB&3R1Mqy4%+Jyc{0TNl@Qr3rx#zs8>5&VJgF6DeU*a)O@b(oF)ZXez$>)*xP z-0MpxcjP~EM~b07oH)09mKDlcpW2NN#bR?c-i)UcG@@j3*?0cFw;b+QJ5$pEy;VW%%BK}>ND)11jnUPR#Z7{c|uhCPk7FxW#PQmtRc zH>QF?&d1ML6tD$?#43m{!tz;jpCuMRZ&u=LqcsMs=5+j$JD`t2MEr^f_9-H6_(UwJ z{AHUBK3p+sCFU9BNHJDtjEu*69AkovjWI5sR35u=GDbsdixJtQ`0=^_iLDs6ea+Yx znd14mW&nE+2tA}|?8E6nSFi)Qh9IWHLQg?OVoXCDnUt9DqisTkdZQXi>grt$6*uZ= z4z92rWT-GtAgt@;{qa}^sv$zBiB(44 z0me`EE@HK!uvd${a>h%}AVB4#&<*#a?}CuVcR%ro<&iNq_R$k8`W?hmy@o1?t% zqoWsx(mg4z>5;-ZP<%@Fzn4a|uP5DuXlis6(UJbM=gyzGARh*!!+j%&4)yh?-aQ-b zNu4{?TnLCJPQ2C8`DSK5KPiX#tMa^0R)btB>{sFX$+})eX}*Ujm7=X3rMO5x(-T2~AZK4$gRIS)?;)EU^yuDMdBywQk4H8#GCfeHS2@^Ak+W4w5S8|A@QUgn>(%}6is~@ZtJgaJic(wP5ifG*>?-`5 ed|IyC3w2fKg&9|J4p)j7iGuzBAjl~O>d%t_X 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 LY`@^P7uWxPw~UNL diff --git a/release/src/router/openssl/crypto/modes/gcm128.o b/release/src/router/openssl/crypto/modes/gcm128.o deleted file mode 100644 index 1da840e39fa3cd4a0e7ef00aec135ae3f83a868e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 10088 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 CfSsQJ diff --git a/release/src/router/openssl/crypto/modes/ofb128.o b/release/src/router/openssl/crypto/modes/ofb128.o deleted file mode 100644 index aac0624bd24da8917477e04ad8db3960e896eb49..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 1196 zcwU86OKTHR7(MgQCO&X%p#)T%3zDQzhBQr~x{yH7x+of?LUmIzN%{cuFd3m;8N`Jv zZ+=1+E?hY=^$8aH16(Nh1NsMCbk~J2em9x1cZNt0e0=xZd%k-CDk_C<+27 zh~bz4--%2ZDCUMNjq^AI8Gqmn@LzbHBhT{!mZ!Kvag}1<+e_>z1aur9bgJD*h`RWOf#dXuHp-4 zW?p6Kyc$0;HJ0h9vACKWc%VRHvr9$C`nO?g4V8+Z@S&RB*wRdVx$)@bIMtL(B zIn`|kR;A>WVA<_9tX6entG?b4gU430(t=g1RPCo5R>|I)&yEVL!u^NEm3wQAb$c$m zxK^!~TRTnKrrfC2s&!{v|HtDJFnq_SeV&i38-8ZKPCG%D!m$4*>Si%Kv#CnDgrw7b zejNzi!Bq+~q7zu4h)eUY^^uRW6sLTh;5QN8ZyR9*Ys(1tMd*G=y5QVRUzhRu9U_yG zPVwU+j(Z~Th$f#zbU_Y!BJhif`jpR6h_6kYD|#rNRo?G~9`1|$j56eT9fuwyXpt%{ pC}#Rx+4X;NrDOjb-m za7il(dGN*$FytxhW}8in+-=j^5UiHnG!H)b=*L@#|3LJ`J`~1tXLp<3U@_o<%bl}x z?)lyGJ0G*3w05*9ih{Bz(6FzO)Brvmoh`0n;b}Zo`4*2}bN<2;#kv2;ah$R?M(a6R zCuz+&_d-|jqZq;uq91ofH@*|^;g0CSZE+Fnq7%172X2aXncIO1TfdH5{GAWA)^Ilw|{dexgHVg2g8{}VNo(J?j=WnJWJ?q2rERbHHv%C)3 zSud6sSfCdTq}O9*Rzr4yMR#G4?#Idkvpq_Xod%Dt3;O5Aid_Xc{2gG&j3#$h+i2#Biqu zJD?&T_rQ!KVR!jp4grk;Rk3vs8oORpn2}Z*BR_%ZQ%aH3C1H^NAifdBoWYZGY~8fr zIRpDxkTB>Dp_&pVaCXjd(sK%~2OTH12ox4geaT}+wmc7=ub)wn30f3;k)LHQIhFiG zh_f=+E)T?871xv(i*jA$IwNG9GRKm0@<*I6lh3rv`JR(!Ec%BVf06fi7Km@KNC6VZ zpx=FH%X-na5u_Y2D-DTRht{ly)(sZuC*EUO8IK>a4f0*$I3qryI3;#~Vrak$`C8+J zcZkyy#BH<|`B6U_qjA^~(k;n#Eo{RNvkREU>!<3duIjNi+o*e$Mk}NEsP5R%pu#%a z6qV}HCeEW+6{qp7I7fJ(n)Ff~YE*xItSv;5P1I3%5fox(8+-Rakqo z!n(gyOe5(bjy%QtXX*Ycr5ar$eTjI^&^gJyth>*_taZwJCs<&d>O)S6l(eIBX;I_G zouL|tQGTbsP_P};F}3J8*HWf_!($rTl;2+|zhANcli$kRTBV+nIX_HK$$pal%RR-6 zDaiV4ar?W}Q+kYYn_u-KzbSjB+&^R^WWH&ZahheEW*Mhh#%Y#unq{138K+ssX_j%C zW!%)0G+}qtG29Cw9*ezdSn>03zhJb4o5M6?!xLAB6Ft4OC&r8WQ28k_FquHOzbDay zaPPzf!s7#jmq*?ol@C|KWBua@5BCrBemEHJ>An0?bMZhp_U5~t7cX3zOiY|=j$RrV z=^MW~MsE5>hldA75;(Lx3%K8fnv!lGc(0dsvt+0Khh2!4b_lyBxR_&}3cEmsowuaF z0#tpssBNfbs_mq_Oslry_usVQJ?dy3DcMQ=466N2qFT!DI#A7vwDTU>w=3fgmFyxV z{bRB@wr}RXlj|th#eTt{qFhhcg~!9@65Z2smGyE2%d!y zMGFB51&C-!B^)#i4PB7!Eh76k)k5_@&1Ta>Iz3nDxq1?h_~OI9_`rQ&Ysfg>RF0d6 zLj(A+*N?Az8ouxKp{^PAI&oIldT0!6HadRm3S){l0CnA)GwMk+n_;sJ;a-ll0~a~g z31}gN%_w<8<9wb56BJYEjO}oYayKYuK@E*A!aE z+&K5q;hRoe#i|*@gz508242TJRZDL3SjD)>depZD_08$8q1C}X9_AiTj*Z>ZhbNyt zzpf{&QH#!>Rb466GFkGqitr2GsAezMVC6Hl46JOm3aetzFBa!YJXo^I`3kH;-p;<6 zw=&tqTccu{7g^6z6HjMmrqbh2rqgyYe@dicXDE~_6$*B-hX1w8fOD7HU7QTWHP;(1 zPdS4}2ao!5HjmB%=PZXMUcbasU3?et-SrpnYpSllO;3k3zZMa>&e7B6^0=-C@at{B zZ(b|~e_xolCGotxQ}E~AqP!yzd826MeGR`}f#M7IDU+-r`)WUk5Xz9I&&>L}i z8`Q{NXYT7JKcGEZpk(c|)waI#YRNu0M<=)CB&#U;= zgk(x!mEx;}v7C`{B!Hs<+!??sWK*0IA>;T-&v}n~N$-*r=N=A9nEP-efJe|W#t+>w z?{P2HGaZP(4B*)SUI^fF0Hc)7FIKD^f**(Ue3>HEGIC3$s!bfsRcssSv|XtbOX;Oj zE>l}974grfqmWsmAPRP&YS&OIlNc@L5PSNH6?5ekCx195{*z(%GPlLW`Dl-edmZZ% wcQi(a_7(eXQ9t`2KjF^baXo*zVm)FXVsxMn*q;ZETs=N2G5QPW?CFF57r({#Q~&?~ diff --git a/release/src/router/openssl/crypto/o_fips.o b/release/src/router/openssl/crypto/o_fips.o deleted file mode 100644 index d0ec7f4c9da61ccc522a5ca20188873e52cc8124..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 1504 zcwUWDQESss6#mk*UDtM793llbY@x7DB*>gFWr#4^A(UEH1m9x2WHr#VA<1AqS${!Z zH}Jtn-zq*k^e61m$NmMuhdl`O+}vcniOM{1x%tld&UX&y+`O$f8f@nV>ea63Sd^wxVB2cEYPUp^5SQ`Hl;2KINuQSzEfV6^2+!$DG9li@fajdk()} zM_-zyKQQLK&lTo`Xh;6-(th}Zp?;eE5ZIn3+oi0fU@ z83=ii-YdlQzGe9T!u0Z(>z#n>-4A)Y1XhJSDLgkY-vzT4Io~CC(H-rASv$?0D|8jW z>#}*W-bB4N_16%vI9t&~e;Pk#5KK;F$+1ot7ArEmkifYF&L?mhqRGLF5OMJ;gY9^g z^ll1qHp6uRvpL)izXt(7AA1|Y8y{&$rtPYSnE$m}-_~@~weh@NZ*@9N%^aE@;(u`c q;6SsFJuj!N$xD>MB*sC7 zqX+y$7P&4-Z(#>`UP%w0bl~P5Fz+HL%xZ`%bN|)AK$o=rVsSf_**`d5P32jR@i|!k zvgOuHZrz?|o4)7T7cQ7pb8BE`zYo^48&3PQBb+nVwR&JJ%Qnv&tY$hJIqz5`vBOH~ z;OMAab=rWM%L}Oi;`iY7%@W=W;b}^zF{~xzjq6p2=UacrLT-7|fZGYkHzE6q zI}zVN>os{`jbOSnD)c;x_YWG=Ls@!Y5`k$)fk#5vz^L-YoZ1)i<6%rUDsU`>$1tmW zaYr+}ewxI^PSKH1i`6lFSAjQIZFH-a)9P4Q5$;syh)SO%%_pokVq?IqMg5WK}rvW)>ZS+XlA6b1Ee z@m9!5=>Oo+lYfDKK>q+Q-aH6#W@oqiW}5f|{NOS3z4y(VxASK9^-lAFVHikZz(U4= zubeE{*l)ya9aU67aR_|CKj1RAEB_&G0=D1=-qj79)Qk9R*J97xBjDrFRl9>9(=B^C z{ZhAZYRc8CcY(=T?ev)QRXyL*qWISsbS_!+S9r60K+K1O3XK22wl z_aXx8xseOj2}7{4*B=ZIMq=`e1-&tt-}5@p`^@bOZf?p2?BV{-UaQq?`<~zR1F2O4 zJbl*aB1jM~ACVWea+sRl6U7&+cJM~sW|9p;ipTByi=7Avy1<)t}({$alW^zez# diff --git a/release/src/router/openssl/crypto/o_time.o b/release/src/router/openssl/crypto/o_time.o deleted file mode 100644 index c794fcb63bdaa80bf6c743403ef4d6644df74dc3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 2280 zcwUuOTWB0r82;wAJ9U%xBm_IDExVJMkhPX^Teq++qpsN|X-laoMd(}1brUu1(yUM) z)S>AmrIA(Wg9RVT+K9BlRZ9`kVC*Dm#TQ=%g_2l{T0{|~50&*lv$M_YQYii5aP~jv zJOAbT&KdUYu6^BtAfRdjRIGY{tpH($-lXTnu?`Ig+P$)H1&?5xXhiROf^)B2E?2!+ zU|+@YX&F<~`n&_{nrw%=P9!xf06RsXNraJF2BQN`t4e+tPFjV*dSGay&|{~dvkXNE z7u;wFk}1Q8O;TTy?Hm|P>V(r-H^jtb&d7CRGjjzQ=@z~BB#fLZP|Hlf-gXJ!D!eY8 z*2?9*?F?e!(q`5Er<^e_UsAVg7^Rqg2BHXBiv@RkOS75|Hq`ar`?uP5; zmJLg$o>;_HC1Q$+?{j|~kZe75i}sHrdUB9@TcJd<=O>#)lWBmsyO?YH?}TZ@&cJ;> z3=LDrv`W-t7HK9?W!K{@4N^oYNchg=Jx3B9g4-eE>hT$KG7&JG(rSQvAm8LF)d?s^ftPxmRsJ0n80 zKik=v6j?DRAw%(p;vwQ9qV2+@Mm45Zh?^DDiAk7mBA@N@H2LZa*-n#wKQD7VcM)Hr zr(+biO`Up|+ACU#>@3CY_Ueu>w^Hk|WjIaifYx=;wE^7NAlj|Zc2b-Hk9Wq1lC27) zX2OnUaMlv---?|{hqTa86nNi`rg%7=w8>D+pYF_T)1*T)s+n;OAV{6aKBPyGouyB56W%#JYidx!3!46Y+z8yN}NM(iDAN0yRY z%i?>At>F|FugoM_0)$%>bkfmXANDlm+#1vq_C(+?8V4jeFVMXvE}cV!*%|`ZRgZrH zV|SZi^kxJju>d0-5!}rRab0XT*d7>(Uj-w5LonjARMYSL&J%}fsRgYiy1%6cgi0!u z61^fOBV5uo{?=|vI(wNK+h_wHbm%wFOE=4N9UJjYNyDdf?&}h8zOd$QOwyeTc$|2l zwSt~V6Aut$*iAXE(R+2LRV++5U~!sZiPn~9WvtAq_+_>Mw`Tt>-)Lc^vr1UHNrYb@ z{PHXaBNIla0x4&Kau#?^G0b(KCzIJ3i}&n*>B(5q+Gf#r$eMU#Jl{V+bN*;$9F2>!kw~AA_W%F@ diff --git a/release/src/router/openssl/crypto/objects/o_names.o b/release/src/router/openssl/crypto/objects/o_names.o deleted file mode 100644 index 779d3f0e8cdfc7d557dfe76b13ab15700384cdbf..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 8484 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 G-Tw!CE-#A! diff --git a/release/src/router/openssl/crypto/objects/obj_err.o b/release/src/router/openssl/crypto/objects/obj_err.o deleted file mode 100644 index 8958cc5c69d81ae0973843992b4145eb5fe392e4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 996 zcwU85%}T>S5T10aZT$i5Nf5D~tRRcjdeDQ2r52>96a;S}X=1E2O-UovlYIuC#0T(E zJopMefzG5GI=e{w!DRC7ezUXrcJtP3Us;v~87wHmi~;146gJ?lp0X;e!wMLfm;>{$ zgRzTIgl~}!v>J`GO0{)!e^9B*n#4YG^cp6Pi#ds>`6+u#{BZ)(a}o!nI~swE{h&8^ zjOe8=hh7Xa^nCXvkdE6su1yPMv(vHrk>lC7m)ABf)f)s@+Ks}{A0%^kt797=^=4V| z3uAsm5deiV3e88Qn3j$PYCZALqnJ4%oD;I7JX30pj%3P$wT^9 zzTT(Mec|88q5TK&^ULRiQ6;pU5a%6<7YxoFBAy2hk)8zSrSyCVR9U8H1 diff --git a/release/src/router/openssl/crypto/objects/obj_lib.o b/release/src/router/openssl/crypto/objects/obj_lib.o deleted file mode 100644 index 88f5f457aecc2c24efbe8438824823e0bf617e34..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 2352 zcwUuN-)kII6#iysl1!RSJB_IXtT=)A#x)A z^KSxQ&s#_L)g-=XC-F`DMdMd!aAtw~T?3!Bb(pGw2V{>_j;I%J=Bt&WU5ds3GJGguOgtRS;qgF)H)|bw_yjPl9x#i$Z3WBeTW|<_V9m*6 z)7P-e;9;LASO4f3Dkx(^VklVcU+QoP2x zmWc%WwpjbXK`PK@zef62TKGr0_xd2cbMTCKUf^>-PQeD{e~_}wEkCxxxjl!vWRx3z z?yX2};IKbS?=+3&44t<@``zdIEl<3Iyr);BJspEN6Xq59%!H^FGov*GYdvYLmk8r5 z(-XDy#JgCAm!SUWQh#)*Kf2T(UFwf6^+%Wbqs#r};K@9$WwURX3)j}(dBx1wOE%pJ zd+&CwRVb2eHHF;?pIYv%7VL7NRe)XG+k@S7w=26h>ikf(8|5bKTG=h`Z`*}p<<%vz z%t7|`<+t;tT7y>V9L~8fkXV#Z-X}t-UaPsgEj;~r4)E{ycz~Ul-w3P~@YMg{&C}GM zg0~1?vyqT^a}rMr@asV2`|~cMIkmvPMsrf;=|bxaxJLw!>$-$!zON7+p)ZH%zA!H% z@j~5IM0Iy`Q8(-A80mfhk#8yB{Z2C}#c6^6Lqv7|pt%`t5=Oc;M0Gt9c?h99g^}(Z zhFb?%c*@_q(TMvs$V2rzOUBbD{ms2HLwa&g^B!9gX6{1p z%x649>ft$sekX?4V)*?SF2(T87?ysDsnu*6;kPBf-N=_Kdkxgw8sqSja%E%fLY}}% zb~C^0evFm%^?YN$m3N!XdK208_i~%p^R+^?S}*ybjoYBlQ`OxKeK(q}8|WvfK}@#6 zCXJmI{W4DWJlUx;|6b>NI7J(`!_3ASA1wd? diff --git a/release/src/router/openssl/crypto/objects/obj_xref.o b/release/src/router/openssl/crypto/objects/obj_xref.o deleted file mode 100644 index 393bc29c70f8972574c7b2cfd6f2f3f7d005b26b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 5320 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 diff --git a/release/src/router/openssl/crypto/ocsp/ocsp_cl.o b/release/src/router/openssl/crypto/ocsp/ocsp_cl.o deleted file mode 100644 index cbbc1cd3542391af1e87a92609abb98614eb063e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 7260 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 diff --git a/release/src/router/openssl/crypto/ocsp/ocsp_err.o b/release/src/router/openssl/crypto/ocsp/ocsp_err.o deleted file mode 100644 index abbe29ebf828701f751abd934ae9088384ceef3f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 1000 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

    jsZ1-aXLW+&zT5dA-3lD}9}q z8UN7n$un_q2d>&%yOu@$gId7{MW&YN^W)#4mqX6sU&rlRFauuPr>8IV>gff&7>y)@ z<-~7}0UpjbRBErjP@*fAv?+*+)X6DF;@z`WhG^vvto+}9kbUg=nyNjgFPN}KfATR} z7dGhODD-RK#Prq~?zt43c$)ToV4mq;=nUDx7BTHExW!* ze=RXLFKwPH%(VX>&~EkY7{o1T9?<2r(4L-m*|}#jD}NszZpA~cc<|u}o^L%~LEc0K z?WKoY$@91<+TKjplqfN1;Eqr}IihN#^YI9)8#lRm@Q^|tb))!mtWJop=o+m*)*5n? z9X&hgehT(xJk}ciaP>=Ujk6!eksf^3H^Rtt|7I}$1g@RR-G?FK2*kc1_v6}y6g@29 zD)f7LKNNC+zSKIVk~WweM(W$vqau61m8Az7vbNqG6ofLe?y>A3e%1XSSQ}It7U!*TNw|MKfus<84JOp zhE+D6@nHUF6#_XAuH?B5p$9hSgPMV~2I^LSl?tN{cK!f;ePHxQUsxA~37N+3>?pGDFFUq=EzKt@U~A) z%!F%d$<(stOY7=u8yc>i8vK5xTwE4dHh1~F+WJ6RUc9gw!?=5g>AAygy7!pw^Gx?% z(|wWffAs3@*RP@S4Rsy=JL@^}cb5PEum3xjTfau(HC(?&;)Tydhtric%#}4lzi6JJ z>id7~@|Bd`91fL+=g$X=v1)E@U1-trWrO7}sxa(L8Cn_h^YOmq^Xl3VR9zjaubs0r z^?U;VoK{g)zr3!tKD4No`!6n1`Ad@dzgxd3RBJAgX8(MJWu`f&b!F9eHiT-Ia-E-CR(8F2%#7Q^%R=FA1s5%wQ@`9> zboF&tU-M00n1a_9==V@Qm(?TQHBAs#dBlIp9`0@t@pE2+Fq%CxOe$i9?6+Zq5mPL% znHJa*_Io6Ut!BS@8tW{u$1SjzEwE1Z+o0=(zwfc%Q_%k`%ke}Uj=3Xq+&7JK_#sh8 zVL7)rupCYkqZxKN{v%_#+j5W=<}YT?&SUuz3oR5`yXj?5{Ra|-30F{L@)(wsafQi=@6 zy8L=fBfRb~>MBpxHN{-lY$tJ8)>S&n3&q#6y4qPEKu(uX0d-U+dGs{PvtCbVf3`C$ zJltqQDYl^$+YrDuCGcLJu-PUI+_Bc#sY?T z#lj%+#bkAZ!=Zqzmf7gu%dD=&t^sugEM#?ZPMxz9QL>f5c@fAPH2vB_3aG}+@q^&zCShTYboOcD}*F$8?jy|&zm=`c0T4EP>WRc&dx9K_4SeKq9HA;mUjnaf^wM%Nj!%nNnwuGTRCmmJ*)U~J*ybHXG4wrz}PaqYo=H;EdxK`DQV1< zap{rjfLhY|ntEu@QZCOB+~jf&$;d%e&CElt2Wjj}J+tAQ1xw~GU%Iq*8B9&fmWOJu zo;-ENH^Cary@ThQ-3fmu3T*!6QoHg& zmKw1+mdF1CGt=_ZS<2JL|06Wh^0QgWm%l;Cyu7hi!Iw|^AHvY(SFw~YkB3+@Egxkm z&p(X!Gc9k#GkkgcGDoK6&1*1N-Y;Zc{vnp~<+lo%mw%L{e0h9(kZJiRS<07xSjfEm zMwasB=L?yaH?K`$`9BJom*37(zI>OEdHL5^%9rmJGB5uoOZoC|37MDwGfVmMZ9?Yd z-(x9Xeut2G`43sjmv0v`FaH@!`SKk?=H<__lrO(i$h^FZtpo7ocL|x7&$cMPTgbe8 zu0?s2sZ7g{wkW?($h>^MMfv?g=Hk2;ZQdBvjq{|K3v z4_cJ}i;#Kw=@#V=2$`3kWl{d1ka_ue7Ugkm*IeE!q`wo!tB#ew?0W-ok15|j38}jH zYYj8t#TV)+($5!C?J-^>8~?Gf4C$W{tm#)-&>t_P(;sg`zmU;4{BPqj)BmPuO@ASy z&+8wqVVddBv!Ukv{HdGt=Mgu=XDc|3y#D z_S1a7!-oEBi~dg*(&={@{5RV#M&EcxYh333_t})6&B`0{XIx&>{VALFuVU?QW%tPxIKoAbniZGSi=FL*F}FPm2e_Y4odY=vVF4 z(-wA*^rs5x^c!sG&z`NP{(*2B{be@v4>0Y&|vGKdJyGQ!yE2hmqHuQx#dg3?1Ueo;xHuTkfddl}7*CfsKKeD0k&yfBR8~VpB=-(ow z)4$YZZ9i8t`iA{AE|WS4SGla)|1>L~^z+zd*8eM9HvY?gJ>~5mhGORSSK83;%#gln zL;rvUeVkIw^q1SvKb|4|#WwWEysf7^eVkIv^dGdL@40(=lMVeUM&C@&eE+EpeY#j94D>(d3hDI6WZBry4C!B)Wlg`( zf_|-#PQSv2eqDz26&w1qE$A;0(&^XO&|l5yUpx>_qu*pxenW=sZ?tKDi$(kK{gJu- zkJ-?Fn$b6}Ev3n?P5I6Y<^Qlv`QxnoWv2XT{1|5AKg?yRDZlxCl1+I(D}T8uznT65 zoAR^gTIV<4M{LU1vGT@VU*j^*KfkakznYc5(3Iaye={p@p6Bjo<;R+E(Ui6gOK%fi zugtXoh4j38jrN=HR#twW$zeD9?_I;J<-e85|Klt$LHS=Hq{~0bw>fse>p}Jc^8-_0 zV{X4y+wt=MTu*0Tq^EZY*7j?JU`>C+Z}jv%V}m)ntaxp8VLq2|!ty+dGr23&j9+Dg zkFmiE1gp!LCN%~=&IZ5Q1~*Hkfsaqaa2y@buNKBkV_*4o4Bx@p1~* zhnSqSHY?m5r5Lz*_0_;9+2A+Y;NP~vWgEOK4GRe<6El0X+2GR!tIJ6v z3M)Lt=Yjb5Z17uc@Y`%~^Qwx0&#}R+jj@wjBrAM@4Q^h|GVsMV_!7bDatf*QKm&2> zlSfWrxeZ=tga5z=Pdl!}aI2F?h=*ECd<%urE&MWyr_Wq*iu2Y;zn-DE zd6i8N_EUUB8jhEfYP}V1J&QOkXEMaCW+=ohBL~3K+ppv4?bq?)Hn@4VH*mZDn!P0h zw?4M#Ok3SH@bd(#%PHj8;F1k)_O=Y%>WwYp7ueutFV4VC&Os8t$Obn@BL;qn4Q}?{ z4g69Y{3|y2KiS~s)lmcgstsm%D+l#loRoke`Vlb zr+CW0GVq`i&)cN@Mx#ByWVq4(Da=$HV)$(5!2EeG9j{}!F>)2I^wrDNRIe7n{Lzu5*~ZiD~Kt&e*P8~0i^RlZ}B{~XJ2 zH2ifog;tGVa>x{@o#l^?u&(DtmVX1A+KlswhZ*i?iXLWDW#LFB|7cW!Fkp=etjM5FJy{)jMaa$P5${Tzn4w% z#>^LIcooABGyHjm`;Doe)!$>_Z0b+2{^jN1xQ|KA*zCuI9M;Zj^!vq3FBdR;!vy{Q z7;`!QmEkQn==Yzq>R!sR?pL>wpP9tpvUU!aSUdgty%EVwVEEGvU(CjHv1DEUeJsD1 zg^EwH`afiN=Xdq{EQbG!N5>Da5Yn*JuX$|d9UJ^(59&)Q-Zbp9`+USx@wMTBjiGod zzFx&r^?d94>uLT}+-lU{Oz~9QYT%DhJQcSZ_zsGv;#LDsP&^g48g0nF0P$4ZYT(`r zbontZBf?Q={!~0`#!tHt^QYDyjQkZBTKjKx7h3oC7qp&KTyI1O&r&=U*BfPbQ#=*d8*L>I92}j=}3H@0?aUXI`LcMYXSHan)k$Ox1Ul*VooU zCdk$RvOGsU z#Np{7S#D&?;F$E#{r458QwUT|SzI;6R}`AFplaI9Rkz5~D&(otEp_Z~tY-*L`>tar zo|Bvzg6Wn8D(^(?hlFZ*22{uMV-cttUszFH`-5=pve2SAOHwB|2W>~jRrm^1M^Ho-;`tz1l zWuP2|gDY5}jb0X-?M|VgJ%cixJDESUs+ltnCW`~|W|(cL#t!yTfT3GIWa&XwYtX`f zTe*q~r6xHk&>O1}PkUk#n1RnN4_8|>(05%KoAnKqxlaEPsG3?`V?DP87Mk_mS5&?v z+_3Pwi$V*_7S_(a!+NmOY5A_ve^Ga$cHW>gDbXoI*I7KdHdIx=2v~f(UdCps_Kh#2 z*{0(cAR2syz^B_OVC~IJm>R5Iwji`H*`lI~Ws5=q%ef>iZw5SFyx6jTX;q<#WzAfi z<}MEM<%^n{1*=xofFv|5Up8mSqR^c+D+yMxdzEF-a5mC1vR=Gj5G%QoCcM*a_C}heGQ#jGvT5yBiod+w}Z2yFe6qJ z4#kQgGYrMdGGr#tkFw><8bbBqxuHReT~`J+Da5QgFGI$I#RDs)papabRlh+=>57&{ zh=c8CmCEHSYB7u$+~q4Sg^7ISoceizX^V$)4l!7x-B1?6{J#wKaM}=M3c(`XTo+oj zG`uvh*gCT*;u&NbN!5h~hNN9YCxXB-XmkA?Xl4e@el0cQdM2LN3?E{OD=A;JWJ!`O z%t#GU=2|QxFIlu;S!Vgiqf*|ythN;N{Ek4?oz>%OsuoepIbc4zj!pv0p~8mRdDV;V z8p{3f6(&7ba1VVYoZnZmYzS}g&guy@gNqlo8RTZk-%@iG=Kw;F7GPSjZ2t1WRR$^k zW2x25T{WlX_SyxDmetHf@n=XaOcU(h_B%e7-*Vxsam^54N}|@>SBL~x&AENi3g38N zP0fm>i)!XBnbXiv6S}jmwq_ADQm-lPV>UH|d>5!@$WH;)WbpML%MJ|uSWS(^H-0Qe z(05JJ5K!|*%W*3Pl;?Hf`r4Wmi|Rw+IW+1>`TA^%O8*2@jYXtjWVYvxZSavSIt1&6 z2yv3t49VXiBP*k-fpP-B8?42|=F3Sn)*nl%vHD0-%^)8~su}X5NHrOJ3@NQcz6mwf zy%}2i(ms(?GvL!mHP)X*8q{+@p5wKjz5mA7mn-4#S@u2ixvms`7l$`;_}v`-P*w`R zkHaSnx5jJT*7$h#9u#-(u&uQ8T5E&9#$&7SYy93EYh016@hd&n_`^2%x6il6 z|HN=}`%l>5BQLPVFS5ax*x(=9;EOM`#N%;UNxR z#Bj47J;mjJg3JFJhd;^Tx96qs|K{+Gm!|OhIefPbe(hx`{AV2gU51h#T)oi%ht2P0vr^Jl)?g+&qq#eBC;Kzy?2kl{LQVpHn!`=iOscI2JYb zm1PyAaK4^-3^%t^N!5o?b7hP?Q-(-V-%Hc@Y*zr03TLW?9dX&TYdY-Vs zJ%uTpm!G>#cyix}P5%8h`OovE@B#X3gDqhJRk1*V@KgJ1)k>5_?{5by9 z20z2$d_7UWb$&@s;n*hQoZMc9BeqdUwX>uwm7li*|5KLA{}PwKR7v5yocu-^SdXEn zpK|$s%HwSonK*%zi)$2 zx+#V8?fEr_^X++s;byzqJtc+n?Yx0)flX_V4Zfq&8t<#Lu7BxN>-^_z@Etc><4dco z@uxZb1rFcB;hQ;p$#+sXFDEM*ZkDTSr={}qbXQhe<5|5?>yjk;BaHdHRA0YUd-Vg9B%A`MtmoS&*bo39KMjlcXK%3&TSlS z^aF9i;e7k~)5=~BH_mwB#rNw!IlPd=ALDSozprq(pTmu{G`x5|+{xip9L}FI=J`|4 z;XHqMJ{YtRU&G<6IGjJty_&9@i8_Vf1kf1~|xayZ}qA98pm zeCF-{|3*9aayZ}4dpO*#oyLVYeoE15el%=|APj8(ej)uDte&^Ie0)8;{uh zApCvx82|T#ApCvx{12BelX~72tn2y9m&||QOXffLCG#KR@_AW`{uuw&iy{sm#^J`i zZ{SA#vrM>`-5c|`fg5sc%+ZMRU(Yb+U&M_zGxXv{X@UWSKExFJ6+ z9L`=H)9X&9K89nq2ZYr1D3_oAYRXewe*UW|ou>MYbMWt(aN`_&uL(EK!Dn;(WN14X zei6eBx(5FznerRw*Q-pp(TRB`+&I6!%7h!|*VmbF;~eC#OzmN>8-(qq{Kh%;<0jlV zUp{)+K-@S-UTDINbL2r2Zk!_znQ?Z2xz&Ul=f$(ReMfX$*n5bXCfqnL{pp)r z;eNk<-)q93X1MAeh#Tj>>rA+D{`*db8+?}aTj6n2e&byD?@jsH@}sbm%g@LA{~y-x BA(#LF literal 0 HcwPel00001 diff --git a/release/src/lzma/CPP/7zip/Compress/LZMA_Alone/LZOutWindow.o b/release/src/lzma/CPP/7zip/Compress/LZMA_Alone/LZOutWindow.o new file mode 100644 index 0000000000000000000000000000000000000000..d0ae3b64dd99484a68cec85803647a0fdfbcc5cf GIT binary patch literal 1408 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 literal 0 HcwPel00001 diff --git a/release/src/lzma/CPP/7zip/Compress/LZMA_Alone/LzmaBench.o b/release/src/lzma/CPP/7zip/Compress/LZMA_Alone/LzmaBench.o new file mode 100644 index 0000000000000000000000000000000000000000..685672219ae313335f7ff8de36a1e77e78428b2d GIT binary patch literal 55056 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 q@b$(Ntl5kix*Wry0^@CJc zZM30rc`UlJZh5@1c8M0n=S0j}ByGW9&I3|pSm9&Src~EJ+66LcN~y`4@?xe&EzLumL(Rf=)=iJC!bOU~B3PpBTn43c*n^(}1LnX);=)`QVuwvUVsJ@4g> z4j-oFp@*EWP>(#wu9FrM{!5~WzG8gB#~OJL%IFY#Pe#-BoQ$gWnvB}nV=`)UZ^><&`8g(@E8rypew={MVmN%0@FUHPKhBl#Du%}dJEA|00xtUV zS493GB45Y?uMnrq6TZ$lAmAPWpE%OABj&4u;c~uaNjT5fJi!j^gUIc43HZkXegNV9 zM6eJ0NparnQKtM0f}IBhT(tj;fQ$BD8>P1Y55)dQ42R@Iq1?VY+LRaVU%+rk#t8N= z7Ubd6BQC!q*ThBtzj~aBpCZ`*kK;`HrwaBT5adOFIt2VQu^bTjcLe*V3-&*d@HU2j zBH{cKId`69hn1aI!udXU`4Z0eN4uQi;OAEbKU)QSlz{(1z{PxR7VMuP?HI^k@7@ro8CSHw9eG?_UHvqCZCkdC~vSS4?@4H}VxzUgTXR;9|bk2)LLp z{>ucpJ^XLO`8W6h7k{<&KPCS~+u@%J%l+|7`7h-~dH%~Ed3@lhJU(P9f2M%{zwlyq zvITs+rnWE6tNHg3WM2OHzRb(NmnfHK5rXsY5y|6ZrupUHPmulRzqFC<6e4!`FDqm} z`8WP$oPSeX_CFxtV)>sS;0|$qg4kKaaM^$UjVRgwDGn1C=MTRUaMAwR0xr(?n0flk zyFy`J%KHW2=L*kL-W~utU%+`e1N1ck=f_a?FF@>Hh}a)5;JjUZ7T$|8>OP0D8`Z)9k+>;64E#5O9%ql3<_rUx3~au%A{35cKkyU=imeu}@A_X)W8t8CHFOAtTBU)PI%W()G7 zpJKld{VWl1(N7WgA-L%0r2;PcDgN4D^i#AW`gz$G?C0f(pS>oW=8rgDeG&eA1M#QF zgl(0Z_`LWc{0ty|zG=d?{1l%rqMrqbpGQqN&CV3W&gYfiQY63sGGSZ!E&GD~oQnAQ zwh7zvGyDbn8A1H~rwQBgQ`}SIi}14o@l$-;2{)-X7#kZyO2)OvR6#ga}C;Q`v+hOA3TT}`KoR=XS zmkYS~7L_Ui7vG}NAmHL#RMrW&_!gB70xrHqS&)anW>#+ROE~|XwO9E5hLfL=W0HjP-&uzx zod3>xt}M^+nLc^>b`9g!~2e+PZih;;d7On$B) zFTM>YCdu<(HgA*c^WQZ;C&}+*^7+E|OyH0IUU-~@^WO_k&Plg(2CJ{QB+q{re2XN{ HV;TP!+N$2* literal 0 HcwPel00001 diff --git a/release/src/lzma/CPP/7zip/Compress/LZMA_Alone/LzmaBenchCon.o b/release/src/lzma/CPP/7zip/Compress/LZMA_Alone/LzmaBenchCon.o new file mode 100644 index 0000000000000000000000000000000000000000..a78025445e2bf7f313555d3095f09547c995f839 GIT binary patch literal 9952 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 literal 0 HcwPel00001 diff --git a/release/src/lzma/CPP/7zip/Compress/LZMA_Alone/LzmaDecode.o b/release/src/lzma/CPP/7zip/Compress/LZMA_Alone/LzmaDecode.o new file mode 100644 index 0000000000000000000000000000000000000000..c3af7e5aca35dc03acc58f6906a8c42c034869ef GIT binary patch literal 4264 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 literal 0 HcwPel00001 diff --git a/release/src/lzma/CPP/7zip/Compress/LZMA_Alone/LzmaRamDecode.o b/release/src/lzma/CPP/7zip/Compress/LZMA_Alone/LzmaRamDecode.o new file mode 100644 index 0000000000000000000000000000000000000000..11a60e510b06ab31e8425ee3e188d25fe635042f GIT binary patch literal 2016 zcwViP?@JUx7{_PtJnyX2(+CO-yca_l>2`-D5)>Y;ITvHU1p_J9yFJeG?&NN-Or(;_ zXt=g~(To0v-ts7 z7!^taTK*grHc(;9hlwlyF;x1#n4l7^ctnQaTSUg-3MPw~#NjHY&Ke>=Fj3(KCR1<= zO@Db{q}#5KlHXDCAxhpvUK)#Nk^=MlqDw}qNa3e&`-ntVQE>F^HVmcbf zMHNoq;!Aj!Wtx7)5-tW>0Mc#>NSlJe7amG5!EnDsF2Tk%mT{(pixlLa(R5Qs~eP;&RbE+J>&cl`D)kIcKDd0aT z2!OHQYaP6s+oz7h(CCP3rdJIpSJG=*#Qj~stmEVUer^wP?goErrP3h;<+a*?ne$)g zhk;q&`kt1o`G*}`aM{-s7;XV!qo!sG{29^8&ocG^)FV=sCoc(VC z<-KDX=JhW-xO4rL*3MM&n6`^gU}wPx%InvG%JsMShP>wBRX%H(SX>R*)GIx6SIOe8 zxDv)Ib(nGIsj;}X3ip&T*8e@W^;rLyHqOs+AMucrp!^InU97^dRN(+mrsNB9N>XB( zxFW_ZzfVyI()1TJo>g)=C4O;qQn81c+#u%6bJ@(el2u0)I|LJ5omYD@=^OM3FSpJu h+be7@{?bkL3OjtajX$<=zl{fNdF=b{sDoR5`vbKF89x93 literal 0 HcwPel00001 diff --git a/release/src/lzma/CPP/7zip/Compress/LZMA_Alone/MatchFinder.o b/release/src/lzma/CPP/7zip/Compress/LZMA_Alone/MatchFinder.o new file mode 100644 index 0000000000000000000000000000000000000000..35bac4e2fb2c4ddf11f5050926518e5c620e550c GIT binary patch literal 13448 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 NYG?K}{b#;g{}0SU|= literal 0 HcwPel00001 diff --git a/release/src/lzma/CPP/7zip/Compress/LZMA_Alone/MyString.o b/release/src/lzma/CPP/7zip/Compress/LZMA_Alone/MyString.o new file mode 100644 index 0000000000000000000000000000000000000000..9b33e6ae96fb01ace43e5d69ea7ef6cbcb9b0d2f GIT binary patch literal 2128 zcwViP&rcIU6vtnowB<*(#WaQpp-mKn0hX?a0sN6}f557M#9ECamZdB|BK?te8^EYF zDX2|FIdJkX@Fpk2kp$&zJdt=ZF_A>@$H@aGII}w&mg)9l{3g?x`Mme$y}r&g8|?2b zGnqh>2`<9H?m*jR2Wv0+tbs}h<@c6ykJ0u*7KP2$Zex>Ba0t;)!cxPlLVbQ~cw=IM zwYwISC~o~5V|RIBwo%Bfn-)IGjrO-rYmd{C-d)>A+OWIuX|RTi*qB)6)={)UeD)}c zH!q_2g424=X?gfv4JUCr|HJY8%}e>;{0%AB5aH8@E0@!r$RX_`7^Ws~>ZvqC+OH z%5jZ44t;)qkGnZMmWj)m_WtR(m`b?MuxHthHZG&U&Qt0hzzM2M_pgCz&S9#rvD%i= zd3A_25L=T{DC5YLMHw4fI?(7Mwhl65)=#lHG)BpK1%LP$$IG%HQ}?3W$GDfwKBoD3 z1`8dNdBouO1CE6zjEBodvS50yPimit@W+og};*4r{^au|jdKR#4CU*LV)p z{2q#H@hucLQFD)Ot=F3p`DuKWFx}sfqE+I!MR6M()@3m6|4-8YQL@MV$B6EKEfn_- z>lrEN7RBlMjcUi*u2APL5>O3lZaRM@80UAB`kzv~L|co5{mk%d-^f;8;*@g3N-#I- zFy{2D(YUn)uP9;+8b@^XG?Cc_#cvI(gZO)Nd#nM%lN6sMe3k51Kns`;$*Jl1BpXd8 zA#$7J2Il=!Vk(?WN~u|hM56M1Qi{ll3p)1jlCt_@wRV}AE x$}*Vni)qcS+&?UQhwxqav#;v2j@xv6rv!KFxc)w#r?}R)A&P5#8>hI|x4$lM5VZgR literal 0 HcwPel00001 diff --git a/release/src/lzma/CPP/7zip/Compress/LZMA_Alone/MyVector.o b/release/src/lzma/CPP/7zip/Compress/LZMA_Alone/MyVector.o new file mode 100644 index 0000000000000000000000000000000000000000..eb730e276b30608fe3d1b71a5aca29e8706c3486 GIT binary patch literal 5120 zcwV(vUu;uV7(ch0uCUUUfw2g(f{kG)Wmm?Z32LD$yNzWagBbzS-QC@~hPJo1cUu7! zwT^I8m+Zj@6Ez`*MBjMP2aSLD7d8or0bh)oxEBc;V+P7xqA>5d=R5TDaIX@hU();C z?{|LRpYxr2?>RjjOKf!s0-_?I$5GX)O8&0ueFUxx(R_>Rw)_y91Gz0f^q{?Bx zG%~B-bp<2iQ8!T@tfcX%AM3qmQoiO6Y&T%@M||-$M~FYcEN{v9ey=q+2K-7x2!N(iVPErWRy~A|@s?{A-`E$rA{m*`l$j`D^oM4o^3Q?x zVYhMp#b-vQeMjFlos6qeWjG*Sl8i4U--(-&F(dsxEw!H-Op}^MPR5P1`eTyP?UpJ< zzhsP?wC(^ItQ=w{pD+}^vEO7Z2}zYq$epP4hx}6cY~al2^>m8jrEzq|>qnoF`Hov) z?eOWpA3ntoSLa{p^la>O>+WBn-^RI%H_J1T!+vqPJToWad*|F}+lM%qaL#ITWxFR) z=?qB9X-Sz*RJQwDF2;Q)rX=MHQ=K$_6YR*Xpa8-S|o} zZj5@C8mC*XwNLmG-;8|wQsd~trB-04VX%yH z)FTiV%NhG25OIBUi(FK9s)|^HI-}7?gDZCT4d(R0)roXYE@;8F@VfAt zRpOupu5BSUp)UkC;owdrl>EYCPlJ2Rd};$Gwgkpj;>%{Qzw8?D;&%qWC>vnR0~+%a zaKGplzxx({0LHwaG4=x7(;6@~#_@vY?>O9F#+PkJ>dN(TZ}4@Ot1#E=-rPw1CV#BV-xS^eE$w1`}{%3zoHhl)|-_f zWS{>{$lnV#Ht{)v&;J%8`DvY0B*^~|hYOrO&fK$7ZbxZrlZ zwiC>&M^|U<#_DW4hH?HYLh%L%oL>!!&vC%nlPrsSk)708D`tn!bHMGpQ)jzE7{9&q zxRNHOKPy4w?-c*;V_5@y`u@;!L>I#QMRmUPJx&2X0`?-%uOR#QM}gl9Htp1VfYW`D ze&;R#&YwT70)7na%b=SC`@8`MJm`S8JK#?^;7N+wVXM(sUo-;G*Wx+W-Ec&c=I^gs_ z436Vv;!HAlfWdDt_#y^x6skB|&uRw0kHI$qj<>(Xs45){e+k3ya)`6nA&%k@C+iUB zphKKj9pbEXRq>?^zKg-{XK>kpPrpNa|93O^0tWwtspnn>pJH%!T_B9L<2`_?>rTIT z7+;2}!s5#rocdur#NhONg7GE>4>EYO4emm<=b=p;PQRn{{|&_>U}reI7wnfgobG#X ja5&xf-skXRU|-<*(BDZ8r~A)u98M?aXV%54AMn2b9M0#k literal 0 HcwPel00001 diff --git a/release/src/lzma/CPP/7zip/Compress/LZMA_Alone/OutBuffer.o b/release/src/lzma/CPP/7zip/Compress/LZMA_Alone/OutBuffer.o new file mode 100644 index 0000000000000000000000000000000000000000..343b68d821978962fd99bff077125647dbaed9c1 GIT binary patch literal 4576 zcwVJfUu;uV7(cfiqp;duph^y;BWZ&nkEG>7yj1xvI6Dkt6CXlLQ}>}BbxBzxY0Z-Q*K$Ag ze4paWO0%S`Uhd~5bu`!*aV4IX2vie1yj2q(V^RqL^jxBYs0lBfTU~zbphr8#t3OEY zgrMG#!i%wMrDp9|K;q`_QSNm7@DY89Dhs@Jiq{ez_51KrY_7OUD+Izzw6=DrZJp%a z5my&_)nE0g_i~wbC_6d>#x`2GR^rt=lvM2sdG)G3>J539``hUpyjqgi_6N8-v8!s5 zS2k-UPwcMpTQl1y(;Q6jNL8YoD(~^s;JL2djF5B z(@?CxZ4c2zPfX+$o_&|88D(LB`bTF5>eefXR&}=Q8kqgIi4JrmdR+~EqgSd{b>I;t z8WRtemA&QRVY%2nk&(xhY+>x*_?=>MvZTm)6FDJ@uL$i&hRS0~`NiJsSh`pcc1AiQ zJGMp3I=CxrjH!PB<8Y@B5pII#TD_}1)3j5A6nh$N8{iT5@fBCn2P*}(m(g|z9!Z~Y z!Bugep;oXRMq3v=`V3o{+F;Sg(Y6IOVCV6D6Y387yM*so;IY@oUv$NN!3*xVPpC8{ zd>yVcYkdMmXjOZC9p zYO{YEd367N)MkHyJi7lIsLlRcNu$3&j5DB_)XUqb!>)RqxA0m?EtXm4{f7Pt$B-Y6 zCRR@n^|Qpt?NP0=PY{8^lp~T)`mc_a(_n5+Aae6dn^tfQZF}%{rU;`M>&IISU-TQ>j#)! zsqGk)?e$Eo_1o1Ba%ruhB@7N{AFRDKKlG$s{#%b3deM^5ZmsPEcunN)vYpLMOqbL; ze6<5^U3G@9all&~aIXXIbHJ_L%5b|K7jVA=Zog`7+b;*Wee=3)It?+T_9`p&~Y|88|^cCU);#Uxd^T96fE#%K5KZN)L z#M#n?5r2xakF$e=+G>5m`u>0e|4j${13gZyuh_nPS;uRA#eBbTh;vit*ZOT`e_Xjy zMKa^#Bz3$m+EKe@?d&Paa`#DcU=m)e)=se~rxm&TU22c#a)peQ5KGERQlX@LcmMW| zeM$MfGQDMG(>cm8@P>r@#?`*_2kN>k^XcM z0_5d*|Fh5H*vn%I$UNOB1d0JIfQL=W;+_RG3+LP zFB{Tp!g&*Z)P%1$;jeQwJZQpyGvQB|aCT0EdeVdkOn9pa--I|EC+z Vzg@QAY=2{ZD{&BCwBW4Re*nC?Z7To( literal 0 HcwPel00001 diff --git a/release/src/lzma/CPP/7zip/Compress/LZMA_Alone/RangeCoderBit.o b/release/src/lzma/CPP/7zip/Compress/LZMA_Alone/RangeCoderBit.o new file mode 100644 index 0000000000000000000000000000000000000000..ad92e1045bc9f2b735cd88543711f660906e957c GIT binary patch literal 2352 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 literal 0 HcwPel00001 diff --git a/release/src-rt/shared/nicpci.o b/release/src-rt/shared/nicpci.o new file mode 100644 index 0000000000000000000000000000000000000000..672877a1c1e24daaf1986d675fe1e9bcfc0f5d5a GIT binary patch literal 128608 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�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 { + if((ptr-hdrptr)%16) { + hdrptr = ptr + (16-(ptr-hdrptr)%16); + } + else hdrptr = ptr; + } + else hdrptr = NULL; + + hdr = (struct nvram_header *)hdrptr; + +printk("header : %x %x %x\n", header, ptr, hdr); + + return hdr; +} + +/* (Re)initialize the hash table. Should be locked. */ +static int +BCMINITFN(nvram_rehash)(struct nvram_header *header) +{ + char buf[] = "0xXXXXXXXX", *name, *value, *end, *eq; + struct nvram_header *hdrptr; + /* (Re)initialize hash table */ + nvram_free(); + + hdrptr = header; + + /* Parse and set "name=value\0 ... \0\0" */ + name = (char *) &hdrptr[1]; + end = (char *) hdrptr + NVRAM_SPACE - 2; + end[0] = end[1] = '\0'; + +again: + for (; *name; name = value + strlen(value) + 1) { + if (!(eq = strchr(name, '='))) + break; + *eq = '\0'; + value = eq + 1; + _nvram_set(name, value); + *eq = '='; + } + +printk("rehash %x %x\n", header, name); +{ + int j; + + for(j=0;j<64;j++) { + if(j%16==0) printk("\n"); + printk("%x ", *(name-32+j)); + } + printk("\n"); +} + hdrptr = find_next_header(header, name+2); + + if(hdrptr) + printk("magic: %x\n", hdrptr->magic); + + if(hdrptr && hdrptr->magic==NVRAM_MAGIC) { + name = (char *)&hdrptr[1]; + goto again; + } + + /* Set special SDRAM parameters */ + if (!_nvram_get("sdram_init")) { + sprintf(buf, "0x%04X", (uint16)(header->crc_ver_init >> 16)); + _nvram_set("sdram_init", buf); + } + if (!_nvram_get("sdram_config")) { + sprintf(buf, "0x%04X", (uint16)(header->config_refresh & 0xffff)); + _nvram_set("sdram_config", buf); + } + if (!_nvram_get("sdram_refresh")) { + sprintf(buf, "0x%04X", (uint16)((header->config_refresh >> 16) & 0xffff)); + _nvram_set("sdram_refresh", buf); + } + if (!_nvram_get("sdram_ncdl")) { + sprintf(buf, "0x%08X", header->config_ncdl); + _nvram_set("sdram_ncdl", buf); + } + + return 0; +} +#else /* (Re)initialize the hash table. Should be locked. */ static int BCMINITFN(nvram_rehash)(struct nvram_header *header) @@ -125,6 +226,7 @@ BCMINITFN(nvram_rehash)(struct nvram_header *header) return 0; } +#endif /* Get the value of an NVRAM variable. Should be locked. */ char * @@ -234,6 +336,82 @@ _nvram_getall(char *buf, int count) return 0; } +#ifdef NVRAM2HANDLER +/* Regenerate NVRAM. Should be locked. */ +int +BCMINITFN(_nvram_commit)(struct nvram_header *header) +{ + char *init, *config, *refresh, *ncdl; + char *ptr, *end; + int i; + struct nvram_tuple *t; + struct nvram_header *hdrptr; + int starti, next; + + hdrptr=header; + bzero(hdrptr, NVRAM_SPACE); + /* Leave space for a double NUL at the end */ + end = (char *) header + NVRAM_SPACE - 2; + starti=0; + next = 0; + +again: + + /* Regenerate header */ + hdrptr->magic = NVRAM_MAGIC; + hdrptr->crc_ver_init = (NVRAM_VERSION << 8); + if (!(init = _nvram_get("sdram_init")) || + !(config = _nvram_get("sdram_config")) || + !(refresh = _nvram_get("sdram_refresh")) || + !(ncdl = _nvram_get("sdram_ncdl"))) { + hdrptr->crc_ver_init |= SDRAM_INIT << 16; + hdrptr->config_refresh = SDRAM_CONFIG; + hdrptr->config_refresh |= SDRAM_REFRESH << 16; + hdrptr->config_ncdl = 0; + } else { + hdrptr->crc_ver_init |= (bcm_strtoul(init, NULL, 0) & 0xffff) << 16; + hdrptr->config_refresh = bcm_strtoul(config, NULL, 0) & 0xffff; + hdrptr->config_refresh |= (bcm_strtoul(refresh, NULL, 0) & 0xffff) << 16; + hdrptr->config_ncdl = bcm_strtoul(ncdl, NULL, 0); + } + + /* Clear data area */ + ptr = (char *) hdrptr + sizeof(struct nvram_header); + + /* Write out all tuples */ + for (i = starti; i < ARRAYSIZE(nvram_hash); i++) { + for (t = nvram_hash[i]; t; t = t->next) { + if ((ptr + strlen(t->name) + 1 + strlen(t->value) + 1) > end) + break; + ptr += sprintf(ptr, "%s=%s", t->name, t->value) + 1; + } + if(starti==0 && (ptr-(char *)hdrptr)>(NVRAM_SPACE/2)) { + starti = i+1; +printk("next hash table: %x\n", i); + break; + } + } + + /* End with a double NUL */ + ptr += 2; + + /* Set new length */ + hdrptr->len = ROUNDUP(ptr - (char *) hdrptr, 4); + + /* Set new CRC8 */ + hdrptr->crc_ver_init |= nvram_calc_crc(hdrptr); + +printk("commit %x %x %d\n", header, ptr, i); + hdrptr = find_next_header(header, ptr); + + if(hdrptr && imagic == NVRAM_MAGIC) nvram_rehash(header); diff --git a/release/src-rt/shared/nvram/nvram.o b/release/src-rt/shared/nvram/nvram.o new file mode 100644 index 0000000000000000000000000000000000000000..1ad694be015dae198e5580b8c5fac22803541500 GIT binary patch literal 87744 zcwUsf33yaR+BSUZ^hvstbf+59A>EaQ4oM(F8WPfhgaimkNZ7-kKqTD|_C0{0qN1W8 zBBJ7k8!9L&Dk|={AmWA&3~ngsAUcW;?mDic|8rN>>2%(C|Lglcu8U6HwLbN1^;Dhh z!kUpo8Dob1j~Onb4H-uDZVI-!rZf?|aCQvQIaOonKVI*}j z9I5?MDpQc3%qbs<6v}nkxo%x00ly>d^ikMd;0@Oom60Xt;GRqg1J z1f+T5M)jpJM`~M@bW}mZPM})NE+gIO<~9t!teIff45U#nRg^D0F$&QzQxl+JR$FOG ziYLXLg3N5Rm4hZ2MoyZc#wRY9Ndkj0ni4QlZdaMx1!N$R*Ogi$k#Du5y`YftX*{DV zwRg4UcZ-ciLlkO;$ezz=qt!6Fw^3>sJ<{T;6?G-)huXN-Hj$ng?I`G#D=97Z#0jt@ z#x~hkZ>!zhN{KcXxEQwL1}y8z)L58sP21nuKW79(TM1=ZGvgnYFr%qsMYwMM%w_fnHk1}aGZ)wj2Cjd z-X=+RLWE9^69YAGU`Ca+fX24`fo^Eel=uu(o!T~%s$nd?h8&jkX%-treXz^|@e#RDA`k1IGsz$UPvZePh$X< zcn>vCFrD9%D^5C_e6piV_F6_0a`chOuH7hE^#!WC5G`7B9nb> zE2Es1Udrj@mpLvnTO;Z2ew5?yjvO;#H&LE+s+w{FvV%Kld@EB@_pd>e%#vgNL_Dy% zV$7rf{aD@RptZ}{mnckGQPRh-s?a)RS!r*>8i3X*E07%6D0BOS4QtpJG8f6=Xr1&l zjhx`GMe-Ppl#qEhl0Q-Z3E87D5~I!&g0qo4nTdtwHY77?QV9k3N^Y4SWl&BtEsY61 zUPa-1#I}T@w~$P;C^_&W$uUxsgt}HFpT$U{&PTG6mZgNr>yhk*k(#bWvYytzgoSd_ zArfE0H8+E*PtTy_tx%h!>nIRNc(w$&ZVYii&fpc|X~L_r*;k|%32$CXx$e##NTtqT zV7~h>X-;AZQ+i~55(NLOkEw#kO7%KBeor#wlZiTK8ip~w25*W(7LUdu7oQb}+(xS3 z*{Re)9qcFRIWv%?4!mba7Z^@IC_x9Oh(u>VAs4@d6w)bfmdH!$hx`tHXNPgrw&TM@ zOxi-!$OK)6?_w$qI{9)c^v+sjIK3Ox5a|{2ugmDfB2;fJAt!#QLv)mEp@lE4n&$8F ze+LTZRFGu_8ub)kBYIt8pPphCaoLsWmoz2v1kzPkmO@Ux6*aT{ntIH|m7`FS;rl0v zJ>u$dnB>7vlB&9j>;XbfLZL=I!1x?O)iw{WA3$i3<{^KMsB;ZgHNE@=KcO=f^6^WE z39cau`S}ArLN&D#WpSd*a1B)`$m=j(?Pkf9d>)14sZ*$!TV#o@VG338`|}A6SE!Ev zLB`-3p?aCXpY2a*(nBUtgJHrooUpXJavG^tQp3-f>NT)knWU*IuSSuVszxQ92BR1a zlPy2xXRxGooWR(#h;RO(m_19LQl9{sE@?HAry?ntMiWeK!gL+pHKt(-%8%F`cQ%p= zNQTKXq4&P;dQsq$JbMe3@~e7N_M9!clbK|d$#XT&3={3Q+kGU^9Fkj~!N|*I&Nh;l zX_YsU=Ae(|sObNK2w%mL&+kAi*G)s-vo3~SW7iIzYXPcZyYM*RiI_9LPf;L6-M&90?C77Z_BbJM)KzQn6~#x zlTYnPRj&<8zP@epcW7eCTNFHM@-spNuT${2$@h@-lCM|rgvl=>+ep4e!B0(oHT9W% ztAeLYzNrVn+Y~%)dZW|l8p*e3I03&kjleg=RhDdllfGYr6lSFOcY>?+YYKeOv$cQ&V%<&qOzP?%~cO+bV~4<1jSW2j+Fdy z4#mgy7@=T`9HH9qKSic$SnePQ5ZUBcJ!d*@JX;bY&Z1S$GsK~6z!J|=upWSI+S*~#a`l-r&dF+7)#vn40C9T#Jx1Cr(Q$97)Z15jMXqpe4Q8vgCh5gIG8V< zBawN=Ir_?R3&np(MxODGyCjjt;_GUH6CKKbg+(Trt*6nUxKu8Fq}anV#W6>+sah0t zje~XKX_ZhJXbj$lT&Z<$z06+PED z?r8=7g^B4@;JMb(Wi0R?OoRpDEgG*e#dfghdOgLprkITJZg9LZTe8#?QAZr!Xo?at zNY9N9WxShBkr$4`TTGFH@osYbOVV?rDITK;$#b(V-)4%F9pmtJQ;fv;x9a|Pn&P%D zad?+0Oo;S0sd&UcQ`|#~qUUzU$rX}cX66d;|4zp@viz_qveDkgZ<}Ix*EoFC6yq!7 z@NqM9Hrn6i_)X#yrf7k@Z2YMyx>UvCQ>MsGjl-u+F^iPkv)yq(%Hvy8%!g&{aCGPb z{G%z3b&12jnBsJ59R9=1>I`eRyG^CmI7Anac#mVm0x1%Q=tygm=P`$04!PbT-i1v( zuC;WdLkyb{FIm81!~M+KCHtJ>N6>%VaVgW-4~zIv_=Hoe1--@ASt~Wh#@!RPl*jqhDQ=+v!&7F>mF1_MVht>& zua&Djk~6b)#tOqzZdGFc>HX0umOx(ptv9QI|8P>cht)lR^_*6HC$Y`9i&S8DY8{qd zzL?n0bI)y&3$0v}c|oqB)@wvFyfCcYw|CB5gP#%B&fB|SvBA4*zr$oS!+UDC!}waX z?4{sN#*dPWc(H=J7?G4lLua3b6UIK-EXVL>CmkdHdb97Me1dsN7m-xFg^v(SH9Ghp zZ2mCS=#YMoice^lO?J>BxKGu{|1DOd;BmXgM4DQM;!jY+>X?y5S^P2zBvcYLI>Tm@ z{*{ls1hjaPR`j$h!CK#IRMX{4kDyf}$pW$tpdA5;J{jlCyO(NfsG3Z;_%+3EsjLNV#MP9578E1YYYx=zK^BF^aV@h%Q zlLlqfs9v&o4Y4C*Xo4gq$iJpQD5LgYa=wLp3(D#gD(0nROBuryD(3|leYgsss`(mP zSu;lHfXVQENM6#8@Ad=3)=!Pp4Fb z`O{F7Bj61DzBgBOaVd2e_)|qimO%Fb#uf)98$=~3Uch4WWZgP(J@G$~z&_4}a#K(= zg9I8#WWNQ0DJW{9p#x3^>SR!~9Q9oqQ&6;yCK5bbX4Lo&i0bb^XIk9HR9g z5Y+YGX5uQ)pR4O1rHG0mjzGRHKhDHbif#i1tgqzX2__cNwmDG9rU>9qnaD!@9!&Z3 zQ%rOx{~741@o6S%$v*~4m~u80vF%EW!#^@%k;VnW8dC((uV=@Avh%6QAGK%Sl(-cR^NCWju zN1UecLLbJnjxs!W!xVccJPAbg_!M!y3;E4tdldgnQsDrpj_>9H(EsezbX)&(Z2f-+ z8XtT`E#TnqI{BH+4}<0W>ImiL`D2EvUkyM zOF&uw2k5i%lGl9=G{x4RROm_lwhvkDs&kT`<;WM+Tm zFf9HkDR$-nd(Zj~u{Cq>K}nRGuch3~A()`tvl5FlYgA1iUqqbGtj+48rdCXQ&CJPz zC#cCBC1uNORuc{LU&)j*Bb(*uRlI-{H*?0%la;&rp3FLPmg;i|FQ*onb2b-Am%(?E zi^!a-cC#b-U{avWd8%f;;X6cYkjp>xeN68WnySC{hfZpGYl%<(I=_+ti87NqKv|q9 z_b5@Ku_{OHxN->7iO`NJ{YsU5kfW8AQ9;#s0$Em;KUc3>N$bcjW@in-a@CLI<;%{x z9JR39&WM)^ z2VF{CbUvgA1W~@86*%ha4XuzXUv}wHeL^9-5BIgnJwnsT?(;mxhI@Aq$?|w9&G115 zM=Bju3V5MXK;`Jg8tv%$R-#Z`r22RBZ4|kRi+gH~`31^($pon}bwnKc_kBdXa4U7@ zOUTcQ$lU?eF{CJ>y8^1?E1~DpZ6i#!n$Q@^zuKP;?dPj;L2!Jo9br&$&V)v-#|x-J z&O}9(i+@G#EoV|$H-+9COsMG+#bQ34Sdep;GAAFeM=UjMe7+&|cmpveC!%JW?`>&b zVdTudPL>t%o5*f*=Ga>O3+ZvrT!pIm13>d^J^qjqIrHz6qu22-&~8CucSGv2k8C4n zp;84Jn^ZSvsX95Cz^|mK=d`+I%?4t?O@3Tn0kfoXLL&nBg;D!nx4_kvUw|!A7L8{ex@%ez(4rcy@S_Y9D%+l)5w~=^*+1l9|zEm=0 zUvP9k1o!(%TEQ{3+F&=5rUmP3wQjvYLj}hw?`e`lVQ?bCXz!94ON`(o zBter23T9?%3uA`=cN%^O3qJ9$EE@1q`UyUz>F1dP+K|N`7j4MJalb+EMKpr?ZbHpB zf6r3t3u6x+QEFesG4tSiDcK55rrh9%Y76)RjdMgX;BD%k(sSR z5&j%))q=n1g8);kD<{~A^^nEeP2r{xCzzoli=C!u!pMG&arP31%-Gkm{%%uD$6%dx z`5sfaXjuyO(D+GHEThOISfue@Q^uvi5*Dys57zACy0?iMx!8uZxVhe4KgS*+d91OWWL2Mv57kpR;Lpu{h zC-Sbr$JiWMzAHg|4gGpSle{}YY$b0J+-FZQL6i=L0@zbb5I7_WzNGuxn;?48t~Pjp zosyg97ZSu(V9CpN@RT5`fnU+}-$M3NA(+Xb2 ziX^m*z<yI?V^fnxLw!7>BS-uabcXw{D9XZ%qf4seS6IX1++b#im(W1fx!VXnNyJ;h+szBHVBP?w+-2I{E3lB(80NcxHYKitvb|0Z{b`6^1bRP1qKP%B3zMNM$bfnF!ja4fb$#RzNB z5W!ub#E{!aw+!wAr3Dgs`4K-hB~=pn__-7*1j@!qWNq(vam?+!}K z;3-h4f+xefaB+(fs8U<UG>pxW?#17{xi5PNTFGJ%g?Q%Y>)Pw0wU5l$YX zqJm_MRPZ(J-dMpln57YDQl^XIWa}&X&4ZYR%31$GFjvY5^vLsIeI;}d1#M?k$qSa{ zM6tX3%<(v_non+``z%|k=TX<)=Z^29>?f7hqVDq)Li~o!fv-RLDy#eA_xIE<_3r7dU%hf)+q63r0k7nPlzr<6Wfo<1frU?-|j&b&N~i``_=v{B>(_}A1~ zQ6!@IdowK*MNvBpAtH>T>2?@`prmMKL{F%hTwc*EHL#cOCuJ#`Jt|)r#_P237tK*M z{oL7u&|FnBi=QMdE1IWj2KhgUfkpFGSw2rA*H*MZl@;>0>2J|O)k~4QoLRI;(NfH} zlD-u!u9WStCq)mwljIfLIk_7!txlvUIbHO2$h%AyZ+#*hHcV^)OYCZ-}MD$54@}oR~{Y zq57eahF)P3w?aKN^ox_!QK*;p#z8TRI20;2)smDiz9qjBDlrwgg`$KO(@<|y9qAQ` z7s-}FrKUR5D;BG%Q7CMxL%p!5r8OW_rh6_Iqe;@CKBhY4s}?vW2=z17NnV{8OzTgm zQp0-jGRUaXut6-OWhK;KlMxYRWT&A4<~Z3^iKk{q+Nb!u(>El!5}%@(3z%Mw^oS_limG!v&tuAzx0e2_e&I!NS)8cY=i{m8_-U_qn#gBq7-Ol>R0ImFt~4t;%^cH?BX zp}QUWcv`#yWxq!+^=>hU9ARjuL){4E6>e0%SHlisIj#1g`}8GtzrapDbiX4wOj*V; zaCDbr>~LinE6Er`4>%&jm1X1;V?qx)W(`-Cu?*~e$no}YWf>oWo4Yj`VR0F{dN_9B zKc5z}&?64DE3Xp0Aj(G_N+qjB0ai5D__@9L-JRiI8p8%)wf_>p%42Oa4)0er)GWLU6 zFFIyK{Lj=~Dy zolLACj~{wnUo)kx(KcG3LI)ix&Zn)>hv5I4j$dSdv=w>;hI~k0RD9bM`$LkJ z95qEUrt`kOX!xlqzNCdA^bf}#+5agh^ls8E6S|NE>qaP$rz4vZ%5XwFPNb-6U;5)K zAwN^^_d((1F=fw=N`e&3ELv{#OxsZZW5Gw+*&qCn&d^2gSa`#NSx`#d$?3t{l zYVa>;C)_i|Ufl=L)}*If9ez@j1Gv6dZ{W;X%`1%1DbqJpwiDB^Y7iG6Ts-|7V^C`>GM-d~!tJuZGx5M0e-zx|8dU55tq*TRLS%wK`^Hj*NH{ZS?)T_Is;v`0BA~H() z=@7_^u}dmXYTA=6Q0fbk$-8?8JM`29_3mo#yq_RX*t^>)eQus?Wl)vicQnb(p#pXp zEgBr>Kcx-!zVL-KLX8na(flS!u5^l;kDLEaAwlU>#ZoUnhoo0}meOn=|BCoiI&Ixj zsgJygLa);1of2j7n@LKgk>?}|@`q{8rP0F@<@5V!!lkqBSprnZaq3+<=PVU<@e4?u zO6OKc+ROP(B;3+@N~i1jeiCTu0yWD9c@kf$k6)Yk9pr3E7ptHt!k1JNTB5exEgX05 zl`h>Q%jWR40gV1%!7Z2VZ(2ID_@W2$BgK<)H~IvlwRtM0jW-(~2n`CT|g%#8gOUi6vOp zCbMt!BJV^H*1%L4>K3@yIMm1#54_?rSnd?2LP@_EN}3Rws$o#PL(zMvNy9>s3`3s5 zl)Q?Kq+4m~;i6Y*+@u;>!^0tP-FI~*9=({omnh}wq&i_O41-@nJ|#R?As4@v{7-nE zLS8EvVrOY*OIu!x!4OU>1=33a?SfXZV(rNSBoL9!voof1Ko1 zR{Fd42)NEr7FLMyhX)ZVE0N7iUQc6|^--Nz{51KzvcC3kACmf(mD@9~Ag-2G*falv zRHv+;J@XB;ER)n^NT zAAQz!mS`6L6lfT3ASVMce4mks{AHJ)0|vf>sc*2QFot|i*%dZhn$c{dmV%MAklaYw zm0-K?0vfEo?5Z9Vuu&;33lC3rI~k-)~B)?ZFXHr`|h%vN;JEECA}%zs?czw+cA=X(Kp@q zDRu5H_ss*joQ%Fa-Cjd*JXYSx-rs&e94gll4XshDXpJfi-}rf{Z8$g8YCcKB*=j43 zG@P5e7OQzl!@0%QU1>PCYTZ?ab6c%eEonHnt6N&Kl;LbsC`b!x_`yWtP}(?J2*VG7 z(`he~cMk6^rKI7T*bnESJ7-cA{x0m}-Uq{qwx3{f_t}>Kr6t{OAEro~+hu!uX>$+g z;Lf|k2tSOeV(a1?K+C;1d^h?O8%c;^6??(E4J9=QXRt06asc7R;C`mg!d#*kW*A_K z7#ur-Lf^GyZmYuYt}Mf$AsJ2hJ-zhtRiN*v-u&}j;KBQP@6QpdhCk3-e_l?~2p>}$ ziy&VK+K;QXqKIEgx#17hidf7`NsGfDsmplfd^bGdKXhcoZ-qQg=xsf}mfUOjW5u01 zE-?DZ?ov7<`QLy(nI}0?Z}^&M_^j~h&oG5;5cpTWm#HaiC0>QUR>(xA>khs^6O9+?VOm09j0P*Rn&nhI`MS{)kje|6*T|K`YI}M6*2r+1D;_SP@cGgb*v)T0kH;qYq9IovfOSPCQN_SlGpy%O%IfYHAWr(o?iV zAuTK6WDQ+n{vd)W>{40TEqc+;IPBKYD-Oenc-U?Ued2Y9D^)|kn2}46v%i-s#&54C z=w;uPE5>iaxE)wlg<||}2)Cn#g?dh)u}!nut_{2nS;kT6fZba4u8M#1d!1C3VrzE53v&<}r1oktJ_v4(H2$pt(zF z#S9m)ha@b{T)bqN5$?*KmvEI~LQzm=UtEI|e?AVwZysvHg;wZR_8s9frmvV~gl?02 z)b4mhDs;QNXUgc|4Q*w8iGI;Uo;P$e(^r}VHU*(uG_*3Kt+S2LHg>2&>DSXZTe(Af zZMWf0qo^r#ryR~!++9v7r~Em$pEeoWZu-iqYv|W^F)m1U9)75w z-X&MW9_c$;O(c^9;(taE7c5_;n?tAmQndTEi^yA$H<>*<<~c1w8{^JyaU>hV1i!!p@(94>ta#4tJUuE~n(kjjOla)5hks>~y zs>B7k61jr~UsN@)!HHO3)}?AcR^qG!?67lqm0cP8bEo{#ed16z_zMVcMJUu9brnS zSz?lt;9E=`V&{uDaO(HAZksPI#-YeNOleJ_coj!w?`l{i9)WJY$98LWLc>Bwb!k}M zydHX=;pTO)GlD66pa-fF(`dsQI;P2}616x)JI?w@eZeVIZj3#Uht0I={&p^uMR8bi z4!1;0M?{q-#VT!$Rgxl;j!IWLPgNp=geIv@fT(C&f5_?$dsy49o{4q)d8}xeYH_5$ zeVMbv0Ndf=Fu*AxA{e`q49duhkiKJ^8$`kt%9HxZw~!L`>!dc(246$*ZNH3G$x9p@ zd?km#pwQkndTqyBKftDLL#+H<+dokGl2|zuS`{sio89IC(!GN`m^oZV5E85l9h4&E zkC3CTEVTUx?pdxpLm`X*Osi>SccnBg9;OJgvPYuwB^(!QD~r^$ynH)#RT;`w{)PWU zs#)1nmHGM06l7Hv=gG1le;JGAzZr* z;ME-Dm@c9&0%-$f`btXEN;cYjr5dXjC>UeDiS#h=sNMwW-3!s(So3{K8v&6eTcSbW zoMM@Ni_*c}WWy8mMJ+K5m-}W|lSeE5?}1-#u~v>&{2xaBgl1Ydj8^=2;abBi>ygol z|6gEvm~9=A&?~aw;^$c3OXw40;M3>o%6@Ss2AXGOi~-CNo!~hZSXB}R#cKGKg;vuT zCA;6z)go)9goR=^WVhJ5c8n6`bec?PiM3;l66F(Ec$QiR#wbyyptRLGAz``r66{%K zCDtp+E`TpwZuPBKl6?dWTVXZTE6MI6L4?k>R@W=ZHbImttsCl zp2WdCu=5|_>nWPy0)25%;E{q*jiokihS&t6hFZ^#P<*`)e66)kjZl0&g0Q2`@{Ck` zEkbNE%<4T-@%3}4>TnHxq6kJX!WuVH@fEi~helfGj8uHR5SLv>S?7;XeDz>Lqpe#< zD834;q+>KJ6f1DzU2km}srZVM<$r!rDaZ%aMw&??Ql+tmILOuedWWG}-DtO7S%nQ)sXzj8c3Z1ruqsE|IWamC0V~xCp+czlLrha1m~Rqt8$!lLtW5 zK>Y-*U#x)YS3A^hIZGUccn3MuA!5Eb4j~NIR~ZY%cnI)J4bKpNLf3~l)c(0x43>JN zVY$e`d1S5QoI1tksMWMs;B96e#D51aGw|@yd`V%^$p{1gew={H#x#;+94c+2- ztRC-Z=oSB>4RPpQ4SnJhh~YgA{Q^s2=%|KS;xe>-KX#)-n0C*h4>ZgdXJMdY_Kglk zp)2%H6VmR!0~bj@lNWEgpN~lDb5q`d;l3IC%9BrJCR=qw@rVbh7Yp7-Oz?&Z95-UJ z_k$B%9ozNQs|T^pbkoohw?k119nTC^lf4qMKSP(gDY!w(2?eDQ&|M;X#?G;`@1u-h zB57JMROF~7j*EkcD?^T^S~cWB*lo|)kWrXoFURUyHKe4VSX1Cu6qM-7UhzSYU~dh5 z;%eIAhe~zNelZh*3_EU>FiVFmC~QX{Xi`P1+ZEXn(ezmP4JemCx(L;ht&0iyE+WtD zt@3<8X&Ka1rCzEJ4&ivK_z6jbCGStJ^6JAcS_Yj`+0o4R3VA!L%E!nYRHJmKv}Ue{~r7yl%86}mygEK!SH(v6myWl)?8*LstNw5^25wp!{y zs8IZgP~c`=S|t7f=Xr~U#bP1gt(G|!Ff3|d=eJpf5|)b<@c*~#ajQfEtZ17xP?lB; zKLmNFHA})F;tbM=&|Mnh(T~Z*qdYLI>oABmyAOV^#PQZt8r84w3=tp0e@#hve5~T) z<1ogigkxhB7hfYa2}KfqAFH@H0qa#Xp~E=E#lF~$PfsWsr?_|mjG2=#NkSiuwtxl* zJk>=i_GiN}{s+hz>yzm8Qx1QxeJ4BHc@N@*kQnT?C}Bw6HA zos`RROk-iJ94RVVMt=gnZc+>lv2M1+s^I}Ns&-+l=%H8<79=X#8Y?;!E0XtLXpTG< zEB`V!16}k^tO%i+lBH~~%fF44Bf@Gcvc0)?l+Bz8v2w|F$-y)G8L`{Mi(@q}iPe(6ZJm{*QX7i z#%dyhjH@Ku#Mew6Z4ZZ?l+x^&2<*Fr%4H>FuWVmQm!B2u1RJilyKC$_Z_baEKQj7% z6x|vtI?}#teOLCAvGVW#n?5Q(8Y{;J?SImb-8ohIC041beWiFxvd7q!u$lYs`+x?^ zawx^hSh=46^f3r&u5FiXtIzqeY==EA<=hk-=s=8`cy8YxD?btIQD0s-7%MW!`8#*V z3l%yhu?Q+2YIgJ-Yd4;PqA7Mc6-6i=xS_Kgqh_pa4%fxT zkSQre`E&DFBc=hkrkiZt5$pSLyUf_nEIxVG2X@8?or6L1YF*>3TBh^)rdp%nJOrWBR-U;$D+RIm*q0W{q zR0=!_Yx(W-*JRiq%EvCQ88;`OGUam?QT_9-Pep4t1~ z8MK4s*fho+?aHKfgo8W9sRlRrwi6+c;}2bxLiC*Q}Ha& zaFuwjUmRR5eikt(Z{U2<8Hd+0aS{0h&q9sYv&`wO^V{%7CKeBjE8omSU)o4}7HPbN ziG77}_(mp%X2juJn0TU79NxynALIl)OV|yqz}uO?-8!CDCg1IdTcMYNz7=fmY<(;A z7TWH4F3|6zIAMw}Nj*ImYW%4wl7ocTXne}dN~Y-7bFq9aDKiu0OSj%lq^wJ&LdchH zS!5TU%b0rU*^j1}*Hhx^M&Mseu@NL+F0XybH)`EX%Hi3-a3>@%88YlA@T=O0Zy-DI zjU`L)tG6X^oK$9hGP*&U44*^_miehd7T*i>*&>Ntd;uvz=Bdjia`Ul+2z_y%L|%TF zcH@~}9gqlHr0X%vv&1ED=HCZ5=!>tJM;Z+^%wBZ$mJ+(fzaXY$zHQq-F4<_s{&Z8OH@8VmLuo#cI8yGyutR)+havYQPF=U?Qzr}Rp7iQ;HB-0rbk&{E1(=3K z$VNW?P<0!^^B4y)Xa;!}cWNzO-pQXO2@XoNS%~{;2XXtpT3-RyvBBvNqT(iU3xhk^ zZ)(^{CN(%i`&#epnahpA{)8!#I`5JdgaQhI*H2S(Cw^%B7wC^~4DHpk2K!KhKTG~( zaISrMt`}L_VEbWMKE@)Hr`|~7=9_8g!THr{n$#7j^35dEwa$FKE4uoge9@T)mCrMb zq$NoN-$))~|8mQ4IHh9vpQvS@^w zZnvZJv81&%h4Bx1)|?S+Qk3CA&zkPlO^PxVJnor-z-5XNi^!g)w14UVyz{iC04=3V zYs%u^aa7aCe#g;=B`*oUSO@%@e_ys8IC*OvF_jIMvJZmcFO3OXX_#-r* znkohVVEj=Uv1UL;XX(mJem6<6rg~_T^h_pSPAXS3=rRennY@%nuNk~w!tEySMVzWR zbIugNohCnoo`)#7*W~rYotmNBngI`+^3@GBb+0!oAI5tSc{RgMG%FXz&mc9c8Lr@Q zlb28wTQlPOX64X0Bl*;f@A_V0L58`?hwBn(DXH1r z_5!GMQ1!6J-!kzFG~!WKBHRDS#O+}2lWb6nQhM=s@_{u^F`ReF7e0*y|DM+`Y+6sN z9R#(Hjgs{@o8k=^$xG5b$cO7*0DhUNCq4)dpdhy972TdNo?WPUUE^C!@fR&rH3yk7 zLm7^^947gOyl5_;h2mv|-((ld@?EC9R9AC|DgECKjXg?J4}L|4y*V)0giR^$aK82q zUdgcw_DoUUK?-q=lA%jEfQyuJ4B=Az7c1#cP+n!N@+wRC2-wP{s?X&dZ#}EIEKRE9 zDrK%1T@jT3HG3ACoP|E$kzk%iM z=GY;CU6XPTH)Ch>eO%6Gv3eL)^#~76MZYxT7w>LUCJ&2~reu5GK*TN@9V?3W24Twe zL4>Dk^5#Ts)<4qDF+bYQF+XNIX1t5G=5c-RfO5=FDAdI3;Vz$4sD(cX6?savTi}%j z@wBpsCmC;o{_nj#3iuN76Xx^maS2~#%1J+`jOh)g9PPg2(*X}N{s47SvtRpNCf`|9 zbKvXg%F_5YXzt62Qt^&6{!hs9743Jm9ADFZSIhBrCC5{Ywy|#bHc6NAZAaSqwzqO; z#QC)P>ui5uJMVc_{JZvjy2v9jcs^o5>EN^zw3^hihMc5(akma zV23ix1ig_ll&f=USLaej>XJr^YXH(llk|-(b;@NWGmwjIj`V0LY=?yPnRtg{jXUN< zpGRAdzIA1easog5Mvf+j^aAm)R=so?#aaiWSAHe79IR#Gsh0o7TpPR>z9s zn@*pB-}UnMJu-^mFmlHJnhEURGxQ~}nu*N51SVNANwdOIb8ld;H!F!q&NNCp#{w(0 zaSDSvVp)^gIF%`n=pSyLO$|BlgI*1kNR@J=oG-6RRe$`II^B{wg%lpm-M z%k+3G?oU(o#aJ3}cGAm88b@Y5G)=~p2)Q@dMF~byF-^BN`#Rb4%`FhqE)amV(TNmg zKSFrA zd`9guh06IqNo{NO+KXFM!63}YzM6n(C$ekeaxRlO_u4s5?Byx@##y#Adp@r6L$TZs zVhwcBfm!&4o&=x^xE4q`zDJ4Jpb|I#oOVog6Bn;k?8a8GZj!y}1>5Q-tJlc8q+seA z)HG=SL~B)Dqpd%yLMC>r$g`s@gjFrR3|Hl;pFBobQQ*)Zj4hMht%~#ZtpM zD3!qnS4iB$IL9DLSd?rdXJ+BLdR`UUwqZukWU&9d4sM)}U0gSWvEk)u1{4&&y0{Qj{#YzRwX|shsGm?^~$VKbbm&wufAr~JiE!zc1>#SCLhoa zzP`@Zlhrg<{jd`4NB>4{zkawvUd(UwrdW4l?CxZfdR0kx7kj6k>|mVk&PcWDC+$E7 z6HsZgKFI)cr@fBsjYX8*98q%hHqUA?>LZ$OMu+9~J$lS10Z9fH$>dm)Pkrw?NN`9W zN>)Nd#m%kDjrzf0T-pibjsVxv_EBh4KOWpjI{|{HVkT*CkmA-yL6aeG>8hNs6*J55 z{YWj=)Msp(4@UyZy4Grqt3zMiY>D1Xf9nhF89xqm1{#5ZpFyJ2F*zwwRJwJ(EzzVp zazXVoFs3h=d`wYhC%l$lbfal``sgS94N*=`$UNh52}wJ4AVEh6_Oq91fdwuKQ?gg z0(})>tgx>l;8p!&Gh>#QO6`KIKT++b0wwsXUht6|SS@#66)BFV&ZGoG{R*D)8%j5~_`8VykKAH(|VLOf&Y8T6ibc zUx#K#J%%wcc7bI+xz&l|>|3{d2L|DrM%|x7#Sf{kNj<_^v+9YQNkw{zBEy(m@(C(+ zq$p)_*}2N#Xh$?7hAgA!N^)eb35f}d;Jq@bVlSL)7B4^BnA{gb7)dYDk~q2Y6FD`q zJby#V45}>OTioEbX>1{`GVjqjnkH1NfX6zB1TQG-{NdHH$7%7%{T$ub`;<)~$! z@}lFw4!>NES5P|tE270}xNj?^3x0rWFPQJcWj0?TX+dGby_!@ws+SHcN*Y@e z7OBxdN#iodVkKFO-MIWRiL&JFa*g_#{2;{%7g3x4fExS|H5fJ7!VtbrG|j?BKU(rn zXphx+>tl=6aJW>~c-x2C9Xe=vZM%YS;T?H?W$&wNJyf5-(ccmePaOQN*ie0XCD#23ld&@WwEV=8yDl%stJ<% zXON5b@|y|j8fCYis_E~PyrgY3_o?157o+00ixF4-LBCG?P>#8TM%_xf=bg$cC@tkU zHK5-qDCIvj+de_YOUmqO zO%?ap{Ws~y-wp5L>GO;x{rJ1f+d6ZZ(Nr~#Dds&(VQN!N1P_$z_)A*FKTs8%U)u zDOAW`Bg-p&Ma3b-{C09WrLP^ABZR#xml~x9DvyHD^&2K4#pGprhzpHE%kw5HBHX>h znN;&{4B<=nQ@AF3NT!XF$)rnbnCC9`@(O$S?XlqpVR78S>{YlAO7CGxgIwY}@*1A| znEHH}S6oDP;CX=ID>GPj2jB|fZheWlNR(rZeq2{B7Tw8bd!EpxVeuC(B0sHRx%#}< zGx`CYDzOLCelB(a`gQv2*~hj@W30=B&3InaJueY!Y1iP{&y*WlrM`yrGE-kaTEo=W zkZin`2?s8HzoPMaCh!%G7~aT4XVNOq>r8!pYBLk>BDgrnPRgUXEi7Gf8y9uEkrjL1 z(pOM#VVTR9pJRC5VQ;Je-p15tpgz-#Fv&UMAe>argzMJ{$E9jbCEwvr#sFm5E?}9Daj|Iq~I(nYaQM!B1%X zHWSyS$Kj()TwNB2k2CREP8>eL)c4L#G4_PvcwBZzNCZS-)*sIy6l--O7$v0J$1r{g*}Y$g5@^Xe#T zLWu{_D(p$quO%b-3v2e>4l8A&MME=LqEoZcCQax|M1M9_%X9_ktF@2kF4su_@868WYEM z=$M_$;ZMlC0{CDQZt^-C1i-#&zu0Q~T70(2zGdlGSp(r|fSfnwtwc?HA}N5+AyLjir19w^N{^7Gh~ks2GLl7LxheB!P=3-7(#*PX=gKN;R)P$i zj$H>bK#!s&X+OmuXXWmrq%V~u>piQ(YgB_jM{&rlJaJ#}k-f@0!ny;PaoNSaS3KCL)o74A@))_Xnrx{ln*w9_Dn)4|{;v0Y}_1OF>pensec^A;0Z(4sf zj?ddNW2P}}fI^*&r0(R=rVYGSQ8_4h4vo5m9O$&cu``*U$d6AuGl@!4ebZ{{V>O1_ zbgicKe_HK9X(E=9^gAsx)9QMlzH8d>HK_kHxHiJB{}yTaw2^uqM$-2ru4$vDQa#@s z;-I(r+|y`tlI)`SJbStRkmlaJ+Fq{lk@@EHHQ(iNQ}YGtiK=98%fhJ9e4#=qd_S3U z^BRTR6ht+zA9OASQBx?!Z{8r2J<-<{wUjKL)oL_v9EHryG^OS%$0Kj51v&3k=X6CulZXjDy=5z4-r%VTBx?cXeWe#-7_ab>sck`upo{J4%9(8t^ z%@aHa)x6G@?JX1}G+zrgKr1_Vo9}oW8bp<7N%H$ZDd-J_A`9A2sPbN2_+5I@&N_&xn)4U6|m$sigO!EUWnL;6K^MhBM zgB#^YYnva!uxW2%h}|;z3Hp5))|xgN{XQ}u%<$bp3wf~lwv|L1{}&qGh1p_?ZcO;m z$0fq08IT`1$)#sFpVGed)#Mf z@v*H)t3sB1-*05OdLNKW?jRy7bR1{+UZpudsamQ|erwms@46E&MF^4qTymc3;~G-+ z$e(&cBfowX`Ro3*K>p0Rb7vV5L&qUmnJvqf8xaS4LY4+Imn|_O7TYgTe&&qnM#RmU z5*Jr$AO%eX*G&;Q8^9+IVZ>qM)Gt{g6UnD z^%i>0*ZnwiG5A= zy5A3JXRtXWlaBXOhT-o*eJ*iC8lc1S`dT!LDc5a?C&|-CbC`OSlvlv#M)UQ3kA4A% z94*i=OTY(5yJ{HBgcFW-i@lTL1j#qrlj)~kGvSn@y_o&fD-I>1CAw{q$oCN})e(EK z{GeB~4_mbkuw0x&p+K}!SFREdl2eH`FlB?);u%_Hqf@mF4iWQ7ve70D>%;@(+oH{E zi|lHoD95-F_LXc~FQR1j(Yb8fIxQw_B%-ZaO-L+7%$cn1br-$v;O|GWDU*rqo zWC9Co^a43m8H9gBL2vXD_K>8Pg7700WJlNP{wYYtHJRw8y8V|-45g(jx{h6S8SrT) zZXzp-uD5U7WMVz$f4Rm#QV>pw=mw2{Vd7qh_$qy)%pXkjCbf-jZu|1tqcm{zYK_;L zVm2-8(Q7nbZ;J0h-?bWVG{sUf>*yAZH=AM>_<0>WAm_8i6gwg5oAr$_H=6Qc_vmfx zge>1?iqFB%+ckaLP4ORybDPFHO>sWd`3}8_*ky`WpelE1e(g3zCt7}^cWZpu6!XCE zU3!E3ttozl9zMWMuhaN@ax2jXHU7~QIkZ4UAJX*wVv1BU+vsllPGE<)0rGlOyN$ID zaS8C_y8rbK@d&NT(I<3&z@X<@UB1yFdO%zE>G=>ILOn-cwE5)_lgOH*FEQtO$uEak zOzUp+W&2KHhuB7LF8ZpysdR{kfL~)chms$n#igt0A?@~_bcmP0|08-ndmSPV`uMiA zf6_OihoYqDyITL=a0pz4i+;qa75^Nf6D^|Ak6A#{^R`2}{OBhdA9ct#3`9SZhD@70 zhjapK z$zp?ES|KbqmVgCPN2POW)Ax5J=!~9(0HI{f3`fZx#j{8ZkHv(pme;ZOYLW?6nBQFL???qc38@##cb1>n>JO=>sw zFo`9wZIDbqyB5buSZkfoKC1cJTKry)80#6eZ~T~Yd?zV}Xo{|=BA37upq^*j5%x!z z>`FVrJ_u70xeR}OZ4)<5${IVDpbq|LuoEmD9n4p{a>a~IX5xhI=xcx zv!HGp6sqPKF!n1H8p79swHp_|b;OTKk#ps|q60exP{|^-I?~CQI$-D>U zMvrt~r=&OpE9F}!)LPH0!H;9bvJ5xJV{COmfcmyl36x{<(gmm!&9D`HpUoj$AV2n7 zu*!pzjQON5^8p+bV!SM( zRtyg&KEE!;nZUsAveNVGVz>U;o!NKXA4Fe+1M2>VST%T2IWK$Q@7KYGVElHDXT4py zu3cp(R@k`5zObNE_0F;CGwe?6laYts*YEogGPvht8dS;^DnXEr;cn@zrf;#j{7L`)SE8o~{8zQ)`xw{VsUE3S=w0c8SK`7Nf} z?fJzHEPB_QUrQJy-jKvPZ!qkevV41zaPQ!Wew4-Uq@HG+gCXUv^gqinHN!@+D#Q!lQbwO;1{;YRcKUvRZT4ss7-eIK zhvsk?pk#^wmAAQkKY4*9;6?^49SH|Rexz+elHPzU`$ zDEmS_wo3mh=Njx^7^-Ty!A^rjHnBgbXJ4T`oWy|FDVKO@G@z3owoxYok5N{&oj2%H zLUUwygE5nhlt5$l?=#(0nN1kN=nu))sJ4r0GEgv{QbXBYw2-oVCg+HMr|5rB(t8jc>2&2sj!XrR6{;?u9W}_x~q~9j@Pgypq z9l5>O5YXF!;p>N#=*8kF9t4U}(>B-k+F4%z~-A@Uua6VB@` z)6&Hf>w1D>qm2-JSNj(Fi(95{+GMNgUy%Cal+{nFq=Y|dGFXfZQ<9NG4Ti0-QHjG= z2~(=X6o*!cdT=6vP2Xgz1Qb`Q#3}~}kt(s>P-eqiN+qsvXqC8)64iF8REdXWD`R2> zg$eAr*nHlm`Rt{?FHv#oRWyO$;hCR>CVWC!Rg%xoqr|+rp}(B$^I&=gg+a>xB%DOB z5(g*>j+?nur!J%db%>sGm3Dv0#8$kwmmOkIV%IQ@T(sxPIAW0uV&jr>50;S}W! zmt-B68rp$2EW=u75<@?f?eP+Q>hf>6*l}lDmwsyc2mL*ViU*K>*2*sKkX_tJdBbrc z!0wVNv=8|4gc$Bb9&7lL?lC+NxXB&E@My!9EN?Z~c8Tu+meW`GaH5j^4oMAUf47u2 z-X>L@MJz93w%YBDQ@g!d?fSM*@r+xB5!HEEDX?<%eS!9QGj2tmiLMq=Vv@Z6!;HzF zLl8x0QC5N!^W=ljs1WKUI4t5{1N#p5Q1qcGxf(Z9J;v0dw~f_AQfl>GItzkobkL3@ z^_SOVR_^2UXUb?|UCMytGG{@ul}*mR(IgReYQ{$n7;79)(fiE)`1&1zx}HRGKe%K9 zo5_GWSIXx+S>t!KvFO~0`&Jm68m`8R98G*WlQFaUYGTdRZP&E$0m!NN#$)hlv*c<; z-KDq*NeD?KkqBaJrG1=r=9shPER%^Uu~QMD zy3$&Umd4UjrMAA>QWUMWT3t}uYQ42}eYNtxmhW@UnbG(EzQ6zfHy_UTS?}jwuKT*K z`?~Mv$^4Y>wCjTEtuG7l9QX;kwtDd$?|6#m%BW;utHr^~qzhJ0xIhxjO`LL>oj*=$ z@svmX{E6r3+~9egI@c?EojTTEW=@CftX`}zE4kRj>^z`CTB~b{uVk%!x zXQn5r&Fy@ySRW442TFy^^r2iTQ>Nb$YE-NYqNQlg}iond#L^YHFo6o%>qT zn%bW!W-7VV$TX)9r1Po&^Mt3DE2UaVdWGhAT1rb@tyOZx{%HeJDM9Yf4M(*#cH1i?s)K$?9-qootECEQj<{70RM%8% znF8CXflS(O8_ZOSnLJ63W_E2206PGAXVp6gXJPWPNLOBFDLODj`Lp6p4Py zP$-;QDsr??uVsdPv$DFHDYR@(jSJ<+iltgEo6A(lSw4}B((x1JszlxsuP0Jk-#jVK zw6;p3oJi*Kx!M|@k*rlRao#GqQqm^h#== zDMe)(O`e-GF&)#gEyr_}RbrFtm11L;4b4ZTUM3k)ENMSyB2u3g_ay{#jMXWXo9i#e z4c^!uW83ts5j(9{S%XHR0_v$oFGy+WIM^p8#%tZR2f`V&(yg+p_e3SpsKWgh6ma%k>s)Kf(y3Z`%A1X9Ey$D4%mv1&+ByG?aQazqy|HXU#|>@mQ{=yi<2&0setP;nooyXo)+6Vf+uo(th{Tb$KVZP>BJUA2yDukJ7S^0K@$8OM&+4k*w|K>&QiOXaoag^NDD`nc*Nt8E`#VZqFLllP*4g|&qAWk} zXzQB0W7ln6^Zwd3)NyLpEnNq8ociX7hhEds_MVP4haI)7WB9Q4-ffRswyb0G_9NT6 zzWUAW?)~O=(iX#AwR0CQU$VSoi^G=vrE9_Bu7kdD_+qJ&iA&Dx*z&NBT3g4sv$}3w zeE8z+|FW#T*DJSY#@aAFtR1iMK^aG_ouJ#39t=HG#0L`heE0E-!~&;!d#0Qv=hJK7 z-n4e29uJ$^=eBJ+WcGW)wPCylPPUay?$jQ7CMD&b>%v;~*+ctW{fL4d6DeOeHe5YX zpEJ`3i1PELb>qX;Jp0;pJ>3rq7l>dyj2nz*Bx%UwKI%aKQVMp?wK)P6CU^K zrZ4qMdY4Fgm+13mg!}eFjh$iUYCW0AtN&8#9uUtkQ`x_Jk9>Xa?rQGT z%sk!PLZAJJ)L(D7^VXgjSBIXPt~NQ`JA6ah?5kO$=ty{0xFs|q7 zwL$CL>wZY;`MBO54atPBp0(}m?P2`n-N)b2zSsEn_MYy`+W)j^zQ|x^vZnXjO+Vd1 z@^p#hRpjBWOQZ~!NPaJo{EloJWOI(R&9hS0ZYf7xrno#kbF?hytX*pTQtDvR^Z!Tv z(d(hwYyI*v?U&n18kMm72I-gMW%~k+=FM0yMstUrDbKg`#|e|W!ua)Dhd{`&eSJ^& z^WlHnA2ltjFOkchDf7dGFn|1?H+A-IPI_C3mXLGuoc8tFcSG21qxahm;f7l*Z{sy@ z3)cB{*WD7rqFbbn{!KluwR)UlGVbNo_LkvsSI-3}w?DGUkMAvYI|X^^mHO>Ac}eze z5f*Py-P#!rmFF+GyyvrP!}#zeX@eW2Ev~y!%du0q@w$m2dDf;gPQLaX`G2c0f8xYY znY_2vm;Q5dDkt-=o)5z z$&(y=P2{I%iYm%Dt=`E~f_~ptzpT+bHuc{en$aBb{@?O* z0N1H*Rb8rm#rnyHwI*-cZ=^nLJFFcuyIbl(>)2)NoL-ehKd1l3k;~`Sdd&rXT-!qL z*Js7o^^EUsAFWrl{H{|w)*rp3eeR*l51IYirli@_INj~(Oa5#v%Q?L}%dtOin$WBF zs9frOp{=7=^_rGrhS{XMZdJY4s^hF&cWW8Xx<%~OEv;$pHKL4uY_cBv?8sw1dThhU zW4loH9_y!?;n!Wy&5+-T?O~7cN6NXA?VKG8YI9!PxM|aoGpw#!j*knkZ;bC5C)b$# zPoX~KnnNY|@p4@5U;m!Yj=AH*^BeaVzaY$C+c8(u92b7GabkFLa-6Q-_v#sAdz-qv zF1q~K-gnM;OXOjq?BCwd<)@e~zw=$Xyl4E%pt@Z9o|oBmx!0HK^KIK>eZJS)vbMeG za@A4iPS*5(yXmeSIzoGIyV!)?#~&v;X@QIa7D`$RrffO>>~Qw@cB`|sLeY=y{_Gbw zY8`Z09X#Luzp({!UzheL$za$de{G@dwD*mBuT9{@e~)_s8h<+DGBGs&bhcpO)-#rD zXuqm$Qp@oTcD(!e4V_oDUD|P3dutjhpuH{ouiCY97Jh0>e!~`*Zhlq!WnG`#?DDan z?)*$g*rnw<4g4?MdP?7hv6qgytn-r{SG9)`=by3jbB@>Zl89U}^8ADLobKftIxmyl zF1%D7wAOs6>$_y@Ir&RB_Y8b$%%?lAYTvNMXYl0I0cs0e-Wg^IL+4ee>bwW_*vPn72d6#D`7`K0om9Z_vMScBoG=$u^HwEVoVl zR)w`%OUBfx`b8M=kaXkFanCnyI4(XriJMw(7!F>c^4zBy_x8Q}>`FcROc;@8J^P3q zI=Xr9(V^w9(+(9BnzQzB@r>5fQ|xq~!fW;9_>301FN`Ry{R=Gf^z zg%`6=aX}bSCcW^SFyd+Y*OIgfvLrpH_4Hgj-KTiUHq)(VC)%N76fQiO_>4Z*D<%;i zQb~K(4kcUDXvu)~5Xr!l*3;c~x=%5~Hjh(ywH>XpMYAty^ZQ$xUH`nQ^}Cu}cx>~+ zMisA>|L3-isG8?PEJepC{%M;l6-(^G5#l|^4kh{;DL2Zjd3EV&+_0f>sIT>q=WgY@ z5B+z7^-SBlTWg7(?o$NINJ^(o7W$@U?HS*Uuh$%;?b@Wmdv2ei(=JTv?Oxzy^Y%vb zHSak_ahq)>6nBRaWo}-$QZdf!S`+W~O-(%Qo977D`Q|Nx+eWsF{#&6SE<{OH|{=QIRB z|GMl@L7_T&bfbAT`V@b*!uBil%2CgD#c;CXWZPV+xYCcd47%4@~6IIL~DJOc!OP*A?W?8A&Wu!zj>m{M^46Rgn4@xM4-Lo<@WUEnInwsZ4 zd3-}6`V?L5Bc7xA>uev9N0st%?IV)g7=pQ^GP=1e1YK0Zcv?T@`NQUJy;zk4>(<3% z@l+z8igd|>E=1s(%&?6454^ZF2^o*uQUZ=>8ahSYGG@1#X!cX3LP3uFK;ZT(>#{Xd?Ux5Vf5eQ@b@s*#2a82d=+Y+(!XcmgB+jK9vXjokEWxlCQkQ%I<9tF z2Lh_k)tPAZr?k_lgv3hre>$Eo75lsGCs&l(sz&8ZF`X;+OBL1kogEVObgrhMm0D)F z)|lDR_Q{7@KB=*fkW18Rm5|RB2Wh=py_}cBQ8gK9WZotWB9ECwYOfWkexLP>`g7@hW<|9ys4WmgQgli}dTKeRpDajMYmwxnvPM!!=PFWpQgM}} zPu)b)6y9z+bF`+M33dr3iXxu}$`&Q{il&<@RkZr0^`l{%nhQrSU$p4RXz7Z+MJrbx zb7bG5g`wDADb>r>Fp$ah57cZ*B%P_Ig2nAfxn7W8NmSJd8OY|Nd_n(t;Y2!J5s_6b zQO)GFAQ`zWZL>=Gy4Jp>nH8yt1`@?|Uh1+I(yL0vQZ^ge45{qNsp>#TCo_>QC#h}zADSLLE?C6hq}QS@|gc^r*jtyfj$Y0jc@!3{yRoY!2g7Ku|mX7tPyO9SbO z_V==O(n>O_luD{LrQsqKnqpeB;~LMq^{`5l$)%@VFKW*h9hZ=1^hA?s^rRF{1WcDX zh#D=IL=i|&NEAg5D%EO8Y2%1^NmCQ+mhO~Ih+YdS*?Qb&YNgwFrG&W2o8mzIRO{uk z)N7TDX?@0d5tS5aKL|NFUN00fBEq68^N}jlRIZvTg{;U$T#=F!=^LuM<@{i%6!fcZ zao6@@iLtHfj}%b5mo&DBmM%RA=|aw)!w|}ZQl&Y={ zgC;OyizQjn1JZQXH6vYRWN9^55$Hk*ZwsrF)rneaKrEb;Koy$^y$GR*LNTT7?K0%@ zQ%Q)D)RjQi302^!x_Yr*6^+ne&PUZX1%0q~&{hlQR?37YGn~qlO%>WaIGx!HK&0~Q zX^AsY)owIU%BSNyO$6&z>6}t)I)Croc`#Q>C7WwZa?(xIQH-=vTu5xi1PV>nNK#!0 zGaiyy*2^w}mnoEM6xeQy9j8>?HGZZRPf1CkMMHX56ctmDj;HR9$bhOdb!h5kt$xwD zxr*exUm5TUU)^bB4?u8)Fb2VxHgjI4%x=PiX-bl<^!i=qWb9KLkLVmAZcJIqQ4^#DXB^6CxN-PEGrOx3IKH5@_hTDG9b zRt?$89F;?p7jXkb_qVpIwn(Ix=^(R2RP)kcmOkFsYBQmtKl36Vn&qtOpQ=>5d1Km_LW`k@-IiQ2RWY}~ z1R^Ky-l>`9>L3y0$XBR|3a%z`bt@S&_SW0=Ys;&|%odY*aaUEhiELI(F13WL;ZieE zNyV?EV3HveZ?sl$OfW#I?UmLbT2u^cf4_)L zT3c>J<%>E`dPi3E%A%Xt6LuL=17<#FDXCiBte-niS~xYJs@_Gc#k#0f&lZuura?C) zmCBdIv$YvlY3%+=qNvI~q3(>7)pDNANbgiHF;zwSGTO~Vja$yO*4&{grD|f`wKZdB zMVCrx){7;x7FschLN32XdsMw(ibY(^x;nM0U(`u3Pdgpy;;d$GD2hLpN)#in&>#a! zm&hy?J<#GVB+{5v8=ly;uD4XzBgX}`I$~Myh0+!AQry+b6~%&z9xY2nn;r`*7WJ)M zv^bLgmmVz+tT?X?Gls@-SJ8Ec>pN{3bcP6sl&r3LB-ju{o?c4_^%Y~!Fo&~P%*4vf zG-B0sVbiXfjbdP+RxO{&*3?I|{-HyVsyO*UJGPrM6SgRsQ;Q*@ql&26_9iNJnWiU> zRVpOoe5gN`?AHa7+Ju$Tsp<$+DVmKRTwOLM?qdg3npMoBS|oK@r1CBE-W;ajRwpV& z)$>tOpXzPv#^1Gu8C*$4l)emaD{@+7SCg-+T9^}RDY}qH2rv}Mv=7N#I&)R6bJYqW zXZ3Qeq{|MmL)lWLkicO{N2Yx8qKMoRaRoiv?H$UhM{Q%RtaQ?lE!Wj0t(gN|5SdB) z_|7_`wUarTl4n01+__At3sM}enYzwJX}AAA>{G=gQfI5xeBGrak27KlTgDD<%&M{P zqDh)8#{v=KaLqi z^*NH^iYi7OXZzSpnlRUFLS0%n9QS$psI<qBtEFsB2Wt&u zygD&xD!`@1YS&h4+DOe(5aaINSlXmbI(n#!Yc$71*E+DO3>Ume8lfU?k9b9rEg7s> z3N`I3*{G6G>A_{tCA5qM%AzktTj5hStJK=dYtn01ZOu^1>rpgr?AJ;2>%YG(s#}wY zl~Xm6A(=F(3SMInnnNnZn%7m|R5BuoIUV1q73(+WUm8M%#Iv4ETTc;Ru!@v49XIWN zKBCi##BA8eGh^0V$4_eObO<62u}D`+2Mg|n4!NUJNSq>SRdcKUs5(lmVIh}56K@*^ zL~($|{LOT!-`cS>a#!?Kz392miUS%(xuN)fjRzN`?^3@w-IaRAI=76RMcEE!M5hhl z+#*?(%&Mw;W!CPfJQ2sb44EpWr1xo)9PuO;uQ;ZALHF!wv!>1Np4uN&kJLoV6;@Gu zs_wMcXwI}ViXGOlP0^YoYH9hq3wrg(jF}#*jm3?MP9Sq@`5Csw| zn=Iv3YFzm>2M=-lOwC?cva)aK;fq#^&68)W?DLF9ZtZR8W*5taDll3hW&vAui+Dm} zpN2B|U~1g`xtvC!)DhASi|#I!3WK?PUSn9kCLeD}hSVt;J%~${dUsRG;3#LKBU?}G zuI-Ua7xtZSq}0mNg(mwNxgmS5a7>s`zFpj=r6mH&L?Dwv}3Ary9QWf|$3e)lc}qLTOg|*4`ZX(tIft<4kcb zd`qs)%QG8MM7K4q3LjTP6ws=s1x4u0)@6!A5m6h)#cFQMOKlM)8~Dozb(Y1^L@8>i z)yNdJE2USda!@mDu}M>4sMLDVCJ(TdO|#uH(J<)lz5C6Y9j|B$ITsSc!L&$LN?aSz z_5HJ@n~F1+EBg(ejw)C&DX}XfPJ{TD;`ir8dZOw;E^9ujU8NP0*G{2(ZWHw#6gO|$ z^K|GQsmCQICFK?{8KOf<+A$OTIUk05pfPeaaH@G9=Ga;1@K(~w$VtMh2QtMG-b?UK zVq+j_K#dkQYT9hL8L;4u;j|i`Oj$}To*mE2q+^%8UM%P9{krVm8$-L4)`n=9 zDCMr8*M7ZNO=L6XLMJP^w9Zkevz<@Wi$0klCgCX4CiE$lwwY1RrCh3x zw91Q*(14A&-m3b{h=gKQy3X*LhQArTD?ZrJu8oiuS~#BF7?AN?LPXfA-+G@JfpV^# zAx*aytE9iUdzq}aj`#~2O%xf-sJ1VtgXYgPbCW2h#9ZexnarFSvu4gTlTysOry^N) zXWW}pq}mK7BA}w*n9S0^0g?JBZ_ml78jj~U;)#*SXIm<(qh{PDr-ksDv=*~Dl$RbT z7Fpy|MignLK*S=gVQ7%4rYboZ=V{ex2sAaIvl1=s9?!gG8gqsi{l=u7DecI0s3u&c zFK0E-R%KKlJcc2iH<8V%)e$#eWBTr(>10h&=K&%OBWS%#UPagj>*YA8Ahlsh)Kq@b z-YrAF25qg9R8&&sx+y1pe^fM^sIXD6sw`4erNvly$}67Pm#pkzb7VYBOzPf<#yOsJ}A+Wbt8 z9%*BOj0FHHwU!V-Rt$gz@~h&J;!&yJ=sL*lxtSrP`X-Dm1PqEbd++x zhuBs9>NG(^U-oCq%vmQGaF_elHPG0zzWAxGpUCg(mLY~sXzEFq;QodcjHAr5QIc`6 zh7IbXjAQS;b>WA0uM#44Kx5qI z&e zc=oVZGR>dxIlp|#Y`RK&T1RZvglG#LBik$Q4aIDRW|c+AO9Z^t`S!jTPbfyr=eP^P zyuLhpAIp;r@spKOB5mtcQn9Z|+)~K|Wpyh6~FMg8VTTmAnCm>bJM)B&Bs;Zc3zEm@(u3lWNLm?kORCB&CMk?D? zgXmie^A9s}w)@osZqCQ6UT7{s!QNzsD(Z-99;>P>^lksxZ(wmv)dz;vcu;Z7ig?n) zW*`mBFln=X8WYocZ2G83x+)i4 zZDxj3dXjb)RnN94qpX7=jdt2xliL9dR--?&HpVQ423*X2*G}$n9Ge5R8+|}jOZWl+ z^S-m;{KO<@spEZU&x+DI&@YGI9% z>9;z}`)y2RTBtD&dgqv6%8u-e*@UehV46lZR%>ZbqF)w0Hx zD7GmZ`eStgBjlTrT&i>l;TGbCFJGt_f()td4$VB&oV+RbxgVQRz1y*Ov)J zqAv4mLanwY5{Z(Au9O=cTym%beAf{c`HX{u%*dOmGtHH>I$oVvqfVQsue>iA$@;<& z9Q~}=fmH(<*2`A3HR81!@mCZg3#ylWo<^H!&?=`T>>c6}S;1>dr?7NHLJH_f>Xw>Y z=W&7&5juMS4vH#lucDlGO^*@Th^<^I<#maoS9$F3H5NUDcydqIF{!CwB%ZA3%%c0~ zQDg2VHY&a%!$vk0{ea#oIz>{~?_@C3#B*81XP3pX@pMM#vN6@-0P7%B!+_1YPSq>T zNlFh%*c6a>#QK4UkZt%j)q#2~Ej>oZ)7BBWJVzs&!AWPz8ul~KKqDj~${O|2#T$v? zSs%0vxclHivy?c0I$E+=t_ZG1X;qCQCb5UN!WKIoyr55`^NmpN(uMkP>y#r`I&1Hx z{6h^DYAPmIcEvu(iVVwiAyJfLBPR259(}g@58g-Z<0@A2f-UCMFOx(b=Wt8z-=c|F zirEmMc!``Ztuwi$_chuzN{Y$~Ha=8~qrsB2D6kQ0#C`OtgRDl%S~_?9%`=H-)v&y1 z;+%!#OCA%)C9PJfI^}~RVe;3V5}k1N^*3?1Hh2e2GH9}Jv*}FHoxTXbCDm7kwM=iR zIAU1Makc;&Yj@*0DG?BlL8e#5VNVU8TBNk8E?D6hJ2SfG+4PLNO4Pj#5Ihtj-jS~l zU;(L0y7XYtnoQh6p+iH3b^GntD7PkFhK92+A6|C2nowx7at< zd0;auRUb$C>S7I$`;3_PE?ssmhHI5rjY3VwEWSdRW-1h7J>rX5ZB_)0YRza%Btv5n zd)D&ay3EYtqqWjtrr2C8sI$Jr0>x`U(db;c4I|=pB))*8l2WVXfe^n(tqymiFI2ou zbgRCQ+H4T{)>%ATw5XvkpHFiW=Mw6kPCBAqlTy}zag8jFry9K8?&-D9?N928M+&T85>Fs46wv7U(ICH0wgmsLUXxsQEJAf zS)PZsPg=ZDYsiC?OzO4F&FWA{a$D3aSv0fSn2TpQvD5*bTza;S)ihxb*lMiAGN41S zD0X5RHbNtubyMtm%xqwDd9HtPB2ycviA}UVX=2@2OcbJeV>(vVXdzck)m1cgO|%7v z%yT1{q|ee=(8xi2#7wo`=4vu+E?~SA#C&33Biv8(+8SP#vbESCYjH6J1kxj-625A{ z1)<;7lC2QZMQu6h=%NoYaTs#+%R4?~^kAKK;!JNlDt(vIf@b z*}$xLWB9go#nQf|2QOdxVHT}fj92HPbSlbL73q={7RQymgWHlV(#HyZ?<7XyiCM>X>>-s`o@~N z?!$uk1ri-7wnWMN+h!V3k7vTAVOV9N79xI?#iLJgGy;ifUCe1FJ)SB~MiqZg#k9MQ zZc^Gkaf2(?a;@P;UDHzzl?0K4(d!&-aMmzdmX(3kR-vj}eNAjG?JJs-jTvBftvyCj z)aXKaFrL(Pcci&~FqlQECL21!CKqdg#W+K8oKb9-u8xY8sx`C7lfRXbPvy+b&=7Y$ zQ%n(UZw9HD`AF+>Rf})t8Xa@cRtUtOg7oQttWA>*H2p5AF{?k1=QLJEq&4HB=|$AU zgUN`+BzwbF761FsRr)tB?RV;|Y5SVrD0z$pvi0RdQF=c0$t<_6-AtD16(6z%wV8|+ z;+Yo>@kU8rD$po#HftTDpE*<;Gl{$DQ}|hn+F0)qm&#WwS^T|Oox0{A@P3<_Gh6)< znNe4l$0L-n&r!+r=WJ1uM%klyCP$O>aC~fZny(Fxm`G}rLZ5GfW2+-HlkxiPk@3+w zFOW4u?`rk)szCH*I~bPZa)h+VZa z_VLGjXv{a;lKp1;so5{vu%qf8hPNM!#&{Q?SkLEut(YxaB%)I*M}+C<=dKhixNCaB zMbDn-%FH#E*qnh}YCvT-DrDm2hJ0nR`BqB7=B8qAB%#w?Ik$$bZfE0rr*77LB~)BX z{t})~n~MJ%zwl+t2Tk)g;%`;)2jf?0a*e^bP6u1v=){pZavJ0m$)#`W9qw7W>+-G; zq?oWAGYXAK2EvQd`Rq>Zc!AX>m65OMsNlp)KiyXlLmsjg3C%T@VkUi2Yp7*rHf;lM zAGM5+86caBtwT_e7#UA!(f64ZO#kb^P@~0+vvXND_5PZV4P`YlvMQ;X*yoRQe4zcm zb>U%S9o~u~;+1$TA%0uR6OJ>w%E#{aXlxH^s z2yy$ROSlxdLOi&wvZPQ~1EunoRm)x4YpZ2>7^_v{_la;_{k0XwSMhK#e&vFoWzquQ z=}bPcCi2P7#%#^LvqQF&*B3d>?#Gr81y^Z~dlEzaUM3dKYp2&Sm%SIUT4$@{wbJox z2IgbRrPf>g6<_Jf`fz=BR@%k7y)N9$<;(H=&hZGe(in^QD_SGw3Rv!?s}t8Og<~!u0()?KS<{6jhdQ z`O-LbYHh3NK88MtsR^C*$Q0yPrNiH~>$lLoS*zl3%@uEXUtdjWV^5zKkfzpGM9P`w zvdzN}KECy}W+Hvf9IJpMr?9Xk;Tvn7XiPdsC~Ft)QF%A zDz%fDN9QGNPN4hhmge}$TBFviNUK@(a$@g1*KbjAec?bXh?p=Pu)O=Dzhb9s;YEvU zZ9$_!RRJSk7PP5&ef`1TruGS8^}b3K>ku~BPE`75=+8|3nWaDbm{_k1#B3mhX3{;-y)(IQnuVqGcu_V@E z-E(J=uXTR&hV*62jD}qKFgjXyRCRk0Wkh{3&k+(S8DUkL>jdLh!>alYzu7~UX`&M} zvld0Mn1aQ4{4?v`XIJ^`kw%!~m-n^UA|yIHPW(8Se%BSNI$qTEH~Z-77aPLq3%iY_ zacIRb!ebq1&YS619rSe-UsfI#FIcdD_mssej(NYY=nr9<46HC>rxntfWW9fyNRs4ln(ai1WKu&sc99=x-sJoC4!G^>Bc`=P zI^K2A1LV!aqoOgRPnaw5u0(7?b6Q1TZ%Sx6XG+2U-Q(5ie%JAT_k7-veAl%$Kzi3v zW-eMPz~PTK&cVK%qu=_rzxkui zkB2>6*YQ7G7k}Kg^}6vbpPh-X+dJ4Z%kgJp^t#q><#n?Eq2SMr|Ma7A^IHzYNq8Fu)m1J74yT7Fz@pT^^b=|RJ{kuS; zulsNqnZE}mf6veN{OR#Hf6_@ur1$7&Ll}%d!V{Y5of1Z-clDBHdAAJB^iB^W+jsUg z&2RpM(5yfG_pDpfdtK7g`q%Wf3eEIB8Ahh3pSErNmQS3Xen_!3y{@Hg_8~D%Z=29e z?<-+sdcVImjQAQ{oZby#WO_$RdMZnr-h|Lh??1xG^p;=O{FYG&&Ga4!Bhx#1X|w*e z3(fTW+j7nHesNv%n@Axv)6-Yl+rNz%Ki<-ShN|0|4q z?z-!n-(ZTb)4zX&k=c^m zePC32&)m@bCR7N`^d^r=?_^1DxXshsr6s+CN2PbuP0ephh0siI-l+7RUDjruMbq0g zG}Ak7RC)tn9{G)`IK87srMF~xTX;QqdflO!p8mU%t^IQC%^~#uoAM5hN^j2LZQ<(R z>FpMp>8%}=-u1VH@YhDCYWDNfMweI8dulUJueT+=OGc&l`LBg=N6US2dKZmK@1|p# za;hKqjnlhsRC>$5-m(*#>0LD{z1xoQPr+$=Q$jPnyGEt=ElF=}%YAWrcZ`<5W83T# zfSTS1LNmRGNpA+%&Al^(_beEhp8o$Nau8p4%-X6uG>0iHG_iRi1wzaTD zjKc5rUo-0T^!Ey$Kh;ZGhSv0cKc+2Q@Nd!^{nvWDGrX~>^<2lOyE;bXME6^tsQa6Z z+Hcidy5CyUy1(V9{jEa$&z9-G*46f|^tZ8ZOX@k-TcgiU7`4A$_z2soliN+xww~X9 z)c%g6_FFv!-QQ`{{x1AGit&dmcNukl*HQc3qxN?jwck5xfAXmPDWmp3FlvAAP#w(Oq~TJ6b>_A%96TJ|pt?kmOn`cdV%E&FPZm$dAQyU_COydA?Af`70w-WT&~ z-#Lx$eYoV*gd!pJZQnY`wmtr3>i(mZSE!WnXREwjv+z9d&;1QTzL_|DfJ0@^R3p^M{Vw zKWfze@uT+BqxOsJtL@oVNjf*JZVQ-5aZ&usnq zp#JQuKl|y=KKk<^{h8A`8$DuVHflUJP)rLNm)nzD2Vo<}T7^u(*1FhtwzB%2DP2?4 zGVY4vT-)kd`w-PYWyEY$H5ZknK&5Iv@+G!`k9IY0P5ar_yf7k@O4dY=5uY z7v=Wwy-E@K{n$SOo&-~H09N7Y@IrVwyb68=-UlCskHTl*ui>lk4fs#Ed7E=@)@5}7WgFmHGB? zf+ctfyb9h5AAnE7U&GhnCb;c5=WcKoJOr+UNmzkr!E4~{@FDm#d;z`z+qQB}fIV;~ zJQyAY6L1wg6J83hfw#kl;M4F0_y%m-n&-nFI1?TWkAexf3Z4lsh1bB_;Y09g_y+9S z#yJso!)b6X?1w|}TzCb%34Q~9AN~x!3g3oXk9Y0{r@}dKAzTUjVGW)GFNIgbhv5(5 z3-DF=cQ|%}b9*=sE`xP=HoO#G1-}aKg^$8#;Y;vMsDp0hPH<27LAU^}gbBC`o(V67 z*TCE1L-1+%0(=9uZReZ-d*DoXFgyw-;3{|~ycAvoZ-)=Tr{N3m4cIo3=ffU26CMnY zf(dvgycAvoZ-)=TXW>imO{fm1aymQ!E``Uz46MR4;U(}3@Mic!_$&A-{4dzGgL4Pi z3unRka0NUGo&tyAdGK<0ExaAx2Oop)+tIlf+#fE2N5Kdd;K$%6;DhjS_;dIQ?40Br z4|j!o!~NkB_z{?ctKqru^Y8}vb@*-g6#Nx@75*3OdXKXg&Vuvd3V0Gc1rEdW;Md>- z@Co=FJbfqU)$nWZ+wckaGx$6BSJ=L@b3EJ??hOxsSy+W0d~Xb@IZJtJP8iMkHL%J74T+wFMJF>2WP$4c@SIyKMITRbhsXV5pIO{!ymw3 z!N0)vT`3>zfhkymAA=Xd&%hht9q>W;1Nck$3j7-!^FHVP@KD$XQ?Lxz!t>x|@M`#d z_+$7Yd;_+1JGX*6!}r4j;bM3+Ou)5p9sE4J3El-ChChUZJjXT!_jSK+tdWANwj75I0!+1}0_;2v-`TmV^`@O*eVybj(0AA(Q8 zU&BAaf5CAxoV&n1;VgI{Tn;}B2jCDq2VMrRh8y91@KN|v_%eJ8YHVJ)HQWV$0M3Dj z!akUUWq3MV2R{#Qf_K4(;Sb^S@K5lcaEn>aNpLcp4Hv*8;78yfJQbb`FNIgZuflub zqwuHjW%w3s+sC;Ld@tM^&W7{h3V0G6gsb7X@RRTwcq_aQJ_dgVUx#nQ&1O5dgFSFM zoClY|EUdsY;RbjWyc0eIpM<}Je}w;ln|;u^J=`76ga^UH;fXK@hv7N!GI%xI2)_lt z51)m*?(6&joC6PqeJ}~j@N~Eieja`q-VMJ87wqR;53hh~X!nffT2RPpYr@;N- zq3{@(hE;eLycAvyZ-w{6SKz$4&comdZ~(4`=fO|G>*3enx8c+9dH5Q92W~abxeMG2 zPCC%p1E;~c@Ehr+rl0=10Dodz>mN@JPWRe*TGxiz3>tE416B`C;TVe@?hsq@cnQOTnvwe8CZj7 z!^_|`@HY4W`~mzWd=ZT49ylG&fs0@tOu-5~6K;T4!Hw`f_&9tH{sI02b}ex3 z2q(i2!iDf?n1rj~T6hWkBK#`+7JLl80RI602FEURZV!9mKJXBD6g(N0;OX#UcqP0U z-UAa_#{az?CowOYn4fF}xDq4DW%D!e`;{;9udGL!G_2hN5IVINGx8oUU823`kmhY!Ff;B)X5_zv9Sc;_TI8P0}} z!)M{2VfzWr@o-nTH#`^~4o`%qz#(`JdExo{c$FwDVWcs~3z{1W^+{15m;_yT+#Zh~8%@JK(qB&){!idqg?mu5fR-KU@Njg=tuYXTeM1F(*3{umnF2FM^+g zH^MvN58(^&b+`#`op8Pv?hOxshrttI4%Xq>@KSgKyaPT6e*m{iI^P4Q!2RH%@EDke zXTeM1)$mq$KYRjSl5$=NZ-)24N8z*ZcW_DC*$2z;BKS4<0DJ;I2Va4IgJUwz?O+d_ z4(GvT@B~-+$m0}q9LFbRJL--4UqR{hSM;rro!a1lHm zUJS2>8{vKM5%?qcYxtk=ZMgY>vlq^Q2g2p>MA#3ngB#&D;rHQB;7jmL*p{Q5a8Ec3 z9te+u5gdZ&z{}v(a3g#Mz6f83o1Nm^9_|ij!h_(kFbykkE&L4J2!8~B1z&-i;1+{C z7k0zBa0xsXreOuHg>c9X)Ke}EIK&Tcpr9sm!6C%^%?8lDF~1+Rx+gWrZv!{^~UaI2d0y>Kd=2M>oI zfkW`q@CJAn{4V?n{4M+|99wtp04KwJ;i2$Yn1w^|JossN1H21<555J%kaHWjE1U}F z!75w}&x7mWW$=seEAU0Q!)oVla6ViP)36Lb4X=S;h4;c2;p^}nxYe+;8%~3B;bHIu zn1`pr3*nXUEAVdkUHA;#1h-w|?18i4A@C@eh81`wTn9f3Z-8Hizk+{(`U0SGd)N*4 zf_XR$&x4o4o8bfS`|!u`dH6^8SJ?J3=Qy|{+zn2JbKnAa1UwPu;OX!a@JsM^_yBwY zJ_r8*{|Y-#bG{Fr13wAB0>23#gTI8Y!M2Y(w}X4Y{oqn~JnV-<@LYH~ydFLbpMfvI zKf}(`ofBa%oDCPkKA46zcn-V*-U%Ouzl5*Bf5I)#aP9=(59h#RVGW)QFN4>>+u#H6 z2k@8hRrogCa;2mc7)hFhM=bKzd_0JsdE2nXTE z;6?BXcr&~gJ_etIe}r$tEzjcla4&cOTn0~sgYaYUB6tP78Qu#YgU`V~!nfg;XY+ix z7d!wigD1j4_%V19yaL_~?}d-S=indV+i=Tscs|?<9srlY6X77d2wnm2fcL`};h*4t z!LDbX} z_wTUIx$`jtj7 z2mTDc%zdvaw-)~n{+av!&UM>f?A-BUzrKh4DeTWsj+gd`&{?YIxj`y$k=MBQu9A691<@km0GLCDCL7+UGMq6o$K!5x`)~S zDf=(5|6BH7XMgicoZXlB@x7HhNISvVmw5VfxNbQ-itA5eKM$)MKSQ~r_$Bas(z%H1 zF6X+d*uS3rTiO3Q`wy`HF#Auk{|x)TX8$#~3GTSTxyuHBemC4>gWoq39t01AN5c~Q zn6gvahy8Wze}?_9!295n@Hg;v_%FD{rOq8;FI)^ygafb+&w^LO`{4KCPvOh(O}Ncv z&RyViI2SI3$H5FdX>2e(wm~WS<7uVniPx0U?BvT|2n1Ivz4>_8!dX>Lav+7{*u=8wzV)~ z=-emRcV9YZ`*(4a_WWIgefwzauJ5h~d+v7rJ%`SH{ksi%zO&8GkAwO>20gx<{k}H8 z&&vNk%Ktw9mXvZn<5qDUx3`BLe^8J2gz$(S z@A2=b>2b~PnBBa6#_s0dpU~sK5B~1S>v~)`rOoR_zc(?a*T35`R`^t#UpJ%8ubbWG z`5WN+Z)rMvNWJQL;VtB^+~)bKalL+rMa#E=`<~*y%eilDo9AD@`=|N8lKZabzPq{a zwl=@-Tikb3o0spwHZR}9-1j*5P1N#!$mOkbf0ws0lU;7cPIkHJJiz6qbFRyuUT^I% zPx28wo$Hl5&<+Ps&OK>|J-vVE`GwT)eComEuiNEGk8Ao`PLr!1GFAUoB@}`m0rs^X zRDTV#ujN)fb~XE2|EkX(WMAc8_1g37zZ6`**>_=NU;Cx%xj?=;;g)b4xC7h?_P{;h zY&ZuV1Q)==;0kyQJOK{CJp33u1D*#z0Y9gdOnw1g4{w6E!mq)5;QjCk_%wVTz6AdW zUxV+!_BQ7PxINqjcEjm#AGkj}5FQSXg2%&?pnaESEC0TqatNLZKLOXnPr=W@o8T?* zUZu#<1Ms`>`|#)RSMX){3Va>@8FsWgH-kGUMGkj@J#Y{BLHHp!A1;JP!{gvbVG^!_ zb$AZE0DeX(a(@N97Ty5wg7?6O;CJBT@G1CH_#Au@{ucfP{sZbK=9HaqOSlc(748OS z!Vki^a6ViNm%$IikHQSh!C`nBya-+bzX-2|x5GQ(!%EQ;kH9D4kKk|M@8F-{oA4j- zUr@ijr|g0|!kyu6a59_s9{8wIl;jie8Tc&xJ$x0u1^))$f$d|Q6X5o67uXH=gnPkRa9_9xE`>+JK6oOG zU>2SN*C@pozwFMywgSHkPyjc_Bp13m=510RP^!JoqC;EV9L@IT=j@bB=Suw$%q zGq?lX3HHD};NEZsJP0m;hrt!_7QjXg8}V=MRfRF9ke9?y5?wspTu^@I5#6Wu>k`8YZF va{}pf!Y()tPJ+9@__@7s2G5xd=fJrz&c{M{B>Cxs$HSB00L;TOtik^WJ5lTz literal 0 HcwPel00001 diff --git a/release/src-rt/shared/nvram/nvram_ro.c b/release/src-rt/shared/nvram/nvram_ro.c deleted file mode 100644 index 05b74b4312..0000000000 --- a/release/src-rt/shared/nvram/nvram_ro.c +++ /dev/null @@ -1,229 +0,0 @@ -/* - * Read-only support for NVRAM on flash and otp. - * - * Copyright 2004, Broadcom Corporation - * All Rights Reserved. - * - * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation; - * the contents of this file may not be disclosed to third parties, copied - * or duplicated in any form, in whole or in part, without the prior - * written permission of Broadcom Corporation. - * - * $Id$ - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include - - -static char *fnv = NULL; -static char *fnvlim = NULL; -static char *otp = NULL; -static char *otplim = NULL; -static char *otp2 = NULL; -static char *otp2lim = NULL; - - -static struct nvram_header * -find_flash_nvram(uint32 base, uint32 lim) -{ - struct nvram_header *nvh; - uint32 off = FLASH_MIN; - - nvh = NULL; - while (off <= lim) { - nvh = (struct nvram_header *) (base + off - NVRAM_SPACE); - if (nvh->magic == NVRAM_MAGIC) - return nvh; - off <<= 1; - }; - - /* Try embedded NVRAM at 4 KB and 1 KB as last resorts */ - nvh = (struct nvram_header *) (base + 4096); - if (nvh->magic == NVRAM_MAGIC) - return nvh; - - nvh = (struct nvram_header *) (base + 1024); - if (nvh->magic == NVRAM_MAGIC) - return nvh; - - return NULL; -} - -int -BCMINITFN(nvram_init)(void *sbh) -{ - uint idx; - chipcregs_t *cc; - struct sflash *info; - struct nvram_header *nvh = NULL; - uint32 cap = 0, base, lim; - - - /* Make sure */ - fnv = NULL; - otp = NULL; - otp2 = NULL; - - /* Check for flash */ - idx = sb_coreidx(sbh); - if ((cc = sb_setcore(sbh, SB_CC, 0)) != NULL) { - base = KSEG1ADDR(SB_FLASH2); - lim = 0; - cap = R_REG(&cc->capabilities); - switch (cap & CAP_FLASH_MASK) { - case PFLASH: - lim = SB_FLASH2_SZ; - break; - - case SFLASH_ST: - case SFLASH_AT: - if ((info = sflash_init(cc)) == NULL) - break; - lim = info->size; - break; - - case FLASH_NONE: - default: - break; - } - } else { - base = KSEG1ADDR(SB_FLASH1); - lim = SB_FLASH1_SZ; - } - - if (lim != 0) - nvh = find_flash_nvram(base, lim); - - if (nvh != NULL) { - fnv = (char *)&nvh[1]; - fnvlim = (char *)((uint32)nvh + NVRAM_SPACE); - } - - /* Check for otp */ - if ((cc != NULL) && ((lim = cap & CAP_OTPSIZE) != 0)) { - uint32 bound; - uint16 *otpw, *d16; - int i; - - otpw = (uint16 *)((uint32)cc + CC_OTP); - lim = 1 << ((lim >> CAP_OTPSIZE_SHIFT) + 5); - if ((otpw[OTP_HWSIGN] == OTP_SIGNATURE) && - (otpw[0] == OTP_MAGIC)) { - bound = otpw[OTP_BOUNDARY]; - if (bound >= lim) { - printf("Bad boundary value in otp (%d >= %d)\n", bound, lim); - goto out; - } - /* OK, we like otp, copy to ram, skipping the magic word */ - if ((otp = MALLOC(NULL,bound - 2)) == NULL) { - printf("Out of memory for otp\n"); - goto out; - } - d16 = (uint16 *)otp; - for (i = 1; i < (bound / 2); i++) - *d16++ = otpw[i]; - otplim = otp + bound - 2; - printf ("otp size = %d, hwsign = 0x%x, magic = 0x%x, boundary = 0x%x\n", - lim, otpw[OTP_HWSIGN], otpw[0], bound); - - /* Now do it again for the "second" part of the otp */ - if (otpw[OTP_SWSIGN] == OTP_SIGNATURE) { - if ((otp2 = MALLOC(NULL, lim - bound)) == NULL) { - printf("Out of memory for otp2\n"); - goto out; - } - d16 = (uint16 *)otp2; - while (i < (lim / 2)) - *d16++ = otpw[i++]; - otp2lim = otp2 + lim - bound; - } - } - } - -out: /* All done */ - sb_setcoreidx(sbh, idx); - - return 0; -} - -void -BCMINITFN(nvram_exit)(void) -{ - if (otp) { - MFREE(NULL, otp, otplim - otp); - otp = NULL; - } - - if (otp2) { - MFREE(NULL, otp2, otp2lim - otp2); - otp2 = NULL; - } -} - -static char * -findvar(char *vars, char *lim, const char *name) -{ - char *s; - int len; - - len = strlen(name); - - for (s = vars; (s < lim) && *s; ) { - if ((bcmp(s, name, len) == 0) && (s[len] == '=')) - return (&s[len+1]); - - while (*s++) - ; - } - - return NULL; -} - -char * -BCMINITFN(nvram_get)(const char *name) -{ - char *v = NULL; - - if ((fnv != NULL) && ((v = findvar(fnv, fnvlim, name)) != NULL)) - return v; - - if ((otp2 != NULL) && ((v = findvar(otp2, otp2lim, name)) != NULL)) - return v; - - if (otp != NULL) - v = findvar(otp, otplim, name); - - return v; -} - -int -BCMINITFN(nvram_set)(const char *name, const char *value) -{ - return 0; -} - -int -BCMINITFN(nvram_unset)(const char *name) -{ - return 0; -} - -int -BCMINITFN(nvram_commit)(void) -{ - return 0; -} - -int -BCMINITFN(nvram_getall)(char *buf, int count) -{ - return 0; -} diff --git a/release/src-rt/shared/nvram/nvram_rw.c b/release/src-rt/shared/nvram/nvram_rw.c old mode 100644 new mode 100755 diff --git a/release/src-rt/shared/nvram/nvram_vx.c b/release/src-rt/shared/nvram/nvram_vx.c deleted file mode 100644 index 74518b9688..0000000000 --- a/release/src-rt/shared/nvram/nvram_vx.c +++ /dev/null @@ -1,308 +0,0 @@ -/* - * NVRAM variable manipulation (direct mapped flash) - * - * Copyright 2004, Broadcom Corporation - * All Rights Reserved. - * - * THIS SOFTWARE IS OFFERED "AS IS", AND BROADCOM GRANTS NO WARRANTIES OF ANY - * KIND, EXPRESS OR IMPLIED, BY STATUTE, COMMUNICATION OR OTHERWISE. BROADCOM - * SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS - * FOR A SPECIFIC PURPOSE OR NONINFRINGEMENT CONCERNING THIS SOFTWARE. - * - * $Id$ - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -struct nvram_tuple * BCMINIT(_nvram_realloc)(struct nvram_tuple *t, const char *name, const char *value); -void BCMINIT(_nvram_free)(struct nvram_tuple *t); -int BCMINIT(_nvram_read)(void *buf); - -extern char * BCMINIT(_nvram_get)(const char *name); -extern int BCMINIT(_nvram_set)(const char *name, const char *value); -extern int BCMINIT(_nvram_unset)(const char *name); -extern int BCMINIT(_nvram_getall)(char *buf, int count); -extern int BCMINIT(_nvram_commit)(struct nvram_header *header); -extern int BCMINIT(_nvram_init)(void); -extern void BCMINIT(_nvram_exit)(void); - -static struct nvram_header *nvram_header = NULL; -static ulong flash_base = 0; - -#define NVRAM_LOCK() do {} while (0) -#define NVRAM_UNLOCK() do {} while (0) - -/* Convenience */ -#define KB * 1024 -#define MB * 1024 * 1024 - -char * -BCMINITFN(nvram_get)(const char *name) -{ - char *value; - - NVRAM_LOCK(); - value = BCMINIT(_nvram_get)(name); - NVRAM_UNLOCK(); - - return value; -} - -int -BCMINITFN(nvram_getall)(char *buf, int count) -{ - int ret; - - NVRAM_LOCK(); - ret = BCMINIT(_nvram_getall)(buf, count); - NVRAM_UNLOCK(); - - return ret; -} - -int -BCMINITFN(nvram_set)(const char *name, const char *value) -{ - int ret; - - NVRAM_LOCK(); - ret = BCMINIT(_nvram_set)(name, value); - NVRAM_UNLOCK(); - - return ret; -} - -int -BCMINITFN(nvram_unset)(const char *name) -{ - int ret; - - NVRAM_LOCK(); - ret = BCMINIT(_nvram_unset)(name); - NVRAM_UNLOCK(); - - return ret; -} - -static bool -BCMINITFN(nvram_reset)(void *sbh) -{ - chipcregs_t *cc; - char *value; - uint32 watchdog = 0, gpio; - uint idx, msec; - - idx = sb_coreidx(sbh); - - /* Check if we were soft reset */ - if ((cc = sb_setcore(sbh, SB_CC, 0))) { - watchdog = R_REG(&cc->intstatus) & CI_WDRESET; - sb_setcoreidx(sbh, idx); - } - if (watchdog) - return FALSE; - - value = BCMINIT(nvram_get)("reset_gpio"); - if (!value) - return FALSE; - - gpio = (uint32) bcm_atoi(value); - if (gpio > 7) - return FALSE; - - /* Setup GPIO input */ - sb_gpioouten(sbh, (1 << gpio), 0); - - /* GPIO reset is asserted low */ - for (msec = 0; msec < 5000; msec++) { - if (sb_gpioin(sbh) & (1 << gpio)) - return FALSE; - OSL_DELAY(1000); - } - - return TRUE; -} - -extern unsigned char embedded_nvram[]; - -static struct nvram_header * -BCMINITFN(find_nvram)(bool embonly, bool *isemb) -{ - struct nvram_header *nvh; - uint32 off, lim; - - - if (!embonly) { - *isemb = FALSE; - if (flash_base == SB_FLASH1) - lim = SB_FLASH1_SZ; - else - lim = SB_FLASH2_SZ; - off = FLASH_MIN; - while (off <= lim) { - nvh = (struct nvram_header *)KSEG1ADDR(flash_base + off - NVRAM_SPACE); - if (nvh->magic == NVRAM_MAGIC) - return (nvh); - off <<= 1; - }; - } - - /* Now check embedded nvram */ - *isemb = TRUE; - nvh = (struct nvram_header *)KSEG1ADDR(flash_base + (4 * 1024)); - if (nvh->magic == NVRAM_MAGIC) - return (nvh); - nvh = (struct nvram_header *)KSEG1ADDR(flash_base + 1024); - if (nvh->magic == NVRAM_MAGIC) - return (nvh); -#ifdef _CFE_ - nvh = (struct nvram_header *)embedded_nvram; - if (nvh->magic == NVRAM_MAGIC) - return (nvh); -#endif - return (NULL); -} - -int -BCMINITFN(nvram_init)(void *sbh) -{ - uint idx; - bool isemb; - int ret; - - - idx = sb_coreidx(sbh); - if (sb_setcore(sbh, SB_CC, 0) != NULL) { - flash_base = SB_FLASH2; - sb_setcoreidx(sbh, idx); - } else - flash_base = SB_FLASH1; - - /* Temporarily initialize with embedded NVRAM */ - nvram_header = BCMINIT(find_nvram)(TRUE, &isemb); - ret = BCMINIT(_nvram_init)(); - if (ret == 0) { - /* Restore defaults from embedded NVRAM if button held down */ - if (BCMINIT(nvram_reset)(sbh)) { - return 1; - } - - BCMINIT(_nvram_exit)(); - } - - /* Find NVRAM */ - nvram_header = BCMINIT(find_nvram)(FALSE, &isemb); - ret = BCMINIT(_nvram_init)(); - if (ret == 0) { - /* Restore defaults if embedded NVRAM used */ - if (nvram_header && isemb) { - ret = 1; - } - } - return ret; -} - -void -BCMINITFN(nvram_exit)(void) -{ - BCMINIT(_nvram_exit)(); -} - -int -BCMINITFN(_nvram_read)(void *buf) -{ - uint32 *src, *dst; - uint i; - - if (!nvram_header) - return -19; /* -ENODEV */ - - src = (uint32 *) nvram_header; - dst = (uint32 *) buf; - - for (i = 0; i < sizeof(struct nvram_header); i += 4) - *dst++ = *src++; - - for (; i < nvram_header->len && i < NVRAM_SPACE; i += 4) - *dst++ = ltoh32(*src++); - - return 0; -} - -struct nvram_tuple * -BCMINITFN(_nvram_realloc)(struct nvram_tuple *t, const char *name, const char *value) -{ - if (!(t = MALLOC(NULL, sizeof(struct nvram_tuple) + strlen(name) + 1 + strlen(value) + 1))) { - printf("_nvram_realloc: our of memory\n"); - return NULL; - } - - /* Copy name */ - t->name = (char *) &t[1]; - strcpy(t->name, name); - - /* Copy value */ - t->value = t->name + strlen(name) + 1; - strcpy(t->value, value); - - return t; -} - -void -BCMINITFN(_nvram_free)(struct nvram_tuple *t) -{ - if (t) - MFREE(NULL, t, sizeof(struct nvram_tuple) + strlen(t->name) + 1 + strlen(t->value) + 1); -} - -int -BCMINITFN(nvram_commit)(void) -{ - struct nvram_header *header; - int ret; - uint32 *src, *dst; - uint i; - - if (!(header = (struct nvram_header *) MALLOC(NULL, NVRAM_SPACE))) { - printf("nvram_commit: out of memory\n"); - return -12; /* -ENOMEM */ - } - - NVRAM_LOCK(); - - /* Regenerate NVRAM */ - ret = BCMINIT(_nvram_commit)(header); - if (ret) - goto done; - - src = (uint32 *) &header[1]; - dst = src; - - for (i = sizeof(struct nvram_header); i < header->len && i < NVRAM_SPACE; i += 4) - *dst++ = htol32(*src++); - -#ifdef _CFE_ - if ((ret = cfe_open("flash0.nvram")) >= 0) { - cfe_writeblk(ret, 0, (unsigned char *) header, header->len); - cfe_close(ret); - } -#else - if (sysFlashInit(NULL) == 0) - nvWrite((unsigned short *) header, NVRAM_SPACE); -#endif - - done: - NVRAM_UNLOCK(); - MFREE(NULL, header, NVRAM_SPACE); - return ret; -} - diff --git a/release/src-rt/shared/sbutils.o b/release/src-rt/shared/sbutils.o new file mode 100644 index 0000000000000000000000000000000000000000..d06c1dd8479ae8053163bb58d4553443c5beadf9 GIT binary patch literal 124376 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 z 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ⅈE)*$F5&o%MJXDU+^%G@+435C;q}){D=2s2&Q8k zvojA1uoxd?IaXp_Hsq6R!FKGx-t5mIe3c_Onv*z%^COGI#w#x8YHsIle#wLUh9`K2 zKk^c<@&^B6bk7i(ni-je1zD7(SeBJpjkQ>hP1uYb*@ZpWhcEGEzRr;x&$l^)vpJs& zxty!Hk(;@bpYbUF!_z#+B;MdZOpz&=g*lj)1zDV>SdEXeDVwtm+p}k6(b)OPL41Yd zIEmBwF6VIpmvI%haVHP+C{OY1VjJjQSN1JCm^ukj}TX8O2bX5Pp9`5+%+ zC01ok)@2Jm&5rEC9_+(Ge1&iDEl%gVoX>?^&ehz+E!@S=d60?xf#-Rd*LahE^X_+T zVy0mxW@T>XV`)Cjnykyle3BjbEMH)64&)Gy=6Fuw49?|zF5z-+=BNCOU+^%G@*IEW z6(;c(|KUAZgXtK@>@33Ke2C>)l{MIe&De=uIe>#XoNsb0Cvr|?@z}V<#azbC{FI;Z z3m)cCp5xEF!X)0}Kg^gdn1uydl%-gfkFqu!u_;@!4Lh<6U*sUZ#j%{s>72uPT+C(s zB(g+oT<0F{;|YGxA9;aSd7Xdp4pV0j-pee^!MrTU;w;7Ttjrp$#fEIcf3qW>V-NP{ zOMI2Db2P_u3TJRG=W_{{Gl3hqjXSxI2Y8aF`4fNPZ~TL|nLI}@Ei*6=3$Pd;WI0x1 zb=G79HfB3^;B)N3{(OnU_y)&t0;h2n7jqfcas#(=2M_TGzvU^O=S5!Q@BEv0zdsc- z4b$^}=H~+}$%k2y|Kek;&&S!Et=OKO*p~x1l&^6#$MZdYz(xFsYq*}fxt9l-$P@gY zKk@=^@^7Zk8O+T4cs~pA0hZ>&OdUO^N%P;vMW*=g=aB^?(|aBny9asLbDg`-BQtxB z73X(Q!ym123oWQ&LExOKd9v5&4mva-ha65N% IFZc8R0kdlL&;S4c literal 0 HcwPel00001 diff --git a/release/src-rt/shared/sflash.o b/release/src-rt/shared/sflash.o new file mode 100644 index 0000000000000000000000000000000000000000..7c3f9623367eaae85552dbe82d4c9321add89a81 GIT binary patch literal 113836 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�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 gn95G 9Mhz + * but for 4314 QT if we set it to 4. OTP reads 0xFFFF every two words. + */ + { + uint otpclkdiv = 0; + + if ((CHIPID(sih->chip) == BCM4314_CHIP_ID) || + (CHIPID(sih->chip) == BCM43142_CHIP_ID)) { + otpclkdiv = 2; + } else if ((CHIPID(sih->chip) == BCM43227_CHIP_ID) || + (CHIPID(sih->chip) == BCM43131_CHIP_ID) || + (CHIPID(sih->chip) == BCM43228_CHIP_ID)) { + otpclkdiv = 4; + } + + if (otpclkdiv != 0) { + uint clkdiv, savecore; + savecore = si_coreidx(sih); + si_setcore(sih, CC_CORE_ID, 0); + + clkdiv = R_REG(osh, &cc->clkdiv); + clkdiv = (clkdiv & ~CLKD_OTP) | (otpclkdiv << CLKD_OTP_SHIFT); + W_REG(osh, &cc->clkdiv, clkdiv); + + SI_ERROR(("%s: set clkdiv to 0x%x for QT\n", __FUNCTION__, clkdiv)); + si_setcoreidx(sih, savecore); + } + } +#endif /* BCMQT */ } #endif /* !_CFE_ || CFG_WL */ #ifdef SI_SPROM_PROBE @@ -726,7 +757,7 @@ BCMATTACHFN(si_detach)(si_t *sih) #if defined(STA) struct si_pub *si_local = NULL; - bcopy(&sih, &si_local, sizeof(si_t**)); + bcopy(&sih, &si_local, sizeof(si_t*)); #endif sii = SI_INFO(sih); @@ -1104,6 +1135,16 @@ si_addrspacesize(si_t *sih, uint asidx) } } +void +si_coreaddrspaceX(si_t *sih, uint asidx, uint32 *addr, uint32 *size) +{ + /* Only supported for SOCI_AI */ + if (CHIPTYPE(sih->socitype) == SOCI_AI) + ai_coreaddrspaceX(sih, asidx, addr, size); + else + *size = 0; +} + uint32 si_core_cflags(si_t *sih, uint32 mask, uint32 val) { @@ -1365,12 +1406,6 @@ BCMINITFN(si_clock)(si_t *sih) else m = R_REG(sii->osh, &cc->clockcontrol_sb); - if (CHIPID(sih->chip) == BCM5365_CHIP_ID) - rate = 200000000; /* PLL_TYPE3 */ - else if (CHIPID(sih->chip) == BCM5354_CHIP_ID) - /* 5354 has a constant sb clock of 120MHz */ - rate = 120000000; - else /* calculate rate */ rate = si_clock_rate(pll_type, n, m); @@ -4005,6 +4040,8 @@ si_is_sprom_available(si_t *sih) case BCM4331_CHIP_ID: case BCM43431_CHIP_ID: return (sih->chipst & CST4331_SPROM_PRESENT) != 0; + case BCM43131_CHIP_ID: + case BCM43227_CHIP_ID: case BCM43228_CHIP_ID: case BCM43428_CHIP_ID: return (sih->chipst & CST43228_OTP_PRESENT) != CST43228_OTP_PRESENT; @@ -4046,6 +4083,8 @@ si_is_otp_disabled(si_t *sih) case BCM43235_CHIP_ID: case BCM43236_CHIP_ID: case BCM43238_CHIP_ID: case BCM43234_CHIP_ID: case BCM43237_CHIP_ID: case BCM4331_CHIP_ID: case BCM43431_CHIP_ID: + case BCM43131_CHIP_ID: + case BCM43227_CHIP_ID: case BCM43228_CHIP_ID: case BCM43428_CHIP_ID: default: return FALSE; diff --git a/release/src-rt/shared/siutils.o b/release/src-rt/shared/siutils.o new file mode 100644 index 0000000000000000000000000000000000000000..15404ea77b0d7e3d817dc84e438ebc68cd2b46f0 GIT binary patch literal 253792 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 z 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 31 */ +#define GCONF 0 /* No G-Phy */ +#define ACONF 0 /* No A-Phy */ +#define HTCONF 0 /* No HT-Phy */ +#define NCONF 0x200 /* N-Phy Rev 9 */ +#define LPCONF 0 /* No LP-Phy */ +#define SSLPNCONF 0 /* No SSLPN-Phy */ +#define LCNCONF 0 /* No LCN-Phy */ +#define LCN40CONF 0 /* No LCN40-Phy */ + +#define CTFPOOLSZ 128 /* max buffers in ctfpool */ +#define NTXD 64 /* THIS HAS TO MATCH with HIGH driver tunable, AMPDU/rpc_agg */ +#define NRXD 32 +#define NRXBUFPOST 16 +#define WLC_DATAHIWAT 10 +#define RXBND 16 +#define NRPCTXBUFPOST 64 /* used in HIGH driver */ +#define DNGL_MEM_RESTRICT_RXDMA (6*2048) diff --git a/release/src-rt/wl/eapd/dcs_eap.c b/release/src-rt/wl/eapd/dcs_eap.c new file mode 100644 index 0000000000..6ba2fb0615 --- /dev/null +++ b/release/src-rt/wl/eapd/dcs_eap.c @@ -0,0 +1,264 @@ +/* + * Application-specific portion of EAPD + * (DCS) + * + * Copyright (C) 2010, Broadcom Corporation + * All Rights Reserved. + * + * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation; + * the contents of this file may not be disclosed to third parties, copied + * or duplicated in any form, in whole or in part, without the prior + * written permission of Broadcom Corporation. + * + * $Id: dcs_eap.c 241391 2011-02-18 03:35:48Z stakita $ + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +void +dcs_app_recv_handler(eapd_wksp_t *nwksp, eapd_cb_t *from, uint8 *pData, + int *pLen) +{ + +} + +void +dcs_app_set_eventmask(eapd_app_t *app) +{ + memset(app->bitvec, 0, sizeof(app->bitvec)); + + setbit(app->bitvec, WLC_E_DCS_REQUEST); + setbit(app->bitvec, WLC_E_SCAN_COMPLETE); + return; +} + +int +dcs_app_init(eapd_wksp_t *nwksp) +{ + int reuse = 1; + eapd_dcs_t *dcs; + eapd_cb_t *cb; + struct sockaddr_in addr; + + + if (nwksp == NULL) + return -1; + + dcs = &nwksp->dcs; + dcs->appSocket = -1; + + cb = dcs->cb; + if (cb == NULL) { + EAPD_INFO("No any DCS application need to run.\n"); + return 0; + } + + while (cb) { + EAPD_INFO("dcs: init brcm interface %s \n", cb->ifname); + cb->brcmSocket = eapd_add_brcm(nwksp, cb->ifname); + if (!cb->brcmSocket) + return -1; + /* set this brcmSocket have DCS capability */ + cb->brcmSocket->flag |= EAPD_CAP_DCS; + + cb = cb->next; + } + + /* appSocket for dcs */ + dcs->appSocket = socket(AF_INET, SOCK_DGRAM, 0); + if (dcs->appSocket < 0) { + EAPD_ERROR("UDP Open failed.\n"); + return -1; + } +#if defined(__ECOS) + if (setsockopt(dcs->appSocket, SOL_SOCKET, SO_REUSEPORT, (char*)&reuse, + sizeof(reuse)) < 0) { + EAPD_ERROR("UDP setsockopt failed.\n"); + close(dcs->appSocket); + dcs->appSocket = -1; + return -1; + } +#else + if (setsockopt(dcs->appSocket, SOL_SOCKET, SO_REUSEADDR, (char*)&reuse, + sizeof(reuse)) < 0) { + EAPD_ERROR("UDP setsockopt failed.\n"); + close(dcs->appSocket); + dcs->appSocket = -1; + return -1; + } +#endif + + memset(&addr, 0, sizeof(struct sockaddr_in)); + addr.sin_family = AF_INET; + addr.sin_addr.s_addr = INADDR_ANY; + addr.sin_port = htons(EAPD_WKSP_DCS_UDP_RPORT); + if (bind(dcs->appSocket, (struct sockaddr *)&addr, sizeof(addr)) < 0) { + EAPD_ERROR("UDP Bind failed, close dcs appSocket %d\n", dcs->appSocket); + close(dcs->appSocket); + dcs->appSocket = -1; + return -1; + } + EAPD_INFO("DCS appSocket %d opened\n", dcs->appSocket); + + return 0; +} + +int +dcs_app_deinit(eapd_wksp_t *nwksp) +{ + eapd_dcs_t *dcs; + eapd_cb_t *cb, *tmp_cb; + + if (nwksp == NULL) { + EAPD_ERROR("Wrong argument...\n"); + return -1; + } + + dcs = &nwksp->dcs; + cb = dcs->cb; + while (cb) { + /* close brcm drvSocket */ + if (cb->brcmSocket) { + EAPD_INFO("close dcs brcmSocket %d\n", cb->brcmSocket->drvSocket); + eapd_del_brcm(nwksp, cb->brcmSocket); + } + + tmp_cb = cb; + cb = cb->next; + free(tmp_cb); + } + + /* close appSocke */ + if (dcs->appSocket >= 0) { + EAPD_INFO("close dcs appSocket %d\n", dcs->appSocket); + close(dcs->appSocket); + dcs->appSocket = -1; + } + + return 0; +} + +int +dcs_app_sendup(eapd_wksp_t *nwksp, uint8 *pData, int pLen, char *from) +{ + eapd_dcs_t *dcs; + + if (nwksp == NULL) { + EAPD_ERROR("Wrong argument...\n"); + return -1; + } + + dcs = &nwksp->dcs; + if (dcs->appSocket >= 0) { + /* send to dcs */ + int sentBytes = 0; + struct sockaddr_in to; + + to.sin_addr.s_addr = inet_addr(EAPD_WKSP_UDP_ADDR); + to.sin_family = AF_INET; + to.sin_port = htons(EAPD_WKSP_DCS_UDP_SPORT); + + sentBytes = sendto(dcs->appSocket, pData, pLen, 0, + (struct sockaddr *)&to, sizeof(struct sockaddr_in)); + + if (sentBytes != pLen) { + EAPD_ERROR("UDP send failed; sentBytes = %d\n", sentBytes); + } + else { + /* EAPD_ERROR("Send %d bytes to dcs\n", sentBytes); */ + } + } + else { + EAPD_ERROR("dcs appSocket not created\n"); + } + return 0; +} + +#if EAPD_WKSP_AUTO_CONFIG +int +dcs_app_enabled(char *name) +{ + char value[128], comb[32], prefix[8]; + char os_name[IFNAMSIZ]; + int unit; + + memset(os_name, 0, sizeof(os_name)); + + if (nvifname_to_osifname(name, os_name, sizeof(os_name))) + return 0; + if (wl_probe(os_name) || + wl_ioctl(os_name, WLC_GET_INSTANCE, &unit, sizeof(unit))) + return 0; + if (osifname_to_nvifname(name, prefix, sizeof(prefix))) + return 0; + + strcat(prefix, "_"); + /* ignore if disabled */ + eapd_safe_get_conf(value, sizeof(value), strcat_r(prefix, "radio", comb)); + if (atoi(value) == 0) { + EAPD_INFO("DCS:ignored interface %s. radio disabled\n", os_name); + return 0; + } + + /* ignore if BSS is disabled */ + eapd_safe_get_conf(value, sizeof(value), strcat_r(prefix, "bss_enabled", comb)); + if (atoi(value) == 0) { + EAPD_INFO("DCS: ignored interface %s, %s is disabled \n", os_name, comb); + return 0; + } + + /* if come to here return enabled */ + return 1; +} +#endif /* EAPD_WKSP_AUTO_CONFIG */ + +int +dcs_app_handle_event(eapd_wksp_t *nwksp, uint8 *pData, int Len, char *from) +{ + int type; + eapd_dcs_t *dcs; + eapd_cb_t *cb; + bcm_event_t *dpkt = (bcm_event_t *) pData; + wl_event_msg_t *event = &(dpkt->event); + + type = ntohl(event->event_type); + + dcs = &nwksp->dcs; + cb = dcs->cb; + while (cb) { + if (isset(dcs->bitvec, type) && + !strcmp(cb->ifname, from)) { + + /* prepend ifname, we reserved IFNAMSIZ length already */ + pData -= IFNAMSIZ; + Len += IFNAMSIZ; + memcpy(pData, event->ifname, IFNAMSIZ); + + /* send to dcs use cb->ifname */ + dcs_app_sendup(nwksp, pData, Len, cb->ifname); + break; + } + cb = cb->next; + } + + return 0; +} diff --git a/release/src-rt/wl/eapd/eapd.c b/release/src-rt/wl/eapd/eapd.c new file mode 100644 index 0000000000..372f940457 --- /dev/null +++ b/release/src-rt/wl/eapd/eapd.c @@ -0,0 +1,1775 @@ +/* + * Broadcom EAP dispatcher (EAPD) module main loop + * + * Copyright (C) 2010, Broadcom Corporation + * All Rights Reserved. + * + * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation; + * the contents of this file may not be disclosed to third parties, copied + * or duplicated in any form, in whole or in part, without the prior + * written permission of Broadcom Corporation. + * + * $Id: eapd.c 241391 2011-02-18 03:35:48Z stakita $ + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +uint eapd_msg_level = +#ifdef BCMDBG + EAPD_ERROR_VAL; +#else + 0; +#endif /* BCMDBG */ + +#define EAPD_WKSP_MAX_EAP_USER_IDENT 32 +#define EAPD_WKSP_EAP_USER_NUM 2 +#define EAP_TYPE_WSC EAP_EXPANDED + +struct eapd_user_list { + unsigned char identity[EAPD_WKSP_MAX_EAP_USER_IDENT]; + unsigned int identity_len; + unsigned char method; +}; + +static struct eapd_user_list eapdispuserlist[EAPD_WKSP_EAP_USER_NUM] = { + {"WFA-SimpleConfig-Enrollee-1-0", 29, EAP_TYPE_WSC}, + {"WFA-SimpleConfig-Registrar-1-0", 30, EAP_TYPE_WSC} +}; + + +static int eapd_wksp_inited = 0; + +/* Static function protype define */ +static int sta_init(eapd_wksp_t *nwksp); +static int sta_deinit(eapd_wksp_t *nwksp); +static unsigned char eapd_get_method(unsigned char *user); +static int event_init(eapd_wksp_t *nwksp); +static int event_deinit(eapd_wksp_t *nwksp); +static bool eapd_add_interface(eapd_wksp_t *nwksp, char *ifname, eapd_app_mode_t mode); +static bool eapd_valid_eapol_start(eapd_wksp_t *nwksp, eapd_brcm_socket_t *from, char *ifname); + +#ifdef BCMDBG +/* #define HEXDUMP */ +#ifdef HEXDUMP +extern int isprint(char i); +static void eapd_hexdump_ascii(const char *title, const unsigned char *buf, + unsigned int len) +{ + int i, llen; + const unsigned char *pos = buf; + const int line_len = 16; + + EAPD_PRINT("%s - (data len=%lu):\n", title, (unsigned long) len); + while (len) { + llen = len > line_len ? line_len : len; + EAPD_PRINT(" "); + for (i = 0; i < llen; i++) + EAPD_PRINT(" %02x", pos[i]); + for (i = llen; i < line_len; i++) + EAPD_PRINT(" "); + EAPD_PRINT(" "); + for (i = 0; i < llen; i++) { + if (isprint(pos[i])) + EAPD_PRINT("%c", pos[i]); + else + EAPD_PRINT("*"); + } + for (i = llen; i < line_len; i++) + EAPD_PRINT(" "); + EAPD_PRINT("\n"); + pos += llen; + len -= llen; + } +} + +#define HEXDUMP_ASCII(title, buf, len) eapd_hexdump_ascii(title, buf, len) +#else +#define HEXDUMP_ASCII(title, buf, len) +#endif /* HEXDUMP */ +#endif /* BCMDBG */ + +#ifdef EAPDDUMP +/* dump brcm and preauth socket information */ +static void +eapd_dump(eapd_wksp_t *nwksp) +{ + int i, j, flag; + eapd_brcm_socket_t *brcmSocket; + eapd_preauth_socket_t *preauthSocket; + eapd_wps_t *wps; + eapd_ses_t *ses; + eapd_nas_t *nas; +#ifdef BCM_DCS + eapd_dcs_t *dcs; +#endif + eapd_cb_t *cb; + eapd_sta_t *sta; + char eabuf[ETHER_ADDR_STR_LEN], bssidbuf[ETHER_ADDR_STR_LEN]; + + + if (nwksp == NULL) { + EAPD_PRINT("Wrong argument...\n"); + return; + } + + EAPD_PRINT("\n***************************\n"); + + EAPD_PRINT("WPS:\n"); + wps = &nwksp->wps; + cb = wps->cb; + if (cb) { + EAPD_PRINT(" wps-monitor appSocket %d for %s", wps->appSocket, cb->ifname); + /* print each cb ifname */ + cb = cb->next; + while (cb) { + EAPD_PRINT(" %s", cb->ifname); + cb = cb->next; + } + EAPD_PRINT("\n"); + + EAPD_PRINT(" interested wireless interfaces [%s]\n", wps->ifnames); + + /* bitvec for brcmevent */ + flag = 1; + for (i = 0; i < WL_EVENTING_MASK_LEN; i++) { + for (j = 0; j < 8; j++) { + if (isset(&wps->bitvec[i], j)) { + if (flag) { + EAPD_PRINT(" interested event message id [%d", + (i*8+j)); + flag = 0; + } + else { + EAPD_PRINT(" %d", (i*8+j)); + } + } + } + } + EAPD_PRINT("]\n"); + } + cb = wps->cb; + while (cb) { + if (cb->brcmSocket) { + brcmSocket = cb->brcmSocket; + EAPD_PRINT(" [rfp=0x%x] drvSocket %d on %s for brcm event packet\n", + (uint) brcmSocket, brcmSocket->drvSocket, brcmSocket->ifname); + } + cb = cb->next; + if (cb) + EAPD_PRINT(" ----\n"); + } + EAPD_PRINT("\n"); + + EAPD_PRINT("SES:\n"); + ses = &nwksp->ses; + cb = ses->cb; + if (cb) { + EAPD_PRINT(" ses appSocket %d for %s", ses->appSocket, cb->ifname); + /* print each cb ifname */ + cb = cb->next; + while (cb) { + EAPD_PRINT(" %s", cb->ifname); + cb = cb->next; + } + EAPD_PRINT("\n"); + + EAPD_PRINT(" interested wireless interfaces [%s]\n", ses->ifnames); + + /* bitvec for brcmevent */ + flag = 1; + for (i = 0; i < WL_EVENTING_MASK_LEN; i++) { + for (j = 0; j < 8; j++) { + if (isset(&ses->bitvec[i], j)) { + if (flag) { + EAPD_PRINT(" interested event message id [%d", + (i*8+j)); + flag = 0; + } + else { + EAPD_PRINT(" %d", (i*8+j)); + } + } + } + } + EAPD_PRINT("]\n"); + } + cb = ses->cb; + while (cb) { + if (cb->brcmSocket) { + brcmSocket = cb->brcmSocket; + EAPD_PRINT(" [rfp=0x%x] drvSocket %d on %s for brcm event packet\n", + (uint) brcmSocket, brcmSocket->drvSocket, brcmSocket->ifname); + } + cb = cb->next; + if (cb) + EAPD_PRINT(" ----\n"); + } + EAPD_PRINT("\n"); + + EAPD_PRINT("NAS:\n"); + nas = &nwksp->nas; + cb = nas->cb; + if (cb) { + EAPD_PRINT(" nas appSocket %d for %s", nas->appSocket, cb->ifname); + /* print each cb ifname */ + cb = cb->next; + while (cb) { + EAPD_PRINT(" %s", cb->ifname); + cb = cb->next; + } + EAPD_PRINT("\n"); + + EAPD_PRINT(" interested wireless interfaces [%s]\n", nas->ifnames); + + /* bitvec for brcmevent */ + flag = 1; + for (i = 0; i < WL_EVENTING_MASK_LEN; i++) { + for (j = 0; j < 8; j++) { + if (isset(&nas->bitvec[i], j)) { + if (flag) { + EAPD_PRINT(" interested event message id [%d", + (i*8+j)); + flag = 0; + } + else { + EAPD_PRINT(" %d", (i*8+j)); + } + } + } + } + EAPD_PRINT("]\n"); + } + cb = nas->cb; + while (cb) { + preauthSocket = &cb->preauthSocket; + if (preauthSocket->drvSocket >= 0) { + EAPD_PRINT(" [0x%x] drvSocket %d on %s for preauth packet\n", + (uint) preauthSocket, preauthSocket->drvSocket, + preauthSocket->ifname); + } + if (cb->brcmSocket) { + brcmSocket = cb->brcmSocket; + EAPD_PRINT(" [rfp=0x%x] drvSocket %d on %s for brcm event packet\n", + (uint) brcmSocket, brcmSocket->drvSocket, brcmSocket->ifname); + } + cb = cb->next; + if (cb) + EAPD_PRINT(" ----\n"); + } + EAPD_PRINT("\n"); + + +#ifdef BCM_DCS + EAPD_PRINT("DCS:\n"); + dcs = &nwksp->dcs; + cb = dcs->cb; + if (cb) { + EAPD_PRINT(" dcs appSocket %d for %s", dcs->appSocket, cb->ifname); + /* print each cb ifname */ + cb = cb->next; + while (cb) { + EAPD_PRINT(" %s", cb->ifname); + cb = cb->next; + } + EAPD_PRINT("\n"); + + EAPD_PRINT(" interested wireless interfaces [%s]\n", dcs->ifnames); + + /* bitvec for brcmevent */ + flag = 1; + for (i = 0; i < WL_EVENTING_MASK_LEN; i++) { + for (j = 0; j < 8; j++) { + if (isset(&dcs->bitvec[i], j)) { + if (flag) { + EAPD_PRINT(" interested event message id [%d", + (i*8+j)); + flag = 0; + } + else { + EAPD_PRINT(" %d", (i*8+j)); + } + } + } + } + EAPD_PRINT("]\n"); + } + cb = dcs->cb; + while (cb) { + if (cb->brcmSocket) { + brcmSocket = cb->brcmSocket; + EAPD_PRINT(" [rfp=0x%x] drvSocket %d on %s for brcm event packet\n", + (uint) brcmSocket, brcmSocket->drvSocket, brcmSocket->ifname); + } + cb = cb->next; + if (cb) + EAPD_PRINT(" ----\n"); + } + EAPD_PRINT("\n"); +#endif /* BCM_DCS */ + + EAPD_PRINT("BRCM (brcm event):\n"); + for (i = 0; i < nwksp->brcmSocketCount; i++) { + brcmSocket = &nwksp->brcmSocket[i]; + EAPD_PRINT(" [0x%x] [inuseCount=%d] drvSocket %d on %s for " + "brcm event packet\n", (uint) brcmSocket, + brcmSocket->inuseCount, brcmSocket->drvSocket, + brcmSocket->ifname); + } + + EAPD_PRINT("\n"); + + EAPD_PRINT("Stations Info:\n"); + j = 0; + for (i = 0; i < EAPD_WKSP_MAX_SUPPLICANTS; i++) { + for (sta = nwksp->sta_hashed[i]; sta; sta = sta->next) { + EAPD_PRINT(" [%d] %s from %s[%s]\n", j++, + ether_etoa((uchar *)&sta->ea, eabuf), sta->ifname, + ether_etoa((uchar *)&sta->bssid, bssidbuf)); + } + } + EAPD_PRINT("***************************\n"); +} +#endif /* EAPDDUMP */ + +#ifdef BCMDBG +void +eapd_wksp_display_usage(void) +{ + EAPD_PRINT("\nUsage: eapd [options]\n\n"); + EAPD_PRINT("\n-wps ifname(s)\n"); + EAPD_PRINT("\n-nas ifname(s)\n"); + EAPD_PRINT("\n-ses ifname\n"); +#ifdef BCM_DCS + EAPD_PRINT("\n-dcs ifname(s)\n"); +#endif /* BCM_DCS */ + EAPD_PRINT("\n\n"); +}; +#endif /* BCMDBG */ + +#ifdef EAPD_WKSP_AUTO_CONFIG +int +eapd_wksp_auto_config(eapd_wksp_t *nwksp) +{ + int i; + char ifnames[256], tmp_ifname[128], tmp_ifnames[128], name[IFNAMSIZ]; + char *next; + bool needStart = FALSE; + + /* lan */ + for (i = 0; i < EAPD_WKSP_MAX_NO_BRIDGE; i++) { + memset(tmp_ifname, 0, sizeof(tmp_ifname)); + memset(tmp_ifnames, 0, sizeof(tmp_ifnames)); + if (i == 0) { + sprintf(tmp_ifname, "lan_ifname"); + sprintf(tmp_ifnames, "lan_ifnames"); + } + else { + sprintf(tmp_ifname, "lan%d_ifname", i); + sprintf(tmp_ifnames, "lan%d_ifnames", i); + } + + memset(ifnames, 0, sizeof(ifnames)); + memset(name, 0, sizeof(name)); + eapd_safe_get_conf(ifnames, sizeof(ifnames), tmp_ifnames); + if (!strcmp(ifnames, "")) { + eapd_safe_get_conf(ifnames, sizeof(ifnames), tmp_ifname); + if (!strcmp(ifnames, "")) + continue; + } + foreach(name, ifnames, next) { + if (wps_app_enabled(name)) + needStart |= eapd_add_interface(nwksp, name, EAPD_APP_WPS); + if (nas_app_enabled(name)) + needStart |= eapd_add_interface(nwksp, name, EAPD_APP_NAS); + if (i == 0 && ses_app_enabled(name)) /* SES only running on lan_ifname */ + needStart |= eapd_add_interface(nwksp, name, EAPD_APP_SES); + +#ifdef BCM_DCS + if (dcs_app_enabled(name)) + needStart |= eapd_add_interface(nwksp, name, EAPD_APP_DCS); +#endif /* BCM_DCS */ + } + } + + /* wan */ + memset(ifnames, 0, sizeof(ifnames)); + memset(name, 0, sizeof(name)); + eapd_safe_get_conf(ifnames, sizeof(ifnames), "wan_ifnames"); + foreach(name, ifnames, next) { + if (wps_app_enabled(name)) + needStart |= eapd_add_interface(nwksp, name, EAPD_APP_WPS); + if (nas_app_enabled(name)) + needStart |= eapd_add_interface(nwksp, name, EAPD_APP_NAS); +#ifdef BCM_DCS + if (dcs_app_enabled(name)) + needStart |= eapd_add_interface(nwksp, name, EAPD_APP_DCS); +#endif /* BCM_DCS */ + } + + return ((needStart == TRUE) ? 0 : -1); +} +#endif /* EAPD_WKSP_AUTO_CONFIG */ + +static bool +eapd_add_interface(eapd_wksp_t *nwksp, char *ifname, eapd_app_mode_t mode) +{ + int unit; + char os_name[IFNAMSIZ], prefix[8]; + uchar mac[ETHER_ADDR_LEN]; + char *lanifname; + eapd_app_t *app; + eapd_cb_t *cb; + void (*app_set_eventmask)(eapd_app_t *app) = NULL; + + if (ifname == NULL) + return FALSE; + + switch (mode) { + case EAPD_APP_NAS: + app = &nwksp->nas; + app_set_eventmask = (void*) nas_app_set_eventmask; + break; + case EAPD_APP_WPS: + app = &nwksp->wps; + app_set_eventmask = (void*) wps_app_set_eventmask; + break; + case EAPD_APP_SES: + app = &nwksp->ses; + if (app->cb) + return FALSE; /* ses already set */ + app_set_eventmask = (void*) ses_app_set_eventmask; + break; +#ifdef BCM_DCS + case EAPD_APP_DCS: + app = &nwksp->dcs; + app_set_eventmask = (void*) dcs_app_set_eventmask; + break; +#endif /* BCM_DCS */ + default: + return FALSE; + } + + /* verify ifname */ + if (nvifname_to_osifname(ifname, os_name, sizeof(os_name)) < 0) + return FALSE; + if (wl_probe(os_name) || + wl_ioctl(os_name, WLC_GET_INSTANCE, &unit, sizeof(unit))) + return FALSE; + /* convert eth name to wl name */ + if (osifname_to_nvifname(ifname, prefix, sizeof(prefix)) != 0) + return FALSE; + + /* check ifname in ifnames list */ + if (find_in_list(app->ifnames, prefix)) + return FALSE; /* duplicate */ + /* find ifname in which lan?_ifnames or wan_ifnames */ + (void) wl_hwaddr(os_name, mac); + if ((lanifname = get_ifname_by_wlmac(mac, ifname)) == NULL) + return FALSE; + + /* check lanifname in cb list */ + cb = app->cb; + while (cb) { + if (!strcmp(cb->ifname, lanifname)) + break; + cb = cb->next; + } + + if (!cb) { + /* prepare application structure */ + cb = (eapd_cb_t *)malloc(sizeof(eapd_cb_t)); + if (cb == NULL) { + EAPD_ERROR("app cb allocate fail...\n"); + return FALSE; + } + memset(cb, 0, sizeof(eapd_cb_t)); + + /* add cb to the head */ + cb->next = app->cb; + app->cb = cb; + + /* save ifname */ + strcpy(cb->ifname, lanifname); + + /* save bcm event bitvec */ + if (app_set_eventmask) + app_set_eventmask(app); + + EAPD_INFO("add one interface cb for %s\n", cb->ifname); + } + + /* save prefix name to ifnames */ + add_to_list(prefix, app->ifnames, sizeof(app->ifnames)); + + return TRUE; +} + +int +eapd_wksp_parse_cmd(int argc, char *argv[], eapd_wksp_t *nwksp) +{ + int i = 1; + bool needStart = FALSE; + eapd_app_mode_t current_mode = EAPD_APP_UNKNOW; + + if (nwksp == NULL) + return -1; + + /* dispatch parse command */ + while (i < argc) { + if (!strncmp(argv[i], "-wps", 4)) { + current_mode = EAPD_APP_WPS; + } + else if (!strncmp(argv[i], "-nas", 4)) { + current_mode = EAPD_APP_NAS; + } + else if (!strncmp(argv[i], "-ses", 4)) { + current_mode = EAPD_APP_SES; + } +#ifdef BCM_DCS + else if (!strncmp(argv[i], "-dcs", 4)) { + current_mode = EAPD_APP_DCS; + } +#endif /* BCM_DCS */ + else { + needStart |= eapd_add_interface(nwksp, argv[i], current_mode); + } + i++; + } + return ((needStart == TRUE) ? 0 : -1); +} + +eapd_wksp_t * +eapd_wksp_alloc_workspace(void) +{ + eapd_wksp_t *nwksp = (eapd_wksp_t *)malloc(sizeof(eapd_wksp_t)); + + if (!nwksp) + return NULL; + memset(nwksp, 0, sizeof(eapd_wksp_t)); + FD_ZERO(&nwksp->fdset); + nwksp->fdmax = -1; + nwksp->wps.appSocket = -1; + nwksp->nas.appSocket = -1; + nwksp->ses.appSocket = -1; +#ifdef BCM_DCS + nwksp->dcs.appSocket = -1; +#endif /* BCM_DCS */ + + EAPD_INFO("allocated EAPD workspace\n"); + + return nwksp; +} + +void +eapd_wksp_free_workspace(eapd_wksp_t * nwksp) +{ + if (!nwksp) + return; + free(nwksp); + EAPD_INFO("free EAPD workspace\n"); + return; +} + +int +eapd_wksp_init(eapd_wksp_t *nwksp) +{ + if (nwksp == NULL) + return -1; + + /* initial sta list */ + if (sta_init(nwksp)) { + EAPD_ERROR("sta_init fail...\n"); + return -1; + } + + /* initial wps */ + if (wps_app_init(nwksp)) { + EAPD_ERROR("wps_app_init fail...\n"); + return -1; + } + + /* initial nas */ + if (nas_app_init(nwksp)) { + EAPD_ERROR("nas_app_init fail...\n"); + return -1; + } + + /* initial ses */ + if (ses_app_init(nwksp)) { + EAPD_ERROR("ses_app_init fail...\n"); + return -1; + } + + +#ifdef BCM_DCS + /* initial dcs */ + if (dcs_app_init(nwksp)) { + EAPD_ERROR("dcs_app_init fail...\n"); + return -1; + } +#endif /* BCM_DCS */ + + /* apply bcmevent bitvec */ + if (event_init(nwksp)) { + EAPD_ERROR("event_init fail...\n"); + return -1; + } + + return 0; +} + +int +eapd_wksp_deinit(eapd_wksp_t *nwksp) +{ + if (nwksp == NULL) { + EAPD_ERROR("Wrong argument...\n"); + return -1; + } + + sta_deinit(nwksp); + wps_app_deinit(nwksp); + ses_app_deinit(nwksp); + nas_app_deinit(nwksp); +#ifdef BCM_DCS + dcs_app_deinit(nwksp); +#endif /* BCM_DCS */ + event_deinit(nwksp); + + return 0; +} + +void +eapd_wksp_cleanup(eapd_wksp_t *nwksp) +{ + eapd_wksp_deinit(nwksp); + eapd_wksp_free_workspace(nwksp); +} + +static eapd_cb_t * +eapd_wksp_find_cb(eapd_app_t *app, char *wlifname, uint8 *mac) +{ + eapd_cb_t *cb = NULL; + char *ifname; + + if (!app) + return NULL; + + ifname = get_ifname_by_wlmac(mac, wlifname); + if (ifname) { + cb = app->cb; + while (cb) { + if (!strcmp(ifname, cb->ifname)) + break; + cb = cb->next; + } + } + + if (!cb) + EAPD_ERROR("No cb found\n"); + + return cb; +} + +void +eapd_wksp_dispatch(eapd_wksp_t *nwksp) +{ + fd_set fdset; + struct timeval tv = {1, 0}; /* timed out every second */ + int status, len, i, bytes; + uint8 *pkt; + eapd_brcm_socket_t *brcmSocket; +#ifdef BCMWPA2 + eapd_preauth_socket_t *preauthSocket; +#endif + eapd_cb_t *cb; + eapd_wps_t *wps; + eapd_ses_t *ses; + eapd_nas_t *nas; +#ifdef BCM_DCS + eapd_dcs_t *dcs; +#endif /* BCM_DCS */ + + FD_ZERO(&nwksp->fdset); + nwksp->fdmax = -1; + + pkt = &nwksp->packet[IFNAMSIZ]; + len = sizeof(nwksp->packet) - IFNAMSIZ; + + /* add brcm drvSocket */ + for (i = 0; i < nwksp->brcmSocketCount; i++) { + brcmSocket = &nwksp->brcmSocket[i]; + if (brcmSocket->inuseCount > 0) { + FD_SET(brcmSocket->drvSocket, &nwksp->fdset); + if (brcmSocket->drvSocket > nwksp->fdmax) + nwksp->fdmax = brcmSocket->drvSocket; + } + } + + /* add wps appSocket */ + wps = &nwksp->wps; + if (wps->appSocket >= 0) { + FD_SET(wps->appSocket, &nwksp->fdset); + if (wps->appSocket > nwksp->fdmax) + nwksp->fdmax = wps->appSocket; + } + + /* add ses appSocket */ + ses = &nwksp->ses; + if (ses->appSocket >= 0) { + FD_SET(ses->appSocket, &nwksp->fdset); + if (ses->appSocket > nwksp->fdmax) + nwksp->fdmax = ses->appSocket; + } + + /* add nas appSocket */ + nas = &nwksp->nas; + if (nas->appSocket >= 0) { + FD_SET(nas->appSocket, &nwksp->fdset); + if (nas->appSocket > nwksp->fdmax) + nwksp->fdmax = nas->appSocket; + } + +#if BCMWPA2 + /* add nas preauth drvSocket */ + cb = nas->cb; + while (cb) { + preauthSocket = &cb->preauthSocket; + if (preauthSocket->drvSocket >= 0) { + FD_SET(preauthSocket->drvSocket, &nwksp->fdset); + if (preauthSocket->drvSocket > nwksp->fdmax) + nwksp->fdmax = preauthSocket->drvSocket; + } + cb = cb->next; + } +#endif + + +#ifdef BCM_DCS + /* add dcs appSocket */ + dcs = &nwksp->dcs; + if (dcs->appSocket >= 0) { + FD_SET(dcs->appSocket, &nwksp->fdset); + if (dcs->appSocket > nwksp->fdmax) + nwksp->fdmax = dcs->appSocket; + } +#endif /* BCM_DCS */ + + if (nwksp->fdmax == -1) { + /* do shutdown procedure */ + nwksp->flags = EAPD_WKSP_FLAG_SHUTDOWN; + EAPD_ERROR("There is no any sockets in the fd set, shutdown...\n"); + return; + } + + fdset = nwksp->fdset; + status = select(nwksp->fdmax+1, &fdset, NULL, NULL, &tv); + if (status > 0) { + /* check brcm drvSocket */ + for (i = 0; i < nwksp->brcmSocketCount; i++) { + brcmSocket = &nwksp->brcmSocket[i]; + if (brcmSocket->inuseCount > 0 && + FD_ISSET(brcmSocket->drvSocket, &fdset)) { + /* + * Use read instead of recv to receive BRCM packets, + * this change allow the drvSocket is a file descriptor, + */ + bytes = read(brcmSocket->drvSocket, pkt, len); + if (bytes > 0) { + /* call brcm recv handler */ + eapd_brcm_recv_handler(nwksp, brcmSocket, pkt, &bytes); + } + } + } + + /* check wps appSocket */ + if (wps->appSocket >= 0 && + FD_ISSET(wps->appSocket, &fdset)) { + bytes = recv(wps->appSocket, pkt, len, 0); + if (bytes > ETHER_HDR_LEN) { + char *ifname = (char *) pkt; + struct ether_header *eth; +#ifdef BCMDBG + HEXDUMP_ASCII("EAPD:: data from WPS app", pkt, bytes); +#endif + /* ether header */ + eth = (struct ether_header*)(ifname + IFNAMSIZ); + bytes -= IFNAMSIZ; + + cb = eapd_wksp_find_cb(wps, ifname, eth->ether_shost); + /* send message data out. */ + if (cb) + wps_app_recv_handler(nwksp, ifname, cb, (uint8 *)eth, + &bytes, (struct ether_addr *)ð->ether_shost); + } + } + + /* check ses appSocket */ + if (ses->appSocket >= 0 && + FD_ISSET(ses->appSocket, &fdset)) { + bytes = recv(ses->appSocket, pkt, len, 0); + if (bytes > ETHER_HDR_LEN) { + char *ifname = (char *) pkt; + struct ether_header *eth; +#ifdef BCMDBG + HEXDUMP_ASCII("EAPD:: data from SES app", pkt, bytes); +#endif + + /* ether header */ + eth = (struct ether_header*)(ifname + IFNAMSIZ); + bytes -= IFNAMSIZ; + + cb = eapd_wksp_find_cb(ses, ifname, eth->ether_shost); + /* send message data out. */ + if (cb) + ses_app_recv_handler(nwksp, ifname, cb, (uint8 *)eth, + &bytes); + } + } + + /* check nas appSocket */ + if (nas->appSocket >= 0 && + FD_ISSET(nas->appSocket, &fdset)) { + bytes = recv(nas->appSocket, pkt, len, 0); + if (bytes > ETHER_HDR_LEN) { + char *ifname = (char *) pkt; + struct ether_header *eth; + +#ifdef BCMDBG + HEXDUMP_ASCII("EAPD:: data from NAS app", pkt, bytes); +#endif + /* ether header */ + eth = (struct ether_header*)(ifname + IFNAMSIZ); + bytes -= IFNAMSIZ; + + cb = eapd_wksp_find_cb(nas, ifname, eth->ether_shost); + /* send message data out. */ + if (cb) + nas_app_recv_handler(nwksp, ifname, cb, (uint8 *)eth, + &bytes); + } + } + +#if BCMWPA2 + /* check preauth drvSocket */ + cb = nas->cb; + while (cb) { + preauthSocket = &cb->preauthSocket; + if (preauthSocket->drvSocket >= 0 && + FD_ISSET(preauthSocket->drvSocket, &fdset)) { + /* + * Use read instead of recv to receive PREAUTH packets, + * this change allow the drvSocket is a file descriptor, + */ + bytes = read(preauthSocket->drvSocket, pkt, len); + if (bytes > 0) { +#ifdef BCMDBG + HEXDUMP_ASCII("EAPD:: data from PREAUTH Driver", + pkt, bytes); +#endif + /* call preauth recv handler */ + eapd_preauth_recv_handler(nwksp, cb->ifname, + pkt, &bytes); + } + } + + cb = cb->next; + } +#endif /* BCMWPA2 */ + + +#ifdef BCM_DCS + /* check dcs appSocket */ + if (dcs->appSocket >= 0 && + FD_ISSET(dcs->appSocket, &fdset)) { + bytes = recv(dcs->appSocket, pkt, len, 0); + if (bytes > ETHER_HDR_LEN) { + char *ifname = (char *) pkt; + struct ether_header *eth; +#ifdef BCMDBG + HEXDUMP_ASCII("EAPD:: data from DCS app", pkt, bytes); +#endif + /* ether header */ + eth = (struct ether_header*)(ifname + IFNAMSIZ); + bytes -= IFNAMSIZ; + + cb = eapd_wksp_find_cb(dcs, ifname, eth->ether_shost); + /* send message data out. */ + if (cb) + dcs_app_recv_handler(nwksp, cb, (uint8 *)eth, &bytes); + } + } +#endif /* BCM_DCS */ + } + + return; +} + +int +eapd_wksp_main_loop(eapd_wksp_t *nwksp) +{ + int ret; + + /* init eapd */ + ret = eapd_wksp_init(nwksp); + + /* eapd wksp initialization finished */ + eapd_wksp_inited = 1; + if (ret) { + EAPD_ERROR("Unable to initialize EAPD. Quitting...\n"); + eapd_wksp_cleanup(nwksp); + return -1; + } + +#if !defined(DEBUG) && !defined(__ECOS) + /* Daemonize */ + if (daemon(1, 1) == -1) { + eapd_wksp_cleanup(nwksp); + perror("eapd_wksp_main_loop: daemon\n"); + exit(errno); + } +#endif + + while (1) { + /* check user command for shutdown */ + if (nwksp->flags & EAPD_WKSP_FLAG_SHUTDOWN) { + eapd_wksp_cleanup(nwksp); + EAPD_INFO("NAS shutdown...\n"); + return 0; + } + +#ifdef EAPDDUMP + /* check dump */ + if (nwksp->flags & EAPD_WKSP_FLAG_DUMP) { + eapd_dump(nwksp); + nwksp->flags &= ~EAPD_WKSP_FLAG_DUMP; + } +#endif + + /* do packets dispatch */ + eapd_wksp_dispatch(nwksp); + } +} + +static int +eapd_brcm_dispatch(eapd_wksp_t *nwksp, eapd_brcm_socket_t *from, uint8 *pData, int Len) +{ + if (nwksp == NULL || pData == NULL) { + EAPD_ERROR("Wrong arguments...\n"); + return -1; + } + + + /* check nas application */ + nas_app_handle_event(nwksp, pData, Len, from->ifname); + + /* check wps application */ + wps_app_handle_event(nwksp, pData, Len, from->ifname); + + /* check ses application */ + ses_app_handle_event(nwksp, pData, Len, from->ifname); + + +#ifdef BCM_DCS + /* check dcs application */ + dcs_app_handle_event(nwksp, pData, Len, from->ifname); +#endif /* BCM_DCS */ + return 0; +} + + +/* + * look for a raw brcm event socket connected to + * interface "ifname". + */ +eapd_brcm_socket_t* +eapd_find_brcm(eapd_wksp_t *nwksp, char *ifname) +{ + int i, brcmSocketCount; + eapd_brcm_socket_t *brcmSocket; + + if (nwksp == NULL || ifname == NULL) { + EAPD_ERROR("Wrong arguments...\n"); + return NULL; + } + + brcmSocketCount = nwksp->brcmSocketCount; + for (i = 0; i < brcmSocketCount; i++) { + brcmSocket = &nwksp->brcmSocket[i]; + if (brcmSocket->inuseCount > 0) { + if (!strcmp(brcmSocket->ifname, ifname)) { + EAPD_INFO("Find brcm interface %s\n", ifname); + return brcmSocket; + } + } + } + + + EAPD_INFO("Not found brcm interface %s\n", ifname); + return NULL; +} + + +eapd_brcm_socket_t* +eapd_add_brcm(eapd_wksp_t *nwksp, char *ifname) +{ + int i; + eapd_brcm_socket_t *brcmSocket; + + if (nwksp == NULL || ifname == NULL) { + EAPD_ERROR("Wrong arguments...\n"); + return NULL; + } + + brcmSocket = eapd_find_brcm(nwksp, ifname); + if (brcmSocket) { + brcmSocket->inuseCount++; + return brcmSocket; + } + + + /* not found, find inuseCount is zero first */ + for (i = 0; i < nwksp->brcmSocketCount; i++) { + brcmSocket = &nwksp->brcmSocket[i]; + if (brcmSocket->inuseCount == 0) + break; + } + + + /* not found inuseCount is zero */ + if (i == nwksp->brcmSocketCount) { + if (nwksp->brcmSocketCount >= EAPD_WKSP_MAX_NO_BRCM) { + EAPD_ERROR("brcmSocket number is not enough, max %d\n", + EAPD_WKSP_MAX_NO_BRCM); + return NULL; + } + nwksp->brcmSocketCount++; + } + + brcmSocket = &nwksp->brcmSocket[i]; + + memset(brcmSocket, 0, sizeof(eapd_brcm_socket_t)); + strcpy(brcmSocket->ifname, ifname); + if (eapd_brcm_open(nwksp, brcmSocket) < 0) { + EAPD_ERROR("open brcm socket on %s error!!\n", ifname); + return NULL; + } + + return brcmSocket; +} + +int +eapd_del_brcm(eapd_wksp_t *nwksp, eapd_brcm_socket_t *sock) +{ + int i; + eapd_brcm_socket_t *brcmSocket; + + if (nwksp == NULL || sock == NULL) { + EAPD_ERROR("Wrong arguments...\n"); + return -1; + } + + /* find it first. */ + for (i = 0; i < nwksp->brcmSocketCount; i++) { + brcmSocket = &nwksp->brcmSocket[i]; + if (brcmSocket->inuseCount > 0 && + !strcmp(brcmSocket->ifname, sock->ifname)) { + EAPD_INFO("Find brcm interface %s, brcmSocket->inuseCount=%d\n", + sock->ifname, brcmSocket->inuseCount); + brcmSocket->inuseCount--; + if (brcmSocket->inuseCount == 0) { + EAPD_INFO("close brcm drvSocket %d\n", brcmSocket->drvSocket); + eapd_brcm_close(brcmSocket->drvSocket); + brcmSocket->drvSocket = -1; + } + return 0; + } + } + + /* not found */ + EAPD_INFO("Not found brcm interface to del %s\n", sock->ifname); + return -1; +} + +/* dispatch EAPOL packet from brcmevent. */ +static void +eapd_eapol_dispatch(eapd_wksp_t *nwksp, eapd_brcm_socket_t *from, uint8 *pData, int *pLen) +{ + eapd_sta_t *sta; + eapol_header_t *eapol; + eap_header_t *eap; + char *ifname; + + if (!nwksp || !from || !pData) { + EAPD_ERROR("Wrong argument...\n"); + return; + } + +#ifdef BCMDBG + HEXDUMP_ASCII("EAPD:: eapol data from BRCM driver", pData, *pLen); +#endif + + /* incoming ifname */ + ifname = (char *) pData; + + /* eapol header */ + eapol = (eapol_header_t *)(ifname + IFNAMSIZ); + eap = (eap_header_t *) eapol->body; + + sta = sta_lookup(nwksp, (struct ether_addr *) eapol->eth.ether_shost, + (struct ether_addr *) eapol->eth.ether_dhost, ifname, EAPD_SEARCH_ENTER); + if (!sta) { + EAPD_ERROR("no STA struct available\n"); + return; + } + + if (eapol->version < sta->eapol_version) { + EAPD_ERROR("EAPOL version %d packet received, current version is %d\n", + eapol->version, sta->eapol_version); + } + + EAPD_INFO("sta->pae_state=%d sta->mode=%d\n", sta->pae_state, sta->mode); + + /* Pass EAP_RESPONSE to WPS module. */ + if (sta->pae_state >= EAPD_IDENTITY && + (sta->mode == EAPD_STA_MODE_WPS || sta->mode == EAPD_STA_MODE_WPS_ENR) && + eapol->type == EAP_PACKET && + (eap->type == EAP_EXPANDED || eap->code == EAP_FAILURE)) { + switch (eap->code) { + case EAP_REQUEST: + case EAP_FAILURE: + /* in case of router running enr */ + EAPD_INFO("EAP %s Packet received...\n", + eap->code == EAP_REQUEST ? "Request" : "Failure"); + + /* Send to wps-monitor */ + if (sta->mode == EAPD_STA_MODE_WPS_ENR) { + /* monitor eapol packet */ + if (eap->code == EAP_FAILURE || eap->code == EAP_SUCCESS) { + sta_remove(nwksp, sta); + } +#ifdef BCMDBG + HEXDUMP_ASCII("Receive, EAP Request", pData, *pLen); +#endif + wps_app_monitor_sendup(nwksp, pData, *pLen, from->ifname); + } + else + return; + break; + + case EAP_RESPONSE: + EAPD_INFO("EAP Response Packet received...\n"); + + /* Send to wps-monitor */ + if (sta->mode == EAPD_STA_MODE_WPS) + wps_app_monitor_sendup(nwksp, pData, *pLen, from->ifname); + else + return; + break; + + default: + /* Do nothing */ + break; + } + + return; + } + + /* Check SES IDENTITY */ + if ((eapol->type == EAP_PACKET) && + (eap->type == EAP_EXPANDED) && + (eap->data[2] == (BCM_SMI_ID & 0xff)) && + (eap->data[1] == ((BCM_SMI_ID & 0xff00) >> 8)) && + (eap->data[0] == ((BCM_SMI_ID & 0xff000) >> 16))) { + /* Send to SES module. */ + ses_app_sendup(nwksp, pData, *pLen, from->ifname); + + sta->mode = EAPD_STA_MODE_SES; + sta->pae_state = EAPD_IDENTITY; + + return; + } + + /* We handle + * 1. Receive EAPOL-Start and send EAP_REQUEST for EAP_IDENTITY + * 2. Receive EAP_IDENTITY and pass it to NAS if not a WPS IDENTITY, + * NAS need to record identity. + * 3. Pass NAS other EAPOL type + */ + switch (eapol->type) { + case EAP_PACKET: + if (ntohs(eapol->length) >= (EAP_HEADER_LEN + 1)) { + EAPD_INFO("STA State=%d EAP Packet Type=%d Id=%d code=%d\n", + sta->pae_state, eap->type, eap->id, eap->code); + + switch (eap->type) { + case EAP_IDENTITY: + EAPD_INFO("Receive , eap code=%d, id = %d, length=%d, type=%d\n", + eap->code, eap->id, ntohs(eap->length), eap->type); +#ifdef BCMDBG + HEXDUMP_ASCII("Receive, EAP Identity", eap->data, + ntohs(eap->length) - EAP_HEADER_LEN - 1); +#endif + /* Store which interface sta come from */ + memcpy(&sta->bssid, &eapol->eth.ether_dhost, ETHER_ADDR_LEN); + memcpy(&sta->ifname, ifname, IFNAMSIZ); + + if (eapd_get_method(eap->data) == EAP_TYPE_WSC) { + EAPD_INFO("This is a wps eap identity response!\n"); + + /* Send to WPS-Monitor module. */ + wps_app_monitor_sendup(nwksp, pData, *pLen, from->ifname); + + sta->mode = EAPD_STA_MODE_WPS; + } else if (sta->mode == EAPD_STA_MODE_WPS_ENR) { + EAPD_INFO("This is a wps eap identity request!\n"); + + /* Send to WPS-Monitor module. */ + wps_app_monitor_sendup(nwksp, pData, *pLen, from->ifname); + + /* + * sta mode EAPD_STA_MODE_WPS_ENR set in + * wps_app_recv_handler, when enr initial send + * EAPOL-START. + */ + } + else { + /* Send to NAS module. */ + nas_app_sendup(nwksp, pData, *pLen, from->ifname); + sta->mode = EAPD_STA_MODE_NAS; + } + sta->pae_state = EAPD_IDENTITY; + break; +/* +*/ +#ifdef __CONFIG_WFI__ + case EAP_NAK: + if (sta->mode == EAPD_STA_MODE_UNKNOW && + sta->pae_state == EAPD_INITIALIZE && + eap->code == EAP_RESPONSE) { + /* + * EAP-RESPONSE-NAK for WFI reject. + * Send to WPS-Monitor module. + */ + wps_app_monitor_sendup(nwksp, pData, *pLen, from->ifname); + break; + } + /* Fall through */ +#endif /* __CONFIG_WFI__ */ +/* +*/ + + default: + /* Send to NAS module. */ + nas_app_sendup(nwksp, pData, *pLen, from->ifname); + sta->mode = EAPD_STA_MODE_UNKNOW; + break; + } + } + break; + + case EAPOL_START: + EAPD_INFO("EAPOL Start\n"); + + sta->pae_id = 0; + memcpy(&sta->bssid, &eapol->eth.ether_dhost, ETHER_ADDR_LEN); + memcpy(&sta->ifname, ifname, IFNAMSIZ); + + /* check EAPD interface application capability first */ + if (!eapd_valid_eapol_start(nwksp, from, ifname)) + break; + + /* break out if STA is only PSK */ + if (sta->mode == EAPD_STA_MODE_NAS_PSK) + break; + + eapd_eapol_canned_send(nwksp, from, sta, EAP_REQUEST, EAP_IDENTITY); + sta->mode = EAPD_STA_MODE_UNKNOW; + break; + + case EAPOL_LOGOFF: + EAPD_INFO("EAPOL Logoff sta mode %d\n", sta->mode); + + /* Send EAPOL_LOGOFF to application. */ + switch (sta->mode) { + case EAPD_STA_MODE_WPS: + case EAPD_STA_MODE_WPS_ENR: + wps_app_monitor_sendup(nwksp, pData, *pLen, from->ifname); + break; + + case EAPD_STA_MODE_NAS: + case EAPD_STA_MODE_NAS_PSK: + nas_app_sendup(nwksp, pData, *pLen, from->ifname); + break; + + default: + EAPD_INFO("Ignore EAPOL Logoff\n"); + break; + } + break; + + default: + EAPD_INFO("unknown EAPOL type %d\n", eapol->type); + + /* Send to NAS module. */ + nas_app_sendup(nwksp, pData, *pLen, from->ifname); + break; + } + + return; +} + + +/* Handle brcmevent type packet from any interface */ +void +eapd_brcm_recv_handler(eapd_wksp_t *nwksp, eapd_brcm_socket_t *from, uint8 *pData, int *pLen) +{ + eapol_header_t *eapol; + bcm_event_t *dpkt = (bcm_event_t *)pData; + unsigned int len; + char *ifname, ifname_tmp[BCM_MSG_IFNAME_MAX]; + + if (nwksp == NULL || from == NULL || dpkt == NULL) { + EAPD_ERROR("Wrong argument...\n"); + return; + } + + switch (ntohs(dpkt->bcm_hdr.usr_subtype)) { + case BCMILCP_BCM_SUBTYPE_EVENT: + switch (ntohl(dpkt->event.event_type)) { + case WLC_E_EAPOL_MSG: + EAPD_INFO("%s: recved wl eapol packet in brcmevent bytes: %d\n", + dpkt->event.ifname, *pLen); + + len = ntohl(dpkt->event.datalen); + + /* Reconstructs a EAPOL packet from the received packet */ + /* Point the EAPOL packet to the start of the data portion of the + * received packet minus some space to add the ethernet header to the + * EAPOL packet + */ + eapol = (eapol_header_t *)((char *)(dpkt + 1) - ETHER_HDR_LEN); + ifname = (char *)eapol - BCM_MSG_IFNAME_MAX; + + /* Save incoming interface name to temp_ifname */ + bcopy(dpkt->event.ifname, ifname_tmp, BCM_MSG_IFNAME_MAX); + + /* Now move the received packet's ethernet header to the head of the + * EAPOL packet + */ + memmove((char *)eapol, (char *)pData, ETHER_HDR_LEN); + + /* Set the EAPOL packet type correctly */ + eapol->eth.ether_type = htons(ETHER_TYPE_802_1X); + + /* The correct shost address was encapsulated to the event struct by the + * driver, copy it to the EAPOL packet's ethernet header + */ + bcopy(dpkt->event.addr.octet, eapol->eth.ether_shost, ETHER_ADDR_LEN); + + /* Save incoming interface name */ + bcopy(ifname_tmp, ifname, BCM_MSG_IFNAME_MAX); + + len = len + ETHER_HDR_LEN + BCM_MSG_IFNAME_MAX; + eapd_eapol_dispatch(nwksp, from, (void *)ifname, (int *)&len); + return; + + default: + /* dispatch brcnevent to wps, ses(?), nas, wapid */ + eapd_brcm_dispatch(nwksp, from, pData, *pLen); + return; + } + break; + + default: /* not a NAS supported message so return an error */ + EAPD_ERROR("%s: ERROR: recved unknown packet interface subtype " + "0x%x bytes: %d\n", dpkt->event.ifname, + ntohs(dpkt->bcm_hdr.usr_subtype), *pLen); + return; + } + + return; +} + +#if BCMWPA2 +/* Handle PreAuth packet from any interface for nas + * Receive it and just pass to nas + */ +void +eapd_preauth_recv_handler(eapd_wksp_t *nwksp, char *from, uint8 *pData, int *pLen) +{ + if (!nwksp || !from || !pData) { + EAPD_ERROR("Wrong argument...\n"); + return; + } + + /* prepend ifname, we reserved IFNAMSIZ length already */ + pData -= IFNAMSIZ; + *pLen += IFNAMSIZ; + memcpy(pData, from, IFNAMSIZ); + + /* Do not parse it right now, just pass to NAS */ + nas_app_sendup(nwksp, pData, *pLen, from); + return; +} +#endif /* BCMWPA2 */ + +static unsigned char +eapd_get_method(unsigned char *user) +{ + unsigned char ret = 0; + int i; + + for (i = 0; i < EAPD_WKSP_EAP_USER_NUM; i++) { + if (memcmp(user, eapdispuserlist[i].identity, + eapdispuserlist[i].identity_len) == 0) { + ret = eapdispuserlist[i].method; + break; + } + } + + return ret; +} + + +static int +sta_init(eapd_wksp_t *nwksp) +{ + return 0; +} + +static int +sta_deinit(eapd_wksp_t *nwksp) +{ + return 0; +} + +void +sta_remove(eapd_wksp_t *nwksp, eapd_sta_t *sta) +{ + eapd_sta_t *sta_list; + uint hash; + + EAPD_INFO("sta %s remove\n", ether_etoa((uchar *)&sta->ea, eabuf)); + + if (sta == NULL) { + EAPD_ERROR("called with NULL STA ponter\n"); + return; + } + + /* Remove this one from its hashed list. */ + hash = EAPD_PAE_HASH(&sta->ea); + sta_list = nwksp->sta_hashed[hash]; + + if (sta_list == sta) { + /* It was the head, so its next is the new head. */ + nwksp->sta_hashed[hash] = sta->next; + + } + else { + /* Find the one that points to it and change the pointer. */ + while ((sta_list != NULL) && (sta_list->next != sta)) + sta_list = sta_list->next; + if (sta_list == NULL) { + EAPD_INFO("sta %s not in hash list\n", + ether_etoa((uchar *)&sta->ea, eabuf)); + } + else { + sta_list->next = sta->next; + } + } + sta->used = FALSE; + return; +} + +/* + * Search for or create a STA struct. + * If `mode' is not EAPD_SEARCH_ENTER, do not create it when one is not found. + * NOTE: bssid_ea is a spoof mac. + */ +eapd_sta_t* +sta_lookup(eapd_wksp_t *nwksp, struct ether_addr *sta_ea, struct ether_addr *bssid_ea, + char *ifname, eapd_lookup_mode_t mode) +{ + unsigned int hash; + eapd_sta_t *sta; + time_t now, oldest; + + EAPD_INFO("lookup for sta %s\n", ether_etoa((uchar *)sta_ea, eabuf)); + + hash = EAPD_PAE_HASH(sta_ea); + + /* Search for entry in the hash table */ + for (sta = nwksp->sta_hashed[hash]; + sta && memcmp(&sta->ea, sta_ea, ETHER_ADDR_LEN); + sta = sta->next); + + /* One second resolution is probably good enough. */ + (void) time(&now); + + /* Not found in sta_hashed, allocate a new entry */ + if (!sta) { + int i, old_idx = -1; + + /* Don't make an unwanted entry. */ + if (mode == EAPD_SEARCH_ONLY) + return NULL; + + oldest = now; + for (i = 0; i < EAPD_WKSP_MAX_SUPPLICANTS; i++) { + if (!nwksp->sta[i].used) + break; + else if (nwksp->sta[i].last_use < oldest) { + oldest = nwksp->sta[i].last_use; + old_idx = i; + } + } + + if (i < EAPD_WKSP_MAX_SUPPLICANTS) { + sta = &nwksp->sta[i]; + } + else if (old_idx == -1) { + /* Full up with all the same timestamp? Can + * this really happen? + */ + return NULL; + } + else { + /* Didn't find one unused, so age out LRU not wps entry. */ + sta = &nwksp->sta[old_idx]; + sta_remove(nwksp, sta); + } + + /* Initialize entry */ + memset(sta, 0, (sizeof(eapd_sta_t))); + memcpy(&sta->ea, sta_ea, ETHER_ADDR_LEN); + memcpy(&sta->bssid, bssid_ea, ETHER_ADDR_LEN); + memcpy(&sta->ifname, ifname, IFNAMSIZ); + sta->used = TRUE; + sta->eapol_version = WPA_EAPOL_VERSION; + + /* Initial STA state */ + sta->pae_state = EAPD_INITIALIZE; + + /* initial mode */ + sta->mode = EAPD_STA_MODE_UNKNOW; + EAPD_INFO("Create eapd sta %s\n", ether_etoa((uchar *)&sta->ea, eabuf)); + + /* Add entry to the cache */ + sta->next = nwksp->sta_hashed[hash]; + nwksp->sta_hashed[hash] = sta; + } + else if (bssid_ea && + (memcmp(&sta->bssid, bssid_ea, ETHER_ADDR_LEN) || strcmp(sta->ifname, ifname))) { + /* from different wl */ + memcpy(&sta->bssid, bssid_ea, ETHER_ADDR_LEN); + memcpy(&sta->ifname, ifname, IFNAMSIZ); + + /* Initial STA state */ + sta->pae_state = EAPD_INITIALIZE; + + /* initial mode */ + sta->mode = EAPD_STA_MODE_UNKNOW; + EAPD_INFO("sta %s come from changed.\n", ether_etoa((uchar *)&sta->ea, eabuf)); + } + + sta->last_use = now; + return sta; +} + +static int +event_init(eapd_wksp_t *nwksp) +{ + int i, ret, unit, wlunit[16]; + eapd_wps_t *wps; + eapd_nas_t *nas; + eapd_ses_t *ses; +#ifdef BCM_DCS + eapd_dcs_t *dcs; +#endif /* BCM_DCS */ + char name[IFNAMSIZ], os_name[IFNAMSIZ], all_ifnames[IFNAMSIZ * EAPD_WKSP_MAX_NO_IFNAMES]; + char *next; + uchar bitvec[WL_EVENTING_MASK_LEN]; + + memset(wlunit, -1, sizeof(wlunit)); + memset(name, 0, sizeof(name)); + memset(all_ifnames, 0, sizeof(all_ifnames)); + wps = &nwksp->wps; + nas = &nwksp->nas; + ses = &nwksp->ses; +#ifdef BCM_DCS + dcs = &nwksp->dcs; +#endif /* BCM_DCS */ + + /* add all application ifnames to all_ifnames */ + strcpy(all_ifnames, wps->ifnames); + foreach(name, nas->ifnames, next) { + add_to_list(name, all_ifnames, sizeof(all_ifnames)); + } + memset(name, 0, sizeof(name)); + foreach(name, ses->ifnames, next) { + add_to_list(name, all_ifnames, sizeof(all_ifnames)); + } +#ifdef BCM_DCS + memset(name, 0, sizeof(name)); + foreach(name, dcs->ifnames, next) { + add_to_list(name, all_ifnames, sizeof(all_ifnames)); + } +#endif /* BCM_DCS */ + /* check each name in all_ifnames */ + memset(name, 0, sizeof(name)); + foreach(name, all_ifnames, next) { + /* apply bitvec to driver */ + memset(bitvec, 0, WL_EVENTING_MASK_LEN); + memset(os_name, 0, sizeof(os_name)); + if (nvifname_to_osifname(name, os_name, sizeof(os_name)) < 0) + continue; + if (wl_probe(os_name) || + wl_ioctl(os_name, WLC_GET_INSTANCE, &unit, sizeof(unit))) + continue; + + /* + * NOTE: Because wl0.1 wl0.2 have same event queue as wl0, we can not + * have separate event bitvec just like bsscfg. + */ + if (wlunit[unit] != -1) { + /* get current bitvec value */ + ret = wl_iovar_get(os_name, "event_msgs", bitvec, sizeof(bitvec)); + if (ret) { + EAPD_ERROR("Get event_msg error %d on %s[%s]\n", + ret, name, os_name); + continue; + } + } + + /* is wps have this name */ + if (find_in_list(wps->ifnames, name)) { + for (i = 0; i < WL_EVENTING_MASK_LEN; i++) { + bitvec[i] |= wps->bitvec[i]; + } + } + /* is nas have this name */ + if (find_in_list(nas->ifnames, name)) { + for (i = 0; i < WL_EVENTING_MASK_LEN; i++) { + bitvec[i] |= nas->bitvec[i]; + } + } + /* is ses have this name */ + if (find_in_list(ses->ifnames, name)) { + for (i = 0; i < WL_EVENTING_MASK_LEN; i++) { + bitvec[i] |= ses->bitvec[i]; + } + } + +#ifdef BCM_DCS + /* is dcs have this name */ + if (find_in_list(dcs->ifnames, name)) { + for (i = 0; i < WL_EVENTING_MASK_LEN; i++) { + bitvec[i] |= dcs->bitvec[i]; + } + } +#endif /* BCM_DCS */ + + ret = wl_iovar_set(os_name, "event_msgs", bitvec, sizeof(bitvec)); + wlunit[unit] = unit; + if (ret) { + EAPD_ERROR("Set event_msg error %d on %s[%s]\n", ret, name, os_name); + } + else { +#ifdef BCMDBG + int j, flag; + if (eapd_msg_level) { + flag = 1; + for (i = 0; i < WL_EVENTING_MASK_LEN; i++) { + for (j = 0; j < 8; j++) { + if (isset(&bitvec[i], j)) { + if (flag) { + EAPD_PRINT("Set event_msg bitvec [%d", + (i*8+j)); + flag = 0; + } + else { + EAPD_PRINT(" %d", (i*8+j)); + } + } + } + } + EAPD_PRINT("] on %s[%s]\n", name, os_name); + } +#endif /* BCMDBG */ + } + } + + return 0; +} + +static int +event_deinit(eapd_wksp_t *nwksp) +{ + return 0; +} + +/* Validate handling EAPOL START packet on this receive interface */ +static bool +eapd_valid_eapol_start(eapd_wksp_t *nwksp, eapd_brcm_socket_t *from, char *ifname) +{ + eapd_nas_t *nas; + eapd_wps_t *wps; + char nv_name[IFNAMSIZ]; + bool needHandle = FALSE; + + if (!nwksp || !from || !ifname) + return FALSE; + + /* convert eth ifname to wl name (nv name) */ + if (osifname_to_nvifname(ifname, nv_name, sizeof(nv_name)) != 0) + return FALSE; + + nas = &nwksp->nas; + wps = &nwksp->wps; + + /* Is this brcmSocket have to handle EAPOL START */ + if (from->flag & (EAPD_CAP_NAS | EAPD_CAP_WPS)) { + /* Is this receive interface have to handle EAPOL START */ + /* check nas */ + if (find_in_list(nas->ifnames, nv_name)) + needHandle = TRUE; + + /* check wps */ + if (find_in_list(wps->ifnames, nv_name)) + needHandle = TRUE; + } + + return needHandle; +} + +void +eapd_wksp_clear_inited() +{ + eapd_wksp_inited = 0; +} + +int eapd_wksp_is_inited() +{ + return eapd_wksp_inited; +} diff --git a/release/src-rt/wl/eapd/eapd.h b/release/src-rt/wl/eapd/eapd.h new file mode 100644 index 0000000000..45ce802f67 --- /dev/null +++ b/release/src-rt/wl/eapd/eapd.h @@ -0,0 +1,242 @@ +/* + * Broadcom EAP dispatcher (EAPD) module include file + * + * Copyright (C) 2010, Broadcom Corporation + * All Rights Reserved. + * + * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation; + * the contents of this file may not be disclosed to third parties, copied + * or duplicated in any form, in whole or in part, without the prior + * written permission of Broadcom Corporation. + * + * $Id: eapd.h 241391 2011-02-18 03:35:48Z stakita $ + */ + +#ifndef _EAPD_H_ +#define _EAPD_H_ + +#include +#include +#include + +#ifndef EAPD_WKSP_AUTO_CONFIG +#define EAPD_WKSP_AUTO_CONFIG 1 +#endif + +/* Message levels */ +#define EAPD_ERROR_VAL 0x00000001 +#define EAPD_INFO_VAL 0x00000002 + +extern uint eapd_msg_level; + +#define EAPDBANNER(fmt, arg...) do { \ + printf(" EAPD>> %s(%d): "fmt, __FUNCTION__, __LINE__ , ##arg);} while (0) + +#define EAPD_ERROR(fmt, arg...) +#define EAPD_INFO(fmt, arg...) +#define EAPD_PRINT(fmt, arg...) printf(fmt , ##arg) + +#define EAPD_WKSP_FLAG_SHUTDOWN 0x1 +#define EAPD_WKSP_FLAG_DUMP 0x2 + +#define EAPD_WKSP_RECV_DATA_MAX_LEN 4096 + + +#define EAPD_WKSP_MIN_CMD_LINE_ARGS 16 +#define EAPD_WKSP_MAX_CMD_LINE_ARGS 128 +#define EAPD_WKSP_MAX_NO_BRIDGE 256 +#define EAPD_WKSP_MAX_NO_BRCM 8 +#define EAPD_WKSP_MAX_NO_IFNAMES 16 + +#define EAPD_WKSP_MAX_SUPPLICANTS 64 +/* Supplicant cache */ +#define EAPD_PAE_HASH(ea) \ +((((unsigned char *) ea)[3] ^ ((unsigned char *) ea)[4] ^ ((unsigned char *) ea)[5]) & \ +(EAPD_WKSP_MAX_SUPPLICANTS - 1)) + +typedef struct eapd_sta { + bool used; /* flags use of item */ + time_t last_use; /* use timestamp */ + struct eapd_sta *next; + struct ether_addr ea; /* STA's ethernet address */ + struct ether_addr bssid; /* wl if hwaddr which sta comes in */ + char ifname[IFNAMSIZ]; + ushort pae_state; + ushort pae_id; + uint32 mode; /* Authentication mode */ + uint8 eapol_version; /* eapol version */ +} eapd_sta_t; + +typedef struct eapd_socket { + char ifname[IFNAMSIZ]; + int drvSocket; /* raw socket to communicate with driver */ + int ifindex; + int inuseCount; + int flag; +} eapd_brcm_socket_t, eapd_preauth_socket_t; + +typedef struct eapd_cb { + char ifname[IFNAMSIZ]; + int flags; + eapd_brcm_socket_t *brcmSocket; + eapd_preauth_socket_t preauthSocket; /* only need by NAS */ + struct eapd_cb *next; +} eapd_cb_t; + +typedef struct eapd_app { + char ifnames[IFNAMSIZ * EAPD_WKSP_MAX_NO_IFNAMES]; /* interface names */ + int appSocket; /* loopback socket to communicate with application */ + uchar bitvec[WL_EVENTING_MASK_LEN]; /* for each application which need brcmevent */ + eapd_cb_t *cb; /* for each interface which running application */ +} eapd_app_t, eapd_wps_t, eapd_nas_t, eapd_ses_t, eapd_wai_t, eapd_dcs_t; + +typedef struct eapd_wksp { + uchar packet[EAPD_WKSP_RECV_DATA_MAX_LEN]; + int brcmSocketCount; + eapd_brcm_socket_t brcmSocket[EAPD_WKSP_MAX_NO_BRCM]; + eapd_sta_t sta[EAPD_WKSP_MAX_SUPPLICANTS]; + eapd_sta_t *sta_hashed[EAPD_WKSP_MAX_SUPPLICANTS]; + eapd_wps_t wps; + eapd_nas_t nas; + eapd_ses_t ses; + eapd_wai_t wai; + eapd_dcs_t dcs; + int flags; + fd_set fdset; + int fdmax; +} eapd_wksp_t; + +typedef enum { + EAPD_SEARCH_ONLY = 0, + EAPD_SEARCH_ENTER +} eapd_lookup_mode_t; + +typedef enum { + EAPD_STA_MODE_UNKNOW = 0, + EAPD_STA_MODE_WPS, + EAPD_STA_MODE_WPS_ENR, + EAPD_STA_MODE_SES, + EAPD_STA_MODE_NAS, + EAPD_STA_MODE_NAS_PSK, + EAPD_STA_MODE_WAI +} eapd_sta_mode_t; + +typedef enum { + EAPD_APP_UNKNOW = 0, + EAPD_APP_WPS, + EAPD_APP_SES, + EAPD_APP_NAS, + EAPD_APP_WAI, + EAPD_APP_DCS +} eapd_app_mode_t; + +/* PAE states */ +typedef enum { + EAPD_INITIALIZE = 0, + EAPD_IDENTITY +} eapd_pae_state_t; + +/* EAPD interface application capability */ +#define EAPD_CAP_SES 0x1 +#define EAPD_CAP_NAS 0x2 +#define EAPD_CAP_WPS 0x4 +#define EAPD_CAP_WAI 0x8 +#define EAPD_CAP_DCS 0x10 + +/* Apps */ +int wps_app_init(eapd_wksp_t *nwksp); +int wps_app_deinit(eapd_wksp_t *nwksp); +int wps_app_monitor_sendup(eapd_wksp_t *nwksp, uint8 *pData, int Len, char *from); +#if EAPD_WKSP_AUTO_CONFIG +int wps_app_enabled(char *name); +#endif +void wps_app_set_eventmask(eapd_app_t *app); +int wps_app_handle_event(eapd_wksp_t *nwksp, uint8 *pData, int Len, char *from); +void wps_app_recv_handler(eapd_wksp_t *nwksp, char *wlifname, eapd_cb_t *from, + uint8 *pData, int *pLen, struct ether_addr *ap_ea); + +int ses_app_init(eapd_wksp_t *nwksp); +int ses_app_deinit(eapd_wksp_t *nwksp); +int ses_app_sendup(eapd_wksp_t *nwksp, uint8 *pData, int pLen, char *fromlan); +#if EAPD_WKSP_AUTO_CONFIG +int ses_app_enabled(char *name); +#endif +void ses_app_set_eventmask(eapd_app_t *app); +int ses_app_handle_event(eapd_wksp_t *nwksp, uint8 *pData, int Len, char *from); +void ses_app_recv_handler(eapd_wksp_t *nwksp, char *wlifname, eapd_cb_t *from, + uint8 *pData, int *pLen); + +int nas_app_init(eapd_wksp_t *nwksp); +int nas_app_deinit(eapd_wksp_t *nwksp); +int nas_app_sendup(eapd_wksp_t *nwksp, uint8 *pData, int pLen, char *fromlan); +#if EAPD_WKSP_AUTO_CONFIG +int nas_app_enabled(char *name); +#endif +void nas_app_set_eventmask(eapd_app_t *app); +int nas_app_handle_event(eapd_wksp_t *nwksp, uint8 *pData, int Len, char *from); +void nas_app_recv_handler(eapd_wksp_t *nwksp, char *wlifname, eapd_cb_t *from, + uint8 *pData, int *pLen); + +int wai_app_init(eapd_wksp_t *nwksp); +int wai_app_deinit(eapd_wksp_t *nwksp); +int wai_app_sendup(eapd_wksp_t *nwksp, uint8 *pData, int pLen, char *fromlan); +#if EAPD_WKSP_AUTO_CONFIG +int wai_app_enabled(char *name); +#endif +void wai_app_set_eventmask(eapd_app_t *app); +int wai_app_handle_event(eapd_wksp_t *nwksp, uint8 *pData, int Len, char *from); +void wai_app_recv_handler(eapd_wksp_t *nwksp, eapd_cb_t *from, uint8 *pData, int *pLen); + +#ifdef BCM_DCS +int dcs_app_init(eapd_wksp_t *nwksp); +int dcs_app_deinit(eapd_wksp_t *nwksp); +int dcs_app_sendup(eapd_wksp_t *nwksp, uint8 *pData, int pLen, char *fromlan); +#if EAPD_WKSP_AUTO_CONFIG +int dcs_app_enabled(char *name); +#endif +void dcs_app_set_eventmask(eapd_app_t *app); +int dcs_app_handle_event(eapd_wksp_t *nwksp, uint8 *pData, int Len, char *from); +void dcs_app_recv_handler(eapd_wksp_t *nwksp, eapd_cb_t *from, + uint8 *pData, int *pLen); +#endif /* BCM_DCS */ + +/* OS independent function */ +void eapd_wksp_display_usage(void); +eapd_wksp_t * eapd_wksp_alloc_workspace(void); +int eapd_wksp_auto_config(eapd_wksp_t *nwksp); +int eapd_wksp_parse_cmd(int argc, char *argv[], eapd_wksp_t *nwksp); +int eapd_wksp_init(eapd_wksp_t *nwksp); +void eapd_wksp_dispatch(eapd_wksp_t *nwksp); +int eapd_wksp_deinit(eapd_wksp_t *nwksp); +void eapd_wksp_free_workspace(eapd_wksp_t * nwksp); +int eapd_wksp_main_loop(eapd_wksp_t *nwksp); +void eapd_wksp_cleanup(eapd_wksp_t *nwksp); +void eapd_wksp_clear_inited(void); +int eapd_wksp_is_inited(void); + +eapd_sta_t* sta_lookup(eapd_wksp_t *nwksp, struct ether_addr *sta_ea, struct ether_addr *bssid_ea, + char *ifname, eapd_lookup_mode_t mode); +void sta_remove(eapd_wksp_t *nwksp, eapd_sta_t *sta); + +eapd_brcm_socket_t* eapd_add_brcm(eapd_wksp_t *nwksp, char *ifname); +int eapd_del_brcm(eapd_wksp_t *nwksp, eapd_brcm_socket_t *sock); +eapd_brcm_socket_t* eapd_find_brcm(eapd_wksp_t *nwksp, char *ifname); + +void eapd_brcm_recv_handler(eapd_wksp_t *nwksp, eapd_brcm_socket_t *from, uint8 *pData, int *pLen); +#ifdef BCMWPA2 +extern void eapd_preauth_recv_handler(eapd_wksp_t *nwksp, char *from, uint8 *pData, int *pLen); +#endif + +/* OS dependent function */ +void eapd_eapol_canned_send(eapd_wksp_t *nwksp, struct eapd_socket *Socket, eapd_sta_t *sta, + unsigned char code, unsigned char type); +void eapd_message_send(eapd_wksp_t *nwksp, struct eapd_socket *Socket, uint8 *pData, int pLen); +int eapd_brcm_open(eapd_wksp_t *nwksp, eapd_brcm_socket_t *sock); +int eapd_brcm_close(int drvSocket); +#ifdef BCMWPA2 +int eapd_preauth_open(eapd_wksp_t *nwksp, eapd_preauth_socket_t *sock); +int eapd_preauth_close(int drvSocket); +#endif +int eapd_safe_get_conf(char *outval, int outval_size, char *name); + +#endif /* _EAPD_H_ */ diff --git a/release/src-rt/wl/eapd/eapd_ecos.c b/release/src-rt/wl/eapd/eapd_ecos.c new file mode 100644 index 0000000000..dee5638828 --- /dev/null +++ b/release/src-rt/wl/eapd/eapd_ecos.c @@ -0,0 +1,263 @@ +/* + * Ecos-specific portion of EAPD + * (OS dependent file) + * + * Copyright (C) 2010, Broadcom Corporation + * All Rights Reserved. + * + * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation; + * the contents of this file may not be disclosed to third parties, copied + * or duplicated in any form, in whole or in part, without the prior + * written permission of Broadcom Corporation. + * + * $Id: eapd_ecos.c 241391 2011-02-18 03:35:48Z stakita $ + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +static eapd_wksp_t *eapd_nwksp = NULL; + +static cyg_handle_t eapd_main_hdl; +static char eapd_main_stack[8*1024]; +static cyg_thread eapd_thread; +static int _eapd_pid = 0; + +static void +eapd_hup_hdlr(int sig) +{ + if (eapd_nwksp) + eapd_nwksp->flags |= EAPD_WKSP_FLAG_SHUTDOWN; + + return; +} + +void +eapd_dump_hdlr(int sig) +{ + if (eapd_nwksp) + eapd_nwksp->flags |= EAPD_WKSP_FLAG_DUMP; + + return; +} + +/* Send a canned EAPOL packet */ +void +eapd_eapol_canned_send(eapd_wksp_t *nwksp, struct eapd_socket *Socket, eapd_sta_t *sta, + unsigned char code, unsigned char type) +{ + eapol_header_t eapol; + eap_header_t eap; + int len; + char *packet; + char *ptr; + + memcpy(&eapol.eth.ether_dhost, &sta->ea, ETHER_ADDR_LEN); + memcpy(&eapol.eth.ether_shost, &sta->bssid, ETHER_ADDR_LEN); + + eapol.eth.ether_type = htons(ETHER_TYPE_802_1X); + eapol.version = sta->eapol_version; + eapol.type = EAP_PACKET; + /* With type, eap.type is used. So, the legnth will be 4+1 */ + len = type ? (EAP_HEADER_LEN + 1) : EAP_HEADER_LEN; + eapol.length = htons(len); + + eap.code = code; + eap.id = sta->pae_id; + eap.length = eapol.length; + + /* This is optional, if type is 0, this field won't be used. */ + eap.type = type; + + /* Allocate a buffer to send ? */ + packet = (char *)malloc(EAPOL_HEADER_LEN + len); + if (packet == NULL) + return; + + ptr = packet; + memcpy(ptr, &eapol, EAPOL_HEADER_LEN); + + ptr += EAPOL_HEADER_LEN; + memcpy(ptr, &eap, len); + + /* Write to device */ + write(Socket->drvSocket, packet, len + EAPOL_HEADER_LEN); + + free(packet); + return; +} + +void +eapd_message_send(eapd_wksp_t *nwksp, struct eapd_socket *Socket, uint8 *pData, int pLen) +{ + /* We should handle fragment here */ + write(Socket->drvSocket, pData, pLen); +} + +int +eapd_brcm_open(eapd_wksp_t *nwksp, eapd_brcm_socket_t *sock) +{ + char devname[32]; + + if (nwksp == NULL || sock == NULL) { + EAPD_ERROR("Wrong arguments...\n"); + return -1; + } + + sprintf(devname, "/dev/net/eapol/%s/%d", sock->ifname, ETHER_TYPE_BRCM); + sock->drvSocket = open(devname, O_RDWR); + if (sock->drvSocket < 0) { + EAPD_ERROR("open socket error!!\n"); + return -1; + } + + /* at least one use it */ + sock->inuseCount = 1; + + EAPD_INFO("%s: BRCM socket %d opened\n", sock->ifname, sock->drvSocket); + + return 0; +} + +int +eapd_brcm_close(int drvSocket) +{ + close(drvSocket); + return 0; +} + +#ifdef BCMWPA2 +int +eapd_preauth_open(eapd_wksp_t *nwksp, eapd_preauth_socket_t *sock) +{ + char devname[32]; + + if (nwksp == NULL || sock == NULL) { + EAPD_ERROR("Wrong arguments...\n"); + return -1; + } + + sprintf(devname, "/dev/net/eapol/%s/%d", sock->ifname, ETHER_TYPE_802_1X_PREAUTH); + sock->drvSocket = open(devname, O_RDWR); + if (sock->drvSocket < 0) { + EAPD_ERROR("open socket error!!\n"); + return -1; + } + + /* at least one use it */ + sock->inuseCount = 1; + + EAPD_INFO("%s: preauth socket %d opened\n", sock->ifname, sock->drvSocket); + + return 0; +} + +int +eapd_preauth_close(int drvSocket) +{ + close(drvSocket); + return 0; +} +#endif /* BCMWPA2 */ + +/* + * Configuration APIs + */ +int eapd_safe_get_conf(char *outval, int outval_size, char *name) +{ + char *val; + + if (name == NULL || outval == NULL) { + if (outval) + memset(outval, 0, outval_size); + return -1; + } + + val = nvram_safe_get(name); + if (!strcmp(val, "")) + memset(outval, 0, outval_size); + else + snprintf(outval, outval_size, "%s", val); + return 0; +} + +int eapd_main(void) +{ +#ifdef BCMDBG + char *dbg; + + /* get eapd_msg_level from nvram */ + if ((dbg = nvram_safe_get("eapd_dbg"))) { + eapd_msg_level = (uint)strtoul(dbg, NULL, 0); + } +#endif /* BCMDBG */ + + EAPD_INFO("EAP Dispatch Start...\n"); + + /* fill up EAPD task pid */ + _eapd_pid = oslib_pid(); + + /* alloc eapd work space */ + if (!(eapd_nwksp = eapd_wksp_alloc_workspace())) { + EAPD_ERROR("Unable to allocate wksp memory. Quitting...\n"); + return -1; + } + + if (eapd_wksp_auto_config(eapd_nwksp)) { + EAPD_ERROR("Unable to auto config. Quitting...\n"); + eapd_wksp_cleanup(eapd_nwksp); + return -1; + } + + /* run main loop to dispatch messages */ + eapd_wksp_main_loop(eapd_nwksp); + + return 0; +} + +void +eapd_start(void) +{ + if (!_eapd_pid || + !oslib_waitpid(_eapd_pid, NULL)) { + cyg_thread_create(7, + (cyg_thread_entry_t *)eapd_main, + (cyg_addrword_t)NULL, + "EAPD", + eapd_main_stack, + sizeof(eapd_main_stack), + &eapd_main_hdl, + &eapd_thread); + cyg_thread_resume(eapd_main_hdl); + EAPD_PRINT("EAPD task started\n"); + } +} + +void +eapd_stop(void) +{ + if (_eapd_pid) { + /* set stop flag */ + eapd_hup_hdlr(0); + + /* wait till the eapd_main task is dead */ + while (oslib_waitpid(_eapd_pid, NULL)) + cyg_thread_delay(10); + _eapd_pid = 0; + EAPD_PRINT("EAPD task stopped\n"); + } +} diff --git a/release/src-rt/wl/eapd/eapd_linux.c b/release/src-rt/wl/eapd/eapd_linux.c new file mode 100644 index 0000000000..ee99acbb4d --- /dev/null +++ b/release/src-rt/wl/eapd/eapd_linux.c @@ -0,0 +1,321 @@ +/* + * Linux-specific portion of EAPD + * (OS dependent file) + * + * Copyright (C) 2010, Broadcom Corporation + * All Rights Reserved. + * + * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation; + * the contents of this file may not be disclosed to third parties, copied + * or duplicated in any form, in whole or in part, without the prior + * written permission of Broadcom Corporation. + * + * $Id: eapd_linux.c 241391 2011-02-18 03:35:48Z stakita $ + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +static eapd_wksp_t *eapd_nwksp = NULL; + +static void +eapd_hup_hdlr(int sig) +{ + if (eapd_nwksp) + eapd_nwksp->flags |= EAPD_WKSP_FLAG_SHUTDOWN; + + return; +} + +#ifdef EAPDDUMP +static void +eapd_dump_hdlr(int sig) +{ + if (eapd_nwksp) + eapd_nwksp->flags |= EAPD_WKSP_FLAG_DUMP; + + return; +} +#endif + +static int +eapd_send(eapd_wksp_t *nwksp, int drvSocket, struct iovec *frags, int nfrags) +{ + struct msghdr mh; + + memset(&mh, 0, sizeof(mh)); + mh.msg_name = (caddr_t) NULL; + mh.msg_namelen = 0; + mh.msg_iov = frags; + mh.msg_iovlen = nfrags; + + if (sendmsg(drvSocket, &mh, 0) < 0) { + EAPD_ERROR("send error %d to drvSocket %d\n", errno, drvSocket); + return errno; + } + else { + EAPD_INFO("send successful on drvSocket %d\n", drvSocket); + } + + return 0; +} + +/* Send a canned EAPOL packet */ +void +eapd_eapol_canned_send(eapd_wksp_t *nwksp, struct eapd_socket *Socket, eapd_sta_t *sta, + unsigned char code, unsigned char type) +{ + eapol_header_t eapol; + eap_header_t eap; + struct iovec frags[2]; + + memcpy(&eapol.eth.ether_dhost, &sta->ea, ETHER_ADDR_LEN); + memcpy(&eapol.eth.ether_shost, &sta->bssid, ETHER_ADDR_LEN); + + eapol.eth.ether_type = htons(ETHER_TYPE_802_1X); + eapol.version = sta->eapol_version; + eapol.type = EAP_PACKET; + eapol.length = htons(type ? (EAP_HEADER_LEN + 1) : EAP_HEADER_LEN); + + eap.code = code; + eap.id = sta->pae_id; + eap.length = eapol.length; + eap.type = type; + + frags[0].iov_base = (caddr_t) &eapol; + frags[0].iov_len = EAPOL_HEADER_LEN; + frags[1].iov_base = (caddr_t) &eap; + frags[1].iov_len = ntohs(eapol.length); + + eapd_send(nwksp, Socket->drvSocket, frags, 2); +} + +void +eapd_message_send(eapd_wksp_t *nwksp, struct eapd_socket *Socket, uint8 *pData, int pLen) +{ + struct iovec frags[1]; + + frags[0].iov_base = (caddr_t) pData; + frags[0].iov_len = pLen; + + eapd_send(nwksp, Socket->drvSocket, frags, 1); +} + +int +eapd_brcm_open(eapd_wksp_t *nwksp, eapd_brcm_socket_t *sock) +{ + struct ifreq ifr; + struct sockaddr_ll ll; + + if (nwksp == NULL || sock == NULL) { + EAPD_ERROR("Wrong arguments...\n"); + return -1; + } + + sock->drvSocket = socket(PF_PACKET, SOCK_RAW, htons(ETHER_TYPE_BRCM)); + if (sock->drvSocket < 0) { + EAPD_ERROR("open socket error!!\n"); + return -1; + } + + memset(&ifr, 0, sizeof(ifr)); + + strcpy(ifr.ifr_name, sock->ifname); + if (ioctl(sock->drvSocket, SIOCGIFINDEX, &ifr) != 0) { + EAPD_ERROR("%s, ioctl(SIOCGIFINDEX), close drvSocket %d\n", + sock->ifname, sock->drvSocket); + close(sock->drvSocket); + sock->drvSocket = -1; + return -1; + } + + sock->ifindex = ifr.ifr_ifindex; + memset(&ll, 0, sizeof(ll)); + ll.sll_family = AF_PACKET; + ll.sll_protocol = htons(ETHER_TYPE_BRCM); + ll.sll_ifindex = sock->ifindex; + + if (bind(sock->drvSocket, (struct sockaddr *) &ll, sizeof(ll)) < 0) { + EAPD_ERROR("%s, bind fail, close drvSocket %d!!\n", + sock->ifname, sock->drvSocket); + close(sock->drvSocket); + sock->drvSocket = -1; + return -1; + } + /* at least one use it */ + sock->inuseCount = 1; + + EAPD_INFO("%s: BRCM socket %d opened\n", ifr.ifr_name, sock->drvSocket); + + return 0; +} + +int +eapd_brcm_close(int drvSocket) +{ + close(drvSocket); + return 0; +} + +#ifdef BCMWPA2 +int +eapd_preauth_open(eapd_wksp_t *nwksp, eapd_preauth_socket_t *sock) +{ + struct ifreq ifr; + struct sockaddr_ll ll; + + if (nwksp == NULL || sock == NULL) { + EAPD_ERROR("Wrong arguments...\n"); + return -1; + } + + sock->drvSocket = socket(PF_PACKET, SOCK_RAW, htons(ETHER_TYPE_802_1X_PREAUTH)); + if (sock->drvSocket < 0) { + EAPD_ERROR("open socket error!!\n"); + return -1; + } + + memset(&ifr, 0, sizeof(ifr)); + + strcpy(ifr.ifr_name, sock->ifname); + if (ioctl(sock->drvSocket, SIOCGIFINDEX, &ifr) != 0) { + EAPD_ERROR("%s, ioctl(SIOCGIFINDEX), close drvSocket %d\n", + sock->ifname, sock->drvSocket); + close(sock->drvSocket); + sock->drvSocket = -1; + return -1; + } + + sock->ifindex = ifr.ifr_ifindex; + memset(&ll, 0, sizeof(ll)); + ll.sll_family = AF_PACKET; + ll.sll_protocol = htons(ETHER_TYPE_802_1X_PREAUTH); + ll.sll_ifindex = sock->ifindex; + + if (bind(sock->drvSocket, (struct sockaddr *) &ll, sizeof(ll)) < 0) { + EAPD_ERROR("%s, bind fail, close drvSocket %d!!\n", sock->ifname, sock->drvSocket); + close(sock->drvSocket); + sock->drvSocket = -1; + return -1; + } + /* at least one use it */ + sock->inuseCount = 1; + + EAPD_INFO("%s: preauth socket %d opened\n", ifr.ifr_name, sock->drvSocket); + + return 0; +} + +int +eapd_preauth_close(int drvSocket) +{ + close(drvSocket); + return 0; +} +#endif /* BCMWPA2 */ + +/* + * Configuration APIs + */ +int +eapd_safe_get_conf(char *outval, int outval_size, char *name) +{ + char *val; + + if (name == NULL || outval == NULL) { + if (outval) + memset(outval, 0, outval_size); + return -1; + } + + val = nvram_safe_get(name); + if (!strcmp(val, "")) + memset(outval, 0, outval_size); + else + snprintf(outval, outval_size, "%s", val); + return 0; +} + +int main(int argc, char* argv[]) +{ +#ifdef BCMDBG + char *dbg; +#endif + +#ifdef BCMDBG + /* display usage if nothing is specified */ + if (argc == 2 && + (!strncmp(argv[1], "-h", 2) || + !strncmp(argv[1], "-H", 2))) { + eapd_wksp_display_usage(); + return 0; + } + + /* get eapd_msg_level from nvram */ + if ((dbg = nvram_get("eapd_dbg"))) { + eapd_msg_level = (uint)strtoul(dbg, NULL, 0); + } + +#endif + EAPD_INFO("EAP Dispatch Start...\n"); + /* alloc eapd work space */ + if (!(eapd_nwksp = eapd_wksp_alloc_workspace())) { + EAPD_ERROR("Unable to allocate wksp memory. Quitting...\n"); + return -1; + } + +#if EAPD_WKSP_AUTO_CONFIG + /* auto config */ + if (argc == 1) { + if (eapd_wksp_auto_config(eapd_nwksp)) { + EAPD_ERROR("Unable to auto config. Quitting...\n"); + eapd_wksp_cleanup(eapd_nwksp); + return -1; + } + } + else if (eapd_wksp_parse_cmd(argc, argv, eapd_nwksp)) { + EAPD_ERROR("Command line parsing error. Quitting...\n"); + eapd_wksp_cleanup(eapd_nwksp); + return -1; + } +#else /* EAPD_WKSP_AUTO_CONFIG */ + /* parse arguments in parse mode */ + if (eapd_wksp_parse_cmd(argc, argv, eapd_nwksp)) { + EAPD_ERROR("Command line parsing error. Quitting...\n"); + eapd_wksp_cleanup(eapd_nwksp); + return -1; + } +#endif /* EAPD_WKSP_AUTO_CONFIG */ + + /* establish a handler to handle SIGTERM. */ + signal(SIGTERM, eapd_hup_hdlr); + +#ifdef EAPDDUMP + signal(SIGUSR1, eapd_dump_hdlr); +#endif + + /* run main loop to dispatch messages */ + eapd_wksp_main_loop(eapd_nwksp); + + EAPD_INFO("EAP Dispatcher Stopped...\n"); + + return 0; +} diff --git a/release/src-rt/wl/eapd/eapd_vx.c b/release/src-rt/wl/eapd/eapd_vx.c new file mode 100644 index 0000000000..ac282a07c1 --- /dev/null +++ b/release/src-rt/wl/eapd/eapd_vx.c @@ -0,0 +1,803 @@ +/* + * vxWorks-specific portion of EAPD + * (OS dependent file) + * + * Copyright (C) 2010, Broadcom Corporation + * All Rights Reserved. + * + * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation; + * the contents of this file may not be disclosed to third parties, copied + * or duplicated in any form, in whole or in part, without the prior + * written permission of Broadcom Corporation. + * + * $Id: eapd_vx.c 241391 2011-02-18 03:35:48Z stakita $ + */ + +#include +#include +#include +#include +#include + +#include +#include + +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +extern int sysClkRateGet(void); + +static eapd_wksp_t *eapd_nwksp = NULL; + +#define VX_MUX_MAX_OBJS EAPD_WKSP_MAX_NO_BRCM + EAPD_WKSP_MAX_NO_BRIDGE +typedef struct vx_mux_obj { + void *pCookie; + int lbSocket; + short lbPort; + short used; +} vx_mux_obj_t; +static vx_mux_obj_t muxobjs[VX_MUX_MAX_OBJS]; + +typedef struct pif2index { + char ifname[IFNAMSIZ]; + int idx; +} pif2index_t; + +static pif2index_t if2index[] = { + {"wl", 1}, + {"et", 2}, + {"vl", 3}, + {"mirror", 4} +}; + +#ifdef BCMWPA2 +#define CHECK_ETHER_TYPE(type) (((type) == ETHER_TYPE_BRCM) || \ + ((type) == ETHER_TYPE_802_1X_PREAUTH)) +#else +#define CHECK_ETHER_TYPE(type) ((type) == ETHER_TYPE_BRCM) +#endif /* BCMWPA2 */ + +static void +eapd_hup_hdlr(int sig) +{ + if (eapd_nwksp) + eapd_nwksp->flags |= EAPD_WKSP_FLAG_SHUTDOWN; + + return; +} + +#ifdef EAPDDUMP +static void +eapd_dump_hdlr(int sig) +{ + if (eapd_nwksp) + eapd_nwksp->flags |= EAPD_WKSP_FLAG_DUMP; + + return; +} +#endif + +/* parse interface name and retrieve device name and unit number */ +static int +_ifunit_(char *ifname, char *dev, int *unit) +{ + /* Parse unit number */ + for (*dev = *ifname; *dev != EOS && !isdigit((int)*dev); *dev = *ifname) { + dev++; + ifname++; + } + if (*dev != EOS) { + *dev = 0; + *unit = atoi(ifname); + return OK; + } + + return ERROR; +} + +static int +_get_lbport_(char *dev, int unit, int type) +{ + /* wl, et, vl, mirror */ + int i, base, if2indexsz; + + if2indexsz = sizeof(if2index) / sizeof(pif2index_t); + base = EAPD_WKSP_NAS_UDP_SPORT + EAPD_WKSP_VX_PORT_OFFSET; + + if (!CHECK_ETHER_TYPE(type)) + return -1; + + for (i = 0; i < if2indexsz; i++) { + if (!strcmp(if2index[i].ifname, dev)) + break; + } + if (i == if2indexsz) + return -1; + + base += if2index[i].idx; + base += unit; + base += (type & 0xff); + + return base; +} + +static void +muxobj_init() +{ + int i; + + memset(muxobjs, 0, sizeof(muxobjs)); + for (i = 0; i < VX_MUX_MAX_OBJS; i++) + muxobjs[i].lbSocket = -1; +} + +static vx_mux_obj_t * +muxobj_find(int lbSocket) +{ + int i; + + if (lbSocket < 0) + return NULL; + + for (i = 0; i < VX_MUX_MAX_OBJS; i++) { + if ((lbSocket == muxobjs[i].lbSocket) && + muxobjs[i].used) + return (&muxobjs[i]); + } + + return NULL; +} + +static vx_mux_obj_t * +muxobj_get() +{ + int i; + + for (i = 0; i < VX_MUX_MAX_OBJS; i++) { + if (muxobjs[i].used == 0) { + muxobjs[i].used = 1; + return (&muxobjs[i]); + } + } + + return NULL; +} + +static int +muxobj_free(vx_mux_obj_t *muxobj) +{ + if (muxobj) { + memset(muxobj, 0, sizeof(vx_mux_obj_t)); + muxobj->lbSocket = -1; + return 0; + } + + return -1; +} + +/* +* A network service that receives and processes the messages +* sent from wireless END driver (assoc/disassoc) thru MUX. +*/ +/* service - shutdown routine - END */ +static STATUS +stop_brcm_svc(void *param, void *spare) +{ + return OK; +} + +/* send it to loopback socket, eapd receive it in vxWorks platform */ +static BOOL +recv_brcm_msg(void *param, long type, + M_BLK_ID mbuf, LL_HDR_INFO *llhdr, void *spare) +{ + uint8 *pkt = mbuf->mBlkHdr.mData; + int bytes = mbuf->mBlkHdr.mLen; + vx_mux_obj_t *muxobj = (vx_mux_obj_t *)spare; + + /* send this date to lbSocket */ + if (muxobj->lbSocket >= 0) { + int sentBytes = 0; + struct sockaddr_in to; + + to.sin_addr.s_addr = inet_addr(EAPD_WKSP_UDP_ADDR); + to.sin_family = AF_INET; + to.sin_port = htons(muxobj->lbPort); + + sentBytes = sendto(muxobj->lbSocket, pkt, bytes, 0, + (struct sockaddr *)&to, sizeof(struct sockaddr_in)); + + if (sentBytes != bytes) { + EAPD_ERROR("UDP send failed; sentBytes = %d\n", sentBytes); + } + else { + /* EAPD_ERROR("Send %d bytes to eapd\n", sentBytes); */ + } + } + else { + EAPD_ERROR("eapd vxWorks lbSocket not created\n"); + } + + /* Mesage is ours */ + netMblkClChainFree(mbuf); + + return TRUE; +} + +/* service - error notification - END */ +static void +notify_brcm_error(END_OBJ *end, END_ERR *error, void *spare) +{ +} + +/* service - restart - END */ +static STATUS +restart_brcm_svc(void *param, void *spare) +{ + return OK; +} + +#ifdef BCMWPA2 +static STATUS +stop_preauth_svc(void *param, void *spare) +{ + return OK; +} + +/* send it to loopback socket, eapd receive it in vxWorks platform */ +static BOOL +recv_preauth_msg(void *param, long type, M_BLK_ID mbuf, + LL_HDR_INFO *llhdr, void *spare) +{ + uint8 *pkt = mbuf->mBlkHdr.mData; + int bytes = mbuf->mBlkHdr.mLen; + vx_mux_obj_t *muxobj = (vx_mux_obj_t *)spare; + + /* send this date to lbSocket */ + if (muxobj->lbSocket >= 0) { + int sentBytes = 0; + struct sockaddr_in to; + + to.sin_addr.s_addr = inet_addr(EAPD_WKSP_UDP_ADDR); + to.sin_family = AF_INET; + to.sin_port = htons(muxobj->lbPort); + + sentBytes = sendto(muxobj->lbSocket, pkt, bytes, 0, + (struct sockaddr *)&to, sizeof(struct sockaddr_in)); + + if (sentBytes != bytes) { + EAPD_ERROR("UDP send failed; sentBytes = %d\n", sentBytes); + } + else { + /* EAPD_ERROR("Send %d bytes to eapd\n", sentBytes); */ + } + } + else { + EAPD_ERROR("eapd vxWorks lbSocket not created\n"); + } + + /* Mesage is ours */ + netMblkClChainFree(mbuf); + + return TRUE; +} + +/* service - error notification - END */ +static void +notify_preauth_error(END_OBJ *end, END_ERR *error, void *spare) +{ +} + +/* service - restart - END */ +static STATUS +restart_preauth_svc(void *param, void *spare) +{ + return OK; +} +#endif /* BCMWPA2 */ + +#include +static M_BLK_ID _mblk_(vx_mux_obj_t *muxobj, uint8 *pkt, int len) +{ + END_OBJ *end; + M_BLK_ID m; + + /* size requested should fit in our cluster buffer */ + if (len >= 1900) + { + EAPD_ERROR("packet is too big %d on drvSocket %d\n", len, muxobj->lbSocket); + return NULL; + } + + /* muxobj->pCookie is a mux cookie */ + end = PCOOKIE_TO_ENDOBJ(muxobj->pCookie); + + /* alloc packet from pool and copy data */ + if ((m = netTupleGet(end->pNetPool, len, M_DONTWAIT, MT_DATA, FALSE))) + { + /* reserve a few bytes */ + m->mBlkHdr.mLen = len; + + /* ensure the cookie field is cleared */ + m->mBlkPktHdr.len = 0; + + /* copy packet content */ + bcopy(pkt, m->mBlkHdr.mData, len); + } + else { + EAPD_ERROR("netTupleGet error 0x%x, end = 0x%x end->pNetPool = 0x%x, pCookie=" + "0x%x\n", errno, (int)end, (int)end->pNetPool, (int)muxobj->pCookie); + } + + return m; +} + +static int +eapd_send(eapd_wksp_t *nwksp, int drvSocket, struct iovec *frags, int nfrags) +{ + struct mbuf *mbuf; + int i, count; + char *buf; + STATUS status; + vx_mux_obj_t *muxobj; + + /* find muxobj from drvSocket */ + if ((muxobj = muxobj_find(drvSocket)) == NULL) { + EAPD_ERROR("can not find muxobj from drvSocket %d\n", drvSocket); + return -1; + } + + /* Convert iov to mbuf chain */ + if (nfrags > 1) { + for (i = 0, count = 0; i < nfrags; i++) + count += frags[i].iov_len; + if (!(buf = malloc(count))) { + EAPD_ERROR("malloc error on drvSocket %d\n", drvSocket); + return errno; + } + for (i = 0, count = 0; i < nfrags; i++) { + memcpy(&buf[count], frags[i].iov_base, frags[i].iov_len); + count += frags[i].iov_len; + } + mbuf = _mblk_(muxobj, (void *)buf, count); + free(buf); + } + else if (nfrags == 1) { + mbuf = _mblk_(muxobj, (void *)frags[0].iov_base, frags[0].iov_len); + } + else { + EAPD_ERROR("nfrags == 0 error on drvSocket %d\n", drvSocket); + return EINVAL; + } + + if (!mbuf) { + EAPD_ERROR("failed to allocate mblk on drvSocket %d\n", drvSocket); + return ERROR; + } + + /* send packet to network thru the interface */ + status = muxSend(muxobj->pCookie, mbuf); + if (status == END_ERR_BLOCK) { + EAPD_ERROR("send error %d to drvSocket %d\n", errno, drvSocket); + netMblkClChainFree(mbuf); + } + return status; +} + +/* Send a canned EAPOL packet */ +void +eapd_eapol_canned_send(eapd_wksp_t *nwksp, struct eapd_socket *Socket, eapd_sta_t *sta, + unsigned char code, unsigned char type) +{ + eapol_header_t eapol; + eap_header_t eap; + struct iovec frags[2]; + + memcpy(&eapol.eth.ether_dhost, &sta->ea, ETHER_ADDR_LEN); + memcpy(&eapol.eth.ether_shost, &sta->bssid, ETHER_ADDR_LEN); + + eapol.eth.ether_type = htons(ETHER_TYPE_802_1X); + eapol.version = sta->eapol_version; + eapol.type = EAP_PACKET; + eapol.length = htons(type ? (EAP_HEADER_LEN + 1) : EAP_HEADER_LEN); + + eap.code = code; + eap.id = sta->pae_id; + eap.length = eapol.length; + eap.type = type; + + frags[0].iov_base = (caddr_t) &eapol; + frags[0].iov_len = EAPOL_HEADER_LEN; + frags[1].iov_base = (caddr_t) &eap; + frags[1].iov_len = ntohs(eapol.length); + + eapd_send(nwksp, Socket->drvSocket, frags, 2); +} + +void +eapd_message_send(eapd_wksp_t *nwksp, struct eapd_socket *Socket, uint8 *pData, int pLen) +{ + struct iovec frags[1]; + + frags[0].iov_base = (caddr_t) pData; + frags[0].iov_len = pLen; + + eapd_send(nwksp, Socket->drvSocket, frags, 1); +} + +int +eapd_brcm_open(eapd_wksp_t *nwksp, eapd_brcm_socket_t *sock) +{ + int unit, lbport, reuse = 1; + char dev[16]; + vx_mux_obj_t *muxobj; + struct sockaddr_in addr; + + + if (nwksp == NULL || sock == NULL) { + EAPD_ERROR("Wrong arguments...\n"); + return -1; + } + + /* retrieve interface dev name and index */ + _ifunit_(sock->ifname, dev, &unit); + + lbport = _get_lbport_(dev, unit, ETHER_TYPE_BRCM); + if (lbport == -1) { + EAPD_ERROR("%s: can not get a loopback bind port ...\n", sock->ifname); + return -1; + } + + /* check if the dev is an NPT/END complaint driver */ + if (muxTkDrvCheck(dev) != 0) { + EAPD_ERROR("%s: not an NTP/END complaint driver ...\n", dev); + return -1; + } + + /* open a udp loopback for this ifname and type */ + sock->drvSocket = socket(AF_INET, SOCK_DGRAM, 0); + if (sock->drvSocket < 0) { + EAPD_ERROR("UDP Open failed.\n"); + return -1; + } + if (setsockopt(sock->drvSocket, SOL_SOCKET, SO_REUSEPORT, (char*)&reuse, + sizeof(reuse)) < 0) { + EAPD_ERROR("UDP setsockopt failed.\n"); + close(sock->drvSocket); + sock->drvSocket = -1; + return -1; + } + + memset(&addr, 0, sizeof(struct sockaddr_in)); + addr.sin_family = AF_INET; + addr.sin_addr.s_addr = INADDR_ANY; + addr.sin_port = htons(lbport); + if (bind(sock->drvSocket, (struct sockaddr *)&addr, sizeof(addr)) < 0) { + EAPD_ERROR("UDP Bind failed, close brcm lbSocket %d\n", sock->drvSocket); + close(sock->drvSocket); + sock->drvSocket = -1; + return -1; + } + EAPD_INFO("%s: BRCM socket %d opened\n", sock->ifname, sock->drvSocket); + + if ((muxobj = muxobj_get()) == NULL) { + EAPD_ERROR("%s: can not get a local muxobj ...\n", sock->ifname); + close(sock->drvSocket); + sock->drvSocket = -1; + return -1; + } + + /* bind the service to the END driver */ + if (!(muxobj->pCookie = muxBind(dev, unit, + recv_brcm_msg, stop_brcm_svc, + restart_brcm_svc, notify_brcm_error, + ETHER_TYPE_BRCM, "BRCMEVT", muxobj))) { + EAPD_ERROR("%s: failed to open brcm muxsocket (%x)\n", sock->ifname, errnoGet()); + close(sock->drvSocket); + sock->drvSocket = -1; + muxobj_free(muxobj); + return -1; + } + + /* at least one use it */ + sock->inuseCount = 1; + muxobj->lbSocket = sock->drvSocket; + muxobj->lbPort = lbport; + + EAPD_INFO("%s: BRCM muxsocket %08x opened\n", sock->ifname, (int)muxobj->pCookie); + + return 0; +} + +int +eapd_brcm_close(int drvSocket) +{ + int ret; + vx_mux_obj_t *muxobj; + + if (drvSocket < 0) + return -1; + + muxobj = muxobj_find(drvSocket); + if (muxobj) { + ret = muxUnbind((void *)muxobj->pCookie, ETHER_TYPE_BRCM, recv_brcm_msg); + if (ret) { + EAPD_ERROR("brcm close failed 0x%x, drvSocket %d muxsocket %08x\n", + errno, drvSocket, (int)muxobj->pCookie); + } + muxobj_free(muxobj); + } + else { + EAPD_ERROR("muxobj not found drvSocket %d\n", drvSocket); + } + + /* close lbsocket */ + close(drvSocket); + + return 0; +} + +#ifdef BCMWPA2 +int +eapd_preauth_open(eapd_wksp_t *nwksp, eapd_preauth_socket_t *sock) +{ + int unit, lbport, reuse = 1; + char dev[16]; + vx_mux_obj_t *muxobj; + struct sockaddr_in addr; + + + if (nwksp == NULL || sock == NULL) { + EAPD_ERROR("Wrong arguments...\n"); + return -1; + } + + /* retrieve interface dev name and index */ + _ifunit_(sock->ifname, dev, &unit); + + lbport = _get_lbport_(dev, unit, ETHER_TYPE_802_1X_PREAUTH); + if (lbport == -1) { + EAPD_ERROR("%s: can not get a loopback bind port ...\n", sock->ifname); + return -1; + } + + /* check if the dev is an NPT/END complaint driver */ + if (muxTkDrvCheck(dev) != 0) { + EAPD_ERROR("%s: not an NTP/END complaint driver ...\n", dev); + return -1; + } + + /* open a udp loopback for this ifname and type */ + sock->drvSocket = socket(AF_INET, SOCK_DGRAM, 0); + if (sock->drvSocket < 0) { + EAPD_ERROR("UDP Open failed.\n"); + return -1; + } + if (setsockopt(sock->drvSocket, SOL_SOCKET, SO_REUSEPORT, (char*)&reuse, + sizeof(reuse)) < 0) { + EAPD_ERROR("UDP setsockopt failed.\n"); + close(sock->drvSocket); + sock->drvSocket = -1; + return -1; + } + + memset(&addr, 0, sizeof(struct sockaddr_in)); + addr.sin_family = AF_INET; + addr.sin_addr.s_addr = INADDR_ANY; + addr.sin_port = htons(lbport); + if (bind(sock->drvSocket, (struct sockaddr *)&addr, sizeof(addr)) < 0) { + EAPD_ERROR("UDP Bind failed, close brcm lbSocket %d\n", sock->drvSocket); + close(sock->drvSocket); + sock->drvSocket = -1; + return -1; + } + EAPD_INFO("%s: preauth socket %d opened\n", sock->ifname, sock->drvSocket); + + if ((muxobj = muxobj_get()) == NULL) { + EAPD_ERROR("%s: can not get a local muxobj ...\n", sock->ifname); + close(sock->drvSocket); + sock->drvSocket = -1; + return -1; + } + + /* bind the service to the END driver */ + if (!(muxobj->pCookie = muxBind(dev, unit, + recv_preauth_msg, stop_preauth_svc, + restart_preauth_svc, notify_preauth_error, + ETHER_TYPE_802_1X_PREAUTH, "PREAUTH", muxobj))) { + EAPD_ERROR("%s: failed to open preauth muxsocket (%x)\n", sock->ifname, errnoGet()); + close(sock->drvSocket); + sock->drvSocket = -1; + muxobj_free(muxobj); + return -1; + } + + /* at least one use it */ + sock->inuseCount = 1; + muxobj->lbSocket = sock->drvSocket; + muxobj->lbPort = lbport; + + EAPD_INFO("%s: preauth muxsocket %08x opened\n", sock->ifname, (int)muxobj->pCookie); + + return 0; +} + +int +eapd_preauth_close(int drvSocket) +{ + int ret; + vx_mux_obj_t *muxobj; + + if (drvSocket < 0) + return -1; + + muxobj = muxobj_find(drvSocket); + if (muxobj) { + ret = muxUnbind((void *)muxobj->pCookie, ETHER_TYPE_802_1X_PREAUTH, + recv_preauth_msg); + if (ret) { + EAPD_ERROR("preauth close failed 0x%x, drvSocket %d muxsocket %08x\n", + errno, drvSocket, (int)muxobj->pCookie); + } + muxobj_free(muxobj); + } + else { + EAPD_ERROR("muxobj not found drvSocket %d\n", drvSocket); + } + + /* close lbsocket */ + close(drvSocket); + + return 0; +} +#endif /* BCMWPA2 */ + +/* + * Configuration APIs + */ +int +eapd_safe_get_conf(char *outval, int outval_size, char *name) +{ + char *val; + + if (name == NULL || outval == NULL) { + if (outval) + memset(outval, 0, outval_size); + return -1; + } + + val = nvram_safe_get(name); + if (!strcmp(val, "")) + memset(outval, 0, outval_size); + else + snprintf(outval, outval_size, "%s", val); + return 0; +} + +int eapd_main(int argc, char* argv[]) +{ +#ifdef BCMDBG + char *dbg; +#endif + +#ifdef BCMDBG + /* get eapd_msg_level from nvram */ + if ((dbg = nvram_get("eapd_dbg"))) { + eapd_msg_level = (uint)strtoul(dbg, NULL, 0); + } + +#endif + + EAPD_INFO("EAP Dispatch Start...\n"); + + /* clear muxobjs array */ + muxobj_init(); + + /* alloc eapd work space */ + if (!(eapd_nwksp = eapd_wksp_alloc_workspace())) { + EAPD_ERROR("Unable to allocate wksp memory. Quitting...\n"); + return -1; + } + + if (eapd_wksp_auto_config(eapd_nwksp)) { + EAPD_ERROR("Unable to auto config. Quitting...\n"); + eapd_wksp_cleanup(eapd_nwksp); + return -1; + } + + /* establish a handler to handle SIGTERM. */ + signal(SIGTERM, eapd_hup_hdlr); + +#ifdef EAPDDUMP + signal(SIGUSR1, eapd_dump_hdlr); +#endif + + eapd_wksp_main_loop(eapd_nwksp); + + EAPD_INFO("EAP Dispatcher Stopped...\n"); + + return 0; + +} + +void +eapdStart(void) +{ + int tid = taskNameToId("EAPD"); + ULONG ticks; + + if (tid == ERROR) { + /* clear eapd wksp initialization flag */ + eapd_wksp_clear_inited(); + + taskSpawn("EAPD", + 60, /* priority of new task */ + 0, /* task option word */ + 30000, /* size (bytes) of stack needed plus name */ + (FUNCPTR)eapd_main, /* entry point of new task */ + 0, + 0, + 0, 0, 0, 0, 0, 0, 0, 0); + printf("EAPD task started.\n"); + + /* wait until eapd initialization finished */ + ticks = tickGet(); + do { + if (tickGet() - ticks < 3 * sysClkRateGet()) + taskDelay(sysClkRateGet()); + else { + printf("Unable to wait EAPD initialization finished!.\n"); + return; + } + } while (taskNameToId("EAPD") != ERROR && !eapd_wksp_is_inited()); + } + else + printf("EAPD task is already running.\n"); +} + +void +eapdStop(void) +{ + int tid = taskNameToId("EAPD"); + + if (tid != ERROR) { + ULONG ticks; + + kill(tid, SIGTERM); + + /* wait till the task is dead */ + ticks = tickGet(); + do { + if (tickGet() - ticks < 3 * sysClkRateGet()) + taskDelay(sysClkRateGet()); + else { + printf("Unable to kill EAPD task!.\n"); + return; + } + } + while (taskNameToId("EAPD") != ERROR); + printf("EAPD task killed.\n"); + } + else + printf("EAPD task is not running.\n"); + +} diff --git a/release/src-rt/wl/eapd/linux/.gitignore b/release/src-rt/wl/eapd/linux/.gitignore new file mode 100755 index 0000000000..0cbad428e2 --- /dev/null +++ b/release/src-rt/wl/eapd/linux/.gitignore @@ -0,0 +1,2 @@ +*.o +eapd diff --git a/release/src-rt/wl/eapd/linux/Makefile b/release/src-rt/wl/eapd/linux/Makefile new file mode 100755 index 0000000000..8e3d7561e9 --- /dev/null +++ b/release/src-rt/wl/eapd/linux/Makefile @@ -0,0 +1,50 @@ +#Linux Makefile + +include $(SRCBASE)/router/.config + +INCLUDE += -I. -I.. -I$(SRCBASE)/include -I$(SRCBASE)/shared -I$(SRCBASE)/router/shared -I$(SRCBASE)/router/nas + +CFLAGS += $(INCLUDE) +CFLAGS += -DBCMWPA2 -DEAPD_WKSP_AUTO_CONFIG +CFLAGS += -Wall -DEAPDDUMP + +CFLAGS += -s +ifeq ($(CONFIG_RTR_OPTIMIZE_SIZE),y) +CFLAGS += -Os +else +CFLAGS += -O2 +endif + +LDFLAGS += -L$(TOP)/nvram -L$(INSTALLDIR)/nvram/usr/lib -lnvram +LDFLAGS += -L$(TOP)/shared -L$(INSTALLDIR)/shared/usr/lib -lshared + +vpath %.c $(SRCBASE)/router/eapd $(SRCBASE)/shared + +OBJS = eapd.o eapd_linux.o +OBJS += nas_eap.o wps_eap.o ses_eap.o + + +#ifdef BCM_DCS +ifeq ($(CONFIG_BCMDCS),y) +OBJS += dcs_eap.o +CFLAGS += -DBCM_DCS +endif +#endif + +ifneq ($(wildcard ./prebuilt),) +all: + -cp prebuilt/eapd eapd +else +all: eapd +endif + +eapd: $(OBJS) + $(CC) -o $@ $^ $(LDFLAGS) + +install: all + install -d $(INSTALLDIR)/bin + install eapd $(INSTALLDIR)/bin + $(STRIP) $(INSTALLDIR)/bin/eapd + +clean: + rm -f *.o eapd diff --git a/release/src-rt/wl/eapd/nas_eap.c b/release/src-rt/wl/eapd/nas_eap.c new file mode 100644 index 0000000000..f1487a728c --- /dev/null +++ b/release/src-rt/wl/eapd/nas_eap.c @@ -0,0 +1,685 @@ +/* + * Application-specific portion of EAPD + * (NAS) + * + * Copyright (C) 2010, Broadcom Corporation + * All Rights Reserved. + * + * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation; + * the contents of this file may not be disclosed to third parties, copied + * or duplicated in any form, in whole or in part, without the prior + * written permission of Broadcom Corporation. + * + * $Id: nas_eap.c 241391 2011-02-18 03:35:48Z stakita $ + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +/* mapping from WPA_CIPHER_XXXX to wsec */ +#define NAS_APP_WPA_CIPHER2WSEC(cipher) ((cipher) == WPA_CIPHER_WEP_40 ? WEP_ENABLED : \ + (cipher) == WPA_CIPHER_WEP_104 ? WEP_ENABLED : \ + (cipher) == WPA_CIPHER_TKIP ? TKIP_ENABLED : \ + (cipher) == WPA_CIPHER_AES_CCM ? AES_ENABLED : \ + 0) + +static uint32 +nas_app_wpa_akm2auth(uint32 akm) +{ + switch (akm) { + case RSN_AKM_PSK: + return WPA_AUTH_PSK; + case RSN_AKM_UNSPECIFIED: + return WPA_AUTH_UNSPECIFIED; + case RSN_AKM_NONE: + default: + return WPA_AUTH_NONE; + } +} + +#ifdef BCMWPA2 +static uint32 +nas_app_wpa2_akm2auth(uint32 akm) +{ + switch (akm) { + case RSN_AKM_PSK: + return WPA2_AUTH_PSK; + case RSN_AKM_UNSPECIFIED: + return WPA2_AUTH_UNSPECIFIED; + case RSN_AKM_NONE: + default: + return WPA_AUTH_NONE; + } +} +#endif /* BCMWPA2 */ + +static int +nas_app_wpa_auth2mode(int auth) +{ + switch (auth) { + case WPA_AUTH_PSK: + return WPA_PSK; + case WPA_AUTH_UNSPECIFIED: + return WPA; +#ifdef BCMWPA2 + case WPA2_AUTH_PSK: + return WPA2_PSK; + case WPA2_AUTH_UNSPECIFIED: + return WPA2; +#endif /* BCMWPA2 */ + case WPA_AUTH_DISABLED: + default: + return RADIUS; + } +} + +static bool +nas_app_is_wpa_ie(uint8 *ie, uint8 **tlvs, uint *tlvs_len) +{ + /* If the contents match the WPA_OUI and type=1 */ + if ((ie[TLV_LEN_OFF] > (WPA_OUI_LEN+1)) && + !bcmp(&ie[TLV_BODY_OFF], WPA_OUI "\x01", WPA_OUI_LEN + 1)) { + return TRUE; + } + + /* point to the next ie */ + ie += ie[TLV_LEN_OFF] + TLV_HDR_LEN; + /* calculate the length of the rest of the buffer */ + *tlvs_len -= (int)(ie - *tlvs); + /* update the pointer to the start of the buffer */ + *tlvs = ie; + + return FALSE; +} + +static bool +nas_app_is_wps_ie(uint8 *ie, uint8 **tlvs, uint *tlvs_len) +{ + /* If the contents match the WPA_OUI and type=4 */ + if ((ie[TLV_LEN_OFF] > (WPA_OUI_LEN+1)) && + !bcmp(&ie[TLV_BODY_OFF], WPA_OUI "\x04", WPA_OUI_LEN + 1)) { + return TRUE; + } + + /* point to the next ie */ + ie += ie[TLV_LEN_OFF] + TLV_HDR_LEN; + /* calculate the length of the rest of the buffer */ + *tlvs_len -= (int)(ie - *tlvs); + /* update the pointer to the start of the buffer */ + *tlvs = ie; + + return FALSE; +} + +static bcm_tlv_t * +nas_app_parse_tlvs(void *buf, int buflen, uint key) +{ + bcm_tlv_t *elt; + int totlen; + + elt = (bcm_tlv_t*)buf; + totlen = buflen; + + /* find tagged parameter */ + while (totlen >= 2) { + int len = elt->len; + + /* validate remaining totlen */ + if ((elt->id == key) && (totlen >= (len + 2))) + return (elt); + + elt = (bcm_tlv_t*)((uint8*)elt + (len + 2)); + totlen -= (len + 2); + } + + return NULL; +} + +static wpa_ie_fixed_t * +nas_app_find_wpaie(uint8 *parse, uint len) +{ + bcm_tlv_t *ie; + + while ((ie = nas_app_parse_tlvs(parse, len, DOT11_MNG_WPA_ID))) { + if (nas_app_is_wpa_ie((uint8*)ie, &parse, &len)) { + return (wpa_ie_fixed_t *)ie; + } + } + return NULL; +} + +static wpa_ie_fixed_t * +nas_app_find_wpsie(uint8 *parse, uint len) +{ + bcm_tlv_t *ie; + + while ((ie = nas_app_parse_tlvs(parse, len, DOT11_MNG_WPA_ID))) { + if (nas_app_is_wps_ie((uint8*)ie, &parse, &len)) { + return (wpa_ie_fixed_t *)ie; + } + } + return NULL; +} + +/* decode WPA IE to retrieve supplicant wsec, auth mode, and pmk cached */ +/* pmkc - 0:no pmkid in ie, -1:pmkid not found, 1:pmkid found */ +static int +nas_app_parse_ie(uint8 *ie, int ie_len, uint32 *wsec, uint32 *mode) +{ + int len; + wpa_suite_mcast_t *mcast = NULL; + wpa_suite_ucast_t *ucast = NULL; + wpa_suite_auth_key_mgmt_t *mgmt = NULL; + uint8 *oui; + + uint16 count; + uint32 m = 0; + uint32 (*akm2auth)(uint32 akm) = NULL; + wpa_ie_fixed_t *wpaie = NULL; + uint8 *parse = ie; + int parse_len = ie_len; + + + if (nas_app_find_wpsie(parse, parse_len)) + return -1; + + /* Search WPA IE */ + wpaie = nas_app_find_wpaie(parse, parse_len); +#ifdef BCMWPA2 + /* Search RSN IE */ + if (!wpaie) + wpaie = (wpa_ie_fixed_t *)nas_app_parse_tlvs(ie, ie_len, DOT11_MNG_RSN_ID); +#endif /* BCMWPA2 */ + + /* No WPA or RSN IE */ + if (!wpaie) + return -1; + + /* type specific header processing */ + switch (wpaie->tag) { +#ifdef BCMWPA2 + case DOT11_MNG_RSN_ID: { + wpa_rsn_ie_fixed_t *rsnie = (wpa_rsn_ie_fixed_t *)wpaie; + if (rsnie->length < WPA_RSN_IE_TAG_FIXED_LEN) { + EAPD_ERROR("invalid RSN IE header\n"); + return -1; + } + if (ltoh16_ua((uint8 *)&rsnie->version) != WPA2_VERSION) { + EAPD_ERROR("unsupported RSN IE version\n"); + return -1; + } + mcast = (wpa_suite_mcast_t *)(rsnie + 1); + len = ie_len - WPA_RSN_IE_FIXED_LEN; + oui = (uint8*)WPA2_OUI; + akm2auth = nas_app_wpa2_akm2auth; + break; + } +#endif /* BCMWPA2 */ + case DOT11_MNG_WPA_ID: { + if (wpaie->length < WPA_IE_TAG_FIXED_LEN || + bcmp(wpaie->oui, WPA_OUI "\x01", WPA_IE_OUITYPE_LEN)) { + EAPD_ERROR("invalid WPA IE header\n"); + return -1; + } + if (ltoh16_ua((uint8 *)&wpaie->version) != WPA_VERSION) { + EAPD_ERROR("unsupported WPA IE version\n"); + return -1; + } + mcast = (wpa_suite_mcast_t *)(wpaie + 1); + len = ie_len - WPA_IE_FIXED_LEN; + oui = (uint8*)WPA_OUI; + akm2auth = nas_app_wpa_akm2auth; + break; + } + default: + EAPD_ERROR("unsupported IE type\n"); + return -1; + } + + + /* init return values - no mcast cipher and no ucast cipher */ + if (wsec) + *wsec = 0; + if (mode) + *mode = 0; + + /* Check for multicast suite */ + if (len >= WPA_SUITE_LEN) { + if (!bcmp(mcast->oui, oui, DOT11_OUI_LEN)) { + if (wsec) + *wsec |= NAS_APP_WPA_CIPHER2WSEC(mcast->type); + } + len -= WPA_SUITE_LEN; + } + /* Check for unicast suite(s) */ + if (len >= WPA_IE_SUITE_COUNT_LEN) { + ucast = (wpa_suite_ucast_t *)&mcast[1]; + count = ltoh16_ua((uint8 *)&ucast->count); + len -= WPA_IE_SUITE_COUNT_LEN; + if (count != 1) { + EAPD_ERROR("# of unicast cipher suites %d\n", count); + return -1; + } + if (!bcmp(ucast->list[0].oui, oui, DOT11_OUI_LEN)) { + if (wsec) + *wsec |= NAS_APP_WPA_CIPHER2WSEC(ucast->list[0].type); + } + len -= WPA_SUITE_LEN; + } + /* Check for auth key management suite(s) */ + if (len >= WPA_IE_SUITE_COUNT_LEN) { + mgmt = (wpa_suite_auth_key_mgmt_t *)&ucast->list[1]; + count = ltoh16_ua((uint8 *)&mgmt->count); + len -= WPA_IE_SUITE_COUNT_LEN; + if (count != 1) { + EAPD_ERROR("# of AKM suites %d\n", count); + return -1; + } + if (!bcmp(mgmt->list[0].oui, oui, DOT11_OUI_LEN)) { + m = nas_app_wpa_auth2mode(akm2auth(mgmt->list[0].type)); + if (mode) + *mode = m; + } + len -= WPA_SUITE_LEN; + } + EAPD_INFO("wsec 0x%x mode 0x%x\n", *wsec, *mode); + + return 0; +} + +/* Receive eapol, preauth message from nas module + */ +void +nas_app_recv_handler(eapd_wksp_t *nwksp, char *wlifname, eapd_cb_t *from, uint8 *pData, + int *pLen) +{ + eapol_header_t *eapol = (eapol_header_t*) pData; + eap_header_t *eap; + struct ether_addr *sta_ea; + eapd_sta_t *sta; + struct eapd_socket *Socket = NULL; + + if (!nwksp || !wlifname || !from || !pData) { + EAPD_ERROR("Wrong argument...\n"); + return; + } + + if (*pLen < EAPOL_HEADER_LEN) + return; /* message too short */ + + /* dispatch message to eapol, preauth and brcmevent */ + switch (ntohs(eapol->eth.ether_type)) { + case ETHER_TYPE_802_1X: /* eapol */ + case ETHER_TYPE_BRCM: /* brcmevent */ + Socket = from->brcmSocket; + break; +#ifdef BCMWPA2 + case ETHER_TYPE_802_1X_PREAUTH: /* preauth */ + Socket = &from->preauthSocket; + break; +#endif + } + + /* send message data out. */ + sta_ea = (struct ether_addr*) eapol->eth.ether_dhost; + sta = sta_lookup(nwksp, sta_ea, NULL, wlifname, EAPD_SEARCH_ONLY); + + /* monitor eapol packet */ + eap = (eap_header_t *) eapol->body; + if ((sta) && (eapol->type == EAP_PACKET) && + (eap->code == EAP_FAILURE || eap->code == EAP_SUCCESS)) { + sta_remove(nwksp, sta); + } + + if (Socket != NULL) { + eapd_message_send(nwksp, Socket, pData, *pLen); + } + else { + EAPD_ERROR("Socket is not exist!\n"); + } + return; +} + +void +nas_app_set_eventmask(eapd_app_t *app) +{ + memset(app->bitvec, 0, sizeof(app->bitvec)); + + setbit(app->bitvec, WLC_E_EAPOL_MSG); + setbit(app->bitvec, WLC_E_LINK); + setbit(app->bitvec, WLC_E_ASSOC_IND); + setbit(app->bitvec, WLC_E_REASSOC_IND); + setbit(app->bitvec, WLC_E_DISASSOC_IND); + setbit(app->bitvec, WLC_E_DEAUTH_IND); + setbit(app->bitvec, WLC_E_MIC_ERROR); + return; +} + +int +nas_app_init(eapd_wksp_t *nwksp) +{ + int reuse = 1; + eapd_nas_t *nas; + eapd_cb_t *cb; +#ifdef BCMWPA2 + eapd_preauth_socket_t *preauthSocket; +#endif + struct sockaddr_in addr; + + + if (nwksp == NULL) + return -1; + + nas = &nwksp->nas; + nas->appSocket = -1; + + cb = nas->cb; + if (cb == NULL) { + EAPD_INFO("No any NAS application need to run.\n"); + return 0; + } + + while (cb) { + EAPD_INFO("nas: init brcm interface %s \n", cb->ifname); + cb->brcmSocket = eapd_add_brcm(nwksp, cb->ifname); + if (!cb->brcmSocket) + return -1; + /* set this brcmSocket have NAS capability */ + cb->brcmSocket->flag |= EAPD_CAP_NAS; + +#ifdef BCMWPA2 + /* open preauth socket */ + preauthSocket = &cb->preauthSocket; + memset(preauthSocket, 0, sizeof(eapd_preauth_socket_t)); + strcpy(preauthSocket->ifname, cb->ifname); + EAPD_INFO("nas: init preauth interface %s \n", cb->ifname); + if (eapd_preauth_open(nwksp, preauthSocket) < 0) { + EAPD_ERROR("open preauth socket on %s error!!\n", preauthSocket->ifname); + preauthSocket->drvSocket = -1; + } +#endif + cb = cb->next; + } + + /* appSocket for nas */ + nas->appSocket = socket(AF_INET, SOCK_DGRAM, 0); + if (nas->appSocket < 0) { + EAPD_ERROR("UDP Open failed.\n"); + return -1; + } +#if defined(__ECOS) + if (setsockopt(nas->appSocket, SOL_SOCKET, SO_REUSEPORT, (char*)&reuse, + sizeof(reuse)) < 0) { + EAPD_ERROR("UDP setsockopt failed.\n"); + close(nas->appSocket); + nas->appSocket = -1; + return -1; + } +#else + if (setsockopt(nas->appSocket, SOL_SOCKET, SO_REUSEADDR, (char*)&reuse, + sizeof(reuse)) < 0) { + EAPD_ERROR("UDP setsockopt failed.\n"); + close(nas->appSocket); + nas->appSocket = -1; + return -1; + } +#endif + + memset(&addr, 0, sizeof(struct sockaddr_in)); + addr.sin_family = AF_INET; + addr.sin_addr.s_addr = INADDR_ANY; + addr.sin_port = htons(EAPD_WKSP_NAS_UDP_RPORT); + if (bind(nas->appSocket, (struct sockaddr *)&addr, sizeof(addr)) < 0) { + EAPD_ERROR("UDP Bind failed, close nas appSocket %d\n", nas->appSocket); + close(nas->appSocket); + nas->appSocket = -1; + return -1; + } + EAPD_INFO("NAS appSocket %d opened\n", nas->appSocket); + + return 0; +} + +int +nas_app_deinit(eapd_wksp_t *nwksp) +{ + eapd_nas_t *nas; + eapd_cb_t *cb, *tmp_cb; +#ifdef BCMWPA2 + eapd_preauth_socket_t *preauthSocket; +#endif + + if (nwksp == NULL) { + EAPD_ERROR("Wrong argument...\n"); + return -1; + } + + nas = &nwksp->nas; + cb = nas->cb; + while (cb) { + /* close brcm drvSocket */ + if (cb->brcmSocket) { + EAPD_INFO("close nas brcmSocket %d\n", cb->brcmSocket->drvSocket); + eapd_del_brcm(nwksp, cb->brcmSocket); + } + +#ifdef BCMWPA2 + /* close preauth drvSocket */ + preauthSocket = &cb->preauthSocket; + if (preauthSocket->drvSocket >= 0) { + EAPD_INFO("close nas preauthSocket %d\n", preauthSocket->drvSocket); + eapd_preauth_close(preauthSocket->drvSocket); + preauthSocket->drvSocket = -1; + } +#endif + tmp_cb = cb; + cb = cb->next; + free(tmp_cb); + } + + /* close appSocke */ + if (nas->appSocket >= 0) { + EAPD_INFO("close nas appSocket %d\n", nas->appSocket); + close(nas->appSocket); + nas->appSocket = -1; + } + + return 0; +} + +/* nas_sendup will send eapol, brcm and preauth packet */ +int +nas_app_sendup(eapd_wksp_t *nwksp, uint8 *pData, int pLen, char *from) +{ + eapd_nas_t *nas; + + if (nwksp == NULL) { + EAPD_ERROR("Wrong argument...\n"); + return -1; + } + + nas = &nwksp->nas; + if (nas->appSocket >= 0) { + /* send to nas */ + int sentBytes = 0; + struct sockaddr_in to; + + to.sin_addr.s_addr = inet_addr(EAPD_WKSP_UDP_ADDR); + to.sin_family = AF_INET; + to.sin_port = htons(EAPD_WKSP_NAS_UDP_SPORT); + + sentBytes = sendto(nas->appSocket, (char *)pData, pLen, 0, + (struct sockaddr *)&to, sizeof(struct sockaddr_in)); + + if (sentBytes != pLen) { + EAPD_ERROR("UDP send failed; sentBytes = %d\n", sentBytes); + } + else { + /* EAPD_ERROR("Send %d bytes to nas\n", sentBytes); */ + } + } + else { + EAPD_ERROR("nas appSocket not created\n"); + } + return 0; +} + +#if EAPD_WKSP_AUTO_CONFIG +int +nas_app_enabled(char *name) +{ + char value[128], comb[32], akm[16], prefix[8]; + char akms[128], auth[32], wep[32], crypto[32], os_name[IFNAMSIZ]; + char *akmnext; + uint wsec, nasm; + int unit; + + memset(os_name, 0, sizeof(os_name)); + + if (nvifname_to_osifname(name, os_name, sizeof(os_name))) + return 0; + if (wl_probe(os_name) || + wl_ioctl(os_name, WLC_GET_INSTANCE, &unit, sizeof(unit))) + return 0; + if (osifname_to_nvifname(name, prefix, sizeof(prefix))) + return 0; + + strcat(prefix, "_"); + /* ignore if disabled */ + eapd_safe_get_conf(value, sizeof(value), strcat_r(prefix, "radio", comb)); + if (atoi(value) == 0) { + EAPD_INFO("NAS:ignored interface %s. radio disabled\n", os_name); + return 0; + } + /* ignore shared */ + eapd_safe_get_conf(value, sizeof(value), strcat_r(prefix, "auth", comb)); + if (atoi(value) == 1) { + EAPD_INFO("NAS: ignored interface %s. Shared 802.11 auth\n", os_name); + return 0; + } + /* ignore if BSS is disabled */ + eapd_safe_get_conf(value, sizeof(value), strcat_r(prefix, "bss_enabled", comb)); + if (atoi(value) == 0) { + EAPD_INFO("NAS: ignored interface %s, %s is disabled \n", os_name, comb); + return 0; + } + /* nas mode */ + eapd_safe_get_conf(auth, sizeof(auth), strcat_r(prefix, "auth_mode", comb)); + nasm = !strcmp(auth, "radius") ? RADIUS : 0; + eapd_safe_get_conf(akms, sizeof(akms), strcat_r(prefix, "akm", comb)); + foreach(akm, akms, akmnext) { + if (!strcmp(akm, "wpa")) + nasm |= WPA; + if (!strcmp(akm, "psk")) + nasm |= WPA_PSK; +#ifdef BCMWPA2 + if (!strcmp(akm, "wpa2")) + nasm |= WPA2; + if (!strcmp(akm, "psk2")) + nasm |= WPA2_PSK; +#endif + } + if (!nasm) { + EAPD_INFO("NAS:ignored interface %s. Invalid NAS mode\n", os_name); + return 0; + } + /* wsec */ + eapd_safe_get_conf(wep, sizeof(wep), strcat_r(prefix, "wep", comb)); + wsec = !strcmp(wep, "enabled") ? WEP_ENABLED : 0; + if (CHECK_NAS(nasm)) { + eapd_safe_get_conf(crypto, sizeof(crypto), strcat_r(prefix, "crypto", comb)); + if (!strcmp(crypto, "tkip")) + wsec |= TKIP_ENABLED; + else if (!strcmp(crypto, "aes")) + wsec |= AES_ENABLED; + else if (!strcmp(crypto, "tkip+aes")) + wsec |= TKIP_ENABLED|AES_ENABLED; + } + if (!wsec) { + EAPD_INFO("%s: Ignored interface. Invalid WSEC\n", os_name); + return 0; + } + + /* if come to here return enabled */ + return 1; +} +#endif /* EAPD_WKSP_AUTO_CONFIG */ + +int +nas_app_handle_event(eapd_wksp_t *nwksp, uint8 *pData, int Len, char *from) +{ + int type; + eapd_nas_t *nas; + eapd_cb_t *cb; + bcm_event_t *dpkt = (bcm_event_t *) pData; + wl_event_msg_t *event = &(dpkt->event); + uint8 *addr = (uint8 *)&(event->addr); + uint8 *data = (uint8 *)(event + 1); + uint16 len = ntoh32(event->datalen); + uint32 mode, wsec; + eapd_sta_t *sta; + + + type = ntohl(event->event_type); + + nas = &nwksp->nas; + cb = nas->cb; + while (cb) { + if (isset(nas->bitvec, type) && + !strcmp(cb->ifname, from)) { + /* We need to know is client in PSK mode */ + if (type == WLC_E_ASSOC_IND || type == WLC_E_REASSOC_IND || + type == WLC_E_DISASSOC_IND || type == WLC_E_DEAUTH_IND) { + sta = sta_lookup(nwksp, (struct ether_addr *)addr, + (struct ether_addr *) dpkt->eth.ether_dhost, + event->ifname, EAPD_SEARCH_ENTER); + if (!sta) { + EAPD_ERROR("no STA struct available\n"); + return -1; + } + + if (type == WLC_E_DISASSOC_IND || type == WLC_E_DEAUTH_IND) { + /* Reset the sta mode */ + sta->mode = EAPD_STA_MODE_UNKNOW; + } + else if (!nas_app_parse_ie(data, len, &wsec, &mode) && + CHECK_PSK(mode)) { + /* set cient in PSK mode */ + sta->mode = EAPD_STA_MODE_NAS_PSK; + } + } + + /* prepend ifname, we reserved IFNAMSIZ length already */ + pData -= IFNAMSIZ; + Len += IFNAMSIZ; + memcpy(pData, event->ifname, IFNAMSIZ); + + /* send to nas use cb->ifname */ + nas_app_sendup(nwksp, pData, Len, cb->ifname); + break; + } + cb = cb->next; + } + + return 0; +} diff --git a/release/src-rt/wl/eapd/ses_eap.c b/release/src-rt/wl/eapd/ses_eap.c new file mode 100644 index 0000000000..40fe2ee211 --- /dev/null +++ b/release/src-rt/wl/eapd/ses_eap.c @@ -0,0 +1,279 @@ +/* + * Application-specific portion of EAPD + * (SES) + * + * Copyright (C) 2010, Broadcom Corporation + * All Rights Reserved. + * + * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation; + * the contents of this file may not be disclosed to third parties, copied + * or duplicated in any form, in whole or in part, without the prior + * written permission of Broadcom Corporation. + * + * $Id: ses_eap.c 241391 2011-02-18 03:35:48Z stakita $ + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#define SES_NV_INTERFACE "ses_interface" + +void +ses_app_recv_handler(eapd_wksp_t *nwksp, char *wlifname, eapd_cb_t *from, + uint8 *pData, int *pLen) +{ + eapol_header_t *eapol = (eapol_header_t*) pData; + eap_header_t *eap; + eapd_sta_t *sta; + struct ether_addr *sta_ea; + + if (!nwksp || !wlifname || !from || !pData) { + EAPD_ERROR("Wrong arguments...\n"); + return; + } + + if (*pLen < EAPOL_HEADER_LEN) + return; /* message too short */ + + /* send message data out. */ + sta_ea = (struct ether_addr*) eapol->eth.ether_dhost; + sta = sta_lookup(nwksp, sta_ea, NULL, wlifname, EAPD_SEARCH_ONLY); + + /* monitor eapol packet */ + eap = (eap_header_t *) eapol->body; + if ((sta) && (eapol->type == EAP_PACKET) && + (eap->code == EAP_FAILURE || eap->code == EAP_SUCCESS)) { + sta_remove(nwksp, sta); + } + + eapd_message_send(nwksp, from->brcmSocket, (uint8*) eapol, *pLen); + + return; +} + +void +ses_app_set_eventmask(eapd_app_t *app) +{ + memset(app->bitvec, 0, sizeof(app->bitvec)); + + setbit(app->bitvec, WLC_E_EAPOL_MSG); + return; +} + +int +ses_app_init(eapd_wksp_t *nwksp) +{ + int reuse = 1; + eapd_ses_t *ses; + eapd_cb_t *cb; + struct sockaddr_in addr; + + + if (nwksp == NULL) + return -1; + + ses = &nwksp->ses; + ses->appSocket = -1; + + cb = ses->cb; + if (cb == NULL) { + EAPD_INFO("No any SES application need to run\n"); + return 0; + } + + while (cb) { + EAPD_INFO("ses: init brcm interface %s \n", cb->ifname); + cb->brcmSocket = eapd_add_brcm(nwksp, cb->ifname); + if (!cb->brcmSocket) + return -1; + /* set this brcmSocket have SES capability */ + cb->brcmSocket->flag |= EAPD_CAP_SES; + + cb = cb->next; + } + + /* appSocket for ses */ + ses->appSocket = socket(AF_INET, SOCK_DGRAM, 0); + if (ses->appSocket < 0) { + EAPD_ERROR("UDP Open failed.\n"); + return -1; + } +#if defined(__ECOS) + if (setsockopt(ses->appSocket, SOL_SOCKET, SO_REUSEPORT, (char*)&reuse, + sizeof(reuse)) < 0) { + EAPD_ERROR("UDP setsockopt failed.\n"); + close(ses->appSocket); + ses->appSocket = -1; + return -1; + } +#else + if (setsockopt(ses->appSocket, SOL_SOCKET, SO_REUSEADDR, (char*)&reuse, + sizeof(reuse)) < 0) { + EAPD_ERROR("UDP setsockopt failed.\n"); + close(ses->appSocket); + ses->appSocket = -1; + return -1; + } +#endif + + memset(&addr, 0, sizeof(struct sockaddr_in)); + addr.sin_family = AF_INET; + addr.sin_addr.s_addr = INADDR_ANY; + addr.sin_port = htons(EAPD_WKSP_SES_UDP_RPORT); + if (bind(ses->appSocket, (struct sockaddr *)&addr, sizeof(addr)) < 0) { + EAPD_ERROR("UDP Bind failed, close ses appSocket %d\n", ses->appSocket); + close(ses->appSocket); + ses->appSocket = -1; + return -1; + } + EAPD_INFO("SES appSocket %d opened\n", ses->appSocket); + + return 0; +} + +int +ses_app_deinit(eapd_wksp_t *nwksp) +{ + eapd_ses_t *ses; + eapd_cb_t *cb, *tmp_cb; + + if (nwksp == NULL) { + EAPD_ERROR("Wrong argument...\n"); + return -1; + } + + ses = &nwksp->ses; + cb = ses->cb; + while (cb) { + if (cb->brcmSocket) { + EAPD_INFO("close ses brcm drvSocket %d\n", cb->brcmSocket->drvSocket); + eapd_del_brcm(nwksp, cb->brcmSocket); + } + + tmp_cb = cb; + cb = cb->next; + free(tmp_cb); + } + + /* close appSocket */ + if (ses->appSocket >= 0) { + EAPD_INFO("close ses appSocket %d\n", ses->appSocket); + close(ses->appSocket); + ses->appSocket = -1; + } + + return 0; +} + +int +ses_app_sendup(eapd_wksp_t *nwksp, uint8 *pData, int pLen, char *from) +{ + eapd_ses_t *ses; + + if (nwksp == NULL) { + EAPD_ERROR("Wrong argument...\n"); + return -1; + } + + ses = &nwksp->ses; + if (ses->appSocket >= 0) { + /* send to ses */ + int sentBytes = 0; + struct sockaddr_in to; + + to.sin_addr.s_addr = inet_addr(EAPD_WKSP_UDP_ADDR); + to.sin_family = AF_INET; + to.sin_port = htons(EAPD_WKSP_SES_UDP_SPORT); + + sentBytes = sendto(ses->appSocket, (char *)pData, pLen, 0, + (struct sockaddr *)&to, sizeof(struct sockaddr_in)); + + if (sentBytes != pLen) { + EAPD_ERROR("UDP send failed; sentBytes = %d\n", sentBytes); + } + else { + /* EAPD_INFO("Send %d bytes to ses\n", sentBytes); */ + } + } + else { + EAPD_ERROR("ses appSocket not created\n"); + } + return 0; +} + +#if EAPD_WKSP_AUTO_CONFIG +int +ses_app_enabled(char *name) +{ + char value[128]; + int unit; + + /* ses service not enabled */ + eapd_safe_get_conf(value, sizeof(value), "ses_enable"); + if (strcmp(value, "1") != 0) + return 0; + + eapd_safe_get_conf(value, sizeof(value), SES_NV_INTERFACE); + if (!strcmp(value, "")) { + if (wl_probe(name)) + return 0; + snprintf(value, sizeof(value), "%s", name); + } + + if ((wl_probe(value) != 0) || + (wl_ioctl(value, WLC_GET_INSTANCE, &unit, sizeof(unit)) != 0)) { + EAPD_ERROR("ERROR: Invalid default wireless interface %s\n", value); + return 0; + } + + return 1; +} +#endif /* EAPD_WKSP_AUTO_CONFIG */ + +int +ses_app_handle_event(eapd_wksp_t *nwksp, uint8 *pData, int Len, char *from) +{ + int type; + eapd_ses_t *ses; + eapd_cb_t *cb; + bcm_event_t *dpkt = (bcm_event_t *) pData; + wl_event_msg_t *event; + + event = &(dpkt->event); + type = ntohl(event->event_type); + + ses = &nwksp->ses; + cb = ses->cb; + while (cb) { + if (isset(ses->bitvec, type) && !strcmp(cb->ifname, from)) { + /* prepend ifname, we reserved IFNAMSIZ length already */ + pData -= IFNAMSIZ; + Len += IFNAMSIZ; + memcpy(pData, event->ifname, IFNAMSIZ); + + /* send to ses use cb->ifname */ + ses_app_sendup(nwksp, pData, Len, cb->ifname); + break; + } + cb = cb->next; + } + + return 0; +} diff --git a/release/src-rt/wl/eapd/wai_eap.c b/release/src-rt/wl/eapd/wai_eap.c new file mode 100644 index 0000000000..8660c168db --- /dev/null +++ b/release/src-rt/wl/eapd/wai_eap.c @@ -0,0 +1,296 @@ +/* + * Application-specific portion of EAPD + * (WAI) + * + * Copyright (C) 2010, Broadcom Corporation + * All Rights Reserved. + * + * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation; + * the contents of this file may not be disclosed to third parties, copied + * or duplicated in any form, in whole or in part, without the prior + * written permission of Broadcom Corporation. + * + * $Id: wai_eap.c 241391 2011-02-18 03:35:48Z stakita $ + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + + +#define AUTH_MODE_WAPI 1 +#define AUTH_MODE_WAPI_PSK 2 + + +/* Receive wai message from wapid module + */ +void +wai_app_recv_handler(eapd_wksp_t *nwksp, eapd_cb_t *from, uint8 *pData, int *pLen) +{ + if (!nwksp || !from || !pData) { + EAPD_ERROR("Wrong argument...\n"); + return; + } + + /* send message data out. */ + eapd_message_send(nwksp, from->brcmSocket, pData, *pLen); + + return; +} + +void +wai_app_set_eventmask(eapd_app_t *app) +{ + memset(app->bitvec, 0, sizeof(app->bitvec)); + + setbit(app->bitvec, WLC_E_WAI_MSG); + setbit(app->bitvec, WLC_E_WAI_STA_EVENT); + return; +} + +int +wai_app_init(eapd_wksp_t *nwksp) +{ + int ret, reuse = 1; + eapd_wai_t *wai; + eapd_cb_t *cb; + struct sockaddr_in addr; + + if (nwksp == NULL) + return -1; + + wai = &nwksp->wai; + wai->appSocket = -1; + + cb = wai->cb; + if (cb == NULL) { + EAPD_INFO("No any WAI application need to run.\n"); + return 0; + } + + while (cb) { + EAPD_INFO("wai: init brcm interface %s \n", cb->ifname); + cb->brcmSocket = eapd_add_brcm(nwksp, cb->ifname); + if (!cb->brcmSocket) + return -1; + /* set this brcmSocket have WAI capability */ + cb->brcmSocket->flag |= EAPD_CAP_WAI; + cb = cb->next; + } + + /* appSocket for wapid */ + wai->appSocket = socket(AF_INET, SOCK_DGRAM, 0); + if (wai->appSocket < 0) { + EAPD_ERROR("UDP Open failed.\n"); + return -1; + } +#if defined(__ECOS) + if (setsockopt(wai->appSocket, SOL_SOCKET, SO_REUSEPORT, (char*)&reuse, + sizeof(reuse)) < 0) { + EAPD_ERROR("UDP setsockopt failed.\n"); + close(wai->appSocket); + wai->appSocket = -1; + return -1; + } +#else + if (setsockopt(wai->appSocket, SOL_SOCKET, SO_REUSEADDR, (char*)&reuse, + sizeof(reuse)) < 0) { + EAPD_ERROR("UDP setsockopt failed.\n"); + close(wai->appSocket); + wai->appSocket = -1; + return -1; + } +#endif + + memset(&addr, 0, sizeof(struct sockaddr_in)); + addr.sin_family = AF_INET; + addr.sin_addr.s_addr = INADDR_ANY; + addr.sin_port = htons(EAPD_WKSP_WAI_UDP_RPORT); + if (bind(wai->appSocket, (struct sockaddr *)&addr, sizeof(addr)) < 0) { + EAPD_ERROR("UDP Bind failed, close wai appSocket %d\n", wai->appSocket); + close(wai->appSocket); + wai->appSocket = -1; + return -1; + } + EAPD_INFO("WAI appSocket %d opened\n", wai->appSocket); + + return 0; +} + +int +wai_app_deinit(eapd_wksp_t *nwksp) +{ + eapd_wai_t *wai; + eapd_cb_t *cb, *tmp_cb; + + if (nwksp == NULL) { + EAPD_ERROR("Wrong argument...\n"); + return -1; + } + + wai = &nwksp->wai; + cb = wai->cb; + while (cb) { + /* close brcm drvSocket */ + if (cb->brcmSocket) { + EAPD_INFO("close wai brcmSocket %d\n", cb->brcmSocket->drvSocket); + eapd_del_brcm(nwksp, cb->brcmSocket); + } + + tmp_cb = cb; + cb = cb->next; + free(tmp_cb); + } + + /* close appSocke */ + if (wai->appSocket >= 0) { + EAPD_INFO("close wai appSocket %d\n", wai->appSocket); + close(wai->appSocket); + wai->appSocket = -1; + } + + return 0; +} + +/* wai_sendup will send wai and brcm packet */ +int +wai_app_sendup(eapd_wksp_t *nwksp, uint8 *pData, int pLen, char *from) +{ + eapd_wai_t *wai; + + if (nwksp == NULL) { + EAPD_ERROR("Wrong argument...\n"); + return -1; + } + + wai = &nwksp->wai; + if (wai->appSocket >= 0) { + /* send to wai */ + int sentBytes = 0; + struct sockaddr_in to; + + to.sin_addr.s_addr = inet_addr(EAPD_WKSP_UDP_ADDR); + to.sin_family = AF_INET; + to.sin_port = htons(EAPD_WKSP_WAI_UDP_SPORT); + + sentBytes = sendto(wai->appSocket, pData, pLen, 0, + (struct sockaddr *)&to, sizeof(struct sockaddr_in)); + + if (sentBytes != pLen) { + EAPD_ERROR("UDP send failed; sentBytes = %d\n", sentBytes); + } + else { + /* EAPD_INFO("Send %d bytes to wai\n", sentBytes); */ + } + } + else { + EAPD_ERROR("wai appSocket not created\n"); + } + return 0; +} + +#if EAPD_WKSP_AUTO_CONFIG +int +wai_app_enabled(char *name) +{ + char value[128], comb[32], akm[16], prefix[8]; + char akms[128], os_name[IFNAMSIZ]; + char *akmnext; + uint wapid; + int unit; + + memset(os_name, 0, sizeof(os_name)); + + if (nvifname_to_osifname(name, os_name, sizeof(os_name))) + return 0; + if (wl_probe(os_name) || + wl_ioctl(os_name, WLC_GET_INSTANCE, &unit, sizeof(unit))) + return 0; + if (osifname_to_nvifname(name, prefix, sizeof(prefix))) + return 0; + + strcat(prefix, "_"); + /* ignore if disabled */ + eapd_safe_get_conf(value, sizeof(value), strcat_r(prefix, "radio", comb)); + if (atoi(value) == 0) { + EAPD_INFO("WAI:ignored interface %s. radio disabled\n", os_name); + return 0; + } + /* ignore shared */ + eapd_safe_get_conf(value, sizeof(value), strcat_r(prefix, "auth", comb)); + if (atoi(value) == 1) { + EAPD_INFO("WAI: ignored interface %s. Shared 802.11 auth\n", os_name); + return 0; + } + /* ignore if BSS is disabled */ + eapd_safe_get_conf(value, sizeof(value), strcat_r(prefix, "bss_enabled", comb)); + if (atoi(value) == 0) { + EAPD_INFO("WAI: ignored interface %s, %s is disabled \n", os_name, comb); + return 0; + } + /* wai mode */ + wapid = 0; + eapd_safe_get_conf(akms, sizeof(akms), strcat_r(prefix, "akm", comb)); + foreach(akm, akms, akmnext) { + if (!strcmp(akm, "wapi")) + wapid |= AUTH_MODE_WAPI; + if (!strcmp(akm, "wapi_psk")) + wapid |= AUTH_MODE_WAPI_PSK; + } + if (!wapid) { + EAPD_INFO("WAI:ignored interface %s. Invalid WAI mode\n", os_name); + return 0; + } + + /* if come to here return enabled */ + return 1; +} +#endif /* EAPD_WKSP_AUTO_CONFIG */ + +int +wai_app_handle_event(eapd_wksp_t *nwksp, uint8 *pData, int Len, char *from) +{ + int type; + eapd_wai_t *wai; + eapd_cb_t *cb; + bcm_event_t *dpkt = (bcm_event_t *) pData; + wl_event_msg_t *event; + + event = &(dpkt->event); + type = ntohl(event->event_type); + + wai = &nwksp->wai; + cb = wai->cb; + while (cb) { + if (isset(wai->bitvec, type) && !strcmp(cb->ifname, from)) { + /* prepend ifname, we reserved IFNAMSIZ length already */ + pData -= IFNAMSIZ; + Len += IFNAMSIZ; + memcpy(pData, event->ifname, IFNAMSIZ); + + /* send to wai use cb->ifname */ + wai_app_sendup(nwksp, pData, Len, cb->ifname); + break; + } + cb = cb->next; + } + + return 0; +} diff --git a/release/src-rt/wl/eapd/wps_eap.c b/release/src-rt/wl/eapd/wps_eap.c new file mode 100644 index 0000000000..4beb6c184c --- /dev/null +++ b/release/src-rt/wl/eapd/wps_eap.c @@ -0,0 +1,309 @@ +/* + * Application-specific portion of EAPD + * (WPS) + * + * Copyright (C) 2010, Broadcom Corporation + * All Rights Reserved. + * + * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation; + * the contents of this file may not be disclosed to third parties, copied + * or duplicated in any form, in whole or in part, without the prior + * written permission of Broadcom Corporation. + * + * $Id: wps_eap.c 241391 2011-02-18 03:35:48Z stakita $ + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +/* Receive message from wps module */ +void +wps_app_recv_handler(eapd_wksp_t *nwksp, char *wlifname, eapd_cb_t *from, + uint8 *pData, int *pLen, struct ether_addr *ap_ea) +{ + eapol_header_t *eapol = (eapol_header_t*) pData; + eap_header_t *eap; + eapd_sta_t *sta; + struct ether_addr *sta_ea; + + if (!nwksp || !wlifname || !from || !pData) { + EAPD_ERROR("Wrong arguments...\n"); + return; + } + + if (*pLen < EAPOL_HEADER_LEN) { + EAPD_ERROR("Message too short...\n"); + return; + } + + /* send message data out. */ + sta_ea = (struct ether_addr*) eapol->eth.ether_dhost; + sta = sta_lookup(nwksp, sta_ea, NULL, wlifname, EAPD_SEARCH_ONLY); + + /* monitor eapol packet */ + if (eapol->type == EAPOL_START) { + /* remove exit */ + if (sta) + sta_remove(nwksp, sta); + /* create new one */ + sta = sta_lookup(nwksp, sta_ea, ap_ea, wlifname, EAPD_SEARCH_ENTER); + if (sta) { + sta->mode = EAPD_STA_MODE_WPS_ENR; + } + } + else { + eap = (eap_header_t *) eapol->body; + /* remove sta info when FAILURE or SUCCESS */ + if ((sta) && (eapol->type == EAP_PACKET) && + (eap->code == EAP_FAILURE || eap->code == EAP_SUCCESS)) { + sta_remove(nwksp, sta); + } + } + + eapd_message_send(nwksp, from->brcmSocket, pData, *pLen); + + return; +} + +void +wps_app_set_eventmask(eapd_app_t *app) +{ + memset(app->bitvec, 0, sizeof(app->bitvec)); + + setbit(app->bitvec, WLC_E_EAPOL_MSG); + setbit(app->bitvec, WLC_E_PROBREQ_MSG); +/* +*/ +#ifdef __CONFIG_WFI__ + setbit(app->bitvec, WLC_E_ASSOC_IND); + setbit(app->bitvec, WLC_E_REASSOC_IND); + setbit(app->bitvec, WLC_E_DISASSOC_IND); + setbit(app->bitvec, WLC_E_DEAUTH_IND); +#endif /* __CONFIG_WFI__ */ +/* +*/ + return; +} + +int +wps_app_init(eapd_wksp_t *nwksp) +{ + int reuse = 1; + eapd_wps_t *wps; + eapd_cb_t *cb; + struct sockaddr_in addr; + + if (nwksp == NULL) + return -1; + + wps = &nwksp->wps; + wps->appSocket = -1; + + cb = wps->cb; + if (cb == NULL) { + EAPD_INFO("No any interface is running WPS !\n"); + return 0; + } + + while (cb) { + EAPD_INFO("init brcm interface %s \n", cb->ifname); + cb->brcmSocket = eapd_add_brcm(nwksp, cb->ifname); + if (!cb->brcmSocket) + return -1; + /* set this brcmSocket have WPS capability */ + cb->brcmSocket->flag |= EAPD_CAP_WPS; + + cb = cb->next; + } + + /* + * appSocket for wps-monitor, wps-monitor handle all wps + * relative packets + */ + wps->appSocket = socket(AF_INET, SOCK_DGRAM, 0); + if (wps->appSocket < 0) { + EAPD_ERROR("UDP Open failed.\n"); + return -1; + } +#if defined(__ECOS) + if (setsockopt(wps->appSocket, SOL_SOCKET, SO_REUSEPORT, (char*)&reuse, + sizeof(reuse)) < 0) { + EAPD_ERROR("UDP setsockopt failed.\n"); + close(wps->appSocket); + wps->appSocket = -1; + return -1; + } +#else + if (setsockopt(wps->appSocket, SOL_SOCKET, SO_REUSEADDR, (char*)&reuse, + sizeof(reuse)) < 0) { + EAPD_ERROR("UDP setsockopt failed.\n"); + close(wps->appSocket); + wps->appSocket = -1; + return -1; + } +#endif + + memset(&addr, 0, sizeof(struct sockaddr_in)); + addr.sin_family = AF_INET; + addr.sin_addr.s_addr = INADDR_ANY; + addr.sin_port = htons(EAPD_WKSP_WPS_UDP_RPORT); + if (bind(wps->appSocket, (struct sockaddr *)&addr, sizeof(addr)) < 0) { + EAPD_ERROR("UDP Bind failed, close wps appSocket %d\n", wps->appSocket); + close(wps->appSocket); + wps->appSocket = -1; + return -1; + } + EAPD_INFO("WPS appSocket %d opened\n", wps->appSocket); + + return 0; +} + +int +wps_app_deinit(eapd_wksp_t *nwksp) +{ + eapd_wps_t *wps; + eapd_cb_t *cb, *tmp_cb; + + if (nwksp == NULL) { + EAPD_ERROR("Wrong argument...\n"); + return -1; + } + wps = &nwksp->wps; + cb = wps->cb; + while (cb) { + /* brcm drvSocket delete */ + if (cb->brcmSocket) { + EAPD_INFO("close wps brcmSocket %d\n", cb->brcmSocket->drvSocket); + eapd_del_brcm(nwksp, cb->brcmSocket); + } + + tmp_cb = cb; + cb = cb->next; + free(tmp_cb); + } + + /* close appSocket for wps-monitor */ + if (wps->appSocket >= 0) { + EAPD_INFO("close wps m_appSocket %d\n", wps->appSocket); + close(wps->appSocket); + wps->appSocket = -1; + } + + return 0; +} + +int +wps_app_monitor_sendup(eapd_wksp_t *nwksp, uint8 *pData, int Len, char *from) +{ + eapd_wps_t *wps; + + if (nwksp == NULL) { + EAPD_ERROR("Wrong argument...\n"); + return -1; + } + + wps = &nwksp->wps; + if (wps->appSocket >= 0) { + /* send to wps-monitor */ + int sentBytes = 0; + struct sockaddr_in to; + + to.sin_addr.s_addr = inet_addr(EAPD_WKSP_UDP_ADDR); + to.sin_family = AF_INET; + to.sin_port = htons(EAPD_WKSP_WPS_UDP_MPORT); + + sentBytes = sendto(wps->appSocket, (char *)pData, Len, 0, + (struct sockaddr *)&to, sizeof(struct sockaddr_in)); + + if (sentBytes != Len) { + EAPD_ERROR("UDP send to wps-monitor on %s failed; sentBytes = %d\n", + from, sentBytes); + } + else { + /* EAPD_INFO("send %d bytes to wps-monitor on %s\n", sentBytes, from); */ + } + } + else { + EAPD_ERROR("wps-monitor appSocket not created\n"); + } + + return 0; +} + +#if EAPD_WKSP_AUTO_CONFIG +int +wps_app_enabled(char *name) +{ + char value[128], os_name[IFNAMSIZ], temp[32], prefix[8]; + int unit; + + if (nvifname_to_osifname(name, os_name, sizeof(os_name)) < 0) + return 0; + if (wl_probe(os_name) || + wl_ioctl(os_name, WLC_GET_INSTANCE, &unit, sizeof(unit))) + return 0; + /* Convert eth name to wl name */ + if (osifname_to_nvifname(name, prefix, sizeof(prefix)) != 0) + return 0; + + strcat(prefix, "_"); + eapd_safe_get_conf(value, sizeof(value), strcat_r(prefix, "bss_enabled", temp)); + if (strcmp(value, "1")) + return 0; + + eapd_safe_get_conf(value, sizeof(value), strcat_r(prefix, "wps_mode", temp)); + if (!strcmp(value, "enabled") || !strcmp(value, "enr_enabled")) + return 1; + + return 0; +} +#endif /* EAPD_WKSP_AUTO_CONFIG */ + +int +wps_app_handle_event(eapd_wksp_t *nwksp, uint8 *pData, int Len, char *from) +{ + int type; + eapd_wps_t *wps; + eapd_cb_t *cb; + bcm_event_t *dpkt = (bcm_event_t *) pData; + wl_event_msg_t *event; + + event = &(dpkt->event); + type = ntohl(event->event_type); + + wps = &nwksp->wps; + cb = wps->cb; + while (cb) { + if (isset(wps->bitvec, type) && !strcmp(cb->ifname, from)) { + /* prepend ifname, we reserved IFNAMSIZ length already */ + pData -= IFNAMSIZ; + Len += IFNAMSIZ; + memcpy(pData, event->ifname, IFNAMSIZ); + + /* send to wps use cb->ifname */ + wps_app_monitor_sendup(nwksp, pData, Len, cb->ifname); + break; + } + cb = cb->next; + } + + return 0; +} diff --git a/release/src-rt/wl/exe/shellproc_linux.c b/release/src-rt/wl/exe/shellproc_linux.c new file mode 100755 index 0000000000..d0fca41aca --- /dev/null +++ b/release/src-rt/wl/exe/shellproc_linux.c @@ -0,0 +1,714 @@ +/* + * Remote shell command execution (common for all transports) for linux + * + * Copyright (C) 2010, Broadcom Corporation + * All Rights Reserved. + * + * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation; + * the contents of this file may not be disclosed to third parties, copied + * or duplicated in any form, in whole or in part, without the prior + * written permission of Broadcom Corporation. + * + * $Id: shellproc_linux.c,v 1.12 2009-08-11 08:51:01 Exp $ + */ + +/* Linux remote shell command execution + * + */ +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "wlu_remote.h" +#include +#ifndef MACOSX +#include +#endif +#include +#include +#define ASYNC_RESP 0 +#define MAX_SHELL_ASYNC_RESP 128 /* Support for maximum 5 async process */ +#define MAX_ASYNC_FILE_LENGTH 50 +#define MAX_PID_CMD_LENGTH 20 +#define MAX_PID_RESP_LENTH 50 +#define MAX_SHELL_CMD_LENTH 256 +#define PID_TOKEN_SIZE 50 +#define PID_SEARCH_CMD_SIZE 100 +#define ASYNC_SHELL_CHAR "%" /* Async process identifier from the client */ +#define FILE_PERMISSION 777 + +#define DEFAULT_SHELL_TIMEOUT 0 /* Default TimeOut Value for synchronous shell commands */ +#define SHELL_RETURNVALUE_SIZE 2 /* Size of Return Value of the shell command */ +#define SHELL_ASYNCCMD_ID 1 /* To identify if it is an async command */ +#define REBOOT_MSG "Rebooting AP ...\n" + +/* Function prototypes */ + +static int rwl_get_file_size(char *file_name); +static int remote_shell_async_exec(char *buf_ptr); +static int remote_shell_sync_exec(char *cmd_buf_ptr, void *wl); + + +/* Data structure to hold async shell information */ +typedef struct remote_shell_async { + pid_t PID; + char file_name[MAX_ASYNC_FILE_LENGTH]; +} remote_shell_async_t; + +remote_shell_async_t g_async_resp[MAX_SHELL_ASYNC_RESP]; + +extern int g_shellsync_pid; + +extern unsigned char g_return_stat; +extern void rwl_chld_handler(int num); +extern int set_ctrlc; +extern void handle_ctrlc(int unused); + +/* Global variable to store the timeout value for the shell commands */ +static int g_shellsync_timeout = DEFAULT_SHELL_TIMEOUT; +char globalbuffer[MAX_SHELL_CMD_LENTH]; + +/* Wait for process termination. + * This function returns immediately if the child has + * already exited (zombie process) + */ +static void +sigchld_handler(int s) +{ + UNUSED_PARAMETER(s); + + while (waitpid(-1, NULL, WNOHANG) > 0); +} + +/* Create a main directory \tmp\RWL\ for the shell response files */ +int +rwl_create_dir(void) +{ +#ifndef MACOSX + if (mkdir(SHELL_RESP_PATH, FILE_PERMISSION) < 0) { + if (errno != EEXIST) + return BCME_ERROR; + } +#else + system("mkdir -p /tmp/RWL"); +#endif /* mkdir linux command doesnot work in MAC, hence using shell */ + + return SUCCESS; +} + +/* Main function for shell command execution */ +int +remote_shell_execute(char* buf_ptr, void *wl) +{ + char *async_cmd_flag; + int msg_len; + + /* Check for the "%" token in the buffer from client + * If "%" token is present, execute asynchronous process + * else, execute synchronous shell process + */ + async_cmd_flag = strstr((char*)buf_ptr, ASYNC_SHELL_CHAR); + + if ((async_cmd_flag != NULL) && (!strcmp(async_cmd_flag, ASYNC_SHELL_CHAR))) { + g_shellsync_pid = SHELL_ASYNCCMD_ID; + msg_len = remote_shell_async_exec(buf_ptr); + } + else { + msg_len = remote_shell_sync_exec(buf_ptr, wl); + strcpy(buf_ptr, globalbuffer); + } + return msg_len; +} + +/* Function to get the shell response from the file */ +int +remote_shell_async_get_resp(char* shell_fname, char* buf_ptr, int msg_len) +{ + int sts = 0; + FILE *shell_fpt; + + shell_fpt = fopen(shell_fname, "rb"); + + if (shell_fpt == NULL) { + DPRINT_ERR(ERR, "\nShell Cmd:File open error\n"); + return sts; + } + + /* If there is any response from the shell, Read the file and + * update the buffer for the shell response + * else Just send the return value of the command executed + */ + if (g_shellsync_pid != SHELL_ASYNCCMD_ID) { + if (msg_len) + sts = fread(buf_ptr, sizeof(char), msg_len, shell_fpt); + fscanf(shell_fpt, "%2x", &sts); + } + else + sts = fread(buf_ptr, sizeof(char), MAX_SHELL_CMD_LENTH, shell_fpt); + + fclose(shell_fpt); + + remove(shell_fname); + + DPRINT_DBG(OUTPUT, "\n Resp buff from shell cmdis %s\n", buf_ptr); + + return sts; +} + +/* + * Function to get the shell response length + * by opening the file containing the shell response + * and get the total file size. + * For a given input file name it returns File size. + */ +static int +rwl_get_file_size(char *file_name) +{ + FILE *shell_fpt; + int filesize = 0; + + shell_fpt = fopen(file_name, "rb"); + + if (shell_fpt == NULL) { + DPRINT_DBG(OUTPUT, "\nShell Cmd:File open error\n"); + return filesize; + } + + /* obtain file size */ + if (fseek(shell_fpt, 0, SEEK_END) < 0) + return filesize; + + filesize = ftell(shell_fpt); + fclose(shell_fpt); + + return filesize; +} + +/* + * Function for executing asynchronous shell comamnd + * Stores the results in async temp file and returns the PID + */ +static int +remote_shell_async_exec(char *buf_ptr) +{ + int PID_val, val, msg_len, sts; + FILE *fpt; + int async_count = 0; /* counter needs to be initialized */ + struct sigaction sa; + char pid_search_cmd[MAX_PID_CMD_LENGTH]; + char pid_resp_buf[MAX_PID_RESP_LENTH]; + char temp_async_file_name[MAX_ASYNC_FILE_LENGTH]; + pid_t pid; + char *pid_token, next_pid[PID_TOKEN_SIZE][PID_TOKEN_SIZE]; + struct utsname name; + + /* Call the signal handler for reaping defunct or zombie process */ + sa.sa_handler = sigchld_handler; + sigemptyset(&sa.sa_mask); + sa.sa_flags = SA_RESTART; + if (sigaction(SIGCHLD, &sa, NULL) == -1) { + perror("sigaction:"); + } + + /* Store the async file name if that async process is not killed. + * Async file name: async_temp_0...5 + */ + for (val = 0; val < MAX_SHELL_ASYNC_RESP; val++) { + if (g_async_resp[val].PID > 0) { + async_count++; + } else { + sprintf(g_async_resp[val].file_name, "%s%d", "async_temp_", val); + break; + } + } + sprintf(temp_async_file_name, "%s%s", SHELL_RESP_PATH, + g_async_resp[val].file_name); + + DPRINT_DBG(OUTPUT, "\nasync_count:%d\n", async_count); + if (async_count >= MAX_SHELL_ASYNC_RESP) { + sprintf(buf_ptr, "\n%s\n", "Exceeded max async process forking"); + return BCME_ERROR; + } + + /* Open a child process. The fork will return the PID of the child process + * (i.e) defunct process PID in parent's thread of execution. Zero is returned + * for child's thread of execution. + */ + if ((pid = fork()) == 0) { + /* Redirect the async process output to the async file + * Then after the client executes the kill command for that + * async process, the file will give the status of async process + */ + strtok(buf_ptr, ASYNC_SHELL_CHAR); /* Remove % character from the command buf */ + uname(&name); + /* + * Checking for mips architecture + * different command for mips and x86 + */ + if (strncmp(name.machine, "mips", sizeof(name.machine)) != 0) { + strcat(buf_ptr, "&> "); /* buf_ptr is now "ping 127.0.0.1&> " */ + strcat(buf_ptr, temp_async_file_name); /* Add path \tmp\RWL\async_temp_* */ + } + else { + strcat(buf_ptr, " > "); /* buf_ptr is now "ping 127.0.0.1> " */ + strcat(buf_ptr, temp_async_file_name); /* Add path \tmp\RWL\async_temp_* */ + strcat(buf_ptr, " 2>&1 &"); + } + if ((sts = execl(SH_PATH, "sh", "-c", buf_ptr, NULL)) == -1) { + sprintf(buf_ptr, "%s\n", "Not able to execute shell cmd"); + return BCME_ERROR; + } + exit(0); + } /* end of fork */ + + if (pid < 0) { + perror("\nFork error:"); + sprintf(buf_ptr, "%s\n", "Forking async process failed"); + return BCME_ERROR; + } + + /* Find the PID of the running process (for ex: ping) + * pidof -s options returns latest PID of the command. + */ + strtok(buf_ptr, " "); + + uname(&name); + /* Checking for mips architecture */ + if (strncmp(name.machine, "mips", sizeof(name.machine)) != 0) + sprintf(pid_search_cmd, "pidof -s %s", buf_ptr); + else + sprintf(pid_search_cmd, "pidof %s", buf_ptr); + + sleep(1); + + /* Execute the command e.g "pidof ping" */ + if ((fpt = popen(pid_search_cmd, "r")) == NULL) { + sprintf(buf_ptr, "%s\n", "Can't return PID"); + return BCME_ERROR; + } + + /* Get the PID and copy the PID in buf_ptr to send to the client */ + fgets(pid_resp_buf, sizeof(pid_resp_buf), fpt); + + /* Checking for mips architecture */ + if (strncmp(name.machine, "mips", sizeof(name.machine)) != 0) { + PID_val = atoi(pid_resp_buf); + } + else { + /* code to extract the correct PID */ + pid_token = strtok_r(pid_resp_buf, " ", (char **)next_pid); + if (pid_token != NULL) { + while (pid_token != NULL) { + /* the pid buffer will terminate with a '\n' + * It will affect the string tokenizing logic + * To avoid this we're using the if case + */ + if (strncmp(pid_token, "\n", sizeof(pid_token)) == 0) + break; + PID_val = atoi(pid_token); + pid_token = strtok_r(NULL, " ", (char **)next_pid); + } + } + else + PID_val = atoi(pid_token); + } + if (PID_val == 0) { + msg_len = rwl_get_file_size(temp_async_file_name); + remote_shell_async_get_resp(temp_async_file_name, buf_ptr, msg_len); + + } else { + g_async_resp[val].PID = PID_val; + /* Update PID value in buffer to send it to client */ + sprintf(buf_ptr, "%d", PID_val); + msg_len = strlen(buf_ptr); + } + + pclose(fpt); + /* In async case, the PID value will be copied to the input buffer only + * and there is no need of getting the response from the file. So return + * value can be -1. + */ + return msg_len; +} + +/* Process for 'kill' command. + * Kill command can also be used from the client to get the + * result of asynchronous command and actually kill the mentioned process + */ +static int +remote_kill_cmd_exec(char *cmd_buf_ptr) +{ + char file_name[MAX_ASYNC_FILE_LENGTH]; + int PID_val, val, msg_len; + FILE *fpt; + char *pid_token, next_pid[PID_TOKEN_SIZE][PID_TOKEN_SIZE]; + + system(cmd_buf_ptr); + + /* Parse the PID val from the kill command. + */ + pid_token = strtok_r(cmd_buf_ptr, " ", (char **)next_pid); + while (pid_token != NULL) { + /* to extract the PID from the kill command */ + if (strncmp(pid_token, "\n", sizeof(pid_token)) == 0) + break; + PID_val = atoi(pid_token); + pid_token = strtok_r(NULL, " ", (char **)next_pid); + } + + /* Check for the matching PID from the async structure and + * give the last 256 bytes statistics of the async process + * that was running + */ + for (val = 0; val < MAX_SHELL_ASYNC_RESP; ++val) { + if (g_async_resp[val].PID == PID_val) { + /* We found a match here. Hence get the response now from the + * corresponding async response file + */ + sprintf(file_name, "%s%s", SHELL_RESP_PATH, g_async_resp[val].file_name); + msg_len = rwl_get_file_size(file_name); + if (msg_len > 0) { + if ((fpt = fopen(file_name, "rb")) == NULL) { + DPRINT_DBG(OUTPUT, "\nShell Cmd:File open error\n"); + return BCME_ERROR; + } + + if (fseek(fpt, 0, SEEK_SET) < 0) { + fclose(fpt); + return BCME_ERROR; + } + + if (fread(cmd_buf_ptr, sizeof(char), MAX_SHELL_CMD_LENTH, + fpt) <= 0) { + sprintf(cmd_buf_ptr, "%s\n", "Shell Resp:Reading error"); + fclose(fpt); + return BCME_ERROR; + } + + fclose(fpt); + } + else + sprintf(cmd_buf_ptr, "ed %d: No Response\n", PID_val); + remove(g_async_resp[val].file_name); + + g_async_resp[val].PID = 0; + break; + } + } + return MAX_SHELL_CMD_LENTH; +} + +/* Handle --timeout command line option for linux servers */ +int +shell_timeout_cmd(char *cmd_buf_ptr, char *sync_file_name) +{ + char *token1, *token2, *nexttoken; + FILE* fp; + int msg_len; + + token1 = strtok_r(cmd_buf_ptr, "--timeout ", &nexttoken); + if (token1) + token2 = strtok_r(NULL, token1, &nexttoken); + if (token1 == NULL || atoi(token1) <= 0 || token2 == NULL) { + fp = fopen(sync_file_name, "w+"); + fprintf(fp, "Usage: ./wl -- sh" + "--timeout \n"); + fprintf(fp, "Eg: ./wl --socket 172.22.65.226 sh --timeout 15 ls\n"); + fflush(fp); + msg_len = rwl_get_file_size(sync_file_name); + strcpy(cmd_buf_ptr, sync_file_name); + fclose(fp); + strcpy(globalbuffer, sync_file_name); + printf("Fix timeout problem in socket!!!!!\n"); + return msg_len; + } + else + g_shellsync_timeout = atoi(token1); + return BCME_OK; +} + +/* Handle synchronous shell commands here */ +static int +remote_shell_sync_exec(char *cmd_buf_ptr, void *wl) +{ + char *kill_cmd_token; + char sync_file_name[] = TEMPLATE; + int fd, msg_len; + char cmd[(strlen(cmd_buf_ptr) + 1)]; + int pid, status, pid_final; + char buf[SHELL_RESP_SIZE], cmd_find_lastpid[PID_SEARCH_CMD_SIZE]; + int nbytes = 0; + int child_status; + static int sent_once = 0; + struct utsname name; + FILE *fpt; + + /* Default Size of Return Value of the shell command is 2bytes */ + + kill_cmd_token = strstr(cmd_buf_ptr, "kill"); + + /* Synchronous Kill command processing is handled separately */ + if (kill_cmd_token != NULL) { + msg_len = remote_kill_cmd_exec(cmd_buf_ptr); + remote_tx_response(wl, cmd_buf_ptr, msg_len); + return 0; + } + + + /* Process synchronous command other than kill command */ + if ((fd = mkstemp(sync_file_name)) < 0) { + perror("mkstemp failed"); + DPRINT_ERR(ERR, "\n errno:%d\n", errno); + sprintf(cmd_buf_ptr, "%s\n", "mkstemp failed"); + return BCME_ERROR; + } + + close(fd); + + strcpy(cmd, cmd_buf_ptr); + /* Synchronous timeout command processing is handled separately */ + if (strstr(cmd_buf_ptr, "--timeout") != NULL) { + if ((msg_len = shell_timeout_cmd (cmd, sync_file_name) > 0)) { + /* Signal end of command output */ + g_rem_ptr->msg.len = 0; + g_rem_ptr->msg.cmd = g_return_stat; + remote_tx_response(wl, NULL, 0); + return msg_len; + } else { + /* Parse out --timeout since command is successful + * point buffer to the shell command + */ + strcpy(cmd, cmd_buf_ptr); + strtok_r(cmd, " ", &cmd_buf_ptr); + strcpy(cmd, cmd_buf_ptr); + strtok_r(cmd, " ", &cmd_buf_ptr); + } + } + + /* Schedule an ALARM in case of timeout value of SHELL_TIMEOUT seconds */ + /* Defalut time out only in case of Non socket transport */ + alarm(g_shellsync_timeout); + /* registering the relevant signals to handle end of child process, + * the ctrl+c event on the server side and the kill command on the + * server process + */ + signal(SIGCHLD, rwl_chld_handler); + signal(SIGINT, handle_ctrlc); + signal(SIGTERM, handle_ctrlc); + + /* Set g_sig_chld before forking */ + g_sig_chld = 1; + + if (strcmp("reboot", cmd_buf_ptr) == 0) { /* reboot command */ + memset(buf, 0, sizeof(buf)); + strncpy(buf, REBOOT_MSG, sizeof(REBOOT_MSG)); + remote_tx_response(wl, buf, 0); + + /* Signal end of command output */ + g_rem_ptr->msg.len = 0; + g_rem_ptr->msg.cmd = 0; + remote_tx_response(wl, NULL, 0); + sleep(1); + + /* Clean up the temp file */ + remove(sync_file_name); + } + + if ((pid = fork()) == 0) { + close(STDOUT_FILENO); + fd = open(sync_file_name, O_WRONLY|O_SYNC); + /* Redirect stdin to dev/null. This handles un usual commands like + * sh cat from the client side + */ + close(STDIN_FILENO); + open("/dev/null", O_RDONLY); + close(STDERR_FILENO); + fcntl(fd, F_DUPFD, STDERR_FILENO); + if ((status = execl(SH_PATH, "sh", "-c", cmd_buf_ptr, NULL)) == -1) { + perror("Exec error"); + + } + } /* end of fork */ + + g_shellsync_pid = pid; + /* The g_return_stat is being set for short commands */ + waitpid(g_shellsync_pid, &child_status, WNOHANG); + if (WIFEXITED(child_status)) + g_return_stat = WEXITSTATUS(child_status); + else + g_return_stat = 1; + + /* Read file in the interim from a temp file and send back the results */ + fd = open(sync_file_name, O_RDONLY|O_SYNC); + + while (1) { + /* read file in the interim and send back the results */ + nbytes = read(fd, buf, SHELL_RESP_SIZE); + g_rem_ptr->msg.len = nbytes; + if (nbytes > 0) { + remote_tx_response(wl, buf, 0); +#ifdef RWL_SERIAL + /* usleep introduced for flooding of data over serial port */ + usleep(1); +#endif + } + if (get_ctrlc_header(wl) >= 0) { + if (g_rem_ptr->msg.flags == (unsigned)CTRLC_FLAG) { + uname(&name); + /* Checking for mips architecture + * The mips machine responds differently to + * execl command. so the pid is incremented + * to kill the right command. + */ + if (strncmp(name.machine, "mips", sizeof(name.machine)) == 0) + pid++; + if (strncmp(name.machine, "armv5tel", sizeof(name.machine)) == 0) { + snprintf(cmd_find_lastpid, sizeof(cmd_find_lastpid), + "ps | awk \'PRINT $1\' | tail -n 1"); + if ((fpt = popen(cmd_find_lastpid, "r")) == NULL) { + sprintf(buf, "%s\n", "Can't return PID"); + return BCME_ERROR; + } + fgets(cmd_find_lastpid, sizeof(cmd_find_lastpid), fpt); + pid_final = atoi(cmd_find_lastpid); + while (pid <= pid_final) { + kill(pid, SIGKILL); + pid++; + } + pclose(fpt); + } + else { + kill(pid, SIGKILL); + } + break; + } + } + if (get_ctrlc_header(wl) >= 0) { + if (g_rem_ptr->msg.flags == (unsigned)CTRLC_FLAG) { + uname(&name); + /* Checking for mips architecture + * The mips machine responds differently to + * execl command. so the pid is incremented + * to kill the right command. + */ + if (strncmp(name.machine, "mips", sizeof(name.machine)) == 0) { + pid++; + kill(pid, SIGKILL); + } + /* Checking for arm architecture + * The multiple commands would not work + * for ctrl+C. So we kill the processes + * spawned after the parent. This method has + * its own limitations but the busybox in pxa + * doesnot have many options to implement it better + */ + else { + if (strncmp(name.machine, "armv5tel", + sizeof(name.machine)) == 0) { + /* The command below is used to get the + * PIDs and they are killed + */ + snprintf(cmd_find_lastpid, + sizeof(cmd_find_lastpid), + "ps | awk \'PRINT $1\' | tail -n 1"); + if ((fpt = popen(cmd_find_lastpid, "r")) == NULL) { + sprintf(buf, "%s\n", "Can't return PID"); + return BCME_ERROR; + } + fgets(cmd_find_lastpid, sizeof(cmd_find_lastpid), + fpt); + pid_final = atoi(cmd_find_lastpid); + while (pid <= pid_final) { + kill(pid, SIGKILL); + pid++; + } + pclose(fpt); + } + /* In the case of x86, on receiving ctrl+C + * the child PIDs are obtained by searching + * the parent PID to obtain the PIDs of the + * and kill them + */ + else { + while (pid != 0) { + /* The commad below is used to get the + * child PIDs by using their parent PID + */ + snprintf(cmd_find_lastpid, + sizeof(cmd_find_lastpid), + "ps al | awk \"{ if (\\$4 == %d)" + " {print \\$3}}\"| head -n 1", + g_shellsync_pid); + if ((fpt = popen(cmd_find_lastpid, "r")) + == NULL) { + sprintf(buf, "%s\n", + "Can't return PID"); + return BCME_ERROR; + } + fgets(cmd_find_lastpid, + sizeof(cmd_find_lastpid), + fpt); + pid = atoi(cmd_find_lastpid); + if (pid == 0) + kill(g_shellsync_pid, SIGKILL); + else + kill(pid, SIGKILL); + pclose(fpt); + } + } + } + break; + } + } + if (set_ctrlc == 1) { + g_rem_ptr->msg.len = 0; + g_rem_ptr->msg.cmd = g_return_stat; + remote_tx_response(wl, NULL, g_return_stat); + unlink(sync_file_name); + kill(0, SIGKILL); + } + /* It is possible that the child would have exited + * However we did not get a chance to read the file + * In this case go once again and check the file + */ + if (!sent_once && !g_sig_chld) { + sent_once = 1; + continue; + } + + if (!(g_sig_chld || nbytes)) + break; + } + wait(NULL); + close(fd); + + /* Signal end of command output */ + g_rem_ptr->msg.len = 0; + g_rem_ptr->msg.cmd = g_return_stat; + + remote_tx_response(wl, NULL, g_return_stat); + /* Cancel the time out alarm if any */ + alarm(0); + sent_once = 0; + /* Clean up the temp file */ + unlink(sync_file_name); + g_shellsync_timeout = DEFAULT_SHELL_TIMEOUT; + signal(SIGINT, SIG_DFL); + signal(SIGTERM, SIG_DFL); + + return BCME_OK; +} diff --git a/release/src-rt/wl/exe/wlu.c b/release/src-rt/wl/exe/wlu.c new file mode 100755 index 0000000000..b345d531d9 --- /dev/null +++ b/release/src-rt/wl/exe/wlu.c @@ -0,0 +1,21578 @@ +/* + * Common code for wl command-line swiss-army-knife utility + * + * Copyright (C) 2010, Broadcom Corporation + * All Rights Reserved. + * + * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation; + * the contents of this file may not be disclosed to third parties, copied + * or duplicated in any form, in whole or in part, without the prior + * written permission of Broadcom Corporation. + * + * $Id: wlu.c,v 1.1104.2.99 2011-01-28 23:22:50 Exp $ + */ + + + +#if defined(__NetBSD__) +#include +#endif + +/* Because IL_BIGENDIAN was removed there are few warnings that need + * to be fixed. Windows was not compiled earlier with IL_BIGENDIAN. + * Hence these warnings were not seen earlier. + * For now ignore the following warnings + */ +#ifdef WIN32 +#pragma warning(push) +#pragma warning(disable : 4244) +#pragma warning(disable : 4761) +#endif + +#if defined(_CFE_) +#include +#include +#include +#include +#include +#else +#include +#include +#include +#include +#include +#endif /* defined(_CFE_) */ +#include +#include +#include +#include +#include +#include +#include +#include +#ifdef WLBTAMP +#include +#endif +#include +#include +#include +#include +#include +#include +#include "wlu.h" +#include +#if defined(WLPFN) && defined(linux) +#ifndef TARGETENV_android +#include +#endif +#include +#include +#include +#include +#include +#include +#include +#include +#endif /* WLPFN */ + +#ifdef WLEXTLOG +#include +#endif + +#include +#include + +#if defined(__NetBSD__) || defined(linux) || defined(MACOSX) || defined(EFI) +#define stricmp strcasecmp +#define strnicmp strncasecmp +#elif defined(__ECOS) +extern int stricmp(const char *s1, const char *s2); +extern int strnicmp(const char *s1, const char *s2, size_t len); +#elif defined(UNDER_CE) || defined(_CRT_SECURE_NO_DEPRECATE) +#define stricmp _stricmp +#define strnicmp _strnicmp +#elif defined(_CFE_) +#include +#include +#define isalnum(c) bcm_isalnum(c) +#define isalpha(c) bcm_isalpha(c) +#define iscntrl(c) bcm_iscntrl(c) +#define isdigit(c) bcm_isdigit(c) +#define isgraph(c) bcm_isgraph(c) +#define islower(c) bcm_islower(c) +#define isprint(c) bcm_isprint(c) +#define ispunct(c) bcm_ispunct(c) +#define isspace(c) bcm_isspace(c) +#define isupper(c) bcm_isupper(c) +#define isxdigit(c) bcm_isxdigit(c) +#define stricmp(s1, s2) lib_strcmpi((s1), (s2)) +#define strtoul(nptr, endptr, base) bcm_strtoul((nptr), (endptr), (base)) +#define tolower(c) (bcm_isupper((c)) ? ((c) + 'a' - 'A') : (c)) +#define fprintf(stream, fmt, args...) xprintf(fmt, ##args) +#define fputs(s, stream) puts(s) +#define malloc(size) KMALLOC((size), 0) +#define free(ptr) KFREE(ptr) +#define strnicmp(s1, s2, len) strncmp((s1), (s2), (len)) +#define strspn(s, accept) (0) +#define strtol(nptr, endptr, base) bcm_strtoul((nptr), (endptr), (base)) +#elif defined(BWL_STRICMP) +#define stricmp bcmstricmp +#define strnicmp bcmstrnicmp +#endif /* __NetBSD__ */ + + +/* For backwards compatibility, the absense of the define 'NO_FILESYSTEM_SUPPORT' + * implies that a filesystem is supported. + */ +#if !defined(BWL_NO_FILESYSTEM_SUPPORT) +#define BWL_FILESYSTEM_SUPPORT +#endif + + +cmd_func_t wl_int; +static cmd_func_t wl_print_deprecate; +static cmd_func_t wl_void, wl_rssi, wl_rssi_event, wl_phy_rssi_ant, wl_gmode; +static cmd_func_t wlu_dump, wlu_srdump, wlu_srwrite, wlu_srvar, wl_nvsource; +static cmd_func_t wlu_ciswrite, wlu_cisupdate, wlu_cisdump; +static cmd_func_t wl_rate_mrate, wl_phy_rate, wl_bss_max; +static cmd_func_t wl_channel, wl_chanspec, wl_chanim_state, wl_chanim_mode; +static cmd_func_t wl_radio, wl_version, wl_list, wl_band, wl_bandlist, wl_phylist; +static cmd_func_t wl_join, wl_tssi, wl_txpwr, wl_atten, wl_evm, wl_country; +static cmd_func_t wl_out, wl_txpwr1, wl_country_ie_override; +static cmd_func_t wl_maclist, wl_get_pktcnt, wl_upgrade; +static cmd_func_t wl_maclist_1; +static cmd_func_t wl_rateset, wl_interfere, wl_interfere_override; +static cmd_func_t wl_radar_args, wl_radar_thrs, wl_dfs_status; +static cmd_func_t wl_get_txpwr_limit, wl_get_current_power, wl_get_instant_power; +static cmd_func_t wl_get_current_txppr; +static cmd_func_t wl_var_get, wl_var_getint, wl_var_getinthex, wl_var_getandprintstr; +static cmd_func_t wl_var_setint, wl_addwep, wl_rmwep; +static cmd_func_t wl_nvdump, wl_nvget, wl_nvset, wl_sta_info, wl_chan_info; +static cmd_func_t wl_wme_ac_req, wl_add_ie, wl_del_ie, wl_list_ie; +static cmd_func_t wl_wme_apsd_sta, wl_wme_dp, wl_lifetime; +static cmd_func_t wl_rand, wl_otpw, wl_counters, wl_delta_stats; +static cmd_func_t wl_assoc_info, wl_wme_counters, wl_devpath; +static cmd_func_t wl_bitvec128, wl_diag, wl_var_void; +static cmd_func_t wl_auto_channel_sel; +static cmd_func_t wl_bsscfg_int, wl_bsscfg_enable; +static cmd_func_t wl_msglevel, wl_plcphdr, wl_reg, wl_macreg, wl_band_elm; +static cmd_func_t wl_phymsglevel; +static cmd_func_t wl_rateparam, wl_wepstatus, wl_status, wl_spect; +static cmd_func_t wl_sup_rateset, wl_scan, wl_send_csa, wl_iscan, wl_escan; +#ifdef EXTENDED_SCAN +static cmd_func_t wl_extdscan; +#endif +static cmd_func_t wl_dump_chanlist, wl_primary_key, wl_measure_req, wl_send_quiet; +static cmd_func_t wl_dump_chanspecs, wl_cur_mcsset; +static cmd_func_t wl_wsec, wl_keys, wl_wsec_test; +static cmd_func_t wl_channels_in_country; +static cmd_func_t wl_wpa_auth, wl_tsc, wl_deauth_rc, wl_ssid, wl_bssid, wl_smfstats; +static cmd_func_t wl_wds_wpa_role_old, wl_wds_wpa_role, wl_set_pmk; +static cmd_func_t wl_rm_request, wl_rm_report; +static cmd_func_t wl_join_pref, wl_assoc_pref; +static cmd_func_t wl_dump_networks, wl_mac, wl_revinfo, wl_iov_mac; +static cmd_func_t wl_cac, wl_tslist, wl_tspec, wl_tslist_ea, wl_tspec_ea, wl_cac_delts_ea; +static cmd_func_t wl_varstr, wl_var_setintandprintstr; +static cmd_func_t wl_rifs; +static cmd_func_t wl_rifs_advert; +static cmd_func_t wl_test_tssi, wl_test_tssi_offs, wl_phy_rssiant, wl_rxiq; +static cmd_func_t wl_obss_scan, wl_obss_coex_action; +static cmd_func_t wl_dump_lq; +static cmd_func_t wl_monitor_lq; + + +#ifdef WLPFN +static cmd_func_t wl_pfn_set; +static cmd_func_t wl_pfn_add; +static cmd_func_t wl_pfn; +#if defined(linux) +static cmd_func_t wl_pfn_event_check; +static cmd_func_t wl_escan_event_check; +static cmd_func_t wl_escanresults; +#endif /* linux */ +static cmd_func_t wl_event_filter; +#endif /* WLPFN */ +static cmd_func_t wl_wowl_pattern, wl_wowl_wakeind, wl_wowl_pkt, wl_wowl_status; +static cmd_func_t wl_reassoc; + + +static cmd_func_t wl_pmkid_info; + + +static cmd_func_t wl_rate_histo; +static cmd_func_t wl_sample_collect; +static cmd_func_t wlu_reg3args; + +static cmd_func_t wl_coma; +static cmd_func_t wl_tpc_lm; +static cmd_func_t wlu_reg2args; +static cmd_func_t wme_tx_params; +static cmd_func_t wme_maxbw_params; +static cmd_func_t wl_ampdu_tid, wl_ampdu_activate_test; +static cmd_func_t wl_ampdu_retry_limit_tid; +static cmd_func_t wl_ampdu_rr_retry_limit_tid; +static cmd_func_t wl_ampdu_send_addba; +static cmd_func_t wl_ampdu_send_delba; + +static cmd_func_t wl_dpt_deny; +static cmd_func_t wl_dpt_endpoint; +static cmd_func_t wl_dpt_pmk; +static cmd_func_t wl_dpt_fname; +static cmd_func_t wl_dpt_list; +#ifdef WLBTAMP +static cmd_func_t wl_HCI_cmd; +static cmd_func_t wl_HCI_ACL_data; +static cmd_func_t wl_get_btamp_log; +#endif +static cmd_func_t wl_actframe; + +static cmd_func_t wl_gpioout; + +static cmd_func_t wl_nrate, wl_antsel, wl_txcore; +static cmd_func_t wl_txcore_pwr_offset; +static cmd_func_t wl_txfifo_sz; +static cmd_func_t wl_pkteng, wl_pkteng_stats; + +static cmd_func_t wl_offload_cmpnt; +static cmd_func_t wl_hostip, wl_arp_stats, wl_toe_stats; + +static cmd_func_t wl_lpphy_papdepstbl; + +int wl_seq_batch_in_client(bool enable); +cmd_func_t wl_seq_start; +cmd_func_t wl_seq_stop; + +static cmd_func_t wl_phy_txiqcc, wl_phy_txlocc; +static cmd_func_t wl_phytable, wl_phy_pavars, wl_phy_pavars2, wl_phy_povars; +static cmd_func_t wl_phy_fem, wl_phy_maxpower, wl_antgain, wl_phy_txpwrindex; +static cmd_func_t wl_keep_alive; +static cmd_func_t wl_srchmem; + +static cmd_func_t wl_pkt_filter_add; +static cmd_func_t wl_pkt_filter_enable; +static cmd_func_t wl_pkt_filter_list; +static cmd_func_t wl_pkt_filter_stats; + +static cmd_func_t wl_ledbh; + +#ifdef RWL_WIFI +/* Function added to support RWL_WIFI Transport */ +static cmd_func_t wl_wifiserver; +#endif + +static cmd_func_t wl_led_blink_sync; +static cmd_func_t wl_cca_get_stats; +static cmd_func_t wl_itfr_get_stats; +static cmd_func_t wl_rrm_nbr_req; +static cmd_func_t wl_wnm_bsstq; +static cmd_func_t wl_chanim_acs_record; + +#ifdef WLP2P +static cmd_func_t wl_p2p_state; +static cmd_func_t wl_p2p_scan; +static cmd_func_t wl_p2p_ifadd; +static cmd_func_t wl_p2p_ifdel; +static cmd_func_t wl_p2p_ifupd; +static cmd_func_t wl_p2p_if; +static cmd_func_t wl_p2p_ops; +static cmd_func_t wl_p2p_noa; +#endif + +static cmd_func_t wl_rpmt; +static cmd_func_t wl_spatial_policy, wl_ratetbl_ppr; + +static cmd_func_t wl_ie; + +static void wl_txppr_print(txppr_t *ppr, int cck, int mimo); +static void wl_txpwr_array_print(uint8 *pwr, int cck, int mimo); +static void wl_txpwr_range_print(uint8 *pwr, int start, int count, const char* label, int *newline); +static void wl_txpwr_row_print(uint8 *pwr, int start, int count); +static int wl_array_uniform(uint8 *pwr, int start, int count); +static int wl_curpower_legacy(void *wl); +static void wl_txpwr_array_print_legacy2(uint8 *pwr, int cck, int mimo); +static void wl_txpwr_range_print_legacy2(uint8 *pwr, int start, int count, const char* label, + int *newline); +static int wl_curpower_legacy2(void *wl, cmd_t *cmd); + +static int wl_parse_rateset(void *wl, wl_rateset_args_t* rs, char **argv); +static void wl_print_mcsset(char *mcsset); + +static void dump_networks(char *buf); +static void dump_bss_info(wl_bss_info_t *bi); +static void wl_dump_wpa_rsn_ies(uint8* cp, uint len); +static void wl_rsn_ie_dump(bcm_tlv_t *ie); + +int wlu_get(void *wl, int cmd, void *buf, int len); +int wlu_set(void *wl, int cmd, void *buf, int len); + +static void clean_up_cmd_list(void); +static int add_one_batched_cmd(int cmd, void *buf, int len); +static int _wl_dump_lq(void *wl); + +/* 802.11i/WPA RSN IE parsing utilities */ +typedef struct { + uint16 version; + wpa_suite_mcast_t *mcast; + wpa_suite_ucast_t *ucast; + wpa_suite_auth_key_mgmt_t *akm; + uint8 *capabilities; +} rsn_parse_info_t; + +static int wl_rsn_ie_parse_info(uint8* buf, uint len, rsn_parse_info_t *rsn); +static uint wl_rsn_ie_decode_cntrs(uint cntr_field); + +static int wl_parse_assoc_params(char **argv, wl_assoc_params_t *params); +#define wl_parse_reassoc_params(argv, params) wl_parse_assoc_params(argv, \ + (wl_assoc_params_t *)(params)) + +static int wl_parse_channel_list(char* list_str, uint16* channel_list, int channel_num); +static int wl_parse_chanspec_list(char* list_str, chanspec_t *chanspec_list, int chanspec_num); + +#ifdef EXTENDED_SCAN +static int wl_parse_extdchannel_list(char* list_str, + chan_scandata_t* channel_list, int channel_num); +#endif + +static uint16 wl_qdbm_to_mw(uint8 qdbm); +static uint8 wl_mw_to_qdbm(uint16 mw); + +static int wl_cfg_option(char **argv, const char *fn_name, int *bsscfg_idx, int *consumed); +static int get_oui_bytes(uchar *oui_str, uchar *oui); +static int get_ie_data(uchar *data_str, uchar *ie_data, int len); +static void wl_printrate(int val); +static int rate_string2int(char *s); +static char *rate_int2string(char *buf, int val); + +static int wl_get_scan(void *wl, int opc, char *buf, uint buf_len); +static int wl_get_iscan(void *wl, char *buf, uint buf_len); +int wlu_var_getbuf(void *wl, const char *iovar, void *param, int param_len, void **bufptr); +int wlu_var_getbuf_sm(void *wl, const char *iovar, void *param, int param_len, void **bufptr); +int wlu_var_getbuf_med(void *wl, const char *iovar, void *param, int param_len, void **bufptr); +int wlu_var_setbuf(void *wl, const char *iovar, void *param, int param_len); + +static uint wl_iovar_mkbuf(const char *name, char *data, uint datalen, char *buf, uint buflen, + int *perr); +static int wlu_iovar_getbuf(void* wl, const char *iovar, + void *param, int paramlen, void *bufptr, int buflen); +static int wlu_iovar_setbuf(void* wl, const char *iovar, + void *param, int paramlen, void *bufptr, int buflen); +int wlu_iovar_get(void *wl, const char *iovar, void *outbuf, int len); +int wlu_iovar_set(void *wl, const char *iovar, void *param, int paramlen); +int wlu_iovar_getint(void *wl, const char *iovar, int *pval); +int wlu_iovar_setint(void *wl, const char *iovar, int val); + +static int wl_bssiovar_mkbuf(const char *iovar, int bssidx, void *param, + int paramlen, void *bufptr, int buflen, int *perr); +static int wl_bssiovar_setbuf(void* wl, const char *iovar, int bssidx, + void *param, int paramlen, void *bufptr, int buflen); +static int wl_bssiovar_getbuf(void* wl, const char *iovar, int bssidx, + void *param, int paramlen, void *bufptr, int buflen); +static int wl_bssiovar_set(void *wl, const char *iovar, int bssidx, void *param, int paramlen); +static int wl_bssiovar_get(void *wl, const char *iovar, int bssidx, void *outbuf, int len); +static int wl_bssiovar_setint(void *wl, const char *iovar, int bssidx, int val); +static int wl_bssiovar_getint(void *wl, const char *iovar, int bssidx, int *pval); + +static int wl_vndr_ie(void *wl, const char *command, char **argv); +static int hexstrtobitvec(const char *cp, uchar *bitvec, int veclen); +static void wl_join_pref_print_ie(bcm_tlv_t *ie); +static void wl_join_pref_print_akm(uint8* suite); +static void wl_join_pref_print_cipher_suite(uint8* suite); +static void wl_print_tspec(tspec_arg_t *ts); +static void wl_cac_addts_usage(void); +static void wl_cac_delts_usage(void); + +static cmd_func_t wl_txmcsset; +static cmd_func_t wl_rxmcsset; + +static int wl_mimo_stf(void *wl, cmd_t *cmd, char **argv); + +#ifdef WLEXTLOG +static int wl_extlog(void *wl, cmd_t *cmd, char **argv); +static int wl_extlog_cfg(void *wl, cmd_t *cmd, char **argv); +#endif + +static int wl_assertlog(void *wl, cmd_t *cmd, char **argv); +static char *ver2str(unsigned int vms, unsigned int vls); +static int wl_tsf(void *wl, cmd_t *cmd, char **argv); +static int wl_dngl_wd(void *wl, cmd_t *cmd, char **argv); +static int wl_mfp_config(void *wl, cmd_t *cmd, char **argv); +static int wl_mfp_sha256(void *wl, cmd_t *cmd, char **argv); +static int wl_mfp_sa_query(void *wl, cmd_t *cmd, char **argv); +static int wl_mfp_disassoc(void *wl, cmd_t *cmd, char **argv); +static int wl_mfp_deauth(void *wl, cmd_t *cmd, char **argv); +static int wl_mfp_assoc(void *wl, cmd_t *cmd, char **argv); +static int wl_mfp_auth(void *wl, cmd_t *cmd, char **argv); +static int wl_mfp_reassoc(void *wl, cmd_t *cmd, char **argv); +static int wl_scb_probe(void *wl, cmd_t *cmd, char **argv); + +/* some OSes (FC4) have trouble allocating (kmalloc) 128KB worth of memory, + * hence keeping WL_DUMP_BUF_LEN below that + */ +#if defined(BWL_SMALL_WLU_DUMP_BUF) +#define WL_DUMP_BUF_LEN (8 * 1024) +#else +#define WL_DUMP_BUF_LEN (127 * 1024) +#endif + +#define OUI_STR_SIZE 8 /* OUI string size */ +#define MAX_OUI_SIZE 3 /* MAX OUI size */ +#define MAX_BYTE_CHARS 2 /* MAX num chars */ +#define MAX_DATA_COLS 16 /* MAX data cols */ +#define DIV_QUO(num, div) ((num)/div) /* Return the quotient of division to avoid floats */ +#define DIV_REM(num, div) (((num%div) * 100)/div) /* Return the remainder of division */ + +#define RADIO_CORE_SYN (0x0 << 12) +#define RADIO_CORE_TX0 (0x2 << 12) +#define RADIO_CORE_TX1 (0x3 << 12) +#define RADIO_CORE_RX0 (0x6 << 12) +#define RADIO_CORE_RX1 (0x7 << 12) + +#define RADIO_CORE_CR0 (0x0 << 10) +#define RADIO_CORE_CR1 (0x1 << 10) +#define RADIO_CORE_CR2 (0x2 << 10) +#define RADIO_CORE_ALL (0x3 << 10) + +#define WLC_MAXMCS 32 + +/* dword align allocation */ +static union { + char bufdata[WLC_IOCTL_MAXLEN]; + uint32 alignme; +} bufstruct_wlu; +static char *buf = (char*) &bufstruct_wlu.bufdata; + +/* integer output format, default to signed integer */ +static uint8 int_fmt; + +/* The below macros handle endian mis-matches between wl utility and wl driver. */ +static bool g_swap = FALSE; +#define htod32(i) (g_swap?bcmswap32(i):(uint32)(i)) +#define htod16(i) (g_swap?bcmswap16(i):(uint16)(i)) +#define dtoh32(i) (g_swap?bcmswap32(i):(uint32)(i)) +#define dtoh16(i) (g_swap?bcmswap16(i):(uint16)(i)) +#define htodchanspec(i) (g_swap?htod16(i):i) +#define dtohchanspec(i) (g_swap?dtoh16(i):i) +#define htodenum(i) (g_swap?((sizeof(i) == 4) ? htod32(i) : ((sizeof(i) == 2) ? htod16(i) : i)):i) +#define dtohenum(i) (g_swap?((sizeof(i) == 4) ? dtoh32(i) : ((sizeof(i) == 2) ? htod16(i) : i)):i) + +/* + * Country names and abbreviations from ISO 3166 + */ +typedef struct { + const char *name; /* Long name */ + const char *abbrev; /* Abbreviation */ +} cntry_name_t; +cntry_name_t cntry_names[]; /* At end of this file */ + +typedef struct { + uint value; + const char *string; +} dbg_msg_t; + +typedef struct { + uint value; + const char *string; +} phy_msg_t; + +#define WL_SCAN_PARAMS_SSID_MAX 10 +#define SCAN_USAGE "" \ +"\tDefault to an active scan across all channels for any SSID.\n" \ +"\tOptional arg: SSIDs, list of [up to 10] SSIDs to scan (comma or space separated).\n" \ +"\tOptions:\n" \ +"\t-s S, --ssid=S\t\tSSIDs to scan\n" \ +"\t-t ST, --scan_type=ST\t[active|passive|prohibit] scan type\n" \ +"\t--bss_type=BT\t\t[bss/infra|ibss/adhoc] bss type to scan\n" \ +"\t-b MAC, --bssid=MAC\tparticular BSSID MAC address to scan, xx:xx:xx:xx:xx:xx\n" \ +"\t-n N, --nprobes=N\tnumber of probes per scanned channel\n" \ +"\t-a N, --active=N\tdwell time per channel for active scanning\n" \ +"\t-p N, --passive=N\tdwell time per channel for passive scanning\n" \ +"\t-h N, --home=N\t\tdwell time for the home channel between channel scans\n" \ +"\t-c L, --channels=L\tcomma or space separated list of channels to scan" \ + +/* command batching data structure */ +typedef struct wl_seq_cmd_pkt { + struct wl_seq_cmd_pkt *next; + wl_seq_cmd_ioctl_t cmd_header; + char * data; /* user buffer */ +} wl_seq_cmd_pkt_t; + +typedef struct wl_cmd_list { + wl_seq_cmd_pkt_t *head; + wl_seq_cmd_pkt_t *tail; +} wl_cmd_list_t; + +static wl_cmd_list_t cmd_list; +static int cmd_pkt_list_num; +static bool cmd_batching_mode; +/* the default behavior is batching in driver, + * to indicate client batching, users should specify --interactive and --clientbatch + */ +static bool batch_in_client; + +/* If the new command needs to be part of 'wc.exe' tool used for WMM, + * be sure to modify wc_cmds[] array as well + * + * If you add a command, please update wlu_cmd.c cmd2cat to categorize the command. + */ +cmd_t wl_cmds[] = { + { "ver", wl_version, -1, -1, + "get version information" }, + { "cmds", wl_list, -1, -1, + "generate a short list of available commands"}, + { "up", wl_void, -1, WLC_UP, + "reinitialize and mark adapter up (operational)" }, + { "down", wl_void, -1, WLC_DOWN, + "reset and mark adapter down (disabled)" }, + { "out", wl_out, -1, WLC_OUT, + "mark adapter down but do not reset hardware(disabled)\n" + "\tOn dualband cards, cards must be bandlocked before use."}, + { "clk", wl_int, WLC_GET_CLK, WLC_SET_CLK, + "set board clock state. return error for set_clk attempt if the driver is not down\n" + "\t0: clock off\n" + "\t1: clock on" }, + { "restart", wl_void, -1, WLC_RESTART, + "Restart driver. Driver must already be down."}, + { "reboot", wl_void, -1, WLC_REBOOT, + "Reboot platform"}, + { "radio", wl_radio, WLC_GET_RADIO, WLC_SET_RADIO, + "Set the radio on or off.\n" + "\t\"on\" or \"off\"" }, + { "dump", wlu_dump, WLC_GET_VAR, -1, + "Give suboption \"list\" to list various suboptions" }, + { "srclear", wlu_srwrite, -1, WLC_SET_SROM, + "Clears first 'len' bytes of the srom, len in decimal or hex\n" + "\tUsage: srclear " }, + { "srdump", wlu_srdump, WLC_GET_SROM, -1, + "print contents of SPROM to stdout" }, + { "srwrite", wlu_srwrite, -1, WLC_SET_SROM, + "Write the srom: srwrite byteoffset value" }, + { "srcrc", wlu_srwrite, WLC_GET_SROM, -1, + "Get the CRC for input binary file" }, + { "ciswrite", wlu_ciswrite, -1, WLC_SET_VAR, + "Write specified to the SDIO CIS source (either SROM or OTP)"}, + { "cisupdate", wlu_cisupdate, -1, WLC_SET_VAR, + "Write a hex byte stream to specified byte offset to the CIS source (either SROM or OTP)\n" + "--preview option allows you to review the update without committing it\n" + "\t [--preview]" }, + { "cisdump", wlu_cisdump, WLC_GET_VAR, -1, + "Display the content of the SDIO CIS source\n" + "\t-b -- also write raw bytes to \n" + "\t -- optional count of bytes to display (must be even)"}, + { "cis_source", wl_varint, WLC_GET_VAR, -1, + "Display which source is used for the SDIO CIS"}, + { "cisconvert", wlu_srvar, -1, -1, + "Print CIS tuple for given name=value pair" }, + { "rdvar", wlu_srvar, WLC_GET_SROM, -1, + "Read a named variable to the srom" }, + { "wrvar", wlu_srvar, WLC_GET_SROM, WLC_SET_SROM, + "Write a named variable to the srom" }, + { "nvram_source", wl_nvsource, WLC_GET_VAR, -1, + "Display which source is used for nvram"}, + { "nvram_dump", wl_nvdump, WLC_NVRAM_DUMP, -1, + "print nvram variables to stdout" }, + { "nvset", wl_nvset, -1, WLC_NVRAM_SET, + "set an nvram variable\n" + "\tname=value (no spaces around \'=\')" }, + { "nvget", wl_nvget, WLC_NVRAM_GET, -1, + "get the value of an nvram variable" }, + { "nvram_get", wl_nvget, WLC_NVRAM_GET, -1, + "get the value of an nvram variable" }, + { "revinfo", wl_revinfo, WLC_GET_REVINFO, -1, + "get hardware revision information" }, + { "customvar1", wl_var_getinthex, -1, -1, + "print the value of customvar1 in hex format" }, + { "msglevel", wl_msglevel, WLC_GET_VAR, WLC_SET_VAR, + "set driver console debugging message bitvector\n" + "\ttype \'wl msglevel ?\' for values" }, + { "phymsglevel", wl_phymsglevel, WLC_GET_VAR, WLC_SET_VAR, + "set phy debugging message bitvector\n" + "\ttype \'wl phymsglevel ?\' for values" }, + { "PM", wl_int, WLC_GET_PM, WLC_SET_PM, + "set driver power management mode:\n" + "\t0: CAM (constantly awake)\n" + "\t1: PS (power-save)\n" + "\t2: FAST PS mode" }, + { "wake", wl_int, WLC_GET_WAKE, WLC_SET_WAKE, + "set driver power-save mode sleep state:\n" + "\t0: core-managed\n" + "\t1: awake" }, + { "promisc", wl_int, WLC_GET_PROMISC, WLC_SET_PROMISC, + "set promiscuous mode ethernet address reception\n" + "\t0 - disable\n" + "\t1 - enable" }, + { "monitor", wl_int, WLC_GET_MONITOR, WLC_SET_MONITOR, + "set monitor mode\n" + "\t0 - disable\n" + "\t1 - enable active monitor mode (interface still operates)" }, + { "frag", wl_print_deprecate, -1, -1, "Deprecated. Use fragthresh." }, + { "rts", wl_print_deprecate, -1, -1, "Deprecated. Use rtsthresh." }, + { "cwmin", wl_int, WLC_GET_CWMIN, WLC_SET_CWMIN, + "Set the cwmin. (integer [1, 255])" }, + { "cwmax", wl_int, WLC_GET_CWMAX, WLC_SET_CWMAX, + "Set the cwmax. (integer [256, 2047])" }, + { "srl", wl_int, WLC_GET_SRL, WLC_SET_SRL, + "Set the short retry limit. (integer [1, 255])" }, + { "lrl", wl_int, WLC_GET_LRL, WLC_SET_LRL, + "Set the long retry limit. (integer [1, 255])" }, + { "rate", wl_rate_mrate, WLC_GET_RATE, -1, + "force a fixed rate:\n" + "\tvalid values for 802.11a are (6, 9, 12, 18, 24, 36, 48, 54)\n" + "\tvalid values for 802.11b are (1, 2, 5.5, 11)\n" + "\tvalid values for 802.11g are (1, 2, 5.5, 6, 9, 11, 12, 18, 24, 36, 48, 54)\n" + "\t-1 (default) means automatically determine the best rate" }, + { "mrate", wl_rate_mrate, -1, -1, /* Deprecated. Use "bg_mrate" or "a_mrate" */ + "force a fixed multicast rate:\n" + "\tvalid values for 802.11a are (6, 9, 12, 18, 24, 36, 48, 54)\n" + "\tvalid values for 802.11b are (1, 2, 5.5, 11)\n" + "\tvalid values for 802.11g are (1, 2, 5.5, 6, 9, 11, 12, 18, 24, 36, 48, 54)\n" + "\t-1 (default) means automatically determine the best rate" }, + { "a_rate", wl_phy_rate, WLC_GET_VAR, WLC_SET_VAR, + "force a fixed rate for the A PHY:\n" + "\tvalid values for 802.11a are (6, 9, 12, 18, 24, 36, 48, 54)\n" + "\t-1 (default) means automatically determine the best rate" }, + { "a_mrate", wl_phy_rate, WLC_GET_VAR, WLC_SET_VAR, + "force a fixed multicast rate for the A PHY:\n" + "\tvalid values for 802.11a are (6, 9, 12, 18, 24, 36, 48, 54)\n" + "\t-1 (default) means automatically determine the best rate" }, + { "bg_rate", wl_phy_rate, WLC_GET_VAR, WLC_SET_VAR, + "force a fixed rate for the B/G PHY:\n" + "\tvalid values for 802.11b are (1, 2, 5.5, 11)\n" + "\tvalid values for 802.11g are (1, 2, 5.5, 6, 9, 11, 12, 18, 24, 36, 48, 54)\n" + "\t-1 (default) means automatically determine the best rate" }, + { "bg_mrate", wl_phy_rate, WLC_GET_VAR, WLC_SET_VAR, + "force a fixed multicast rate for the B/G PHY:\n" + "\tvalid values for 802.11b are (1, 2, 5.5, 11)\n" + "\tvalid values for 802.11g are (1, 2, 5.5, 6, 9, 11, 12, 18, 24, 36, 48, 54)\n" + "\t-1 (default) means automatically determine the best rate" }, + { "infra", wl_int, WLC_GET_INFRA, WLC_SET_INFRA, + "Set Infrastructure mode: 0 (IBSS) or 1 (Infra BSS)" }, + { "ap", wl_int, WLC_GET_AP, WLC_SET_AP, + "Set AP mode: 0 (STA) or 1 (AP)" }, + { "bssid", wl_bssid, WLC_GET_BSSID, -1, + "Get the BSSID value, error if STA and not associated"}, + { "bssmax", wl_bss_max, WLC_GET_VAR, -1, + "get number of BSSes " }, + { "channel", wl_channel, WLC_GET_CHANNEL, WLC_SET_CHANNEL, + "Set the channel:\n" + "\tvalid channels for 802.11b/g (2.4GHz band) are 1 through 14\n" + "\tvalid channels for 802.11a (5 GHz band) are:\n" + "\t\t36, 40, 44, 48, 52, 56, 60, 64,\n" + "\t\t100, 104, 108, 112, 116,120, 124, 128, 132, 136, 140,\n" + "\t\t149, 153, 157, 161,\n" + "\t\t184, 188, 192, 196, 200, 204, 208, 212, 216"}, + { "cur_mcsset", wl_cur_mcsset, WLC_GET_VAR, -1, + "Get the current mcs set" + }, + { "chanspecs", wl_dump_chanspecs, WLC_GET_VAR, -1, + "Get all the valid chanspecs (default: all within current locale):\n" + "\t-b band (5(a) or 2(b/g))\n" + "\t-w bandwidth, 10,20 or 40\n" + "\t[-c country_abbrev]" + }, + { "chanspec", wl_chanspec, WLC_GET_VAR, WLC_SET_VAR, + "Set [a,b][n][u,l]\n" + "\tchannel number (0-224)\n" + "\tband a=5G, b=2G, default to 2G if channel <= 14\n" + "\tbandwidth, n=10, none for 20 & 40\n" + "\tctl sideband, l=lower, u=upper\n" + "OR Set channel with legacy format:\n" + "\t-c channel number (0-224)\n" + "\t-b band (5(a) or 2(b/g))\n" + "\t-w bandwidth, 10,20 or 40\n" + "\t-s ctl sideband, -1=lower, 0=none, 1=upper"}, + { "dfs_channel_forced", wl_chanspec, WLC_GET_VAR, WLC_SET_VAR, + "Set [a,b][n][u,l]\n" + "\tchannel number (0-224)\n" + "\tband a=5G, b=2G, default to 2G if channel <= 14\n" + "\tbandwidth, n=10, non for 20 & 40\n" + "\tctl sideband, l=lower, u=upper"}, + { "tssi", wl_tssi, WLC_GET_TSSI, -1, + "Get the tssi value from radio" }, + { "txpwr", wl_txpwr, -1, -1, /* Deprecated. Use "txpwr1" */ + "Set tx power in milliwatts. Range [1, 84]." }, + { "txpwr1", wl_txpwr1, WLC_GET_VAR, WLC_SET_VAR, + "Set tx power in in various units. Choose one of (default: dbm): \n" + "\t-d dbm units\n" + "\t-q quarter dbm units\n" + "\t-m milliwatt units\n" + "Can be combined with:\n" + "\t-o turn on override to disable regulatory and other limitations\n" + "Use wl txpwr -1 to restore defaults"}, + { "txpathpwr", wl_int, WLC_GET_TX_PATH_PWR, WLC_SET_TX_PATH_PWR, + "Turn the tx path power on or off on 2050 radios" }, + { "txpwrlimit", wl_get_txpwr_limit, WLC_CURRENT_PWR, -1, + "Return current tx power limit" }, + { "powerindex", wl_int, WLC_GET_PWRIDX, WLC_SET_PWRIDX, + "Set the transmit power for A band(0-63).\n" + "\t-1 - default value" }, + { "atten", wl_atten, WLC_GET_ATTEN, WLC_SET_ATTEN, + "Set the transmit attenuation for B band. Args: bb radio txctl1.\n" + "\tauto to revert to automatic control\n" + "\tmanual to supspend automatic control" }, + { "phyreg", wl_reg, WLC_GET_PHYREG, WLC_SET_PHYREG, + "Get/Set a phy register:\n" + "\toffset [ value ] [ band ]" }, + { "radioreg", wl_reg, WLC_GET_RADIOREG, WLC_SET_RADIOREG, + "Get/Set a radio register:\n" + "\toffset [ value ] [ band/core ]\n" + "HTPHY:\n" + "\tGet a radio register: wl radioreg [ offset ] [ cr0/cr1/cr2 ]\n" + "\tSet a radio register: wl radioreg [ offset ] [ value ] [ cr0/cr1/cr2/all ]\n"}, + { "ucflags", wl_reg, WLC_GET_UCFLAGS, WLC_SET_UCFLAGS, + "Get/Set ucode flags 1, 2, 3(16 bits each)\n" + "\toffset [ value ] [ band ]" }, + { "shmem", wl_reg, WLC_GET_SHMEM, WLC_SET_SHMEM, + "Get/Set a shared memory location:\n" + "\toffset [ value ] [band ]" }, + { "macreg", wl_macreg, WLC_R_REG, WLC_W_REG, + "Get/Set any mac registers(include IHR and SB):\n" + "\tmacreg offset size[2,4] [ value ] [ band ]" }, + { "ucantdiv", wl_int, WLC_GET_UCANTDIV, WLC_SET_UCANTDIV, + "Enable/disable ucode antenna diversity (1/0 or on/off)" }, + { "gpioout", wl_gpioout, -1, -1, + "Set any GPIO pins to any value. Use with caution as GPIOs would be " + "assigned to chipcommon\n" + "\tUsage: gpiomask gpioval"}, + { "devpath", wl_devpath, WLC_GET_VAR, -1, + "print device path" }, + + { "jtagureg", wlu_reg2args, WLC_GET_VAR, WLC_SET_VAR, "g/set JTAG user registers"}, + { "coma", wl_coma, -1, WLC_SET_VAR, "Put the router in a catatonic state"}, + { "pllreset", wl_var_void, -1, WLC_SET_VAR, "set the pll to reset value\n" + "\tUsage: wl pllreset"}, + { "pcieserdesreg", wlu_reg3args, WLC_GET_VAR, WLC_SET_VAR, + "g/set SERDES registers: dev offset [val]"}, + { "ampdu_activate_test", wl_ampdu_activate_test, -1, WLC_SET_VAR, + "actiate" }, + /* nphy parameter setting is internal only for now */ + { "ampdu_tid", wl_ampdu_tid, WLC_GET_VAR, WLC_SET_VAR, + "enable/disable per-tid ampdu; usage: wl ampdu_tid [0/1]" }, + { "ampdu_retry_limit_tid", wl_ampdu_retry_limit_tid, WLC_GET_VAR, WLC_SET_VAR, + "Set per-tid ampdu retry limit; usage: wl ampdu_retry_limit_tid [0~31]" }, + { "ampdu_rr_retry_limit_tid", wl_ampdu_rr_retry_limit_tid, WLC_GET_VAR, WLC_SET_VAR, + "Set per-tid ampdu regular rate retry limit; usage: " + "wl ampdu_rr_retry_limit_tid [0~31]" }, + { "ampdu_send_addba", wl_ampdu_send_addba, WLC_GET_VAR, WLC_SET_VAR, + "send addba to specified ea-tid; usage: wl ampdu_send_addba " }, + { "ampdu_send_delba", wl_ampdu_send_delba, WLC_GET_VAR, WLC_SET_VAR, + "send delba to specified ea-tid; usage: wl ampdu_send_delba " }, + { "ampdu_clear_dump", wl_var_void, -1, WLC_SET_VAR, + "clear ampdu counters"}, + { "dpt_deny", wl_dpt_deny, WLC_GET_VAR, WLC_SET_VAR, + "adds/removes ea to dpt deny list\n" + "\tusage: wl dpt_deny " }, + { "dpt_endpoint", wl_dpt_endpoint, WLC_GET_VAR, WLC_SET_VAR, + "creates/updates/deletes dpt endpoint for ea\n" + "\tusage: wl dpt_endpoint " }, + { "dpt_pmk", wl_dpt_pmk, -1, WLC_SET_VAR, + "sets DPT pre-shared key" }, + { "dpt_fname", wl_dpt_fname, WLC_GET_VAR, WLC_SET_VAR, + "sets/gets DPT friendly name" }, + { "dpt_list", wl_dpt_list, WLC_GET_VAR, -1, + "gets status of all dpt peers" }, +#ifdef WLBTAMP + { "HCI_cmd", wl_HCI_cmd, WLC_GET_VAR, WLC_SET_VAR, + "carries HCI commands to the driver\n" + "\tusage: wl HCI_cmd " }, + { "HCI_ACL_data", wl_HCI_ACL_data, WLC_GET_VAR, WLC_SET_VAR, + "carries HCI ACL data packet to the driver\n" + "\tusage: wl HCI_ACL_data " }, + { "btamp_statelog", wl_get_btamp_log, WLC_GET_VAR, WLC_SET_VAR, + "Return state transistion log of BTAMP\n" }, +#endif /* WLBTAMP */ + { "actframe", wl_actframe, -1, WLC_SET_VAR, + "Send a Vendor specific Action frame to a channel\n" + "\tusage: wl actframe channel dwell-time " }, + { "antdiv", wl_int, WLC_GET_ANTDIV, WLC_SET_ANTDIV, + "Set antenna diversity for rx\n" + "\t0 - force use of antenna 0\n" + "\t1 - force use of antenna 1\n" + "\t3 - automatic selection of antenna diversity" }, + { "txant", wl_int, WLC_GET_TXANT, WLC_SET_TXANT, + "Set the transmit antenna\n" + "\t0 - force use of antenna 0\n" + "\t1 - force use of antenna 1\n" + "\t3 - use the RX antenna selection that was in force during\n" + "\t the most recently received good PLCP header" }, + { "plcphdr", wl_plcphdr, WLC_GET_PLCPHDR, WLC_SET_PLCPHDR, + "Set the plcp header.\n" + "\t\"long\" or \"auto\" or \"debug\"" }, + { "phytype", wl_int, WLC_GET_PHYTYPE, -1, + "Get phy type" }, + { "rateparam", wl_rateparam, -1, WLC_SET_RATE_PARAMS, + "set driver rate selection tunables\n" + "\targ 1: tunable id\n" + "\targ 2: tunable value" }, + { "wepstatus", wl_wepstatus, -1, -1, /* Deprecated. Use "wsec" */ + "Set or Get WEP status\n" + "\twepstatus [on|off]" }, + { "primary_key", wl_primary_key, WLC_GET_KEY_PRIMARY, WLC_SET_KEY_PRIMARY, + "Set or get index of primary key" }, + { "addwep", wl_addwep, -1, WLC_SET_KEY, + "Set an encryption key. The key must be 5, 13 or 16 bytes long, or\n" + "\t10, 26, 32, or 64 hex digits long. The encryption algorithm is\n" + "\tautomatically selected based on the key size. keytype is accepted\n" + "\tonly when key length is 16 bytes/32 hex digits and specifies\n" + "\twhether AES-OCB or AES-CCM encryption is used. Default is ccm.\n" + "\tWAPI is selected if key len is 32 and arguments contain wapi.\n" + "\taddwep [ocb | ccm | wapi] [notx] [xx:xx:xx:xx:xx:xx]" }, + { "rmwep", wl_rmwep, -1, WLC_SET_KEY, + "Remove the encryption key at the specified key index." }, + { "keys", wl_keys, WLC_GET_KEY, -1, + "Prints a list of the current WEP keys" }, + { "tsc", wl_tsc, WLC_GET_KEY_SEQ, -1, + "Print Tx Sequence Couter for key at specified key index." }, + { "wsec_test", wl_wsec_test, -1, WLC_SET_WSEC_TEST, + "Generate wsec errors\n" + "\twsec_test \n" + "\ttype \'wl wsec_test ?\' for test_types" }, + { "tkip_countermeasures", wl_int, -1, WLC_TKIP_COUNTERMEASURES, + "Enable or disable TKIP countermeasures (TKIP-enabled AP only)\n" + "\t0 - disable\n" + "\t1 - enable" }, + { "wsec_restrict", wl_bsscfg_int, WLC_GET_WEP_RESTRICT, WLC_SET_WEP_RESTRICT, + "Drop unencrypted packets if WSEC is enabled\n" + "\t0 - disable\n" + "\t1 - enable" }, + { "eap", wl_int, WLC_GET_EAP_RESTRICT, WLC_SET_EAP_RESTRICT, + "restrict traffic to 802.1X packets until 802.1X authorization succeeds\n" + "\t0 - disable\n" + "\t1 - enable" }, + { "cur_etheraddr", wl_iov_mac, -1, -1, + "Get/set the current hw address" }, + { "perm_etheraddr", wl_iov_mac, -1, -1, + "Get the permanent address from NVRAM" }, + { "authorize", wl_mac, -1, WLC_SCB_AUTHORIZE, + "restrict traffic to 802.1X packets until 802.1X authorization succeeds" }, + { "deauthorize", wl_mac, -1, WLC_SCB_DEAUTHORIZE, + "do not restrict traffic to 802.1X packets until 802.1X authorization succeeds" }, + { "deauthenticate", wl_deauth_rc, -1, WLC_SCB_DEAUTHENTICATE_FOR_REASON, + "deauthenticate a STA from the AP with optional reason code (AP ONLY)" }, + { "wsec", wl_wsec, WLC_GET_WSEC, WLC_SET_WSEC, + "wireless security bit vector\n" + "\t1 - WEP enabled\n" + "\t2 - TKIP enabled\n" + "\t4 - AES enabled\n" + "\t8 - WSEC in software\n" + "\t0x80 - FIPS enabled\n" + "\t0x100 - WAPI enabled" }, + { "auth", wl_bsscfg_int, WLC_GET_AUTH, WLC_SET_AUTH, + "set/get 802.11 authentication type. 0 = OpenSystem, 1= SharedKey, 2=Open/Shared" }, + { "wpa_auth", wl_wpa_auth, WLC_GET_WPA_AUTH, WLC_SET_WPA_AUTH, + "Bitvector of WPA authorization modes:\n" + "\t1 WPA-NONE\n" + "\t2 WPA-802.1X/WPA-Professional\n" + "\t4 WPA-PSK/WPA-Personal\n" + "\t64 WPA2-802.1X/WPA2-Professional\n" + "\t128 WPA2-PSK/WPA2-Personal\n" + "\t0 disable WPA" + }, + { "wpa_cap", wl_bsscfg_int, WLC_GET_VAR, WLC_SET_VAR, + "set/get 802.11i RSN capabilities" }, + { "set_pmk", wl_set_pmk, -1, WLC_SET_WSEC_PMK, + "Set passphrase for PMK in driver-resident supplicant." }, + { "scan", wl_scan, -1, WLC_SCAN, + "Initiate a scan.\n" SCAN_USAGE + }, + { "iscan_s", wl_iscan, -1, WLC_SET_VAR, + "Initiate an incremental scan.\n" SCAN_USAGE + }, + { "iscan_c", wl_iscan, -1, WLC_SET_VAR, + "Continue an incremental scan.\n" SCAN_USAGE + }, + { "scancache_clear", wl_var_void, -1, WLC_SET_VAR, + "clear the scan cache"}, + { "escan", wl_escan, -1, WLC_SET_VAR, + "Start an escan.\n" SCAN_USAGE + }, + { "escanabort", wl_escan, -1, WLC_SET_VAR, + "Abort an escan.\n" SCAN_USAGE + }, +#ifdef EXTENDED_SCAN + { "extdscan", wl_extdscan, -1, WLC_SET_VAR, + "Initiate an extended scan.\n" + "\tDefault to an active scan across all channels for any SSID.\n" + "\tOptional args: list of SSIDs to scan.\n" + "\tOptions:\n" + "\t-s S1 S2 S3, --ssid=S1 S2 S3\t\tSSIDs to scan, comma or space separated\n" + "\t-x x, --split_scan=ST\t[split_scan] scan type\n" + "\t-t ST, --scan_type=ST\t[background:0/forcedbackground:1/foreground:2] scan type\n" + "\t-n N, --nprobes=N\tnumber of probes per scanned channel, per SSID\n" + "\t-c L, --channels=L\tcomma or space separated list of channels to scan"}, +#endif + { "passive", wl_int, WLC_GET_PASSIVE_SCAN, WLC_SET_PASSIVE_SCAN, + "Puts scan engine into passive mode" }, + { "regulatory", wl_int, WLC_GET_REGULATORY, WLC_SET_REGULATORY, + "Get/Set regulatory domain mode (802.11d). Driver must be down." }, + { "spect", wl_spect, WLC_GET_SPECT_MANAGMENT, WLC_SET_SPECT_MANAGMENT, + "Get/Set 802.11h Spectrum Management mode.\n" + "\t0 - Off\n" + "\t1 - Loose interpretation of 11h spec - may join non-11h APs\n" + "\t2 - Strict interpretation of 11h spec - may not join non-11h APs\n" + "\t3 - Disable 11h and enable 11d\n" + "\t4 - Loose interpretation of 11h+d spec - may join non-11h APs" + }, + {"scanabort", wl_var_void, -1, WLC_SET_VAR, + "Abort a scan."}, + { "scanresults", wl_dump_networks, WLC_SCAN_RESULTS, -1, + "Return results from last scan." }, + { "iscanresults", wl_dump_networks, WLC_GET_VAR, -1, + "Return results from last iscan. Specify a buflen (max 8188)\n" + "\tto artificially limit the size of the results buffer.\n" + "\tiscanresults [buflen]"}, + { "assoc", wl_status, -1, -1, + "Print information about current network association.\n" + "\t(also known as \"status\")" }, + { "status", wl_status, -1, -1, + "Print information about current network association.\n" + "\t(also known as \"assoc\")" }, + { "disassoc", wl_void, -1, WLC_DISASSOC, + "Disassociate from the current BSS/IBSS." }, + { "chanlist", wl_print_deprecate, WLC_GET_VALID_CHANNELS, -1, + "Deprecated. Use channels." }, + { "channels", wl_dump_chanlist, WLC_GET_VALID_CHANNELS, -1, + "Return valid channels for the current settings." }, + { "channels_in_country", wl_channels_in_country, WLC_GET_CHANNELS_IN_COUNTRY, -1, + "Return valid channels for the country specified.\n" + "\tArg 1 is the country abbreviation\n" + "\tArg 2 is the band(a or b)"}, + { "curpower", wl_get_current_power, WLC_CURRENT_PWR, -1, + "Return current tx power settings.\n" + "\t-q (quiet): estimated power only." }, + { "curppr", wl_get_current_txppr, WLC_GET_VAR, -1, + "Return current tx power per rate offset.\n"}, + { "txinstpwr", wl_get_instant_power, WLC_GET_VAR, -1, + "Return tx power based on instant TSSI "}, + { "scansuppress", wl_int, WLC_GET_SCANSUPPRESS, WLC_SET_SCANSUPPRESS, + "Suppress all scans for testing.\n" + "\t0 - allow scans\n" + "\t1 - suppress scans" }, + { "evm", wl_evm, -1, WLC_EVM, + "Start an EVM test on the given channel, or stop EVM test.\n" + "\tArg 1 is channel number 1-14, or \"off\" or 0 to stop the test.\n" + "\tArg 2 is optional rate (1, 2, 5.5 or 11)"}, + { "rateset", wl_rateset, WLC_GET_RATESET, WLC_SET_RATESET, + "Returns or sets the supported and basic rateset, (b) indicates basic\n" + "\tWith no args, returns the rateset. Args are\n" + "\trateset \"default\" | \"all\" | -m \n" + "\t\tdefault - driver defaults\n" + "\t\tall - all rates are basic rates\n" + "\t\tarbitrary rateset - list of rates\n" + "\t\tarbitrary mcsset - list of mcs rates octets, each bit representing\n" + "\t\t\t\tcorresponding mcs\n" + "\tList of rates are in Mbps and each rate is optionally followed\n" + "\tby \"(b)\" or \"b\" for a Basic rate. Example: 1(b) 2b 5.5 11\n" + "\tAt least one rate must be Basic for a legal rateset."}, + { "roam_trigger", wl_band_elm, WLC_GET_ROAM_TRIGGER, WLC_SET_ROAM_TRIGGER, + "Get or Set the roam trigger RSSI threshold:\n" + "\tGet: roam_trigger [a|b]\n" + "\tSet: roam_trigger [a|b|all]\n" + "\tinteger - 0: default\n" + "\t 1: optimize bandwidth\n" + "\t 2: optimize distance\n" + "\t [-1, -99]: dBm trigger value"}, + { "roam_delta", wl_band_elm, WLC_GET_ROAM_DELTA, WLC_SET_ROAM_DELTA, + "Set the roam candidate qualification delta. roam_delta [integer [, a/b]]" }, + { "roam_scan_period", wl_int, WLC_GET_ROAM_SCAN_PERIOD, WLC_SET_ROAM_SCAN_PERIOD, + "Set the roam candidate qualification delta. (integer)" }, + { "suprates", wl_sup_rateset, WLC_GET_SUP_RATESET_OVERRIDE, WLC_SET_SUP_RATESET_OVERRIDE, + "Returns or sets the 11g override for the supported rateset\n" + "\tWith no args, returns the rateset. Args are a list of rates,\n" + "\tor 0 or -1 to specify an empty rateset to clear the override.\n" + "\tList of rates are in Mbps, example: 1 2 5.5 11"}, + { "scan_channel_time", wl_int, WLC_GET_SCAN_CHANNEL_TIME, WLC_SET_SCAN_CHANNEL_TIME, + "Get/Set scan channel time"}, + { "scan_unassoc_time", wl_int, WLC_GET_SCAN_UNASSOC_TIME, WLC_SET_SCAN_UNASSOC_TIME, + "Get/Set unassociated scan channel dwell time"}, + { "scan_home_time", wl_int, WLC_GET_SCAN_HOME_TIME, WLC_SET_SCAN_HOME_TIME, + "Get/Set scan home channel dwell time"}, + { "scan_passive_time", wl_int, WLC_GET_SCAN_PASSIVE_TIME, WLC_SET_SCAN_PASSIVE_TIME, + "Get/Set passive scan channel dwell time"}, + { "scan_nprobes", wl_int, WLC_GET_SCAN_NPROBES, WLC_SET_SCAN_NPROBES, + "Get/Set scan parameter for number of probes to use per channel scanned"}, + { "prb_resp_timeout", wl_int, WLC_GET_PRB_RESP_TIMEOUT, WLC_SET_PRB_RESP_TIMEOUT, + "Get/Set probe response timeout"}, + { "channel_qa", wl_int, WLC_GET_CHANNEL_QA, -1, + "Get last channel quality measurment"}, + { "channel_qa_start", wl_void, -1, WLC_START_CHANNEL_QA, + "Start a channel quality measurment"}, + { "country", wl_country, WLC_GET_COUNTRY, WLC_SET_COUNTRY, + "Select Country Code for driver operational region\n" + "\tFor simple country setting: wl country \n" + "\tWhere is either a long name or country code from ISO 3166; " + "for example \"Germany\" or \"DE\"\n" + "\n\tFor a specific built-in country definition: " + "wl country []\n" + "\tWhere is a country country code followed by '/' and " + "regulatory revision number.\n" + "\tFor example, \"US/3\".\n" + "\tAnd where is either a long name or country code from ISO 3166.\n" + "\tIf is omitted, it will be the same as the built-in country code.\n" + "\n\tUse 'wl country list [band(a or b)]' for the list of supported countries"}, + { "country_ie_override", wl_country_ie_override, WLC_GET_VAR, WLC_SET_VAR, + "To set/get country ie"}, + { "autocountry_default", wl_varstr, WLC_GET_VAR, WLC_SET_VAR, + "Select Country Code for use with Auto Contry Discovery"}, + { "join", wl_join, -1, -1, + "Join a specified network SSID.\n" + "\tUsage: join [key <0-3>:xxxxx] [imode bss|ibss] " + "[amode open|shared|openshared|wpa|wpapsk|wpa2|wpa2psk|wpanone] [options]\n" + "\tOptions:\n" + "\t-b MAC, --bssid=MAC \tBSSID (xx:xx:xx:xx:xx:xx) to scan and join\n" + "\t-c CL, --chanspecs=CL \tchanspecs (comma or space separated list)"}, + { "ssid", wl_ssid, WLC_GET_SSID, WLC_SET_SSID, + "Set or get a configuration's SSID.\n" + "\twl ssid [-C num]|[--cfg=num] []\n" + "\tIf the configuration index 'num' is not given, configuraion #0 is assumed and\n" + "\tsetting will initiate an assoication attempt if in infrastructure mode,\n" + "\tor join/creation of an IBSS if in IBSS mode,\n" + "\tor creation of a BSS if in AP mode."}, + { "mac", wl_maclist, WLC_GET_MACLIST, WLC_SET_MACLIST, + "Set or get the list of source MAC address matches.\n" + "\twl mac xx:xx:xx:xx:xx:xx [xx:xx:xx:xx:xx:xx ...]\n" + "\tTo Clear the list: wl mac none" }, + { "macmode", wl_int, WLC_GET_MACMODE, WLC_SET_MACMODE, + "Set the mode of the MAC list.\n" + "\t0 - Disable MAC address matching.\n" + "\t1 - Deny association to stations on the MAC list.\n" + "\t2 - Allow association to stations on the MAC list."}, + { "wds", wl_maclist, WLC_GET_WDSLIST, WLC_SET_WDSLIST, + "Set or get the list of WDS member MAC addresses.\n" + "\tSet using a space separated list of MAC addresses.\n" + "\twl wds xx:xx:xx:xx:xx:xx [xx:xx:xx:xx:xx:xx ...]" }, + { "lazywds", wl_int, WLC_GET_LAZYWDS, WLC_SET_LAZYWDS, + "Set or get \"lazy\" WDS mode (dynamically grant WDS membership to anyone)."}, + { "noise", wl_int, WLC_GET_PHY_NOISE, -1, + "Get noise (moving average) right after tx in dBm" }, + { "fqacurcy", wl_int, -1, WLC_FREQ_ACCURACY, + "Manufacturing test: set frequency accuracy mode.\n" + "\tfreqacuracy syntax is: fqacurcy \n" + "\tArg is channel number 1-14, or 0 to stop the test." }, + { "crsuprs", wl_int, -1, WLC_CARRIER_SUPPRESS, + "Manufacturing test: set carrier suppression mode.\n" + "\tcarriersuprs syntax is: crsuprs \n" + "\tArg is channel number 1-14, or 0 to stop the test." }, + { "longtrain", wl_int, -1, WLC_LONGTRAIN, + "Manufacturing test: set longtraining mode.\n" + "\tlongtrain syntax is: longtrain \n" + "\tArg is A band channel number or 0 to stop the test." }, + { "band", wl_band, WLC_GET_BAND, WLC_SET_BAND, + "Returns or sets the current band\n" + "\tauto - auto switch between available bands (default)\n" + "\ta - force use of 802.11a band\n" + "\tb - force use of 802.11b band" }, + { "bands", wl_bandlist, WLC_GET_BANDLIST, -1, + "Return the list of available 802.11 bands" }, + { "phylist", wl_phylist, WLC_GET_PHYLIST, -1, + "Return the list of available phytypes" }, + { "shortslot", wl_int, WLC_GET_SHORTSLOT, -1, + "Get current 11g Short Slot Timing mode. (0=long, 1=short)" }, + { "shortslot_override", wl_int, WLC_GET_SHORTSLOT_OVERRIDE, WLC_SET_SHORTSLOT_OVERRIDE, + "Get/Set 11g Short Slot Timing mode override. (-1=auto, 0=long, 1=short)" }, + { "shortslot_restrict", wl_int, WLC_GET_SHORTSLOT_RESTRICT, WLC_SET_SHORTSLOT_RESTRICT, + "Get/Set AP Restriction on associations for 11g Short Slot Timing capable STAs.\n" + "\t0 - Do not restrict association based on ShortSlot capability\n" + "\t1 - Restrict association to STAs with ShortSlot capability" }, + { "ignore_bcns", wl_int, WLC_GET_IGNORE_BCNS, WLC_SET_IGNORE_BCNS, + "AP only (G mode): Check for beacons without NONERP element" + "(0=Examine beacons, 1=Ignore beacons)" }, + { "pktcnt", wl_get_pktcnt, WLC_GET_PKTCNTS, -1, + "Get the summary of good and bad packets." }, + { "upgrade", wl_upgrade, -1, WLC_UPGRADE, + "Upgrade the firmware on an embedded device" }, + { "gmode", wl_gmode, WLC_GET_GMODE, WLC_SET_GMODE, + "Set the 54g Mode (LegacyB|Auto||GOnly|BDeferred|Performance|LRS)" }, + { "gmode_protection", wl_int, WLC_GET_GMODE_PROTECTION, -1, + "Get G protection mode. (0=disabled, 1=enabled)" }, + { "gmode_protection_control", wl_int, WLC_GET_PROTECTION_CONTROL, + WLC_SET_PROTECTION_CONTROL, + "Get/Set 11g protection mode control alg." + "(0=always off, 1=monitor local association, 2=monitor overlapping BSS)" }, + { "gmode_protection_override", wl_int, WLC_GET_GMODE_PROTECTION_OVERRIDE, + WLC_SET_GMODE_PROTECTION_OVERRIDE, + "Get/Set 11g protection mode override. (-1=auto, 0=disable, 1=enable)" }, + { "protection_control", wl_int, WLC_GET_PROTECTION_CONTROL, + WLC_SET_PROTECTION_CONTROL, + "Get/Set protection mode control alg." + "(0=always off, 1=monitor local association, 2=monitor overlapping BSS)" }, + { "legacy_erp", wl_int, WLC_GET_LEGACY_ERP, WLC_SET_LEGACY_ERP, + "Get/Set 11g legacy ERP inclusion (0=disable, 1=enable)" }, + { "scb_timeout", wl_int, WLC_GET_SCB_TIMEOUT, WLC_SET_SCB_TIMEOUT, + "AP only: inactivity timeout value for authenticated stas" }, + { "assoclist", wl_maclist, WLC_GET_ASSOCLIST, -1, + "AP only: Get the list of associated MAC addresses."}, + { "isup", wl_int, WLC_GET_UP, -1, + "Get driver operational state (0=down, 1=up)"}, + { "rssi", wl_rssi, WLC_GET_RSSI, -1, + "Get the current RSSI val, for an AP you must specify the mac addr of the STA" }, + { "rssi_event", wl_rssi_event, WLC_GET_VAR, WLC_SET_VAR, + "Set parameters associated with RSSI event notification\n" + "\tusage: wl rssi_event \n" + "\trate_limit: Number of events posted to application will be limited" + " to 1 per this rate limit. Set to 0 to disable rate limit.\n" + "\trssi_levels: Variable number of RSSI levels (maximum 8) " + " in increasing order (e.g. -85 -70 -60). An event will be posted" + " each time the RSSI of received beacons/packets crosses a level."}, + { "fasttimer", wl_print_deprecate, -1, -1, + "Deprecated. Use fast_timer."}, + { "slowtimer", wl_print_deprecate, -1, -1, + "Deprecated. Use slow_timer."}, + { "glacialtimer", wl_print_deprecate, -1, -1, + "Deprecated. Use glacial_timer."}, + { "radar", wl_int, WLC_GET_RADAR, WLC_SET_RADAR, + "Enable/Disable radar"}, + { "radarargs", wl_radar_args, WLC_GET_VAR, WLC_SET_VAR, + "Get/Set Radar parameters in \n" + "\torder as version, npulses, ncontig, min_pw, max_pw, thresh0,\n" + "\tthresh1, blank, fmdemodcfg, npulses_lp, min_pw_lp, max_pw_lp,\n" + "\tmin_fm_lp, max_span_lp, min_deltat, max_deltat,\n" + "\tautocorr, st_level_time, t2_min, fra_pulse_err, npulses_fra,\n" + "\tnpulses_stg2, npulses_stg3, percal_mask, quant, \n" + "\tmin_burst_intv_lp, max_burst_intv_lp, nskip_rst_lp, max_pw_tol, feature_mask"}, + { "radarargs40", wl_radar_args, WLC_GET_VAR, WLC_SET_VAR, + "Get/Set Radar parameters for 40Mhz channel in \n" + "\torder as version, npulses, ncontig, min_pw, max_pw, thresh0,\n" + "\tthresh1, blank, fmdemodcfg, npulses_lp, min_pw_lp, max_pw_lp,\n" + "\tmin_fm_lp, max_span_lp, min_deltat, max_deltat,\n" + "\tautocorr, st_level_time, t2_min, fra_pulse_err, npulses_fra,\n" + "\tnpulses_stg2, npulses_stg3, percal_mask, quant, \n" + "\tmin_burst_intv_lp, max_burst_intv_lp, nskip_rst_lp, max_pw_tol, feature_mask"}, + { "radarthrs", wl_radar_thrs, -1, WLC_SET_VAR, + "Set Radar threshold for both 20 & 40MHz BW:\n" + "\torder as thresh0_20_lo, thresh1_20_lo, thresh0_40_lo, thresh1_40_lo\n" + "\tthresh0_20_hi, thresh1_20_hi, thresh0_40_hi, thresh1_40_hi"}, + { "dfs_status", wl_dfs_status, WLC_GET_VAR, -1, + "Get dfs status"}, + { "interference", wl_interfere, WLC_GET_INTERFERENCE_MODE, WLC_SET_INTERFERENCE_MODE, + "Get/Set interference mitigation mode. Choices are:\n" + "\t0 = none\n" + "\t1 = non wlan\n" + "\t2 = wlan manual\n" + "\t3 = wlan automatic\n" + "\t4 = wlan automatic with noise reduction"}, + { "interference_override", wl_interfere_override, + WLC_GET_INTERFERENCE_OVERRIDE_MODE, + WLC_SET_INTERFERENCE_OVERRIDE_MODE, + "Get/Set interference mitigation override. Choices are:\n" + "\t0 = no interference mitigation\n" + "\t1 = non wlan\n" + "\t2 = wlan manual\n" + "\t3 = wlan automatic\n" + "\t4 = wlan automatic with noise reduction\n" + "\t-1 = remove override, override disabled"}, + { "frameburst", wl_int, WLC_GET_FAKEFRAG, WLC_SET_FAKEFRAG, + "Disable/Enable frameburst mode" }, + { "pwr_percent", wl_int, WLC_GET_PWROUT_PERCENTAGE, WLC_SET_PWROUT_PERCENTAGE, + "Get/Set power output percentage"}, + { "toe", wl_varint, WLC_GET_VAR, WLC_SET_VAR, + "Enable/Disable tcpip offload feature"}, + { "toe_ol", wl_offload_cmpnt, WLC_GET_VAR, WLC_SET_VAR, + "Get/Set tcpip offload components"}, + { "toe_stats", wl_toe_stats, WLC_GET_VAR, -1, + "Display checksum offload statistics"}, + { "toe_stats_clear", wl_var_void, -1, WLC_SET_VAR, + "Clear checksum offload statistics"}, + { "arpoe", wl_varint, WLC_GET_VAR, WLC_SET_VAR, + "Enable/Disable arp agent offload feature"}, + { "arp_ol", wl_offload_cmpnt, WLC_GET_VAR, WLC_SET_VAR, + "Get/Set arp offload components"}, + { "arp_peerage", wl_varint, WLC_GET_VAR, WLC_SET_VAR, + "Get/Set age of the arp entry in minutes"}, + { "arp_table_clear", wl_var_void, -1, WLC_SET_VAR, + "Clear arp cache"}, + { "arp_hostip", wl_hostip, WLC_GET_VAR, WLC_SET_VAR, + "Add a host-ip address or display them"}, + { "arp_hostip_clear", wl_var_void, -1, WLC_SET_VAR, + "Clear all host-ip addresses"}, + { "arp_stats", wl_arp_stats, WLC_GET_VAR, -1, + "Display ARP offload statistics"}, + { "arp_stats_clear", wl_var_void, -1, WLC_SET_VAR, + "Clear ARP offload statistics"}, + { "wet", wl_int, WLC_GET_WET, WLC_SET_WET, + "Get/Set wireless ethernet bridging mode"}, + { "bi", wl_int, WLC_GET_BCNPRD, WLC_SET_BCNPRD, + "Get/Set the beacon period (bi=beacon interval)"}, + { "dtim", wl_int, WLC_GET_DTIMPRD, WLC_SET_DTIMPRD, + "Get/Set DTIM"}, + { "wds_remote_mac", wl_mac, WLC_WDS_GET_REMOTE_HWADDR, -1, + "Get WDS link remote endpoint's MAC address"}, + { "wds_wpa_role_old", wl_wds_wpa_role_old, WLC_WDS_GET_WPA_SUP, -1, + "Get WDS link local endpoint's WPA role (old)"}, + { "wds_wpa_role", wl_wds_wpa_role, WLC_GET_VAR, WLC_SET_VAR, + "Get/Set WDS link local endpoint's WPA role"}, + { "authe_sta_list", wl_maclist_1, WLC_GET_VAR, -1, + "Get authenticated sta mac address list"}, + { "autho_sta_list", wl_maclist_1, WLC_GET_VAR, -1, + "Get authorized sta mac address list"}, + { "measure_req", wl_measure_req, -1, WLC_MEASURE_REQUEST, + "Send an 802.11h measurement request.\n" + "\tUsage: wl measure_req \n" + "\tMeasurement types are: TPC, Basic, CCA, RPI\n" + "\tTarget MAC addr format is xx:xx:xx:xx:xx:xx"}, + { "quiet", wl_send_quiet, -1, WLC_SEND_QUIET, + "Send an 802.11h quiet command.\n" + "\tUsage: wl quiet , , "}, + { "csa", wl_send_csa, -1, WLC_SET_VAR, + "Send an 802.11h channel switch anouncement with chanspec:\n" + "\t [a,b][n][u,l]\n" + "\tmode (0 or 1)\n" + "\tcount (0-254)\n" + "\tchannel number (0-224)\n" + "\tband a=5G, b=2G\n" + "\tbandwidth n=10, non for 20 & 40\n" + "\tctl sideband, l=lower, u=upper, default no ctl sideband"}, + { "constraint", wl_int, -1, WLC_SEND_PWR_CONSTRAINT, + "Send an 802.11h Power Constraint IE\n" + "\tUsage: wl constraint 1-255 db"}, + { "rm_req", wl_rm_request, -1, WLC_SET_VAR, + "Request a radio measurement of type basic, cca, or rpi\n" + "\tspecify a series of measurement types each followed by options.\n" + "\texample: wl rm_req cca -c 1 -d 50 cca -c 6 cca -c 11\n" + "\tOptions:\n" + "\t-t n numeric token id for measurement set or measurement\n" + "\t-c n channel\n" + "\t-d n duration in TUs (1024 us)\n" + "\t-p parallel flag, measurement starts at the same time as previous\n" + "\n" + "\tEach measurement specified uses the same channel and duration as the\n" + "\tprevious unless a new channel or duration is specified."}, + { "rm_rep", wl_rm_report, WLC_GET_VAR, -1, + "Get current radio measurement report"}, + { "join_pref", wl_join_pref, WLC_GET_VAR, WLC_SET_VAR, + "Set/Get join target preferences."}, + { "assoc_pref", wl_assoc_pref, WLC_GET_ASSOC_PREFER, WLC_SET_ASSOC_PREFER, + "Set/Get association preference.\n" + "Usage: wl assoc_pref [auto|a|b|g]"}, + { "wme", wl_varint, WLC_GET_VAR, WLC_SET_VAR, + "Set WME (Wireless Multimedia Extensions) mode (0=off, 1=on, -1=auto)"}, + { "wme_ac", wl_wme_ac_req, WLC_GET_VAR, WLC_SET_VAR, + "wl wme_ac ap|sta [be|bk|vi|vo [ecwmax|ecwmin|txop|aifsn|acm ] ...]"}, + { "wme_apsd", wl_varint, WLC_GET_VAR, WLC_SET_VAR, + "Set APSD (Automatic Power Save Delivery) mode on AP (0=off, 1=on)" }, + { "wme_apsd_sta", wl_wme_apsd_sta, WLC_GET_VAR, WLC_SET_VAR, + "Set APSD parameters on STA. Driver must be down.\n" + "Usage: wl wme_apsd_sta \n" + " : number of frames per USP: 0 (all), 2, 4, or 6\n" + " : value 0 to disable, 1 to enable U-APSD per AC" }, + { "wme_dp", wl_wme_dp, WLC_GET_VAR, WLC_SET_VAR, + "Set AC queue discard policy.\n" + "Usage: wl wme_dp \n" + " : value 0 for newest-first, 1 for oldest-first" }, + { "wme_counters", wl_wme_counters, WLC_GET_VAR, -1, + "print WMM stats" }, + { "wme_clear_counters", wl_var_void, -1, WLC_SET_VAR, + "clear WMM counters"}, + { "wme_tx_params", wme_tx_params, -1, -1, + "wl wme_tx_params [be|bk|vi|vo [short|sfb|long|lfb|max_rate ] ...]"}, + { "wme_maxbw_params", wme_maxbw_params, WLC_GET_VAR, WLC_SET_VAR, + "wl wme_maxbw_params [be|bk|vi|vo ....]"}, + { "lifetime", wl_lifetime, WLC_GET_VAR, WLC_SET_VAR, + "Set Lifetime parameter (milliseconds) for each ac.\n" + "wl lifetime be|bk|vi|vo []"}, + { "reinit", wl_void, -1, WLC_INIT, + "Reinitialize device"}, + { "sta_info", wl_sta_info, WLC_GET_VAR, -1, + "wl sta_info "}, + { "cap", wl_var_getandprintstr, WLC_GET_VAR, -1, "driver capabilities"}, + { "malloc_dump", wl_print_deprecate, -1, -1, "Deprecated. Folded under 'wl dump malloc"}, + { "chan_info", wl_chan_info, WLC_GET_VAR, -1, "channel info"}, + { "add_ie", wl_add_ie, -1, WLC_SET_VAR, + "Add a vendor proprietary IE to 802.11 management packets\n" + "Usage: wl add_ie length OUI hexdata\n" + ": Bit 0 - Beacons\n" + " Bit 1 - Probe Rsp\n" + " Bit 2 - Assoc/Reassoc Rsp\n" + " Bit 3 - Auth Rsp\n" + " Bit 4 - Probe Req\n" + " Bit 5 - Assoc/Reassoc Req\n" + "Example: wl add_ie 3 10 00:90:4C 0101050c121a03\n" + " to add this IE to beacons and probe responses" }, + { "del_ie", wl_del_ie, -1, WLC_SET_VAR, + "Delete a vendor proprietary IE from 802.11 management packets\n" + "Usage: wl del_ie length OUI hexdata\n" + ": Bit 0 - Beacons\n" + " Bit 1 - Probe Rsp\n" + " Bit 2 - Assoc/Reassoc Rsp\n" + " Bit 3 - Auth Rsp\n" + " Bit 4 - Probe Req\n" + " Bit 5 - Assoc/Reassoc Req\n" + "Example: wl del_ie 3 10 00:90:4C 0101050c121a03" }, + { "list_ie", wl_list_ie, WLC_GET_VAR, -1, + "Dump the list of vendor proprietary IEs" }, + { "rand", wl_rand, WLC_GET_VAR, -1, + "Get a 2-byte Random Number from the MAC's PRNG\n" + "Usage: wl rand"}, + { "otpw", wl_otpw, -1, WLC_OTPW, + "Write an srom image to on-chip otp\n" + "Usage: wl otpw file"}, + { "nvotpw", wl_otpw, -1, WLC_NVOTPW, + "Write nvram to on-chip otp\n" + "Usage: wl nvotpw file"}, + { "bcmerrorstr", wl_var_getandprintstr, WLC_GET_VAR, -1, "errorstring"}, + { "freqtrack", wl_varint, WLC_GET_VAR, WLC_SET_VAR, + "Set Frequency Tracking Mode (0=Auto, 1=On, 2=OFF)"}, + { "eventing", wl_bitvec128, WLC_GET_VAR, WLC_SET_VAR, + "set/get 128-bit hex filter bitmask for MAC event reporting up to application layer"}, + { "event_msgs", wl_bitvec128, WLC_GET_VAR, WLC_SET_VAR, + "set/get 128-bit hex filter bitmask for MAC event reporting via packet indications"}, + { "counters", wl_counters, WLC_GET_VAR, -1, + "Return driver counter values" }, + { "delta_stats_interval", wl_varint, WLC_GET_VAR, WLC_SET_VAR, + "set/get the delta statistics interval in seconds (0 to disable)"}, + { "delta_stats", wl_delta_stats, WLC_GET_VAR, -1, + "get the delta statistics for the last interval" }, + { "assoc_info", wl_assoc_info, WLC_GET_VAR, -1, + "Returns the assoc req and resp information [STA only]" }, + { "autochannel", wl_auto_channel_sel, WLC_GET_CHANNEL_SEL, WLC_START_CHANNEL_SEL, + "auto channel selection: \n" + "\t1 to issue a channel scanning;\n" + "\t2 to set chanspec based on the channel scan result;\n" + "\twithout argument to only show the chanspec selected; \n" + "\tssid must set to null before this process, RF must be up"}, + { "csscantimer", wl_int, WLC_GET_CS_SCAN_TIMER, WLC_SET_CS_SCAN_TIMER, + "auto channel scan timer in minutes (0 to disable)" }, + { "closed", wl_int, WLC_GET_CLOSED, WLC_SET_CLOSED, + "hides the network from active scans, 0 or 1.\n" + "\t0 is open, 1 is hide" }, + { "pmkid_info", wl_pmkid_info, WLC_GET_VAR, WLC_SET_VAR, + "Returns the pmkid table" }, + { "abminrate", wl_phy_rate, WLC_GET_VAR, WLC_SET_VAR, + "get/set afterburner minimum rate threshold" }, + { "bss", wl_bsscfg_enable, WLC_GET_VAR, WLC_SET_VAR, + "set/get BSS enabled status: up/down"}, + { "closednet", wl_bsscfg_int, WLC_GET_VAR, WLC_SET_VAR, + "set/get BSS closed network attribute"}, + { "ap_isolate", wl_bsscfg_int, WLC_GET_VAR, WLC_SET_VAR, + "set/get AP isolation"}, + { "eap_restrict", wl_bsscfg_int, WLC_GET_VAR, WLC_SET_VAR, + "set/get EAP restriction"}, + { "diag", wl_diag, WLC_GET_VAR, -1, + "diag testindex(1-interrupt, 2-loopback, 3-memory, 4-led);" + " precede by 'wl down' and follow by 'wl up'" }, + { "reset_d11cnts", wl_var_void, -1, WLC_SET_VAR, + "reset 802.11 MIB counters"}, + { "staname", wl_varstr, WLC_GET_VAR, WLC_SET_VAR, + "get/set station name: \n" + "\tMaximum name length is 15 bytes"}, + { "apname", wl_varstr, WLC_GET_VAR, -1, + "get AP name"}, + { "otpdump", wl_var_setintandprintstr, WLC_GET_VAR, -1, + "Dump raw otp"}, + { "otpstat", wl_var_setintandprintstr, WLC_GET_VAR, -1, + "Dump OTP status"}, + { "nrate", wl_nrate, WLC_GET_VAR, WLC_SET_VAR, + "-r legacy rate (CCK, OFDM)" + "-m mcs index" + "-s stf mode (0=SISO,1=CDD,2=STBC(not supported),3=SDM)" + "-w Override mcs only to support STA's with/without STBC capability"}, + { "mimo_txbw", wl_varint, WLC_GET_VAR, WLC_SET_VAR, + "get/set mimo txbw (2=20Mhz(lower), 3=20Mhz upper, 4=40Mhz, 5=40Mhz dup (On/Off)" + }, + { "rifs_advert", wl_rifs_advert, WLC_GET_VAR, WLC_SET_VAR, + "set/get the rifs mode advertisement status; usage: wl rifs_advert <-1/0> (Auto/Off)" + }, + { "phy_rxiqest", wl_rxiq, WLC_GET_VAR, -1, + "Get phy RX IQ noise in dBm:\n" + "\t-s # of samples (2^n)\n" + "\t-a antenna select, 0,1 or 3\n" + "\t-r resolution select, 0 (coarse) or 1 (fine)\n" + "\t-f lpf hpc override select, 0 (hpc unchanged) or 1 (overridden to lowest value)\n" + "\t-g gain-correction select, 0 (disable) or 1 (enable)" + }, + { "phy_txiqcc", wl_phy_txiqcc, WLC_GET_VAR, WLC_SET_VAR, + "usage: phy_txiqcc [a b]\n" + "Set/get the iqcc a, b values" + }, + { "phy_txlocc", wl_phy_txlocc, WLC_GET_VAR, WLC_SET_VAR, + "usage: phy_txlocc [di dq ei eq fi fq]\n" + "Set/get locc di dq ei eq fi fq values" + }, + { "phytable", wl_phytable, WLC_GET_VAR, WLC_SET_VAR, + "usage: wl phytable table_id offset width_of_table_element [table_element]\n" + "Set/get table element of a table with the given ID at the given offset\n" + "Note that table width supplied should be 8 or 16 or 32\n" + "table ID, table offset can not be negative" + }, + { "pavars", wl_phy_pavars, WLC_GET_VAR, WLC_SET_VAR, + "Set/get temp PA parameters\n" + "usage: wl down\n" + " wl pavars pa2gw0a0=0x1 pa2gw1a0=0x2 pa2gw2a0=0x3 ... \n" + " wl pavars\n" + " wl up\n" + " override the PA parameters after driver attach(srom read), before diver up\n" + " These override values will be propogated to HW when driver goes up\n" + " PA parameters in one band range (2g, 5gl, 5g, 5gh) must all present if\n" + " one of them is specified in the command, otherwise it will be filled with 0" + }, + { "pavars2", wl_phy_pavars2, WLC_GET_VAR, WLC_SET_VAR, + "Set/get temp PA parameters. Extended cmd of pavars\n" + "usage: wl down\n" + " wl pavars2 pa2gw0a0=0x1 pa2gw1a0=0x2 pa2gw2a0=0x3 ... \n" + " wl pavars2\n" + " wl up\n" + " override the PA parameters after driver attach(srom read), before diver up\n" + " These override values will be propogated to HW when driver goes up\n" + " PA parameters in one band range (2g, 5gl, 5g, 5gh) must all present if\n" + " one of them is specified in the command, otherwise it will be filled with 0" + }, + { "povars", wl_phy_povars, WLC_GET_VAR, WLC_SET_VAR, + "Set/get temp power offset\n" + "usage: wl down\n" + " wl povars cck2gpo=0x1 ofdm2gpo=0x2 mcs2gpo=0x3 ... \n" + " wl povars\n" + " wl up\n" + " override the power offset after driver attach(srom read), before diver up\n" + " These override values will be propogated to HW when driver goes up\n" + " power offsets in one band range (2g, 5gl, 5g, 5gh) must all present if\n" + " one of them is specified in the command, otherwise it will be filled with 0" + " cck(2g only), ofdm, and mcs(0-7) for NPHY are supported " + }, + { "fem", wl_phy_fem, WLC_GET_VAR, WLC_SET_VAR, + "Set temp fem2g/5g value\n" + "usage: wl fem (tssipos2g=0x1 extpagain2g=0x2 pdetrange2g=0x1 triso2g=0x1 antswctl2g=0)\n" + " (tssipos5g=0x1 extpagain5g=0x2 pdetrange5g=0x1 triso5g=0x1 antswctl5g=0)" + }, + { "antgain", wl_antgain, WLC_GET_VAR, WLC_SET_VAR, + "Set temp ag0/1 value\n" + "usage: wl antgain ag0=0x1 ag1=0x2" + }, + { "maxpower", wl_phy_maxpower, WLC_GET_VAR, WLC_SET_VAR, + "Set temp maxp2g(5g)a0(a1) value\n" + "usage: wl maxpower maxp2ga0=0x1 maxp2ga1=0x2 maxp5ga0=0xff maxp5ga1=0xff\n" + " maxp5gla0=0x3 maxp5gla1=0x4 maxp5gha0=0x5 maxp5gha1=0x6" + }, + + { "phy_antsel", wl_antsel, WLC_GET_VAR, -1, + "get/set antenna configuration \n" + "\tset: -1(AUTO), 0xAB(fixed antenna selection)\n" + "\t\twhere A and B is the antenna numbers used for RF chain 1 and 0 respectively\n" + "\tquery: [AUTO] [AUTO] [AUTO] [AUTO]\n" + "\t\twhere utx = TX unicast antenna configuration\n" + "\t\t\turx = RX unicast antenna configuration\n" + "\t\t\tdtx = TX default (non-unicast) antenna configuration\n" + "\t\t\tdrx = RX default (non-unicast) antenna configuration\n" + }, + { "txcore", wl_txcore, WLC_GET_VAR, WLC_SET_VAR, + "Usage: wl txcore -k -o -s <1..4> -c \n" + "\t-k CCK core mask\n" + "\t-o OFDM core mask\n" + "\t-s # of space-time-streams\n" + "\t-c active core (bitmask) to be used when transmitting frames\n" + }, + { "txcore_override", wl_txcore, WLC_GET_VAR, -1, + "Usage: wl txcore_override\n" + "\tget the user override of txcore\n" + }, + { "txchain_pwr_offset", wl_txcore_pwr_offset, WLC_GET_VAR, WLC_SET_VAR, + "Usage: wl txchain_pwr_offset [qdBm offsets]\n" + "\tGet/Set the current offsets for each core in qdBm (quarter dBm)\n" + }, + { "sample_collect", wl_sample_collect, WLC_PHY_SAMPLE_COLLECT, -1, + "Optional parameters HTPHY/(NPHY with NREV >= 7) are:\n" + "\t-f File name to dump the sample buffer (default \"sample_collect.dat\")\n" + "\t-t Trigger condition (default now)\n" + "\t\t now, good_fcs, bad_fcs, bad_plcp, crs, crs_glitch, crs_deassert\n" + "\t-b PreTrigger duration in us (default 10)\n" + "\t-a PostTrigger duration in us (default 10) \n" + "\t-m Sample collect mode (default 1) \n" + "\t\t HTPHY: 0=adc, 1..3=adc+rssi, 4=gpio\n" + "\t\t NPHY: 1=Dual-Core adc[9:2], 2=Core0 adc[9:0], 3=Core1 adc[9:0], gpio=gpio\n" + "\t-g GPIO mux select (default 0)\n" + "\t\t use only for gpio mode\n" + "\t-d Downsample enable (default 0)\n" + "\t\t use only for HTPHY\n" + "\t-e BeDeaf enable (default 0)\n" + "\t-i Timeout in units of 10us (default 1000)\n" + "Optional parameters (NPHY with NREV < 7) are:\n" + "\t-f File name to dump the sample buffer (binary format, default \"sample_collect.dat\")\n" + "\t-u Sample collect duration in us (default 60)\n" + "\t-c Cores to do sample collect, only if BW=40MHz (default both)\n" + "For (NREV < 7), the NPHY buffer returned has the format:\n" + "\tIn 20MHz [(uint16)num_bytes, ]\n" + "\tIn 40MHz [(uint16)num_bytes(core0), ,\n" + "\t\t(uint16)num_bytes(core1), ]"}, + { "txfifo_sz", wl_txfifo_sz, WLC_GET_VAR, WLC_SET_VAR, + "set/get the txfifo size; usage: wl txfifo_sz " }, +#ifdef WLPFN + { "pfnset", wl_pfn_set, -1, -1, + "Configures preferred network off load parameter\n" + "\tpfnset syntax is: pfnset [scanfrq xxxxx(30 sec)] [netimeout xxxx(60 sec)]" + "[rssi_delta xxxx(30 dBm)] [sort (listorder)|rssi] [bkgscan (0)|1] [autoswitch (0)|1]" + "[immediate 0|(1)] [autoconnect (0)|1]"}, + { "pfnadd", wl_pfn_add, -1, -1, + "Adding preferred network to monitor and connect\n" + "\tpfnadd syntax is: pfnadd [key xxxxx] [imode (bss)|ibss]" + "[amode (open)|shared] [wpa_auth (wpadisabled)|wpapsk|wpa2psk|wpanone]" + "[wsec WEP|TKIP|AES|TKIPAES]"}, + { "pfn", wl_pfn, -1, -1, + "Enable/disable preferred network off load monitoring\n" + "\tpfn syntax is: pfn 0|1"}, + { "pfnclear", wl_var_void, -1, WLC_SET_VAR, + "Clear the preferred network list\n" + "\tpfn syntax is: pfnclear"}, +#if defined(linux) + { "pfneventchk", wl_pfn_event_check, -1, -1, + "Listen and prints the preferred network off load event from dongle\n" + "\tpfneventchk syntax is: pfneventchk [(eth1)ifname]"}, + { "escan_event_check", wl_escan_event_check, -1, -1, + "Listen and prints the escan events from the dongle\n" + "\tescan_event_check syntax is: escan_event_check ifname flag\n" + "\tflag 1 = sync_id info, 2 = bss info, 4 = state + bss info [default], " + "8 = TLV check for IEs"}, + { "escanresults", wl_escanresults, -1, WLC_SET_VAR, + "Start escan and display results.\n" SCAN_USAGE + }, +#endif /* linux */ + { "event_filter", wl_event_filter, -1, -1, + "Set/get event filter\n" + "\tevent_filter syntax is: event_filter [value]"}, +#endif /* WLPFN */ + {"rate_histo", wl_rate_histo, -1, WLC_GET_VAR, + "Get rate hostrogram" + }, + { "pkteng_start", wl_pkteng, -1, WLC_SET_VAR, + "start packet engine tx usage: wl pkteng_start " + " [(async)|sync] [ipg] [len] [nframes] [src]\n" + "\tstart packet engine rx usage: wl pkteng_start " + " [(async)|sync] [rxframes] [rxtimeout]\n" + "\tsync: synchronous mode\n" + "\tipg: inter packet gap in us\n" + "\tlen: packet length\n" + "\tnframes: number of frames; 0 indicates continuous tx test\n" + "\tsrc: source mac address\n" + "\trxframes: number of receive frames (sync mode only)\n" + "\trxtimeout: maximum timout in msec (sync mode only)"}, + { "pkteng_stop", wl_pkteng, -1, WLC_SET_VAR, + "stop packet engine; usage: wl pkteng_stop "}, + { "pkteng_stats", wl_pkteng_stats, -1, WLC_GET_VAR, + "packet engine stats; usage: wl pkteng_stats"}, + { "wowl", wl_varint, WLC_GET_VAR, WLC_SET_VAR, + "Enable/disable WOWL events\n" + " 0 - Clear all events\n" + "Bit 0 - Wakeup on Magic Packet\n" + "Bit 1 - Wakeup on NetPattern (use 'wl wowl_pattern' to configure pattern)\n" + "Bit 2 - Wakeup on loss-of-link due to Disassociation/Deauth\n" + "Bit 3 - Wakeup on retrograde tsf\n" + "Bit 4 - Wakeup on loss of beacon (use 'wl wowl_bcn_loss' to configure time)"}, + { "wowl_bcn_loss", wl_varint, WLC_GET_VAR, WLC_SET_VAR, + "Set #of seconds of beacon loss for wakeup event"}, + { "wowl_pattern", wl_wowl_pattern, -1, -1, + "usage: wowl_pattern [ [clr | [[ add | del ] offset mask value ]]]\n" + "No options -- lists existing pattern list\n" + "add -- Adds the pattern to the list\n" + "del -- Removes a pattern from the list\n" + "clr -- Clear current list\n" + "offset -- Starting offset for the pattern\n" + "mask -- Mask to be used for pattern. Bit i of mask => byte i of the pattern\n" + "value -- Value of the pattern" + }, + { "wowl_wakeind", wl_wowl_wakeind, WLC_GET_VAR, WLC_SET_VAR, + "usage: wowl_wakeind [clear]\n" + "Shows last system wakeup event indications from PCI and D11 cores\n" + "clear - Clear the indications" + }, + { "wowl_status", wl_wowl_status, WLC_GET_VAR, -1, + "usage: wowl_status [clear]\n" + "Shows last system wakeup setting" + }, + {"wowl_pkt", wl_wowl_pkt, -1, -1, + "Send a wakeup frame to wakup a sleeping STA in WAKE mode\n" + "Usage: wl wowl_pkt >" + "[ magic [] | net ]\n" + "e.g. To send bcast magic frame -- " + "wl wowl_pkt 102 bcast magic 00:90:4c:AA:BB:CC\n" + " To send ucast magic frame -- " + "wl wowl_pkt 102 ucast 00:90:4c:aa:bb:cc magic\n" + " To send a frame with L2 unicast - " + "wl wowl_pkt 102 00:90:4c:aa:bb:cc net 0 0x00904caabbcc\n" + " NOTE: offset for netpattern frame starts from \"Dest EA\" of ethernet frame." + "So dest ea will be used only when offset is >= 6"}, + { "wme_apsd_trigger", wl_varint, WLC_GET_VAR, WLC_SET_VAR, + "Set Periodic APSD Trigger Frame Timer timeout in ms (0=off)"}, + { "wme_autotrigger", wl_varint, WLC_GET_VAR, WLC_SET_VAR, + "Enable/Disable sending of APSD Trigger frame when all ac are delivery enabled"}, + { "reassoc", wl_reassoc, -1, WLC_REASSOC, + "Initiate a (re)association request.\n" + "\tUsage: wl reassoc [options]\n" + "\tOptions:\n" + "\t-c CL, --chanspecs=CL \tchanspecs (comma or space separated list)"}, + { "send_nulldata", wl_iov_mac, -1, -1, + "Sed a null frame to the specified hw address" }, + { "btc_params", wlu_reg2args, WLC_GET_VAR, WLC_SET_VAR, "g/set BT Coex parameters"}, + { "btc_flags", wlu_reg2args, WLC_GET_VAR, WLC_SET_VAR, "g/set BT Coex flags"}, + { "obss_scan_params", wl_obss_scan, WLC_GET_VAR, WLC_SET_VAR, + "set/get Overlapping BSS scan parameters\n" + "Usage: wl obss_scan a b c d e ...; where\n" + "\ta-Passive Dwell, {5-1000TU}, default = 100\n" + "\tb-Active Dwell, {10-1000TU}, default = 20\n" + "\tc-Width Trigger Scan Interval, {10-900sec}, default = 300\n" + "\td-Passive Total per Channel, {200-10000TU}, default = 200\n" + "\te-Active Total per Channel, {20-1000TU}, default = 20\n" + "\tf-Channel Transition Delay Factor, {5-100}, default = 5\n" + "\tg-Activity Threshold, {0-100%}, default = 25"}, + {"keep_alive", wl_keep_alive, -1, -1, + "Send specified \"keep-alive\" packet periodically.\n" + "\tUsage: wl keep_alive \n" + "\t\tperiod: Re-transmission period in milli-seconds. 0 to disable packet transmits.\n" + "\t\tpacket: Hex packet contents to transmit. The packet contents should include " + "the entire ethernet packet (ethernet header, IP header, UDP header, and UDP " + "payload) specified in network byte order.\n" + "\n\te.g. Send keep alive packet every 30 seconds:\n" + "\twl keep_alive 30000 0x0014a54b164f000f66f45b7e08004500001e000040004011c" + "52a0a8830700a88302513c413c4000a00000a0d" }, + { "srchmem", wl_srchmem, WLC_GET_VAR, WLC_SET_VAR, + "g/set ucode srch engine memory"}, + { "pkt_filter_add", wl_pkt_filter_add, -1, -1, + "Install a packet filter.\n" + "\tUsage: wl pkt_filter_add \n" + "\tid: Integer. User specified id.\n" + "\ttype: 0 (Pattern matching filter).\n" + "\toffset: Integer. Offset within received packets to start matching.\n" + "\tpolarity: Set to 1 to negate match result. 0 is default.\n" + "\tbitmask: Hex bitmask that indicates which bits of 'pattern' to match. Must be same\n" + "\t\tsize as 'pattern'. Bit 0 of bitmask corresponds to bit 0 of pattern, etc.\n" + "\t\tIf bit N of bitmask is 0, then do *not* match bit N of the pattern with\n" + "\t\tthe received payload. If bit N of bitmask is 1, then perform match.\n" + "\tpattern: Hex pattern to match." }, + { "pkt_filter_clear_stats", wl_varint, -1, WLC_SET_VAR, + "Clear packet filter statistic counter values.\n" + "\tUsage: wl pkt_filter_clear_stats " }, + { "pkt_filter_enable", wl_pkt_filter_enable, -1, -1, + "Enable/disable a packet filter.\n" + "\tUsage: wl pkt_filter_enable <0|1>"}, + { "pkt_filter_list", wl_pkt_filter_list, -1, -1, + "List installed packet filters.\n" + "\tUsage: wl pkt_filter_list [val]\n" + "\tval: 0 (disabled filters) 1 (enabled filters)"}, + { "pkt_filter_mode", wl_varint, WLC_GET_VAR, WLC_SET_VAR, + "Set packet filter match action.\n" + "\tUsage: wl pkt_filter_mode \n" + "\tvalue: 1 - Forward packet on match, discard on non-match (default).\n" + "\t 0 - Discard packet on match, forward on non-match." }, + { "pkt_filter_delete", wl_varint, -1, WLC_SET_VAR, + "Uninstall a packet filter.\n" + "\tUsage: wl pkt_filter_delete "}, + { "pkt_filter_stats", wl_pkt_filter_stats, -1, -1, + "Retrieve packet filter statistic counter values.\n" + "\tUsage: wl pkt_filter_stats "}, + { "seq_start", wl_seq_start, -1, WLC_SET_VAR, + "Initiates command batching sequence. Subsequent IOCTLs will be queued until\n" + "seq_stop is received."}, + { "seq_stop", wl_seq_stop, -1, WLC_SET_VAR, + "Defines the end of command batching sequence. Queued IOCTLs will be executed."}, + { "seq_delay", wl_varint, -1, WLC_SET_VAR, + "Driver should spin for the indicated amount of time.\n" + "It is only valid within the context of batched commands."}, + { "seq_error_index", wl_varint, WLC_GET_VAR, -1, + "Used to retrieve the index (starting at 1) of the command that failed within a batch"}, + { "bmac_reboot", wl_var_void, -1, WLC_SET_VAR, + "Reboot BMAC"}, +#ifdef RWL_WIFI + { "findserver", wl_wifiserver, -1, -1, + "Used to find the remote server with proper mac address given by the user,this " + "cmd is specific to wifi protocol."}, +#endif + { "txmcsset", wl_txmcsset, WLC_GET_VAR, -1, "get Transmit MCS rateset for 11N device"}, + { "rxmcsset", wl_rxmcsset, WLC_GET_VAR, -1, "get Receive MCS rateset for 11N device"}, + { "mimo_ss_stf", wl_mimo_stf, WLC_GET_VAR, WLC_SET_VAR, + "get/set SS STF mode.\n" + "\tUsage: wl mimo_ss_stf <-b a | b>\n" + "\tvalue: 0 - SISO; 1 - CDD\n" + "\t-b(band): a - 5G; b - 2.4G"}, +#ifdef WLEXTLOG + { "extlog", wl_extlog, WLC_GET_VAR, -1, + "get external logs\n" + "\tUsage: wl extlog \n" + "\from_last: 1 - from the last log record; 0 - whole log recrods" + "\tnumber: number of log records to get, MAX is 32."}, + { "extlog_clr", wl_var_void, -1, WLC_SET_VAR, "clear external log records"}, + { "extlog_cfg", wl_extlog_cfg, WLC_GET_VAR, WLC_SET_VAR, + "get/set external log configuration"}, +#endif + { "assertlog", wl_assertlog, WLC_GET_VAR, -1, + "get external assert logs\n" + "\tUsage: wl assertlog"}, + { "assert_type", wl_varint, WLC_GET_VAR, WLC_SET_VAR, + "set/get the asset_bypass flag; usage: wl assert_type <1/0> (On/Off)" + }, + { "ledbh", wl_ledbh, WLC_GET_VAR, WLC_SET_VAR, + "set/get led behavior\n" + "\tUsage: wl ledbh [0-3] [0-15]"}, + { "obss_coex_action", wl_obss_coex_action, -1, WLC_SET_VAR, + "send OBSS 20/40 Coexistence Mangement Action Frame\n" + "\tUsage: wl obss_coex_action -i <1/0> -w <1/0> -c \n" + "\t -i: 40MHz intolerate bit; -w: 20MHz width Req bit;\n" + "\t -c: channel list, 1 - 14\n" + "\t At least one option must be provided" + }, + {"chanim_state", wl_chanim_state, WLC_GET_VAR, -1, + "get channel interference state\n" + "\tUsage: wl chanim_state channel\n" + "\tValid channels: 1 - 14\n" + "\treturns: 0 - Acceptable; 1 - Severe" + }, + {"chanim_mode", wl_chanim_mode, WLC_GET_VAR, WLC_SET_VAR, + "get/set channel interference measure (chanim) mode\n" + "\tUsage: wl chanim_mode \n" + "\tvalue: 0 - disabled; 1 - detection only; 2 - detection and avoidance" + }, + { "ledbh", wl_ledbh, WLC_GET_VAR, WLC_SET_VAR, "set/get led behavior\n" + "\tUsage: wl ledbh [0-3] [0-15]"}, + { "led_blink_sync", wl_led_blink_sync, WLC_GET_VAR, WLC_SET_VAR, "set/get led_blink_sync\n" + "\tUsage: wl led_blink_sync [0-3] [0/1]"}, + + {"cca_get_stats", wl_cca_get_stats, WLC_GET_VAR, -1, + "Usage: wl cca_stats [-c channel] [-s num seconds][-a]\n" + "\t -c channel: Optional. specify channel. 0 = All channels. Default = current channel \n" + "\t -s num_seconds: Optional. Default = 10, Max = 60\n" + "\t -i: list individual measurements in addition to the averages\n" + "\t -curband: Only recommend channels on current band" + }, + { "itfr_get_stats", wl_itfr_get_stats, WLC_GET_VAR, -1, + "get interference source information" + }, + { "itfr_enab", wl_varint, WLC_GET_VAR, WLC_SET_VAR, + "get/set STA interference detection mode(STA only)\n" + "\t 0 - disable\n" + "\t 1 - enable maual detection\n" + "\t 2 - enable auto detection" + }, + { "itfr_detect", wl_var_void, -1, WLC_SET_VAR, + "issue an interference detection request" + }, + { "smfstats", wl_smfstats, WLC_GET_VAR, WLC_SET_VAR, + "get/clear selected management frame (smf) stats" + "\twl smfstats [-C num]|[--cfg=num] [auth]|[assoc]|[reassoc]|[clear]\n" + "\tclear - to clear the stats" }, +#ifdef RWL_DONGLE + { "dongleset", wl_varint, WLC_GET_VAR, WLC_SET_VAR, + "Enable uart driver" + }, +#endif + { "manfinfo", wl_var_getandprintstr, WLC_GET_VAR, -1, + "show chip package info in OTP"}, + { "rrm_nbr_req", wl_rrm_nbr_req, -1, WLC_SET_VAR, + "send 11k neighbor report measurement request\n" + "\tUsage: wl rrm_nbr_req [ssid]"}, + { "wnm_bsstq", wl_wnm_bsstq, -1, WLC_SET_VAR, + "send 11v BSS transition management query\n" + "\tUsage: wl wnm_bsstq [ssid]"}, +#ifdef WLP2P + { "p2p_ssid", wl_ssid, -1, WLC_SET_VAR, + "set WiFi P2P wildcard ssid.\n" + "\tUsage: wl p2p_ssid " + }, + { "p2p_state", wl_p2p_state, -1, WLC_SET_VAR, + "set WiFi P2P discovery state.\n" + "\tUsage: wl p2p_state [ ]" + }, + { "p2p_scan", wl_p2p_scan, -1, WLC_SET_VAR, + "initiate WiFi P2P scan.\n" + "\tUsage: wl p2p_scan S|E \n" + SCAN_USAGE + }, + { "p2p_ifadd", wl_p2p_ifadd, -1, WLC_SET_VAR, + "add WiFi P2P interface\n" + "\tUsage: wl p2p_ifadd go|client|dyngo [chanspec]\n" + "MAC-address: xx:xx:xx:xx:xx:xx" + }, + { "p2p_ifdel", wl_p2p_ifdel, -1, WLC_SET_VAR, + "delete WiFi P2P interface\n" + "\tUsage: wl p2p_ifdel \n" + "MAC-address: xx:xx:xx:xx:xx:xx" + }, + { "p2p_ifupd", wl_p2p_ifupd, -1, WLC_SET_VAR, + "update an interface to WiFi P2P interface\n" + "\tUsage: wl p2p_ifupd go|client\n" + "MAC-address: xx:xx:xx:xx:xx:xx" + }, + { "p2p_if", wl_p2p_if, WLC_GET_VAR, -1, + "query WiFi P2P interface bsscfg index\n" + "\tUsage: wl p2p_if \n" + "MAC-address: xx:xx:xx:xx:xx:xx" + }, + { "p2p_noa", wl_p2p_noa, WLC_GET_VAR, WLC_SET_VAR, + "set/get WiFi P2P NoA schedule\n" + "\tUsage: wl p2p_noa \n" + "\t\ttype 0: Scheduled Absence (on GO): \n" + "\t\t\taction -1: Cancel the schedule: \n" + "\t\t\taction 0,1,2: 8sbaC0++TRqFRNY_uVJr^PO%lnOSz0CC^E982^ zDs{bP1zoRNrt1|8)|*x2dfD>2Ua~x{qn6=PXG2};{>MN3EuIb4{*9as)ux^eJ^u&k z&;Rn7kBObro%yKiWB;7CFI*??Q`+}py9YS!S(VoA$GrYkI$IxEhJBC4aE$Mh_eP$xdPnMoFNm{r zw50AS=`X?`8P{psD)TbEQexya4K~J?_P4}8(jSSJ_w!!Yp7_1}Q}?=NeU##XkD7Ih z9D7}FnP#u6mrO%<&3&({mvq3Fd$|ywyw}yodtC{A&gWv8We6X#2V?&7MiTOi_jU!x zT(VzA_&o5SPszt9>bf6w9TRnJG*13os%zSPy|S(>r@6k)eZ9PIjqADRDad8i4{dKP zQoO`%J01`Ae+b_f;&-B+Zq!pp9T(qihD?p_%OzSmPwEBK&-A&qV&ehfZ&+XC7W?i5 zk9pUT&bOW+ZE>g?yvl2>t%N=c{Cpbol&w1$mvc`oH*I<|4nlX%Y2VivWbWMo8&-Y% zV};qYCy+|t_)^NTab5Z!59^Ro7G#tK8D&96S&&f{WRwLNWkE(+kWtnZCF6X`7en2P zzeRoH`!}L*d{gyJ`;e?-6m?vUI@Z%`u{wG+R*Sj<&sa6;8b)0!P}g#$hgg2HFF?m5g@`DZ<9S&2u z@-g89&ZnqpkncK|{)**YkLEUc7n894l$<@S?%D}&lV|(v^L~8)1c$Ft;r>yQK1HJJ zE2DByr|Rb;!pGw(a?>M%R}8A_&!wtZoP-wWuTMZ75*dl1R$Gr(AWZvEzsBkjV?1LQo5bg1H zUn+h0E2R(Zv_!?fFWczd5wx><{)tpAOo|_84}V;3YTYaxT5oXWvzEbz7y-TUW%}zK2Kp zVsUSu^eLi)K71#t<-8B2?>pD;Pp(|}4gLemdH19l*<1SVnT$W9v9iUCO^bw;wVGM15JCLhjNZ+~%ALrcG9PS?q zlQYlW?FRz+Dv#|`hVzAC|70sXdv+%7h)D$_x_x(`&{?j-=P{QXr{$q|d>Hht3{_xk z$LXLuJP*@>eRiGpZjvpzMn|Algg+_?lC>^lXyjvQxzhdknW z1^s$|Nj3eT1hgq3@P>)@2?D?8Q9knX10pA|nK~dvVG%U_gk1P4fIMY|1_p!ci z{gR}gN(tAEamYT4!%IIqtcBhvS;jKrICI8NAgBND5}j5J=F+46`BdM37mdLN`CPwG*kz46)6%Xh(?!xM zl9EBeOUV^Cc-%$4n`?y6R^d;aXrd~_ z^mS1a-&s}8x{Up>YP6#CEZd&i0nl{6s9zZRn9I3A$;XIS7ygU6yskGZO+Wg)=$q6k zY>?2`WSfXPi@}Gs{0S$?pVePW_}moqW!*OiUt=BpGy98XpKV-6wlA3H*j|u+#@;b? zY6{+iy0M?Jgnc($l58`4*x^5n>%hL7xgKs>F6_51)W=Pg{XA~rbl`>O*(X^p4Ns1# z_ozDayp4dxG&0yvVd7p3(SBc(_CPMx1^E7D_A@T!UUom^)$<(3a)HZZU#3fpMLNUJ zqMX3^*IELX1>f8qVAwPHg%16G`nekRt1a$<>5Wh>-#ZeCl9SIaDLhxvRG-)eXdrcR zBRO^QZ0>}~w&x|1@=BU!^|P)W#JM$vY)XuBGE17n@n zFxGh$W1UwZmyf0F558Hp>ps!0h5st;s@gQ>bF{1JY}e5+ePhyQKbEiwXm>x`xIuMy zL&pw@yPF0Bo4M~CW}WazKi>nNORM|c^abdI2IwmGQ~#)%H(9)l;_i=9yco}a$FqK! z+1R9;b&GVfhR;SXa?#@pubn^nL=Mr@1w_Axp8O<637hT!kG$(DF8?25zC?d$o}5n+ zywU;wu)qsPs5tZ&q&MYH@(=S≈7cM=30z;_^#kK1E-32k9tR&LQ(= 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 #H$=@8A7}`@%B} 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 z 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%0D9c$8HvP0}S0P&mi7nl`EI` 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 nXYd5n*IH91?WS + + role: 0 - local endpoint is WPA supplicant + 1 - local endpoint is WPA authenticator + + return: + 0 success + -1 the interface is not a wireless bridge + +get "wds_wpa_role" (using WLC_GET_VAR ioctl) + buf: + char[N] + + input: + buf = "wds_wpa_role<6 bytes remote endpoint's mac address>" + + output: + buf[0] = + + role: 0 - local endpoint is WPA supplicant + 1 - local endpoint is WPA authenticator + + return: + 0 success + +set "wds_wpa_role" (using WLC_SET_VAR ioctl) + buf: + char[N] + + input: + buf = "wds_wpa_role<6 bytes remote endpoint's mac address><1 byte role>" + role: 0 - local endpoint is WPA supplicant + 1 - local endpoint is WPA authenticator + 255 - endpoint with lower mac address is WPA supplicant + + output: + none + + return: + 0 success + +----- +Driver communicates the indication messages to the NAS, message format is + +Actual message data follows the header: + +Data = (char *(wlc_secpvt_data + 1)); + +Ethernet protocol type used is ETHER_TYPE_BRCM (0x886c). Frames exchanged are ETHERNET II frames. + +(this data structure is defined in include/wlioctl.h) + +typedef struct wl_secpvt_data { + struct ether_header eth; /*Regular ethernet header with proto type 0x886c */ + bcmeth_bcm_hdr_t bcm_hdr; + /* user specific Data*/ + uint8 version; + uint8 msg_type; + char ifname[WL_WPA_MSG_IFNAME_MAX]; /* name of the packet incoming interface*/ +}wl_secpvt_data_t; + +(this common data structure is defined in proto/bcmeth.h) + +typedef struct bcmeth_bcm_hdr +{ + uint16 subtype; /* Vendor specific..32769*/ + uint16 length; + uint8 version; /* Version is 0*/ + uint8 oui[3]; /* Broadcom OUI*/ + /* user specific Data */ + uint16 usr_subtype; +} PACKED bcmeth_bcm_hdr_t; + +vendor_long is defined as 32769 . to specify this as a vendor specific subtype. +length field indicates the length of the actual frame from this field. +version field is set to 0 BCMILCP_BCM_SUBTYPEHDR_VERSION +oui is broadcom OUI. 0x00/0x10/0x18 +sub_type defined in bcmeth_bcm_hdr data structure identifies different messages. + +#define BCMILCP_BCM_SUBTYPE_RESERVED 0 +#define BCMILCP_BCM_SUBTYPE_WPA 1 +#define BCMILCP_BCM_SUBTYPE_EAPOL 2 +#define BCMILCP_BCM_SUBTYPE_SES 3 + +once the sub_type is identified, + +version: indicates the version of this user specific data. + +msg_type: this has meaning only when sub_type is BCMILCP_BCM_SUBTYPE_WPA + +/* Type field values for the WL WPA subtype driver messages */ +#define WLC_ASSOC_MSG 1 +#define WLC_DISASSOC_MSG 2 +#define WLC_PTK_MIC_MSG 3 +#define WLC_GTK_MIC_MSG 4 + diff --git a/release/src-rt/wl/nas/global.h b/release/src-rt/wl/nas/global.h new file mode 100644 index 0000000000..10dfd2ea2a --- /dev/null +++ b/release/src-rt/wl/nas/global.h @@ -0,0 +1,48 @@ +/* GLOBAL.H - RSAREF types and constants + */ + +/* Copyright (C) RSA Laboratories, a division of RSA Data Security, + Inc., created 1991. All rights reserved. + */ + +#ifndef _GLOBAL_H_ +#define _GLOBAL_H_ 1 + +/* FILE-CSTYLED */ +/* PROTOTYPES should be set to one if and only if the compiler supports + function argument prototyping. + The following makes PROTOTYPES default to 1 if it has not already been + defined as 0 with C compiler flags. + */ +#ifndef PROTOTYPES +#define PROTOTYPES 1 +#endif + +/* POINTER defines a generic pointer type */ +typedef unsigned char *POINTER; + +/* UINT2 defines a two byte word */ +typedef unsigned short int UINT2; + +/* UINT4 defines a four byte word */ +typedef unsigned long int UINT4; + +#ifndef NULL_PTR +#define NULL_PTR ((POINTER)0) +#endif + +#ifndef UNUSED_ARG +#define UNUSED_ARG(x) x = *(&x); +#endif + +/* PROTO_LIST is defined depending on how PROTOTYPES is defined above. + If using PROTOTYPES, then PROTO_LIST returns the list, otherwise it + returns an empty list. + */ +#if PROTOTYPES +#define PROTO_LIST(list) list +#else +#define PROTO_LIST(list) () +#endif + +#endif /* end _GLOBAL_H_ */ diff --git a/release/src-rt/wl/nas/mppe.c b/release/src-rt/wl/nas/mppe.c new file mode 100644 index 0000000000..60ec1c200a --- /dev/null +++ b/release/src-rt/wl/nas/mppe.c @@ -0,0 +1,60 @@ +/* + * Microsoft Point-to-Point Encryption Protocol (MPPE) + * + * Copyright (C) 2010, Broadcom Corporation + * All Rights Reserved. + * + * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation; + * the contents of this file may not be disclosed to third parties, copied + * or duplicated in any form, in whole or in part, without the prior + * written permission of Broadcom Corporation. + * + * $Id: mppe.c 241388 2011-02-18 03:33:22Z stakita $ + */ + +#include +#include +#include + +#include "mppe.h" + +#define bcopy(src, dst, len) memcpy((dst), (src), (len)) +#define bzero(b, len) memset((b), '\0', (len)) + +/* Encrypt or decrypt a MPPE message in place */ +void +mppe_crypt(unsigned char salt[2], /* 2 bytes Salt */ + unsigned char *text, int text_len, /* Multiple of 16 bytes String */ + unsigned char *key, int key_len, /* Shared secret */ + unsigned char vector[16], /* 16 bytes Request Authenticator vector */ + int encrypt) /* Encrypt if 1 */ +{ + unsigned char b[16], c[16], *p; + MD5_CTX md5; + int i; + + /* Initial cipher block is Request Authenticator vector */ + bcopy(vector, c, 16); + for (p = text; &p[15] < &text[text_len]; p += 16) { + MD5Init(&md5); + /* Add shared secret */ + MD5Update(&md5, key, key_len); + /* Add last cipher block */ + MD5Update(&md5, c, 16); + /* Add salt */ + if (p == text) + MD5Update(&md5, salt, 2); + MD5Final(b, &md5); + if (encrypt) { + for (i = 0; i < 16; i++) { + p[i] ^= b[i]; + c[i] = p[i]; + } + } else { + for (i = 0; i < 16; i++) { + c[i] = p[i]; + p[i] ^= b[i]; + } + } + } +} diff --git a/release/src-rt/wl/nas/mppe.h b/release/src-rt/wl/nas/mppe.h new file mode 100644 index 0000000000..b150cbda67 --- /dev/null +++ b/release/src-rt/wl/nas/mppe.h @@ -0,0 +1,22 @@ +/* + * mppe.h Broadcom support for Microsoft Point-to-Point Encryption Protocol. + * + * Copyright (C) 2010, Broadcom Corporation + * All Rights Reserved. + * + * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation; + * the contents of this file may not be disclosed to third parties, copied + * or duplicated in any form, in whole or in part, without the prior + * written permission of Broadcom Corporation. + * + * $Id: mppe.h 241388 2011-02-18 03:33:22Z stakita $ + */ + +#if !defined(_MPPE_H_) +#define _MPPE_H_ + +void mppe_crypt(unsigned char salt[2], unsigned char *text, int text_len, + unsigned char *key, int key_len, unsigned char vector[16], + int encrypt); + +#endif /* !defined(_MPPE_H_) */ diff --git a/release/src-rt/wl/nas/nas.c b/release/src-rt/wl/nas/nas.c new file mode 100644 index 0000000000..e16cce3ab0 --- /dev/null +++ b/release/src-rt/wl/nas/nas.c @@ -0,0 +1,1108 @@ +/* + * 802.1x EAPOL to RADIUS proxy (Network Access Server) + * + * See + * + * IEEE Std 802.1X-2001 + * RFC 2284: PPP Extensible Authentication Protocol (EAP) + * RFC 2548: Microsoft Vendor-specific RADIUS Attributes + * RFC 2716: PPP EAP TLS Authentication Protocol + * RFC 2865: Remote Authentication Dial In User Service (RADIUS) + * RFC 2869: RADIUS Extensions + * RFC 3079: Deriving Keys for use with Microsoft Point-to-Point Encryption (MPPE) + * IEEE 802.1X RADIUS Usage Guidelines + * RADIUS Master Session Key Attribute + * Making IEEE 802.11 Networks Enterprise-Ready + * Recommendations for IEEE 802.11 Access Points + * + * Copyright (C) 2010, Broadcom Corporation + * All Rights Reserved. + * + * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation; + * the contents of this file may not be disclosed to third parties, copied + * or duplicated in any form, in whole or in part, without the prior + * written permission of Broadcom Corporation. + * + * $Id: nas.c 241388 2011-02-18 03:33:22Z stakita $ + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include +#include +#include +#include + +#if defined(linux) +#include +#elif defined(__ECOS) +extern int gettimeofday(struct timeval *tv, struct timezone *tz); +#endif + +#include +#include +#include +#include +#include +#include +#include + +#include "nas.h" +#include "wpa.h" + +#include "radius.h" +#include "nas_radius.h" + +#include "global.h" +#include +#include + +#ifdef BCMWPA2 +#define CHECK_EAPOL_KEY(key) (((key) == EAPOL_WPA_KEY) || ((key) == EAPOL_WPA2_KEY)) +#else +#define CHECK_EAPOL_KEY(key) ((key) == EAPOL_WPA_KEY) +#endif + +static void eapol_canned(nas_t *nas, nas_sta_t *sta, unsigned char code, + unsigned char type); +static void eapol_dispatch_ex(nas_t *nas, eapol_header_t *eapol, int preauth); + +static void toss_sta(nas_t *nas, nas_sta_t *sta, int reason, int driver_signal); + +void +send_identity_req(nas_t *nas, nas_sta_t *sta) +{ + eapol_header_t eapol; + + dbg(nas, "send Identity Request"); + memcpy(eapol.eth.ether_shost, &sta->ea, ETHER_ADDR_LEN); + memcpy(eapol.eth.ether_dhost, &nas->ea, ETHER_ADDR_LEN); + eapol.eth.ether_type = HTON16(ETHER_TYPE_802_1X); + eapol.version = sta->eapol_version; + eapol.type = EAPOL_START; + eapol.length = 0; + eapol_dispatch(nas, &eapol); +} + +void +cleanup_sta(nas_t *nas, nas_sta_t *sta, int reason, int driver_signal) +{ + unsigned char toss = 1; +#ifdef BCMDBG + char eabuf[ETHER_ADDR_STR_LEN]; +#endif + + if (sta == NULL) { + dbg(nas, "called with NULL STA ponter"); + return; + } + + /* De-Authenticate supplicant only once, and ignore further + * response from supplicant. We put supplicant in DISCONNECTED + * state, till we either receive handshake from supplicant or the + * wds_td initiator timer expires, either of the events put + * supplicant sta back in START state. + * Cleanup of supplicant sta is not required in case of WDS, + * Because, Removing WDS config leades to rc restart anyway, which + * restarts the whole NAS story. + */ + if ((nas->flags & NAS_FLAG_WDS) && (nas->flags & NAS_FLAG_AUTHENTICATOR)) { + if (!driver_signal && (sta->suppl.state != WPA_DISCONNECTED)) + sta->suppl.state = WPA_DISCONNECTED; + if (!driver_signal && (sta->suppl.state == WPA_DISCONNECTED)) + driver_signal = 1; + /* Dont toss supplicant sta in case of WDS, the initiator + * timer will trigger fake assoc. + */ + toss = 0; + } + + /* If this is because of a driver message, telling the driver again + * is unnecessary (and could loop). + */ + if (!driver_signal) { + dbg(nas, "deauthenticating %s", ether_etoa((uchar *)&sta->ea, eabuf)); + nas_deauthenticate(nas, &sta->ea, reason); + } + /* Be careful not to leak timer descriptors. */ + wpa_stop_retx(sta); + +#ifdef BCMWPA2 + /* Respect the PMK caching if the STA is associate and Authenticated with WPA2 AKM */ + if ((sta->mode & WPA2) && (sta->pae.state == AUTHENTICATED) && sta->pae.ssnto) { + dbg(nas, "keep STA %s", ether_etoa((uchar *)&sta->ea, eabuf)); + sta->suppl.state = WPA_PTKSTART; + return; + } +#endif /* BCMWPA2 */ + if (toss) toss_sta(nas, sta, 0, 1); + return; +} + +/* Just clean up the STA */ + +static void +toss_sta(nas_t *nas, nas_sta_t *sta, int reason, int driver_signal) +{ + nas_sta_t *sta_list; + uint hash; +#ifdef BCMDBG + char eabuf[ETHER_ADDR_STR_LEN]; +#endif + if (sta == NULL) { + dbg(nas, "called with NULL STA ponter"); + return; + } + /* If this is because of a driver message, telling the driver again + * is unnecessary (and could loop). + */ + if (!driver_signal) { + dbg(nas, "deauthenticating %s", ether_etoa((uchar *)&sta->ea, eabuf)); + nas_deauthenticate(nas, &sta->ea, reason); + } + /* Be careful not to leak timer descriptors. */ + wpa_stop_retx(sta); + dbg(nas, "cleanup STA %s", ether_etoa((uchar *)&sta->ea, eabuf)); + /* Remove this one from its hashed list. */ + hash = pae_hash(&sta->ea); + sta_list = nas->sta_hashed[hash]; + + if (sta_list == sta) { + /* It was the head, so its next is the new head. */ + nas->sta_hashed[hash] = sta->next; + + } else { + /* Find the one that points to it and change the pointer. */ + while ((sta_list != NULL) && (sta_list->next != sta)) + sta_list = sta_list->next; + if (sta_list == NULL) { + dbg(nas, "sta %s not in hash list", + ether_etoa((uchar *)&sta->ea, eabuf)); + } else { + sta_list->next = sta->next; + } + } + + sta->used = FALSE; + return; +} + +/* + * Search for or create a STA struct. + * If `enter' is not set, do not create it when one is not found. + */ +nas_sta_t * +lookup_sta(nas_t *nas, struct ether_addr *ea, sta_lookup_mode_t mode) +{ + unsigned int hash; + nas_sta_t *sta; + time_t now, oldest; + + hash = pae_hash(ea); + + /* Search for entry in the hash table */ + for (sta = nas->sta_hashed[hash]; + sta && memcmp(&sta->ea, ea, ETHER_ADDR_LEN); + sta = sta->next); + + /* One second resolution is probably good enough. */ + (void) time(&now); + + /* Allocate a new entry */ + if (!sta) { + int i, old_idx = -1; + + /* Don't make an unwanted entry. */ + if (mode == SEARCH_ONLY) + return NULL; + + oldest = now; + for (i = 0; i < MAX_SUPPLICANTS; i++) { + if (!nas->sta[i].used) + break; + else if (nas->sta[i].last_use < oldest) { + oldest = nas->sta[i].last_use; + old_idx = i; + } + } + + if (i < MAX_SUPPLICANTS) { + sta = &nas->sta[i]; + } else if (old_idx == -1) { + /* Full up with all the same timestamp?! Can + * this really happen? + */ + return NULL; + } else { + /* Didn't find one unused, so age out LRU entry. */ + sta = &nas->sta[old_idx]; + toss_sta(nas, sta, DOT11_RC_BUSY, 0); + } + + if ((sta != NULL) && (sta->pae.radius.request != NULL)) { + free(sta->pae.radius.request); + } + /* Initialize entry */ + memset(sta, 0, (sizeof(nas_sta_t))); + memcpy(&sta->ea, ea, ETHER_ADDR_LEN); + sta->used = TRUE; + sta->nas = nas; + /* initialize EAPOL version */ + sta->eapol_version = WPA_EAPOL_VERSION; + + /* Initial STA state: + * Cheaper and harmless not to distiguish NAS mode. + */ + if (nas->flags & NAS_FLAG_AUTHENTICATOR) + sta->suppl.state = sta->suppl.retry_state = WPA_AUTHENTICATION2; +#ifdef BCMSUPPL + if (nas->flags & NAS_FLAG_SUPPLICANT) + sta->suppl.state = sta->suppl.retry_state = WPA_SUP_AUTHENTICATION; + sta->suppl.pk_state = EAPOL_SUP_PK_UNKNOWN; +#endif + sta->pae.state = INITIALIZE; + + /* initial mode/wsec/algom. assoc proc will override them */ + if ((nas->mode & RADIUS) && (nas->wsec & WEP_ENABLED)) { + sta->mode = RADIUS; + sta->wsec = WEP_ENABLED; + sta->algo = CRYPTO_ALGO_WEP128; + } + else { + sta->mode = 0; + sta->wsec = 0; + sta->algo = 0; + } + dbg(nas, "mode %d wsec %d algo %d", sta->mode, sta->wsec, sta->algo); + + /* Add entry to the cache */ + sta->next = nas->sta_hashed[hash]; + nas->sta_hashed[hash] = sta; + sta->flags = 0; + } + sta->last_use = now; + return sta; +} + +/* Transition to new PAE state */ +void +pae_state(nas_t *nas, nas_sta_t *sta, int state) +{ +#ifdef BCMDBG + char eabuf[ETHER_ADDR_STR_LEN]; +#endif + sta->pae.state = state; + + /* New PAE state */ + switch (sta->pae.state) { + + case AUTHENTICATED: + dbg(nas, "Authenticated %s", ether_etoa((uchar *)&sta->ea, eabuf)); + eapol_canned(nas, sta, EAP_SUCCESS, 0); + sta->pae.id++; + sta->rxauths = 0; + break; + + case HELD: + dbg(nas, "Held %s", ether_etoa((uchar *)&sta->ea, eabuf)); + eapol_canned(nas, sta, EAP_FAILURE, 0); + sta->pae.id++; + /* hold off for the quiet period */ + sta->quiet_while = STA_QUIETWHILE_MAX; + + break; + + case ABORTING: + dbg(nas, "Aborting %s", ether_etoa((uchar *)&sta->ea, eabuf)); + if (sta->pae.radius.username.data) + free(sta->pae.radius.username.data); + memset(&sta->pae.radius.username, 0, + sizeof(sta->pae.radius.username)); + if (sta->pae.radius.state.data) + free(sta->pae.radius.state.data); + memset(&sta->pae.radius.state, 0, + sizeof(sta->pae.radius.state)); + if (sta->pae.radius.request) + free(sta->pae.radius.request); + sta->pae.radius.request = NULL; + sta->pae.id++; + + break; + + case DISCONNECTED: + dbg(nas, "Disconnected %s", ether_etoa((uchar *)&sta->ea, eabuf)); + eapol_canned(nas, sta, EAP_FAILURE, 0); + sta->pae.id++; + sta->pae.state = CONNECTING; + sta->rxauths = 0; + /* Fall through */ + + case CONNECTING: + dbg(nas, "Connecting %s", ether_etoa((uchar *)&sta->ea, eabuf)); + sta->pae.flags = 0; /* reset flags */ + sta->pae.ssnto = 0; /* session timeout */ + eapol_canned(nas, sta, EAP_REQUEST, EAP_IDENTITY); + sta->rxauths++; + sta->tx_when = STA_TXPERIOD_MAX; + break; + + case AUTHENTICATING: + dbg(nas, "Authenticating %s", ether_etoa((uchar *)&sta->ea, eabuf)); + sta->auth_while = STA_AUTHWHILE_MAX; + break; + + default: + dbg(nas, "Unexpected state %d %s", sta->pae.state, + ether_etoa((uchar *)&sta->ea, eabuf)); + break; + } +} + +void +fix_wpa(nas_t *nas, nas_sta_t *sta, char *key, int len) +{ + eapol_header_t eapol; + eapol_wpa_key_header_t wpa_key; + unsigned char buffer[sizeof(eapol) + sizeof(wpa_key)]; + wpa_t *wpa = (wpa_t *)nas->wpa; + + dbg(nas, "use MPPE recv key as PMK"); + /* Use the RADIUS key for a PMK. */ + if (len > PMK_LEN) + len = PMK_LEN; + memcpy(sta->suppl.pmk, key, len); + sta->suppl.pmk_len = len; +#ifdef BCMWPA2 + /* generate pmkid */ + if (sta->mode & WPA2) { + nas_wpa_calc_pmkid(wpa, sta); + if (sta->flags & STA_FLAG_PRE_AUTH) { + /* Once Pre authed don't worry about this variable */ + sta->flags &= ~STA_FLAG_PRE_AUTH; + return; + } + } +#endif /* BCMWPA2 */ + + /* Fake enough of an EAPOL key message to make WPA happy. */ + memcpy(&eapol.eth.ether_shost, &sta->ea, ETHER_ADDR_LEN); + memcpy(&eapol.eth.ether_dhost, &nas->ea, ETHER_ADDR_LEN); + eapol.eth.ether_type = htons(ETHER_TYPE_802_1X); + eapol.version = sta->eapol_version; + eapol.type = EAPOL_KEY; + eapol.length = EAPOL_WPA_KEY_LEN; + memset(&wpa_key, 0, sizeof(wpa_key)); +#ifdef BCMWPA2 + if (sta->mode & (WPA2_PSK | WPA2)) + wpa_key.type = EAPOL_WPA2_KEY; + else +#endif + wpa_key.type = EAPOL_WPA_KEY; + wpa_key.key_info = htons(WPA_KEY_PAIRWISE | WPA_KEY_REQ); + /* Put the message pieces together. (They probably were together, + * but it's not valid to assume so. + */ + memcpy(buffer, &eapol, sizeof(eapol)); + memcpy(&buffer[offsetof(eapol_header_t, body)], &wpa_key, + sizeof(wpa_key)); + + /* WPA state should be okay now to start 4-way handshake. */ + if (process_wpa(wpa, (eapol_header_t *)buffer, sta)) { + cleanup_sta(nas, sta, DOT11_RC_8021X_AUTH_FAIL, 0); + } +} + + +/* Send a canned EAPOL packet */ +static void +eapol_canned(nas_t *nas, nas_sta_t *sta, unsigned char code, unsigned char type) +{ + eapol_header_t eapol; + eap_header_t eap; + struct iovec frags[2]; + + memcpy(&eapol.eth.ether_dhost, &sta->ea, ETHER_ADDR_LEN); + memcpy(&eapol.eth.ether_shost, &nas->ea, ETHER_ADDR_LEN); +#ifdef BCMWPA2 + if (sta->flags & STA_FLAG_PRE_AUTH) + eapol.eth.ether_type = htons(ETHER_TYPE_802_1X_PREAUTH); + else +#endif + eapol.eth.ether_type = htons(ETHER_TYPE_802_1X); + eapol.version = sta->eapol_version; + eapol.type = EAP_PACKET; + eapol.length = htons(type ? (EAP_HEADER_LEN + 1) : EAP_HEADER_LEN); + + eap.code = code; + eap.id = sta->pae.id; + eap.length = eapol.length; + eap.type = type; + + frags[0].iov_base = (caddr_t) &eapol; + frags[0].iov_len = EAPOL_HEADER_LEN; + frags[1].iov_base = (caddr_t) &eap; + frags[1].iov_len = ntohs(eapol.length); + +#ifdef BCMWPA2 + if (sta->flags & STA_FLAG_PRE_AUTH) + nas_preauth_send_packet(nas, frags, 2); + else +#endif + nas_eapol_send_packet(nas, frags, 2); +} + +#define JAN_1970 0x83aa7e80 /* 2208988800 1970 - 1900 in seconds */ + +/* How to multiply by 4294.967296 quickly (and not quite exactly) + * without using floating point or greater than 32-bit integers. + * If you want to fix the last 12 microseconds of error, add in + * (2911*(x))>>28) + */ +#define NTPFRAC(x) (4294*(x) + ((1981*(x))>>11)) + +/* Send a EAPOL-Key packet */ +void +eapol_key(nas_t *nas, nas_sta_t *sta, + unsigned char *send_key, int send_key_len, + unsigned char *recv_key, int recv_key_len, + unsigned char *key, int key_len, int index, int unicast) +{ + struct iovec packet; + eapol_header_t *eapol; + eapol_key_header_t *body; + + struct timeval tv; + struct timezone tz; + unsigned short length; + unsigned int replay[2]; + unsigned char rc4_seed[48] = { 0 }; + rc4_ks_t rc4_key; + + /* Allocate packet */ + packet.iov_len = EAPOL_HEADER_LEN + EAPOL_KEY_HEADER_LEN; + if (key) + packet.iov_len += key_len; + if (!(packet.iov_base = (caddr_t) malloc(packet.iov_len))) { + perror("malloc"); + return; + } + + /* Fill EAPOL header */ + eapol = (eapol_header_t *) packet.iov_base; + memcpy(&eapol->eth.ether_dhost, &sta->ea, ETHER_ADDR_LEN); + memcpy(&eapol->eth.ether_shost, &nas->ea, ETHER_ADDR_LEN); +#ifdef BCMWPA2 + if (sta->flags & STA_FLAG_PRE_AUTH) + eapol->eth.ether_type = htons(ETHER_TYPE_802_1X_PREAUTH); + else +#endif + eapol->eth.ether_type = htons(ETHER_TYPE_802_1X); + eapol->version = sta->eapol_version; + eapol->type = EAPOL_KEY; + eapol->length = htons(packet.iov_len - EAPOL_HEADER_LEN); + + /* Fill EAPOL-Key header */ + body = (eapol_key_header_t *) eapol->body; + body->type = EAPOL_RC4_KEY; + + /* Length field is unaligned */ + length = htons(key_len); + memcpy(&body->length, &length, sizeof(body->length)); + + /* Replay Counter field is unaligned */ + gettimeofday(&tv, &tz); + /* + * keep track timestamp locally in case gettimeofday() does not return + * correct usec value, for example, on vx. It is ok to not adjust + * tv.tv_sec since tv.tv_usec is not going to overflow anyway. + */ + if (tv.tv_usec == sta->rc4keyusec && tv.tv_sec == sta->rc4keysec) { + tv.tv_usec += sta->rc4keycntr; + sta->rc4keycntr ++; + } + else { + sta->rc4keysec = tv.tv_sec; + sta->rc4keyusec = tv.tv_usec; + sta->rc4keycntr = 1; + } + replay[0] = htonl(tv.tv_sec + JAN_1970); + replay[1] = htonl(NTPFRAC(tv.tv_usec)); + memcpy(body->replay, replay, sizeof(body->replay)); + + /* Fill Key IV */ + nas_rand128(body->iv); + + /* Fill Key Index */ + body->index = index; + if (unicast) + body->index |= EAPOL_KEY_UNICAST; + + /* Encrypt Key */ + if (key) { + memcpy(rc4_seed, body->iv, 16); + memcpy(&rc4_seed[16], recv_key, recv_key_len); + prepare_key(rc4_seed, 16 + recv_key_len, &rc4_key); + memcpy(body->key, key, key_len); + rc4(body->key, key_len, &rc4_key); + } + + /* Calculate HMAC-MD5 checksum with null signature */ + if (send_key) { + memset(body->signature, 0, 16); + hmac_md5(&eapol->version, packet.iov_len - OFFSETOF(eapol_header_t, version), + send_key, send_key_len, body->signature); + } + +#ifdef BCMWPA2 + if (sta->flags & STA_FLAG_PRE_AUTH) + nas_preauth_send_packet(nas, &packet, 1); + else +#endif + nas_eapol_send_packet(nas, &packet, 1); + free(packet.iov_base); +} + +#ifdef BCMDBG +/* Make a debug message lucid for those who don't know types by number */ +static char * +eapol_msg_type_name(int type_no) +{ + char *name; + + switch (type_no) { + case EAP_PACKET: + name = "EAP"; + break; + case EAPOL_START: + name = "EAPOL start"; + break; + case EAPOL_LOGOFF: + name = "EAPOL logoff"; + break; + case EAPOL_KEY: + name = "EAPOL key"; + break; + case EAPOL_ASF: + name = "EAPOL ASF"; + break; + default: + name = "unexpected type"; + break; + } + return name; +} +#endif /* BCMDBG */ + +void +eapol_dispatch(nas_t *nas, eapol_header_t *eapol) +{ + eapol_dispatch_ex(nas, eapol, 0); +} + +#ifdef BCMWPA2 +void +preauth_dispatch(nas_t *nas, eapol_header_t *eapol) +{ + if (!nas->disable_preauth) + eapol_dispatch_ex(nas, eapol, 1); +} +#endif /* BCMWPA2 */ + +static void +eapol_dispatch_ex(nas_t *nas, eapol_header_t *eapol, int preauth) +{ + nas_sta_t *sta; + eap_header_t *eap; +#ifdef BCMDBG + char eabuf[ETHER_ADDR_STR_LEN]; +#endif + + /* Validate EAPOL version */ + if (!eapol) { + dbg(nas, "Missing EAPOL header"); + return; + } + + sta = lookup_sta(nas, (struct ether_addr *) eapol->eth.ether_shost, + SEARCH_ENTER); + if (!sta) { + dbg(nas, "no STA struct available"); + return; + } + if (sta->pae.state == HELD) { + dbg(nas, "nothing done since in HELD state"); + return; + } + dbg(nas, "%s message from %s", eapol_msg_type_name(eapol->type), + ether_etoa((uchar *)&sta->ea, eabuf)); + if (eapol->version < sta->eapol_version) { + dbg(nas, "EAPOL version %d packet received, current version is %d", eapol->version, + sta->eapol_version); + } + +#ifdef BCMWPA2 + if (!preauth) { +#endif /* BCMWPA2 */ + /* If this is a WPA key pkt then process it accordingly */ + if ((eapol->type == EAPOL_KEY) && + (CHECK_EAPOL_KEY(eapol->body[0]))) { + /* + * Expect to do this only for WPA_PSK or for WPA either very + * early or after RADIUS acceptance. + */ + if ((CHECK_NAS(sta->mode)) && + ((sta->pae.state == AUTHENTICATED) || + (sta->pae.state == INITIALIZE))) { + /* process WPA key pkt */ + if (process_wpa(nas->wpa, eapol, sta)) { + /* Something wrong in WPA. Lose this sta. */ + cleanup_sta(nas, sta, DOT11_RC_8021X_AUTH_FAIL, 0); + } + return; + } + /* return; */ + } + + /* break out if STA is only PSK */ + if (CHECK_PSK(sta->mode)) + return; +#ifdef BCMWPA2 + sta->flags &= ~STA_FLAG_PRE_AUTH; + } + /* + * instead of passing the state variable saying whether this data is from a pre auth + * sta or from a normal store the variable in the sta struct and + * would be reset once the message is handled ... state variable makes sense + * only for this one message. + */ + else { + sta->flags |= STA_FLAG_PRE_AUTH; + sta->mode = WPA2; + sta->eapol_version = WPA2_EAPOL_VERSION; + } +#endif /* BCMWPA2 */ + + /* EAPOL event : Radius support */ + switch (eapol->type) { + + case EAP_PACKET: + dbg(nas, "EAP Packet.Preauth=%d", preauth); + if (ntohs(eapol->length) >= (EAP_HEADER_LEN + 1)) { + eap = (eap_header_t *) eapol->body; + dbg(nas, "STA State=%d EAP Packet Type=%d Id=%d code=%d", + sta->pae.state, eap->type, eap->id, eap->code); + + switch (eap->type) { + + case EAP_IDENTITY: + /* Bogus packet */ + if (eap->id != sta->pae.id || + eap->code != EAP_RESPONSE) { + dbg(nas, "bogus EAP packet id %d code %d, expected %d", + eap->id, eap->code, sta->pae.id); + break; + } + + if (sta->pae.state == AUTHENTICATING) { + dbg(nas, "NAS currently authenticating STA. " + "Tossing packet id=%d code=%d.", + eap->id, eap->code); + + break; + } + /* Record identity */ + if (ntohs(eap->length) > (EAP_HEADER_LEN + 1)) { + if (sta->pae.radius.username.data) + free(sta->pae.radius.username.data); + sta->pae.radius.username.length = ntohs(eap->length) - + EAP_HEADER_LEN - 1; + if (!(sta->pae.radius.username.data = + malloc(sta->pae.radius.username.length))) { + perror("malloc"); + return; + } else + memcpy(sta->pae.radius.username.data, eap->data, + sta->pae.radius.username.length); + } + pae_state(nas, sta, AUTHENTICATING); + /* Fall through */ + + default: + /* Bogus packet */ + + /* Forward to authentication server */ + RADIUS_FORWARD(nas, sta, eap); + break; + } + } + break; + + case EAPOL_START: + dbg(nas, "Start"); + sta->pae.id = 0; /* reset counter */ + switch (sta->pae.state) { + case AUTHENTICATING: + pae_state(nas, sta, ABORTING); + /* Fall through */ + + default: + pae_state(nas, sta, CONNECTING); + break; + } + sta->suppl.state = sta->suppl.retry_state = WPA_PTKSTART; + break; + + case EAPOL_LOGOFF: + dbg(nas, "Logoff"); + switch (sta->pae.state) { + default: + dbg(nas, "Unexpected pae state %d", sta->pae.state); + /* Fall through */ + case AUTHENTICATING: + pae_state(nas, sta, ABORTING); + /* Fall through */ + + case CONNECTING: + case AUTHENTICATED: + pae_state(nas, sta, DISCONNECTED); + dbg(nas, "deauthenticating %s", ether_etoa((uchar *)&sta->ea, eabuf)); + nas_deauthorize(nas, &sta->ea); + break; + } + break; + + case EAPOL_KEY: + dbg(nas, "Key"); + break; + + case EAPOL_ASF: + dbg(nas, "Encapsulated ASF Alert"); + break; + + default: + dbg(nas, "unknown EAPOL type %d", eapol->type); + break; + } +} + +#ifdef BCMSUPPL +void +eapol_sup_dispatch(nas_t *nas, eapol_header_t *eapol) +{ + nas_sta_t *sta; +#ifdef BCMDBG + char eabuf[ETHER_ADDR_STR_LEN]; +#endif + + if (!eapol) { + dbg(nas, "Missing EAPOL header"); + return; + } + + sta = lookup_sta(nas, (struct ether_addr *) eapol->eth.ether_shost, + SEARCH_ENTER); + if (!sta) { + dbg(nas, "No STA struct available"); + return; + } + + dbg(nas, "%s message from %s", eapol_msg_type_name(eapol->type), + ether_etoa((uchar *)&sta->ea, eabuf)); + if (eapol->version < sta->eapol_version) { + dbg(nas, "EAPOL version %d packet received, current version is %d", eapol->version, + sta->eapol_version); + } + + /* If this is a WPA key pkt then process it accordingly */ + if ((eapol->type == EAPOL_KEY) && + (CHECK_EAPOL_KEY(eapol->body[0]))) { + /* Expect to do this only for WPA_PSK or for WPA either very + * early or after RADIUS acceptance. + */ + if ((CHECK_NAS(sta->mode)) && + ((sta->pae.state == AUTHENTICATED) || (sta->pae.state == INITIALIZE))) { + /* process WPA key pkt */ + if (process_sup_wpa(nas->wpa, eapol, sta)) { + /* Something wrong in WPA. Lose this pae. */ + cleanup_sta(nas, sta, DOT11_RC_8021X_AUTH_FAIL, 0); + } + return; + } + } + + err(nas, "unknown EAPOL type %d", eapol->type); +} +#endif /* BCMSUPPL */ + +#ifdef BCMDBG +/* Make a debug message lucid for those who don't know types by number */ +static char * +driver_msg_name(int type) +{ + switch (type) { + case WLC_E_LINK: + return "LINK"; + case WLC_E_ASSOC_IND: + return "ASSOC"; + case WLC_E_REASSOC_IND: + return "REASSOC"; + case WLC_E_DISASSOC_IND: + return "DISASSOC"; + case WLC_E_MIC_ERROR: + return "MIC error"; + default: + return "unknown"; + } +} +#endif /* BCMDBG */ + +void +driver_message_dispatch(nas_t *nas, bcm_event_t *dpkt) +{ + wl_event_msg_t *event = &(dpkt->event); + int type = ntohl(event->event_type); + uint8 *addr = (uint8 *)&(event->addr); + nas_sta_t *sta; +#ifdef BCMDBG + char eabuf[ETHER_ADDR_STR_LEN]; +#endif + + /* !!!THESE ARE THE MESSAGES WE CARE!!! */ + dbg(nas, "received event of type : %d\n", type); + switch (type) { + case WLC_E_LINK: + /* WLC_E_LINK evnet on WDS is use for trigger nas_start */ + if (nas->flags & NAS_FLAG_WDS) + return; + /* authenticator is not interested in LINK event */ + if (nas->flags & NAS_FLAG_AUTHENTICATOR) + return; + /* and the supplicant is only interested in link up */ + if (!(ntohs(event->flags) & WLC_EVENT_MSG_LINK)) { + return; + } + case WLC_E_ASSOC_IND: + case WLC_E_REASSOC_IND: + case WLC_E_DISASSOC_IND: + case WLC_E_MIC_ERROR: + break; + default: + /* quietly discard unwanted events */ + return; + } + + dbg(nas, "start"); + + dbg(nas, "driver %s message received for %s", driver_msg_name(type), + ether_etoa(addr, eabuf)); + + /* Look for the STA struct, but don't create one if the goal is + * to remove it. + */ + sta = lookup_sta(nas, (struct ether_addr *)addr, + type == WLC_E_DISASSOC_IND ? SEARCH_ONLY : SEARCH_ENTER); + + switch (type) { + + case WLC_E_LINK: + case WLC_E_ASSOC_IND: + case WLC_E_REASSOC_IND: + if (!(CHECK_NAS(nas->mode))) { + dbg(nas, "Unexpected driver %s message in mode %d", driver_msg_name(type), + nas->mode); + return; + } + if (wpa_driver_assoc_msg(nas->wpa, dpkt, sta) == 0) + break; + + /* clean-up stuff if there was a problem. */ + if (sta) + cleanup_sta(nas, sta, 0, 1); + + break; + + case WLC_E_DISASSOC_IND: + if (wpa_driver_disassoc_msg(nas->wpa, dpkt, sta) == 0) + break; + + /* clean-up stuff if there was a problem. */ + if (sta) + cleanup_sta(nas, sta, 0, 1); + + break; + + case WLC_E_MIC_ERROR: + if ((ntohs(event->flags) & WLC_EVENT_MSG_GROUP) && + (nas->flags & NAS_FLAG_AUTHENTICATOR)) { + dbg(nas, "GTK MIC error notification received by AP"); + return; + } + + + /* + If an error is attributed to a STA we don't know about, + just let it go. + + Otherwise, call wpa_mic_error for processing + + */ + + if (sta != NULL) { + dbg(nas, "PTK MIC error notification received by AP"); + wpa_mic_error(nas->wpa, sta, TRUE); + } + else { + dbg(nas, + "PTK MIC error notification received by AP but not from a known STA"); + } + + break; + + default: + dbg(nas, "Tossing unexpected event #%u", type); + } + + dbg(nas, "done"); +} + +static void +nas_watchdog(bcm_timer_id td, nas_t *nas) +{ + nas_sta_t *sta; + int i; +#ifdef BCMDBG + char eabuf[ETHER_ADDR_STR_LEN]; +#endif + for (i = 0; i < MAX_SUPPLICANTS; i ++) { + for (sta = nas->sta_hashed[i]; sta; sta = sta->next) { +#ifdef BCMDBG + if (nas->auth_blockout_time) { + if (sta->pae.flags & PAE_FLAG_RADIUS_ACCESS_REJECT) + dbg(nas, "blocking %s, time remaining = %d", + ether_etoa((uchar *)&sta->ea, eabuf), sta->quiet_while); + } +#endif + /* check for time out */ + switch (sta->pae.state) { + case AUTHENTICATED: + if (!sta->pae.ssnto) + break; + sta->pae.ssnto--; + /* timed out */ + if (sta->pae.ssnto) + continue; + /* send Identity Request */ + dbg(nas, "ID req to %s\n", ether_etoa((uchar *)&sta->ea, eabuf)); + send_identity_req(nas, sta); + break; + case HELD: + if (sta->quiet_while && --sta->quiet_while == 0) + pae_state(nas, sta, CONNECTING); + break; + case CONNECTING: + if (sta->tx_when && --sta->tx_when == 0) { + if (sta->rxauths > STA_REAUTH_MAX) + pae_state(nas, sta, DISCONNECTED); + else + pae_state(nas, sta, CONNECTING); + } + break; + case AUTHENTICATING: + if (sta->auth_while && --sta->auth_while == 0) { + pae_state(nas, sta, ABORTING); + pae_state(nas, sta, CONNECTING); + } + break; + default: + break; + } + } + } +} + +static void +nas_start_watchdog(nas_t *nas) +{ + itimer_status_t ts; + + if (nas->watchdog_td) + TIMER_DELETE(nas->watchdog_td); + + ts = wpa_set_itimer(nas->timer, &nas->watchdog_td, + (bcm_timer_cb)nas_watchdog, + (int)nas, 1, 0); + if (ts != ITIMER_OK) + dbg(nas, "Session timeout timer set failed, code %d", ts); +} + +void +nas_start(nas_t *nas) +{ + nas_sta_t *sta; + + /* reset all STAs */ + bzero((void *)nas->sta, sizeof(nas->sta)); + bzero((void *)nas->sta_hashed, sizeof(nas->sta_hashed)); + nas->MIC_failures = 0; + nas->MIC_countermeasures = 0; + nas->prev_MIC_error = 0; + + /* start session count down timer */ + if (CHECK_RADIUS(nas->mode)) + nas_start_watchdog(nas); + + /* initiate/request pairwise key exchange */ + if (!(nas->flags & NAS_FLAG_WDS)) + return; + + sta = lookup_sta(nas, (struct ether_addr *)nas->remote, + SEARCH_ENTER); + if (!sta) { +#ifdef BCMDBG + char eabuf[ETHER_ADDR_STR_LEN]; +#endif + dbg(nas, "sta %s not available", ether_etoa(nas->remote, eabuf)); + return; + } + + /* Assume the peer use the same cipher and akm */ + if (CHECK_PSK(nas->mode)) { + sta->suppl.pmk_len = nas->wpa->pmk_len; + bcopy(nas->wpa->pmk, sta->suppl.pmk, nas->wpa->pmk_len); + } + /* + * There is no beacon/proberesp/assocreq across WDS, therefore + * we have no way to know what cipher and akm the peer is configured + * for. But assuming the peer uses the same configuration seems + * reasonable. No WEP when doing WPA over WDS. + */ + wpa_set_suppl(nas->wpa, sta, nas->mode, nas->wsec, CRYPTO_ALGO_OFF); + +#ifdef BCMSUPPL + if (nas->flags & NAS_FLAG_SUPPLICANT) + wpa_request(nas->wpa, sta); +#endif + if (nas->flags & NAS_FLAG_AUTHENTICATOR) + wpa_start(nas->wpa, sta); +} + +int +nas_handle_error(nas_t *nas, int error) +{ + /* Handle the Error cases one by one */ + err(nas, "NAS encountered a non recoverable Error, so resetting the board\n"); + nas_reset_board(); + while (1); + return 1; +} diff --git a/release/src-rt/wl/nas/nas.h b/release/src-rt/wl/nas/nas.h new file mode 100644 index 0000000000..c1d0d07f7f --- /dev/null +++ b/release/src-rt/wl/nas/nas.h @@ -0,0 +1,286 @@ +/* + * NAS definitions + * + * Copyright (C) 2010, Broadcom Corporation + * All Rights Reserved. + * + * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation; + * the contents of this file may not be disclosed to third parties, copied + * or duplicated in any form, in whole or in part, without the prior + * written permission of Broadcom Corporation. + * + * $Id: nas.h 248179 2011-03-23 06:13:44Z simonk $ + */ + +#ifndef _nas_h_ +#define _nas_h_ + +#include +#include + +#include +#include +#include +#include + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include + + + +/* Debug macros */ +#ifdef BCMDBG +#if defined(dbg) +#undef dbg +#endif +#define dbg(nas, fmt, args...) (\ +{ \ + if (nas) { \ + nas_t *tmp = nas; \ + if (tmp->debug) {\ + printf("%s: %s: " fmt "\n", __FUNCTION__, tmp->interface , ## args); \ + } \ + } \ + else {\ + printf("%s: " fmt "\n", __FUNCTION__ , ## args); \ + }\ +} \ +) +#define dump(nas, mem, size) (\ +{ \ + if (nas) { \ + nas_t *tmp = nas; \ + if (tmp->debug) \ + prhex("", mem, size); \ + } \ +} \ +) +#else +#if defined(dbg) +#undef dbg +#endif +#define dbg(nas, fmt, args...) +#define dump(nas, mem, size) +#endif /* BCMDBG */ +#define err(nas, fmt, args...) (\ +{ \ + if (nas) { \ + nas_t *tmp = nas; \ + printf("%s: %s: " fmt "\n", __FUNCTION__, tmp->interface , ## args); \ + } \ + else { \ + printf("%s: " fmt "\n", __FUNCTION__ , ## args); \ + } \ +} \ +) + +/* Maximum number of supplicants */ +#define MAX_SUPPLICANTS 64 + + +typedef struct binstring { + unsigned int length; + unsigned char *data; +} binstring_t; + +/* PAE states */ +typedef enum { + INITIALIZE, + DISCONNECTED, + CONNECTING, + AUTHENTICATING, + ABORTING, + HELD, + AUTHENTICATED +} pae_state_t; + +/* 802.1x Port Access Entity */ +typedef struct pae { + pae_state_t state; /* PAE state */ + int id; /* EAP current request ID */ + struct { + binstring_t username; /* RADIUS User Name */ + binstring_t state; /* RADIUS State */ + radius_header_t *request; /* Last request */ + } radius; + struct pae *next; /* Linked list */ + uint32 flags; + uint32 ssnto; /* session timeout */ +} pae_t; + +#define PAE_FLAG_EAP_SUCCESS 0x00000001 +#define PAE_FLAG_RADIUS_ACCESS_REJECT 0x00000002 + +#define MAX_NAS_ID_LEN 32 + +#include "wpa.h" + +/* Modes */ +typedef enum +{ + WPA = WPA_AUTH_UNSPECIFIED, + WPA_PSK = WPA_AUTH_PSK, +#ifdef BCMWPA2 + WPA2 = WPA2_AUTH_UNSPECIFIED, + WPA2_PSK = WPA2_AUTH_PSK, +#endif + RADIUS = 0x20 +} nas_mode_t; + +/* RADIUS Network Access Server (NAS) */ +typedef struct nas { + char interface[IFNAMSIZ+1]; /* LAN interface name */ + char ssid[DOT11_MAX_SSID_LEN+1]; /* SSID */ + nas_mode_t mode; /* 0:Radius, 1:WPA, 2:WPA-PSK */ + uint32 wsec; /* crypto algorithm config, same as wl driver */ + struct ether_addr ea; /* LAN Ethernet address */ + wpa_t *wpa; /* WPA struct (NULL if wpa not in use) */ + int wan; /* RADIUS interface handle */ + struct sockaddr_in client; /* RADIUS interface IP address */ + struct sockaddr_in server; /* RADIUS server IP address */ + binstring_t key; /* PSK shared secret */ + unsigned int type; /* RADIUS NAS Port Type */ + nas_sta_t sta[MAX_SUPPLICANTS]; /* STAs */ + nas_sta_t *sta_hashed[MAX_SUPPLICANTS]; /* STA cache */ + bcm_timer_module_id timer; /* timer module ID */ + /* MIC error stuff needs to be per-interface */ + uint32 MIC_failures; /* how many detected */ + bool MIC_countermeasures; /* flags lock-out period */ + time_t prev_MIC_error; /* seconds since last one */ + /* various flags see below */ + uint32 flags; + /* wds remote address */ + uint8 remote[ETHER_ADDR_LEN]; + /* application data */ + void *appl; +#ifdef BCMDBG + /* debug flag */ + bool debug; +#endif + + /* session timeout - global */ + uint32 ssn_to; + bcm_timer_id watchdog_td; + /* RADIUS shared secret */ + binstring_t secret; +#ifdef BCMWPA2 + uint32 disable_preauth; /* Internal Flags to disable the WPA2 preauth */ +#endif + uint32 auth_blockout_time; /* seconds to block out client after auth. fail */ + char nas_id[MAX_NAS_ID_LEN+1]; /* nas mac address */ +} nas_t; + +#define NAS_FLAG_SUPPLICANT WLIFU_WSEC_SUPPL /* nas is supplicant, exclusive */ +#define NAS_FLAG_AUTHENTICATOR WLIFU_WSEC_AUTH /* nas is authenticator, exclusive */ +#define NAS_FLAG_WDS WLIFU_WSEC_WDS /* nas in WDS mode */ +#define NAS_FLAG_GTK_PLUMBED 0x40000000 /* GTK has been plumbed */ +#define NAS_FLAG_IGTK_PLUMBED 0x80000000 /* GTK has been plumbed */ + + +/* Supplicant cache */ +#define pae_hash(ea) \ +((((unsigned char *) ea)[3] ^ ((unsigned char *) ea)[4] ^ ((unsigned char *) ea)[5]) & \ +(MAX_SUPPLICANTS - 1)) + + +/* Always clear the descriptor when deleting a timer! */ +#define TIMER_DELETE(td) {(void) bcm_timer_delete(td); td = 0;} + +/* Driver specific */ +extern int nas_authorize(nas_t *nas, struct ether_addr *ea); +extern int nas_deauthorize(nas_t *nas, struct ether_addr *ea); +extern int nas_deauthenticate(nas_t *nas, struct ether_addr *ea, int reason); +extern int nas_disassoc(nas_t *nas); +extern int nas_set_key(nas_t *nas, struct ether_addr *ea, unsigned char *key, int len, int index, + int tx_flag, uint32 hi, uint16 lo); +extern int nas_set_mode(nas_t *nas, int mode); +extern int nas_get_group_rsc(nas_t *nas, uint8 *buf, int index); +extern void nas_wl_init(nas_t *nas); +extern int nas_wl_tkip_countermeasures(nas_t *nas, int enable); +extern void nas_wl_cleanup(nas_t *nas); +extern int nas_set_ssid(nas_t *nas, char *ssid); +extern int nas_join_bss(nas_t *nas, char *ssid); +extern int nas_get_wpacap(nas_t *nas, uint8 *cap); +extern int nas_get_wpa_ie(nas_t *nas, char *ret_buf, int ret_buf_len, uint32 sta_mode); + +extern int nas_set_eventmsgs(nas_t *nas, uchar *msgs, int size); +extern int nas_get_eventmsgs(nas_t *nas, uchar *msgs, int size); +/* OS specific */ +extern void nas_rand128(uint8 *rand128); +extern int nas_eapol_send_packet(nas_t *nas, struct iovec *frags, int nfrags); + +/* Main dispatch functions */ +extern void eapol_dispatch(nas_t *nas, eapol_header_t *eapol); +#ifdef BCMSUPPL +extern void eapol_sup_dispatch(nas_t *nas, eapol_header_t *eapol); +#endif + +#ifdef BCMWPA2 +extern int nas_preauth_send_packet(nas_t *nas, struct iovec *frags, int nfrags); +extern void preauth_dispatch(nas_t *nas, eapol_header_t *eapol); +#endif /* BCMWPA2 */ + +extern void driver_message_dispatch(nas_t *nas, bcm_event_t *dpkt); +extern void driver_message_sup_dispatch(nas_t *nas, bcm_event_t *dpkt); +extern void cleanup_sta(nas_t *nas, nas_sta_t *sta, int reason, int driver_signal); + +typedef enum { SEARCH_ONLY, SEARCH_ENTER } sta_lookup_mode_t; + +extern nas_sta_t *lookup_sta(nas_t *nas, struct ether_addr *sta, + sta_lookup_mode_t mode); + +extern void nas_start(nas_t *nas); +extern void nas_sleep_ms(uint ms); + +extern void send_identity_req(nas_t *nas, nas_sta_t *sta); + +extern void nas_reset_board(void); +extern int nas_handle_error(nas_t *nas, int error); + +extern void pae_state(nas_t *nas, nas_sta_t *sta, int state); +extern void eapol_key(nas_t *nas, nas_sta_t *sta, + unsigned char *send_key, int send_key_len, + unsigned char *recv_key, int recv_key_len, + unsigned char *key, int key_len, int index, int unicast); +extern void fix_wpa(nas_t *nas, nas_sta_t *sta, char *key, int len); + +/* bcmcrypto/hmac.c */ +extern void hmac_md5(unsigned char* text, int text_len, unsigned char *key, + int key_len, unsigned char*digest); +extern void hmac_sha1(unsigned char *text, int text_len, unsigned char *key, + int key_len, unsigned char *digest); + +#define MIC_RATE_LIMIT 60 /* seconds */ + +#define STA_DEAUTH_DELAY 1 /* delay in second before call wl ioctl deauth */ +#define STA_REAUTH_MAX 2 /* reAuthMax */ +#define STA_TXPERIOD_MAX 30 /* max txPeriod in second */ +#define STA_AUTHWHILE_MAX 60 /* max authWhile in second */ +#define STA_QUIETWHILE_MAX 60 /* max quietWhile in second */ + + +#ifdef BCMWPA2 +#define CHECK_NAS(mode) ((mode) & (WPA | WPA_PSK | WPA2 | WPA2_PSK)) +#define CHECK_PSK(mode) ((mode) & (WPA_PSK | WPA2_PSK)) +#define CHECK_WPA(mode) ((mode) & (WPA | WPA2)) +#define CHECK_RADIUS(mode) ((mode) & (WPA | RADIUS | WPA2)) +#define CHECK_AUTH(mode) ((mode) & (RADIUS | WPA | WPA_PSK | WPA2 | WPA2_PSK)) +#else +#define CHECK_NAS(mode) ((mode) & (WPA | WPA_PSK)) +#define CHECK_PSK(mode) ((mode) & WPA_PSK) +#define CHECK_RADIUS(mode) ((mode) & (WPA | RADIUS)) +#define CHECK_WPA(mode) ((mode) & WPA) +#define CHECK_AUTH(mode) ((mode) & (RADIUS | WPA | WPA_PSK)) +#endif /* BCMWPA2 */ + +#endif /* _nas_h_ */ diff --git a/release/src-rt/wl/nas/nas.h.orig b/release/src-rt/wl/nas/nas.h.orig new file mode 100755 index 0000000000..c25cd89e30 --- /dev/null +++ b/release/src-rt/wl/nas/nas.h.orig @@ -0,0 +1,280 @@ +/* + * NAS definitions + * + * Copyright (C) 2010, Broadcom Corporation + * All Rights Reserved. + * + * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation; + * the contents of this file may not be disclosed to third parties, copied + * or duplicated in any form, in whole or in part, without the prior + * written permission of Broadcom Corporation. + * + * $Id: nas.h 248179 2011-03-23 06:13:44Z simonk $ + */ + +#ifndef _nas_h_ +#define _nas_h_ + +#include +#include + +#include +#include +#include +#include + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include + + + +/* Debug macros */ +#ifdef BCMDBG +#define dbg(nas, fmt, args...) (\ +{ \ + if (nas) { \ + nas_t *tmp = nas; \ + if (tmp->debug) {\ + printf("%s: %s: " fmt "\n", __FUNCTION__, tmp->interface , ## args); \ + } \ + } \ + else {\ + printf("%s: " fmt "\n", __FUNCTION__ , ## args); \ + }\ +} \ +) +#define dump(nas, mem, size) (\ +{ \ + if (nas) { \ + nas_t *tmp = nas; \ + if (tmp->debug) \ + prhex("", mem, size); \ + } \ +} \ +) +#else +#define dbg(nas, fmt, args...) +#define dump(nas, mem, size) +#endif /* BCMDBG */ +#define err(nas, fmt, args...) (\ +{ \ + if (nas) { \ + nas_t *tmp = nas; \ + printf("%s: %s: " fmt "\n", __FUNCTION__, tmp->interface , ## args); \ + } \ + else { \ + printf("%s: " fmt "\n", __FUNCTION__ , ## args); \ + } \ +} \ +) + +/* Maximum number of supplicants */ +#define MAX_SUPPLICANTS 64 + + +typedef struct binstring { + unsigned int length; + unsigned char *data; +} binstring_t; + +/* PAE states */ +typedef enum { + INITIALIZE, + DISCONNECTED, + CONNECTING, + AUTHENTICATING, + ABORTING, + HELD, + AUTHENTICATED +} pae_state_t; + +/* 802.1x Port Access Entity */ +typedef struct pae { + pae_state_t state; /* PAE state */ + int id; /* EAP current request ID */ + struct { + binstring_t username; /* RADIUS User Name */ + binstring_t state; /* RADIUS State */ + radius_header_t *request; /* Last request */ + } radius; + struct pae *next; /* Linked list */ + uint32 flags; + uint32 ssnto; /* session timeout */ +} pae_t; + +#define PAE_FLAG_EAP_SUCCESS 0x00000001 +#define PAE_FLAG_RADIUS_ACCESS_REJECT 0x00000002 + +#define MAX_NAS_ID_LEN 32 + +#include "wpa.h" + +/* Modes */ +typedef enum +{ + WPA = WPA_AUTH_UNSPECIFIED, + WPA_PSK = WPA_AUTH_PSK, +#ifdef BCMWPA2 + WPA2 = WPA2_AUTH_UNSPECIFIED, + WPA2_PSK = WPA2_AUTH_PSK, +#endif + RADIUS = 0x20 +} nas_mode_t; + +/* RADIUS Network Access Server (NAS) */ +typedef struct nas { + char interface[IFNAMSIZ+1]; /* LAN interface name */ + char ssid[DOT11_MAX_SSID_LEN+1]; /* SSID */ + nas_mode_t mode; /* 0:Radius, 1:WPA, 2:WPA-PSK */ + uint32 wsec; /* crypto algorithm config, same as wl driver */ + struct ether_addr ea; /* LAN Ethernet address */ + wpa_t *wpa; /* WPA struct (NULL if wpa not in use) */ + int wan; /* RADIUS interface handle */ + struct sockaddr_in client; /* RADIUS interface IP address */ + struct sockaddr_in server; /* RADIUS server IP address */ + binstring_t key; /* PSK shared secret */ + unsigned int type; /* RADIUS NAS Port Type */ + nas_sta_t sta[MAX_SUPPLICANTS]; /* STAs */ + nas_sta_t *sta_hashed[MAX_SUPPLICANTS]; /* STA cache */ + bcm_timer_module_id timer; /* timer module ID */ + /* MIC error stuff needs to be per-interface */ + uint32 MIC_failures; /* how many detected */ + bool MIC_countermeasures; /* flags lock-out period */ + time_t prev_MIC_error; /* seconds since last one */ + /* various flags see below */ + uint32 flags; + /* wds remote address */ + uint8 remote[ETHER_ADDR_LEN]; + /* application data */ + void *appl; +#ifdef BCMDBG + /* debug flag */ + bool debug; +#endif + + /* session timeout - global */ + uint32 ssn_to; + bcm_timer_id watchdog_td; + /* RADIUS shared secret */ + binstring_t secret; +#ifdef BCMWPA2 + uint32 disable_preauth; /* Internal Flags to disable the WPA2 preauth */ +#endif + uint32 auth_blockout_time; /* seconds to block out client after auth. fail */ + char nas_id[MAX_NAS_ID_LEN+1]; /* nas mac address */ +} nas_t; + +#define NAS_FLAG_SUPPLICANT WLIFU_WSEC_SUPPL /* nas is supplicant, exclusive */ +#define NAS_FLAG_AUTHENTICATOR WLIFU_WSEC_AUTH /* nas is authenticator, exclusive */ +#define NAS_FLAG_WDS WLIFU_WSEC_WDS /* nas in WDS mode */ +#define NAS_FLAG_GTK_PLUMBED 0x40000000 /* GTK has been plumbed */ +#define NAS_FLAG_IGTK_PLUMBED 0x80000000 /* GTK has been plumbed */ + + +/* Supplicant cache */ +#define pae_hash(ea) \ +((((unsigned char *) ea)[3] ^ ((unsigned char *) ea)[4] ^ ((unsigned char *) ea)[5]) & \ +(MAX_SUPPLICANTS - 1)) + + +/* Always clear the descriptor when deleting a timer! */ +#define TIMER_DELETE(td) {(void) bcm_timer_delete(td); td = 0;} + +/* Driver specific */ +extern int nas_authorize(nas_t *nas, struct ether_addr *ea); +extern int nas_deauthorize(nas_t *nas, struct ether_addr *ea); +extern int nas_deauthenticate(nas_t *nas, struct ether_addr *ea, int reason); +extern int nas_disassoc(nas_t *nas); +extern int nas_set_key(nas_t *nas, struct ether_addr *ea, unsigned char *key, int len, int index, + int tx_flag, uint32 hi, uint16 lo); +extern int nas_set_mode(nas_t *nas, int mode); +extern int nas_get_group_rsc(nas_t *nas, uint8 *buf, int index); +extern void nas_wl_init(nas_t *nas); +extern int nas_wl_tkip_countermeasures(nas_t *nas, int enable); +extern void nas_wl_cleanup(nas_t *nas); +extern int nas_set_ssid(nas_t *nas, char *ssid); +extern int nas_join_bss(nas_t *nas, char *ssid); +extern int nas_get_wpacap(nas_t *nas, uint8 *cap); +extern int nas_get_wpa_ie(nas_t *nas, char *ret_buf, int ret_buf_len, uint32 sta_mode); + +extern int nas_set_eventmsgs(nas_t *nas, uchar *msgs, int size); +extern int nas_get_eventmsgs(nas_t *nas, uchar *msgs, int size); +/* OS specific */ +extern void nas_rand128(uint8 *rand128); +extern int nas_eapol_send_packet(nas_t *nas, struct iovec *frags, int nfrags); + +/* Main dispatch functions */ +extern void eapol_dispatch(nas_t *nas, eapol_header_t *eapol); +#ifdef BCMSUPPL +extern void eapol_sup_dispatch(nas_t *nas, eapol_header_t *eapol); +#endif + +#ifdef BCMWPA2 +extern int nas_preauth_send_packet(nas_t *nas, struct iovec *frags, int nfrags); +extern void preauth_dispatch(nas_t *nas, eapol_header_t *eapol); +#endif /* BCMWPA2 */ + +extern void driver_message_dispatch(nas_t *nas, bcm_event_t *dpkt); +extern void driver_message_sup_dispatch(nas_t *nas, bcm_event_t *dpkt); +extern void cleanup_sta(nas_t *nas, nas_sta_t *sta, int reason, int driver_signal); + +typedef enum { SEARCH_ONLY, SEARCH_ENTER } sta_lookup_mode_t; + +extern nas_sta_t *lookup_sta(nas_t *nas, struct ether_addr *sta, + sta_lookup_mode_t mode); + +extern void nas_start(nas_t *nas); +extern void nas_sleep_ms(uint ms); + +extern void send_identity_req(nas_t *nas, nas_sta_t *sta); + +extern void nas_reset_board(void); +extern int nas_handle_error(nas_t *nas, int error); + +extern void pae_state(nas_t *nas, nas_sta_t *sta, int state); +extern void eapol_key(nas_t *nas, nas_sta_t *sta, + unsigned char *send_key, int send_key_len, + unsigned char *recv_key, int recv_key_len, + unsigned char *key, int key_len, int index, int unicast); +extern void fix_wpa(nas_t *nas, nas_sta_t *sta, char *key, int len); + +/* bcmcrypto/hmac.c */ +extern void hmac_md5(unsigned char* text, int text_len, unsigned char *key, + int key_len, unsigned char*digest); +extern void hmac_sha1(unsigned char *text, int text_len, unsigned char *key, + int key_len, unsigned char *digest); + +#define MIC_RATE_LIMIT 60 /* seconds */ + +#define STA_DEAUTH_DELAY 1 /* delay in second before call wl ioctl deauth */ +#define STA_REAUTH_MAX 2 /* reAuthMax */ +#define STA_TXPERIOD_MAX 30 /* max txPeriod in second */ +#define STA_AUTHWHILE_MAX 60 /* max authWhile in second */ +#define STA_QUIETWHILE_MAX 60 /* max quietWhile in second */ + + +#ifdef BCMWPA2 +#define CHECK_NAS(mode) ((mode) & (WPA | WPA_PSK | WPA2 | WPA2_PSK)) +#define CHECK_PSK(mode) ((mode) & (WPA_PSK | WPA2_PSK)) +#define CHECK_WPA(mode) ((mode) & (WPA | WPA2)) +#define CHECK_RADIUS(mode) ((mode) & (WPA | RADIUS | WPA2)) +#define CHECK_AUTH(mode) ((mode) & (RADIUS | WPA | WPA_PSK | WPA2 | WPA2_PSK)) +#else +#define CHECK_NAS(mode) ((mode) & (WPA | WPA_PSK)) +#define CHECK_PSK(mode) ((mode) & WPA_PSK) +#define CHECK_RADIUS(mode) ((mode) & (WPA | RADIUS)) +#define CHECK_WPA(mode) ((mode) & WPA) +#define CHECK_AUTH(mode) ((mode) & (RADIUS | WPA | WPA_PSK)) +#endif /* BCMWPA2 */ + +#endif /* _nas_h_ */ diff --git a/release/src-rt/wl/nas/nas/.gitignore b/release/src-rt/wl/nas/nas/.gitignore new file mode 100755 index 0000000000..b6ad525c23 --- /dev/null +++ b/release/src-rt/wl/nas/nas/.gitignore @@ -0,0 +1,2 @@ +*.o +nas diff --git a/release/src-rt/wl/nas/nas/Makefile b/release/src-rt/wl/nas/nas/Makefile new file mode 100755 index 0000000000..c6f198cf42 --- /dev/null +++ b/release/src-rt/wl/nas/nas/Makefile @@ -0,0 +1,53 @@ +# +# 802.1x Authenticator (Network Access Server) Embedded Linux Build Makefile +# +# Copyright (C) 2010, Broadcom Corporation +# All Rights Reserved. +# +# This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation; +# the contents of this file may not be disclosed to third parties, copied +# or duplicated in any form, in whole or in part, without the prior +# written permission of Broadcom Corporation. +# +# $Id: Makefile 247479 2011-03-19 02:27:10Z simonk $ +# + +CFLAGS += -I.. -I$(SRCBASE)/include -I$(SRCBASE)/router/shared -Wall -Werror + +#CFLAGS += -g -DDEBUG +CFLAGS += -s +CFLAGS += -DNAS_WKSP_BUILD_NAS_AUTH +CFLAGS += -DNAS_WKSP_BUILD_NAS_SUPPL +CFLAGS += -DNAS_RADIUS +CFLAGS += -DNAS_WKSP_ON_DEMAND + + +CFLAGS += -DBCMSUPPL + +# EAPD include path +CFLAGS += -I$(SRCBASE)/router/eapd + +LDFLAGS += -L$(TOP)/nvram -L$(INSTALLDIR)/nvram/usr/lib -lnvram +LDFLAGS += -L$(TOP)/shared -L$(INSTALLDIR)/shared/usr/lib -lshared +LDFLAGS += -L$(TOP)/libbcmcrypto -L$(INSTALLDIR)/libbcmcrypto/usr/lib -lbcmcrypto + +vpath %.c $(SRCBASE)/router/nas $(SRCBASE)/shared $(SRCBASE)/router/shared + +# build target +NASOBJS = mppe.o wpa.o nas.o nas_linux.o nas_wl.o nas_wksp.o +NASOBJS += nas_radius.o nas_wksp_radius.o +UTLOBJS = bcmwpa.o bcmutils.o + +all: nas + +nas: $(NASOBJS) $(UTLOBJS) + $(CC) -o $@ $^ $(LDFLAGS) + +# install to target +install: all + install -D nas $(INSTALLDIR)/usr/sbin/nas + $(STRIP) $(INSTALLDIR)/usr/sbin/nas + +# clean up mess +clean: + rm -f *.o *~ nas diff --git a/release/src-rt/wl/nas/nas_bsd.c b/release/src-rt/wl/nas/nas_bsd.c new file mode 100644 index 0000000000..50ce505512 --- /dev/null +++ b/release/src-rt/wl/nas/nas_bsd.c @@ -0,0 +1,154 @@ +/* + * Network Authentication Service deamon (Linux) + * + * Copyright (C) 2010, Broadcom Corporation + * All Rights Reserved. + * + * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation; + * the contents of this file may not be disclosed to third parties, copied + * or duplicated in any form, in whole or in part, without the prior + * written permission of Broadcom Corporation. + * + * $Id: nas_linux.c 241388 2011-02-18 03:33:22Z stakita $ + */ + +#include +#include +#include +#include +#include + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + + +#include +#include +#include +#include +#include +#include +#include + +#include +#include + +static nas_wksp_t * nas_nwksp = NULL; + +void +nas_sleep_ms(uint ms) +{ + usleep(1000*ms); +} + +void +nas_rand128(uint8 *rand128) +{ + static int dev_random_fd = -1; + struct timeval tv; + struct timezone tz; + MD5_CTX md5; + if (dev_random_fd == -1) + /* Use /dev/urandom because /dev/random, when it works at all, + * won't return anything when its entropy pool runs short and + * we can't control that. /dev/urandom look good enough. + */ + dev_random_fd = open("/dev/urandom", O_RDONLY|O_NONBLOCK); + if (dev_random_fd != -1) + read(dev_random_fd, rand128, 16); + else { + gettimeofday(&tv, &tz); + tv.tv_sec ^= rand(); + MD5Init(&md5); + MD5Update(&md5, (unsigned char *) &tv, sizeof(tv)); + MD5Update(&md5, (unsigned char *) &tz, sizeof(tz)); + MD5Final(rand128, &md5); + } +} + +static void +hup_hdlr(int sig) +{ + if (nas_nwksp) + nas_nwksp->flags = NAS_WKSP_FLAG_SHUTDOWN; + return; +} + +/* + * Configuration APIs + */ +int +nas_safe_get_conf(char *outval, int outval_size, char *name) +{ + char *val; + + if (name == NULL || outval == NULL) { + if (outval) + memset(outval, 0, outval_size); + return -1; + } + + val = nvram_safe_get(name); + if (!strcmp(val, "")) + memset(outval, 0, outval_size); + else + snprintf(outval, outval_size, "%s", val); + return 0; +} + +/* service main entry */ +int +main(int argc, char *argv[]) +{ + /* display usage if nothing is specified */ + if (argc == 2 && + (!strncmp(argv[1], "-h", 2) || + !strncmp(argv[1], "-H", 2))) { + nas_wksp_display_usage(); + return 0; + } + + /* alloc nas/wpa work space */ + if (!(nas_nwksp = nas_wksp_alloc_workspace())) { + NASMSG("Unable to allocate work space memory. Quitting...\n"); + return 0; + } + + if (argc > 1 && nas_wksp_parse_cmd(argc, argv, nas_nwksp)) { + NASMSG("Command line parsing error. Quitting...\n"); + nas_wksp_free_workspace(nas_nwksp); + return 0; + } + else { +#ifdef BCMDBG + /* verbose - 0:no | others:yes */ + /* for workspace */ + char debug[8]; + if (nas_safe_get_conf(debug, sizeof(debug), "nas_dbg") == 0) + debug_nwksp = (int)atoi(debug); +#endif + } + + /* establish a handler to handle SIGTERM. */ + signal(SIGTERM, hup_hdlr); + + /* run main loop to dispatch messages */ + nas_wksp_main_loop(nas_nwksp); + + return 0; +} + +void +nas_reset_board() +{ + kill(1, SIGTERM); + return; +} diff --git a/release/src-rt/wl/nas/nas_ecos.c b/release/src-rt/wl/nas/nas_ecos.c new file mode 100644 index 0000000000..b760543712 --- /dev/null +++ b/release/src-rt/wl/nas/nas_ecos.c @@ -0,0 +1,197 @@ +/* Network Authentication Service deamon (Ecos) + * + * Copyright (C) 2010, Broadcom Corporation + * All Rights Reserved. + * + * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation; + * the contents of this file may not be disclosed to third parties, copied + * or duplicated in any form, in whole or in part, without the prior + * written permission of Broadcom Corporation. + * + * $Id: nas_ecos.c 241388 2011-02-18 03:33:22Z stakita $ + */ +#include +#include +#include + +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include + +#include +#include +#include +#include +#include + +#include +#include + +#include +#include +#include + +#include + +extern int gettimeofday(struct timeval *tv, struct timezone *tz); +extern void sys_reboot(void); + +static cyg_handle_t nas_main_hdl; +static char nas_main_stack[16*1024]; +static cyg_thread nas_thread; +static int _nas_pid = 0, _nas_ready = 0; + +static nas_wksp_t *nas_nwksp = NULL; + +void +nas_sleep_ms(uint ms) +{ + cyg_tick_count_t ostick; + + ostick = ms / 10; + cyg_thread_delay(ostick); +} + +void +nas_rand128(uint8 *rand128) +{ + struct timeval tv; + struct timezone tz; + MD5_CTX md5; + + gettimeofday(&tv, &tz); + tv.tv_sec ^= rand(); + MD5Init(&md5); + MD5Update(&md5, (unsigned char *) &tv, sizeof(tv)); + MD5Update(&md5, (unsigned char *) &tz, sizeof(tz)); + MD5Final(rand128, &md5); +} + +static void +hup_hdlr(int sig) +{ + if (nas_nwksp) + nas_nwksp->flags = NAS_WKSP_FLAG_SHUTDOWN; + + return; +} + +/* + * Configuration APIs + */ +int +nas_safe_get_conf(char *outval, int outval_size, char *name) +{ + char *val; + + if (name == NULL || outval == NULL) { + if (outval) + memset(outval, 0, outval_size); + return -1; + } + + val = nvram_safe_get(name); + if (!strcmp(val, "")) + memset(outval, 0, outval_size); + else + snprintf(outval, outval_size, "%s", val); + return 0; +} + +void +nas_task_ready(void) +{ + _nas_ready = 1; +} + +/* nas task entry */ +int nas_main(void) +{ +#ifdef BCMDBG + char debug[8]; +#endif + /* clear _nas_ready */ + _nas_ready = 0; + + /* fill up NAS task pid */ + _nas_pid = oslib_pid(); + + /* clear rootnwksp */ + nas_nwksp = NULL; + + /* alloc nas/wpa work space */ + if (!(nas_nwksp = nas_wksp_alloc_workspace())) { + NASMSG("Unable to allocate work space memory. Quitting...\n"); + return -1; + } + +#ifdef BCMDBG + /* verbose - 0:no | others:yes */ + /* for workspace */ + if (nas_safe_get_conf(debug, sizeof(debug), "nas_dbg") == 0) + debug_nwksp = (int)atoi(debug); +#endif + + /* run main loop to dispatch message */ + nas_wksp_main_loop(nas_nwksp); + + return 0; +} + +void +nas_reset_board() +{ + sys_reboot(); + return; +} + +void +nasd_start(void) +{ + int wait_time = 1 * 100; /* 1 second */ + + if (!_nas_pid || + !oslib_waitpid(_nas_pid, NULL)) { + cyg_thread_create(7, + (cyg_thread_entry_t *)nas_main, + (cyg_addrword_t)NULL, + "NAS", + (void *)nas_main_stack, + sizeof(nas_main_stack), + &nas_main_hdl, + &nas_thread); + cyg_thread_resume(nas_main_hdl); + + /* Make sure nas stared and initial completed. Otherwise, + * it may lost some wireless driver events. + */ + while (_nas_ready == 0 && wait_time > 0) { + cyg_thread_delay(10); + wait_time -= 10; + } + + NASMSG("NAS task started\n"); + } +} + +void +nasd_stop(void) +{ + if (_nas_pid) { + hup_hdlr(15 /* SIGTERM */); + + /* wait until not running */ + while (oslib_waitpid(_nas_pid, NULL)) + cyg_thread_delay(10); + _nas_pid = 0; + NASMSG("NAS task stopped\n"); + } +} diff --git a/release/src-rt/wl/nas/nas_linux.c b/release/src-rt/wl/nas/nas_linux.c new file mode 100644 index 0000000000..f62ec6bb73 --- /dev/null +++ b/release/src-rt/wl/nas/nas_linux.c @@ -0,0 +1,158 @@ +/* + * Network Authentication Service deamon (Linux) + * + * Copyright (C) 2010, Broadcom Corporation + * All Rights Reserved. + * + * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation; + * the contents of this file may not be disclosed to third parties, copied + * or duplicated in any form, in whole or in part, without the prior + * written permission of Broadcom Corporation. + * + * $Id: nas_linux.c 241388 2011-02-18 03:33:22Z stakita $ + */ + +#include +#include +#include +#include +#include + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include + +#include +#include +#include +#include +#include +#include +#include + +#include +#include + +static nas_wksp_t * nas_nwksp = NULL; + +void +nas_sleep_ms(uint ms) +{ + usleep(1000*ms); +} + +void +nas_rand128(uint8 *rand128) +{ + static int dev_random_fd = -1; + struct timeval tv; + struct timezone tz; + MD5_CTX md5; + if (dev_random_fd == -1) + /* Use /dev/urandom because /dev/random, when it works at all, + * won't return anything when its entropy pool runs short and + * we can't control that. /dev/urandom look good enough. + */ + dev_random_fd = open("/dev/urandom", O_RDONLY|O_NONBLOCK); + if (dev_random_fd != -1) + read(dev_random_fd, rand128, 16); + else { + gettimeofday(&tv, &tz); + tv.tv_sec ^= rand(); + MD5Init(&md5); + MD5Update(&md5, (unsigned char *) &tv, sizeof(tv)); + MD5Update(&md5, (unsigned char *) &tz, sizeof(tz)); + MD5Final(rand128, &md5); + } +} + +static void +hup_hdlr(int sig) +{ + if (nas_nwksp) + nas_nwksp->flags = NAS_WKSP_FLAG_SHUTDOWN; + return; +} + +/* + * Configuration APIs + */ +int +nas_safe_get_conf(char *outval, int outval_size, char *name) +{ + char *val; + + if (name == NULL || outval == NULL) { + if (outval) + memset(outval, 0, outval_size); + return -1; + } + + val = nvram_safe_get(name); + if (!strcmp(val, "")) + memset(outval, 0, outval_size); + else + snprintf(outval, outval_size, "%s", val); + return 0; +} + +/* service main entry */ +int +main(int argc, char *argv[]) +{ + /* display usage if nothing is specified */ + if (argc == 2 && + (!strncmp(argv[1], "-h", 2) || + !strncmp(argv[1], "-H", 2))) { + nas_wksp_display_usage(); + return 0; + } + + /* alloc nas/wpa work space */ + if (!(nas_nwksp = nas_wksp_alloc_workspace())) { + NASMSG("Unable to allocate work space memory. Quitting...\n"); + return 0; + } + + if (argc > 1 && nas_wksp_parse_cmd(argc, argv, nas_nwksp)) { + NASMSG("Command line parsing error. Quitting...\n"); + nas_wksp_free_workspace(nas_nwksp); + return 0; + } + else { +#ifdef BCMDBG + /* verbose - 0:no | others:yes */ + /* for workspace */ + char debug[8]; + if (nas_safe_get_conf(debug, sizeof(debug), "nas_dbg") == 0) + debug_nwksp = (int)atoi(debug); +#endif + } + + /* establish a handler to handle SIGTERM. */ + signal(SIGTERM, hup_hdlr); + + /* run main loop to dispatch messages */ + nas_wksp_main_loop(nas_nwksp); + + return 0; +} + +void +nas_reset_board() +{ + kill(1, SIGTERM); + return; +} diff --git a/release/src-rt/wl/nas/nas_radius.c b/release/src-rt/wl/nas/nas_radius.c new file mode 100644 index 0000000000..ad91724dfc --- /dev/null +++ b/release/src-rt/wl/nas/nas_radius.c @@ -0,0 +1,489 @@ +/* + * Radius code which used to be in nas.c + * Radius support for Network Access Server + * Copyright (C) 2010, Broadcom Corporation + * All Rights Reserved. + * + * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation; + * the contents of this file may not be disclosed to third parties, copied + * or duplicated in any form, in whole or in part, without the prior + * written permission of Broadcom Corporation. + * $Id: nas_radius.c 241388 2011-02-18 03:33:22Z stakita $ + */ + +#include +#include + +#include +#include +#ifdef __ECOS +#include +#include +#endif +#include +#include + +#include +#include +#include +#include +#include + +static void radius_add(radius_header_t *radius, unsigned char type, + unsigned char *buf, unsigned char length); + +/* Proxy EAP packet from RADIUS server to PAE */ +void +radius_dispatch(nas_t *nas, radius_header_t *response) +{ + nas_sta_t *sta = &nas->sta[response->id % MAX_SUPPLICANTS]; + radius_header_t *request; + + int left, type, length = 0, index, authenticated = 0; + unsigned char buf[16], *cur; + eapol_header_t eapol; + eap_header_t *eap = NULL; + unsigned int vendor, ssnto; + unsigned char *mppe_send = NULL, *mppe_recv = NULL, *mppe_key; + struct iovec frags[RADIUS_MAX_ATTRIBUTES]; + int nfrags = 0; +#ifdef BCMDBG + char eabuf[ETHER_ADDR_STR_LEN]; +#endif + + /* The STA could have been toss during the wait. */ + if (!sta->used) + return; + + request = sta->pae.radius.request; + if (!request || request->id != response->id) { + dbg(nas, "bogus RADIUS packet response->id=%d request->id=%d", response->id, + request->id); + return; + } + + /* Parse attributes */ + left = ntohs(response->length) - RADIUS_HEADER_LEN; + cur = response->attributes; + while (left >= 2) { + int attribute_error = 0; + + type = *cur++; + length = *cur++ - 2; + left -= 2; + + /* Bad attribute length */ + if (length > left) { + dbg(nas, "bad attribute length %d", length); + break; + } + + switch (type) { + + case RD_TP_MESSAGE_AUTHENTICATOR: + if (length < 16) { + dbg(nas, "bad signature length %d", length); + attribute_error = 1; + break; + } + + /* Validate HMAC-MD5 checksum */ + memcpy(buf, cur, 16); + memset(cur, 0, 16); + memcpy(response->vector, request->vector, 16); + + /* Calculate HMAC-MD5 checksum with request vector and null signature */ + hmac_md5((unsigned char *) response, ntohs(response->length), + nas->secret.data, nas->secret.length, cur); + if ((authenticated = !memcmp(buf, cur, 16)) == 0) { + dbg(nas, "Invalid signature"); + attribute_error = 1; + } + break; + + case RD_TP_STATE: + /* Preserve server state unmodified */ + sta->pae.radius.state.length = length; + if (sta->pae.radius.state.data) + free(sta->pae.radius.state.data); + sta->pae.radius.state.length = length; + if (!(sta->pae.radius.state.data = malloc(sta->pae.radius.state.length))) { + perror("malloc"); + attribute_error = 1; + } else + memcpy(sta->pae.radius.state.data, cur, + sta->pae.radius.state.length); + break; + + case RD_TP_EAP_MESSAGE: + /* Initialize EAPOL header */ + if (!nfrags) { + memcpy(&eapol.eth.ether_dhost, &sta->ea, ETHER_ADDR_LEN); + memcpy(&eapol.eth.ether_shost, &nas->ea, ETHER_ADDR_LEN); +#ifdef BCMWPA2 + if (sta->flags & STA_FLAG_PRE_AUTH) + eapol.eth.ether_type = htons(ETHER_TYPE_802_1X_PREAUTH); + else +#endif + eapol.eth.ether_type = htons(ETHER_TYPE_802_1X); + eapol.version = sta->eapol_version; + eapol.type = EAP_PACKET; + eapol.length = htons(0); + eap = (eap_header_t *) cur; + frags[nfrags].iov_base = (caddr_t) &eapol; + frags[nfrags].iov_len = EAPOL_HEADER_LEN; + nfrags++; + /* Set up internal flags */ + if (eap->code == EAP_SUCCESS) + sta->pae.flags |= PAE_FLAG_EAP_SUCCESS; + } + /* Gather fragmented EAP messages */ + if (nfrags < ARRAYSIZE(frags)) { + eapol.length = htons(ntohs(eapol.length) + length); + frags[nfrags].iov_base = (caddr_t) cur; + frags[nfrags].iov_len = length; + nfrags++; + } + break; + + case RD_TP_VENDOR_SPECIFIC: + if (length < 6) { + dbg(nas, "bad vendor attribute length %d", length); + attribute_error = 1; + break; + } + memcpy(&vendor, cur, 4); + vendor = ntohl(vendor); + cur += 4; + type = *cur++; + length = *cur++ - 2; + left -= 6; + + /* Bad attribute length */ + if (length > left) { + dbg(nas, "bad vendor attribute length %d", length); + attribute_error = 1; + break; + } + + /* Parse vendor-specific attributes */ + switch (vendor) { + + case RD_VENDOR_MICROSOFT: + switch (type) { + + case RD_MS_MPPE_SEND: + case RD_MS_MPPE_RECV: + if (response->code != RADIUS_ACCESS_ACCEPT) { + dbg(nas, "ignore MS-MPPE-Key in non" + " RADIUS_ACCESS_ACCEPT packet"); + break; + } + + /* Key length (minus salt) must be a multiple of 16 and + * greater than 32 + */ + if ((length - 2) % 16 || (length - 2) <= 32) { + dbg(nas, "bad MS-MPPE-Key length %d", length); + attribute_error = 1; + break; + } + /* Allocate key */ + if (!(mppe_key = malloc(length - 2))) { + perror("malloc"); + attribute_error = 1; + break; + } + /* Decrypt key */ + memcpy(mppe_key, &cur[2], length - 2); + mppe_crypt(cur, mppe_key, length - 2, + nas->secret.data, nas->secret.length, + request->vector, 0); + /* Set key pointers */ + if (type == RD_MS_MPPE_SEND) + mppe_send = mppe_key; + else + mppe_recv = mppe_key; + break; + } + break; + + + default: + dbg(nas, "unknown vendor attribute = %d", vendor); + dbg(nas, " vendor type = %d", type); + dbg(nas, " attribute string = %s", cur); + break; + } + break; + + case RD_TP_SESSION_TIMEOUT: + if (response->code != RADIUS_ACCESS_ACCEPT) + break; + if (length < 4) { + dbg(nas, "bad session timeout attribute length %d", length); + attribute_error = 1; + break; + } + memcpy(&ssnto, cur, 4); + sta->pae.ssnto = ntohl(ssnto); + dbg(nas, "session timeout in %d seconds", sta->pae.ssnto); + break; + + default: + /* Ignore all other attributes */ + break; + } + /* Don't go on looking if something already went wrong. */ + if (attribute_error) + goto done; + + left -= length; + cur += length; + } + + if (!authenticated && response->code != RADIUS_ACCESS_REJECT) { + dbg(nas, "missing signature"); + goto done; + } + + if (eap) + sta->pae.id = eap->id; + + if (eap && + (eap->code != EAP_SUCCESS || response->code != RADIUS_ACCESS_ACCEPT) && + (eap->code != EAP_FAILURE || response->code != RADIUS_ACCESS_REJECT) && + nfrags) { +#ifdef BCMWPA2 + if (sta->flags & STA_FLAG_PRE_AUTH) + nas_preauth_send_packet(nas, frags, nfrags); + else +#endif + nas_eapol_send_packet(nas, frags, nfrags); + } + + /* RADIUS event */ + switch (response->code) { + + case RADIUS_ACCESS_ACCEPT: + /* Check for EAP-Success before allowing complete access */ + if (!(sta->pae.flags & PAE_FLAG_EAP_SUCCESS)) { + dbg(nas, "Radius success without EAP success?!"); + pae_state(nas, sta, HELD); + dbg(nas, "deauthenticating %s", ether_etoa((uint8 *)&sta->ea, eabuf)); + nas_deauthorize(nas, &sta->ea); + goto done; + } + + dbg(nas, "Access Accept"); + pae_state(nas, sta, AUTHENTICATED); + + /* overwrite session timeout with global setting */ + if (!sta->pae.ssnto || sta->pae.ssnto > nas->ssn_to) + sta->pae.ssnto = nas->ssn_to; + + /* WPA-mode needs to do the 4-way handshake here instead. */ + if (CHECK_WPA(sta->mode) && mppe_recv) { + fix_wpa(nas, sta, (char *)&mppe_recv[1], (int)mppe_recv[0]); + break; + } + + /* Plump the keys to driver and send them to peer as well */ + if (mppe_recv) { + /* Cobble a multicast key if there isn't one yet. */ + if (!(nas->flags & NAS_FLAG_GTK_PLUMBED)) { + nas->wpa->gtk_index = GTK_INDEX_1; + if (nas->wpa->gtk_len == 0) + nas->wpa->gtk_len = WEP128_KEY_SIZE; + nas_rand128(nas->wpa->gtk); + if (nas_set_key(nas, NULL, nas->wpa->gtk, + nas->wpa->gtk_len, nas->wpa->gtk_index, + 1, 0, 0) < 0) { + err(nas, "invalid multicast key"); + nas_handle_error(nas, 1); + } + nas->flags |= NAS_FLAG_GTK_PLUMBED; + } + sta->rc4keysec = -1; + sta->rc4keyusec = -1; + /* Send multicast key */ + index = nas->wpa->gtk_index; + length = nas->wpa->gtk_len; + if (mppe_send) + eapol_key(nas, sta, &mppe_send[1], mppe_send[0], + &mppe_recv[1], mppe_recv[0], + nas->wpa->gtk, length, index, 0); + else + eapol_key(nas, sta, NULL, 0, + &mppe_recv[1], mppe_recv[0], + nas->wpa->gtk, length, index, 0); + + /* MS-MPPE-Recv-Key is MS-MPPE-Send-Key on the Suppl */ + index = DOT11_MAX_DEFAULT_KEYS - 1; + length = WEP128_KEY_SIZE; + if (nas_set_key(nas, &sta->ea, &mppe_recv[1], length, index, 1, 0, 0) < 0) { + dbg(nas, "unicast key rejected by driver, assuming too many" + " associated STAs"); + cleanup_sta(nas, sta, DOT11_RC_BUSY, 0); + } + /* Set unicast key index */ + if (mppe_send) + eapol_key(nas, sta, &mppe_send[1], mppe_send[0], + NULL, 0, + NULL, length, index, 1); + else + eapol_key(nas, sta, NULL, 0, + NULL, 0, + NULL, length, index, 1); + dbg(nas, "authorize %s (802.1x)", ether_etoa((uint8 *)&sta->ea, eabuf)); + nas_authorize(nas, &sta->ea); + } + break; + + case RADIUS_ACCESS_REJECT: + dbg(nas, "Access Reject"); + pae_state(nas, sta, HELD); + dbg(nas, "deauthenticating %s", ether_etoa((uint8 *)&sta->ea, eabuf)); + nas_deauthorize(nas, &sta->ea); + sta->pae.ssnto = 0; + break; + + case RADIUS_ACCESS_CHALLENGE: + dbg(nas, "Access Challenge"); + break; + + default: + dbg(nas, "unknown RADIUS code %d", response->code); + break; + } + +done: + if (mppe_send) + free(mppe_send); + if (mppe_recv) + free(mppe_recv); + free(request); + sta->pae.radius.request = NULL; +} + +/* Add an attribute value pair */ +static void +radius_add(radius_header_t *radius, unsigned char type, unsigned char *buf, unsigned char length) +{ + unsigned char *cur; + + if ((ntohs(radius->length) + length) <= RADIUS_MAX_LEN) { + cur = (unsigned char *) radius + ntohs(radius->length); + *cur++ = type; + *cur++ = 2 + length; + memcpy(cur, buf, length); + radius->length = htons(ntohs(radius->length) + 2 + length); + } +} + +/* Proxy EAP packet from PAE to RADIUS server */ +void +radius_forward(nas_t *nas, nas_sta_t *sta, eap_header_t *eap) +{ + radius_header_t *request; + + unsigned char buf[16], *ptr; + long val; + int left; + + /* Allocate packet */ + if (!(request = malloc(RADIUS_MAX_LEN))) { + perror("malloc"); + return; + } + + /* Fill header */ + request->code = RADIUS_ACCESS_REQUEST; + request->id = sta - nas->sta; + request->length = htons(RADIUS_HEADER_LEN); + + /* Fill Request Authenticator */ + nas_rand128(request->vector); + + /* Fill attributes */ + + /* User Name */ + if (sta->pae.radius.username.data && sta->pae.radius.username.length) + radius_add(request, RD_TP_USER_NAME, sta->pae.radius.username.data, + sta->pae.radius.username.length); + /* NAS IP Address */ + radius_add(request, RD_TP_NAS_IP_ADDRESS, (unsigned char *) &nas->client.sin_addr, + sizeof(nas->client.sin_addr)); + /* Called Station Id */ + + snprintf((char *)buf, sizeof(buf), "%02x%02x%02x%02x%02x%02x", + ((unsigned char *) &nas->ea)[0], ((unsigned char *) &nas->ea)[1], + ((unsigned char *) &nas->ea)[2], + ((unsigned char *) &nas->ea)[3], ((unsigned char *) &nas->ea)[4], + ((unsigned char *) &nas->ea)[5]); + + radius_add(request, RD_TP_CALLED_STATION_ID, buf, strlen((char *)buf)); + /* Calling Station Id */ + snprintf((char *)buf, sizeof(buf), "%02x%02x%02x%02x%02x%02x", + ((unsigned char *) &sta->ea)[0], ((unsigned char *) &sta->ea)[1], + ((unsigned char *) &sta->ea)[2], + ((unsigned char *) &sta->ea)[3], ((unsigned char *) &sta->ea)[4], + ((unsigned char *) &sta->ea)[5]); + radius_add(request, RD_TP_CALLING_STATION_ID, buf, strlen((char *)buf)); + /* NAS identifier */ + if (strlen(nas->nas_id)) + radius_add(request, RD_TP_NAS_IDENTIFIER, (unsigned char *)nas->nas_id, + strlen(nas->nas_id)); + else { + snprintf((char *)buf, sizeof(buf), "%02x%02x%02x%02x%02x%02x", + ((unsigned char *) &nas->ea)[0], ((unsigned char *) &nas->ea)[1], + ((unsigned char *) &nas->ea)[2], + ((unsigned char *) &nas->ea)[3], ((unsigned char *) &nas->ea)[4], + ((unsigned char *) &nas->ea)[5]); + radius_add(request, RD_TP_NAS_IDENTIFIER, buf, strlen((char *)buf)); + } + /* NAS Port */ + val = htonl((long) pae_hash(&sta->ea)); + radius_add(request, RD_TP_NAS_PORT, (unsigned char *) &val, sizeof(val)); + val = htonl(1400); + radius_add(request, RD_TP_FRAMED_MTU, (unsigned char *) &val, + sizeof(val)); + /* State */ + if (sta->pae.radius.state.data && sta->pae.radius.state.length) { + radius_add(request, RD_TP_STATE, sta->pae.radius.state.data, + sta->pae.radius.state.length); + free(sta->pae.radius.state.data); + sta->pae.radius.state.data = NULL; + sta->pae.radius.state.length = 0; + } + /* NAS Port Type */ + val = htonl((long) nas->type); + radius_add(request, RD_TP_NAS_PORT_TYPE, (unsigned char *) &val, 4); + /* EAP Message(s) */ + if (eap) { + for (left = ntohs(eap->length); left > 0; left -= 253) { + radius_add(request, RD_TP_EAP_MESSAGE, + (unsigned char *) eap + ntohs(eap->length) - left, + left <= 253 ? left : 253); + } + } + /* Message Authenticator */ + memset(buf, 0, 16); + radius_add(request, RD_TP_MESSAGE_AUTHENTICATOR, buf, 16); + ptr = (unsigned char *) request + ntohs(request->length) - 16; + /* Calculate HMAC-MD5 checksum with null signature */ + hmac_md5((unsigned char *) request, ntohs(request->length), + nas->secret.data, nas->secret.length, ptr); + + /* Send packet */ + if (NAS_RADIUS_SEND_PACKET(nas, request, ntohs(request->length)) < 0) { + perror(inet_ntoa(nas->server.sin_addr)); + free(request); + request = NULL; + } + + /* Save original request packet */ + if (sta->pae.radius.request) + free(sta->pae.radius.request); + sta->pae.radius.request = request; +} diff --git a/release/src-rt/wl/nas/nas_radius.h b/release/src-rt/wl/nas/nas_radius.h new file mode 100644 index 0000000000..9c37f7f1e3 --- /dev/null +++ b/release/src-rt/wl/nas/nas_radius.h @@ -0,0 +1,28 @@ +/* + * Radius support for Network Access Server + * Copyright (C) 2010, Broadcom Corporation + * All Rights Reserved. + * + * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation; + * the contents of this file may not be disclosed to third parties, copied + * or duplicated in any form, in whole or in part, without the prior + * written permission of Broadcom Corporation. + * $Id: nas_radius.h 241388 2011-02-18 03:33:22Z stakita $ + */ +#if !defined(_NAS_RADIUS_H_) +#define _NAS_RADIUS_H_ + +#ifdef NAS_RADIUS +extern void radius_forward(nas_t *nas, nas_sta_t *sta, eap_header_t *eap); +extern void radius_dispatch(nas_t *nas, radius_header_t *response); + +#define RADIUS_FORWARD(nas, sta, eap) radius_forward(nas, sta, eap) +#define RADIUS_DISPATCH(nas, radius) radius_dispatch(nas, radius) + +#else + +#define RADIUS_FORWARD(nas, sta, eap) +#define RADIUS_DISPATCH(nas, radius) +#endif /* NAS_RADIUS */ + +#endif /* !defined(_NAS_RADIUS_H_) */ diff --git a/release/src-rt/wl/nas/nas_rte.c b/release/src-rt/wl/nas/nas_rte.c new file mode 100644 index 0000000000..dd8fc83d83 --- /dev/null +++ b/release/src-rt/wl/nas/nas_rte.c @@ -0,0 +1,294 @@ +/* Network Authentication Service deamon (RTE) + * + * Copyright (C) 2010, Broadcom Corporation + * All Rights Reserved. + * + * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation; + * the contents of this file may not be disclosed to third parties, copied + * or duplicated in any form, in whole or in part, without the prior + * written permission of Broadcom Corporation. + * + * $Id: nas_rte.c 241388 2011-02-18 03:33:22Z stakita $ + */ + + +#include +#include +#include +#include +#include +#include + +#include + +#include + +#include "nas_wksp.h" + +/* RTE Layer 2 protocol handlers */ +/* WPA */ +static bool wpa_recv(hndrte_dev_t *dev, void *ctx, struct lbuf *lb, uint16 ethtype); +static ethtype_handler_t wpa_handler = {NULL, ETHER_TYPE_BRCM, wpa_recv, }; + +extern void bsp_reboot(void); + +hndrte_dev_t *wldev; +int naswl_sendpkt(struct lbuf *lbf); + + +void nas_sleep_ms(uint ms); +void nas_rand128(uint8 *rand128); +void nas_reset_board(void); +static int nas_get_wlrand(char *ifname, uint16 *val); +int nas_init(int argc, char *argv[]); +void nasStart(char *type); + + +/* Might be better to put this somewhere else, this doesn't have to be NAS + * specific - it's implementing POSIX-like functionality + */ +time_t +time(time_t *t) +{ + if (!t) + return 0; + + *t = hndrte_time(); + return *t; +} + +/* Might be better to put this somewhere else, this doesn't have to be NAS + * specific - it's implementing POSIX-like functionality + */ +int +gettimeofday(struct timeval *tv, struct timezone *tz) +{ + uint32 milliseconds = hndrte_time(); + + memset(tz, 0, sizeof(struct timezone)); + memset(tv, 0, sizeof(struct timeval)); + + tv->tv_sec = milliseconds / 1000; + + return 0; +} + + +int +naswl_sendpkt(struct lbuf *lbf) +{ + return wldev->dev_funcs->xmit(NULL, wldev, lbf); +} + + +void +nas_sleep_ms(uint ms) +{ + hndrte_delay(ms*1000); +} + +static int +nas_get_wlrand(char *ifname, uint16 *val) +{ + char buf[WLC_IOCTL_SMLEN]; + int ret; + + strcpy(buf, "rand"); + if ((ret = wl_ioctl(ifname, WLC_GET_VAR, buf, sizeof(buf)))) + return ret; + + *val = *(uint16 *)buf; + return 0; +} + +void +nas_rand128(uint8 *rand128) +{ + struct timeval tv; + struct timezone tz; + uint16 rand_val; + MD5_CTX md5; + + gettimeofday(&tv, &tz); + + if (nas_get_wlrand("wl0", &rand_val) == 0) + tv.tv_sec ^= rand_val; + else + NASDBG("NAS - nas_rad128 couldn't get random number from WL!!!\n"); + MD5Init(&md5); + MD5Update(&md5, (unsigned char *) &tv, sizeof(tv)); + MD5Update(&md5, (unsigned char *) &tz, sizeof(tz)); + MD5Final(rand128, &md5); +} + +/* establish connection to receive wpa message */ +int +nas_wksp_open_wpa(nas_wksp_t *nwksp) +{ + /* set the context for this handler to use */ + wpa_handler.ctx = nwksp; + + /* Register with the relay to receive for packets */ + bcmrelay.dev_funcs->ioctl(&bcmrelay, RELAY_PROTOREGISTER, + &wpa_handler, + sizeof(ethtype_handler_t *), NULL, NULL, 0); + + NASDBG("%s: registered with relay for wpa messages\n", nwksp->lan); + return 0; +} + +static bool +wpa_recv(hndrte_dev_t *dev, void *ctx, struct lbuf *lb, uint16 ethtype) +{ + uint8 *pkt = lb->data; + int len = lb->len; + nas_wksp_t *nwksp = (nas_wksp_t *)ctx; + nas_wpa_cb_t *nwcb; + bcm_event_t *pvt_data = (bcm_event_t *)pkt; + + /* recv wpa message from relay */ + /* validate the recv packet */ + if (nas_validate_wlpvt_message(len, pkt) != 0) { + goto error0; + } + pvt_data = (bcm_event_t *)pkt; + + nwcb = nas_wksp_find_nwcb_by_mac(nwksp, pvt_data->eth.ether_dhost, + pvt_data->event.ifname); + + if (nwcb && !(nwcb->flags & NAS_WPA_CB_FLAG_ERROR)) + nas_handle_wlpvt_messages(nwcb, (void *)pvt_data, len, 1); + + lb_free(lb); + return TRUE; + +error0: + /* way to say not our message */ + NASDBG("Not a WPA NAS packet, returning pkt to relay 0x%p\n", lb); + return FALSE; +} + +/* transmit preauth message thru the relay */ +int +nas_preauth_send_packet(nas_t *nas, struct iovec *frags, int nfrags) +{ + printf("\nUnsupported - nas_preauth_send_packet\n\n"); + return 1; +} + + +/* open connections to network to receive/send eapol packets */ +int +nas_wksp_open_eapol(nas_wksp_t *nwksp) +{ + /* not needed for HNDRTE - all EAPOL messages are + * encapsulated in BRCM ethertype from wl + */ + return 0; +} + +/* send eapol packet out to the net */ +int +nas_eapol_send_packet(nas_t *nas, struct iovec *frags, int nfrags) +{ + struct lbuf *lbf; + int i, count; + uchar *buf; + + /* Convert iov to mbuf chain */ + if (nfrags > 1) + { + for (i = 0, count = 0; i < nfrags; i++) + count += frags[i].iov_len; + if (!(lbf = lb_alloc(count, __FILE__, __LINE__))) + { + NASDBG("%s: lb_alloc error\n", nas->interface); + return 1; + } + buf = lbf->data; + for (i = 0, count = 0; i < nfrags; i++) + { + memcpy(&buf[count], frags[i].iov_base, frags[i].iov_len); + count += frags[i].iov_len; + } + } + else if (nfrags == 1) + { + lbf = lb_alloc(frags[0].iov_len, __FILE__, __LINE__); + memcpy(lbf->data, frags[0].iov_base, frags[0].iov_len); + NASDBG("%s: nfrags = 1 and Length of Message %d\n", + nas->interface, frags[0].iov_len); + } + else + { + NASDBG("%s: nfrags == 0 error\n", nas->interface); + return 1; + } + if (!lbf) + { + NASDBG("%s: failed to allocate mblk\n", nas->interface); + return 1; + } + + /* send packet to network thru the interface */ + return naswl_sendpkt(lbf); +} + +void +nas_reset_board(void) +{ + bsp_reboot(); + return; +} + +/* nas task entry */ +int +nas_init(int argc, char *argv[]) +{ + nas_wksp_t *nwksp = NULL; + + /* alloc nas/wpa work space */ + if (!(nwksp = nas_wksp_alloc_workspace())) { + NASMSG("Unable to allocate memory. Quitting...\n"); + goto exit0; + } + + /* init nas/wpa work space */ + if (nas_wksp_parse_cmd_line(argc, argv, nwksp)) { + NASMSG("Command line parsing error. Quitting...\n"); + goto exit1; + } + if (!nwksp->nwcbs) { + NASMSG("No interface specified. Quitting...\n"); + goto exit1; + } + + /* init nas */ + if (nas_wksp_init(nwksp)) { + NASMSG("Unable to initialize NAS. Quitting...\n"); + goto exit1; + } + goto exit0; + + /* error handling */ +exit1: + nas_wksp_free_workspace(nwksp); +exit0: + return 0; +} + +void +nasStart(char *type) +{ + static char *nas_argv[NAS_WKSP_MAX_CMD_LINE_ARGS]; + int nas_argc = NAS_WKSP_MAX_CMD_LINE_ARGS; + + wldev = hndrte_get_dev("wl0"); + + if (nas_wksp_build_cmd_line(type, NULL, &nas_argc, nas_argv)) + NASDBG("NAS error - couldn't build command line.\n"); + else if (nas_init(nas_argc, nas_argv) != 0) + NASDBG("NAS error - init failed.\n"); + + return; +} diff --git a/release/src-rt/wl/nas/nas_vx.c b/release/src-rt/wl/nas/nas_vx.c new file mode 100644 index 0000000000..f7113de373 --- /dev/null +++ b/release/src-rt/wl/nas/nas_vx.c @@ -0,0 +1,200 @@ +/* Network Authentication Service deamon (vxWorks) + * + * Copyright (C) 2010, Broadcom Corporation + * All Rights Reserved. + * + * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation; + * the contents of this file may not be disclosed to third parties, copied + * or duplicated in any form, in whole or in part, without the prior + * written permission of Broadcom Corporation. + * + * $Id: nas_vx.c 241388 2011-02-18 03:33:22Z stakita $ + */ +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include +#include +#include +#include +#include +#include + +extern int gettimeofday(struct timeval *tv, struct timezone *tz); +extern int sysClkRateGet(void); +extern void sys_reboot(); + +#include +#include +#include +#include +#include +#include +#include + +#include +#include + +static nas_wksp_t * nas_nwksp = NULL; + +void +nas_sleep_ms(uint ms) +{ + taskDelay(ms*sysClkRateGet()/1000); +} + +void +nas_rand128(uint8 *rand128) +{ + struct timeval tv; + struct timezone tz; + MD5_CTX md5; + + gettimeofday(&tv, &tz); + tv.tv_sec ^= rand(); + MD5Init(&md5); + MD5Update(&md5, (unsigned char *) &tv, sizeof(tv)); + MD5Update(&md5, (unsigned char *) &tz, sizeof(tz)); + MD5Final(rand128, &md5); +} + +static void +hup_hdlr(int sig) +{ + if (nas_nwksp) + nas_nwksp->flags = NAS_WKSP_FLAG_SHUTDOWN; + + return; +} + +/* + * Configuration APIs + */ +int +nas_safe_get_conf(char *outval, int outval_size, char *name) +{ + char *val; + + if (name == NULL || outval == NULL) { + if (outval) + memset(outval, 0, outval_size); + return -1; + } + + val = nvram_safe_get(name); + if (!strcmp(val, "")) + memset(outval, 0, outval_size); + else + snprintf(outval, outval_size, "%s", val); + return 0; +} + +/* nas task entry */ +int +nas_main() +{ +#ifdef BCMDBG + char debug[8]; +#endif + + /* clear rootnwksp */ + nas_nwksp = NULL; + + /* alloc nas/wpa work space */ + if (!(nas_nwksp = nas_wksp_alloc_workspace())) { + NASMSG("Unable to allocate work space memory. Quitting...\n"); + return 0; + } + +#ifdef BCMDBG + /* verbose - 0:no | others:yes */ + /* for workspace */ + if (nas_safe_get_conf(debug, sizeof(debug), "nas_dbg") == 0) + debug_nwksp = (int)atoi(debug); +#endif + /* establish a handler to handle SIGTERM. */ + signal(SIGTERM, hup_hdlr); + + /* run main loop to dispatch message */ + nas_wksp_main_loop(nas_nwksp); + + return 0; +} + +void +nas_reset_board() +{ + sys_reboot(); + return; +} + +void +nasStart(void) +{ + int tid = taskNameToId("NAS"); + ULONG ticks; + + if (tid == ERROR) { + /* clear nas wksp initialization flag */ + nas_wksp_clear_inited(); + + taskSpawn("NAS", + 60, /* priority of new task */ + 0, /* task option word */ + 30000, /* size (bytes) of stack needed plus name */ + (FUNCPTR)nas_main, /* entry point of new task */ + 0, + 0, + 0, 0, 0, 0, 0, 0, 0, 0); + printf("NAS task started.\n"); + + /* wait until nas initialization finished */ + ticks = tickGet(); + do { + if (tickGet() - ticks < 3 * sysClkRateGet()) + taskDelay(sysClkRateGet()); + else { + printf("Unable to wait NAS initialization finished!.\n"); + return; + } + } while (taskNameToId("NAS") != ERROR && !nas_wksp_is_inited()); + } + else + printf("NAS task is already running.\n"); +} + +void +nasStop(void) +{ + int tid = taskNameToId("NAS"); + + if (tid != ERROR) { + ULONG ticks; + + kill(tid, SIGTERM); + + /* wait till the task is dead */ + ticks = tickGet(); + do { + if (tickGet() - ticks < 3 * sysClkRateGet()) + taskDelay(sysClkRateGet()); + else { + printf("Unable to kill NAS task!.\n"); + return; + } + } + while (taskNameToId("NAS") != ERROR); + printf("NAS task killed.\n"); + } + else + printf("NAS task is not running.\n"); +} diff --git a/release/src-rt/wl/nas/nas_wksp.c b/release/src-rt/wl/nas/nas_wksp.c new file mode 100644 index 0000000000..316bf084de --- /dev/null +++ b/release/src-rt/wl/nas/nas_wksp.c @@ -0,0 +1,1367 @@ +/* + * NAS WorKSPace - NAS application common code + * + * Copyright (C) 2010, Broadcom Corporation + * All Rights Reserved. + * + * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation; + * the contents of this file may not be disclosed to third parties, copied + * or duplicated in any form, in whole or in part, without the prior + * written permission of Broadcom Corporation. + * + * $Id: nas_wksp.c 245219 2011-03-09 02:06:06Z kenlo $ + */ + +#include +#include + +#include +#include + +#include + +#include +#include + +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include +#include +#include +#include +#include + +/* debug stuff */ +#ifdef BCMDBG +#ifndef NAS_WKSP_DEBUG +#define NAS_WKSP_DEBUG 0 +#endif +int debug_nwksp = NAS_WKSP_DEBUG; +#endif /* #if BCMDBG */ + +/* +* Locally used globals +*/ +static char NAS_OPT_LIST[] = "B:g:h:i:I:k:r:K:l:m:N:p:s:t:v:w:d:ADS"; +static int nas_wksp_inited = 0; + +/* +* Build command line in argc/argv form for NAS configuration. +* This is a template provided for convenience. Program who +* needs the functionality can make a copy of this template +* into its own code space. +*/ +#include +#include + + +/* +* Parse command line and populate nas_wksp_t structure which consists of +* nas_t wpa_t and all the auxiliary stuff that needed for all NAS instances. +*/ +#if __ECOS +/* interface to option facilities */ +extern int getopt(int argc, char **argv, char *ostr); +extern void initopt(void); +extern char *optarg; +#endif + +/* print NAS command line usage */ +void +nas_wksp_display_usage(void) +{ +#ifdef BCMDBG + printf("\nUsage: nas [options]\n\n"); + printf("\t-i Wireless interface name\n"); +#if defined(NAS_WKSP_BUILD_NAS_AUTH) && defined(NAS_WKSP_BUILD_NAS_SUPPL) + printf("\t-A Authenticator\n"); + printf("\t-S Supplicant\n"); +#endif /* #if defined(NAS_WKSP_BUILD_NAS_AUTH) && defined(NAS_WKSP_BUILD_NAS_SUPPL) */ +#ifdef NAS_WKSP_BUILD_NAS_AUTH + printf("\t-g WPA GTK rotation interval (ms)\n"); + printf("\t-h